diff --git a/.rokojori/cache/reload-marker.json b/.rokojori/cache/reload-marker.json index e1ebc7e..66d4681 100644 --- a/.rokojori/cache/reload-marker.json +++ b/.rokojori/cache/reload-marker.json @@ -1,4 +1,4 @@ { "__class__": "Rokojori.RokojoriPlugin+MarkerData", -"time": "2025-10-26T21:19:50.0794119+01:00" +"time": "2025-10-31T13:00:40.4466123+01:00" } \ No newline at end of file diff --git a/DomeFox/Audio/Audio Channels.tres b/DomeFox/Audio/Audio Channels.tres new file mode 100644 index 0000000..f0bb8ca --- /dev/null +++ b/DomeFox/Audio/Audio Channels.tres @@ -0,0 +1,15 @@ +[gd_resource type="AudioBusLayout" format=3 uid="uid://b0ki2xn5a4avs"] + +[resource] +bus/1/name = &"FX" +bus/1/solo = false +bus/1/mute = false +bus/1/bypass_fx = false +bus/1/volume_db = 0.0 +bus/1/send = &"Master" +bus/2/name = &"Music" +bus/2/solo = false +bus/2/mute = false +bus/2/bypass_fx = false +bus/2/volume_db = 0.0 +bus/2/send = &"Master" diff --git a/DomeFox/DomeFox-Main.tscn b/DomeFox/DomeFox-Main.tscn index c4ac5a8..eb09084 100644 --- a/DomeFox/DomeFox-Main.tscn +++ b/DomeFox/DomeFox-Main.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=245 format=4 uid="uid://3f5uj8xc0hqr"] +[gd_scene load_steps=358 format=4 uid="uid://3f5uj8xc0hqr"] [ext_resource type="Script" uid="uid://edtvlsps4bnc" path="res://addons/rokojori_action_library/Runtime/App/App.cs" id="1_7pmbt"] [ext_resource type="Script" uid="uid://cjie4532uimke" path="res://addons/rokojori_action_library/Runtime/Localization/LocaleManager.cs" id="2_toips"] @@ -13,9 +13,12 @@ [ext_resource type="Script" uid="uid://cylo4w2wfqxd1" path="res://addons/rokojori_action_library/Runtime/Audio/AudioManager/AudioManagerData.cs" id="11_gcb85"] [ext_resource type="Script" uid="uid://cvmdx3bhq0i81" path="res://addons/rokojori_action_library/Runtime/Rendering/RenderingManager.cs" id="12_jqb63"] [ext_resource type="Script" uid="uid://db21mjsel81fj" path="res://addons/rokojori_action_library/Runtime/Rendering/RenderingManagerData.cs" id="13_3t4rw"] +[ext_resource type="Resource" uid="uid://7flbr6w8tfkk" path="res://DomeFox/Player/PlayerPosition-Vector3ShaderProperty.tres" id="13_u1oh5"] [ext_resource type="Script" uid="uid://d054ma7xwplq8" path="res://addons/rokojori_action_library/Runtime/Presets/RenderQualitySettings.cs" id="14_3p5o6"] +[ext_resource type="Script" uid="uid://dqgh1ba6suibb" path="res://addons/rokojori_action_library/Runtime/Actions/OnTick.cs" id="15_qry18"] [ext_resource type="Script" uid="uid://bubc2xm3er1rw" path="res://addons/rokojori_action_library/Runtime/Cameras/CameraSetupIcon.cs" id="15_ypsyk"] [ext_resource type="Script" uid="uid://b64ylf5cx2514" path="res://addons/rokojori_action_library/Runtime/Cameras/CameraManager.cs" id="16_pwyh7"] +[ext_resource type="Script" uid="uid://efhpaj7sfbcr" path="res://DomeFox/Graphics/PostProcessingHack.cs" id="17_u1oh5"] [ext_resource type="Script" uid="uid://bjo1usdu525m" path="res://addons/rokojori_action_library/Runtime/Sensors/KeySensor.cs" id="17_v8d1x"] [ext_resource type="Script" uid="uid://dna13qop6b0na" path="res://addons/rokojori_action_library/Runtime/Cameras/CameraSlot.cs" id="18_mxqtn"] [ext_resource type="Script" uid="uid://bgiluy6xgcvb0" path="res://addons/rokojori_action_library/Runtime/Rendering/Compositor/CompositorEffects/Vignette/VignetteEffect.cs" id="19_ue0no"] @@ -45,50 +48,76 @@ [ext_resource type="Script" uid="uid://bu6np1t32bddg" path="res://addons/rokojori_action_library/Runtime/UI/UI.cs" id="43_mvod7"] [ext_resource type="Script" uid="uid://cy2tnvx5jkplm" path="res://DomeFox/Game/DomeFoxGame.cs" id="43_toips"] [ext_resource type="Script" uid="uid://bodisf1g5534o" path="res://DomeFox/UI/DomeFoxGameUI.cs" id="44_dgvsu"] -[ext_resource type="Resource" uid="uid://dp57o0ykhkqfj" path="res://addons/rokojori_action_library/Runtime/UI/UI-Settings-Default.tres" id="44_maga3"] [ext_resource type="Script" uid="uid://c2hicupu28nbi" path="res://addons/rokojori_action_library/Runtime/UI/Nodes/UIRegion.cs" id="45_qry18"] +[ext_resource type="Resource" uid="uid://crx0sty5vqkdp" path="res://addons/rokojori_action_library/Runtime/Sensors/Default-Sensors/Gamepad/Buttons/Button Menu, PS Options, Nin Plus.tres" id="46_rsbf7"] [ext_resource type="Script" uid="uid://cnkyynboxg1qg" path="res://addons/rokojori_action_library/Runtime/UI/Styling/UINumber.cs" id="46_u1oh5"] [ext_resource type="Script" uid="uid://rqs2m0u6yvvf" path="res://addons/rokojori_action_library/Runtime/UI/Nodes/UIText.cs" id="47_2rmor"] +[ext_resource type="Script" uid="uid://bwah32ket1t43" path="res://addons/rokojori_action_library/Runtime/Actions/SetPauseState.cs" id="47_gcb85"] [ext_resource type="Script" uid="uid://bvj322mokkq63" path="res://addons/rokojori_action_library/Runtime/Localization/LocaleText.cs" id="48_ffwmu"] [ext_resource type="Script" uid="uid://de26c4war5vu1" path="res://addons/rokojori_action_library/Runtime/Interactions/CharacterController/CharacterController.cs" id="49_2iqil"] [ext_resource type="Script" uid="uid://bk5eoi53m08jh" path="res://addons/rokojori_action_library/Runtime/Cameras/CameraTargetOffset.cs" id="50_1m6i4"] +[ext_resource type="Script" uid="uid://bex6umukt0r8d" path="res://addons/rokojori_action_library/Runtime/Actions/Node/SetNodeState.cs" id="50_mxqtn"] [ext_resource type="Script" uid="uid://ch6tcwvvw2dl1" path="res://addons/rokojori_action_library/Runtime/Interactions/CharacterController/ProcessVelocity.cs" id="51_fsd2w"] [ext_resource type="Script" uid="uid://df7kaqvmnho05" path="res://addons/rokojori_action_library/Runtime/Interactions/CharacterController/CharacterMovement.cs" id="52_p06ew"] [ext_resource type="Resource" uid="uid://cyyy0ycusgil3" path="res://addons/rokojori_action_library/Runtime/Sensors/Default-Sensors/Gamepad/Axis/Left-Joystick Down +Y.tres" id="53_mn5qp"] +[ext_resource type="Script" uid="uid://lcmgq0fr5fgs" path="res://DomeFox/Player/Player.cs" id="53_rfged"] +[ext_resource type="Resource" uid="uid://bmgx7v1u6u2u8" path="res://DomeFox/UI/UI-Settings-DomeFox.tres" id="54_6q3b0"] [ext_resource type="Resource" uid="uid://dbha8dmhxgm05" path="res://addons/rokojori_action_library/Runtime/Sensors/Default-Sensors/Gamepad/Axis/Left-Joystick Up -Y.tres" id="54_fc106"] [ext_resource type="Script" uid="uid://b37sjsfvphc8b" path="res://addons/rokojori_action_library/Runtime/Interactions/CharacterController/CharacterMovements/StrafeMovementType.cs" id="55_hbm6b"] +[ext_resource type="Script" uid="uid://dlu21piejg7w0" path="res://addons/rokojori_action_library/Runtime/UI/Shaders/RoundedRectangle/RoundedRectangleMaterial.cs" id="55_v8d1x"] [ext_resource type="Resource" uid="uid://5gnh5dmv1p21" path="res://addons/rokojori_action_library/Runtime/Sensors/Default-Sensors/Gamepad/Axis/Left-Joystick Left -X.tres" id="56_iraei"] +[ext_resource type="Shader" uid="uid://x1a008jxt3ej" path="res://addons/rokojori_action_library/Runtime/UI/Shaders/RoundedRectangle/RoundedRectangle.gdshader" id="56_mxqtn"] [ext_resource type="Resource" uid="uid://dsrf03g6mgu5t" path="res://addons/rokojori_action_library/Runtime/Sensors/Default-Sensors/Gamepad/Axis/Left-Joystick Right +X.tres" id="57_jvhkh"] +[ext_resource type="Script" uid="uid://bx0bk663u3hj5" path="res://addons/rokojori_action_library/Runtime/UI/Nodes/UIImage.cs" id="57_ue0no"] +[ext_resource type="FontFile" uid="uid://b0eaevxyhkxb0" path="res://DomeFox/UI/Fonts/Dosis/static/Dosis-Medium.ttf" id="57_xae6d"] +[ext_resource type="Script" uid="uid://drqb0pm5ub64g" path="res://addons/rokojori_action_library/Runtime/UI/Styling/UIColor.cs" id="58_gh8fe"] [ext_resource type="Resource" uid="uid://c5ueac4xt7oyb" path="res://addons/rokojori_action_library/Runtime/Sensors/Default-Sensors/Keyboard & Mouse/Movement/Move Back.tres" id="58_tgn00"] [ext_resource type="Resource" uid="uid://mbnb46tah4i7" path="res://addons/rokojori_action_library/Runtime/Sensors/Default-Sensors/Keyboard & Mouse/Movement/Move Forward.tres" id="59_doova"] +[ext_resource type="Script" uid="uid://dwuimn03cvh3" path="res://addons/rokojori_action_library/Runtime/UI/Nodes/UIImageTypes/RoundedRectangleUIImageType.cs" id="59_om1n1"] [ext_resource type="Resource" uid="uid://bfxeh1y1vgkiu" path="res://addons/rokojori_action_library/Runtime/Sensors/Default-Sensors/Keyboard & Mouse/Movement/Strafe Left.tres" id="60_a7q36"] [ext_resource type="Resource" uid="uid://bm2d6nhevcjel" path="res://addons/rokojori_action_library/Runtime/Sensors/Default-Sensors/Keyboard & Mouse/Movement/Strafe Right.tres" id="61_j57vf"] [ext_resource type="Script" uid="uid://bw5ivesxk1mgg" path="res://addons/rokojori_action_library/Runtime/Interactions/CharacterController/MoveAndSlide.cs" id="62_jr6gu"] [ext_resource type="PackedScene" uid="uid://c74clrqg1mf47" path="res://DomeFox/Game Objects/Submarine/Submarine.tscn" id="63_7x7tw"] [ext_resource type="AudioStream" uid="uid://b4v01j8eenmkk" path="res://DomeFox/Game Objects/Laser/waer-fox-shoot.ogg" id="64_ijym8"] -[ext_resource type="Shader" uid="uid://g038sa37p3uc" path="res://DomeFox/X/Flares/FlareShaderAdd.gdshader" id="65_atjbw"] -[ext_resource type="Shader" uid="uid://bxgy0k2a1kgq1" path="res://DomeFox/X/Flares/FlareShader2.gdshader" id="66_o48hf"] +[ext_resource type="Script" uid="uid://b4yhlfad24pvh" path="res://addons/rokojori_action_library/Runtime/UI/Nodes/UIBreak.cs" id="64_jsrqa"] +[ext_resource type="Script" uid="uid://bgux04t6nu7ea" path="res://addons/rokojori_action_library/Runtime/UI/Nodes/UIInputInfo.cs" id="65_6q3b0"] +[ext_resource type="Shader" uid="uid://g038sa37p3uc" path="res://DomeFox/XYZ/Flares/FlareShaderAdd.gdshader" id="65_atjbw"] +[ext_resource type="Shader" uid="uid://bxgy0k2a1kgq1" path="res://DomeFox/XYZ/Flares/FlareShader2.gdshader" id="66_o48hf"] +[ext_resource type="Script" uid="uid://36a2avbsduro" path="res://addons/rokojori_action_library/Runtime/Sensors/InputIcons/Types/SensorIcon.cs" id="66_xae6d"] +[ext_resource type="Texture2D" uid="uid://bgi8cbw57gka0" path="res://addons/rokojori_action_library/Runtime/Sensors/InputIcons/Graphics/GamePad-MainButton.svg" id="67_5hkry"] [ext_resource type="Script" uid="uid://88u2lx0pssal" path="res://addons/rokojori_action_library/Runtime/Sensors/OnSensor.cs" id="67_8o26s"] [ext_resource type="Script" uid="uid://eid0qnlvq4n1" path="res://addons/rokojori_action_library/Runtime/Sensors/CombineSensor.cs" id="68_qs4y7"] [ext_resource type="Resource" uid="uid://ci42d04kv03yx" path="res://addons/rokojori_action_library/Runtime/Sensors/Default-Sensors/Keyboard & Mouse/Mouse/Mouse-Button Left.tres" id="69_lyltj"] -[ext_resource type="Resource" uid="uid://dffkdky8iowro" path="res://addons/rokojori_action_library/Runtime/Sensors/Default-Sensors/Gamepad/Buttons/Button A, PS Cross, Nin B.tres" id="70_3c4g0"] +[ext_resource type="Texture2D" uid="uid://b73u16wm1h5gr" path="res://addons/rokojori_action_library/Runtime/Sensors/InputIcons/Graphics/Keyboard.svg" id="70_f87at"] [ext_resource type="Script" uid="uid://cbk1j230s8i68" path="res://addons/rokojori_action_library/Runtime/Actions/Conditional/CoolDown.cs" id="71_d5wd3"] +[ext_resource type="Script" uid="uid://cd1n1u22xxut1" path="res://addons/rokojori_action_library/Runtime/UI/Nodes/UIImageTypes/NinePatchUIImageType.cs" id="71_whjfm"] [ext_resource type="Script" uid="uid://ddhwhwos5kkrm" path="res://addons/rokojori_action_library/Runtime/Time/Duration/SecondsDuration.cs" id="72_4ybl6"] [ext_resource type="Script" uid="uid://d6m0k7ql0mnr" path="res://addons/rokojori_action_library/Runtime/Actions/Conditional/ResetCoolDown.cs" id="73_v11xn"] [ext_resource type="Script" uid="uid://dxra6jao22it4" path="res://addons/rokojori_action_library/Runtime/Actions/ActionReference.cs" id="74_6uxni"] [ext_resource type="Script" uid="uid://cdw4pq276w8om" path="res://DomeFox/Game Objects/Laser/ShootLaser.cs" id="75_13ojk"] [ext_resource type="PackedScene" uid="uid://dwdm5cq57lrv2" path="res://DomeFox/Game Objects/Laser/LaserBeam.tscn" id="76_1t1hx"] [ext_resource type="Script" uid="uid://ddgf2mfdmqywc" path="res://addons/rokojori_action_library/Runtime/Actions/Node3D/PlaySound.cs" id="77_we8s0"] +[ext_resource type="Script" uid="uid://bwuvxc0gb7bxw" path="res://addons/rokojori_action_library/Runtime/UI/Shaders/NinePatch/UINinePatchMaterial.cs" id="78_2rmor"] [ext_resource type="Resource" uid="uid://u6fo0jyfl07c" path="res://DomeFox/Game Objects/Laser/Laser-Sound-Flag.tres" id="78_kn8hv"] +[ext_resource type="Shader" uid="uid://dhmwl4f6pg4gk" path="res://addons/rokojori_action_library/Runtime/UI/Shaders/NinePatch/UINinePatch.gdshader" id="79_ffwmu"] +[ext_resource type="Script" uid="uid://dbgwebayabwd5" path="res://addons/rokojori_action_library/Runtime/Interactions/Collidable.cs" id="79_jsrqa"] [ext_resource type="Script" uid="uid://dnstanbmrqthf" path="res://addons/rokojori_action_library/Runtime/Actions/Node3D/PlayParticles.cs" id="79_qknju"] +[ext_resource type="Resource" uid="uid://dw7wtapaqufxu" path="res://DomeFox/Player/PlayerCollision.tres" id="80_6q3b0"] [ext_resource type="Script" uid="uid://ceaglilesxsi4" path="res://addons/rokojori_action_library/Runtime/Actions/ActionSequence.cs" id="80_dy41s"] +[ext_resource type="AudioStream" uid="uid://ckb6stpf5454h" path="res://DomeFox/Player/sound-fx/player-hit-damage.mp3" id="80_u2omi"] [ext_resource type="Script" uid="uid://bhn2p16isptba" path="res://addons/rokojori_action_library/Runtime/Actions/Visual/TweenLight.cs" id="81_esexe"] [ext_resource type="Script" uid="uid://evtt3x1yxlbw" path="res://addons/rokojori_action_library/Runtime/Tools/Boxed/ColorValue.cs" id="82_yhfyc"] [ext_resource type="Script" uid="uid://b6bnmseo2eq0q" path="res://addons/rokojori_action_library/Runtime/Actions/Visual/TweenLightData.cs" id="83_3uoq1"] +[ext_resource type="Script" uid="uid://dy65lu5p2yf3j" path="res://addons/rokojori_action_library/Runtime/Actions/Sequence/Parallel.cs" id="83_f87at"] [ext_resource type="Script" uid="uid://bsq280ixlepp2" path="res://addons/rokojori_action_library/Runtime/Interactions/Pointer.cs" id="84_4c23n"] +[ext_resource type="Script" uid="uid://bnhnintao4qu0" path="res://addons/rokojori_action_library/Runtime/Animation/Shake/Shake.cs" id="84_whjfm"] +[ext_resource type="Resource" uid="uid://d1ng53m5uqpi0" path="res://DomeFox/Game Objects/Collisions/Damage-Collision.tres" id="84_x8icc"] +[ext_resource type="Script" uid="uid://bec6skfqkb2ci" path="res://addons/rokojori_action_library/Runtime/Animation/Shake/ShakeEffect.cs" id="85_whjfm"] [ext_resource type="Resource" uid="uid://dadr1kd14m7g3" path="res://addons/rokojori_action_library/Runtime/Animation/Highlight/Presets/White Outline - Highlight.tres" id="85_ytrge"] +[ext_resource type="Script" uid="uid://c5tm02yj1bhhx" path="res://addons/rokojori_action_library/Runtime/Animation/AnimationCurve.cs" id="86_2ex5m"] [ext_resource type="Script" uid="uid://dyf6ee3ov3ran" path="res://addons/rokojori_action_library/Runtime/Actions/OnReady.cs" id="86_qk0v4"] [ext_resource type="Script" uid="uid://cyicertlwo4m0" path="res://addons/rokojori_action_library/Runtime/Actions/Audio/PlayMusic.cs" id="87_bwq5n"] +[ext_resource type="Script" uid="uid://dnwqkymbre3vb" path="res://addons/rokojori_action_library/Runtime/Animation/Flash/Flash.cs" id="87_wrjba"] [ext_resource type="AudioStream" uid="uid://bmv74q80m6xqr" path="res://DomeFox/Music/water-fox.ogg" id="88_ci6aj"] [ext_resource type="Shader" uid="uid://c4cofkrjxsrpr" path="res://DomeFox/Game Objects/Ground/SubmarineGround.gdshader" id="89_4ij8u"] [ext_resource type="Texture2D" uid="uid://bbx4el03kmbfh" path="res://DomeFox/Game Objects/Ground/Submarine Height Map.tres" id="90_4h3qy"] @@ -96,17 +125,22 @@ [ext_resource type="Script" uid="uid://bnabp0o8rg7pc" path="res://addons/rokojori_action_library/Runtime/Rendering/Assets/Foliage/FoliageMaterialOverrides/CustomMaterialOverride.cs" id="92_gctbb"] [ext_resource type="Script" uid="uid://bcl28l8d5lxye" path="res://addons/rokojori_action_library/Runtime/Rendering/Assets/Foliage/FoliageData.cs" id="93_ka1de"] [ext_resource type="Script" uid="uid://d18oon3mkd5s4" path="res://addons/rokojori_action_library/Runtime/Scenes/SceneReference.cs" id="94_b54cm"] +[ext_resource type="Script" uid="uid://dn1jkvx1f4y5r" path="res://DomeFox/Game Objects/Health/Damagable.cs" id="94_u2omi"] +[ext_resource type="Resource" uid="uid://bbnik8um7y2xe" path="res://DomeFox/Player/Player-DamagableData.tres" id="95_bjuy7"] [ext_resource type="Script" uid="uid://cm7ayfu511ijr" path="res://addons/rokojori_action_library/Runtime/Rendering/Assets/Foliage/FoliageSources/SceneFoliageSource.cs" id="95_kyoa7"] [ext_resource type="Texture2D" uid="uid://c30nul6romace" path="res://addons/rokojori_action_library/Runtime/Procedural/Noise/RGB 3D Noise.png" id="96_n8ds8"] [ext_resource type="Script" uid="uid://c4hg6rvrmjm6j" path="res://addons/rokojori_action_library/Runtime/Rendering/Assets/Foliage/GPUFoliageShaderMaterial.cs" id="97_nqnq0"] [ext_resource type="Shader" uid="uid://brk5g221ccd2x" path="res://addons/rokojori_action_library/Runtime/Rendering/Assets/Foliage/GPUFoliageShader.gdshader" id="98_65va8"] [ext_resource type="Script" uid="uid://dla1wn2mlw2d0" path="res://addons/rokojori_action_library/Runtime/Interactions/Pointable.cs" id="99_dflt5"] +[ext_resource type="Script" uid="uid://cko3krhs7jgc4" path="res://addons/rokojori_action_library/Runtime/Actions/Node/SetNodeStateSpecific.cs" id="99_u6rrh"] +[ext_resource type="Script" uid="uid://dcerk2bxdjmxr" path="res://addons/rokojori_action_library/Runtime/Godot/NodeStateConfiguration.cs" id="100_6s2j0"] [ext_resource type="Script" uid="uid://r5veisahx0in" path="res://addons/rokojori_action_library/Runtime/Rendering/TextureAttributes/TextureAttributes.cs" id="100_a74kh"] [ext_resource type="Script" uid="uid://drd58qb2u7vwr" path="res://addons/rokojori_action_library/Runtime/Rendering/TextureAttributes/AssignTextureAttributesTexture.cs" id="101_nmwjv"] [ext_resource type="Material" uid="uid://c50dgcnf4hyif" path="res://DomeFox/Game Objects/Wall/LowPolyWall-Material.tres" id="102_85m4o"] [ext_resource type="Script" uid="uid://bsreukpi8eiyy" path="res://addons/rokojori_action_library/Runtime/Shading/Properties/Sampler2DPropertyName.cs" id="103_w06wr"] [ext_resource type="Script" uid="uid://c3c8limywowjv" path="res://addons/rokojori_action_library/Runtime/Procedural/Parametric/Spline/Spline.cs" id="104_tcyxu"] [ext_resource type="Script" uid="uid://0wmpolvwadsu" path="res://addons/rokojori_action_library/Runtime/Procedural/Parametric/Spline/SplinePoint.cs" id="105_6rii8"] +[ext_resource type="Resource" uid="uid://jbud1yjmxysm" path="res://addons/rokojori_action_library/Runtime/Sensors/Default-Sensors/Gamepad/Buttons/Shoulder Right, RB, R1.tres" id="105_mvod7"] [ext_resource type="Script" uid="uid://dw2p3gdt848qc" path="res://addons/rokojori_action_library/Runtime/Procedural/Parametric/Spline/SplineMesh.cs" id="106_vff7f"] [ext_resource type="Script" uid="uid://cl36x2jgfuypo" path="res://addons/rokojori_action_library/Runtime/Actions/OnProcess.cs" id="107_61jae"] [ext_resource type="Script" uid="uid://dyruyvxjkubdl" path="res://DomeFox/Level/LevelGenerator.cs" id="108_axjwg"] @@ -116,12 +150,62 @@ [ext_resource type="Script" uid="uid://dw2vbnun2yndx" path="res://DomeFox/Level/RoomGenerator/SceneRoom/SceneRoomGenerator.cs" id="113_msotc"] [ext_resource type="Script" uid="uid://d1erd1dodjc7c" path="res://DomeFox/Level/RoomGenerator/RoomGeneratorEntry.cs" id="114_ctpa3"] [ext_resource type="Script" uid="uid://cd4kux0wdumkq" path="res://DomeFox/Level/RoomGenerator/Room.cs" id="116_ctpa3"] +[ext_resource type="Script" uid="uid://cbbesrlha8kor" path="res://DomeFox/Game Objects/Health/Health.cs" id="116_exiqy"] +[ext_resource type="Resource" uid="uid://ckith6bwr51uc" path="res://DomeFox/Player/Player-Health-Data.tres" id="117_f87at"] +[ext_resource type="Script" uid="uid://5vvwb74foskj" path="res://DomeFox/Game Objects/Health/SyncHealthUI.cs" id="120_bjuy7"] +[ext_resource type="Script" uid="uid://c1ivlrrt71nwp" path="res://addons/rokojori_action_library/Runtime/Cameras/Effects/PlayCameraEffect.cs" id="121_mvod7"] +[ext_resource type="Resource" uid="uid://uyuplc6hm25j" path="res://addons/rokojori_action_library/Runtime/Cameras/Effects/Presets/ScreenShake.tres" id="122_mvod7"] +[ext_resource type="Script" uid="uid://dncqth3uf3tb3" path="res://addons/rokojori_action_library/Runtime/Animation/HDRColor.cs" id="126_8y6f8"] +[ext_resource type="Script" uid="uid://cupnq55n3nimc" path="res://addons/rokojori_action_library/Runtime/Animation/Flash/FlashEffect.cs" id="127_2ewly"] [sub_resource type="Resource" id="Resource_60dcx"] script = ExtResource("11_gcb85") [sub_resource type="Resource" id="Resource_lrrmx"] script = ExtResource("13_3t4rw") +globalShaderProperties = [ExtResource("13_u1oh5")] + +[sub_resource type="Resource" id="Resource_2rmor"] +script = ExtResource("72_4ybl6") +seconds = 60.0 +timeLine = ExtResource("8_rfged") +metadata/_custom_type_script = "uid://ddhwhwos5kkrm" + +[sub_resource type="CompositorEffect" id="CompositorEffect_redyo"] +resource_local_to_scene = false +resource_name = "" +enabled = true +effect_callback_type = 4 +needs_motion_vectors = false +needs_normal_roughness = false +script = ExtResource("19_ue0no") +radius = 0.4457 +info = "constants: size:6 internalSize:6 bytes:32 floats:6 ints:0" +metadata/_custom_type_script = "uid://bgiluy6xgcvb0" + +[sub_resource type="CompositorEffect" id="CompositorEffect_optxl"] +resource_local_to_scene = false +resource_name = "" +enabled = true +effect_callback_type = 4 +needs_motion_vectors = false +needs_normal_roughness = false +script = ExtResource("20_gh8fe") +amount = 0.05 +smearingFrames = 8.0 +metadata/_custom_type_script = "uid://bjxayoleund83" + +[sub_resource type="CompositorEffect" id="CompositorEffect_arru6"] +resource_local_to_scene = false +resource_name = "" +enabled = true +effect_callback_type = 4 +needs_motion_vectors = false +needs_normal_roughness = false +script = ExtResource("21_om1n1") +intensity = 5.0 +constantsInternalSize = 9 +metadata/_custom_type_script = "uid://cghyn18utdfl" [sub_resource type="Resource" id="Resource_wyayf"] script = ExtResource("17_v8d1x") @@ -174,7 +258,7 @@ dof_blur_near_distance = 0.2 dof_blur_near_transition = 0.1 dof_blur_amount = 0.25 -[sub_resource type="CompositorEffect" id="CompositorEffect_redyo"] +[sub_resource type="CompositorEffect" id="CompositorEffect_qry18"] resource_local_to_scene = false resource_name = "" enabled = true @@ -186,7 +270,7 @@ radius = 0.4457 info = "constants: size:6 internalSize:6 bytes:32 floats:6 ints:0" metadata/_custom_type_script = "uid://bgiluy6xgcvb0" -[sub_resource type="CompositorEffect" id="CompositorEffect_optxl"] +[sub_resource type="CompositorEffect" id="CompositorEffect_u1oh5"] resource_local_to_scene = false resource_name = "" enabled = true @@ -198,7 +282,7 @@ amount = 0.05 smearingFrames = 8.0 metadata/_custom_type_script = "uid://bjxayoleund83" -[sub_resource type="CompositorEffect" id="CompositorEffect_arru6"] +[sub_resource type="CompositorEffect" id="CompositorEffect_2rmor"] resource_local_to_scene = false resource_name = "" enabled = true @@ -206,12 +290,12 @@ effect_callback_type = 4 needs_motion_vectors = false needs_normal_roughness = false script = ExtResource("21_om1n1") -intensity = 2.0 +intensity = 5.0 constantsInternalSize = 9 metadata/_custom_type_script = "uid://cghyn18utdfl" [sub_resource type="Compositor" id="Compositor_5fx4j"] -compositor_effects = Array[CompositorEffect]([SubResource("CompositorEffect_redyo"), SubResource("CompositorEffect_optxl"), SubResource("CompositorEffect_arru6")]) +compositor_effects = Array[CompositorEffect]([SubResource("CompositorEffect_qry18"), SubResource("CompositorEffect_u1oh5"), SubResource("CompositorEffect_2rmor")]) [sub_resource type="QuadMesh" id="QuadMesh_bco8n"] size = Vector2(0.2, 0.2) @@ -390,35 +474,81 @@ script = ExtResource("41_8y6f8") duration = 0.3 curve = SubResource("Curve_r4x67") -[sub_resource type="Resource" id="Resource_bm7ot"] +[sub_resource type="Resource" id="Resource_5e5ie"] +script = ExtResource("100_6s2j0") +processEnabled = 0 +inputEnabled = 0 +physicsEnabled = 0 +signalsEnabled = 0 +visible = 0 +setProcessMode = true +processMode = 4 +metadata/_custom_type_script = "uid://dcerk2bxdjmxr" + +[sub_resource type="Resource" id="Resource_qnc2f"] +script = ExtResource("103_w06wr") +propertyName = "wallAttributes" +metadata/_custom_type_script = "uid://bsreukpi8eiyy" + +[sub_resource type="Resource" id="Resource_pwyh7"] +script = ExtResource("17_v8d1x") +key = 4194305 +metadata/_custom_type_script = "uid://bjo1usdu525m" + +[sub_resource type="Resource" id="Resource_v8d1x"] +script = ExtResource("68_qs4y7") +sensors = [ExtResource("46_rsbf7"), SubResource("Resource_pwyh7")] +metadata/_custom_type_script = "uid://eid0qnlvq4n1" + +[sub_resource type="Resource" id="Resource_mxqtn"] +script = ExtResource("100_6s2j0") +processEnabled = 1 +inputEnabled = 1 +physicsEnabled = 1 +signalsEnabled = 1 +visible = 1 +setProcessMode = true +processMode = 3 +metadata/_custom_type_script = "uid://dcerk2bxdjmxr" + +[sub_resource type="Resource" id="Resource_whjfm"] +script = ExtResource("46_u1oh5") +value = 100.0 +unit = "vw" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="Resource" id="Resource_2ewly"] +script = ExtResource("46_u1oh5") +value = 100.0 +unit = "vh" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="Resource" id="Resource_2iqil"] script = ExtResource("46_u1oh5") value = 1.0 unit = "em" metadata/_custom_type_script = "uid://cnkyynboxg1qg" -[sub_resource type="Resource" id="Resource_n2htv"] -script = ExtResource("46_u1oh5") -value = 1.0 -unit = "em" -metadata/_custom_type_script = "uid://cnkyynboxg1qg" - -[sub_resource type="LabelSettings" id="LabelSettings_rfged"] -font_size = 12 +[sub_resource type="LabelSettings" id="LabelSettings_ffwmu"] +font_size = 17 shadow_size = 0 -[sub_resource type="Resource" id="Resource_0jqvd"] +[sub_resource type="Resource" id="Resource_j57vf"] script = ExtResource("48_ffwmu") -en = "CRYSTALS: " +en = "Crystals" metadata/_custom_type_script = "uid://bvj322mokkq63" -[sub_resource type="Resource" id="Resource_45l0l"] -script = ExtResource("46_u1oh5") -value = 2.0 -unit = "em" -metadata/_custom_type_script = "uid://cnkyynboxg1qg" +[sub_resource type="LabelSettings" id="LabelSettings_2iqil"] +font_size = 17 +shadow_size = 0 -[sub_resource type="LabelSettings" id="LabelSettings_n6fo8"] -font_size = 12 +[sub_resource type="Resource" id="Resource_ijym8"] +script = ExtResource("48_ffwmu") +en = ": " +metadata/_custom_type_script = "uid://bvj322mokkq63" + +[sub_resource type="LabelSettings" id="LabelSettings_1m6i4"] +font_size = 17 shadow_size = 0 [sub_resource type="Resource" id="Resource_ygxwg"] @@ -426,6 +556,280 @@ script = ExtResource("48_ffwmu") en = "0" metadata/_custom_type_script = "uid://bvj322mokkq63" +[sub_resource type="Resource" id="Resource_mn5qp"] +script = ExtResource("46_u1oh5") +value = 1.0 +unit = "em" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="Resource" id="Resource_a7q36"] +script = ExtResource("46_u1oh5") +unit = "em" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="LabelSettings" id="LabelSettings_fsd2w"] +font_size = 17 +shadow_size = 0 + +[sub_resource type="Resource" id="Resource_7x7tw"] +script = ExtResource("48_ffwmu") +en = "Health" +metadata/_custom_type_script = "uid://bvj322mokkq63" + +[sub_resource type="LabelSettings" id="LabelSettings_p06ew"] +font_size = 17 +shadow_size = 0 + +[sub_resource type="LabelSettings" id="LabelSettings_mn5qp"] +font_size = 17 +shadow_size = 0 + +[sub_resource type="Resource" id="Resource_atjbw"] +script = ExtResource("48_ffwmu") +en = "100" +metadata/_custom_type_script = "uid://bvj322mokkq63" + +[sub_resource type="Resource" id="Resource_ue0no"] +script = ExtResource("46_u1oh5") +value = 50.0 +unit = "%" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="Resource" id="Resource_2h7cs"] +script = ExtResource("46_u1oh5") +value = 100.0 +unit = "vw" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="Resource" id="Resource_hs57h"] +script = ExtResource("46_u1oh5") +value = 100.0 +unit = "vh" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_fc106"] +shader = ExtResource("56_mxqtn") +shader_parameter/size = Vector2(1152, 648) +shader_parameter/sharpness = 5.0 +shader_parameter/borderRadius = 0.0 +shader_parameter/strokeSize = 0.0 +shader_parameter/offset = 0.0 +shader_parameter/fillColor = Color(1, 1, 1, 0.7294118) +shader_parameter/fillUVTransform = Vector4(0, 0, 0, 0) +shader_parameter/screenfillMultiplyUVTransform = Vector4(0, 0, 0, 0) +shader_parameter/screenfillMultiplyUVMovement = Vector2(0, 0) +shader_parameter/strokeColor = Color(1, 1, 1, 1) +shader_parameter/strokeUVTransform = Vector4(0, 0, 0, 0) +shader_parameter/screenStrokeMultiplyUVTransform = Vector4(0, 0, 0, 0) +shader_parameter/screenStrokeMultiplyUVMovment = Vector2(0, 0) +shader_parameter/opacity = 1.0 +script = ExtResource("55_v8d1x") + +[sub_resource type="Gradient" id="Gradient_6q3b0"] +offsets = PackedFloat32Array(0, 0.30141845, 0.71276593, 1) +colors = PackedColorArray(0, 0.058244795, 0.14020103, 1, 0.14, 0.14, 0.14, 0.7372549, 0.041800003, 0.2390834, 0.38, 0.68235296, 0.048074678, 0.42190042, 0.561098, 1) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_xae6d"] +gradient = SubResource("Gradient_6q3b0") +fill_from = Vector2(0, 1) +fill_to = Vector2(0, 0) + +[sub_resource type="Resource" id="Resource_5hkry"] +script = ExtResource("58_gh8fe") +color = Color(1, 1, 1, 0.7294118) +metadata/_custom_type_script = "uid://drqb0pm5ub64g" + +[sub_resource type="Resource" id="Resource_33ium"] +script = ExtResource("59_om1n1") +fillColor = SubResource("Resource_5hkry") +metadata/_custom_type_script = "uid://dwuimn03cvh3" + +[sub_resource type="Resource" id="Resource_exiqy"] +script = ExtResource("46_u1oh5") +value = 100.0 +unit = "vw" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="Resource" id="Resource_f87at"] +script = ExtResource("46_u1oh5") +value = 100.0 +unit = "vh" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="Resource" id="Resource_gh8fe"] +script = ExtResource("46_u1oh5") +unit = "vw" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="Resource" id="Resource_om1n1"] +script = ExtResource("46_u1oh5") +unit = "vh" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="LabelSettings" id="LabelSettings_fc106"] +font_size = 35 +font_color = Color(1, 1, 1, 0.73678416) +shadow_size = 0 + +[sub_resource type="Resource" id="Resource_6s2j0"] +script = ExtResource("48_ffwmu") +en = "Paused" +metadata/_custom_type_script = "uid://bvj322mokkq63" + +[sub_resource type="Resource" id="Resource_jsrqa"] +script = ExtResource("46_u1oh5") +value = 2.0 +unit = "em" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="Gradient" id="Gradient_ue0no"] +offsets = PackedFloat32Array(0, 0.47407407, 1) +colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 0.5019608, 1, 1, 1, 1) + +[sub_resource type="Resource" id="Resource_u6rrh"] +script = ExtResource("58_gh8fe") +isAnimated = true +animationGradient = SubResource("Gradient_ue0no") +metadata/_custom_type_script = "uid://drqb0pm5ub64g" + +[sub_resource type="Resource" id="Resource_2ex5m"] +script = ExtResource("46_u1oh5") +value = 100.0 +unit = "vw" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="Resource" id="Resource_wrjba"] +script = ExtResource("46_u1oh5") +value = 100.0 +unit = "vh" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="LabelSettings" id="LabelSettings_hbm6b"] +font_size = 17 +font_color = Color(1, 1, 1, 0.73678416) +shadow_size = 0 + +[sub_resource type="Resource" id="Resource_cqrab"] +script = ExtResource("48_ffwmu") +en = "Press " +metadata/_custom_type_script = "uid://bvj322mokkq63" + +[sub_resource type="Resource" id="Resource_u2omi"] +script = ExtResource("66_xae6d") +sensor = SubResource("Resource_v8d1x") +metadata/_custom_type_script = "uid://36a2avbsduro" + +[sub_resource type="Resource" id="Resource_bjuy7"] +script = ExtResource("46_u1oh5") +value = 12.0 +unit = "em" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="Resource" id="Resource_jvhkh"] +script = ExtResource("46_u1oh5") +value = 1.5 +unit = "em" + +[sub_resource type="Resource" id="Resource_doova"] +script = ExtResource("46_u1oh5") +value = 1.5 +unit = "em" + +[sub_resource type="LabelSettings" id="LabelSettings_a7q36"] +font_size = 10 +shadow_size = 0 + +[sub_resource type="Resource" id="Resource_o48hf"] +script = ExtResource("48_ffwmu") +en = "" + +[sub_resource type="Resource" id="Resource_8o26s"] +script = ExtResource("46_u1oh5") +value = 0.567 +unit = "em" + +[sub_resource type="Resource" id="Resource_qs4y7"] +script = ExtResource("46_u1oh5") +value = 100.0 +unit = "pw" + +[sub_resource type="Resource" id="Resource_lyltj"] +script = ExtResource("46_u1oh5") +value = 100.0 +unit = "ph" + +[sub_resource type="Resource" id="Resource_4ybl6"] +script = ExtResource("46_u1oh5") +unit = "em" + +[sub_resource type="Resource" id="Resource_v11xn"] +script = ExtResource("46_u1oh5") +unit = "em" + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_6uxni"] +shader = ExtResource("79_ffwmu") +shader_parameter/size = Vector2(25.920002, 25.920002) +shader_parameter/borders = Vector4(40, 40, 40, 40) +script = ExtResource("78_2rmor") + +[sub_resource type="Resource" id="Resource_13ojk"] +script = ExtResource("71_whjfm") +leftPixelOffset = 40.0 +rightPixelOffset = 40.0 +topPixelOffset = 40.0 +bottomPixelOffset = 40.0 + +[sub_resource type="Resource" id="Resource_1t1hx"] +script = ExtResource("46_u1oh5") +value = 1.5 +unit = "em" + +[sub_resource type="Resource" id="Resource_we8s0"] +script = ExtResource("46_u1oh5") +value = 1.5 +unit = "em" + +[sub_resource type="LabelSettings" id="LabelSettings_kn8hv"] +font_size = 10 +shadow_size = 0 + +[sub_resource type="Resource" id="Resource_dy41s"] +script = ExtResource("48_ffwmu") +en = "Esc" + +[sub_resource type="Resource" id="Resource_esexe"] +script = ExtResource("46_u1oh5") +value = 0.567 +unit = "em" + +[sub_resource type="Resource" id="Resource_yhfyc"] +script = ExtResource("46_u1oh5") +value = 100.0 +unit = "pw" + +[sub_resource type="Resource" id="Resource_3uoq1"] +script = ExtResource("46_u1oh5") +value = 100.0 +unit = "ph" + +[sub_resource type="Resource" id="Resource_4c23n"] +script = ExtResource("46_u1oh5") +unit = "em" + +[sub_resource type="Resource" id="Resource_ytrge"] +script = ExtResource("46_u1oh5") +unit = "em" + +[sub_resource type="LabelSettings" id="LabelSettings_iraei"] +font_size = 17 +font_color = Color(1, 1, 1, 0.73678416) +shadow_size = 0 + +[sub_resource type="Resource" id="Resource_jr6gu"] +script = ExtResource("48_ffwmu") +en = " to continue" +metadata/_custom_type_script = "uid://bvj322mokkq63" + [sub_resource type="Resource" id="Resource_quqnr"] script = ExtResource("24_2h7cs") frames = 20.0 @@ -445,6 +849,12 @@ script = ExtResource("24_2h7cs") [sub_resource type="Resource" id="Resource_50dnn"] script = ExtResource("24_2h7cs") +[sub_resource type="Resource" id="Resource_fsd2w"] +script = ExtResource("72_4ybl6") +seconds = 0.5 +timeLine = ExtResource("7_ctpa3") +metadata/_custom_type_script = "uid://ddhwhwos5kkrm" + [sub_resource type="Resource" id="Resource_uwecx"] script = ExtResource("27_6q3b0") metadata/_custom_type_script = "uid://d3d6yud11325f" @@ -645,11 +1055,65 @@ fill_to = Vector2(0.508547, 0) [sub_resource type="ShaderMaterial" id="ShaderMaterial_yl0vy"] render_priority = 1 shader = ExtResource("65_atjbw") +shader_parameter/color = Color(0.8862745, 0.58123744, 0.23137252, 1) +shader_parameter/alphaScale = 1.0 +shader_parameter/circleAmount = 1.0 +shader_parameter/circleDistortion = 0.6885 +shader_parameter/ellipseAmount = 0.487 +shader_parameter/ellipseDistortion = 1.9705 +shader_parameter/ellipseScale = Vector2(1, 0.5) +shader_parameter/add_vs_max = 1.0 +shader_parameter/centerHSL = Vector4(0.08, 0, 0.18, 1) +shader_parameter/outsideHSL = Vector4(-0.05, 1.65, 0.02, 0) +shader_parameter/sizeX = 13.7150006039625 +shader_parameter/sizeY = 1.0 +shader_parameter/scaleAll = 0.467 +shader_parameter/worldSize_vs_screenSize = 0.2450000116375 +shader_parameter/usSpectralsNoise = false +shader_parameter/spectralsAmount = Vector3(0.1, 0.05, 0.02) +shader_parameter/nonSpectralAmount = 0.95 +shader_parameter/spectralsSize = Vector3(1, 0.8, 0.5) +shader_parameter/spectralsSharpness = Vector3(0, 0, 0) +shader_parameter/spectralsFrequency = Vector3(50, 200, 500) +shader_parameter/spectralsSpeed = Vector3(5, -3, -2) +shader_parameter/useQuickOcclusionTest = false +shader_parameter/occlusionZOffset = 0.0 +shader_parameter/occlusionTestMaxSteps = 10 +shader_parameter/occlusionTestStepStride = 1.0 +shader_parameter/occlusionTest_ViewDependingScaleAmount = 0.5 +shader_parameter/occlusionTest_ViewDependingDistance = 100.0 [sub_resource type="ShaderMaterial" id="ShaderMaterial_5x2te"] render_priority = 0 next_pass = SubResource("ShaderMaterial_yl0vy") shader = ExtResource("66_o48hf") +shader_parameter/color = Color(0.887, 0.434, 0.233, 1) +shader_parameter/alphaScale = 0.318 +shader_parameter/circleAmount = 1.27 +shader_parameter/circleDistortion = 1.0 +shader_parameter/ellipseAmount = 0.6035 +shader_parameter/ellipseDistortion = 1.0 +shader_parameter/ellipseScale = Vector2(1, 0.5) +shader_parameter/add_vs_max = 0.5 +shader_parameter/centerHSL = Vector4(0.08, 0, 0.18, 1) +shader_parameter/outsideHSL = Vector4(-0.05, 1.65, 0.02, 0) +shader_parameter/sizeX = 10.0 +shader_parameter/sizeY = 1.0 +shader_parameter/scaleAll = 1.0 +shader_parameter/worldSize_vs_screenSize = 0.0 +shader_parameter/usSpectralsNoise = false +shader_parameter/spectralsAmount = Vector3(0.1, 0.05, 0.02) +shader_parameter/nonSpectralAmount = 0.95 +shader_parameter/spectralsSize = Vector3(1, 0.8, 0.5) +shader_parameter/spectralsSharpness = Vector3(0, 0, 0) +shader_parameter/spectralsFrequency = Vector3(50, 200, 500) +shader_parameter/spectralsSpeed = Vector3(5, -3, -2) +shader_parameter/useQuickOcclusionTest = false +shader_parameter/occlusionZOffset = 0.0 +shader_parameter/occlusionTestMaxSteps = 10 +shader_parameter/occlusionTestStepStride = 1.0 +shader_parameter/occlusionTest_ViewDependingScaleAmount = 0.5 +shader_parameter/occlusionTest_ViewDependingDistance = 100.0 [sub_resource type="QuadMesh" id="QuadMesh_d0nnl"] material = SubResource("ShaderMaterial_5x2te") @@ -657,7 +1121,7 @@ size = Vector2(0.0001, 0.0001) [sub_resource type="Resource" id="Resource_optxl"] script = ExtResource("68_qs4y7") -sensors = [ExtResource("69_lyltj"), ExtResource("70_3c4g0")] +sensors = [ExtResource("69_lyltj"), ExtResource("105_mvod7")] metadata/_custom_type_script = "uid://eid0qnlvq4n1" [sub_resource type="Resource" id="Resource_l3ad6"] @@ -704,6 +1168,94 @@ script = ExtResource("41_8y6f8") duration = 0.15 curve = SubResource("Curve_woc0g") +[sub_resource type="Curve" id="Curve_maga3"] +_data = [Vector2(0, 1), 0.0, -10.6006, 0, 0, Vector2(0.136364, 0.260804), -1.02995, -1.02995, 0, 0, Vector2(1, 0), -0.00696731, 0.0, 0, 0] +point_count = 3 + +[sub_resource type="Resource" id="Resource_u1oh5"] +script = ExtResource("86_2ex5m") +curve = SubResource("Curve_maga3") + +[sub_resource type="Curve" id="Curve_2rmor"] +_limits = [-1.0, 1.0, 0.0, 1.0] +_data = [Vector2(0, 1), 0.0, 0.0, 0, 1, Vector2(1, 1), 0.0, 0.0, 1, 0] +point_count = 2 + +[sub_resource type="Resource" id="Resource_tgn00"] +script = ExtResource("86_2ex5m") +curve = SubResource("Curve_2rmor") +scaleY = 30.0 + +[sub_resource type="Resource" id="Resource_d5wd3"] +script = ExtResource("85_whjfm") +shakeAmountCurve = SubResource("Resource_u1oh5") +shakeChangeFPSCurve = SubResource("Resource_tgn00") +timeline = ExtResource("8_rfged") +smoothingStrength = 0.0236 +positionShake = Vector3(0.2325, 0, 0.7815) +globalPosition = false +rotationShake = Vector3(0.7235, 1800, 23) +globalRotation = false +scaleShake = Vector3(0.1, 0.1, 0.1) + +[sub_resource type="Resource" id="Resource_3c4g0"] +script = ExtResource("126_8y6f8") +color = Color(0.9480516, 0.23086564, 0.25385225, 1) +rgbMultiply = 5.0 + +[sub_resource type="Curve" id="Curve_d5wd3"] +_data = [Vector2(0, 1), 0.0, 0.0775112, 0, 0, Vector2(0.227119, 0), 0.113556, 0.113556, 0, 0, Vector2(0.244068, 0.913564), 0.0, 0.0, 0, 0, Vector2(0.505085, 0), 0.0, 0.0, 0, 0, Vector2(0.518644, 0.697473), 0.0, 0.0, 0, 0, Vector2(0.742794, 0), 0.0, 0.0, 0, 0, Vector2(0.749153, 0.438165), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0442571, 0.0, 0, 0] +point_count = 8 + +[sub_resource type="Resource" id="Resource_kn8hv"] +script = ExtResource("86_2ex5m") +duration = 0.7 +curve = SubResource("Curve_d5wd3") + +[sub_resource type="Resource" id="Resource_qknju"] +script = ExtResource("127_2ewly") +flashCurve = SubResource("Resource_kn8hv") +timeline = ExtResource("7_ctpa3") +color = SubResource("Resource_3c4g0") + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_uepmj"] +shading_mode = 0 +albedo_color = Color(1.8247963, 0.9042009, 0, 1) + +[sub_resource type="Resource" id="Resource_jqb63"] +script = ExtResource("113_msotc") +scene = ExtResource("110_jbb2a") +metadata/_custom_type_script = "uid://dw2vbnun2yndx" + +[sub_resource type="Resource" id="Resource_3t4rw"] +script = ExtResource("114_ctpa3") +room = SubResource("Resource_jqb63") +metadata/_custom_type_script = "uid://d1erd1dodjc7c" + +[sub_resource type="Resource" id="Resource_3p5o6"] +script = ExtResource("113_msotc") +scene = ExtResource("113_5p27p") +metadata/_custom_type_script = "uid://dw2vbnun2yndx" + +[sub_resource type="Resource" id="Resource_ypsyk"] +script = ExtResource("114_ctpa3") +room = SubResource("Resource_3p5o6") +metadata/_custom_type_script = "uid://d1erd1dodjc7c" + +[sub_resource type="ArrayMesh" id="ArrayMesh_1m6i4"] +_surfaces = [{ +"aabb": AABB(-4194.878, -125, -4166.98, 7294.878, 250, 8646.119), +"attribute_data": PackedByteArray("AAAA/wAAAAAAAAAAAAAA/wAAgD8AAAAAAAAA/wAAgD8AAIA/AAAA/wAAAAAAAIA/AAEA/wAAAAAAAAAAAAEA/wAAgD8AAAAAAAEA/wAAgD8AAIA/AAEA/wAAAAAAAIA/AAIA/wAAAAAAAAAAAAIA/wAAgD8AAAAAAAIA/wAAgD8AAIA/AAIA/wAAAAAAAIA/AAMA/wAAAAAAAAAAAAMA/wAAgD8AAAAAAAMA/wAAgD8AAIA/AAMA/wAAAAAAAIA/AAQA/wAAAAAAAAAAAAQA/wAAgD8AAAAAAAQA/wAAgD8AAIA/AAQA/wAAAAAAAIA/AAUA/wAAAAAAAAAAAAUA/wAAgD8AAAAAAAUA/wAAgD8AAIA/AAUA/wAAAAAAAIA/AAYA/wAAAAAAAAAAAAYA/wAAgD8AAAAAAAYA/wAAgD8AAIA/AAYA/wAAAAAAAIA/AAcA/wAAAAAAAAAAAAcA/wAAgD8AAAAAAAcA/wAAgD8AAIA/AAcA/wAAAAAAAIA/AAgA/wAAAAAAAAAAAAgA/wAAgD8AAAAAAAgA/wAAgD8AAIA/AAgA/wAAAAAAAIA/AAkA/wAAAAAAAAAAAAkA/wAAgD8AAAAAAAkA/wAAgD8AAIA/AAkA/wAAAAAAAIA/AAoA/wAAAAAAAAAAAAoA/wAAgD8AAAAAAAoA/wAAgD8AAIA/AAoA/wAAAAAAAIA/AAsA/wAAAAAAAAAAAAsA/wAAgD8AAAAAAAsA/wAAgD8AAIA/AAsA/wAAAAAAAIA/AAwA/wAAAAAAAAAAAAwA/wAAgD8AAAAAAAwA/wAAgD8AAIA/AAwA/wAAAAAAAIA/AA0A/wAAAAAAAAAAAA0A/wAAgD8AAAAAAA0A/wAAgD8AAIA/AA0A/wAAAAAAAIA/AA4A/wAAAAAAAAAAAA4A/wAAgD8AAAAAAA4A/wAAgD8AAIA/AA4A/wAAAAAAAIA/AA8A/wAAAAAAAAAAAA8A/wAAgD8AAAAAAA8A/wAAgD8AAIA/AA8A/wAAAAAAAIA/ABAA/wAAAAAAAAAAABAA/wAAgD8AAAAAABAA/wAAgD8AAIA/ABAA/wAAAAAAAIA/ABEA/wAAAAAAAAAAABEA/wAAgD8AAAAAABEA/wAAgD8AAIA/ABEA/wAAAAAAAIA/ABIA/wAAAAAAAAAAABIA/wAAgD8AAAAAABIA/wAAgD8AAIA/ABIA/wAAAAAAAIA/ABMA/wAAAAAAAAAAABMA/wAAgD8AAAAAABMA/wAAgD8AAIA/ABMA/wAAAAAAAIA/ABQA/wAAAAAAAAAAABQA/wAAgD8AAAAAABQA/wAAgD8AAIA/ABQA/wAAAAAAAIA/ABUA/wAAAAAAAAAAABUA/wAAgD8AAAAAABUA/wAAgD8AAIA/ABUA/wAAAAAAAIA/ABYA/wAAAAAAAAAAABYA/wAAgD8AAAAAABYA/wAAgD8AAIA/ABYA/wAAAAAAAIA/ABcA/wAAAAAAAAAAABcA/wAAgD8AAAAAABcA/wAAgD8AAIA/ABcA/wAAAAAAAIA/ABgA/wAAAAAAAAAAABgA/wAAgD8AAAAAABgA/wAAgD8AAIA/ABgA/wAAAAAAAIA/ABkA/wAAAAAAAAAAABkA/wAAgD8AAAAAABkA/wAAgD8AAIA/ABkA/wAAAAAAAIA/ABoA/wAAAAAAAAAAABoA/wAAgD8AAAAAABoA/wAAgD8AAIA/ABoA/wAAAAAAAIA/ABsA/wAAAAAAAAAAABsA/wAAgD8AAAAAABsA/wAAgD8AAIA/ABsA/wAAAAAAAIA/ABwA/wAAAAAAAAAAABwA/wAAgD8AAAAAABwA/wAAgD8AAIA/ABwA/wAAAAAAAIA/AB0A/wAAAAAAAAAAAB0A/wAAgD8AAAAAAB0A/wAAgD8AAIA/AB0A/wAAAAAAAIA/AB4A/wAAAAAAAAAAAB4A/wAAgD8AAAAAAB4A/wAAgD8AAIA/AB4A/wAAAAAAAIA/AB8A/wAAAAAAAAAAAB8A/wAAgD8AAAAAAB8A/wAAgD8AAIA/AB8A/wAAAAAAAIA/ACAA/wAAAAAAAAAAACAA/wAAgD8AAAAAACAA/wAAgD8AAIA/ACAA/wAAAAAAAIA/ACEA/wAAAAAAAAAAACEA/wAAgD8AAAAAACEA/wAAgD8AAIA/ACEA/wAAAAAAAIA/ACIA/wAAAAAAAAAAACIA/wAAgD8AAAAAACIA/wAAgD8AAIA/ACIA/wAAAAAAAIA/ACMA/wAAAAAAAAAAACMA/wAAgD8AAAAAACMA/wAAgD8AAIA/ACMA/wAAAAAAAIA/ACQA/wAAAAAAAAAAACQA/wAAgD8AAAAAACQA/wAAgD8AAIA/ACQA/wAAAAAAAIA/ACUA/wAAAAAAAAAAACUA/wAAgD8AAAAAACUA/wAAgD8AAIA/ACUA/wAAAAAAAIA/ACYA/wAAAAAAAAAAACYA/wAAgD8AAAAAACYA/wAAgD8AAIA/ACYA/wAAAAAAAIA/ACcA/wAAAAAAAAAAACcA/wAAgD8AAAAAACcA/wAAgD8AAIA/ACcA/wAAAAAAAIA/ACgA/wAAAAAAAAAAACgA/wAAgD8AAAAAACgA/wAAgD8AAIA/ACgA/wAAAAAAAIA/ACkA/wAAAAAAAAAAACkA/wAAgD8AAAAAACkA/wAAgD8AAIA/ACkA/wAAAAAAAIA/ACoA/wAAAAAAAAAAACoA/wAAgD8AAAAAACoA/wAAgD8AAIA/ACoA/wAAAAAAAIA/ACsA/wAAAAAAAAAAACsA/wAAgD8AAAAAACsA/wAAgD8AAIA/ACsA/wAAAAAAAIA/ACwA/wAAAAAAAAAAACwA/wAAgD8AAAAAACwA/wAAgD8AAIA/ACwA/wAAAAAAAIA/AC0A/wAAAAAAAAAAAC0A/wAAgD8AAAAAAC0A/wAAgD8AAIA/AC0A/wAAAAAAAIA/AC4A/wAAAAAAAAAAAC4A/wAAgD8AAAAAAC4A/wAAgD8AAIA/AC4A/wAAAAAAAIA/AC8A/wAAAAAAAAAAAC8A/wAAgD8AAAAAAC8A/wAAgD8AAIA/AC8A/wAAAAAAAIA/ADAA/wAAAAAAAAAAADAA/wAAgD8AAAAAADAA/wAAgD8AAIA/ADAA/wAAAAAAAIA/ADEA/wAAAAAAAAAAADEA/wAAgD8AAAAAADEA/wAAgD8AAIA/ADEA/wAAAAAAAIA/ADIA/wAAAAAAAAAAADIA/wAAgD8AAAAAADIA/wAAgD8AAIA/ADIA/wAAAAAAAIA/ADMA/wAAAAAAAAAAADMA/wAAgD8AAAAAADMA/wAAgD8AAIA/ADMA/wAAAAAAAIA/ADQA/wAAAAAAAAAAADQA/wAAgD8AAAAAADQA/wAAgD8AAIA/ADQA/wAAAAAAAIA/ADUA/wAAAAAAAAAAADUA/wAAgD8AAAAAADUA/wAAgD8AAIA/ADUA/wAAAAAAAIA/ADYA/wAAAAAAAAAAADYA/wAAgD8AAAAAADYA/wAAgD8AAIA/ADYA/wAAAAAAAIA/ADcA/wAAAAAAAAAAADcA/wAAgD8AAAAAADcA/wAAgD8AAIA/ADcA/wAAAAAAAIA/ADgA/wAAAAAAAAAAADgA/wAAgD8AAAAAADgA/wAAgD8AAIA/ADgA/wAAAAAAAIA/ADkA/wAAAAAAAAAAADkA/wAAgD8AAAAAADkA/wAAgD8AAIA/ADkA/wAAAAAAAIA/ADoA/wAAAAAAAAAAADoA/wAAgD8AAAAAADoA/wAAgD8AAIA/ADoA/wAAAAAAAIA/ADsA/wAAAAAAAAAAADsA/wAAgD8AAAAAADsA/wAAgD8AAIA/ADsA/wAAAAAAAIA/ADwA/wAAAAAAAAAAADwA/wAAgD8AAAAAADwA/wAAgD8AAIA/ADwA/wAAAAAAAIA/AD0A/wAAAAAAAAAAAD0A/wAAgD8AAAAAAD0A/wAAgD8AAIA/AD0A/wAAAAAAAIA/AD4A/wAAAAAAAAAAAD4A/wAAgD8AAAAAAD4A/wAAgD8AAIA/AD4A/wAAAAAAAIA/AD8A/wAAAAAAAAAAAD8A/wAAgD8AAAAAAD8A/wAAgD8AAIA/AD8A/wAAAAAAAIA/AEAA/wAAAAAAAAAAAEAA/wAAgD8AAAAAAEAA/wAAgD8AAIA/AEAA/wAAAAAAAIA/AEEA/wAAAAAAAAAAAEEA/wAAgD8AAAAAAEEA/wAAgD8AAIA/AEEA/wAAAAAAAIA/AEIA/wAAAAAAAAAAAEIA/wAAgD8AAAAAAEIA/wAAgD8AAIA/AEIA/wAAAAAAAIA/AEMA/wAAAAAAAAAAAEMA/wAAgD8AAAAAAEMA/wAAgD8AAIA/AEMA/wAAAAAAAIA/AEQA/wAAAAAAAAAAAEQA/wAAgD8AAAAAAEQA/wAAgD8AAIA/AEQA/wAAAAAAAIA/AEUA/wAAAAAAAAAAAEUA/wAAgD8AAAAAAEUA/wAAgD8AAIA/AEUA/wAAAAAAAIA/AEYA/wAAAAAAAAAAAEYA/wAAgD8AAAAAAEYA/wAAgD8AAIA/AEYA/wAAAAAAAIA/AEcA/wAAAAAAAAAAAEcA/wAAgD8AAAAAAEcA/wAAgD8AAIA/AEcA/wAAAAAAAIA/AEgA/wAAAAAAAAAAAEgA/wAAgD8AAAAAAEgA/wAAgD8AAIA/AEgA/wAAAAAAAIA/AEkA/wAAAAAAAAAAAEkA/wAAgD8AAAAAAEkA/wAAgD8AAIA/AEkA/wAAAAAAAIA/AEoA/wAAAAAAAAAAAEoA/wAAgD8AAAAAAEoA/wAAgD8AAIA/AEoA/wAAAAAAAIA/AEsA/wAAAAAAAAAAAEsA/wAAgD8AAAAAAEsA/wAAgD8AAIA/AEsA/wAAAAAAAIA/AEwA/wAAAAAAAAAAAEwA/wAAgD8AAAAAAEwA/wAAgD8AAIA/AEwA/wAAAAAAAIA/AE0A/wAAAAAAAAAAAE0A/wAAgD8AAAAAAE0A/wAAgD8AAIA/AE0A/wAAAAAAAIA/AE4A/wAAAAAAAAAAAE4A/wAAgD8AAAAAAE4A/wAAgD8AAIA/AE4A/wAAAAAAAIA/AE8A/wAAAAAAAAAAAE8A/wAAgD8AAAAAAE8A/wAAgD8AAIA/AE8A/wAAAAAAAIA/AFAA/wAAAAAAAAAAAFAA/wAAgD8AAAAAAFAA/wAAgD8AAIA/AFAA/wAAAAAAAIA/AFEA/wAAAAAAAAAAAFEA/wAAgD8AAAAAAFEA/wAAgD8AAIA/AFEA/wAAAAAAAIA/AFIA/wAAAAAAAAAAAFIA/wAAgD8AAAAAAFIA/wAAgD8AAIA/AFIA/wAAAAAAAIA/AFMA/wAAAAAAAAAAAFMA/wAAgD8AAAAAAFMA/wAAgD8AAIA/AFMA/wAAAAAAAIA/AFQA/wAAAAAAAAAAAFQA/wAAgD8AAAAAAFQA/wAAgD8AAIA/AFQA/wAAAAAAAIA/AFUA/wAAAAAAAAAAAFUA/wAAgD8AAAAAAFUA/wAAgD8AAIA/AFUA/wAAAAAAAIA/AFYA/wAAAAAAAAAAAFYA/wAAgD8AAAAAAFYA/wAAgD8AAIA/AFYA/wAAAAAAAIA/AFcA/wAAAAAAAAAAAFcA/wAAgD8AAAAAAFcA/wAAgD8AAIA/AFcA/wAAAAAAAIA/AFgA/wAAAAAAAAAAAFgA/wAAgD8AAAAAAFgA/wAAgD8AAIA/AFgA/wAAAAAAAIA/AFkA/wAAAAAAAAAAAFkA/wAAgD8AAAAAAFkA/wAAgD8AAIA/AFkA/wAAAAAAAIA/AFoA/wAAAAAAAAAAAFoA/wAAgD8AAAAAAFoA/wAAgD8AAIA/AFoA/wAAAAAAAIA/AFsA/wAAAAAAAAAAAFsA/wAAgD8AAAAAAFsA/wAAgD8AAIA/AFsA/wAAAAAAAIA/AFwA/wAAAAAAAAAAAFwA/wAAgD8AAAAAAFwA/wAAgD8AAIA/AFwA/wAAAAAAAIA/AF0A/wAAAAAAAAAAAF0A/wAAgD8AAAAAAF0A/wAAgD8AAIA/AF0A/wAAAAAAAIA/AF4A/wAAAAAAAAAAAF4A/wAAgD8AAAAAAF4A/wAAgD8AAIA/AF4A/wAAAAAAAIA/AF8A/wAAAAAAAAAAAF8A/wAAgD8AAAAAAF8A/wAAgD8AAIA/AF8A/wAAAAAAAIA/AGAA/wAAAAAAAAAAAGAA/wAAgD8AAAAAAGAA/wAAgD8AAIA/AGAA/wAAAAAAAIA/AGEA/wAAAAAAAAAAAGEA/wAAgD8AAAAAAGEA/wAAgD8AAIA/AGEA/wAAAAAAAIA/"), +"format": 34359742495, +"index_count": 588, +"index_data": PackedByteArray("AAABAAIAAgADAAAABAAFAAYABgAHAAQACAAJAAoACgALAAgADAANAA4ADgAPAAwAEAARABIAEgATABAAFAAVABYAFgAXABQAGAAZABoAGgAbABgAHAAdAB4AHgAfABwAIAAhACIAIgAjACAAJAAlACYAJgAnACQAKAApACoAKgArACgALAAtAC4ALgAvACwAMAAxADIAMgAzADAANAA1ADYANgA3ADQAOAA5ADoAOgA7ADgAPAA9AD4APgA/ADwAQABBAEIAQgBDAEAARABFAEYARgBHAEQASABJAEoASgBLAEgATABNAE4ATgBPAEwAUABRAFIAUgBTAFAAVABVAFYAVgBXAFQAWABZAFoAWgBbAFgAXABdAF4AXgBfAFwAYABhAGIAYgBjAGAAZABlAGYAZgBnAGQAaABpAGoAagBrAGgAbABtAG4AbgBvAGwAcABxAHIAcgBzAHAAdAB1AHYAdgB3AHQAeAB5AHoAegB7AHgAfAB9AH4AfgB/AHwAgACBAIIAggCDAIAAhACFAIYAhgCHAIQAiACJAIoAigCLAIgAjACNAI4AjgCPAIwAkACRAJIAkgCTAJAAlACVAJYAlgCXAJQAmACZAJoAmgCbAJgAnACdAJ4AngCfAJwAoAChAKIAogCjAKAApAClAKYApgCnAKQAqACpAKoAqgCrAKgArACtAK4ArgCvAKwAsACxALIAsgCzALAAtAC1ALYAtgC3ALQAuAC5ALoAugC7ALgAvAC9AL4AvgC/ALwAwADBAMIAwgDDAMAAxADFAMYAxgDHAMQAyADJAMoAygDLAMgAzADNAM4AzgDPAMwA0ADRANIA0gDTANAA1ADVANYA1gDXANQA2ADZANoA2gDbANgA3ADdAN4A3gDfANwA4ADhAOIA4gDjAOAA5ADlAOYA5gDnAOQA6ADpAOoA6gDrAOgA7ADtAO4A7gDvAOwA8ADxAPIA8gDzAPAA9AD1APYA9gD3APQA+AD5APoA+gD7APgA/AD9AP4A/gD/APwAAAEBAQIBAgEDAQABBAEFAQYBBgEHAQQBCAEJAQoBCgELAQgBDAENAQ4BDgEPAQwBEAERARIBEgETARABFAEVARYBFgEXARQBGAEZARoBGgEbARgBHAEdAR4BHgEfARwBIAEhASIBIgEjASABJAElASYBJgEnASQBKAEpASoBKgErASgBLAEtAS4BLgEvASwBMAExATIBMgEzATABNAE1ATYBNgE3ATQBOAE5AToBOgE7ATgBPAE9AT4BPgE/ATwBQAFBAUIBQgFDAUABRAFFAUYBRgFHAUQBSAFJAUoBSgFLAUgBTAFNAU4BTgFPAUwBUAFRAVIBUgFTAVABVAFVAVYBVgFXAVQBWAFZAVoBWgFbAVgBXAFdAV4BXgFfAVwBYAFhAWIBYgFjAWABZAFlAWYBZgFnAWQBaAFpAWoBagFrAWgBbAFtAW4BbgFvAWwBcAFxAXIBcgFzAXABdAF1AXYBdgF3AXQBeAF5AXoBegF7AXgBfAF9AX4BfgF/AXwBgAGBAYIBggGDAYABhAGFAYYBhgGHAYQB"), +"material": ExtResource("102_85m4o"), +"primitive": 3, +"uv_scale": Vector4(0, 0, 0, 0), +"vertex_count": 392, +"vertex_data": PackedByteArray("AMBBRQAA+sJGYAJEMhsIRQAA+sKdLLdDMhsIRQAA+kKdLLdDAMBBRQAA+kJGYAJEMRsIRQAA+sKXLLdDC10GRQAA+sJtOZnDC10GRQAA+kJtOZnDMRsIRQAA+kKXLLdDAMBBRQAA+sI3sdNEgKoHRQAA+sK3OpREgKoHRQAA+kK3OpREAMBBRQAA+kI3sdNEgaoHRQAA+sK4OpREm+TwRAAA+sJAV01Em+TwRAAA+kJAV01EgaoHRQAA+kK4OpREnOTwRAAA+sI/V01EMhsIRQAA+sKWLLdDMhsIRQAA+kKWLLdDnOTwRAAA+kI/V01EHDQvRQAA+sI83EBFrL/9RAAA+sIaqQtFrL/9RAAA+kIaqQtFHDQvRQAA+kI83EBFrL/9RAAA+sIaqQtFgKoHRQAA+sK4OpREgKoHRQAA+kK4OpRErL/9RAAA+kIaqQtFAvakRAAA+sI83EBFdYB4RAAA+sLcQxFFdYB4RAAA+kLcQxFFAvakRAAA+kI83EBFd4B4RAAA+sLeQxFFdVq3RAAA+sL+kAlFdVq3RAAA+kL+kAlFd4B4RAAA+kLeQxFFdFq3RAAA+sL+kAlFrL/9RAAA+sIaqQtFrL/9RAAA+kIaqQtFdFq3RAAA+kL+kAlFj9GeQwAA+sIc+YtFRuF0QwAA+sKM0ldFRuF0QwAA+kKM0ldFj9GeQwAA+kIc+YtFUuF0QwAA+sKM0ldFvN9gRAAA+sJKqQ9FvN9gRAAA+kJKqQ9FUuF0QwAA+kKM0ldFvt9gRAAA+sJKqQ9FtphsRAAA+sJekw9FtphsRAAA+kJekw9Fvt9gRAAA+kJKqQ9Ft5hsRAAA+sJfkw9Fd4B4RAAA+sLdQxFFd4B4RAAA+kLdQxFFt5hsRAAA+kJfkw9FLFFPxAAA+sI83EBFVlcsxAAA+sLGUiBFVlcsxAAA+kLGUiBFLFFPxAAA+kI83EBFVlcsxAAA+sLGUiBFRtNDwwAA+sLGdxRFRtNDwwAA+kLGdxRFVlcsxAAA+kLGUiBFRtNDwwAA+sLIdxRFSuF0QwAA+sKM0ldFSuF0QwAA+kKM0ldFRtNDwwAA+kLIdxRF4cYCxQAA+sI83EBFGR7ExAAA+sIonBBFGR7ExAAA+kIonBBF4cYCxQAA+kI83EBFGR7ExAAA+sIqnBBFE/GexAAA+sLCbApFE/GexAAA+kLCbApFGR7ExAAA+kIqnBBFE/GexAAA+sLCbApFVlcsxAAA+sLGUiBFVlcsxAAA+kLGUiBFE/GexAAA+kLCbApFoc8/xQAA+sKBSQ9FPzILxQAA+sIl989EPzILxQAA+kIl989Eoc8/xQAA+kKBSQ9FPjILxQAA+sIl989EGR7ExAAA+sIqnBBFGR7ExAAA+kIqnBBFPjILxQAA+kIl989Eoc8/xQAA+sIzTHREpy8cxQAA+sKp7EZEpy8cxQAA+kKp7EZEoc8/xQAA+kIzTHREpy8cxQAA+sKp7EZEUw37xAAA+sKVQmVEUw37xAAA+kKVQmVEpy8cxQAA+kKp7EZEVQ37xAAA+sKVQmVEPTILxQAA+sIm989EPTILxQAA+kIm989EVQ37xAAA+kKVQmVEos8/xQAA+sKX75nCggc3xQAA+sJf45LCggc3xQAA+kJf45LCos8/xQAA+kKX75nCggc3xQAA+sJc45LCpi8cxQAA+sKo7EZEpi8cxQAA+kKo7EZEggc3xQAA+kJc45LCBheDxQAA+sLmasTE4/pJxQAA+sJQUZfE4/pJxQAA+kJQUZfEBheDxQAA+kLmasTE4/pJxQAA+sJQUZfEwe8pxQAA+sLkaFbEwe8pxQAA+kLkaFbE4/pJxQAA+kJQUZfEwO8pxQAA+sLkaFbEeC4sxQAA+sIAT1zDeC4sxQAA+kIAT1zDwO8pxQAA+kLkaFbEeC4sxQAA+sIET1zDggc3xQAA+sJf45LCggc3xQAA+kJf45LCeC4sxQAA+kIET1zDoM8/xQAA+sLm3h7F5JImxQAA+sKu9wnF5JImxQAA+kKu9wnFoM8/xQAA+kLm3h7F5JImxQAA+sKu9wnFzK4PxQAA+sJQOL3EzK4PxQAA+kJQOL3E5JImxQAA+kKu9wnFzK4PxQAA+sJROL3E5PpJxQAA+sJPUZfE5PpJxQAA+kJPUZfEzK4PxQAA+kJROL3EvA7rxAAA+sIrjEHFaAiTxAAA+sKSIvLEaAiTxAAA+kKSIvLEvA7rxAAA+kIrjEHFZgiTxAAA+sKWIvLE5ZImxQAA+sKt9wnF5ZImxQAA+kKt9wnFZgiTxAAA+kKWIvLEgfImxAAA+sIqjEHFx5YdxAAA+sK2sjbFx5YdxAAA+kK2sjbFgfImxAAA+kIqjEHFx5YdxAAA+sK4sjbFdb4RxAAA+sJQ+RTFdb4RxAAA+kJQ+RTFx5YdxAAA+kK4sjbFdb4RxAAA+sJQ+RTFG9ZcxAAA+sIkLNjEG9ZcxAAA+kIkLNjEdb4RxAAA+kJQ+RTFHNZcxAAA+sIlLNjEgrp+xAAA+sKnlN/Egrp+xAAA+kKnlN/EHNZcxAAA+kIlLNjEgrp+xAAA+sKolN/EZwiTxAAA+sKSIvLEZwiTxAAA+kKSIvLEgrp+xAAA+kKolN/E1Tj9QwAA+sLXN4LFtyy/QwAA+sL+nkTFtyy/QwAA+kL+nkTF1Tj9QwAA+kLXN4LFsiy/QwAA+sL+nkTFx5YdxAAA+sK2sjbFx5YdxAAA+kK2sjbFsiy/QwAA+kL+nkTF5Qi9RAAA+sIqjEHFO0yARAAA+sJQXAPFO0yARAAA+kJQXAPF5Qi9RAAA+kIqjEHFOkyARAAA+sJPXAPFDo6/QwAA+sIpAC3FDo6/QwAA+kIpAC3FOkyARAAA+kJPXAPFCo6/QwAA+sIqAC3Fsiy/QwAA+sL+nkTFsiy/QwAA+kL+nkTFCo6/QwAA+kIqAC3F/79BRQAA+sL15EDFii3FRAAA+sKWTsTEii3FRAAA+kKWTsTE/79BRQAA+kL15EDFiS3FRAAA+sKZTsTE6z6ERAAA+sJL7+vE6z6ERAAA+kJL7+vEiS3FRAAA+kKZTsTE6z6ERAAA+sJM7+vEO0yARAAA+sJQXAPFO0yARAAA+kJQXAPF6z6ERAAA+kJM7+vEAMBBRQAA+sLuHLvEIFDuRAAA+sJHJmbEIFDuRAAA+kJHJmbEAMBBRQAA+kLuHLvEIFDuRAAA+sJIJmbEiC3FRAAA+sKYTsTEiC3FRAAA+kKYTsTEIFDuRAAA+kJIJmbEAMBBRQAA+sJ38tzDDF0GRQAA+sJtOZnDDF0GRQAA+kJtOZnDAMBBRQAA+kJ38tzDC10GRQAA+sJsOZnDgrLtRAAA+sL6kj/EgrLtRAAA+kL6kj/EC10GRQAA+kJsOZnDg7LtRAAA+sL6kj/EIVDuRAAA+sJIJmbEIVDuRAAA+kJIJmbEg7LtRAAA+kL6kj/EteFBxAAA+sKp1qvDxkDawwAA+sIcBpPExkDawwAA+kIcBpPEteFBxAAA+kKp1qvDxUDawwAA+sIcBpPEHTe5wwAA+sKYcJLEHTe5wwAA+kKYcJLExUDawwAA+kIcBpPEHje5wwAA+sKXcJLEdJyuQwAA+sIAGATEdJyuQwAA+kIAGATEHje5wwAA+kKXcJLEc5yuQwAA+sIAGATEBaLgQwAA+sKQhdpDBaLgQwAA+kKQhdpDc5yuQwAA+kIAGATEBaLgQwAA+sKQhdpDtrQ+wwAA+sJxvy9DtrQ+wwAA+kJxvy9DBaLgQwAA+kKQhdpDurQ+wwAA+sJyvy9DtOFBxAAA+sKt1qvDtOFBxAAA+kKt1qvDurQ+wwAA+kJyvy9DzK4PxQAA+sJROL3ErNkJxQAA+sJ3DLTErNkJxQAA+kJ3DLTEzK4PxQAA+kJROL3Eq9kJxQAA+sJ3DLTEafIOxQAA+sJW4m7EafIOxQAA+kJW4m7Eq9kJxQAA+kJ3DLTEavIOxQAA+sJW4m7Ewu8pxQAA+sLkaFbEwu8pxQAA+kLkaFbEavIOxQAA+kJW4m7EHTe5wwAA+sKXcJLE6z6ERAAA+sJN7+vE6z6ERAAA+kJN7+vEHTe5wwAA+kKXcJLEgbLtRAAA+sL7kj/EJ+O+RAAA+sJxNxvEJ+O+RAAA+kJxNxvEgbLtRAAA+kL7kj/EJ+O+RAAA+sJxNxvEBmhfRAAA+sJXvfzDBmhfRAAA+kJXvfzDJ+O+RAAA+kJxNxvEBmhfRAAA+sJYvfzDc5yuQwAA+sL+FwTEc5yuQwAA+kL+FwTEBmhfRAAA+kJYvfzDavIOxQAA+sJW4m7EBDH7xAAA+sIiSTHEBDH7xAAA+kIiSTHEavIOxQAA+kJW4m7EBjH7xAAA+sIiSTHEChX1xAAA+sJ5H1DDChX1xAAA+kJ5H1DDBjH7xAAA+kIiSTHECRX1xAAA+sJ+H1DDeC4sxQAA+sIAT1zDeC4sxQAA+kIAT1zDCRX1xAAA+kJ+H1DDInoCwwAA+sLr0aJESHQZRAAA+sIm5zpESHQZRAAA+kIm5zpEInoCwwAA+kLr0aJESHQZRAAA+sIo5zpEVJM2RAAA+sK41jxEVJM2RAAA+kK41jxESHQZRAAA+kIo5zpEUpM2RAAA+sK41jxEL62XRAAA+sJM2GdEL62XRAAA+kJM2GdEUpM2RAAA+kK41jxELq2XRAAA+sJM2GdEuJhsRAAA+sJfkw9FuJhsRAAA+kJfkw9FLq2XRAAA+kJM2GdEvt9gRAAA+sJKqQ9FAD8qQgAA+sIE1gFFAD8qQgAA+kIE1gFFvt9gRAAA+kJKqQ9FEz8qQgAA+sIE1gFFJ3oCwwAA+sLr0aJEJ3oCwwAA+kLr0aJEEz8qQgAA+kIE1gFFB2hfRAAA+sJWvfzDj/lfRAAA+sJOTpxDj/lfRAAA+kJOTpxDB2hfRAAA+kJWvfzDkPlfRAAA+sJMTpxDUpM2RAAA+sK41jxEUpM2RAAA+kK41jxEkPlfRAAA+kJMTpxDSXQZRAAA+sIn5zpEA6LgQwAA+sKShdpDA6LgQwAA+kKShdpDSXQZRAAA+kIn5zpEP/jxwwAA+sI12JFEtrQ+wwAA+sJuvy9DtrQ+wwAA+kJuvy9DP/jxwwAA+kI12JFEJHoCwwAA+sLr0aJEQPjxwwAA+sI12JFEQPjxwwAA+kI12JFEJHoCwwAA+kLr0aJERtNDwwAA+sLIdxRFBj8qQgAA+sIE1gFFBj8qQgAA+kIE1gFFRtNDwwAA+kLIdxRFgrp+xAAA+sKnlN/ErNkJxQAA+sJ5DLTErNkJxQAA+kJ5DLTEgrp+xAAA+kKnlN/EJeO+RAAA+sJ0NxvEkvlfRAAA+sJRTpxDkvlfRAAA+kJRTpxDJeO+RAAA+kJ0NxvEE/GexAAA+sLCbApFQTmCxAAA+sJY4X5EQTmCxAAA+kJY4X5EE/GexAAA+kLCbApFQDmCxAAA+sJa4X5EQPjxwwAA+sI12JFEQPjxwwAA+kI12JFEQDmCxAAA+kJa4X5EChX1xAAA+sJ8H1DDLj6wxAAA+sLU+c9DLj6wxAAA+kLU+c9DChX1xAAA+kJ8H1DDLT6wxAAA+sLT+c9DK7SzxAAA+sK6oR9EK7SzxAAA+kK6oR9ELT6wxAAA+kLT+c9DLLSzxAAA+sK4oR9EVA37xAAA+sKYQmVEVA37xAAA+kKYQmVELLSzxAAA+kK4oR9Em+TwRAAA+sI/V01EI5fnRAAA+sJ7m1JEI5fnRAAA+kJ7m1JEm+TwRAAA+kI/V01EI5fnRAAA+sJ8m1JEL62XRAAA+sJK2GdEL62XRAAA+kJK2GdEI5fnRAAA+kJ8m1JEditCxAAA+sJv7r/EHNZcxAAA+sIlLNjEHNZcxAAA+kIlLNjEditCxAAA+kJv7r/Ec74RxAAA+sJP+RTFCI6/QwAA+sIpAC3FCI6/QwAA+kIpAC3Fc74RxAAA+kJP+RTFxEDawwAA+sIdBpPEditCxAAA+sJv7r/EditCxAAA+kJv7r/ExEDawwAA+kIdBpPEQDmCxAAA+sJa4X5ELLSzxAAA+sK6oR9ELLSzxAAA+kK6oR9EQDmCxAAA+kJa4X5ELT6wxAAA+sLR+c9DtuFBxAAA+sKp1qvDtuFBxAAA+kKp1qvDLT6wxAAA+kLR+c9DdCtCxAAA+sJv7r/EBjH7xAAA+sIiSTHEBjH7xAAA+kIiSTHEdCtCxAAA+kJv7r/EdVq3RAAA+sL+kAlFI5fnRAAA+sJ8m1JEI5fnRAAA+kJ8m1JEdVq3RAAA+kL+kAlFkG3/fwAAN8mQbf9/AAA3yZBt/38AADfJkG3/fwAAN8kXBf9/AABz/RcF/38AAHP9FwX/fwAAc/0XBf9/AABz/cZS/38AAJzWxlL/fwAAnNbGUv9/AACc1sZS/38AAJzWRDP/fwAAXeZEM/9/AABd5kQz/38AAF3mRDP/fwAAXeYAAHOt//9F6QAAc63//0XpAABzrf//RekAAHOt//9F6e08/38AAIjh7Tz/fwAAiOHtPP9/AACI4e08/38AAIjhAAAij///bfgAACKP//9t+AAAIo///234AAAij///bfhWJv9/AADT7FYm/38AANPsVib/fwAA0+xWJv9/AADT7AAAiuX//znNAACK5f//Oc0AAIrl//85zQAAiuX//znN///O+M74/7///874zvj/v///zvjO+P+////O+M74/794CP9/AADC+3gI/38AAML7eAj/fwAAwvt4CP9/AADC+wAAT67//9foAABPrv//1+gAAE+u///X6AAAT67//9foAABc/P//0MEAAFz8///QwQAAXPz//9DBAABc/P//0MH//6bRptH/v///ptGm0f+///+m0abR/7///6bRptH/vwAAHJv//3DyAAAcm///cPIAAByb//9w8gAAHJv//3DyAAB13P//xNEAAHXc///E0QAAddz//8TRAAB13P//xNH//yalJqX/v///JqUmpf+///8mpSal/7///yalJqX/vwAAuLP//yLmAAC4s///IuYAALiz//8i5gAAuLP//yLmAAAJ4P//+s8AAAng///6zwAACeD///rPAAAJ4P//+s///+fP58//v///58/nz/+////nz+fP/7///+fP58//vwAAQ8n//13bAABDyf//XdsAAEPJ//9d2wAAQ8n//13b//9lwGXA/7///2XAZcD/v///ZcBlwP+///9lwGXA/78AABXh//90zwAAFeH//3TPAAAV4f//dM8AABXh//90z///nead5v+///+d5p3m/7///53mneb/v///nead5v+//+L/f/9i/7//4v9//2L/v//i/3//Yv+//+L/f/9i/7///9383fz/v///3fzd/P+////d/N38/7///9383fz/v///VKpUqv+///9UqlSq/7///1SqVKr/v///VKpUqv+///8d3R3d/7///x3dHd3/v///Hd0d3f+///8d3R3d/7///8/Lz8v/v///z8vPy/+////Py8/L/7///8/Lz8v/vyn5/38qef+/Kfn/fyp5/78p+f9/Knn/vyn5/38qef+/qrr/f6o6/7+quv9/qjr/v6q6/3+qOv+/qrr/f6o6/7///wLGAsb/v///AsYCxv+///8CxgLG/7///wLGAsb/v///Oaw5rP+///85rDms/7///zmsOaz/v///Oaw5rP+/Zp//f2Yf/79mn/9/Zh//v2af/39mH/+/Zp//f2Yf/7///1uwW7D/v///W7BbsP+///9bsFuw/7///1uwW7D/v1Ns/38AANXJU2z/fwAA1clTbP9/AADVyVNs/38AANXJ//+0lrSW/7///7SWtJb/v///tJa0lv+///+0lrSW/7///1SKVIr/v///VIpUiv+///9UilSK/7///1SKVIr/v7jX/3+4V/+/uNf/f7hX/7+41/9/uFf/v7jX/3+4V/+/EFn/fwAAd9MQWf9/AAB30xBZ/38AAHfTEFn/fwAAd9PdQf9/AAAQ391B/38AABDf3UH/fwAAEN/dQf9/AAAQ3yDy/38gcv+/IPL/fyBy/78g8v9/IHL/vyDy/38gcv+/E5f/fxMX/78Tl/9/Exf/vxOX/38TF/+/E5f/fxMX/7//1f9//1X/v//V/3//Vf+//9X/f/9V/7//1f9//1X/v+A+/38AAI/g4D7/fwAAj+DgPv9/AACP4OA+/38AAI/gQQD/fwAA3v9BAP9/AADe/0EA/38AAN7/QQD/fwAA3v/bv/9/2z//v9u//3/bP/+/27//f9s//7/bv/9/2z//v3xP/38AAEHYfE//fwAAQdh8T/9/AABB2HxP/38AAEHYcRD/fwAAxvdxEP9/AADG93EQ/38AAMb3cRD/fwAAxvetqf9/rSn/v62p/3+tKf+/ran/f60p/7+tqf9/rSn/vwcr/38AAHvqByv/fwAAe+oHK/9/AAB76gcr/38AAHvq94//f/cP/7/3j/9/9w//v/eP/3/3D/+/94//f/cP/7/fLP9/AACP6d8s/38AAI/p3yz/fwAAj+nfLP9/AACP6QAA9YP//wT+AAD1g///BP4AAPWD//8E/gAA9YP//wT+AAAJpf//eu0AAAml//967QAACaX//3rtAAAJpf//eu3//4r3ivf/v///iveK9/+///+K94r3/7///4r3ivf/v///l8OXw/+///+Xw5fD/7///5fDl8P/v///l8OXw/+///8EjASM/7///wSMBIz/v///BIwEjP+///8EjASM/7/jWv9/AACN0uNa/38AAI3S41r/fwAAjdLjWv9/AACN0spD/38AABreykP/fwAAGt7KQ/9/AAAa3spD/38AABre//+ox6jH/7///6jHqMf/v///qMeox/+///+ox6jH/7+R7f9/kW3/v5Ht/3+Rbf+/ke3/f5Ft/7+R7f9/kW3/v6eX/3+nF/+/p5f/f6cX/7+nl/9/pxf/v6eX/3+nF/+/AABC1f//XdUAAELV//9d1QAAQtX//13VAABC1f//XdXNo/9/zSP/v82j/3/NI/+/zaP/f80j/7/No/9/zSP/v7iT/3+4E/+/uJP/f7gT/7+4k/9/uBP/v7iT/3+4E/+/1Xr/fwAAlMLVev9/AACUwtV6/38AAJTC1Xr/fwAAlML//8/Dz8P/v///z8PPw/+////Pw8/D/7///8/Dz8P/v///X4tfi/+///9fi1+L/7///1+LX4v/v///X4tfi/+/EH7/fwAA98AQfv9/AAD3wBB+/38AAPfAEH7/fwAA98AAAFLJ//9V2wAAUsn//1XbAABSyf//VdsAAFLJ//9V2///BPgE+P+///8E+AT4/7///wT4BPj/v///BPgE+P+///9i3mLe/7///2LeYt7/v///Yt5i3v+///9i3mLe/78d6/9/HWv/vx3r/38da/+/Hev/fx1r/78d6/9/HWv/v7xl/38AACHNvGX/fwAAIc28Zf9/AAAhzbxl/38AACHNXRf/fwAAUPRdF/9/AABQ9F0X/38AAFD0XRf/fwAAUPT//1qAWoD/v///WoBagP+///9agFqA/7///1qAWoD/vyfd/38nXf+/J93/fydd/78n3f9/J13/vyfd/38nXf+/Uyz/fwAA1elTLP9/AADV6VMs/38AANXpUyz/fwAA1ekAADmd//9i8QAAOZ3//2LxAAA5nf//YvEAADmd//9i8Xhc/38AAMPReFz/fwAAw9F4XP9/AADD0Xhc/38AAMPRAADfuP//j+MAAN+4//+P4wAA37j//4/jAADfuP//j+MJnf9/CR3/vwmd/38JHf+/CZ3/fwkd/78Jnf9/CR3/v1zM/39cTP+/XMz/f1xM/79czP9/XEz/v1zM/39cTP+/AACilP//rfUAAKKU//+t9QAAopT//631AACilP//rfX//0TlQ+X/v///ROVD5f+///9E5UPl/7///0TlQ+X/v///ALwAvP+///8AvAC8/7///wC8ALz/v///ALwAvP+/1fH/f9Vx/7/V8f9/1XH/v9Xx/3/Vcf+/1fH/f9Vx/7/5qf9/+Sn/v/mp/3/5Kf+/+an/f/kp/7/5qf9/+Sn/vzyc/388HP+/PJz/fzwc/788nP9/PBz/vzyc/388HP+/Ao//fwIP/78Cj/9/Ag//vwKP/38CD/+/Ao//fwIP/79rLf9/AABJ6Wst/38AAEnpay3/fwAASelrLf9/AABJ6QAAj9v//zfSAACP2///N9IAAI/b//830gAAj9v//zfSPz7/fwAA3+A/Pv9/AADf4D8+/38AAN/gPz7/fwAA3+A4Qf9/AABj3zhB/38AAGPfOEH/fwAAY984Qf9/AABj3wAAP7r//9/iAAA/uv//3+IAAD+6///f4gAAP7r//9/iXLP/f1wz/79cs/9/XDP/v1yz/39cM/+/XLP/f1wz/78AAE+c///X8QAAT5z//9fxAABPnP//1/EAAE+c///X8Q==") +}] + [sub_resource type="FastNoiseLite" id="FastNoiseLite_31uhd"] noise_type = 2 frequency = 0.0016 @@ -837,9 +1389,9 @@ scaleVarianceMaxScale = Vector3(2, 2, 2) scaleVarianceScale = 1.032 metadata/_custom_type_script = "uid://bcl28l8d5lxye" -[sub_resource type="ShaderMaterial" id="ShaderMaterial_rsbf7"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_bwq5n"] shader = ExtResource("98_65va8") -shader_parameter/cameraPosition = Vector3(-1199.8746, 567.39136, -337.3392) +shader_parameter/cameraPosition = Vector3(65.56499, 56.72977, 378.73297) shader_parameter/yaw = 0.0 shader_parameter/cellSize = 50.0 shader_parameter/width = 40 @@ -884,9 +1436,9 @@ shader_parameter/mapSize = Vector2(1024, 1024) shader_parameter/mapCenter = Vector2(1024, 1024) script = ExtResource("97_nqnq0") -[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ai5ou"] +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_pmqj0"] -[sub_resource type="ArrayMesh" id="ArrayMesh_kss26"] +[sub_resource type="ArrayMesh" id="ArrayMesh_m0pge"] _surfaces = [{ "aabb": AABB(-1, -1.0623747, -1, 2, 5.0128818, 2), "format": 34896613377, @@ -900,7 +1452,7 @@ _surfaces = [{ }] blend_shape_mode = 0 -[sub_resource type="ArrayMesh" id="ArrayMesh_lc6ck"] +[sub_resource type="ArrayMesh" id="ArrayMesh_g3xcp"] resource_name = "cube_Cube" _surfaces = [{ "aabb": AABB(-1, -1.0623747, -1, 2, 5.0128818, 2), @@ -909,14 +1461,14 @@ _surfaces = [{ "index_count": 132, "index_data": PackedByteArray("EAARAAIAEAADABEAAgAeABAAHwACABEAHwARAAEAHwASAAIAAgATAB4AFAAeABMAAAAeABQAFAATABUAFQAgABQAIQAVABMAIQATACIAIQAiAAgAIQAIAAkAFQAHACAACgAgAAcACgAHACMAIwAWAAoADAAjAAcADAAHACQAJAAHABcAIwALABYAGAAWAAsADwALACUADgALAA8AGAALACYADgAmAAsADQAYACYAGQAmAA4ADQAmABkAJwAdAAYAJwAGABwAKAAdACcAKAAbAB0AKAAFABsAJwAcAAAAKAAnAAAAAAAcACkABAAFACgAKAAAAAQAAAAUAAQABAAqAAUABAAaACoA"), "lods": [1.5992826, PackedByteArray("EAARAAIAEgACABEAEgARAAEAEAADABEAAgATABAAFAAQABMAFAATABUAFQATAAgAFQAIAAkAFQAHABQAAAAQABQACgAUAAcAAAAUAAQACgAHAAsACwAWAAoADAAHABcADAALAAcAGAAWAAsAGAALABkADQAYABkADgAZAAsADgALAA8ABAAaAAUABAAFABsAGwAAAAQAGwAGAAAABgAcAAAAGwAdAAYA"), 2.8319259, PackedByteArray("AAABAAIAAAADAAEABAAAAAIABQAAAAQABQAGAAAABAACAAcABwACAAgABwAIAAkACgAEAAcACgAHAAsADAALAAcADQAKAAsADQALAA4ADgALAA8A")], -"material": SubResource("StandardMaterial3D_ai5ou"), +"material": SubResource("StandardMaterial3D_pmqj0"), "primitive": 3, "uv_scale": Vector4(0, 0, 0, 0), "vertex_count": 43, "vertex_data": PackedByteArray("cfgAAHH4uLONB///cfhR0HH4+/z//yzAjQcDA///EsVx+AAAjQc0z40HAwMAADnvjQcDA///6phx+Pv8AABe/40H//9x+AL4jQf//40HSfSNBwMDAABS/wAA+/yNB7bXjQf//40H99ONBwMD//8SxY0H//9x+Ja1jQf//40Hjs5x+AMD//8AwI0H+/z//2nF///7/HH4zMD///v8cfio1///AwONBzXX///7/I0H7eUAAAMDjQfh5///+/yNB+j3AAADA3H4yNSNB/v8//9Ptf//AwONBxzaAAADA40HG9px+AMD///qmAAAAwNx+NC///8DA3H4esRx+P//cfgRy3H4AwMAAHfrcfj//40Hifdx+P//cfhQ840H+/wAAHTrcfj//40HD+uNB/v8AAAM7QAA+/xx+JjDjQcAAHH4uLONBwAAjQc0z///AwNx+NC/cfgDAwAAOe+/EOlXUOjyL1LdEQHq3ub+BxIHYYQfDZFKTXijzrd3tOBzCK91d/fGEMimy2TX28QXstu26t7m/lD2nqmv5vugJgG2IsL+8CBpQqULByqKG74pnzqkNHwl2M2e2C4gBDXD0+TlafnA2pIjaD2XQpGjeSO0MtZQp6W1H2MwJM6fGIE9uUGQQwUNEDECCfW+t8BPrkqqIt3Wqz3f0s8VKL+Q9x4HkqclKS8NEXpg") }] blend_shape_mode = 0 -shadow_mesh = SubResource("ArrayMesh_kss26") +shadow_mesh = SubResource("ArrayMesh_m0pge") [sub_resource type="TorusMesh" id="TorusMesh_r4x67"] inner_radius = 35.0 @@ -933,8 +1485,8 @@ height = 30.576 is_hemisphere = true [sub_resource type="CapsuleShape3D" id="CapsuleShape3D_hp4fx"] -radius = 11.234 -height = 43.938 +radius = 9.88623 +height = 40.357513 [sub_resource type="CapsuleMesh" id="CapsuleMesh_d0nnl"] radius = 10.0 @@ -965,7 +1517,7 @@ data = { "width": 64 } -[sub_resource type="Image" id="Image_gcb85"] +[sub_resource type="Image" id="Image_ci6aj"] data = { "data": PackedByteArray("/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////w=="), "format": "RGBA8", @@ -975,12 +1527,7 @@ data = { } [sub_resource type="ImageTexture" id="ImageTexture_sok32"] -image = SubResource("Image_gcb85") - -[sub_resource type="Resource" id="Resource_qnc2f"] -script = ExtResource("103_w06wr") -propertyName = "wallAttributes" -metadata/_custom_type_script = "uid://bsreukpi8eiyy" +image = SubResource("Image_ci6aj") [sub_resource type="ArrayMesh" id="ArrayMesh_pnu6s"] _surfaces = [{ @@ -995,59 +1542,24 @@ _surfaces = [{ "vertex_data": PackedByteArray("bOOCwY56DUGwnDLBP4WEwQIJDUGDUzzBYOSGwYCrDEGpvUfBSOaJwbNcDEEutlTBYHCNwUUXDEEQGGPBIGiRweTVC0FdvnLB87KVwTeTC0ELwoHBTzaawe1JC0EgoorBo9eewbL0CkHy7JPBX3yjwS2OCkEFkJ3B+gmowQ4RCkHaeKfB3WWswf13CUH2lLHBgnWwwai9CEHZ0bvBVR60wbncB0EMHcbByUW3wdvPBkEMZNDBU9G5wbuRBUFilNrBX6a7wQUdBEGQm+TBYaq8wWJsAkEUZ+7BzsK8wX96AEF85PfBFdW7wRKE/ECggADCp8a5wVB790B31QTC93y2wRbQ8UCB5wjCczKywaPq60CMpAzCJRutwVDn5UAZOhDCJEinwYHH30C4pBPCh8qgwZiM2UDz4BbCZLOZwfg300Bj6xnC1BOSwQLLzECWwBzC4/yJwRhHxkAcXR/CrH+BwaOtv0CNvSHCdlpxwf3/uEB53iPCRS1fwZE/skB1vCXC2ZlMwbptq0AUVCfCWMI5weSLpEDtoSjC0cgmwW2bnUCSoinCVM8TwbidlkCbUirC8/cAwSaUj0CarirCfMncwCCAiEArsyrCcG+4wAVjgUDcXCrCyyWVwG98dEBGqCnCJWFmwDUmZkD/kSjCkKclwCbGV0CcFifCbE3RvwNfSUCwMiXCjjAzv6V/OkBdpCLCUIYPPiCWLECNdR/C4CJkPyKXH0ADtxvCs43HP093E0B5eRfCm5QJQFIrCECxzRLC4dMqQK9P+z9oxA3CkuZHQBDD5z9gbgjCjC5hQCKa1T9b3ALCvg13QC6+xD8cPvrBBfOEQI4YtT+Bju7BpwyNQJySpj9hy+LBugSUQKMVmT8wFtfBMwyaQP2KjD92kMvB/1OfQP/bgD+qW8DBEQ2kQP3jaz9MmbXBXmioQKZsVz/eaqvB1pasQJokRD/V8aHBbMmwQIreMT+yT5nBEDG1QCdtID/0pZHBuP65QBKjDz8UFovBUmO/QPul/j6RwYXBdzGGwQV8CUFNhjDBd9yHwTcOCUEgczrB0EOKwSi0CEHoE0bB+kyNwYFoCEGeQ1PBW92QweslCEEv3WHBZ9qUwRTnB0GXu3HBiymZwaKmB0HjXIHBOLCdwUFfB0FWWYrB3lOiwZ8LB0GhwJPB7PmmwWKmBkE+gJ3B2IerwTkqBkGlhafBC+OvwcyRBUFSvrHBAPGzwcnXBEG9F7zBIpe3wdn2A0Fjf8bB57q6wajpAkG54tDBwkG9weKqAUFAL9vBJBG/wTU1AEFwUuXBgg7AwZAG/UC9Oe/BUh/AwZYf+UCu0vjBBSm/wdKq9EBYBQHCERG9wZmd70ClZwXC67y5wUnt6UD3hgnCa1i1wakN5EBtYw3CXiKwwccP3kBMFxHCCSyqwfz010D4nhTCuYajwaS+0UDO9hfCwUOcwRxuy0A8GxvCe3SUwb0ExUCrCB7CPiqMweODvkCCuyDCcXaDwfbst0A7MCPC59R0wUhBsUBGYyXCXy9iwUKCqkAbUSfCFh9PwT6xo0A39ijC8MY7wafPnEAaTyrCv0kowdnelUBIWCvCW8oUwTjgjkBKDizComsBwSjVh0CrbSzC5KDcwBK/gED+cizCOze3wLQ+c0DUGizC7N+SwMvuZEDHYSvCMsFfwDiRVkBzRCrCsP0cwNIoSEB6vyjClAC8v2W4OUB8zybCvLMEv/XHKkC8OSTC+l+sPqvOHEDvAiHCBBiNPzvBD0DcOx3CnGnkP0+UA0BA9RjC4+cYQCp58D/fPxTC2gY7QHtd2z97LA/CS/NYQOy+xz/XywnCzA5zQNyGtT+5LgTCg92EQJmepD+5y/zByKyOQIHvlD8UBPHBBiaXQPJihj8KKOXBEHqeQHTEcT8WWdnBu9mkQGStWD/JuM3B2HWqQGJTQT+laMLBPH+vQBaJKz8wirfBwCa0QC4hFz/3Pq3BPZ24QELuAz95qKPBjBO9QACG4z5B6JrBhbrBQBrkwD7YH5PBCsPGQACcnz7BcIzB9F3MQPilfj6G/IbBmyKGwfF+AUEAHTDBGtCHwcARAUFm/TnBKzqKwWC4AEHykUXBQUaNwXptAEGftVLBxdmQwbcrAEFfQ2HBKdqUwYrb/0AxFnHB1yyZwZBc/0CEBIHBQbedwd7P/kBu+4nB1V6iwcgq/kBTXZPBAQmnwaBi/UCuF53BOZurwb5s/ED6F6fB5vqvwXQ++0C0S7HBfw20wRvN+UBWoLvBcbi3wQgO+EBfA8bBLeG6wY329UBFYtDBKG29wQZ880CKqtrBzkG/wcmT8ECoyeTBk0TAwSkz7UAUre7B7VrAwX9P6UBWQvjBSmq/wSXe5EBuuwDCHVi9wWrU30AYHAXC3Am6wa8n2kDiOQnCF7O1wSFJ1EBCGQ3CR4qwwWhMzkCP0BDCnqCqwd4yyEAqXBTCVQekwdr9wUBpuBfCrc+cwbiuu0Cz4RrC8AqVwdFGtUBp1B3CYsqMwX3HrkDsjCDCXR+EwSAyqECsByPCZjZ2wQ6IoUAQQSXChZ5jwanKmkCGNSfCzZlQwUz7k0CB4SjCEks9wV0bjUB4QSrCFtUpwTcshkDhUSvCploWwXVefkA9DyzCmv4CwZNLcEALdizClsffwJYiYkDUgizCFVq6wD/mU0AaMizCW/qVwFaZRUBvgCvCLdxlwKU+N0BjairC4/UiwP7YKECL7CjCCJrHvyprGkB/AyfCaAQbv5ByC0AAbyTC04iBPm7i+j9UOSHCDNaCP7C34D8/cx3CkpzaPz1OyD+ALRnCUjwUQHiPsT/ZeBTCpJY2QMJknD8MZg/CxL5UQH63iD/eBQrCNBZvQCLibD8SaQTCQ/+CQJ/1Sj/IQP3BoeyMQC98Kz86efHB94OVQJ9IDj8CneXBEvacQB5b5j6ZzdnBuXOjQHr7sz6SLM7Bti2pQL4XhT5s28LB0VSuQJCqMj6y+7fB3BmzQAhmwT3urq3BpK23QACbnDygFqTB+EC8QFimVb1VVJvBqATBQEby9b2WiZPBiinGQNTQPb7m14zBb+DLQACmfr7RYIfBtMWCwc8A+0AVyjHBhWyEwSgg+kAPaDvBFNGGweBn+UC9uUbB1tiJwUrN+EAwmlPBNGmNwbpF+EBw5GHBomeRwYvG90CRc3HBi7mVwQlF90BPEYHBYUSawZG29kBQ5onBke2ewXkQ9kBWJpPBiZqjwRFI9UDlvpzBvDCowbRS9ECEnabBkpWswbEl80C6r7DBgq6wwWS28UAN47rB82C0wR3670AEJcXBV5K3wTHm7UAkY8/BHSi6wflv60D2itnBsQe8wcqM6EAAiuPBgxa9wfQx5UDCTe3BBDq9wdFU4UDMw/bBnVe8wbbq3ECZ2f/Bv1S6wfLo10BdPgTC2Ra3weJE0kBXTQjCy+eywZFhzEA2EAzC9+qtwZJgxkCfrA/CTjGowUNDwEAcHxPCv8uhwQILukApZBbCPMuawTC5s0BReBnCvECTwSpPrUAUWBzCKj2LwUrOpkDw/x7ChNGCwfg3oEBvbCHCdB10wYiNmUANmiPCkQtiwV/QkkBLhSXCR49PwdUBjECoKifCnMo8wVAjhUCnhijCf98pwVFsfEDElSnC6u8WwXh3bkCBVCrC4x0EwdNqYEBcvyrC3hbjwCNJUkDV0irCJLW+wCAVREBoiyrCqVqbwIXRNUCW5SnCG5dywA6BJ0Dd3SjC9pcxwH4mGUC+cCfCVYDov4zECkC2miXC5dFfv7Sp9z/nDiPCurLevHK22z9X4h/C+xo7P7uYwT/JJRzCofOzP905qT/56RfCeT0AQDyDkj+lPxPCdvMhQHO8ej+MNw7ChH0/QGhoUz9u4gjCWz1ZQBrdLj8LUQPCwJRvQDLtDD86KPvBtXKBQO7W2j7NeO/BiciJQFZVoD5RtePBvfyQQOz1Uz42/9fBL0CXQGi13T0GeMzBu8OcQOAehTw6QcHBPbihQFDHjr1QfLbBlk6mQNTwGb7MSqzBpLeqQPi4Z74jzqLBRSSvQIO4mL7aJ5rBVsWzQA7nu75weZLBuMu4QLLC3b5e5IvBRmi+QPyl/r4niobBUu9+wfJ+AUF34DPBTRWBwd8KAUFySD3Bo3GDwUirAEF+Y0jBJHKGwddaAEHADFXBOfyJwTcUAEFRH2PBW/WNwSuk/0BXdnLB80KSwTUe/0B3doHBeMqWwemL/kAaL4rBVnGbwZ/i/UCnUpPB/BygwagX/UCszpzB3rKkwV4g/EC5kKbBZRipwRTy+kBehrDBBDOtwSOC+UApnbrBJuiwwd7F90CtwsTBOR20wZiy9UB35M7Brre2was980AY8NjB7Jy4wWtc8EAg0+LBYrK5wSgE7UAZe+zBgN25wToq6UCa1fXBrQO5wfbD5EAp0P7BVQq3warG30AvrAPC5dazwa8n2kDhrQfC0sGvwYs+1EBVUQvCvuOqwRs4zkBszw7CaU2lwcgVyEDcJBLCjQ+fwfbYwUBOThXC3zqYwQyDu0B3SBjCFeCQwW8VtUD/DxvC0A+JwX+RrkCKoR3Cv9qAwaf4p0DB+R/CA6NwwT5MoUBAFSLCdwlfwa6NmkCl8CPCCgpNwVK+k0CFiCXCBMY6wY7fjEB62SbCkV4owb3yhUAO4CfC4/QVwXjyfUDSmCjCNKoDwdDob0BLACnCdj/jwD/LYUACEynCWe2/wHacU0BwzSjCiKCdwCpfRUAVLCjCDjd5wAwWN0BpKyfC1kE6wNPDKEDgxyXCLM39vyprGkDq/SPCWyeHv4uMC0CIeSHC+g9lvl9F+z/1VB7C0g0FP4pE4T/woBrCuBeXP+D/yD8ybhbCYtThP7hgsj93zRHCfsARQG5QnT95zwzCy3AuQFi4iT/3hAfCG11HQKsDbz+t/gHCeedcQGAsTT+dmvjB43FvQJG9LT86A+3BVF5/QACKED+oWOHBaIeGQKLI6j5QvNXBp3KMQIY+uD6yT8rB4qGRQCYbiT4/NL/BEkaWQAAIOj5si7TBNJCaQDB6zj2zdqrBPbGeQIADyTx/F6HBJtqiQEgLRL1Lj5jB4TunQEbD772M/5DBZgesQBAxPL6xiYrBpG2xQPClfr4yT4XBCg1/wQV8CUHESTTBqiGBwVYHCUEsvj3BSXuDwRCnCEF05UjB3XiGwd5VCEG/mlXBz/+JwWsOCEEhuWPBmfWNwWXLB0G9G3PBpz+SwXSHB0HWzoHBb8OWwUc9B0ECjYrBX2abwYrnBkH1tZPB5w2gweaABkE8N53BfZ+kwQkEBkFk/qbBigCpwZxrBUH8+LDBhRatwUyyBEGQFLvB18awwcTSA0GxPsXB8/azwa3HAkHrZM/BSIy2wbWLAUHOdNnBQmy4wYUZAEHoW+PBUXy5wY/X/EDCB+3B5aG5wVD6+EDyZfbBaMK4waOQ9ED8Y//BScO2wdiP70C89wPC9ImzwUnt6UD2+gfCJ2evwRMD5ECAmwvC1XuqwXr73UApFg/C1NikwebX10CqZxLC8Y6ewcCZ0UCzjBXC866XwXBCy0ABghjCoEmQwVvTxEBBRBvCrG+IweVNvkAg0B3C0zGAwXyzt0BQIiDChEFvwXkFsUB2NyLCUZpdwUdFqkA6DCTCU49LwUR0o0A7nSXC4kE5wdeTnEAc5ybCOtMmwV+llUB15ifCmGQUwTqqjkDflyjCPBcCwcajh0Dr9yjCxBjgwGeTgEAsAynCf8q8wOv0ckAqtijCGYaawJ60ZEBtDSjCExxzwJ9oVkB5BSfCo0k0wKYTSEDPmiXCuDPyv2a4OUDnySPCC/53v/DhKkBERCHCpGEPviIAHUCQHh7Cw5EZP6YHEECNaRrCwuSgPx/tA0DyNRbChCvrP2xK8T99lBHCtDAWQChJ3D/olQzCUqUyQMa/yD/wSgfCtFVLQJ6Xtj9UxAHC+KNgQPm5pT+OJfjBMvJyQDEQlj8UjuzBOVGBQKKDhz+w4+DBZguIQDP7cz/NR9XBqdiNQOjOWj/q28nBBOqSQBZVQz94wb7BfXCXQG9gLT/qGbTBGJ2bQLDDGD+8BqrB1qCfQIVRBT9YqaDBuqyjQFu55T43I5jBvvGnQNRvwj7OlZDB5qCsQNxroD6MIorBKeuxQPilfj7n6oTBbOOCwY56DUGvnDLBP4WEwQIJDUGDUzzBYOSGwYCrDEGpvUfBSOaJwbNcDEEutlTBYHCNwUUXDEEQGGPBIGiRweTVC0FdvnLB87KVwTeTC0ELwoHBTzaawe1JC0EgoorBo9eewbL0CkHy7JPBX3yjwS2OCkEFkJ3B+gmowQ4RCkHaeKfB3mWswf13CUH2lLHBgnWwwai9CEHZ0bvBVR60wbncB0EMHcbByUW3wdvPBkEMZNDBU9G5wbuRBUFilNrBX6a7wQUdBEGQm+TBYaq8wWJsAkEUZ+7BzsK8wX96AEF85PfBFdW7wRKE/ECggADCp8a5wVB790B31QTC93y2wRbQ8UCB5wjCczKywaPq60CMpAzCJRutwVDn5UAZOhDCJEinwYHH30C4pBPCh8qgwZiM2UDz4BbCZLOZwfg300Bj6xnC1BOSwQLLzECWwBzC5PyJwRhHxkAcXR/CrH+BwaOtv0CNvSHCdlpxwf7/uEB53iPCRS1fwZE/skB1vCXC2ZlMwbptq0AUVCfCWMI5weSLpEDtoSjC0cgmwW2bnUCSoinCVM8TwbidlkCbUirC8/cAwSaUj0CarirCfMncwCCAiEArsyrCcG+4wAVjgUDcXCrCyyWVwG98dEBGqCnCJWFmwDUmZkD/kSjCkKclwCbGV0CcFifCa03RvwNfSUCwMiXCjTAzv6V/OkBdpCLCVIYPPiCWLECNdR/C4SJkPyKXH0ADtxvCs43HP093E0B5eRfCm5QJQFIrCECxzRLC4tMqQK9P+z9oxA3CkuZHQBDD5z9gbgjCjS5hQCKa1T9b3ALCvg13QC6+xD8cPvrBBfOEQI4YtT+Bju7BpwyNQJySpj9hy+LBuwSUQKMVmT8wFtfBMwyaQP2KjD92kMvB/1OfQP/bgD+qW8DBEQ2kQP3jaz9MmbXBXmioQKZsVz/eaqvB1pasQJokRD/V8aHBbcmwQIreMT+yT5nBEDG1QCdtID/0pZHBuP65QBKjDz8UFovBUmO/QPul/j6RwYXBdzGGwQV8CUFNhjDBbOOCwY56DUGwnDLBr9aCwaKhBkFtQjLBmyKGwfF+AUEAHTDBdzGGwQV8CUFNhjDBr9aCwaKhBkFtQjLBtMWCwc8A+0AVyjHBmyKGwfF+AUEAHTDBr9aCwaKhBkFtQjLBUu9+wfJ+AUF34DPBtMWCwc8A+0AVyjHBr9aCwaKhBkFtQjLBCg1/wQV8CUHESTTBUu9+wfJ+AUF34DPBr9aCwaKhBkFtQjLBbOOCwY56DUGvnDLBCg1/wQV8CUHESTTBr9aCwaKhBkFtQjLBbOOCwY56DUGwnDLBbOOCwY56DUGvnDLBr9aCwaKhBkFtQjLBUmO/QPul/j6RwYXB9F3MQPilfj6G/IbBu/e+QGqDkT2IF4bB9F3MQPilfj6G/IbBb+DLQACmfr7RYIfBu/e+QGqDkT2IF4bBb+DLQACmfr7RYIfBRmi+QPyl/r4niobBu/e+QGqDkT2IF4bBRmi+QPyl/r4niobBpG2xQPClfr4yT4XBu/e+QGqDkT2IF4bBpG2xQPClfr4yT4XBKeuxQPilfj7n6oTBu/e+QGqDkT2IF4bBKeuxQPilfj7n6oTBUmO/QPul/j6RwYXBu/e+QGqDkT2IF4bBUmO/QPul/j6RwYXBUmO/QPul/j6RwYXBu/e+QGqDkT2IF4bBEnhA/iwc/7+od4z+5xkewEl33v7iFjbA8nY2/7kTTcCkdpT/ZxBjwGB29//mDHfAjIqd/zIJisCHizH/PAWbwH6MwP5UAdPAco1M/lYB+cJmjtX9UQH6xFWPWv1IAdrGQZDd/DkBncgpkVz8KAFGyg2S2fsSAdrL7pJU+/gAWc3Lk8362QDIzqOUQ/q5ACfQdpW4+ZQAetFGliz5awDA0hCXnvg/AP3T2JcO+A8AMtWCmLL2RgDI1wqZZPVlAGfacJkk9IAA8ty1mfLymABx39eZ0PGvAOzh2Zm98MMAa+S4mbvv1QD25nWZyu7lAJXpEpnr7fMAUuyMmB7tAAE57+SXZOwKAVbyGZe96xQBvPUrlizrGwGA+TyVjuogAcH9GZUi6fH+h/3elNjnGP9K+YuUruY+/4j1IZSl5WP/IvKik7zkiP8C7w2T8uOs/xfsZZJI49P/U+m+kanj5/8QmBWREOS//0GZapB/5Jv/bZq9j/XkfP+Vmw+Pc+Vh/7ucX4745Uv/352tjYTmOv8Cn/qMGOcs/yWgRYy05yP/SKGPi1foHv9uotiKAukd/5ajH4q16SD/waRliW/qKP/xpauIMesy/yan74f760P/Yagzh8vsV/+kqXWGpu1x/++quIWF7pD/RKz6hG/vtP+irTuEX/Dg/wyvfYNY8dr/2M+LOj2pIlhTm+Q4B6qFV0WbMzffqtNWJ5t6NcWrJFYEm7YzvKx3Vdya5zHFrcxUr5oJMOCuJ1R9mqUui7CDU0aaoC12suRSCpqtLFK0SVLJmcsrIrayUYKZ+CrntyBRNpkzKqO5kVDkmH0pVbsIUI2Y0ygBvXxPM5gzKKe+sk75l6AnR8DyTb2XFSfjwT9NfZeVJnvDlkw7lx0mEcX5S/eWriWmxmVLsZZGJTnI0UpWlvkkt8s2SZWV0yQ7z9hHxpTTJM3Sskbtk/okctbCRQiTSCUx2gVFGZLAJRLee0QekWMmHeIgRBiQMydc5vVDB482KNnq+kPpjXQpo+8tRL6M8CrI9JJEhou3LF36J0VAioLRhf/vReqIp9N++e1GhId21fjzIkgMhvzW3u6USYGEQtgc6kRL4YJP2aLlOE0rgSnaZeEYsp+A1dpa3Qu0XIJW23fZsrXrg4nb1tdatsqEsds61vW2poXP26XUgLd8huPbFdP9t02H7tuK0Wq4F4ju2wTQzLjdiOTbgs4guZ2J0NsEzWe5Woqz24nLoLkRi4rbEsrPucaLWNueyPC5dowb2yzHBboijdPavMUOusyNgNpPxAu6co4h2uPC/LkVj7fZeMHgubWPQdkOwLi5U5C+2Ka+g7nvkC7YPb1AuYmRkNfVu/C4IZLk1my6t7iiklU9tleds9KVyTteV62yH5Y4OvlWgrGFlqY4h1ZDsOiWDzcGVvKuSZd1NXdVCa7fl9Yz2VQ2rXiYMDIqVF+sBpmHMGlThKuLmdYul1KlqgeadS1dUcKpe5qPLL5P2qjmmrsrI07vp0qb+SqNTACnpptHKvtKDKb7m6cpbEkUpUmcFCnjRxakkZyRKFtGFaPSnBso1kQPog2dsidTQwOhQp1UJ9JB8Z9xnQUnUkDenpmdFyYCPZCcip1bJbQ5EJprnc4kZTZ1lzKdayQOM7uU3pwyJKov4pFxnCIkMyzljuebOiSmKMGLP5t+JPokdIh4muskKCH2hI+ZhSUqHUSBgJhPJvcYc33nmE8ngxTSefOZiyjCD2R225oKKqUKI3Oim9QrHAULcEmcsNLtABht1Jyi1M8GR2pCnUHWMgyUZ5adl9csEf5k0Z2t2NAVgWL0nYvZKRojYPydzdk8HChf/J0G2kIeX17wnTfaOyCaXd6dYNoqItpcyZ2B2hAkHVyvnZra7CVlW5CdrNrAJ7JabZ222o4pA1pFnbraVStZWRidttoZLbRY55yr2tguFFixnJnalTB6V3acgNpOMuRWNZxf2gg0VFbxmzfawTXKVaabB9p6N0ZVV5vP2TQ5yFQDm4/Z8TpQVKmaR9mxPN9TSpr12HU+dVPmmZrYP0AxU4eZvoHsB/X/z81xgVYIyf9Tsx+BtQiY/9K0x4ALCWn/Y7ZqgFoJP/8KuAaAngkW/8i5nn+MCvL+o7sxf4cL0P6evcF+fgzw/Vu/TX50Da35Wr/VfWYOs/Vcv1t9VA/68WG/3XxAEHnuaL9dfCgRKetxv9p7DRIE6Hy/VXvvEgblir/NessTKeKZv0R6ohRq36q/uXl3Fcbcvb8seUcWOdrRv554ERfB1+e/D3jYFyvVBMCzdoEY8c/tv2R1CRm4yty/JHRwGafFz7/zcrUZq8DCv9Bx2Bm0u7e/vnDZGbW2rb+8b7kZnLGkv8tudxlYrJ2/620TGdWmlr8ebY0Y/aCQv2Rs5Bezmoy/vmsYF9STiL8tayoWMYyHv49qOxWKg4a/I2kZFR96kr/ZZ98UvHGlv69mjBRHare/pWUhFIdjyL+8ZKETUV3av/JjDhOEV+y/SmNlEjhS+L+pY74RpE8TwBFkFBFJTSfAf2RqEPZKN8D1ZL4PqUhGwHNlDg9hRlPA+GVfDhtEXcCFZq0N2EFmwBhn+gySP2zAtWdFDEw9ccBYaI8LATt0wANp2AqwOHTAtmkfClg2c8BvamYJ9zNvwDJrqgiKMWnA+mvvBw8vYcDMbDIHhSxXwKZtdgboKUvAh263BTYnPMBwb/oEbCQqwGBwOwSHIRbAV3F9AyIf9b/A1nJFqbYP7PfVGkeMtsLrH9XLSFG2aes41IRKDLYR60LTSEy8tbvqOdIYTmK1Zuod0fVP/7QT6nLPWlGRtMHpiM1fUhm0cumry1FTl7Mk6dvJNFQKs9joFsgGVXKyj+hbxspVz7FI6KjEgVYhsQPo/MIsV2ywvudXwctX969Z57e/Xlh+r/nmG77pWP+un+aCvGpZe65K5uy64VnyrfvlWLlQWmWtseXEt7darKxm5Ue0Blspq5rkwrAsW4yp6uMxrStb2adX44ypBFsQpt/izaW0WjGkgeLsoT5aPKI84uGdnFkwoA/iopnLWA2e+eEklcdX0pv74VuQi1Z9mRXiNYsOVQ2XR+KhhUdTgZST4oV/g1HVkfbifnmoUwmPdeP5c3dVGowQ5N5u/FYEicjkHGpCWMSFoOWjZU9ZV4Ka5mZhKlq/fvPmW13WWkV7+eV3WVdbJXgl5dZXiVtmdtDkO1axW610hOSmVNBbAHM+5BZT5FtgcQDkilHuW8pvyeMEUO5bP26Y44JO5Vu+bG/jBE3RW0ZrS+OKS7Nb1mku4xNKi1tuaBfjnkhYWw5nBuMsRxtbtWX84rxF01piZPfiT0SAWhZj+eLjQiJa0GEB43hBuFmPYA/jD0BCWVRfI+OmPr9YHF4+4z09L1jpXF/j1TuRV7pbh+NtOuVWu1qi47bXVb1ZVDDmXdfIu8FTp+b41jm69VI754bWprgwUtrnBtYQt3BRg+h31XW1RVD46NnU1bMTT2LpKtQxsvZNzulq04aw7Ew76pfS1q7zS6rqXtF2rQxLHOu+z46sNUqQ6yPOuqtuSQXsjcz4qrVIfez7ykeqC0j37G3JpqluR3Pt4scUqd9G8e1bxpCoXEZy7tTEGqjmRfXuUsOxp3tFfO/RwVWnHEUE8FHABKfMRI/wAb0XpuhEtvG0uVulKEX28mS2zaSaRUT0DbNrpEBGoPWqrzKkG0cN9zSsIqQvSIv4pqg7pH5JHfr5pH2kDUvE+yih6qTgTIL9Kp2FpfxOW//2mFCmzbG6/oKUUKfls+r8wo+LqLW1M/umigmqQreT+RyF1KuRuAf4En9NraW5jfYveVurg7ok9cxzvaksu8vz0W5nqKK7f/IualCn5rtB8dVlcqb3uxHwwWMwpvi7k++8Yfel37su78Jfx6W+u8vu1F2epZO7au7vW32lX7sM7hNaZKUiu7DtP1hSpdu6Vu1wVkelirr/7KlURKUxuqrs5lJHpc65WOwmUVKlYbkI7GpPZKXquLvrr01+pWq4cOv2S56l37co6z5Kx6VMt+Pqg0j3pa22oerKRi6mA7Zi6g1FbqZQtSbqTUO3ppO07umJQQiny7O56cA/Y6cMs5fpEnhA/gEb9L+od4z+uBgUwEl33v7GFSzA8nY2/60SRMCkdpT/ZQ9awGB29//qC23AjIqd/zUIgMCHizH/PgSRwH6MwP47AT3Bco1M/jwBWcNmjtX9OAFRxVWPWv0vASvHQZDd/CAB6cgpkVz8DgGQyg2S2fv3ACLM7pJU+9sAoM3Lk836vAAOz6OUQ/qZAG7QdpW4+XMAwNFGliz5SQAG0xCXnvgcAEDU2JcO+CYATaqCmLL2AQCzpwqZZPUfAOPacJkk9DsAad21mfLyVQDm39eZ0PFsAGHi2Zm98IAA4uS4mbvvkQBx53WZyu6gABbqEpnr7asA3OyMmB7ttADO7+SXZOy7APvyGZe968AAdvYrlizrwABX+jyVjuq8AL/+GZUi6V3/ivzelNjngP9l+IuUruai/7T0IZSl5cT/WvGik7zk6P9E7g2T8+Pz/5iUZZJI4+z/GZe+kanjwv9KmBWREOSe/3WZapB/5H3/nJq9j/XkYv/Bmw+Pc+VJ/+OcX4745TX/BZ6tjYTmJv8mn/qMGOcZ/0igRYy05xH/a6GPi1foDP+QotiKAukL/7mjH4q16Q7/5qRliW/qFv8XpquIMesg/0+n74f76zD/jqgzh8vsQ//VqXWGpu1c/yeruIWF7nn/haz6hG/vmv/xrTuEX/DB/26vfYNY8f7/QM8Am1GFEnjfAACbUYUSeN8AAJtRhRJ43wAAm1GFEnjfAACbUYUSeN8AAJtRhRJ43wAAm1GFEnjfAACbUYUSeN8AAJtRhRJ43wAAm1GFEnjfAACbUYUSeN8AAJtRhRJ43wAAm1GFEnjfAACbUYUSeN8AAJtRhRJ43wAAm1GFEnjfAACbUYUSeN8AAJtRhRJ43wAAm1GFEnjfAACbUYUSeN8AAJtRhQAAAIAunEJ2fYOr+C6cQnZ9g6v4LpxCdn2Dq/gunEJ2fYOr+C6cQnZ9g6v4LpxCdn2Dq/gunEJ2fYOr+C6cQnZ9g6v4LpxCdn2Dq/gunEJ2fYOr+C6cQnZ9g6v4LpxCdn2Dq/gunEJ2fYOr+C6cQnZ9g6v4LpxCdn2Dq/gunEJ2fYOr+C6cQnZ9g6v4LpxCdn2Dq/gunEJ2fYOr+C6cQnZ9g6v4LpxCdn2Dq/g=") }] -[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_uepmj"] -shading_mode = 0 -albedo_color = Color(1.8247963, 0.9042009, 0, 1) - -[sub_resource type="Resource" id="Resource_jqb63"] -script = ExtResource("113_msotc") -scene = ExtResource("110_jbb2a") -metadata/_custom_type_script = "uid://dw2vbnun2yndx" - -[sub_resource type="Resource" id="Resource_3t4rw"] -script = ExtResource("114_ctpa3") -room = SubResource("Resource_jqb63") -metadata/_custom_type_script = "uid://d1erd1dodjc7c" - -[sub_resource type="Resource" id="Resource_3p5o6"] -script = ExtResource("113_msotc") -scene = ExtResource("113_5p27p") -metadata/_custom_type_script = "uid://dw2vbnun2yndx" - -[sub_resource type="Resource" id="Resource_ypsyk"] -script = ExtResource("114_ctpa3") -room = SubResource("Resource_3p5o6") -metadata/_custom_type_script = "uid://d1erd1dodjc7c" - -[sub_resource type="ArrayMesh" id="ArrayMesh_gcb85"] -_surfaces = [{ -"aabb": AABB(-3628.2227, -125, -2623.641, 6338.922, 250, 5758.9233), -"attribute_data": PackedByteArray("AAAA/wAAAAAAAAAAAAAA/wAAgD8AAAAAAAAA/wAAgD8AAIA/AAAA/wAAAAAAAIA/AAEA/wAAAAAAAAAAAAEA/wAAgD8AAAAAAAEA/wAAgD8AAIA/AAEA/wAAAAAAAIA/AAIA/wAAAAAAAAAAAAIA/wAAgD8AAAAAAAIA/wAAgD8AAIA/AAIA/wAAAAAAAIA/AAMA/wAAAAAAAAAAAAMA/wAAgD8AAAAAAAMA/wAAgD8AAIA/AAMA/wAAAAAAAIA/AAQA/wAAAAAAAAAAAAQA/wAAgD8AAAAAAAQA/wAAgD8AAIA/AAQA/wAAAAAAAIA/AAUA/wAAAAAAAAAAAAUA/wAAgD8AAAAAAAUA/wAAgD8AAIA/AAUA/wAAAAAAAIA/AAYA/wAAAAAAAAAAAAYA/wAAgD8AAAAAAAYA/wAAgD8AAIA/AAYA/wAAAAAAAIA/AAcA/wAAAAAAAAAAAAcA/wAAgD8AAAAAAAcA/wAAgD8AAIA/AAcA/wAAAAAAAIA/AAgA/wAAAAAAAAAAAAgA/wAAgD8AAAAAAAgA/wAAgD8AAIA/AAgA/wAAAAAAAIA/AAkA/wAAAAAAAAAAAAkA/wAAgD8AAAAAAAkA/wAAgD8AAIA/AAkA/wAAAAAAAIA/AAoA/wAAAAAAAAAAAAoA/wAAgD8AAAAAAAoA/wAAgD8AAIA/AAoA/wAAAAAAAIA/AAsA/wAAAAAAAAAAAAsA/wAAgD8AAAAAAAsA/wAAgD8AAIA/AAsA/wAAAAAAAIA/AAwA/wAAAAAAAAAAAAwA/wAAgD8AAAAAAAwA/wAAgD8AAIA/AAwA/wAAAAAAAIA/AA0A/wAAAAAAAAAAAA0A/wAAgD8AAAAAAA0A/wAAgD8AAIA/AA0A/wAAAAAAAIA/AA4A/wAAAAAAAAAAAA4A/wAAgD8AAAAAAA4A/wAAgD8AAIA/AA4A/wAAAAAAAIA/AA8A/wAAAAAAAAAAAA8A/wAAgD8AAAAAAA8A/wAAgD8AAIA/AA8A/wAAAAAAAIA/ABAA/wAAAAAAAAAAABAA/wAAgD8AAAAAABAA/wAAgD8AAIA/ABAA/wAAAAAAAIA/ABEA/wAAAAAAAAAAABEA/wAAgD8AAAAAABEA/wAAgD8AAIA/ABEA/wAAAAAAAIA/ABIA/wAAAAAAAAAAABIA/wAAgD8AAAAAABIA/wAAgD8AAIA/ABIA/wAAAAAAAIA/ABMA/wAAAAAAAAAAABMA/wAAgD8AAAAAABMA/wAAgD8AAIA/ABMA/wAAAAAAAIA/ABQA/wAAAAAAAAAAABQA/wAAgD8AAAAAABQA/wAAgD8AAIA/ABQA/wAAAAAAAIA/ABUA/wAAAAAAAAAAABUA/wAAgD8AAAAAABUA/wAAgD8AAIA/ABUA/wAAAAAAAIA/ABYA/wAAAAAAAAAAABYA/wAAgD8AAAAAABYA/wAAgD8AAIA/ABYA/wAAAAAAAIA/ABcA/wAAAAAAAAAAABcA/wAAgD8AAAAAABcA/wAAgD8AAIA/ABcA/wAAAAAAAIA/ABgA/wAAAAAAAAAAABgA/wAAgD8AAAAAABgA/wAAgD8AAIA/ABgA/wAAAAAAAIA/ABkA/wAAAAAAAAAAABkA/wAAgD8AAAAAABkA/wAAgD8AAIA/ABkA/wAAAAAAAIA/ABoA/wAAAAAAAAAAABoA/wAAgD8AAAAAABoA/wAAgD8AAIA/ABoA/wAAAAAAAIA/ABsA/wAAAAAAAAAAABsA/wAAgD8AAAAAABsA/wAAgD8AAIA/ABsA/wAAAAAAAIA/ABwA/wAAAAAAAAAAABwA/wAAgD8AAAAAABwA/wAAgD8AAIA/ABwA/wAAAAAAAIA/AB0A/wAAAAAAAAAAAB0A/wAAgD8AAAAAAB0A/wAAgD8AAIA/AB0A/wAAAAAAAIA/AB4A/wAAAAAAAAAAAB4A/wAAgD8AAAAAAB4A/wAAgD8AAIA/AB4A/wAAAAAAAIA/AB8A/wAAAAAAAAAAAB8A/wAAgD8AAAAAAB8A/wAAgD8AAIA/AB8A/wAAAAAAAIA/ACAA/wAAAAAAAAAAACAA/wAAgD8AAAAAACAA/wAAgD8AAIA/ACAA/wAAAAAAAIA/ACEA/wAAAAAAAAAAACEA/wAAgD8AAAAAACEA/wAAgD8AAIA/ACEA/wAAAAAAAIA/ACIA/wAAAAAAAAAAACIA/wAAgD8AAAAAACIA/wAAgD8AAIA/ACIA/wAAAAAAAIA/ACMA/wAAAAAAAAAAACMA/wAAgD8AAAAAACMA/wAAgD8AAIA/ACMA/wAAAAAAAIA/ACQA/wAAAAAAAAAAACQA/wAAgD8AAAAAACQA/wAAgD8AAIA/ACQA/wAAAAAAAIA/ACUA/wAAAAAAAAAAACUA/wAAgD8AAAAAACUA/wAAgD8AAIA/ACUA/wAAAAAAAIA/ACYA/wAAAAAAAAAAACYA/wAAgD8AAAAAACYA/wAAgD8AAIA/ACYA/wAAAAAAAIA/ACcA/wAAAAAAAAAAACcA/wAAgD8AAAAAACcA/wAAgD8AAIA/ACcA/wAAAAAAAIA/ACgA/wAAAAAAAAAAACgA/wAAgD8AAAAAACgA/wAAgD8AAIA/ACgA/wAAAAAAAIA/ACkA/wAAAAAAAAAAACkA/wAAgD8AAAAAACkA/wAAgD8AAIA/ACkA/wAAAAAAAIA/ACoA/wAAAAAAAAAAACoA/wAAgD8AAAAAACoA/wAAgD8AAIA/ACoA/wAAAAAAAIA/ACsA/wAAAAAAAAAAACsA/wAAgD8AAAAAACsA/wAAgD8AAIA/ACsA/wAAAAAAAIA/ACwA/wAAAAAAAAAAACwA/wAAgD8AAAAAACwA/wAAgD8AAIA/ACwA/wAAAAAAAIA/AC0A/wAAAAAAAAAAAC0A/wAAgD8AAAAAAC0A/wAAgD8AAIA/AC0A/wAAAAAAAIA/AC4A/wAAAAAAAAAAAC4A/wAAgD8AAAAAAC4A/wAAgD8AAIA/AC4A/wAAAAAAAIA/AC8A/wAAAAAAAAAAAC8A/wAAgD8AAAAAAC8A/wAAgD8AAIA/AC8A/wAAAAAAAIA/ADAA/wAAAAAAAAAAADAA/wAAgD8AAAAAADAA/wAAgD8AAIA/ADAA/wAAAAAAAIA/ADEA/wAAAAAAAAAAADEA/wAAgD8AAAAAADEA/wAAgD8AAIA/ADEA/wAAAAAAAIA/ADIA/wAAAAAAAAAAADIA/wAAgD8AAAAAADIA/wAAgD8AAIA/ADIA/wAAAAAAAIA/ADMA/wAAAAAAAAAAADMA/wAAgD8AAAAAADMA/wAAgD8AAIA/ADMA/wAAAAAAAIA/ADQA/wAAAAAAAAAAADQA/wAAgD8AAAAAADQA/wAAgD8AAIA/ADQA/wAAAAAAAIA/ADUA/wAAAAAAAAAAADUA/wAAgD8AAAAAADUA/wAAgD8AAIA/ADUA/wAAAAAAAIA/ADYA/wAAAAAAAAAAADYA/wAAgD8AAAAAADYA/wAAgD8AAIA/ADYA/wAAAAAAAIA/ADcA/wAAAAAAAAAAADcA/wAAgD8AAAAAADcA/wAAgD8AAIA/ADcA/wAAAAAAAIA/ADgA/wAAAAAAAAAAADgA/wAAgD8AAAAAADgA/wAAgD8AAIA/ADgA/wAAAAAAAIA/ADkA/wAAAAAAAAAAADkA/wAAgD8AAAAAADkA/wAAgD8AAIA/ADkA/wAAAAAAAIA/ADoA/wAAAAAAAAAAADoA/wAAgD8AAAAAADoA/wAAgD8AAIA/ADoA/wAAAAAAAIA/ADsA/wAAAAAAAAAAADsA/wAAgD8AAAAAADsA/wAAgD8AAIA/ADsA/wAAAAAAAIA/ADwA/wAAAAAAAAAAADwA/wAAgD8AAAAAADwA/wAAgD8AAIA/ADwA/wAAAAAAAIA/AD0A/wAAAAAAAAAAAD0A/wAAgD8AAAAAAD0A/wAAgD8AAIA/AD0A/wAAAAAAAIA/AD4A/wAAAAAAAAAAAD4A/wAAgD8AAAAAAD4A/wAAgD8AAIA/AD4A/wAAAAAAAIA/AD8A/wAAAAAAAAAAAD8A/wAAgD8AAAAAAD8A/wAAgD8AAIA/AD8A/wAAAAAAAIA/AEAA/wAAAAAAAAAAAEAA/wAAgD8AAAAAAEAA/wAAgD8AAIA/AEAA/wAAAAAAAIA/AEEA/wAAAAAAAAAAAEEA/wAAgD8AAAAAAEEA/wAAgD8AAIA/AEEA/wAAAAAAAIA/AEIA/wAAAAAAAAAAAEIA/wAAgD8AAAAAAEIA/wAAgD8AAIA/AEIA/wAAAAAAAIA/AEMA/wAAAAAAAAAAAEMA/wAAgD8AAAAAAEMA/wAAgD8AAIA/AEMA/wAAAAAAAIA/AEQA/wAAAAAAAAAAAEQA/wAAgD8AAAAAAEQA/wAAgD8AAIA/AEQA/wAAAAAAAIA/AEUA/wAAAAAAAAAAAEUA/wAAgD8AAAAAAEUA/wAAgD8AAIA/AEUA/wAAAAAAAIA/AEYA/wAAAAAAAAAAAEYA/wAAgD8AAAAAAEYA/wAAgD8AAIA/AEYA/wAAAAAAAIA/AEcA/wAAAAAAAAAAAEcA/wAAgD8AAAAAAEcA/wAAgD8AAIA/AEcA/wAAAAAAAIA/AEgA/wAAAAAAAAAAAEgA/wAAgD8AAAAAAEgA/wAAgD8AAIA/AEgA/wAAAAAAAIA/AEkA/wAAAAAAAAAAAEkA/wAAgD8AAAAAAEkA/wAAgD8AAIA/AEkA/wAAAAAAAIA/AEoA/wAAAAAAAAAAAEoA/wAAgD8AAAAAAEoA/wAAgD8AAIA/AEoA/wAAAAAAAIA/AEsA/wAAAAAAAAAAAEsA/wAAgD8AAAAAAEsA/wAAgD8AAIA/AEsA/wAAAAAAAIA/AEwA/wAAAAAAAAAAAEwA/wAAgD8AAAAAAEwA/wAAgD8AAIA/AEwA/wAAAAAAAIA/AE0A/wAAAAAAAAAAAE0A/wAAgD8AAAAAAE0A/wAAgD8AAIA/AE0A/wAAAAAAAIA/AE4A/wAAAAAAAAAAAE4A/wAAgD8AAAAAAE4A/wAAgD8AAIA/AE4A/wAAAAAAAIA/AE8A/wAAAAAAAAAAAE8A/wAAgD8AAAAAAE8A/wAAgD8AAIA/AE8A/wAAAAAAAIA/"), -"format": 34359742495, -"index_count": 480, -"index_data": PackedByteArray("AAABAAIAAgADAAAABAAFAAYABgAHAAQACAAJAAoACgALAAgADAANAA4ADgAPAAwAEAARABIAEgATABAAFAAVABYAFgAXABQAGAAZABoAGgAbABgAHAAdAB4AHgAfABwAIAAhACIAIgAjACAAJAAlACYAJgAnACQAKAApACoAKgArACgALAAtAC4ALgAvACwAMAAxADIAMgAzADAANAA1ADYANgA3ADQAOAA5ADoAOgA7ADgAPAA9AD4APgA/ADwAQABBAEIAQgBDAEAARABFAEYARgBHAEQASABJAEoASgBLAEgATABNAE4ATgBPAEwAUABRAFIAUgBTAFAAVABVAFYAVgBXAFQAWABZAFoAWgBbAFgAXABdAF4AXgBfAFwAYABhAGIAYgBjAGAAZABlAGYAZgBnAGQAaABpAGoAagBrAGgAbABtAG4AbgBvAGwAcABxAHIAcgBzAHAAdAB1AHYAdgB3AHQAeAB5AHoAegB7AHgAfAB9AH4AfgB/AHwAgACBAIIAggCDAIAAhACFAIYAhgCHAIQAiACJAIoAigCLAIgAjACNAI4AjgCPAIwAkACRAJIAkgCTAJAAlACVAJYAlgCXAJQAmACZAJoAmgCbAJgAnACdAJ4AngCfAJwAoAChAKIAogCjAKAApAClAKYApgCnAKQAqACpAKoAqgCrAKgArACtAK4ArgCvAKwAsACxALIAsgCzALAAtAC1ALYAtgC3ALQAuAC5ALoAugC7ALgAvAC9AL4AvgC/ALwAwADBAMIAwgDDAMAAxADFAMYAxgDHAMQAyADJAMoAygDLAMgAzADNAM4AzgDPAMwA0ADRANIA0gDTANAA1ADVANYA1gDXANQA2ADZANoA2gDbANgA3ADdAN4A3gDfANwA4ADhAOIA4gDjAOAA5ADlAOYA5gDnAOQA6ADpAOoA6gDrAOgA7ADtAO4A7gDvAOwA8ADxAPIA8gDzAPAA9AD1APYA9gD3APQA+AD5APoA+gD7APgA/AD9AP4A/gD/APwAAAEBAQIBAgEDAQABBAEFAQYBBgEHAQQBCAEJAQoBCgELAQgBDAENAQ4BDgEPAQwBEAERARIBEgETARABFAEVARYBFgEXARQBGAEZARoBGgEbARgBHAEdAR4BHgEfARwBIAEhASIBIgEjASABJAElASYBJgEnASQBKAEpASoBKgErASgBLAEtAS4BLgEvASwBMAExATIBMgEzATABNAE1ATYBNgE3ATQBOAE5AToBOgE7ATgBPAE9AT4BPgE/ATwB"), -"material": ExtResource("102_85m4o"), -"primitive": 3, -"uv_scale": Vector4(0, 0, 0, 0), -"vertex_count": 320, -"vertex_data": PackedByteArray("L2spRQAA+sK2pWpE1inXRAAA+sKSABVE1inXRAAA+kKSABVEL2spRQAA+kK2pWpE1inXRAAA+sKSABVEqH2LRAAA+sKXtnRDqH2LRAAA+kKXtnRD1inXRAAA+kKSABVEp32LRAAA+sKctnRDIYSJRAAA+sLQ0RzDIYSJRAAA+kLQ0RzDp32LRAAA+kKctnRDL6F5RAAA+sI4Y8JETT1uRAAA+sKchLlETT1uRAAA+kKchLlEL6F5RAAA+kI4Y8JETD1uRAAA+sKbhLlEEOqDRAAA+sJKU3JEEOqDRAAA+kJKU3JETD1uRAAA+kKbhLlEEOqDRAAA+sJMU3JE1inXRAAA+sKQABVE1inXRAAA+kKQABVEEOqDRAAA+kJMU3JEncCWwwAA+sKE9ENFukdJwwAA+sIU0QJFukdJwwAA+kIU0QJFncCWwwAA+kKE9ENFtUdJwwAA+sIT0QJFvm3+QwAA+sLWBpVEvm3+QwAA+kLWBpVEtUdJwwAA+kIT0QJFvm3+QwAA+sLXBpVEOZAqRAAA+sLTFKBEOZAqRAAA+kLTFKBEvm3+QwAA+kLXBpVEOJAqRAAA+sLTFKBETD1uRAAA+sKbhLlETD1uRAAA+kKbhLlEOJAqRAAA+kLTFKBEZ7K5xAAA+sI4Y8JE6d+axAAA+sJwH6JE6d+axAAA+kJwH6JEZ7K5xAAA+kI4Y8JE6d+axAAA+sJyH6JEbkIgxAAA+sJS2o1EbkIgxAAA+kJS2o1E6d+axAAA+kJyH6JEbUIgxAAA+sJS2o1EM/lywwAA+sKuJKtEM/lywwAA+kKuJKtEbUIgxAAA+kJS2o1EMflywwAA+sKuJKtEt0dJwwAA+sIT0QJFt0dJwwAA+kIT0QJFMflywwAA+kKuJKtEYHowxQAA+sIfQMlDT2PfxAAA+sLGvn5DT2PfxAAA+kLGvn5DYHowxQAA+kIfQMlDUGPfxAAA+sLFvn5DchaDxAAA+sKCHfBDchaDxAAA+kKCHfBDUGPfxAAA+kLFvn5DchaDxAAA+sKCHfBD6t+axAAA+sJyH6JE6t+axAAA+kJyH6JEchaDxAAA+kKCHfBDkMNixQAA+sJfXgPF9iMqxQAA+sKYIcXE9iMqxQAA+kKYIcXEkMNixQAA+kJfXgPF9iMqxQAA+sKYIcXE1MKsxAAA+sIu2dPD1MKsxAAA+kIu2dPD9iMqxQAA+kKYIcXE1sKsxAAA+sIx2dPDKrWvxAAA+sKcLN3CKrWvxAAA+kKcLN3C1sKsxAAA+kIx2dPDK7WvxAAA+sKWLN3CUWPfxAAA+sLDvn5DUWPfxAAA+kLDvn5DK7WvxAAA+kKWLN3CKSkfxAAA+sJ+ysfEnyMSxAAA+sL4cbfEnyMSxAAA+kL4cbfEKSkfxAAA+kJ+ysfEniMSxAAA+sL5cbfEgBcOxAAA+sJjJ7DEgBcOxAAA+kJjJ7DEniMSxAAA+kL5cbfEfxcOxAAA+sJjJ7DEvZZ4xAAA+sKNSIXEvZZ4xAAA+kKNSIXEfxcOxAAA+kJjJ7DEvJZ4xAAA+sKOSIXEeMrExAAA+sJUXYjEeMrExAAA+kJUXYjEvJZ4xAAA+kKOSIXEd8rExAAA+sJVXYjE9iMqxQAA+sKXIcXE9iMqxQAA+kKXIcXEd8rExAAA+kJVXYjE1AZCRAAA+sJC+iPFj43vQwAA+sL9c8rEj43vQwAA+kL9c8rE1AZCRAAA+kJC+iPFi43vQwAA+sL+c8rEnCMSxAAA+sL2cbfEnCMSxAAA+kL2cbfEi43vQwAA+kL+c8rEAADIRAAA+sK2u43EHE91RAAA+sKb1y3EHE91RAAA+kKb1y3EAADIRAAA+kK2u43EHU91RAAA+sKd1y3Es/MKRAAA+sLPS2/Es/MKRAAA+kLPS2/EHU91RAAA+kKd1y3EtfMKRAAA+sLRS2/EpFzjQwAA+sI8F7rEpFzjQwAA+kI8F7rEtfMKRAAA+kLRS2/EpFzjQwAA+sI8F7rEjI3vQwAA+sL8c8rEjI3vQwAA+kL8c8rEpFzjQwAA+kI8F7rEAADIRAAA+sIQE2TDIISJRAAA+sLQ0RzDIISJRAAA+kLQ0RzDAADIRAAA+kIQE2TDIYSJRAAA+sLS0RzDYvFzRAAA+sLTbMTDYvFzRAAA+kLTbMTDIYSJRAAA+kLS0RzDYfFzRAAA+sLSbMTDG091RAAA+sKb1y3EG091RAAA+kKb1y3EYfFzRAAA+kLSbMTD4Ar2wwAA+sIA8LNDdkUPxAAA+sJ8n41DdkUPxAAA+kJ8n41D4Ar2wwAA+kIA8LNDdUUPxAAA+sJ9n41Dx0BawwAA+sIcBhPEx0BawwAA+kIcBhPEdUUPxAAA+kJ9n41DxUBawwAA+sIcBhPEHTc5wwAA+sKYcBLEHTc5wwAA+kKYcBLExUBawwAA+kIcBhPEHjc5wwAA+sKXcBLEdJwuQwAA+sIAGITDdJwuQwAA+kIAGITDHjc5wwAA+kKXcBLEc5wuQwAA+sIAGITD9UNwQwAA+sIcsLhD9UNwQwAA+kIcsLhDc5wuQwAA+kIAGITD9ENwQwAA+sIdsLhD1Kq/wgAA+sIwkgBE1Kq/wgAA+kIwkgBE9ENwQwAA+kIdsLhD0Kq/wgAA+sIwkgBE4gr2wwAA+sIA8LND4gr2wwAA+kIA8LND0Kq/wgAA+kIwkgBEeMrExAAA+sJVXYjErNmJxAAA+sJ2DDTErNmJxAAA+kJ2DDTEeMrExAAA+kJVXYjEq9mJxAAA+sJ3DDTEafKOxAAA+sJW4u7DafKOxAAA+kJW4u7Dq9mJxAAA+kJ3DDTEa/KOxAAA+sJY4u7D1cKsxAAA+sIw2dPD1cKsxAAA+kIw2dPDa/KOxAAA+kJY4u7DHTc5wwAA+sKXcBLEtfMKRAAA+sLRS2/EtfMKRAAA+kLRS2/EHTc5wwAA+kKXcBLEYfFzRAAA+sLSbMTDJ+M+RAAA+sJyN5vDJ+M+RAAA+kJyN5vDYfFzRAAA+kLSbMTDJ+M+RAAA+sJxN5vDBmjfQwAA+sJXvXzDBmjfQwAA+kJXvXzDJ+M+RAAA+kJxN5vDBmjfQwAA+sJYvXzDc5wuQwAA+sL+F4TDc5wuQwAA+kL+F4TDBmjfQwAA+kJYvXzDavKOxAAA+sJW4u7DBDF7xAAA+sIiSbHDBDF7xAAA+kIiSbHDavKOxAAA+kJW4u7DBjF7xAAA+sIiSbHDChV1xAAA+sJ5H9DCChV1xAAA+kJ5H9DCBjF7xAAA+kIiSbHDChV1xAAA+sJ+H9DCK7WvxAAA+sKYLN3CK7WvxAAA+kKYLN3CChV1xAAA+kJ+H9DC80NwQwAA+sIcsLhDUpO2QwAA+sK41rxDUpO2QwAA+kK41rxD80NwQwAA+kIcsLhDUpO2QwAA+sK41rxDL60XRAAA+sJM2OdDL60XRAAA+kJM2OdDUpO2QwAA+kK41rxDLq0XRAAA+sJJ2OdDrPjrQwAA+sKgYJBErPjrQwAA+kKgYJBELq0XRAAA+kJJ2OdDq/jrQwAA+sKgYJBEAD+qQQAA+sIE1oFEAD+qQQAA+kIE1oFEq/jrQwAA+kKgYJBEFj+qQQAA+sIE1oFE2qq/wgAA+sIwkgBE2qq/wgAA+kIwkgBEFj+qQQAA+kIE1oFEB2jfQwAA+sJWvXzDj/nfQwAA+sJOThxDj/nfQwAA+kJOThxDB2jfQwAA+kJWvXzDkPnfQwAA+sJMThxDUpO2QwAA+sK41rxDUpO2QwAA+kK41rxDkPnfQwAA+kJMThxDMflywwAA+sKtJKtE+D6qQQAA+sID1oFE+D6qQQAA+kID1oFEMflywwAA+kKtJKtEq/jrQwAA+sKhYJBEv23+QwAA+sLXBpVEv23+QwAA+kLXBpVEq/jrQwAA+kKhYJBEvZZ4xAAA+sKNSIXELclixAAA+sJSZ0LELclixAAA+kJSZ0LEvZZ4xAAA+kKNSIXELslixAAA+sJRZ0LEq9mJxAAA+sJ3DDTEq9mJxAAA+kJ3DDTELslixAAA+kJRZ0LEJeM+RAAA+sJ0N5vDkvnfQwAA+sJRThxDkvnfQwAA+kJRThxDJeM+RAAA+kJ0N5vDbUIgxAAA+sJS2o1E4wr2wwAA+sL/77ND4wr2wwAA+kL/77NDbUIgxAAA+kJS2o1EChV1xAAA+sJ+H9DCcB8gxAAA+sLWhYxDcB8gxAAA+kLWhYxDChV1xAAA+kJ+H9DCcR8gxAAA+sLThYxDchaDxAAA+sKDHfBDchaDxAAA+kKDHfBDcR8gxAAA+kLThYxDqH2LRAAA+sKctnRDOj1VRAAA+sL6e9dDOj1VRAAA+kL6e9dDqH2LRAAA+kKctnRDOj1VRAAA+sL6e9dDLq0XRAAA+sJK2OdDLq0XRAAA+kJK2OdDOj1VRAAA+kL6e9dD0henwwAA+sImojHEDr7KwwAA+sK7TY/EDr7KwwAA+kK7TY/E0henwwAA+kImojHEDb7KwwAA+sK6TY/Eo1zjQwAA+sI8F7rEo1zjQwAA+kI8F7rEDb7KwwAA+kK6TY/Ew0BawwAA+sIcBhPE0xenwwAA+sImojHE0xenwwAA+kImojHEw0BawwAA+kIcBhPELclixAAA+sJSZ0LE1s37wwAA+sLynSzE1s37wwAA+kLynSzELclixAAA+kJSZ0LE1M37wwAA+sLxnSzEBjF7xAAA+sIiSbHDBjF7xAAA+kIiSbHD1M37wwAA+kLxnSzEjJ9cRAAA+sJ96g9EEOqDRAAA+sJLU3JEEOqDRAAA+kJLU3JEjJ9cRAAA+kJ96g9EOJAqRAAA+sLTFKBEjJ9cRAAA+sJ+6g9EjJ9cRAAA+kJ+6g9EOJAqRAAA+kLTFKBEC77KwwAA+sK7TY/EgBcOxAAA+sJjJ7DEgBcOxAAA+kJjJ7DEC77KwwAA+kK7TY/EOj1VRAAA+sL6e9dDjJ9cRAAA+sJ96g9EjJ9cRAAA+kJ96g9EOj1VRAAA+kL6e9dDcB8gxAAA+sLUhYxDdkUPxAAA+sJ8n41DdkUPxAAA+kJ8n41DcB8gxAAA+kLUhYxD1s37wwAA+sLxnSzE0henwwAA+sInojHE0henwwAA+kInojHE1s37wwAA+kLxnSzEE1//fwAAddATX/9/AAB10BNf/38AAHXQE1//fwAAddD/UP9/AAB/1/9Q/38AAH/X/1D/fwAAf9f/UP9/AAB/19gE/38AAJP92AT/fwAAk/3YBP9/AACT/dgE/38AAJP9DDL/fwAA+eYMMv9/AAD55gwy/38AAPnmDDL/fwAA+eYAADmV//9i9QAAOZX//2L1AAA5lf//YvUAADmV//9i9QAABdL///zWAAAF0v///NYAAAXS///81gAABdL///zWAAA6i///YfoAADqL//9h+gAAOov//2H6AAA6i///YfoAAGu4///J4wAAa7j//8njAABruP//yeMAAGu4///J4///w9TD1P+////D1MLU/7///8PUw9T/v///w9TC1P+///8RyRHJ/7///xHJEcn/v///EckRyf+///8RyRHJ/78AAIi+//+64AAAiL7//7rgAACIvv//uuAAAIi+//+64AAAsOT//6bNAACw5P//ps0AALDk//+mzQAAsOT//6bN//+R0JHQ/7///5HQkdD/v///kdCR0P+///+R0JHQ/7////eG94b/v///94b3hv+////3hveG/7////eG94b/vwAABvD///vHAAAG8P//+8cAAAbw///7xwAABvD///vH//8N4g3i/7///w3iDeL/v///DeIN4v+///8N4g3i/7/P5/9/z2f/v8/n/3/PZ/+/z+f/f89n/7/P5/9/z2f/v///C9EL0f+///8L0QvR/7///wvRC9H/v///C9EL0f+////KxMrE/7///8rEysT/v///ysTKxP+////KxMrE/78I9/9/CHf/vwj3/38Id/+/CPf/fwh3/78I9/9/CHf/v52+/3+dPv+/nb7/f50+/7+dvv9/nT7/v52+/3+dPv+///91pHWk/7///3WkdaT/v///daR1pP+///91pHWk/7///86bzpv/v///zpvOm/+////Om86b/7///86bzpv/vxa5/38WOf+/Frn/fxY5/78Wuf9/Fjn/vxa5/38WOf+/x3r/fwAAm8LHev9/AACbwsd6/38AAJvCx3r/fwAAm8LrWf9/AAAJ0+tZ/38AAAnT61n/fwAACdPrWf9/AAAJ08bi/3/GYv+/xuL/f8Zi/7/G4v9/xmL/v8bi/3/GYv+/ApD/fwIQ/78CkP9/AhD/vwKQ/38CEP+/ApD/fwIQ/78Vtf9/FTX/vxW1/38VNf+/FbX/fxU1/78Vtf9/FTX/vzxP/38AAGHYPE//fwAAYdg8T/9/AABh2DxP/38AAGHYcxT/fwAAxfVzFP9/AADF9XMU/38AAMX1cxT/fwAAxfUAABiU///y9QAAGJT///L1AAAYlP//8vUAABiU///y9feP/3/3D/+/94//f/cP/7/3j/9/9w//v/eP/3/3D/+/Kiz/fwAA6ukqLP9/AADq6Sos/38AAOrpKiz/fwAA6ukAAESC///c/gAARIL//9z+AABEgv//3P4AAESC///c/sZB/38AABzfxkH/fwAAHN/GQf9/AAAc38ZB/38AABzfAAAJpf//eu0AAAml//967QAACaX//3rtAAAJpf//eu3//4r3ivf/v///iveK9/+///+K94r3/7///4r3ivf/v///l8OXw/+///+Xw5fD/7///5fDl8P/v///l8OXw/+///8EjASM/7///wSMBIz/v///BIwEjP+///8EjASM/7+Ppv9/jyb/v4+m/3+PJv+/j6b/f48m/7+Ppv9/jyb/vxtc/38AAPHRG1z/fwAA8dEbXP9/AADx0Rtc/38AAPHR//+ox6jH/7///6jHqMf/v///qMeox/+///+ox6jH/7+R7f9/kW3/v5Ht/3+Rbf+/ke3/f5Ft/7+R7f9/kW3/v6eX/3+nF/+/p5f/f6cX/7+nl/9/pxf/v6eX/3+nF/+/AABC1f//XdUAAELV//9d1QAAQtX//13VAABC1f//XdXNo/9/zSP/v82j/3/NI/+/zaP/f80j/7/No/9/zSP/v7iT/3+4E/+/uJP/f7gT/7+4k/9/uBP/v7iT/3+4E/+/1Xr/fwAAlMLVev9/AACUwtV6/38AAJTC1Xr/fwAAlML//8/Dz8P/v///z8PPw/+////Pw8/D/7///8/Dz8P/v///X4tfi/+///9fi1+L/7///1+LX4v/v///X4tfi/+/EH7/fwAA98AQfv9/AAD3wBB+/38AAPfAEH7/fwAA98D//wT4BPj/v///BPgE+P+///8E+AT4/7///wT4BPj/v///Yt5i3v+///9i3mLe/7///2LeYt7/v///Yt5i3v+/Hev/fx1r/78d6/9/HWv/vx3r/38da/+/Hev/fx1r/7+8Zf9/AAAhzbxl/38AACHNvGX/fwAAIc28Zf9/AAAhzV0X/38AAFD0XRf/fwAAUPRdF/9/AABQ9F0X/38AAFD0//9agFqA/7///1qAWoD/v///WoBagP+///9agFqA/78n3f9/J13/vyfd/38nXf+/J93/fydd/78n3f9/J13/vwAA37j//4/jAADfuP//j+MAAN+4//+P4wAA37j//4/j///Bv8G//7///8G/wb//v///wb/Bv/+////Bv8G//7///7Kdsp3/v///sp2ynf+///+ynbKd/7///7Kdsp3/vwmd/38JHf+/CZ3/fwkd/78Jnf9/CR3/vwmd/38JHf+/XMz/f1xM/79czP9/XEz/v1zM/39cTP+/XMz/f1xM/78AAKKU//+t9QAAopT//631AACilP//rfUAAKKU//+t9f//ALwAvP+///8AvAC8/7///wC8ALz/v///ALwAvP+/+an/f/kp/7/5qf9/+Sn/v/mp/3/5Kf+/+an/f/kp/78Rtf9/ETX/vxG1/38RNf+/EbX/fxE1/78Rtf9/ETX/vwKP/38CD/+/Ao//fwIP/78Cj/9/Ag//vwKP/38CD/+//hH/fwAAAPf+Ef9/AAAA9/4R/38AAAD3/hH/fwAAAPcAAI/b//830gAAj9v//zfSAACP2///N9IAAI/b//830j8+/38AAN/gPz7/fwAA3+A/Pv9/AADf4D8+/38AAN/g//9D6UPp/7///0PpQ+n/v///Q+lD6f+///9D6UPp/79cs/9/XDP/v1yz/39cM/+/XLP/f1wz/79cs/9/XDP/v///C6cMp/+///8Lpwyn/7///wunDKf/v///C6cMp/+/AABPnP//1/EAAE+c///X8QAAT5z//9fxAABPnP//1/H6MP9/AACC5/ow/38AAILn+jD/fwAAguf6MP9/AACC5///spWylf+///+ylbKV/7///7KVspX/v///spWylf+////z+/P7/7////P78/v/v///8/vz+/+////z+/P7/78AAHHy///GxgAAcfL//8bGAABx8v//xsYAAHHy///Gxg==") -}] - [node name="Node" type="Node"] [node name="App" type="Node" parent="."] script = ExtResource("1_7pmbt") [node name="Locale Manager" type="Node" parent="App"] +process_mode = 3 script = ExtResource("2_toips") [node name="Sensor Manager Setup" type="Node" parent="App" node_paths=PackedStringArray("autoScanForSensors")] +process_mode = 3 script = ExtResource("3_dgvsu") sensorGroups = [ExtResource("4_5p27p"), ExtResource("5_d70gq")] -autoScanForSensors = [NodePath("../../CharacterController")] +autoScanForSensors = [NodePath("../../Player Character Controller"), NodePath("../../On Pause Toggle")] confineMouse = true [node name="TimeLineManager" type="Node" parent="App"] +process_mode = 3 script = ExtResource("6_msotc") timeLines = [ExtResource("7_ctpa3"), ExtResource("8_rfged"), ExtResource("9_n6fo8")] gametimeTimeline = ExtResource("7_ctpa3") @@ -1055,10 +1567,12 @@ realtimeTimeline = ExtResource("8_rfged") metadata/_custom_type_script = "uid://cdweilvlwjucr" [node name="Audio Manager" type="Node" parent="App"] +process_mode = 3 script = ExtResource("10_rsbf7") data = SubResource("Resource_60dcx") [node name="Rendering Manager" type="Node" parent="App"] +process_mode = 3 script = ExtResource("12_jqb63") data = SubResource("Resource_lrrmx") @@ -1066,70 +1580,85 @@ data = SubResource("Resource_lrrmx") script = ExtResource("14_3p5o6") metadata/_custom_type_script = "uid://d054ma7xwplq8" -[node name="Camera Setup" type="Node" parent="App"] +[node name="OnTick" type="Node" parent="App/Rendering Manager" node_paths=PackedStringArray("action")] +script = ExtResource("15_qry18") +action = NodePath("PostProcessingHack") +tickDuration = SubResource("Resource_2rmor") +metadata/_custom_type_script = "uid://dqgh1ba6suibb" + +[node name="PostProcessingHack" type="Node" parent="App/Rendering Manager/OnTick" node_paths=PackedStringArray("environment")] +script = ExtResource("17_u1oh5") +compositorEffects = [SubResource("CompositorEffect_redyo"), SubResource("CompositorEffect_optxl"), SubResource("CompositorEffect_arru6")] +environment = NodePath("../../../../Camera Setup/WorldEnvironment") +metadata/_custom_type_script = "uid://efhpaj7sfbcr" + +[node name="Camera Setup" type="Node" parent="."] +process_mode = 3 script = ExtResource("15_ypsyk") -[node name="Camera Manager" type="Node" parent="App/Camera Setup" node_paths=PackedStringArray("camera", "worldEnvironment", "debugCamera")] +[node name="Camera Manager" type="Node" parent="Camera Setup" node_paths=PackedStringArray("camera", "worldEnvironment", "debugCamera")] script = ExtResource("16_pwyh7") camera = NodePath("../Main Camera") worldEnvironment = NodePath("../WorldEnvironment") debugCamera = NodePath("../Debug Editor Camera") debugCameraToggle = SubResource("Resource_wyayf") -[node name="Third Person Camera Slot" type="Node" parent="App/Camera Setup/Camera Manager" node_paths=PackedStringArray("camera")] +[node name="Third Person Camera Slot" type="Node" parent="Camera Setup/Camera Manager" node_paths=PackedStringArray("camera")] script = ExtResource("18_mxqtn") camera = NodePath("../../Game Camera/Third Person Camera") priority = 1.0 -[node name="WorldEnvironment" type="WorldEnvironment" parent="App/Camera Setup"] +[node name="WorldEnvironment" type="WorldEnvironment" parent="Camera Setup"] environment = SubResource("Environment_jac5c") camera_attributes = SubResource("CameraAttributesPractical_vdxii") compositor = SubResource("Compositor_5fx4j") -[node name="Main Camera" type="Camera3D" parent="App/Camera Setup"] +[node name="Main Camera" type="Camera3D" parent="Camera Setup"] transform = Transform3D(-1, 5.0143647e-08, -7.161255e-08, 0, 0.81915206, 0.57357645, 8.742278e-08, 0.57357645, -0.81915206, 0, 0.5735764, -0.81915206) fov = 60.0 -[node name="Aim Exact Position" type="MeshInstance3D" parent="App/Camera Setup/Main Camera"] +[node name="Aim Exact Position" type="MeshInstance3D" parent="Camera Setup/Main Camera"] transform = Transform3D(-0.1, -2.5393547e-09, 3.230744e-08, 5.014365e-09, 0.0819152, 0.1498182, -1.1588483e-08, 0.05735765, -0.21396251, 0, 0, -100) visible = false mesh = SubResource("QuadMesh_bco8n") -skeleton = NodePath("../../../..") +skeleton = NodePath("../../..") surface_material_override/0 = SubResource("StandardMaterial3D_08gnh") -[node name="MultiRayCaster" type="Node3D" parent="App/Camera Setup/Main Camera"] +[node name="MultiRayCaster" type="Node3D" parent="Camera Setup/Main Camera"] transform = Transform3D(-1, 0, 8.7422784e-08, 5.0143647e-08, 0.81915206, 0.57357645, -7.161255e-08, 0.57357645, -0.81915206, 7.1612554e-08, 5.9604645e-08, -1) script = ExtResource("22_u6rrh") rayLength = 500.0 +maxHits = 100 metadata/_custom_type_script = "uid://bltwuqpvalu26" -[node name="Node3D" type="Node3D" parent="App/Camera Setup/Main Camera"] +[node name="Node3D" type="Node3D" parent="Camera Setup/Main Camera"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -50) visible = false -[node name="MeshInstance3D" type="MeshInstance3D" parent="App/Camera Setup/Main Camera/Node3D"] +[node name="MeshInstance3D" type="MeshInstance3D" parent="Camera Setup/Main Camera/Node3D"] mesh = SubResource("SphereMesh_1txuo") -[node name="Debug Editor Camera" type="Node3D" parent="App/Camera Setup"] +[node name="Debug Editor Camera" type="Node3D" parent="Camera Setup"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -10) script = ExtResource("23_6s2j0") zoomSmoothing = SubResource("Resource_or5w5") keyboardMouseInputs = ExtResource("25_hs57h") -[node name="Game Camera" type="Node" parent="App/Camera Setup"] +[node name="Game Camera" type="Node" parent="Camera Setup"] +process_mode = 1 -[node name="Third Person Camera" type="Node3D" parent="App/Camera Setup/Game Camera" node_paths=PackedStringArray("target")] +[node name="Third Person Camera" type="Node3D" parent="Camera Setup/Game Camera" node_paths=PackedStringArray("target")] transform = Transform3D(1, 0, 0, 0, 0.81915194, -0.57357633, 0, 0.57357633, 0.81915194, 0, 0.5735764, -0.81915206) script = ExtResource("26_jsrqa") -target = NodePath("../../../../CharacterController/Graphics/submarine") +target = NodePath("../../../Player Character Controller/Graphics/Shake Container/submarine") pitch = 70.0 settings = SubResource("Resource_sum28") metadata/_edit_group_ = true -[node name="AimControl" type="Node" parent="App/Camera Setup/Game Camera" node_paths=PackedStringArray("aimSource", "characterSource", "fastAim", "slowAim", "characterMovement", "focusAim", "pointer", "onFocus", "onBlur")] +[node name="AimControl" type="Node" parent="Camera Setup/Game Camera" node_paths=PackedStringArray("aimSource", "characterSource", "fastAim", "slowAim", "characterMovement", "focusAim", "pointer", "onFocus", "onBlur")] script = ExtResource("38_x8icc") aimSource = NodePath("../../Main Camera") -characterSource = NodePath("../../../../CharacterController/CharacterBody3D") +characterSource = NodePath("../../../Player Character Controller/CharacterBody3D") fastAim = NodePath("../Aim Fast Position") fastAimDistance = 50.0 fastScale = 0.7 @@ -1139,37 +1668,37 @@ slowAim = NodePath("../Aim Slow Position") slowScale = 0.7 slowCharacterVelocity = -0.005 slowPositionSmoothing = SubResource("Resource_ewnar") -characterMovement = NodePath("../../../../CharacterController/Character Actions/CharacterMovement") +characterMovement = NodePath("../../../Player Character Controller/Character Actions/CharacterMovement") focusAim = NodePath("../Focus Aim") focusSmoothing = SubResource("Resource_woc0g") -pointer = NodePath("../../../../CharacterController/Pointer") +pointer = NodePath("../../../Player Character Controller/Pointer") onFocus = NodePath("../Focus Aim/On Focus") onBlur = NodePath("../Focus Aim/On Blur") metadata/_custom_type_script = "uid://bicds4ssfa48u" -[node name="Aim Fast Position" type="MeshInstance3D" parent="App/Camera Setup/Game Camera"] +[node name="Aim Fast Position" type="MeshInstance3D" parent="Camera Setup/Game Camera"] transform = Transform3D(5, 1.269677e-07, -1.8132864e-07, -1.2696768e-07, 5, 5.587936e-07, 1.8132866e-07, -5.587936e-07, 5, 3.5806274e-06, -28.105246, 40.13845) mesh = SubResource("QuadMesh_bco8n") -skeleton = NodePath("../../../..") +skeleton = NodePath("../../..") surface_material_override/0 = SubResource("StandardMaterial3D_08gnh") -[node name="Aim Slow Position" type="MeshInstance3D" parent="App/Camera Setup/Game Camera"] +[node name="Aim Slow Position" type="MeshInstance3D" parent="Camera Setup/Game Camera"] transform = Transform3D(25, 6.348385e-07, -9.066434e-07, -6.348384e-07, 25, 2.7939682e-06, 9.066435e-07, -2.7939682e-06, 25, 7.161255e-06, -56.784065, 81.096054) mesh = SubResource("QuadMesh_bco8n") -skeleton = NodePath("../../../..") +skeleton = NodePath("../../..") surface_material_override/0 = SubResource("StandardMaterial3D_nowq7") -[node name="Focus Aim" type="MeshInstance3D" parent="App/Camera Setup/Game Camera"] +[node name="Focus Aim" type="MeshInstance3D" parent="Camera Setup/Game Camera"] transform = Transform3D(108.250595, 2.7488659e-06, -3.9257875e-06, -2.7488652e-06, 108.250595, 1.20979485e-05, 3.925788e-06, -1.20979485e-05, 108.250595, 6.1412473, -56.784065, 81.096054) mesh = SubResource("QuadMesh_bco8n") -skeleton = NodePath("../../../..") +skeleton = NodePath("../../..") surface_material_override/0 = SubResource("StandardMaterial3D_hp4fx") -[node name="On Focus" type="Node" parent="App/Camera Setup/Game Camera/Focus Aim"] +[node name="On Focus" type="Node" parent="Camera Setup/Game Camera/Focus Aim"] script = ExtResource("39_u2omi") metadata/_custom_type_script = "uid://b4yjsis2fh64c" -[node name="Show" type="Node" parent="App/Camera Setup/Game Camera/Focus Aim/On Focus" node_paths=PackedStringArray("target")] +[node name="Show" type="Node" parent="Camera Setup/Game Camera/Focus Aim/On Focus" node_paths=PackedStringArray("target")] script = ExtResource("40_bjuy7") toMaterial = SubResource("StandardMaterial3D_5x2te") tweenType = SubResource("Resource_5x2te") @@ -1178,16 +1707,16 @@ target = NodePath("../..") slot = 2 metadata/_custom_type_script = "uid://0wcfunmv4j6d" -[node name="RJLogMessage" type="Node" parent="App/Camera Setup/Game Camera/Focus Aim/On Focus"] +[node name="RJLogMessage" type="Node" parent="Camera Setup/Game Camera/Focus Aim/On Focus"] script = ExtResource("42_2ewly") message = "Show" metadata/_custom_type_script = "uid://cd0ikdsdhutn0" -[node name="On Blur" type="Node" parent="App/Camera Setup/Game Camera/Focus Aim"] +[node name="On Blur" type="Node" parent="Camera Setup/Game Camera/Focus Aim"] script = ExtResource("39_u2omi") metadata/_custom_type_script = "uid://b4yjsis2fh64c" -[node name="Hide" type="Node" parent="App/Camera Setup/Game Camera/Focus Aim/On Blur" node_paths=PackedStringArray("target")] +[node name="Hide" type="Node" parent="Camera Setup/Game Camera/Focus Aim/On Blur" node_paths=PackedStringArray("target")] script = ExtResource("40_bjuy7") toMaterial = SubResource("StandardMaterial3D_hp4fx") tweenType = SubResource("Resource_5x2te") @@ -1196,7 +1725,7 @@ target = NodePath("../..") slot = 2 metadata/_custom_type_script = "uid://0wcfunmv4j6d" -[node name="RJLogMessage2" type="Node" parent="App/Camera Setup/Game Camera/Focus Aim/On Blur"] +[node name="RJLogMessage2" type="Node" parent="Camera Setup/Game Camera/Focus Aim/On Blur"] script = ExtResource("42_2ewly") message = "Blur" metadata/_custom_type_script = "uid://cd0ikdsdhutn0" @@ -1205,62 +1734,434 @@ metadata/_custom_type_script = "uid://cd0ikdsdhutn0" script = ExtResource("43_toips") metadata/_custom_type_script = "uid://cy2tnvx5jkplm" -[node name="DomeFoxGameUI" type="Node" parent="." node_paths=PackedStringArray("crystalCounter")] +[node name="On Game Start" type="Node" parent="."] +script = ExtResource("86_qk0v4") +metadata/_custom_type_script = "uid://dyf6ee3ov3ran" + +[node name="PlayMusic" type="Node" parent="On Game Start" node_paths=PackedStringArray("music")] +script = ExtResource("87_bwq5n") +music = NodePath("AudioStreamPlayer") +metadata/_custom_type_script = "uid://cyicertlwo4m0" + +[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="On Game Start/PlayMusic"] +stream = ExtResource("88_ci6aj") +volume_db = -6.0 + +[node name="Disable Pause UI" type="Node" parent="On Game Start" node_paths=PackedStringArray("target")] +script = ExtResource("99_u6rrh") +target = NodePath("../../UI/Pause UI") +configuration = SubResource("Resource_5e5ie") +metadata/_custom_type_script = "uid://cko3krhs7jgc4" + +[node name="* Create Level" type="Node" parent="On Game Start" node_paths=PackedStringArray("referencedAction")] +script = ExtResource("74_6uxni") +referencedAction = NodePath("../../Level/LevelGenerator") +metadata/_custom_type_script = "uid://dxra6jao22it4" + +[node name="Assign Texture Attributes Texture" type="Node" parent="On Game Start" node_paths=PackedStringArray("textureAttributes")] +script = ExtResource("101_nmwjv") +textureAttributes = NodePath("../../Level/Walls Texture Attributes/TextureAttributes") +material = ExtResource("102_85m4o") +texturePropertyName = SubResource("Resource_qnc2f") +metadata/_custom_type_script = "uid://drd58qb2u7vwr" + +[node name="* Start PostProcessing Hack" type="Node" parent="On Game Start" node_paths=PackedStringArray("referencedAction")] +script = ExtResource("74_6uxni") +referencedAction = NodePath("../../App/Rendering Manager/OnTick/PostProcessingHack") +metadata/_custom_type_script = "uid://dxra6jao22it4" + +[node name="On Pause Toggle" type="Node" parent="." node_paths=PackedStringArray("onStart")] +process_mode = 3 +script = ExtResource("67_8o26s") +sensor = SubResource("Resource_v8d1x") +onStart = NodePath("SetPauseState") +metadata/_custom_type_script = "uid://88u2lx0pssal" + +[node name="SetPauseState" type="Node" parent="On Pause Toggle" node_paths=PackedStringArray("onPausing", "onResuming")] +script = ExtResource("47_gcb85") +mode = 2 +onPausing = NodePath("../On Pause") +onResuming = NodePath("../On Resume") +metadata/_custom_type_script = "uid://bwah32ket1t43" + +[node name="On Pause" type="Node" parent="On Pause Toggle"] +script = ExtResource("39_u2omi") +metadata/_custom_type_script = "uid://b4yjsis2fh64c" + +[node name="Log Pause" type="Node" parent="On Pause Toggle/On Pause"] +script = ExtResource("42_2ewly") +message = "Pause" +metadata/_custom_type_script = "uid://cd0ikdsdhutn0" + +[node name="Enable Pause UI" type="Node" parent="On Pause Toggle/On Pause" node_paths=PackedStringArray("target")] +script = ExtResource("99_u6rrh") +target = NodePath("../../../UI/Pause UI") +configuration = SubResource("Resource_mxqtn") +metadata/_custom_type_script = "uid://cko3krhs7jgc4" + +[node name="Disable Game UI" type="Node" parent="On Pause Toggle/On Pause" node_paths=PackedStringArray("disable")] +script = ExtResource("50_mxqtn") +disable = [NodePath("../../../UI/Game UI")] +metadata/_custom_type_script = "uid://bex6umukt0r8d" + +[node name="On Resume" type="Node" parent="On Pause Toggle"] +script = ExtResource("39_u2omi") +metadata/_custom_type_script = "uid://b4yjsis2fh64c" + +[node name="Log Resume" type="Node" parent="On Pause Toggle/On Resume"] +script = ExtResource("42_2ewly") +message = "Resume" +metadata/_custom_type_script = "uid://cd0ikdsdhutn0" + +[node name="* Disable Pause UI" type="Node" parent="On Pause Toggle/On Resume" node_paths=PackedStringArray("referencedAction")] +script = ExtResource("74_6uxni") +referencedAction = NodePath("../../../On Game Start/Disable Pause UI") +metadata/_custom_type_script = "uid://dxra6jao22it4" + +[node name="Enable Game UI" type="Node" parent="On Pause Toggle/On Resume" node_paths=PackedStringArray("enable")] +script = ExtResource("50_mxqtn") +enable = [NodePath("../../../UI/Game UI")] +metadata/_custom_type_script = "uid://bex6umukt0r8d" + +[node name="UI" type="Node" parent="."] + +[node name="DomeFoxGameUI" type="Node" parent="UI" node_paths=PackedStringArray("crystalCounter")] script = ExtResource("44_dgvsu") -crystalCounter = NodePath("../UI/UIRegion/Crystals Counter") +crystalCounter = NodePath("../Game UI/Full Screen Region/Left Top/Crystals Counter") metadata/_custom_type_script = "uid://bodisf1g5534o" -[node name="UI" type="Control" parent="."] +[node name="Game UI" type="Control" parent="UI"] layout_mode = 3 anchors_preset = 0 offset_right = 40.0 offset_bottom = 40.0 script = ExtResource("43_mvod7") -settings = ExtResource("44_maga3") +settings = ExtResource("54_6q3b0") +updateMode = 1 +useParentSize = true uiSize = Vector2(40, 40) -X_computedFontSizePixels = 5.76 +X_computedFontSizePixels = 17.28 metadata/_custom_type_script = "uid://bu6np1t32bddg" -[node name="UIRegion" type="Control" parent="UI"] +[node name="Full Screen Region" type="Control" parent="UI/Game UI"] anchors_preset = 0 -offset_right = 76.76 -offset_bottom = 22.76 +offset_right = 1152.0 +offset_bottom = 648.0 script = ExtResource("45_qry18") -marginLeft = SubResource("Resource_bm7ot") -marginTop = SubResource("Resource_n2htv") +width = SubResource("Resource_whjfm") +height = SubResource("Resource_2ewly") metadata/_custom_type_script = "uid://c2hicupu28nbi" -[node name="Crystals Label" type="Label" parent="UI/UIRegion"] +[node name="Left Top" type="Control" parent="UI/Game UI/Full Screen Region"] +anchors_preset = 0 +offset_right = 120.56 +offset_bottom = 57.56 +pivot_offset = Vector2(60.28, 28.78) +script = ExtResource("45_qry18") +margin = SubResource("Resource_2iqil") +position = 2 +metadata/_custom_type_script = "uid://c2hicupu28nbi" + +[node name="Crystals Label" type="Label" parent="UI/Game UI/Full Screen Region/Left Top"] layout_mode = 0 -offset_left = 5.76 -offset_top = 5.76 -offset_right = 69.76 -offset_bottom = 22.76 -pivot_offset = Vector2(32, 8.5) -text = "CRYSTALS: " -label_settings = SubResource("LabelSettings_rfged") +offset_left = 17.28 +offset_top = 17.28 +offset_right = 86.28 +offset_bottom = 40.28 +pivot_offset = Vector2(34.5, 11.5) +theme_override_fonts/font = ExtResource("57_xae6d") +text = "Crystals" +label_settings = SubResource("LabelSettings_ffwmu") uppercase = true script = ExtResource("47_2rmor") -locale = SubResource("Resource_0jqvd") -fontSize = SubResource("Resource_45l0l") +locale = SubResource("Resource_j57vf") metadata/_custom_type_script = "uid://rqs2m0u6yvvf" -[node name="Crystals Counter" type="Label" parent="UI/UIRegion"] +[node name="Seperator" type="Label" parent="UI/Game UI/Full Screen Region/Left Top"] layout_mode = 0 -offset_left = 69.76 -offset_top = 5.76 -offset_right = 76.76 -offset_bottom = 22.76 -pivot_offset = Vector2(3.5, 8.5) +offset_left = 86.28 +offset_top = 17.28 +offset_right = 93.28 +offset_bottom = 40.28 +pivot_offset = Vector2(3.5, 11.5) +theme_override_fonts/font = ExtResource("57_xae6d") +text = ": " +label_settings = SubResource("LabelSettings_2iqil") +uppercase = true +script = ExtResource("47_2rmor") +locale = SubResource("Resource_ijym8") +metadata/_custom_type_script = "uid://rqs2m0u6yvvf" + +[node name="Crystals Counter" type="Label" parent="UI/Game UI/Full Screen Region/Left Top"] +layout_mode = 0 +offset_left = 93.28 +offset_top = 17.28 +offset_right = 103.28 +offset_bottom = 40.28 +pivot_offset = Vector2(5, 11.5) +theme_override_fonts/font = ExtResource("57_xae6d") text = "0" -label_settings = SubResource("LabelSettings_n6fo8") +label_settings = SubResource("LabelSettings_1m6i4") uppercase = true script = ExtResource("47_2rmor") locale = SubResource("Resource_ygxwg") -fontSize = SubResource("Resource_45l0l") metadata/_custom_type_script = "uid://rqs2m0u6yvvf" -[node name="CharacterController" type="Node" parent="." node_paths=PackedStringArray("body", "actionsContainer", "graphics")] +[node name="Left Bottom" type="Control" parent="UI/Game UI/Full Screen Region"] +anchors_preset = 0 +offset_top = 590.44 +offset_right = 117.56 +offset_bottom = 648.0 +pivot_offset = Vector2(58.78, 28.779999) +script = ExtResource("45_qry18") +margin = SubResource("Resource_mn5qp") +position = 2 +bottom = SubResource("Resource_a7q36") +metadata/_custom_type_script = "uid://c2hicupu28nbi" + +[node name="Health Label" type="Label" parent="UI/Game UI/Full Screen Region/Left Bottom"] +layout_mode = 0 +offset_left = 17.28 +offset_top = 17.28 +offset_right = 70.28 +offset_bottom = 40.28 +pivot_offset = Vector2(26.5, 11.5) +theme_override_fonts/font = ExtResource("57_xae6d") +text = "Health" +label_settings = SubResource("LabelSettings_fsd2w") +uppercase = true +script = ExtResource("47_2rmor") +locale = SubResource("Resource_7x7tw") +metadata/_custom_type_script = "uid://rqs2m0u6yvvf" + +[node name="Seperator2" type="Label" parent="UI/Game UI/Full Screen Region/Left Bottom"] +layout_mode = 0 +offset_left = 70.28 +offset_top = 17.28 +offset_right = 77.28 +offset_bottom = 40.28 +pivot_offset = Vector2(3.5, 11.5) +theme_override_fonts/font = ExtResource("57_xae6d") +text = ": " +label_settings = SubResource("LabelSettings_p06ew") +uppercase = true +script = ExtResource("47_2rmor") +locale = SubResource("Resource_ijym8") +metadata/_custom_type_script = "uid://rqs2m0u6yvvf" + +[node name="Health Counter" type="Label" parent="UI/Game UI/Full Screen Region/Left Bottom"] +layout_mode = 0 +offset_left = 77.28 +offset_top = 17.28 +offset_right = 100.28 +offset_bottom = 40.28 +pivot_offset = Vector2(11.5, 11.5) +theme_override_fonts/font = ExtResource("57_xae6d") +text = "100" +label_settings = SubResource("LabelSettings_mn5qp") +uppercase = true +script = ExtResource("47_2rmor") +locale = SubResource("Resource_atjbw") +metadata/_custom_type_script = "uid://rqs2m0u6yvvf" + +[node name="Pause UI" type="Control" parent="UI"] +process_mode = 3 +visible = false +layout_mode = 3 +anchors_preset = 0 +offset_right = 40.0 +offset_bottom = 40.0 +script = ExtResource("43_mvod7") +settings = ExtResource("54_6q3b0") +updateMode = 1 +useParentSize = true +uiSize = Vector2(40, 40) +X_computedFontSizePixels = 17.28 +metadata/_custom_type_script = "uid://bu6np1t32bddg" + +[node name="UIRegion" type="Control" parent="UI/Pause UI"] +anchors_preset = 0 +offset_right = 1152.0 +offset_bottom = 648.0 +script = ExtResource("45_qry18") +verticalPlacement = SubResource("Resource_ue0no") +width = SubResource("Resource_2h7cs") +height = SubResource("Resource_hs57h") +metadata/_custom_type_script = "uid://c2hicupu28nbi" + +[node name="BG" type="TextureRect" parent="UI/Pause UI/UIRegion"] +material = SubResource("ShaderMaterial_fc106") +layout_mode = 0 +offset_right = 1152.0 +offset_bottom = 648.0 +pivot_offset = Vector2(576, 324) +texture = SubResource("GradientTexture2D_xae6d") +expand_mode = 1 +script = ExtResource("57_ue0no") +imageType = SubResource("Resource_33ium") +width = SubResource("Resource_exiqy") +height = SubResource("Resource_f87at") +position = 2 +left = SubResource("Resource_gh8fe") +top = SubResource("Resource_om1n1") +metadata/_custom_type_script = "uid://bx0bk663u3hj5" + +[node name="Paused Label" type="Label" parent="UI/Pause UI/UIRegion"] +layout_mode = 0 +offset_left = 520.0 +offset_top = 288.53998 +offset_right = 632.0 +offset_bottom = 333.53998 +pivot_offset = Vector2(56, 22.5) +theme_override_fonts/font = ExtResource("57_xae6d") +text = "Paused" +label_settings = SubResource("LabelSettings_fc106") +uppercase = true +script = ExtResource("47_2rmor") +locale = SubResource("Resource_6s2j0") +fontSize = SubResource("Resource_jsrqa") +fontColor = SubResource("Resource_u6rrh") +width = SubResource("Resource_2ex5m") +height = SubResource("Resource_wrjba") +metadata/_custom_type_script = "uid://rqs2m0u6yvvf" + +[node name="UIBreak" type="Control" parent="UI/Pause UI/UIRegion"] +anchors_preset = 0 +offset_left = 479.08 +offset_top = 337.86 +offset_right = 479.08 +offset_bottom = 355.13998 +script = ExtResource("64_jsrqa") +metadata/_custom_type_script = "uid://b4yhlfad24pvh" + +[node name="Press_" type="Label" parent="UI/Pause UI/UIRegion"] +layout_mode = 0 +offset_left = 479.08 +offset_top = 335.0 +offset_right = 527.07996 +offset_bottom = 358.0 +pivot_offset = Vector2(24, 11.5) +theme_override_fonts/font = ExtResource("57_xae6d") +text = "Press " +label_settings = SubResource("LabelSettings_hbm6b") +uppercase = true +script = ExtResource("47_2rmor") +locale = SubResource("Resource_cqrab") +fontColor = SubResource("Resource_u6rrh") +width = SubResource("Resource_2ex5m") +height = SubResource("Resource_wrjba") +metadata/_custom_type_script = "uid://rqs2m0u6yvvf" + +[node name="UIInputInfo" type="Control" parent="UI/Pause UI/UIRegion"] +anchors_preset = 0 +offset_left = 527.07996 +offset_top = 333.53998 +offset_right = 578.92 +offset_bottom = 359.46 +pivot_offset = Vector2(25.920013, 12.960007) +script = ExtResource("65_6q3b0") +inputIcons = [SubResource("Resource_u2omi")] +fontSize = SubResource("Resource_bjuy7") +metadata/_custom_type_script = "uid://bgux04t6nu7ea" + +[node name="UIRegion" type="Control" parent="UI/Pause UI/UIRegion/UIInputInfo"] +anchors_preset = 0 +offset_right = 25.920002 +offset_bottom = 25.920002 +pivot_offset = Vector2(12.960001, 12.960001) +script = ExtResource("45_qry18") + +[node name="UIImage" type="TextureRect" parent="UI/Pause UI/UIRegion/UIInputInfo/UIRegion"] +layout_mode = 0 +offset_right = 25.920002 +offset_bottom = 25.920002 +pivot_offset = Vector2(12.960001, 12.960001) +texture = ExtResource("67_5hkry") +expand_mode = 1 +script = ExtResource("57_ue0no") +width = SubResource("Resource_jvhkh") +height = SubResource("Resource_doova") + +[node name="UIText" type="Label" parent="UI/Pause UI/UIRegion/UIInputInfo/UIRegion"] +layout_mode = 0 +offset_right = 25.92 +offset_bottom = 25.92 +theme_override_fonts/font = ExtResource("57_xae6d") +text = "" +label_settings = SubResource("LabelSettings_a7q36") +horizontal_alignment = 1 +vertical_alignment = 1 +uppercase = true +script = ExtResource("47_2rmor") +locale = SubResource("Resource_o48hf") +alwaysMinimumSize = false +fontSize = SubResource("Resource_8o26s") +width = SubResource("Resource_qs4y7") +height = SubResource("Resource_lyltj") +position = 2 +left = SubResource("Resource_4ybl6") +top = SubResource("Resource_v11xn") + +[node name="UIRegion2" type="Control" parent="UI/Pause UI/UIRegion/UIInputInfo"] +anchors_preset = 0 +offset_left = 25.920002 +offset_right = 51.840004 +offset_bottom = 25.920002 +pivot_offset = Vector2(12.960001, 12.960001) +script = ExtResource("45_qry18") + +[node name="UIImage" type="TextureRect" parent="UI/Pause UI/UIRegion/UIInputInfo/UIRegion2"] +material = SubResource("ShaderMaterial_6uxni") +layout_mode = 0 +offset_right = 25.920002 +offset_bottom = 25.920002 +pivot_offset = Vector2(12.960001, 12.960001) +texture = ExtResource("70_f87at") +expand_mode = 1 +script = ExtResource("57_ue0no") +imageType = SubResource("Resource_13ojk") +width = SubResource("Resource_1t1hx") +height = SubResource("Resource_we8s0") + +[node name="UIText" type="Label" parent="UI/Pause UI/UIRegion/UIInputInfo/UIRegion2"] +layout_mode = 0 +offset_right = 25.92 +offset_bottom = 25.92 +theme_override_fonts/font = ExtResource("57_xae6d") +text = "Esc" +label_settings = SubResource("LabelSettings_kn8hv") +horizontal_alignment = 1 +vertical_alignment = 1 +uppercase = true +script = ExtResource("47_2rmor") +locale = SubResource("Resource_dy41s") +alwaysMinimumSize = false +fontSize = SubResource("Resource_esexe") +width = SubResource("Resource_yhfyc") +height = SubResource("Resource_3uoq1") +position = 2 +left = SubResource("Resource_4c23n") +top = SubResource("Resource_ytrge") + +[node name="_to continue" type="Label" parent="UI/Pause UI/UIRegion"] +layout_mode = 0 +offset_left = 578.92004 +offset_top = 335.0 +offset_right = 672.92004 +offset_bottom = 358.0 +pivot_offset = Vector2(47, 11.5) +theme_override_fonts/font = ExtResource("57_xae6d") +text = " to continue" +label_settings = SubResource("LabelSettings_iraei") +uppercase = true +script = ExtResource("47_2rmor") +locale = SubResource("Resource_jr6gu") +fontColor = SubResource("Resource_u6rrh") +width = SubResource("Resource_2ex5m") +height = SubResource("Resource_wrjba") +metadata/_custom_type_script = "uid://rqs2m0u6yvvf" + +[node name="Player Character Controller" type="Node" parent="." node_paths=PackedStringArray("body", "actionsContainer", "graphics")] script = ExtResource("49_2iqil") body = NodePath("CharacterBody3D") characterUpdateMode = 1 @@ -1270,38 +2171,79 @@ rotationSmoothing = SubResource("Resource_quqnr") positionSmoothing = SubResource("Resource_llgn5") metadata/_custom_type_script = "uid://de26c4war5vu1" -[node name="CharacterBody3D" type="CharacterBody3D" parent="CharacterController"] +[node name="CharacterBody3D" type="CharacterBody3D" parent="Player Character Controller"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -21.516247, 0.00023429329, 4.7784586) motion_mode = 1 -[node name="CollisionShape3D" type="CollisionShape3D" parent="CharacterController/CharacterBody3D"] +[node name="AudioStreamPlayer3D" type="AudioStreamPlayer3D" parent="Player Character Controller/CharacterBody3D"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -2.3428584e-09, 0) +stream = ExtResource("80_u2omi") +volume_db = 3.0 +unit_size = 50.0 +attenuation_filter_cutoff_hz = 20500.0 +attenuation_filter_db = 0.0 + +[node name="CollisionShape3D" type="CollisionShape3D" parent="Player Character Controller/CharacterBody3D"] transform = Transform3D(1, 0, 0, 0, -4.371139e-08, 1, 0, -1, -4.371139e-08, 0, 8.331951e-09, 0.1906128) shape = SubResource("CapsuleShape3D_80mi3") -[node name="CameraTargetOffset" type="Node3D" parent="CharacterController/CharacterBody3D"] +[node name="CameraTargetOffset" type="Node3D" parent="Player Character Controller/CharacterBody3D"] script = ExtResource("50_1m6i4") cameraTargetOffsetZSmoothing = SubResource("Resource_p2gsh") cameraTargetOffsetYSmoothing = SubResource("Resource_50dnn") metadata/_custom_type_script = "uid://bk5eoi53m08jh" -[node name="MultiRayCaster" type="Node3D" parent="CharacterController/CharacterBody3D"] +[node name="MultiRayCaster" type="Node3D" parent="Player Character Controller/CharacterBody3D"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.22074032, -5.083435) script = ExtResource("22_u6rrh") rayLength = 100.0 +maxHits = 5 metadata/_custom_type_script = "uid://bltwuqpvalu26" -[node name="Character Actions" type="Node" parent="CharacterController"] +[node name="Player" type="Node" parent="Player Character Controller/CharacterBody3D" node_paths=PackedStringArray("transform")] +script = ExtResource("53_rfged") +transform = NodePath("..") +playerPosition = ExtResource("13_u1oh5") +metadata/_custom_type_script = "uid://lcmgq0fr5fgs" -[node name="ProcessVelocity" type="Node" parent="CharacterController/Character Actions"] +[node name="Player Collidable" type="Node3D" parent="Player Character Controller/CharacterBody3D"] +script = ExtResource("79_jsrqa") +collisionTypes = [ExtResource("80_6q3b0")] +metadata/_custom_type_script = "uid://dbgwebayabwd5" + +[node name="Damage Collidable" type="Node3D" parent="Player Character Controller/CharacterBody3D" node_paths=PackedStringArray("onEntered", "onInside")] +script = ExtResource("79_jsrqa") +collisionTypes = [ExtResource("84_x8icc")] +onEntered = NodePath("CoolDown") +onInside = NodePath("CoolDown") +metadata/_custom_type_script = "uid://dbgwebayabwd5" +metadata/_edit_group_ = true + +[node name="CoolDown" type="Node" parent="Player Character Controller/CharacterBody3D/Damage Collidable" node_paths=PackedStringArray("action")] +script = ExtResource("71_d5wd3") +action = NodePath("Damagable") +coolDownDuration = SubResource("Resource_fsd2w") +metadata/_custom_type_script = "uid://cbk1j230s8i68" + +[node name="Damagable" type="Node" parent="Player Character Controller/CharacterBody3D/Damage Collidable/CoolDown" node_paths=PackedStringArray("collidable", "health")] +script = ExtResource("94_u2omi") +damagableData = ExtResource("95_bjuy7") +collidable = NodePath("../..") +health = NodePath("../../../../Health") +metadata/_custom_type_script = "uid://dn1jkvx1f4y5r" + +[node name="Character Actions" type="Node" parent="Player Character Controller"] + +[node name="ProcessVelocity" type="Node" parent="Player Character Controller/Character Actions"] script = ExtResource("51_fsd2w") velocityScale = 0.95 metadata/_custom_type_script = "uid://ch6tcwvvw2dl1" -[node name="CharacterMovement" type="Node" parent="CharacterController/Character Actions" node_paths=PackedStringArray("cameraTargetOffset", "directionSource")] +[node name="CharacterMovement" type="Node" parent="Player Character Controller/Character Actions" node_paths=PackedStringArray("cameraTargetOffset", "directionSource")] script = ExtResource("52_p06ew") inAirMultiply = 1.0 cameraTargetOffset = NodePath("../../CharacterBody3D/CameraTargetOffset") -directionSource = NodePath("../../../App/Camera Setup/Main Camera") +directionSource = NodePath("../../../Camera Setup/Main Camera") moveSpeed = 1000.0 controllerMovementType = SubResource("Resource_sbpj7") mouseKeyboardMovementType = SubResource("Resource_bco8n") @@ -1315,33 +2257,35 @@ lookAlwaysForward = true lookAlwaysForwardSmoothing = SubResource("Resource_arru6") metadata/_custom_type_script = "uid://df7kaqvmnho05" -[node name="MoveAndSlide" type="Node" parent="CharacterController/Character Actions"] +[node name="MoveAndSlide" type="Node" parent="Player Character Controller/Character Actions"] script = ExtResource("62_jr6gu") metadata/_custom_type_script = "uid://bw5ivesxk1mgg" -[node name="Graphics" type="Node3D" parent="CharacterController"] +[node name="Graphics" type="Node3D" parent="Player Character Controller"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -21.51627, 0.0002, 4.778489) -[node name="submarine" parent="CharacterController/Graphics" instance=ExtResource("63_7x7tw")] +[node name="Shake Container" type="Node3D" parent="Player Character Controller/Graphics"] -[node name="Shoot origin" type="Node3D" parent="CharacterController/Graphics"] +[node name="submarine" parent="Player Character Controller/Graphics/Shake Container" instance=ExtResource("63_7x7tw")] + +[node name="Shoot origin" type="Node3D" parent="Player Character Controller/Graphics/Shake Container"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.9602532, -3.5507507) -[node name="Laser Sound" type="AudioStreamPlayer3D" parent="CharacterController/Graphics/Shoot origin"] +[node name="Laser Sound" type="AudioStreamPlayer3D" parent="Player Character Controller/Graphics/Shake Container/Shoot origin"] stream = ExtResource("64_ijym8") unit_size = 50.0 max_db = 6.0 attenuation_filter_cutoff_hz = 20500.0 attenuation_filter_db = 0.0 -[node name="OmniLight3D" type="OmniLight3D" parent="CharacterController/Graphics/Shoot origin"] +[node name="OmniLight3D" type="OmniLight3D" parent="Player Character Controller/Graphics/Shake Container/Shoot origin"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.41921902, -1.3760681) light_color = Color(0, 0, 0, 1) light_energy = 16.0 omni_range = 10.0 omni_attenuation = 2.0 -[node name="Shoot Start" type="GPUParticles3D" parent="CharacterController/Graphics/Shoot origin"] +[node name="Shoot Start" type="GPUParticles3D" parent="Player Character Controller/Graphics/Shake Container/Shoot origin"] transform = Transform3D(2.047461, 0, 0, 0, 2.047461, 0, 0, 0, 2.047461, 0, -0.06592798, 0.74557495) material_override = SubResource("StandardMaterial3D_yl0vy") emitting = false @@ -1357,38 +2301,40 @@ local_coords = true process_material = SubResource("ParticleProcessMaterial_r4x67") draw_pass_1 = SubResource("CapsuleMesh_5x2te") -[node name="MeshInstance3D" type="MeshInstance3D" parent="CharacterController/Graphics"] +[node name="MeshInstance3D" type="MeshInstance3D" parent="Player Character Controller/Graphics/Shake Container"] transform = Transform3D(1, 0, 0, 0, 0.21541537, 0.9765225, 0, -0.9765225, 0.21541537, 0, 3.5647943, -1.686676) mesh = SubResource("CapsuleMesh_p2dwu") +skeleton = NodePath("../..") surface_material_override/0 = SubResource("StandardMaterial3D_p2dwu") -[node name="MeshInstance3D2" type="MeshInstance3D" parent="CharacterController/Graphics"] +[node name="MeshInstance3D2" type="MeshInstance3D" parent="Player Character Controller/Graphics/Shake Container"] transform = Transform3D(1, 0, 0, 0, 0.86602545, 0.5, 0, -0.5, 0.86602545, 0, 2.2688391, -0.308136) mesh = SubResource("CapsuleMesh_rq7a0") +skeleton = NodePath("../..") surface_material_override/0 = SubResource("StandardMaterial3D_rq7a0") -[node name="OmniLight3D" type="OmniLight3D" parent="CharacterController/Graphics"] +[node name="OmniLight3D" type="OmniLight3D" parent="Player Character Controller/Graphics/Shake Container"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.1785829, -5.5996704) light_energy = 16.0 -[node name="OmniLight3D4" type="OmniLight3D" parent="CharacterController/Graphics"] +[node name="OmniLight3D4" type="OmniLight3D" parent="Player Character Controller/Graphics/Shake Container"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -9.465935, -33.003204) light_color = Color(0.9490196, 0.63154453, 0.27450982, 1) light_energy = 16.0 light_bake_mode = 0 omni_range = 36.151 -[node name="OmniLight3D2" type="OmniLight3D" parent="CharacterController/Graphics"] +[node name="OmniLight3D2" type="OmniLight3D" parent="Player Character Controller/Graphics/Shake Container"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.6510639, 0.66943705, 5.870117) light_color = Color(1, 0.5980356, 0, 1) light_energy = 16.0 -[node name="OmniLight3D3" type="OmniLight3D" parent="CharacterController/Graphics"] +[node name="OmniLight3D3" type="OmniLight3D" parent="Player Character Controller/Graphics/Shake Container"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.6378956, 0.66943705, 5.870117) light_color = Color(1, 0.5980356, 0, 1) light_energy = 16.0 -[node name="SpotLight3D" type="SpotLight3D" parent="CharacterController/Graphics"] +[node name="SpotLight3D" type="SpotLight3D" parent="Player Character Controller/Graphics/Shake Container"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.729121, -7.3419495) light_color = Color(2.402, 2.402, 2.402, 1) light_energy = 4.0 @@ -1402,108 +2348,584 @@ spot_attenuation = 0.27 spot_angle = 41.85 spot_angle_attenuation = 3.138334 -[node name="MeshInstance3D3" type="MeshInstance3D" parent="CharacterController/Graphics"] +[node name="MeshInstance3D3" type="MeshInstance3D" parent="Player Character Controller/Graphics/Shake Container"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.6347885, 0.5986695, 5.657013) mesh = SubResource("QuadMesh_d0nnl") +skeleton = NodePath("../..") -[node name="MeshInstance3D4" type="MeshInstance3D" parent="CharacterController/Graphics"] +[node name="MeshInstance3D4" type="MeshInstance3D" parent="Player Character Controller/Graphics/Shake Container"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.6010628, 0.5986695, 5.657013) mesh = SubResource("QuadMesh_d0nnl") +skeleton = NodePath("../..") -[node name="Shoot Weapon" type="Node" parent="CharacterController" node_paths=PackedStringArray("onStart", "onActive")] +[node name="Shoot Weapon" type="Node" parent="Player Character Controller" node_paths=PackedStringArray("onStart", "onActive")] script = ExtResource("67_8o26s") sensor = SubResource("Resource_optxl") onStart = NodePath("Shoot Without CoolDown") onActive = NodePath("Shoot With CoolDown") metadata/_custom_type_script = "uid://88u2lx0pssal" -[node name="Shoot With CoolDown" type="Node" parent="CharacterController/Shoot Weapon" node_paths=PackedStringArray("action")] +[node name="Shoot With CoolDown" type="Node" parent="Player Character Controller/Shoot Weapon" node_paths=PackedStringArray("action")] script = ExtResource("71_d5wd3") action = NodePath("../On Shoot") coolDownDuration = SubResource("Resource_l3ad6") metadata/_custom_type_script = "uid://cbk1j230s8i68" -[node name="Shoot Without CoolDown" type="Node" parent="CharacterController/Shoot Weapon"] +[node name="Shoot Without CoolDown" type="Node" parent="Player Character Controller/Shoot Weapon"] script = ExtResource("39_u2omi") metadata/_custom_type_script = "uid://b4yjsis2fh64c" -[node name="ResetCoolDown" type="Node" parent="CharacterController/Shoot Weapon/Shoot Without CoolDown" node_paths=PackedStringArray("coolDown")] +[node name="ResetCoolDown" type="Node" parent="Player Character Controller/Shoot Weapon/Shoot Without CoolDown" node_paths=PackedStringArray("coolDown")] script = ExtResource("73_v11xn") coolDown = NodePath("../../Shoot With CoolDown") metadata/_custom_type_script = "uid://d6m0k7ql0mnr" -[node name="ActionReference" type="Node" parent="CharacterController/Shoot Weapon/Shoot Without CoolDown" node_paths=PackedStringArray("referencedAction")] +[node name="ActionReference" type="Node" parent="Player Character Controller/Shoot Weapon/Shoot Without CoolDown" node_paths=PackedStringArray("referencedAction")] script = ExtResource("74_6uxni") referencedAction = NodePath("../../Shoot With CoolDown") metadata/_custom_type_script = "uid://dxra6jao22it4" -[node name="On Shoot" type="Node" parent="CharacterController/Shoot Weapon"] +[node name="On Shoot" type="Node" parent="Player Character Controller/Shoot Weapon"] script = ExtResource("39_u2omi") metadata/_custom_type_script = "uid://b4yjsis2fh64c" -[node name="ShootLaser" type="Node" parent="CharacterController/Shoot Weapon/On Shoot" node_paths=PackedStringArray("projectileOrigin", "container")] +[node name="ShootLaser" type="Node" parent="Player Character Controller/Shoot Weapon/On Shoot" node_paths=PackedStringArray("projectileOrigin", "container")] script = ExtResource("75_13ojk") laserScene = ExtResource("76_1t1hx") -projectileOrigin = NodePath("../../../Graphics/Shoot origin") +projectileOrigin = NodePath("../../../Graphics/Shake Container/Shoot origin") speed = 1000.0 container = NodePath("../../../Projectiles") forwardFollowDistanceScale = 400.0 yOffset = 0.0 metadata/_custom_type_script = "uid://cdw4pq276w8om" -[node name="PlaySound" type="Node" parent="CharacterController/Shoot Weapon/On Shoot" node_paths=PackedStringArray("player")] +[node name="PlaySound" type="Node" parent="Player Character Controller/Shoot Weapon/On Shoot" node_paths=PackedStringArray("player")] script = ExtResource("77_we8s0") -player = NodePath("../../../Graphics/Shoot origin/Laser Sound") +player = NodePath("../../../Graphics/Shake Container/Shoot origin/Laser Sound") overdrivePreventionFlag = ExtResource("78_kn8hv") metadata/_custom_type_script = "uid://ddgf2mfdmqywc" -[node name="PlayParticles Shoot" type="Node" parent="CharacterController/Shoot Weapon/On Shoot" node_paths=PackedStringArray("particles3D")] +[node name="PlayParticles Shoot" type="Node" parent="Player Character Controller/Shoot Weapon/On Shoot" node_paths=PackedStringArray("particles3D")] script = ExtResource("79_qknju") -particles3D = NodePath("../../../Graphics/Shoot origin/Shoot Start") +particles3D = NodePath("../../../Graphics/Shake Container/Shoot origin/Shoot Start") timeLine = ExtResource("7_ctpa3") metadata/_custom_type_script = "uid://dnstanbmrqthf" -[node name="Animate Light" type="Node" parent="CharacterController/Shoot Weapon/On Shoot"] +[node name="Animate Light" type="Node" parent="Player Character Controller/Shoot Weapon/On Shoot"] script = ExtResource("80_dy41s") metadata/_custom_type_script = "uid://ceaglilesxsi4" -[node name="Flash Light" type="Node" parent="CharacterController/Shoot Weapon/On Shoot/Animate Light" node_paths=PackedStringArray("light3D")] +[node name="Flash Light" type="Node" parent="Player Character Controller/Shoot Weapon/On Shoot/Animate Light" node_paths=PackedStringArray("light3D")] script = ExtResource("81_esexe") -light3D = NodePath("../../../../Graphics/Shoot origin/OmniLight3D") +light3D = NodePath("../../../../Graphics/Shake Container/Shoot origin/OmniLight3D") tweenLightData = SubResource("Resource_w0075") tweenType = SubResource("Resource_1tsmc") metadata/_custom_type_script = "uid://bhn2p16isptba" -[node name="Dim Light" type="Node" parent="CharacterController/Shoot Weapon/On Shoot/Animate Light" node_paths=PackedStringArray("light3D")] +[node name="Dim Light" type="Node" parent="Player Character Controller/Shoot Weapon/On Shoot/Animate Light" node_paths=PackedStringArray("light3D")] script = ExtResource("81_esexe") -light3D = NodePath("../../../../Graphics/Shoot origin/OmniLight3D") +light3D = NodePath("../../../../Graphics/Shake Container/Shoot origin/OmniLight3D") tweenLightData = SubResource("Resource_d0nnl") tweenType = SubResource("Resource_hp4fx") metadata/_custom_type_script = "uid://bhn2p16isptba" -[node name="Projectiles" type="Node3D" parent="CharacterController"] +[node name="Projectiles" type="Node3D" parent="Player Character Controller"] -[node name="Pointer" type="Node3D" parent="CharacterController" node_paths=PackedStringArray("caster")] +[node name="Pointer" type="Node3D" parent="Player Character Controller" node_paths=PackedStringArray("caster")] script = ExtResource("84_4c23n") caster = NodePath("../CharacterBody3D/MultiRayCaster") defaultHighlighter = ExtResource("85_ytrge") metadata/_custom_type_script = "uid://bsq280ixlepp2" -[node name="On Start" type="Node" parent="."] -script = ExtResource("86_qk0v4") -metadata/_custom_type_script = "uid://dyf6ee3ov3ran" +[node name="Health" type="Node" parent="Player Character Controller" node_paths=PackedStringArray("onDamage")] +script = ExtResource("116_exiqy") +healthData = ExtResource("117_f87at") +currentHealth = 100 +onDamage = NodePath("On Damage") +metadata/_custom_type_script = "uid://cbbesrlha8kor" -[node name="PlayMusic" type="Node" parent="On Start" node_paths=PackedStringArray("music")] -script = ExtResource("87_bwq5n") -music = NodePath("AudioStreamPlayer") -metadata/_custom_type_script = "uid://cyicertlwo4m0" +[node name="On Damage" type="Node" parent="Player Character Controller/Health"] +script = ExtResource("80_dy41s") +metadata/_custom_type_script = "uid://ceaglilesxsi4" -[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="On Start/PlayMusic"] -stream = ExtResource("88_ci6aj") -volume_db = -6.0 +[node name="SyncHealthUI" type="Node" parent="Player Character Controller/Health/On Damage" node_paths=PackedStringArray("text", "health")] +script = ExtResource("120_bjuy7") +text = NodePath("../../../../UI/Game UI/Full Screen Region/Left Bottom/Health Counter") +health = NodePath("../..") +metadata/_custom_type_script = "uid://5vvwb74foskj" + +[node name="PlaySound" type="Node" parent="Player Character Controller/Health/On Damage" node_paths=PackedStringArray("player")] +script = ExtResource("77_we8s0") +player = NodePath("../../../CharacterBody3D/AudioStreamPlayer3D") +metadata/_custom_type_script = "uid://ddgf2mfdmqywc" + +[node name="PlayCameraEffect" type="Node" parent="Player Character Controller/Health/On Damage"] +script = ExtResource("121_mvod7") +cameraEffect = ExtResource("122_mvod7") +useActiveCameraSlot = true +metadata/_custom_type_script = "uid://c1ivlrrt71nwp" + +[node name="Parallel" type="Node" parent="Player Character Controller/Health/On Damage"] +script = ExtResource("83_f87at") +metadata/_custom_type_script = "uid://dy65lu5p2yf3j" + +[node name="Shake" type="Node" parent="Player Character Controller/Health/On Damage/Parallel" node_paths=PackedStringArray("targets")] +script = ExtResource("84_whjfm") +shakeEffect = SubResource("Resource_d5wd3") +targets = [NodePath("../../../../Graphics/Shake Container")] +metadata/_custom_type_script = "uid://bnhnintao4qu0" + +[node name="Flash2" type="Node" parent="Player Character Controller/Health/On Damage/Parallel" node_paths=PackedStringArray("targets")] +script = ExtResource("87_wrjba") +flashEffect = SubResource("Resource_qknju") +targets = [NodePath("../../../../Graphics/Shake Container/submarine")] +includeChildren = true +metadata/_custom_type_script = "uid://dnwqkymbre3vb" [node name="Level" type="Node" parent="."] +[node name="LevelGenerator" type="Node" parent="Level" node_paths=PackedStringArray("textureAttributes", "walls")] +script = ExtResource("108_axjwg") +numWalls = 98 +numRooms = 500 +minRadius = 300.0 +maxRadius = 3000.0 +roomCenterMaterial = SubResource("StandardMaterial3D_uepmj") +lowPolyMaterial = ExtResource("102_85m4o") +seed = 1985 +wallThickness = 5.0 +boundaryDensity = 1000.0 +boundarySize = 100.0 +wall = ExtResource("109_nhp6a") +wallSize = 30.0 +roomCenter = ExtResource("110_jbb2a") +rooms = [SubResource("Resource_3t4rw"), SubResource("Resource_ypsyk")] +textureAttributes = NodePath("../Walls Texture Attributes/TextureAttributes") +walls = [NodePath("Wall 0"), NodePath("Wall 1"), NodePath("Wall 2"), NodePath("Wall 3"), NodePath("Wall 4"), NodePath("Wall 5"), NodePath("Wall 6"), NodePath("Wall 7"), NodePath("Wall 8"), NodePath("Wall 9"), NodePath("Wall 10"), NodePath("Wall 11"), NodePath("Wall 12"), NodePath("Wall 13"), NodePath("Wall 14"), NodePath("Wall 15"), NodePath("Wall 16"), NodePath("Wall 17"), NodePath("Wall 18"), NodePath("Wall 19"), NodePath("Wall 20"), NodePath("Wall 21"), NodePath("Wall 22"), NodePath("Wall 23"), NodePath("Wall 24"), NodePath("Wall 25"), NodePath("Wall 26"), NodePath("Wall 27"), NodePath("Wall 28"), NodePath("Wall 29"), NodePath("Wall 30"), NodePath("Wall 31"), NodePath("Wall 32"), NodePath("Wall 33"), NodePath("Wall 34"), NodePath("Wall 35"), NodePath("Wall 36"), NodePath("Wall 37"), NodePath("Wall 38"), NodePath("Wall 39"), NodePath("Wall 40"), NodePath("Wall 41"), NodePath("Wall 42"), NodePath("Wall 43"), NodePath("Wall 44"), NodePath("Wall 45"), NodePath("Wall 46"), NodePath("Wall 47"), NodePath("Wall 48"), NodePath("Wall 49"), NodePath("Wall 50"), NodePath("Wall 51"), NodePath("Wall 52"), NodePath("Wall 53"), NodePath("Wall 54"), NodePath("Wall 55"), NodePath("Wall 56"), NodePath("Wall 57"), NodePath("Wall 58"), NodePath("Wall 59"), NodePath("Wall 60"), NodePath("Wall 61"), NodePath("Wall 62"), NodePath("Wall 63"), NodePath("Wall 64"), NodePath("Wall 65"), NodePath("Wall 66"), NodePath("Wall 67"), NodePath("Wall 68"), NodePath("Wall 69"), NodePath("Wall 70"), NodePath("Wall 71"), NodePath("Wall 72"), NodePath("Wall 73"), NodePath("Wall 74"), NodePath("Wall 75"), NodePath("Wall 76"), NodePath("Wall 77"), NodePath("Wall 78"), NodePath("Wall 79"), NodePath("Wall 80"), NodePath("Wall 81"), NodePath("Wall 82"), NodePath("Wall 83"), NodePath("Wall 84"), NodePath("Wall 85"), NodePath("Wall 86"), NodePath("Wall 87"), NodePath("Wall 88"), NodePath("Wall 89"), NodePath("Wall 90"), NodePath("Wall 91"), NodePath("Wall 92"), NodePath("Wall 93"), NodePath("Wall 94"), NodePath("Wall 95"), NodePath("Wall 96"), NodePath("Wall 97")] +metadata/_custom_type_script = "uid://dyruyvxjkubdl" + +[node name="Wall 0" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.9861433, 0, 0.1658959, 0, 1, 0, -0.1658959, 0, -0.9861433, 2638.8499, 0, 443.9264) + +[node name="Wall 1" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.04141009, 0, 0.9991422, 0, 1, 0, -0.9991422, 0, -0.04141009, 2163.7573, 0, 29.94986) + +[node name="Wall 2" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.8775824, 0, 0.47942588, 0, 1, 0, -0.47942588, 0, -0.8775824, 2635.3281, 0, 1439.6864) + +[node name="Wall 3" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.55553925, 0, 0.83149034, 0, 1, 0, -0.83149034, 0, -0.55553925, 2048.9001, 0, 1003.5991) + +[node name="Wall 4" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.48235855, 0, 0.8759739, 0, 1, 0, -0.8759739, 0, 0.48235855, 2052.4219, 0, 593.8558) + +[node name="Wall 5" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.6724122, 0, 0.7401769, 0, 1, 0, -0.7401769, 0, -0.6724122, 2416.6233, 0, 2660.1667) + +[node name="Wall 6" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.1329394, 0, 0.99112415, 0, 1, 0, -0.99112415, 0, 0.1329394, 2100.323, 0, 1710.2019) + +[node name="Wall 7" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.3932189, 0, 0.91944486, 0, 1, 0, -0.91944486, 0, -0.3932189, 1156.8474, 0, 2705.003) + +[node name="Wall 8" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.9676996, 0, 0.2521062, 0, 1, 0, -0.2521062, 0, 0.9676996, 1230.417, 0, 2262.6519) + +[node name="Wall 9" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.9982347, 0, -0.05939254, 0, 1, 0, 0.05939254, 0, 0.9982347, 1748.4082, 0, 2217.8154) + +[node name="Wall 10" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.07073729, 0, 0.997495, 0, 1, 0, -0.997495, 0, -0.07073729, 281.25858, 0, 3966.149) + +[node name="Wall 11" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.4932147, 0, 0.8699076, 0, 1, 0, -0.8699076, 0, 0.4932147, 572.188, 0, 2875.8699) + +[node name="Wall 12" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.9995735, 0, 0.029202126, 0, 1, 0, -0.029202126, 0, 0.9995735, 922.94104, 0, 2297.8955) + +[node name="Wall 13" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.8696658, 0, -0.493641, 0, 1, 0, 0.493641, 0, 0.8696658, 970.1967, 0, 2310.726) + +[node name="Wall 14" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.2595314, 0, 0.96573466, 0, 1, 0, -0.96573466, 0, 0.2595314, -759.31647, 0, 2825.469) + +[node name="Wall 15" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.9334315, 0, 0.35875574, 0, 1, 0, -0.35875574, 0, 0.9334315, -442.59497, 0, 2470.3296) + +[node name="Wall 16" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.37851435, 0, -0.9255954, 0, 1, 0, 0.9255954, 0, 0.37851435, 24.527374, 0, 2914.3228) + +[node name="Wall 17" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.5612291, 0, 0.8276605, 0, 1, 0, -0.8276605, 0, 0.5612291, -1830.6853, 0, 2699.7622) + +[node name="Wall 18" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.9488487, 0, 0.31573102, 0, 1, 0, -0.31573102, 0, 0.9488487, -1420.237, 0, 2264.2788) + +[node name="Wall 19" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.8567944, 0, -0.51565814, 0, 1, 0, 0.51565814, 0, 0.8567944, -980.4491, 0, 2389.9854) + +[node name="Wall 20" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.8011436, 0, 0.5984722, 0, 1, 0, -0.5984722, 0, 0.8011436, -2648.0586, 0, 1978.1587) + +[node name="Wall 21" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.7115049, 0, -0.7026812, 0, 1, 0, 0.7026812, 0, 0.7115049, -1898.0403, 0, 1988.7417) + +[node name="Wall 22" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.95286316, 0, 0.30340043, 0, 1, 0, -0.30340043, 0, 0.95286316, -2783.9775, 0, 886.4442) + +[node name="Wall 23" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.97074383, 0, -0.24011758, 0, 1, 0, 0.24011758, 0, 0.97074383, -2253.6973, 0, 856.3691) + +[node name="Wall 24" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.28111422, 0, -0.9596743, 0, 1, 0, 0.9596743, 0, -0.28111422, -2117.7783, 0, 1290.3818) + +[node name="Wall 25" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.99968565, 0, -0.025071615, 0, 1, 0, 0.025071615, 0, 0.99968565, -2998.7231, 0, -75.20602) + +[node name="Wall 26" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.44301683, 0, -0.8965133, 0, 1, 0, 0.8965133, 0, 0.44301683, -2713.7236, 0, 361.12686) + +[node name="Wall 27" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.93645686, 0, -0.35078284, 0, 1, 0, 0.35078284, 0, 0.93645686, -3713.2793, 0, -1390.9408) + +[node name="Wall 28" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.8237239, 0, -0.5669911, 0, 1, 0, 0.5669911, 0, 0.8237239, -2975.3325, 0, -1034.09) + +[node name="Wall 29" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.05627047, 0, -0.9984156, 0, 1, 0, 0.9984156, 0, -0.05627047, -2736.9443, 0, -538.97375) + +[node name="Wall 30" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.763382, 0, -0.6459473, 0, 1, 0, 0.6459473, 0, -0.763382, -2841.6868, 0, -146.87637) + +[node name="Wall 31" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.77013654, 0, -0.6378791, 0, 1, 0, 0.6378791, 0, 0.77013654, -2867.0786, 0, -2374.7056) + +[node name="Wall 32" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.4668841, 0, -0.88431853, 0, 1, 0, 0.88431853, 0, 0.4668841, -2482.0527, 0, -1860.6199) + +[node name="Wall 33" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.9510121, 0, -0.30915377, 0, 1, 0, 0.30915377, 0, -0.9510121, -2765.3027, 0, -1362.1504) + +[node name="Wall 34" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.5190354, 0, -0.8547527, 0, 1, 0, 0.8547527, 0, 0.5190354, -1528.3616, 0, -2516.9204) + +[node name="Wall 35" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.9839063, 0, 0.17868496, 0, 1, 0, -0.17868496, 0, -0.9839063, -1920.7217, 0, -2072.2803) + +[node name="Wall 36" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.21079578, 0, -0.9775301, 0, 1, 0, 0.9775301, 0, 0.21079578, -649.0725, 0, -3009.9648) + +[node name="Wall 37" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.08747133, 0, -0.99616706, 0, 1, 0, 0.99616706, 0, 0.08747133, -606.6659, 0, -2653.376) + +[node name="Wall 38" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.4172591, 0, -0.90878755, 0, 1, 0, 0.90878755, 0, -0.4172591, -733.16064, 0, -2056.4807) + +[node name="Wall 39" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.9162698, 0, 0.4005617, 0, 1, 0, -0.4005617, 0, -0.9162698, -951.1298, 0, -1759.0125) + +[node name="Wall 40" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.7274099, 0, 0.6862032, 0, 1, 0, -0.6862032, 0, -0.7274099, -1097.5884, 0, -1862.8629) + +[node name="Wall 41" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.120649315, 0, -0.9926952, 0, 1, 0, 0.9926952, 0, -0.120649315, 444.39667, 0, -3656.4585) + +[node name="Wall 42" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.97665006, 0, -0.21483636, 0, 1, 0, 0.21483636, 0, -0.97665006, -124.00336, 0, -3034.5532) + +[node name="Wall 43" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.43881336, 0, -0.8985782, 0, 1, 0, 0.8985782, 0, -0.43881336, 1269.3301, 0, -2599.265) + +[node name="Wall 44" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.69459754, 0, 0.7193985, 0, 1, 0, -0.7193985, 0, -0.69459754, 704.746, 0, -2434.8896) + +[node name="Wall 45" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.0020122952, 0, 0.999998, 0, 1, 0, -0.999998, 0, -0.0020122952, 382.72943, 0, -2956.9736) + +[node name="Wall 46" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.70866954, 0, -0.70554054, 0, 1, 0, 0.70554054, 0, -0.70866954, 2338.7114, 0, -2328.3828) + +[node name="Wall 47" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.8535917, 0, 0.5209427, 0, 1, 0, -0.5209427, 0, -0.8535917, 1317.6946, 0, -1728.967) + +[node name="Wall 48" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.14581299, 0, 0.9893122, 0, 1, 0, -0.9893122, 0, -0.14581299, 1042.1742, 0, -1994.6238) + +[node name="Wall 49" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.9005116, 0, -0.43483195, 0, 1, 0, 0.43483195, 0, -0.9005116, 2503.252, 0, -1208.7511) + +[node name="Wall 50" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.451768, 0, 0.89213544, 0, 1, 0, -0.89213544, 0, -0.451768, 1741.9634, 0, -1245.5271) + +[node name="Wall 51" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.9899925, 0, -0.14112, 0, 1, 0, 0.14112, 0, -0.9899925, 2624.9077, 0, -374.17145) + +[node name="Wall 52" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.47502896, 0, 0.87997013, 0, 1, 0, -0.87997013, 0, -0.47502896, 2025.6968, 0, -536.37256) + +[node name="Wall 53" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.03190603, 0, 0.99949086, 0, 1, 0, -0.99949086, 0, 0.03190603, 1904.0413, 0, -843.4473) + +[node name="Wall 54" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.37715214, 0, 0.92615134, 0, 1, 0, -0.92615134, 0, 0.37715214, -606.01636, 0, -759.93396) + +[node name="Wall 55" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.99750906, 0, -0.070538186, 0, 1, 0, 0.070538186, 0, 0.99750906, -403.4683, 0, -1173.8547) + +[node name="Wall 56" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.74563074, 0, -0.66635936, 0, 1, 0, 0.66635936, 0, 0.74563074, -10.6041565, 0, -849.9467) + +[node name="Wall 57" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.10307517, 0, -0.99467355, 0, 1, 0, 0.99467355, 0, 0.10307517, 399.24402, 0, -45.66577) + +[node name="Wall 58" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.92580575, 0, 0.37799963, 0, 1, 0, -0.37799963, 0, -0.92580575, 129.27994, 0, 306.39563) + +[node name="Wall 59" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.74767303, 0, 0.66406703, 0, 1, 0, -0.66406703, 0, -0.74767303, -483.1163, 0, -83.96466) + +[node name="Wall 60" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.78612566, 0, -0.6180667, 0, 1, 0, 0.6180667, 0, 0.78612566, -2252.2646, 0, -1477.0747) + +[node name="Wall 61" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.16585876, 0, -0.9861495, 0, 1, 0, 0.9861495, 0, -0.16585876, -2246.3774, 0, -1197.963) + +[node name="Wall 62" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.975253, 0, -0.22109188, 0, 1, 0, 0.22109188, 0, -0.975253, -2503.0679, 0, -906.5877) + +[node name="Wall 63" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.8939858, 0, 0.4480953, 0, 1, 0, -0.4480953, 0, 0.8939858, 343.7678, 0, -1529.4983) + +[node name="Wall 64" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.93217343, 0, -0.362012, 0, 1, 0, 0.362012, 0, -0.93217343, 1714.3384, 0, -693.5814) + +[node name="Wall 65" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.98381245, 0, -0.17920126, 0, 1, 0, 0.17920126, 0, -0.98381245, 1210.3619, 0, -563.1727) + +[node name="Wall 66" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.9991168, 0, 0.042019304, 0, 1, 0, -0.042019304, 0, -0.9991168, 621.4238, 0, -516.92706) + +[node name="Wall 67" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.7479157, 0, -0.66379374, 0, 1, 0, 0.66379374, 0, 0.7479157, -2148.3413, 0, -832.3396) + +[node name="Wall 68" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.09708913, 0, -0.9952757, 0, 1, 0, 0.9952757, 0, 0.09708913, -1985.0947, 0, -458.6328) + +[node name="Wall 69" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.99988234, 0, 0.015340593, 0, 1, 0, -0.015340593, 0, -0.99988234, -2357.7808, 0, -214.2158) + +[node name="Wall 70" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.8016886, 0, 0.5977419, 0, 1, 0, -0.5977419, 0, 0.8016886, 241.66989, 0, 1025.0858) + +[node name="Wall 71" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.9977979, 0, -0.0663276, 0, 1, 0, 0.0663276, 0, 0.9977979, 672.05945, 0, 751.4834) + +[node name="Wall 72" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.9420594, 0, -0.3354461, 0, 1, 0, 0.3354461, 0, 0.9420594, 971.85693, 0, 841.3673) + +[node name="Wall 73" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.19133195, 0, -0.98152536, 0, 1, 0, 0.98152536, 0, -0.19133195, 1079.899, 0, 1612.2952) + +[node name="Wall 74" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.9682609, 0, 0.24994178, 0, 1, 0, -0.24994178, 0, -0.9682609, 471.02875, 0, 2187.9783) + +[node name="Wall 75" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.21795955, 0, 0.9759578, 0, 1, 0, -0.9759578, 0, -0.21795955, -43.957783, 0, 1689.968) + +[node name="Wall 76" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.0027795557, 0, -0.9999961, 0, 1, 0, 0.9999961, 0, 0.0027795557, 894.7624, 0, -96.433716) + +[node name="Wall 77" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.35032356, 0, -0.93662876, 0, 1, 0, 0.93662876, 0, -0.35032356, 813.10065, 0, 533.98334) + +[node name="Wall 78" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.46818274, 0, 0.88363165, 0, 1, 0, -0.88363165, 0, -0.46818274, 531.5413, 0, 592.32764) + +[node name="Wall 79" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.2837337, 0, 0.95890313, 0, 1, 0, -0.95890313, 0, 0.2837337, -337.32266, 0, 671.25214) + +[node name="Wall 80" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.93347263, 0, 0.3586486, 0, 1, 0, -0.3586486, 0, -0.93347263, -307.20828, 0, 1234.6582) + +[node name="Wall 81" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.6245332, 0, 0.7809983, 0, 1, 0, -0.7809983, 0, 0.6245332, -76.63187, 0, 2226.4312) + +[node name="Wall 82" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.95953405, 0, -0.2815926, 0, 1, 0, 0.2815926, 0, -0.95953405, -1612.2593, 0, -1614.5176) + +[node name="Wall 83" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.56014377, 0, -0.8283954, 0, 1, 0, 0.8283954, 0, -0.56014377, 1211.4989, 0, -154.12732) + +[node name="Wall 84" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.18875507, 0, 0.9820242, 0, 1, 0, -0.9820242, 0, 0.18875507, -1156.6614, 0, 1617.1592) + +[node name="Wall 85" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.9668897, 0, -0.25519478, 0, 1, 0, 0.25519478, 0, 0.9668897, -762.86426, 0, 1093.1388) + +[node name="Wall 86" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.6616622, 0, -0.74980205, 0, 1, 0, 0.74980205, 0, 0.6616622, -1685.3003, 0, 103.9144) + +[node name="Wall 87" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.12344316, 0, -0.99235165, 0, 1, 0, 0.99235165, 0, -0.12344316, -1423.7866, 0, 527.2394) + +[node name="Wall 88" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.89871794, 0, -0.4385271, 0, 1, 0, 0.4385271, 0, -0.89871794, -1723.0234, 0, 777.7837) + +[node name="Wall 89" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.9621938, 0, -0.27236578, 0, 1, 0, 0.27236578, 0, -0.9621938, 1889.9335, 0, 831.8963) + +[node name="Wall 90" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.991287, 0, -0.1317197, 0, 1, 0, 0.1317197, 0, -0.991287, 1533.0675, 0, 884.9045) + +[node name="Wall 91" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.48193848, 0, 0.8762051, 0, 1, 0, -0.8762051, 0, -0.48193848, -830.01227, 0, -1632.4153) + +[node name="Wall 92" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.9291405, 0, 0.3697268, 0, 1, 0, -0.3697268, 0, 0.9291405, -99.933075, 0, -2575.796) + +[node name="Wall 93" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.6875544, 0, 0.72613287, 0, 1, 0, -0.72613287, 0, -0.6875544, -606.5925, 0, -1355.821) + +[node name="Wall 94" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.7204896, 0, 0.6934657, 0, 1, 0, -0.6934657, 0, -0.7204896, -1239.7097, 0, 829.02405) + +[node name="Wall 95" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.64101434, 0, 0.7675289, 0, 1, 0, -0.7675289, 0, 0.64101434, -1092.7349, 0, 36.13733) + +[node name="Wall 96" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(-0.8306775, 0, -0.5567539, 0, 1, 0, 0.5567539, 0, -0.8306775, -1393.1055, 0, -1122.2969) + +[node name="Wall 97" parent="Level/LevelGenerator" instance=ExtResource("109_nhp6a")] +transform = Transform3D(0.27322543, 0, 0.96195006, 0, 1, 0, -0.96195006, 0, 0.27322543, 1659.7749, 0, 1521.7457) + +[node name="LowPoly" type="MeshInstance3D" parent="Level/LevelGenerator"] +mesh = SubResource("ArrayMesh_1m6i4") + +[node name="Room 19" type="Node3D" parent="Level/LevelGenerator"] +script = ExtResource("116_ctpa3") + +[node name="Scene 19" parent="Level/LevelGenerator/Room 19" instance=ExtResource("113_5p27p")] + +[node name="Room 20" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2585.4521, 0, -1255.7612) +script = ExtResource("116_ctpa3") + +[node name="Scene 20" parent="Level/LevelGenerator/Room 20" instance=ExtResource("113_5p27p")] + +[node name="Room 21" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 835.1885, 0, -934.54395) +script = ExtResource("116_ctpa3") + +[node name="Scene 21" parent="Level/LevelGenerator/Room 21" instance=ExtResource("110_jbb2a")] + +[node name="Room 22" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2426.82, 0, -556.02295) +script = ExtResource("116_ctpa3") + +[node name="Scene 22" parent="Level/LevelGenerator/Room 22" instance=ExtResource("110_jbb2a")] + +[node name="Room 23" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 687.8154, 0, 1595.313) +script = ExtResource("116_ctpa3") + +[node name="Scene 23" parent="Level/LevelGenerator/Room 23" instance=ExtResource("110_jbb2a")] + +[node name="Room 24" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 799.3684, 0, -82.83618) +script = ExtResource("116_ctpa3") + +[node name="Scene 24" parent="Level/LevelGenerator/Room 24" instance=ExtResource("110_jbb2a")] + +[node name="Room 25" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -177.50488, 0, 434.74927) +script = ExtResource("116_ctpa3") + +[node name="Scene 25" parent="Level/LevelGenerator/Room 25" instance=ExtResource("113_5p27p")] + +[node name="Room 26" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 373.8689, 0, 2811.5234) +script = ExtResource("116_ctpa3") + +[node name="Scene 26" parent="Level/LevelGenerator/Room 26" instance=ExtResource("113_5p27p")] + +[node name="Room 27" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2115.8296, 0, -1853.079) +script = ExtResource("116_ctpa3") + +[node name="Scene 27" parent="Level/LevelGenerator/Room 27" instance=ExtResource("113_5p27p")] + +[node name="Room 28" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 990.23047, 0, -83.3667) +script = ExtResource("116_ctpa3") + +[node name="Scene 28" parent="Level/LevelGenerator/Room 28" instance=ExtResource("110_jbb2a")] + +[node name="Room 29" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -746.47314, 0, 1915.6309) +script = ExtResource("116_ctpa3") + +[node name="Scene 29" parent="Level/LevelGenerator/Room 29" instance=ExtResource("113_5p27p")] + +[node name="Room 30" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2437.2734, 0, 125.3125) +script = ExtResource("116_ctpa3") + +[node name="Scene 30" parent="Level/LevelGenerator/Room 30" instance=ExtResource("110_jbb2a")] + +[node name="Room 31" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1228.2476, 0, 77.57568) +script = ExtResource("116_ctpa3") + +[node name="Scene 31" parent="Level/LevelGenerator/Room 31" instance=ExtResource("113_5p27p")] + +[node name="Room 32" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 161.17798, 0, -2279.2488) +script = ExtResource("116_ctpa3") + +[node name="Scene 32" parent="Level/LevelGenerator/Room 32" instance=ExtResource("110_jbb2a")] + +[node name="Room 33" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -342.71606, 0, 385.86426) +script = ExtResource("116_ctpa3") + +[node name="Scene 33" parent="Level/LevelGenerator/Room 33" instance=ExtResource("113_5p27p")] + +[node name="Room 34" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1907.0511, 0, -1141.6619) +script = ExtResource("116_ctpa3") + +[node name="Scene 34" parent="Level/LevelGenerator/Room 34" instance=ExtResource("110_jbb2a")] + +[node name="Room 35" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1721.7881, 0, 1821.1157) +script = ExtResource("116_ctpa3") + +[node name="Scene 35" parent="Level/LevelGenerator/Room 35" instance=ExtResource("110_jbb2a")] + +[node name="Room 36" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -113.953125, 0, -2970.6665) +script = ExtResource("116_ctpa3") + +[node name="Scene 36" parent="Level/LevelGenerator/Room 36" instance=ExtResource("110_jbb2a")] + +[node name="Room 37" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1449.6543, 0, 1743.8208) +script = ExtResource("116_ctpa3") + +[node name="Scene 37" parent="Level/LevelGenerator/Room 37" instance=ExtResource("110_jbb2a")] + +[node name="Room 38" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1648.2714, 0, 1742.2959) +script = ExtResource("116_ctpa3") + +[node name="Scene 38" parent="Level/LevelGenerator/Room 38" instance=ExtResource("110_jbb2a")] + +[node name="Room 39" type="Node3D" parent="Level/LevelGenerator"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1570.5186, 0, -639.55493) +script = ExtResource("116_ctpa3") + +[node name="Scene 39" parent="Level/LevelGenerator/Room 39" instance=ExtResource("113_5p27p")] + [node name="Static" type="Node" parent="Level"] [node name="Ground" type="MeshInstance3D" parent="Level/Static"] @@ -1524,13 +2946,13 @@ size = Vector3(2000, 2000, 2000) script = ExtResource("91_21gf2") foliage = [SubResource("Resource_hl0q2")] qualitySettingsAll = [] -camera = NodePath("../../../App/Camera Setup/Main Camera") +camera = NodePath("../../../Camera Setup/Main Camera") globalMapSizeXZ = Vector2(1024, 1024) maxHeight = 0.0 noise = ExtResource("96_n8ds8") metadata/_custom_type_script = "uid://b1sjdhnriaeg6" -[node name="@GPUParticles3D@30194" type="GPUParticles3D" parent="Level/Static/FoliageRenderer"] +[node name="@GPUParticles3D@35459" type="GPUParticles3D" parent="Level/Static/FoliageRenderer"] material_override = SubResource("StandardMaterial3D_6oc68") custom_aabb = AABB(-5000, -5000, -5000, 10000, 10000, 10000) amount = 1600 @@ -1539,8 +2961,8 @@ explosiveness = 1.0 fixed_fps = 0 interpolate = false fract_delta = false -process_material = SubResource("ShaderMaterial_rsbf7") -draw_pass_1 = SubResource("ArrayMesh_lc6ck") +process_material = SubResource("ShaderMaterial_bwq5n") +draw_pass_1 = SubResource("ArrayMesh_g3xcp") [node name="Foliage Model" type="MeshInstance3D" parent="Level/Static"] visible = false @@ -1583,6 +3005,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14.819489, 63.647366, 16.743 transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 107.57767, 0, 0) [node name="CollisionShape3D" type="CollisionShape3D" parent="Level/Interactive/Pointable"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.12278938, 0) shape = SubResource("CapsuleShape3D_hp4fx") [node name="Graphics" type="MeshInstance3D" parent="Level/Interactive/Pointable"] @@ -1591,12 +3014,12 @@ surface_material_override/0 = SubResource("StandardMaterial3D_r4x67") [node name="Pointable" type="Node3D" parent="Level/Interactive/Pointable" node_paths=PackedStringArray("highlightTargets")] script = ExtResource("99_dflt5") -highlightTargets = [null] +highlightTargets = [NodePath("../Graphics")] metadata/_custom_type_script = "uid://dla1wn2mlw2d0" -[node name="Texture Attributes" type="Node" parent="."] +[node name="Walls Texture Attributes" type="Node" parent="Level"] -[node name="TextureAttributes" type="Node" parent="Texture Attributes"] +[node name="TextureAttributes" type="Node" parent="Level/Walls Texture Attributes"] script = ExtResource("100_a74kh") image = SubResource("Image_tr4pg") format = 5 @@ -1605,25 +3028,10 @@ testIndex = 50 allValue = Color(1, 1, 1, 1) metadata/_custom_type_script = "uid://r5veisahx0in" -[node name="OnReady" type="Node" parent="Texture Attributes"] -script = ExtResource("86_qk0v4") -metadata/_custom_type_script = "uid://dyf6ee3ov3ran" - -[node name="ActionReference" type="Node" parent="Texture Attributes/OnReady" node_paths=PackedStringArray("referencedAction")] -script = ExtResource("74_6uxni") -referencedAction = NodePath("../../../Research/LevelGenerator") -metadata/_custom_type_script = "uid://dxra6jao22it4" - -[node name="AssignTextureAttributesTexture" type="Node" parent="Texture Attributes/OnReady" node_paths=PackedStringArray("textureAttributes")] -script = ExtResource("101_nmwjv") -textureAttributes = NodePath("../../TextureAttributes") -material = ExtResource("102_85m4o") -texturePropertyName = SubResource("Resource_qnc2f") -metadata/_custom_type_script = "uid://drd58qb2u7vwr" - [node name="Research" type="Node3D" parent="."] [node name="Spline" type="Node3D" parent="Research"] +visible = false script = ExtResource("104_tcyxu") autoOrienation = true metadata/_custom_type_script = "uid://c3c8limywowjv" @@ -1655,6 +3063,7 @@ output = NodePath("Spline MeshInstance") metadata/_custom_type_script = "uid://dw2p3gdt848qc" [node name="Spline MeshInstance" type="MeshInstance3D" parent="Research/SplineMesh"] +visible = false mesh = SubResource("ArrayMesh_pnu6s") [node name="OnProcess" type="Node" parent="Research/SplineMesh"] @@ -1665,405 +3074,3 @@ metadata/_custom_type_script = "uid://cl36x2jgfuypo" script = ExtResource("74_6uxni") referencedAction = NodePath("../..") metadata/_custom_type_script = "uid://dxra6jao22it4" - -[node name="LevelGenerator" type="Node" parent="Research" node_paths=PackedStringArray("textureAttributes", "walls")] -script = ExtResource("108_axjwg") -numWalls = 80 -numRooms = 200 -minRadius = 300.0 -maxRadius = 1500.0 -roomCenterMaterial = SubResource("StandardMaterial3D_uepmj") -lowPolyMaterial = ExtResource("102_85m4o") -seed = 1985 -wallThickness = 5.0 -boundaryDensity = 1000.0 -boundarySize = 100.0 -wall = ExtResource("109_nhp6a") -wallSize = 30.0 -roomCenter = ExtResource("110_jbb2a") -rooms = [SubResource("Resource_3t4rw"), SubResource("Resource_ypsyk")] -textureAttributes = NodePath("../../Texture Attributes/TextureAttributes") -walls = [NodePath("Wall 0"), NodePath("Wall 1"), NodePath("Wall 2"), NodePath("Wall 3"), NodePath("Wall 4"), NodePath("Wall 5"), NodePath("Wall 6"), NodePath("Wall 7"), NodePath("Wall 8"), NodePath("Wall 9"), NodePath("Wall 10"), NodePath("Wall 11"), NodePath("Wall 12"), NodePath("Wall 13"), NodePath("Wall 14"), NodePath("Wall 15"), NodePath("Wall 16"), NodePath("Wall 17"), NodePath("Wall 18"), NodePath("Wall 19"), NodePath("Wall 20"), NodePath("Wall 21"), NodePath("Wall 22"), NodePath("Wall 23"), NodePath("Wall 24"), NodePath("Wall 25"), NodePath("Wall 26"), NodePath("Wall 27"), NodePath("Wall 28"), NodePath("Wall 29"), NodePath("Wall 30"), NodePath("Wall 31"), NodePath("Wall 32"), NodePath("Wall 33"), NodePath("Wall 34"), NodePath("Wall 35"), NodePath("Wall 36"), NodePath("Wall 37"), NodePath("Wall 38"), NodePath("Wall 39"), NodePath("Wall 40"), NodePath("Wall 41"), NodePath("Wall 42"), NodePath("Wall 43"), NodePath("Wall 44"), NodePath("Wall 45"), NodePath("Wall 46"), NodePath("Wall 47"), NodePath("Wall 48"), NodePath("Wall 49"), NodePath("Wall 50"), NodePath("Wall 51"), NodePath("Wall 52"), NodePath("Wall 53"), NodePath("Wall 54"), NodePath("Wall 55"), NodePath("Wall 56"), NodePath("Wall 57"), NodePath("Wall 58"), NodePath("Wall 59"), NodePath("Wall 60"), NodePath("Wall 61"), NodePath("Wall 62"), NodePath("Wall 63"), NodePath("Wall 64"), NodePath("Wall 65"), NodePath("Wall 66"), NodePath("Wall 67"), NodePath("Wall 68"), NodePath("Wall 69"), NodePath("Wall 70"), NodePath("Wall 71"), NodePath("Wall 72"), NodePath("Wall 73"), NodePath("Wall 74"), NodePath("Wall 75"), NodePath("Wall 76"), NodePath("Wall 77"), NodePath("Wall 78"), NodePath("Wall 79")] -metadata/_custom_type_script = "uid://dyruyvxjkubdl" - -[node name="Wall 0" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-32.979717, 0, 0.32719475, 0, 1, 0, -11.419347, 0, -0.9449569, 2216.0032, 0, 767.2991) - -[node name="Wall 1" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-20.17935, 0, 0.5019052, 0, 1, 0, -11.709857, 0, -0.86492264, 1418.6171, 0, 420.36108) - -[node name="Wall 2" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-0.5265908, 0, 0.9992269, 0, 1, 0, -13.38443, 0, -0.039313123, 1108.0278, 0, 43.94687) - -[node name="Wall 3" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-1.5186905, 0, 0.8414712, 0, 1, 0, -2.3652225, 0, -0.540302, 975.73816, 0, 1519.6223) - -[node name="Wall 4" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(3.4118917, 0, 0.98080415, 0, 1, 0, -17.161417, 0, 0.19499542, 1004.1361, 0, 1226.7227) - -[node name="Wall 5" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(22.199762, 0, 0.488939, 0, 1, 0, -12.443089, 0, 0.87231797, 1388.3109, 0, 782.65515) - -[node name="Wall 6" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(3.340821, 0, 0.995408, 0, 1, 0, -34.740505, 0, 0.09572342, -251.39249, 0, 2614.1748) - -[node name="Wall 7" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(23.67125, 0, 0.7853331, 0, 1, 0, -30.028448, 0, 0.61907345, 153.78862, 0, 1642.6404) - -[node name="Wall 8" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(5.77987, 0, -0.45434642, 0, 1, 0, 2.9478998, 0, 0.8908251, 595.5554, 0, 1236.4323) - -[node name="Wall 9" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(9.023477, 0, -0.60087824, 0, 1, 0, 6.783105, 0, 0.79934055, 817.6056, 0, 1382.3973) - -[node name="Wall 10" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(8.219266, 0, 0.72308606, 0, 1, 0, -8.603935, 0, 0.69075793, -1362.2861, 0, 1426.0415) - -[node name="Wall 11" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(19.931976, 0, 0.2617354, 0, 1, 0, -5.405336, 0, 0.9651397, -940.0176, 0, 1215.9026) - -[node name="Wall 12" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(13.268817, 0, -0.50729036, 0, 1, 0, 7.810787, 0, 0.8617752, -442.00568, 0, 1251.9844) - -[node name="Wall 13" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(1.3897758, 0, -0.9983456, 0, 1, 0, 24.130701, 0, 0.05749839, -222.12677, 0, 1731.1067) - -[node name="Wall 14" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(34.551502, 0, 0.14111985, 0, 1, 0, -4.925192, 0, 0.9899925, -2305.376, 0, 328.62308) - -[node name="Wall 15" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(24.613405, 0, -0.29205558, 0, 1, 0, 7.5161777, 0, 0.95640135, -1417.9025, 0, 367.48785) - -[node name="Wall 16" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-6.3431964, 0, -0.9739149, 0, 1, 0, 27.225067, 0, -0.22691344, -1143.8494, 0, 888.60657) - -[node name="Wall 17" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(30.199171, 0, -0.50127697, 0, 1, 0, 17.494947, 0, 0.8652869, -3175.235, 0, -1839.474) - -[node name="Wall 18" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(44.671967, 0, -0.65230465, 0, 1, 0, 38.445103, 0, 0.7579569, -2052.168, 0, -1000.3733) - -[node name="Wall 19" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-0.7857627, 0, -0.99717796, 0, 1, 0, 10.43699, 0, -0.075073875, -1393.875, 0, -267.14197) - -[node name="Wall 20" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-12.714737, 0, -0.6916917, 0, 1, 0, 12.177741, 0, -0.7221929, -1596.3826, 0, 72.07904) - -[node name="Wall 21" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(1.7362201, 0, -0.9290145, 0, 1, 0, 4.3588786, 0, 0.37004325, -610.59985, 0, -1532.9447) - -[node name="Wall 22" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(0.53964406, 0, -0.963576, 0, 1, 0, 1.9443564, 0, 0.26743454, -576.46185, 0, -1438.3962) - -[node name="Wall 23" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-14.199605, 0, -0.6271149, 0, 1, 0, 11.432118, 0, -0.7789268, -781.3612, 0, -1237.749) - -[node name="Wall 24" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-19.332396, 0, 0.042462364, 0, 1, 0, -0.82164025, 0, -0.99909806, -1284.3412, 0, -1078.5919) - -[node name="Wall 25" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-38.26402, 0, 0.38996267, 0, 1, 0, -16.204433, 0, -0.92083067, -2148.2874, 0, -1333.9832) - -[node name="Wall 26" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-9.900028, 0, -0.95892435, 0, 1, 0, 33.46722, 0, -0.283662, 627.6063, 0, -2121.6328) - -[node name="Wall 27" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-35.45541, 0, -0.14152314, 0, 1, 0, 5.0687785, 0, -0.9899349, -52.72531, 0, -1543.593) - -[node name="Wall 28" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-20.625463, 0, -0.57819825, 0, 1, 0, 14.616571, 0, -0.81589633, 1290.618, 0, -914.61743) - -[node name="Wall 29" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-14.180942, 0, 0.5241171, 0, 1, 0, -8.727185, 0, -0.8516462, 768.522, 0, -826.27673) - -[node name="Wall 30" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-3.3694706, 0, 0.9823935, 0, 1, 0, -17.718046, 0, -0.18682343, 505.26584, 0, -1222.9553) - -[node name="Wall 31" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(0.81273633, 0, 0.98309106, 0, 1, 0, -4.3632855, 0, 0.18311748, 466.9148, 0, -1554.1753) - -[node name="Wall 32" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-16.662367, 0, -0.14112, 0, 1, 0, 2.3751626, 0, -0.9899925, 1350.0645, 0, -192.44702) - -[node name="Wall 33" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-4.145249, 0, 0.88471603, 0, 1, 0, -7.867687, 0, -0.46613038, 1037.9503, 0, -274.8349) - -[node name="Wall 34" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(0.1821509, 0, 0.9998369, 0, 1, 0, -10.083955, 0, 0.018060492, 978.5038, 0, -544.1095) - -[node name="Wall 35" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-2.700012, 0, 0.6872334, 0, 1, 0, -2.5543013, 0, -0.72643673, -532.58514, 0, 321.5605) - -[node name="Wall 36" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(11.82774, 0, 0.92615134, 0, 1, 0, -29.044716, 0, 0.37715214, -395.66916, 0, -152.42474) - -[node name="Wall 37" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(1.1012573, 0, -0.070538186, 0, 1, 0, 0.077874675, 0, 0.99750906, -201.73415, 0, -586.92737) - -[node name="Wall 38" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(11.994215, 0, -0.66635936, 0, 1, 0, 10.719056, 0, 0.74563074, -5.3020782, 0, -424.97336) - -[node name="Wall 39" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(2.1884785, 0, -0.99467355, 0, 1, 0, 21.118778, 0, 0.10307517, 207.4383, 0, 52.594177) - -[node name="Wall 40" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-11.203304, 0, -0.3959168, 0, 1, 0, 4.8302755, 0, -0.9182864, 72.2159, 0, 441.83002) - -[node name="Wall 41" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-13.208379, 0, 0.36308232, 0, 1, 0, -5.146973, 0, -0.9317571, -293.95932, 0, 437.0796) - -[node name="Wall 42" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(15.717501, 0, -0.6180667, 0, 1, 0, 12.357395, 0, 0.7861256, -1338.5647, 0, -905.55566) - -[node name="Wall 43" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-1.3591096, 0, -0.9861495, 0, 1, 0, 8.080883, 0, -0.16585876, -1123.1887, 0, -598.9815) - -[node name="Wall 44" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-7.9504347, 0, -0.22109234, 0, 1, 0, 1.8023841, 0, -0.97525287, -1262.832, 0, -450.73254) - -[node name="Wall 45" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(24.700773, 0, 0.44809538, 0, 1, 0, -12.380849, 0, 0.89398575, 185.29631, 0, -771.4719) - -[node name="Wall 46" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-7.074077, 0, -0.36201155, 0, 1, 0, 2.7472327, 0, -0.9321736, 869.6604, 0, -351.64166) - -[node name="Wall 47" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-10.557885, 0, -0.17920126, 0, 1, 0, 1.9231169, 0, -0.98381245, 605.18097, 0, -281.58636) - -[node name="Wall 48" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-9.073385, 0, 0.042019304, 0, 1, 0, -0.3815944, 0, -0.9991168, 310.7119, 0, -258.46353) - -[node name="Wall 49" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(4.626984, 0, -0.66379374, 0, 1, 0, 4.106563, 0, 0.7479157, -1074.1707, 0, -416.1698) - -[node name="Wall 50" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(0.8145745, 0, -0.9952757, 0, 1, 0, 8.350329, 0, 0.09708913, -992.54736, 0, -229.3164) - -[node name="Wall 51" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-14.177759, 0, 0.015340593, 0, 1, 0, -0.21752082, 0, -0.99988234, -1192.9951, 0, -107.3243) - -[node name="Wall 52" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(4.162851, 0, -0.06632749, 0, 1, 0, 0.27672082, 0, 0.9977979, 302.7082, 0, 373.52667) - -[node name="Wall 53" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(8.051835, 0, -0.3354461, 0, 1, 0, 2.8670766, 0, 0.9420594, 485.92847, 0, 420.68365) - -[node name="Wall 54" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-4.492106, 0, -0.98152536, 0, 1, 0, 23.044327, 0, -0.19133195, 539.32434, 0, 809.3546) - -[node name="Wall 55" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-15.022065, 0, 0.24994178, 0, 1, 0, -3.8777173, 0, -0.9682609, 246.61174, 0, 1096.8538) - -[node name="Wall 56" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-3.903817, 0, 0.9759578, 0, 1, 0, -17.480127, 0, -0.21795955, -37.276443, 0, 776.4861) - -[node name="Wall 57" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(0.03789897, 0, -0.9999961, 0, 1, 0, 13.634849, 0, 0.0027795557, 447.3812, 0, -48.216858) - -[node name="Wall 58" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-2.7599583, 0, -0.93662876, 0, 1, 0, 7.3790536, 0, -0.35032356, 406.55032, 0, 266.99167) - -[node name="Wall 59" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(8.808473, 0, 0.78099835, 0, 1, 0, -11.015272, 0, 0.6245331, -110.84633, 0, 1203.917) - -[node name="Wall 60" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(1.230489, 0, -0.709769, 0, 1, 0, 1.2398071, 0, 0.7044345, 490.40005, 0, 1173.6167) - -[node name="Wall 61" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(2.9070642, 0, -0.95726216, 0, 1, 0, 9.621761, 0, 0.28922173, -950.7493, 0, -921.9408) - -[node name="Wall 62" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-6.5219584, 0, -0.2815926, 0, 1, 0, 1.9139866, 0, -0.95953405, -1004.9728, 0, -748.90454) - -[node name="Wall 63" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-10.519978, 0, -0.8283954, 0, 1, 0, 15.557973, 0, -0.56014377, 605.74945, 0, -77.06366) - -[node name="Wall 64" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(4.9650936, 0, 0.9820242, 0, 1, 0, -25.831583, 0, 0.18875507, -566.56146, 0, 747.34875) - -[node name="Wall 65" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(11.327915, 0, -0.74980205, 0, 1, 0, 12.836904, 0, 0.6616622, -810.41, 0, 88.49205) - -[node name="Wall 66" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-13.607004, 0, -0.4385271, 0, 1, 0, 6.6395025, 0, -0.89871794, -844.5963, 0, 380.63803) - -[node name="Wall 67" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-8.765671, 0, -0.5779858, 0, 1, 0, 6.208508, 0, -0.81604683, 984.4417, 0, 337.84094) - -[node name="Wall 68" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-8.208356, 0, -0.1317197, 0, 1, 0, 1.0907055, 0, -0.991287, 729.8313, 0, 447.32916) - -[node name="Wall 69" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-2.3766227, 0, 0.9868853, 0, 1, 0, -14.52985, 0, -0.16142315, -369.83545, 0, -928.4813) - -[node name="Wall 70" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(28.673615, 0, 0.36972666, 0, 1, 0, -11.409899, 0, 0.92914057, 24.619476, 0, -1317.5775) - -[node name="Wall 71" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-3.864437, 0, 0.72613287, 0, 1, 0, -4.0812693, 0, -0.6875544, -276.21954, 0, -649.3145) - -[node name="Wall 72" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(13.451178, 0, -0.21109135, 0, 1, 0, 2.904885, 0, 0.97746634, -705.37573, 0, -734.04114) - -[node name="Wall 73" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-16.705265, 0, -0.5567539, 0, 1, 0, 11.196548, 0, -0.8306775, -754.187, 0, -522.5196) - -[node name="Wall 74" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(5.7607183, 0, -0.9156397, 0, 1, 0, 13.121253, 0, 0.4019999, 968.9037, 0, 772.48267) - -[node name="Wall 75" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(6.674648, 0, 0.96195006, 0, 1, 0, -23.499561, 0, 0.27322543, 782.37317, 0, 928.15735) - -[node name="Wall 76" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(-5.429416, 0, 0.8499817, 0, 1, 0, -8.7600565, 0, -0.5268122, -486.92596, 0, -1277.83) - -[node name="Wall 77" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(0.9845419, 0, -0.9797953, 0, 1, 0, 4.823177, 0, 0.20000292, 867.7248, 0, 503.31622) - -[node name="Wall 78" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(2.2468626, 0, -0.032626797, 0, 1, 0, 0.07334698, 0, 0.9994676, -606.78827, 0, 282.14575) - -[node name="Wall 79" type="Node3D" parent="Research/LevelGenerator" instance=ExtResource("109_nhp6a")] -transform = Transform3D(5.6473985, 0, 0.117614515, 0, 1, 0, -0.66885835, 0, 0.99305934, -418.8971, 0, -700.50073) - -[node name="LowPoly" type="MeshInstance3D" parent="Research/LevelGenerator"] -mesh = SubResource("ArrayMesh_gcb85") - -[node name="Room 10" type="Node3D" parent="Research/LevelGenerator"] -script = ExtResource("116_ctpa3") - -[node name="Scene 10" type="Node3D" parent="Research/LevelGenerator/Room 10" instance=ExtResource("110_jbb2a")] - -[node name="Room 11" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1292.7261, 0, -627.8806) -script = ExtResource("116_ctpa3") - -[node name="Scene 11" type="Node3D" parent="Research/LevelGenerator/Room 11" instance=ExtResource("110_jbb2a")] - -[node name="Room 12" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 417.59424, 0, -467.27197) -script = ExtResource("116_ctpa3") - -[node name="Scene 12" type="Node3D" parent="Research/LevelGenerator/Room 12" instance=ExtResource("113_5p27p")] -transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0) - -[node name="Room 13" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1213.41, 0, -278.01147) -script = ExtResource("116_ctpa3") - -[node name="Scene 13" type="Node3D" parent="Research/LevelGenerator/Room 13" instance=ExtResource("113_5p27p")] -transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0) - -[node name="Room 14" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 343.9077, 0, 797.6565) -script = ExtResource("116_ctpa3") - -[node name="Scene 14" type="Node3D" parent="Research/LevelGenerator/Room 14" instance=ExtResource("113_5p27p")] -transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0) - -[node name="Room 15" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 399.6842, 0, -41.41809) -script = ExtResource("116_ctpa3") - -[node name="Scene 15" type="Node3D" parent="Research/LevelGenerator/Room 15" instance=ExtResource("110_jbb2a")] - -[node name="Room 16" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 186.93445, 0, 1405.7617) -script = ExtResource("116_ctpa3") - -[node name="Scene 16" type="Node3D" parent="Research/LevelGenerator/Room 16" instance=ExtResource("113_5p27p")] -transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0) - -[node name="Room 17" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1057.9148, 0, -926.5395) -script = ExtResource("116_ctpa3") - -[node name="Scene 17" type="Node3D" parent="Research/LevelGenerator/Room 17" instance=ExtResource("110_jbb2a")] - -[node name="Room 18" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 495.11523, 0, -41.68335) -script = ExtResource("116_ctpa3") - -[node name="Scene 18" type="Node3D" parent="Research/LevelGenerator/Room 18" instance=ExtResource("113_5p27p")] -transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0) - -[node name="Room 19" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -373.23657, 0, 957.8154) -script = ExtResource("116_ctpa3") - -[node name="Scene 19" type="Node3D" parent="Research/LevelGenerator/Room 19" instance=ExtResource("110_jbb2a")] - -[node name="Room 20" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1218.6367, 0, 62.65625) -script = ExtResource("116_ctpa3") - -[node name="Scene 20" type="Node3D" parent="Research/LevelGenerator/Room 20" instance=ExtResource("113_5p27p")] -transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0) - -[node name="Room 21" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 614.1238, 0, 38.78784) -script = ExtResource("116_ctpa3") - -[node name="Scene 21" type="Node3D" parent="Research/LevelGenerator/Room 21" instance=ExtResource("110_jbb2a")] - -[node name="Room 22" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 80.58899, 0, -1139.6244) -script = ExtResource("116_ctpa3") - -[node name="Scene 22" type="Node3D" parent="Research/LevelGenerator/Room 22" instance=ExtResource("110_jbb2a")] - -[node name="Room 23" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -953.5256, 0, -570.83093) -script = ExtResource("116_ctpa3") - -[node name="Scene 23" type="Node3D" parent="Research/LevelGenerator/Room 23" instance=ExtResource("110_jbb2a")] - -[node name="Room 24" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 860.89404, 0, 910.55786) -script = ExtResource("116_ctpa3") - -[node name="Scene 24" type="Node3D" parent="Research/LevelGenerator/Room 24" instance=ExtResource("110_jbb2a")] - -[node name="Room 25" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -56.976563, 0, -1485.3333) -script = ExtResource("116_ctpa3") - -[node name="Scene 25" type="Node3D" parent="Research/LevelGenerator/Room 25" instance=ExtResource("110_jbb2a")] - -[node name="Room 26" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 724.82715, 0, 871.9104) -script = ExtResource("116_ctpa3") - -[node name="Scene 26" type="Node3D" parent="Research/LevelGenerator/Room 26" instance=ExtResource("113_5p27p")] -transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0) - -[node name="Room 27" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -824.1357, 0, 871.14795) -script = ExtResource("116_ctpa3") - -[node name="Scene 27" type="Node3D" parent="Research/LevelGenerator/Room 27" instance=ExtResource("113_5p27p")] -transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0) - -[node name="Room 28" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -785.2593, 0, -319.77747) -script = ExtResource("116_ctpa3") - -[node name="Scene 28" type="Node3D" parent="Research/LevelGenerator/Room 28" instance=ExtResource("110_jbb2a")] - -[node name="Room 29" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1143.6511, 0, 786.417) -script = ExtResource("116_ctpa3") - -[node name="Scene 29" type="Node3D" parent="Research/LevelGenerator/Room 29" instance=ExtResource("113_5p27p")] -transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0) - -[node name="Room 30" type="Node3D" parent="Research/LevelGenerator"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -864.05884, 0, -985.11) -script = ExtResource("116_ctpa3") - -[node name="Scene 30" type="Node3D" parent="Research/LevelGenerator/Room 30" instance=ExtResource("113_5p27p")] -transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0) - -[node name="Eye" parent="." instance=ExtResource("113_5p27p")] -transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 58.04387, 3.8146973e-06, 49.198418) -visible = false diff --git a/DomeFox/Game Objects/Collisions/Damage-Collision.tres b/DomeFox/Game Objects/Collisions/Damage-Collision.tres new file mode 100644 index 0000000..6a9d638 --- /dev/null +++ b/DomeFox/Game Objects/Collisions/Damage-Collision.tres @@ -0,0 +1,7 @@ +[gd_resource type="Resource" script_class="CollisionFlag" load_steps=2 format=3 uid="uid://d1ng53m5uqpi0"] + +[ext_resource type="Script" uid="uid://crk6vntm10let" path="res://addons/rokojori_action_library/Runtime/Interactions/CollisionFlag.cs" id="1_odf40"] + +[resource] +script = ExtResource("1_odf40") +metadata/_custom_type_script = "uid://crk6vntm10let" diff --git a/DomeFox/Game Objects/Eye/Eye-HealthData.tres b/DomeFox/Game Objects/Eye/Eye-HealthData.tres new file mode 100644 index 0000000..c80ba42 --- /dev/null +++ b/DomeFox/Game Objects/Eye/Eye-HealthData.tres @@ -0,0 +1,9 @@ +[gd_resource type="Resource" script_class="HealthData" load_steps=2 format=3 uid="uid://d3c6naflvvx3i"] + +[ext_resource type="Script" uid="uid://w5l6csc2p364" path="res://DomeFox/Game Objects/Health/HealthData.cs" id="1_yne6r"] + +[resource] +script = ExtResource("1_yne6r") +max = 25 +initial = 25 +metadata/_custom_type_script = "uid://w5l6csc2p364" diff --git a/DomeFox/Game Objects/Eye/Eye.cs b/DomeFox/Game Objects/Eye/Eye.cs new file mode 100644 index 0000000..9750ed3 --- /dev/null +++ b/DomeFox/Game Objects/Eye/Eye.cs @@ -0,0 +1,212 @@ +using Godot; +using Rokojori; +using System.Collections.Generic; +using System.Threading.Tasks; + +[Tool, GlobalClass] +public partial class Eye : Node +{ + [Export] + public Node3D transform; + + [Export] + public Node3D beamScale; + + [Export] + public Action onHasCollider; + + [Export] + public Action onNoCollider; + + [Export] + public PlayerSight playerSight; + + [Export] + public Smoothing toPlayerRotationSmoothing; + + [Export] + public float maxLength = 10; + + [Export] + public float rootScale = 20; + + [Export] + public MultiRayCaster multiRayCaster; + + [Export] + public Health health; + + [Export] + public Smoothing lengthSmoothing; + + float _nextLength = 10; + + [Export] + public Collider collider; + + [ExportGroup( "Debugging")] + + + [Export] + public bool forceDebugLength = false; + + [Export] + public float debugLength = 5; + + [Export] + public float wobbleRaycast = 1; + + + + + + public override void _Process( double delta ) + { + var currentNumColliders = _colliders.Count; + + var pos = multiRayCaster.Position; + var random = GodotRandom.Get().InsideCircle( wobbleRaycast ); + + + multiRayCaster.Position = new Vector3( random.X, random.Y, pos.Z ); + + ResolveCollisions(); + + if ( currentNumColliders != _colliders.Count ) + { + var hasColliders = _colliders.Count > 0; + Action.Trigger( hasColliders ? onNoCollider : onHasCollider ); + } + + if ( forceDebugLength ) + { + _nextLength = debugLength; + } + + var length = Smoothing.Apply( lengthSmoothing, _nextLength, (float) delta ); + + beamScale.SetScaleZ( length / maxLength ); + + UpdateRotation( (float) delta ); + + } + + void UpdateRotation( float delta ) + { + if ( playerSight == null ) + { + return; + } + + if ( playerSight.visible ) + { + var player = Unique.Get(); + var playerDirection = transform.DirectionTowards( player.transform.GlobalPosition ); + var toPlayerRotation = Math3D.LookRotation( playerDirection ); + + var smoothedRotation = Smoothing.Apply( toPlayerRotationSmoothing, toPlayerRotation, delta ); + transform.SetGlobalQuaternion( smoothedRotation ); + + + // this.LogInfo( playerDirection, toPlayerRotation, smoothedRotation ); + } + else + { + if ( toPlayerRotationSmoothing != null ) + { + toPlayerRotationSmoothing.SetCurrent( transform.GlobalQuaternion() ); + } + } + } + + List _colliders = new List(); + + void ResolveCollisions() + { + var invalid = _colliders.Has( c => ! IsInstanceValid( c ) ); + + if ( invalid ) + { + _colliders = _colliders.Filter( c=> IsInstanceValid( c ) ); + } + + var numColliders = multiRayCaster.NumColliders(); + + if ( health.isDead ) + { + numColliders = 0; + } + + var same = _colliders.Count == numColliders; + + var minDistance = maxLength; + + for ( int i = 0; i < numColliders; i++ ) + { + + + if ( same && _colliders[ i ] != multiRayCaster.GetCollider( i ) ) + { + same = false; + } + + var distance = transform.DistanceTo( multiRayCaster.GetCollisionPosition( i ) ) / rootScale; + + minDistance = Mathf.Min( distance, minDistance ); + } + + _nextLength = minDistance; + + + if ( same ) + { + + return; + } + + var newColliders = new List(); + + var enteredColliders = new List(); + + for ( int i = 0; i < numColliders; i++ ) + { + var collider = multiRayCaster.GetCollider( i ); + + if ( collider == null ) + { + // this.LogInfo( "Collider is null!", i, multiRayCaster.NumColliders() ); + continue; + } + newColliders.Add( collider ); + + if ( ! _colliders.Contains( collider ) ) + { + enteredColliders.Add( collider ); + } + } + + var exitedColliders = _colliders.Filter( c => ! newColliders.Contains( c ) ); + + exitedColliders.ForEach( + ( c )=> + { + // this.LogInfo( "Collider exited:", HierarchyName.Of( c ) ); + collider.TriggerOnExited( c as Node3D ); + } + ); + + + enteredColliders.ForEach( + ( c )=> + { + // this.LogInfo( "Collider entered:", HierarchyName.Of( c ) ); + collider.TriggerOnEnter( c as Node3D ); + } + ); + + _colliders = newColliders; + + + } + +} \ No newline at end of file diff --git a/DomeFox/Game Objects/Eye/Eye.cs.uid b/DomeFox/Game Objects/Eye/Eye.cs.uid new file mode 100644 index 0000000..cdd75e3 --- /dev/null +++ b/DomeFox/Game Objects/Eye/Eye.cs.uid @@ -0,0 +1 @@ +uid://bxyvrb0kijl80 diff --git a/DomeFox/Game Objects/Eye/Eye.tscn b/DomeFox/Game Objects/Eye/Eye.tscn index 6120bf3..55b20d4 100644 --- a/DomeFox/Game Objects/Eye/Eye.tscn +++ b/DomeFox/Game Objects/Eye/Eye.tscn @@ -1,17 +1,39 @@ -[gd_scene load_steps=117 format=3 uid="uid://7gf2dp1y62wo"] +[gd_scene load_steps=236 format=3 uid="uid://7gf2dp1y62wo"] [ext_resource type="Script" uid="uid://2gudnu1r4pjg" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/SpatialShaderGenerator.cs" id="1_hyk7e"] +[ext_resource type="Script" uid="uid://bxyvrb0kijl80" path="res://DomeFox/Game Objects/Eye/Eye.cs" id="1_mpdbb"] +[ext_resource type="Script" uid="uid://dbgwebayabwd5" path="res://addons/rokojori_action_library/Runtime/Interactions/Collidable.cs" id="1_t88uc"] +[ext_resource type="Script" uid="uid://dyf6ee3ov3ran" path="res://addons/rokojori_action_library/Runtime/Actions/OnReady.cs" id="1_ycrwu"] +[ext_resource type="Script" uid="uid://lhuuedx87rem" path="res://addons/rokojori_action_library/Runtime/Animation/Smoothing/FrameSmoothing.cs" id="2_c82hk"] +[ext_resource type="Resource" uid="uid://ckyvygk7xtnpm" path="res://DomeFox/Game Objects/Wall/Projectile-Collision.tres" id="2_feye4"] [ext_resource type="Script" uid="uid://cxev8s3qvg8sq" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Albedo/AlbedoModule.cs" id="2_j8gjs"] +[ext_resource type="Script" uid="uid://ceaglilesxsi4" path="res://addons/rokojori_action_library/Runtime/Actions/ActionSequence.cs" id="3_7oqba"] [ext_resource type="Script" uid="uid://8a10in76h56n" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Alpha/AlphaModule.cs" id="3_ghf00"] [ext_resource type="Script" uid="uid://dobmqsid1agkj" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Emission/EmissionModule.cs" id="4_mfvyt"] +[ext_resource type="Script" uid="uid://dy65lu5p2yf3j" path="res://addons/rokojori_action_library/Runtime/Actions/Sequence/Parallel.cs" id="4_ymtsl"] +[ext_resource type="Script" uid="uid://dnwqkymbre3vb" path="res://addons/rokojori_action_library/Runtime/Animation/Flash/Flash.cs" id="5_lya8u"] +[ext_resource type="Script" uid="uid://ck22blkf6u3vx" path="res://DomeFox/Player/PlayerSight.cs" id="5_sbsrj"] [ext_resource type="Script" uid="uid://bqk5po80nylsk" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Fading/FadingModule.cs" id="5_sm8dq"] +[ext_resource type="Resource" uid="uid://cwdnm658q3jta" path="res://addons/rokojori_action_library/Runtime/Animation/Flash/Presets/Red Hit - Flash.tres" id="6_wi4kk"] [ext_resource type="Script" uid="uid://j4aagrd2fmce" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Geometry/NormalOffset/GeometryNormalOffset.cs" id="6_xu2ok"] [ext_resource type="Script" uid="uid://drc5hdnwme7be" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Geometry/GeometryModule.cs" id="7_2gtvq"] +[ext_resource type="Script" uid="uid://bnhnintao4qu0" path="res://addons/rokojori_action_library/Runtime/Animation/Shake/Shake.cs" id="7_k5rj5"] +[ext_resource type="Script" uid="uid://bex6umukt0r8d" path="res://addons/rokojori_action_library/Runtime/Actions/Node/SetNodeState.cs" id="7_mlins"] +[ext_resource type="Resource" uid="uid://begmg64jiaoq0" path="res://addons/rokojori_action_library/Runtime/Animation/Shake/Presets/Mini Poke - Shake.tres" id="8_5lj55"] +[ext_resource type="Script" uid="uid://b4yjsis2fh64c" path="res://addons/rokojori_action_library/Runtime/Actions/ActionList.cs" id="8_725d0"] [ext_resource type="Script" uid="uid://i8cxjpjwhubc" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Masks/MaskReference.cs" id="8_oihxu"] +[ext_resource type="Script" uid="uid://dnstanbmrqthf" path="res://addons/rokojori_action_library/Runtime/Actions/Node3D/PlayParticles.cs" id="8_ycrwu"] +[ext_resource type="Resource" uid="uid://ch5nsa6yafs5l" path="res://addons/rokojori_action_library/Runtime/Time/TimeLines/GameTime.tres" id="9_725d0"] [ext_resource type="Script" uid="uid://c66d71an78m6m" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Albedo/AlbedoOverlayLayer.cs" id="9_gosrm"] +[ext_resource type="Script" uid="uid://dq5kae8x62gre" path="res://addons/rokojori_action_library/Runtime/Actions/RemoveNode.cs" id="9_k5rj5"] +[ext_resource type="Script" uid="uid://dn1jkvx1f4y5r" path="res://DomeFox/Game Objects/Health/Damagable.cs" id="9_ymtsl"] +[ext_resource type="Script" uid="uid://d0x8co6nm8koo" path="res://DomeFox/Game Objects/Health/DamagableData.cs" id="10_lya8u"] [ext_resource type="Script" uid="uid://cmo0q35ehg2is" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Masks/AxisMask.cs" id="10_wyalx"] +[ext_resource type="Script" uid="uid://b2g7rycr0ouu4" path="res://addons/rokojori_action_library/Runtime/Actions/Time/Delay.cs" id="11_g6u3h"] +[ext_resource type="Script" uid="uid://crm7o7w0gumhn" path="res://addons/rokojori_action_library/Runtime/Actions/Conditional/Once.cs" id="11_qf8ke"] [ext_resource type="Script" uid="uid://ct0ciw3quxl4g" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Masks/SpatialMaskVariable.cs" id="11_t88uc"] [ext_resource type="Script" uid="uid://yoc4tx8ahe6b" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Masks/SpatialMasksModule.cs" id="12_feye4"] +[ext_resource type="Script" uid="uid://ddgf2mfdmqywc" path="res://addons/rokojori_action_library/Runtime/Actions/Node3D/PlaySound.cs" id="12_ng42h"] [ext_resource type="Script" uid="uid://n0gi67ntpq0y" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Metallic/MetallicModule.cs" id="13_7oqba"] [ext_resource type="Script" uid="uid://tl4qfoxysj06" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/NormalMap/NormalMapModule.cs" id="14_ymtsl"] [ext_resource type="Script" uid="uid://dew0uayffwxwk" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Roughness/RoughnessModule.cs" id="15_lya8u"] @@ -21,12 +43,226 @@ [ext_resource type="Script" uid="uid://ckstqai24gfu2" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Transparency/TransparencyModule.cs" id="19_3qlti"] [ext_resource type="Script" uid="uid://7kmku6bld3yt" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/UV/UVScaleOffset.cs" id="20_teisk"] [ext_resource type="Script" uid="uid://mcu62dbrsoeh" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/UV/UVChannel.cs" id="21_mlins"] +[ext_resource type="AudioStream" uid="uid://bahgqyijj5tvx" path="res://DomeFox/Game Objects/Eye/eye-explosion-sound.ogg" id="22_30cme"] [ext_resource type="Script" uid="uid://ibhf7a1j2ivl" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/UV/UVSource/MeshUVSource.cs" id="22_ycrwu"] [ext_resource type="Script" uid="uid://ocri03glwwv7" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/UV/UVModule.cs" id="23_725d0"] [ext_resource type="Script" uid="uid://7bnmdhvno7ua" path="res://addons/rokojori_action_library/Runtime/Shading/Generators/Spatial/Varyings/SpatialVarying.cs" id="24_g6u3h"] +[ext_resource type="AudioStream" uid="uid://d3ft8g1thg4n" path="res://DomeFox/Game Objects/Eye/eye-explosion-sound-short.ogg" id="25_khlq0"] [ext_resource type="Shader" uid="uid://dwidfv18u7fi0" path="res://DomeFox/Game Objects/Eye/EyeBeam.gdshader" id="25_qf8ke"] [ext_resource type="Shader" uid="uid://lxygv2l76ka8" path="res://DomeFox/Game Objects/Eye/EyeBeamStencilled.gdshader" id="26_j8gjs"] [ext_resource type="Script" uid="uid://xnupkyu3042b" path="res://addons/rokojori_action_library/Runtime/Interactions/Collider.cs" id="26_ng42h"] +[ext_resource type="Resource" uid="uid://d1ng53m5uqpi0" path="res://DomeFox/Game Objects/Collisions/Damage-Collision.tres" id="28_ghf00"] +[ext_resource type="Script" uid="uid://ba1bue0f8r50y" path="res://DomeFox/Game Objects/Health/Damager.cs" id="29_3u2x4"] +[ext_resource type="Resource" uid="uid://dchdcdx53xjj4" path="res://DomeFox/Game Objects/Eye/EyeBeam-Damage.tres" id="30_3u2x4"] +[ext_resource type="Script" uid="uid://cbbesrlha8kor" path="res://DomeFox/Game Objects/Health/Health.cs" id="38_lya8u"] +[ext_resource type="Resource" uid="uid://d3c6naflvvx3i" path="res://DomeFox/Game Objects/Eye/Eye-HealthData.tres" id="39_wi4kk"] +[ext_resource type="Script" uid="uid://seym2gxpvk7j" path="res://addons/rokojori_action_library/Runtime/Actions/Visual/TweenParticles.cs" id="53_hyv5a"] +[ext_resource type="Script" uid="uid://bltwuqpvalu26" path="res://addons/rokojori_action_library/Runtime/Interactions/MultiRayCaster.cs" id="53_o6mbh"] +[ext_resource type="Script" uid="uid://cfvigaosponfn" path="res://addons/rokojori_action_library/Runtime/Tools/Boxed/FloatValue.cs" id="54_khlq0"] +[ext_resource type="Script" uid="uid://bvrtvo7tdhft6" path="res://addons/rokojori_action_library/Runtime/Actions/Visual/TweenParticlesData.cs" id="55_c1xak"] +[ext_resource type="Script" uid="uid://lm37r3ycp1ls" path="res://addons/rokojori_action_library/Runtime/Animation/Tweens/TweenTimeCurve.cs" id="56_ehig0"] +[ext_resource type="Resource" uid="uid://dw7wtapaqufxu" path="res://DomeFox/Player/PlayerCollision.tres" id="60_ean4y"] +[ext_resource type="Script" uid="uid://bfdpav4wcws7s" path="res://DomeFox/Player/SetPlayerSight.cs" id="61_1wfvh"] + +[sub_resource type="Resource" id="Resource_xd01g"] +resource_local_to_scene = true +script = ExtResource("2_c82hk") +frames = 120.0 +metadata/_custom_type_script = "uid://lhuuedx87rem" + +[sub_resource type="Resource" id="Resource_oslmd"] +resource_local_to_scene = true +script = ExtResource("2_c82hk") +frames = 5.0 +metadata/_custom_type_script = "uid://lhuuedx87rem" + +[sub_resource type="FastNoiseLite" id="FastNoiseLite_mlins"] + +[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_ycrwu"] +noise = SubResource("FastNoiseLite_mlins") +seamless = true +as_normal_map = true + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_qf8ke"] +albedo_color = Color(0.6821437, 0.2955735, 0.2955735, 1) +roughness = 0.29 +normal_enabled = true +normal_texture = SubResource("NoiseTexture2D_ycrwu") +billboard_keep_scale = true +proximity_fade_enabled = true +proximity_fade_distance = 2.0 + +[sub_resource type="Curve" id="Curve_ng42h"] +_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.12790698, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0] +point_count = 3 + +[sub_resource type="CurveTexture" id="CurveTexture_30cme"] +curve = SubResource("Curve_ng42h") + +[sub_resource type="Gradient" id="Gradient_mpdbb"] +colors = PackedColorArray(1, 0, 0.1539259, 1, 1, 0.19529057, 0, 1) + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_c82hk"] +gradient = SubResource("Gradient_mpdbb") + +[sub_resource type="Gradient" id="Gradient_o6mbh"] +colors = PackedColorArray(1, 1, 1, 1, 0.32232416, 0.35635126, 0.40495878, 1) + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_olxhp"] +gradient = SubResource("Gradient_o6mbh") + +[sub_resource type="Curve" id="Curve_hyv5a"] +_data = [Vector2(0, 0.2348395), 0.0, 0.0, 0, 0, Vector2(0.08562691, 0.54789054), 0.0, 0.0, 0, 0, Vector2(0.25382262, 0.24256837), -0.92376447, -0.92376447, 0, 0, Vector2(1, 0), -0.46658733, 0.0, 0, 0] +point_count = 4 + +[sub_resource type="CurveTexture" id="CurveTexture_khlq0"] +curve = SubResource("Curve_hyv5a") + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_c1xak"] +lifetime_randomness = 0.52 +particle_flag_align_y = true +emission_shape = 1 +emission_sphere_radius = 0.67 +angle_min = -360.0 +angle_max = 360.00003 +direction = Vector3(0, 0, 0) +spread = 180.0 +initial_velocity_min = 0.61 +initial_velocity_max = 4.0 +angular_velocity_min = -2.950016 +angular_velocity_max = 150.64998 +orbit_velocity_min = 9.49949e-08 +orbit_velocity_max = 1.2000002 +gravity = Vector3(0, 0, 0) +scale_min = 0.02 +scale_max = 0.099999994 +scale_curve = SubResource("CurveTexture_khlq0") +scale_over_velocity_min = 32.45 +scale_over_velocity_max = 69.25 +color = Color(2.1043189, 2.1043189, 2.1043189, 1) +color_ramp = SubResource("GradientTexture1D_olxhp") +color_initial_ramp = SubResource("GradientTexture1D_c82hk") +alpha_curve = SubResource("CurveTexture_30cme") +turbulence_noise_strength = 18.82 +turbulence_noise_scale = 4.192 +turbulence_noise_speed_random = 1.95 + +[sub_resource type="CapsuleMesh" id="CapsuleMesh_ehig0"] +radius = 7.364 +height = 25.953 +radial_segments = 4 +rings = 3 + +[sub_resource type="Gradient" id="Gradient_j8gjs"] +offsets = PackedFloat32Array(0.9195122, 1) +colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 0) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_ghf00"] +gradient = SubResource("Gradient_j8gjs") +width = 256 +height = 256 +fill = 1 +fill_from = Vector2(0.5, 0.5) +fill_to = Vector2(0, 0.5) + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_mfvyt"] +transparency = 1 +blend_mode = 1 +cull_mode = 2 +shading_mode = 0 +vertex_color_use_as_albedo = true +albedo_color = Color(1.1291975, 1.1291975, 1.1291975, 1) +albedo_texture = SubResource("GradientTexture2D_ghf00") +billboard_mode = 3 +billboard_keep_scale = true +particles_anim_h_frames = 1 +particles_anim_v_frames = 1 +particles_anim_loop = false +proximity_fade_enabled = true +proximity_fade_distance = 2.0 + +[sub_resource type="Curve" id="Curve_sm8dq"] +_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.12790698, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0] +point_count = 3 + +[sub_resource type="CurveTexture" id="CurveTexture_xu2ok"] +curve = SubResource("Curve_sm8dq") + +[sub_resource type="Gradient" id="Gradient_2gtvq"] +colors = PackedColorArray(1, 0, 0.1539259, 1, 1, 0.19529057, 0, 1) + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_oihxu"] +gradient = SubResource("Gradient_2gtvq") + +[sub_resource type="Gradient" id="Gradient_gosrm"] +colors = PackedColorArray(1, 1, 1, 1, 0.32232416, 0.35635126, 0.40495878, 1) + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_wyalx"] +gradient = SubResource("Gradient_gosrm") + +[sub_resource type="Image" id="Image_1wfvh"] +data = { +"data": PackedByteArray(64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 142, 57, 125, 63, 134, 94, 22, 62, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 136, 177, 127, 63, 45, 97, 72, 61, 15, 243, 18, 177, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 143, 57, 125, 191, 135, 94, 22, 62, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 191, 0, 0, 0, 128, 64, 91, 120, 191, 95, 91, 120, 62, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 130, 168, 43, 191, 106, 235, 61, 63, 0, 0, 0, 0, 64, 91, 120, 191, 96, 91, 120, 190, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 61, 52, 76, 198, 177, 130, 168, 43, 191, 105, 235, 61, 191, 0, 0, 0, 128, 7, 33, 173, 190, 153, 235, 112, 191, 0, 0, 0, 128, 65, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 245, 14, 218, 62, 43, 159, 103, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 63, 0, 0, 0, 0, 102, 235, 61, 63, 136, 168, 43, 63, 0, 0, 0, 0, 142, 57, 125, 63, 133, 94, 22, 62, 0, 0, 0, 0, 24, 91, 120, 190, 68, 91, 120, 191, 0, 0, 0, 128, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 143, 57, 125, 191, 135, 94, 22, 190, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 131, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 63, 0, 0, 0, 0, 149, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 150, 109, 24, 191, 122, 172, 77, 63, 0, 0, 0, 0, 245, 14, 218, 62, 43, 159, 103, 191, 0, 0, 0, 0, 102, 235, 61, 191, 136, 168, 43, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 191, 0, 0, 0, 128, 120, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 151, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 191, 0, 0, 0, 128, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 149, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 143, 57, 125, 191, 135, 94, 22, 62, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 135, 177, 127, 63, 45, 97, 72, 61, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 63, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 189, 0, 0, 0, 128, 149, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 150, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 0, 0, 0, 0, 142, 57, 125, 191, 133, 94, 22, 62, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 150, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 135, 177, 127, 63, 45, 97, 72, 61, 13, 243, 18, 177, 142, 57, 125, 191, 133, 94, 22, 190, 0, 0, 0, 128, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 158, 235, 112, 63, 234, 32, 173, 62, 0, 0, 0, 0, 157, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 142, 57, 125, 191, 133, 94, 22, 190, 0, 0, 0, 128, 245, 14, 218, 190, 43, 159, 103, 191, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 158, 235, 112, 191, 234, 32, 173, 62, 0, 0, 0, 0, 54, 221, 3, 191, 27, 109, 91, 63, 0, 0, 0, 0, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 191, 0, 0, 0, 128, 122, 172, 77, 191, 151, 109, 24, 191, 0, 0, 0, 128, 120, 172, 77, 191, 152, 109, 24, 63, 0, 0, 0, 0, 149, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 158, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 150, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 120, 172, 77, 191, 151, 109, 24, 191, 0, 0, 0, 128, 136, 177, 127, 191, 46, 97, 72, 189, 15, 243, 18, 49, 244, 14, 218, 190, 42, 159, 103, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 158, 235, 112, 191, 234, 32, 173, 190, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 245, 14, 218, 190, 43, 159, 103, 191, 0, 0, 0, 128, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 13, 243, 18, 177, 135, 177, 127, 63, 44, 97, 72, 61, 18, 243, 18, 177, 149, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 143, 57, 125, 63, 135, 94, 22, 62, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 245, 14, 218, 62, 43, 159, 103, 191, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 191, 0, 0, 0, 128, 102, 235, 61, 63, 136, 168, 43, 63, 0, 0, 0, 0, 64, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 143, 57, 125, 191, 135, 94, 22, 62, 0, 0, 0, 0, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 102, 235, 61, 63, 135, 168, 43, 191, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 63, 0, 0, 0, 0, 65, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 120, 172, 77, 191, 151, 109, 24, 191, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 63, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 27, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 245, 14, 218, 190, 43, 159, 103, 191, 0, 0, 0, 128, 158, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 27, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 143, 57, 125, 191, 135, 94, 22, 62, 146, 206, 148, 178, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 62, 147, 206, 148, 178, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 63, 0, 0, 0, 0, 65, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 63, 0, 0, 0, 0, 158, 235, 112, 63, 234, 32, 173, 190, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 52, 76, 198, 177, 122, 172, 77, 191, 151, 109, 24, 191, 0, 0, 0, 128, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 143, 57, 125, 63, 135, 94, 22, 62, 147, 206, 148, 178, 7, 33, 173, 190, 152, 235, 112, 63, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 63, 0, 0, 0, 0, 158, 235, 112, 63, 234, 32, 173, 62, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 54, 221, 3, 63, 27, 109, 91, 191, 0, 0, 0, 0, 158, 235, 112, 63, 234, 32, 173, 62, 0, 0, 0, 0, 149, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 122, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 122, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 149, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 61, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 63, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 63, 0, 0, 0, 0, 158, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 0, 0, 0, 0, 24, 91, 120, 190, 68, 91, 120, 63, 0, 0, 0, 0, 142, 57, 125, 63, 133, 94, 22, 62, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 189, 15, 243, 18, 49, 120, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 149, 109, 24, 191, 122, 172, 77, 63, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 63, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 61, 15, 243, 18, 177, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 189, 13, 243, 18, 49, 143, 57, 125, 63, 135, 94, 22, 190, 142, 206, 148, 50, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 54, 221, 3, 191, 27, 109, 91, 191, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 189, 15, 243, 18, 49, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 65, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 65, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 151, 109, 24, 191, 122, 172, 77, 63, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 189, 13, 243, 18, 49, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 27, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 191, 0, 0, 0, 128, 143, 57, 125, 191, 135, 94, 22, 190, 0, 0, 0, 128, 149, 109, 24, 191, 122, 172, 77, 63, 0, 0, 0, 0, 64, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 142, 57, 125, 63, 134, 94, 22, 62, 0, 0, 0, 0, 54, 221, 3, 63, 27, 109, 91, 191, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 62, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 191, 0, 0, 0, 128, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 26, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 102, 235, 61, 63, 136, 168, 43, 191, 0, 0, 0, 0, 151, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 63, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 189, 52, 76, 198, 49, 102, 235, 61, 63, 135, 168, 43, 63, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 150, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 102, 235, 61, 191, 136, 168, 43, 63, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 191, 0, 0, 0, 128, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 158, 235, 112, 191, 234, 32, 173, 62, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 65, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 135, 177, 127, 191, 45, 97, 72, 189, 0, 0, 0, 128, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 150, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 150, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 27, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 102, 235, 61, 63, 136, 168, 43, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 27, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 191, 0, 0, 0, 128, 150, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 120, 172, 77, 191, 152, 109, 24, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 245, 14, 218, 190, 43, 159, 103, 63, 0, 0, 0, 0, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 189, 13, 243, 18, 49, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 130, 168, 43, 63, 105, 235, 61, 63, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 7, 33, 173, 62, 152, 235, 112, 191, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 191, 0, 0, 0, 128, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 149, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 27, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 158, 235, 112, 63, 234, 32, 173, 62, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 143, 57, 125, 191, 134, 94, 22, 62, 145, 206, 148, 178, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 120, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 191, 0, 0, 0, 128, 130, 168, 43, 191, 106, 235, 61, 63, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 122, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 191, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 191, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 150, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 157, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 26, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 102, 235, 61, 63, 135, 168, 43, 191, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 158, 235, 112, 191, 234, 32, 173, 190, 0, 0, 0, 128, 102, 235, 61, 63, 135, 168, 43, 63, 0, 0, 0, 0, 54, 221, 3, 63, 27, 109, 91, 191, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 61, 15, 243, 18, 177, 122, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 143, 57, 125, 191, 134, 94, 22, 62, 145, 206, 148, 178, 27, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 143, 57, 125, 191, 134, 94, 22, 62, 145, 206, 148, 178, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 102, 235, 61, 191, 136, 168, 43, 63, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 63, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 136, 177, 127, 191, 45, 97, 72, 189, 0, 0, 0, 128, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 142, 57, 125, 191, 134, 94, 22, 62, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 150, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 63, 0, 0, 0, 0, 102, 235, 61, 63, 136, 168, 43, 191, 0, 0, 0, 0, 120, 172, 77, 191, 152, 109, 24, 191, 0, 0, 0, 128, 157, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 158, 235, 112, 191, 234, 32, 173, 62, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 102, 235, 61, 63, 136, 168, 43, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 191, 0, 0, 0, 128, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 63, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 130, 168, 43, 191, 106, 235, 61, 63, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 61, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 122, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 191, 0, 0, 0, 0, 151, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 150, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 142, 57, 125, 191, 133, 94, 22, 190, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 135, 177, 127, 63, 45, 97, 72, 189, 13, 243, 18, 49, 102, 235, 61, 63, 135, 168, 43, 63, 0, 0, 0, 0, 27, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 61, 15, 243, 18, 177, 43, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 136, 177, 127, 63, 45, 97, 72, 61, 14, 243, 18, 177, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 63, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 157, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 158, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 7, 33, 173, 190, 153, 235, 112, 191, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 158, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 131, 168, 43, 191, 106, 235, 61, 191, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 149, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 0, 0, 0, 0, 102, 235, 61, 63, 135, 168, 43, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 120, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 102, 235, 61, 191, 136, 168, 43, 63, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 189, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 143, 57, 125, 191, 135, 94, 22, 62, 146, 206, 148, 178, 24, 91, 120, 190, 68, 91, 120, 191, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 130, 168, 43, 191, 106, 235, 61, 63, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 151, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 24, 91, 120, 190, 68, 91, 120, 191, 0, 0, 0, 128, 7, 33, 173, 190, 152, 235, 112, 63, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), +"format": "RGBFloat", +"height": 1, +"mipmaps": false, +"width": 2048 +} + +[sub_resource type="ImageTexture" id="ImageTexture_feye4"] +image = SubResource("Image_1wfvh") + +[sub_resource type="Image" id="Image_3u2x4"] +data = { +"data": PackedByteArray(213, 102, 139, 62, 136, 69, 141, 189, 32, 252, 0, 62, 2, 27, 133, 189, 124, 233, 139, 62, 140, 9, 195, 61, 28, 111, 141, 62, 246, 167, 84, 61, 36, 228, 13, 62, 51, 214, 35, 59, 248, 233, 143, 62, 248, 22, 15, 62, 204, 211, 143, 62, 147, 35, 195, 59, 30, 114, 10, 62, 6, 86, 72, 62, 155, 160, 78, 190, 58, 16, 186, 61, 123, 182, 74, 62, 167, 122, 76, 190, 175, 228, 28, 62, 243, 55, 248, 60, 191, 19, 143, 190, 8, 146, 9, 62, 168, 67, 139, 190, 95, 120, 143, 189, 238, 211, 10, 62, 8, 87, 132, 190, 156, 255, 225, 189, 115, 159, 222, 61, 120, 211, 141, 190, 179, 135, 63, 61, 244, 235, 237, 61, 6, 32, 219, 61, 107, 29, 133, 190, 186, 174, 25, 62, 166, 153, 34, 61, 229, 92, 142, 190, 124, 208, 208, 61, 220, 174, 65, 190, 2, 164, 84, 62, 69, 60, 36, 62, 229, 196, 21, 190, 114, 139, 117, 190, 89, 202, 201, 61, 190, 146, 138, 190, 254, 134, 154, 61, 132, 0, 204, 61, 169, 86, 161, 60, 150, 123, 143, 190, 66, 172, 190, 61, 224, 142, 63, 190, 176, 143, 86, 62, 88, 211, 206, 61, 200, 239, 138, 190, 98, 182, 148, 189, 239, 215, 29, 62, 22, 171, 131, 62, 197, 180, 231, 189, 138, 112, 21, 62, 61, 132, 128, 190, 130, 62, 1, 190, 82, 66, 17, 62, 45, 141, 220, 61, 32, 251, 132, 190, 52, 203, 20, 62, 47, 13, 38, 61, 128, 76, 142, 190, 44, 32, 187, 61, 86, 171, 67, 62, 108, 216, 82, 190, 88, 57, 208, 61, 120, 124, 135, 190, 28, 186, 192, 189, 206, 12, 243, 61, 58, 93, 58, 189, 1, 236, 141, 62, 94, 146, 7, 62, 28, 212, 143, 62, 156, 136, 193, 59, 125, 208, 11, 62, 246, 231, 66, 190, 3, 137, 83, 190, 100, 4, 36, 62, 82, 15, 199, 189, 213, 234, 134, 190, 243, 226, 23, 62, 122, 200, 138, 62, 62, 43, 151, 61, 218, 154, 1, 62, 223, 94, 1, 62, 157, 124, 128, 62, 28, 210, 20, 62, 182, 98, 96, 62, 129, 64, 52, 190, 52, 60, 16, 62, 53, 104, 34, 189, 208, 93, 142, 190, 90, 198, 228, 61, 194, 252, 131, 62, 185, 254, 228, 61, 80, 23, 40, 62, 76, 144, 11, 188, 85, 195, 143, 62, 99, 197, 18, 62, 239, 183, 76, 62, 175, 114, 74, 62, 210, 145, 211, 61, 115, 250, 141, 62, 28, 83, 55, 61, 14, 227, 194, 61, 240, 26, 165, 189, 126, 233, 137, 190, 169, 84, 38, 62, 113, 203, 218, 60, 142, 78, 143, 190, 166, 127, 221, 61, 104, 211, 115, 190, 36, 161, 24, 190, 230, 218, 28, 62, 1, 243, 28, 188, 134, 188, 143, 190, 247, 29, 253, 61, 170, 177, 128, 190, 130, 125, 0, 190, 37, 149, 231, 61, 215, 74, 142, 190, 0, 103, 38, 189, 214, 107, 4, 62, 102, 228, 27, 190, 116, 221, 113, 62, 185, 218, 231, 61, 93, 175, 128, 62, 73, 135, 0, 62, 94, 217, 28, 62, 156, 235, 57, 62, 45, 168, 91, 190, 166, 159, 15, 62, 236, 122, 76, 190, 48, 182, 74, 190, 59, 67, 201, 61, 172, 105, 96, 189, 64, 55, 141, 62, 90, 250, 233, 61, 152, 112, 108, 62, 171, 252, 35, 62, 187, 17, 4, 62, 140, 226, 113, 190, 241, 219, 27, 62, 130, 76, 41, 62, 168, 111, 2, 60, 234, 198, 143, 190, 21, 249, 32, 62, 61, 11, 86, 190, 106, 33, 64, 190, 59, 197, 25, 62, 166, 210, 130, 190, 246, 227, 238, 189, 33, 170, 13, 62, 235, 42, 144, 61, 126, 56, 139, 62, 218, 218, 220, 61, 208, 174, 96, 62, 211, 217, 51, 190, 68, 84, 26, 62, 50, 217, 159, 186, 49, 242, 143, 62, 110, 27, 247, 61, 35, 219, 4, 62, 57, 85, 127, 62, 128, 181, 34, 62, 131, 178, 45, 62, 74, 62, 101, 62, 202, 93, 241, 61, 244, 114, 111, 62, 156, 233, 31, 62, 232, 229, 232, 61, 79, 145, 143, 61, 23, 66, 139, 62, 20, 41, 250, 61, 16, 1, 116, 190, 44, 85, 24, 62, 42, 153, 229, 61, 124, 211, 36, 190, 99, 209, 107, 62, 236, 178, 39, 62, 187, 157, 246, 61, 229, 233, 129, 190, 208, 170, 34, 62, 238, 178, 82, 190, 210, 212, 67, 62, 48, 206, 4, 62, 15, 230, 135, 190, 154, 34, 188, 61, 233, 137, 230, 61, 42, 227, 27, 190, 50, 222, 113, 190, 254, 161, 241, 61, 52, 8, 110, 190, 174, 214, 33, 62, 226, 184, 30, 62, 130, 25, 46, 62, 246, 241, 100, 62, 178, 252, 16, 62, 220, 166, 67, 190, 119, 220, 82, 190, 244, 134, 42, 62, 29, 204, 124, 190, 89, 179, 9, 190, 154, 156, 5, 62, 100, 35, 130, 62, 54, 181, 244, 61, 62, 34, 40, 62, 143, 29, 87, 190, 233, 241, 62, 190, 134, 96, 223, 61, 88, 184, 138, 62, 88, 45, 152, 61, 150, 45, 16, 62, 136, 86, 40, 62, 22, 55, 105, 190, 46, 242, 234, 61, 163, 97, 141, 190, 220, 125, 87, 61, 241, 12, 17, 62, 106, 204, 250, 188, 158, 13, 143, 190, 164, 22, 23, 62, 8, 41, 135, 190, 240, 90, 196, 189, 184, 252, 254, 61, 120, 84, 143, 62, 59, 66, 211, 60, 49, 18, 32, 62, 197, 59, 255, 61, 74, 230, 128, 62, 46, 65, 220, 61, 133, 95, 143, 190, 91, 41, 197, 188, 190, 153, 0, 62, 236, 34, 35, 62, 247, 17, 109, 62, 33, 75, 1, 62, 198, 25, 34, 190, 121, 214, 109, 190, 206, 87, 246, 61, 218, 24, 93, 190, 184, 83, 56, 62, 60, 138, 214, 61, 87, 178, 56, 190, 84, 195, 92, 62, 234, 132, 39, 62, 219, 199, 143, 190, 83, 10, 0, 60, 54, 106, 208, 61, 4, 250, 142, 190, 253, 134, 1, 61, 244, 105, 191, 61, 244, 188, 49, 189, 251, 20, 142, 62, 63, 65, 17, 62, 139, 158, 62, 61, 202, 215, 141, 190, 60, 248, 22, 62, 66, 89, 38, 62, 134, 176, 106, 62, 116, 133, 30, 62, 204, 84, 198, 188, 152, 94, 143, 190, 15, 128, 34, 62, 46, 169, 143, 62, 197, 83, 78, 60, 173, 182, 210, 61, 242, 59, 141, 190, 42, 109, 95, 189, 192, 175, 38, 62, 72, 223, 133, 190, 228, 177, 210, 189, 90, 196, 4, 62, 24, 170, 102, 62, 164, 199, 43, 62, 94, 107, 251, 61, 82, 65, 128, 190, 216, 90, 2, 62, 9, 56, 198, 61, 68, 146, 136, 62, 126, 165, 180, 61, 253, 182, 11, 62, 217, 81, 134, 62, 130, 182, 205, 61, 66, 90, 232, 61, 105, 25, 142, 190, 167, 206, 48, 189, 183, 145, 36, 62, 68, 0, 238, 189, 111, 237, 130, 190, 254, 208, 37, 62, 204, 224, 113, 62, 216, 222, 27, 62, 110, 239, 21, 62, 216, 156, 68, 62, 35, 254, 81, 190, 250, 120, 6, 62, 100, 53, 137, 190, 133, 141, 173, 61, 26, 102, 33, 62, 38, 219, 11, 190, 127, 128, 123, 62, 175, 203, 22, 62, 122, 246, 58, 62, 248, 182, 90, 190, 191, 91, 183, 61, 120, 220, 186, 189, 90, 3, 136, 190, 218, 13, 10, 62, 88, 181, 110, 190, 13, 237, 32, 190, 166, 101, 185, 61, 223, 37, 100, 190, 231, 44, 47, 62, 108, 239, 16, 62, 190, 43, 37, 190, 250, 143, 107, 190, 42, 88, 237, 61, 146, 133, 173, 61, 25, 54, 137, 190, 74, 218, 10, 62, 227, 195, 148, 58, 188, 242, 143, 62, 117, 248, 208, 61, 89, 82, 75, 190, 198, 237, 75, 62, 51, 215, 1, 62, 205, 151, 73, 190, 196, 125, 77, 62, 50, 212, 200, 61, 16, 27, 93, 190, 70, 81, 56, 62, 120, 77, 205, 61, 148, 8, 133, 62, 23, 8, 220, 61, 6, 43, 0, 62, 126, 61, 243, 189, 154, 79, 130, 190, 40, 91, 222, 61, 40, 120, 33, 62, 64, 78, 110, 62, 100, 88, 39, 62, 163, 2, 79, 190, 144, 233, 71, 62, 230, 84, 17, 62, 243, 110, 110, 190, 9, 76, 33, 190, 165, 182, 0, 62, 233, 156, 143, 190, 11, 165, 109, 188, 90, 1, 245, 61, 75, 182, 230, 189, 6, 201, 131, 62, 200, 5, 195, 61, 3, 19, 71, 190, 142, 196, 79, 62, 212, 140, 40, 62, 12, 132, 204, 189, 94, 109, 134, 62, 208, 6, 26, 62, 24, 42, 238, 188, 161, 43, 143, 62, 151, 107, 23, 62, 33, 66, 7, 190, 188, 51, 126, 190, 227, 43, 189, 61, 237, 156, 137, 190, 224, 12, 169, 189, 100, 74, 31, 62, 239, 202, 123, 62, 78, 95, 11, 62, 108, 93, 255, 61, 53, 21, 6, 190, 98, 193, 126, 190, 189, 26, 3, 62, 117, 125, 181, 61, 220, 126, 136, 62, 220, 220, 229, 61, 202, 155, 119, 62, 186, 85, 18, 62, 178, 247, 25, 62, 54, 149, 84, 190, 60, 191, 65, 190, 213, 110, 24, 62, 58, 171, 71, 190, 251, 58, 79, 62, 31, 129, 32, 62, 141, 234, 143, 190, 241, 247, 29, 59, 186, 217, 33, 62, 241, 133, 143, 62, 159, 33, 148, 60, 189, 25, 23, 62, 64, 231, 38, 62, 73, 71, 106, 62, 74, 240, 182, 61, 105, 175, 11, 190, 201, 154, 123, 62, 60, 255, 9, 62, 208, 14, 86, 189, 113, 104, 141, 190, 76, 218, 34, 62, 188, 113, 142, 62, 0, 55, 30, 61, 222, 69, 40, 62, 42, 25, 58, 62, 2, 127, 91, 190, 174, 246, 30, 62, 24, 109, 1, 62, 68, 121, 128, 190, 96, 37, 36, 62, 100, 107, 175, 189, 118, 10, 137, 190, 200, 214, 249, 61, 252, 195, 83, 62, 184, 166, 66, 62, 37, 222, 188, 61, 143, 64, 139, 190, 240, 169, 143, 61, 142, 138, 39, 62, 161, 227, 131, 62, 69, 212, 229, 189, 30, 195, 8, 62, 90, 175, 141, 190, 6, 34, 71, 61, 6, 68, 42, 62, 168, 1, 62, 62, 182, 246, 87, 190, 216, 25, 200, 61, 208, 215, 90, 62, 37, 210, 58, 190, 10, 119, 192, 61, 124, 180, 108, 61, 137, 213, 140, 62, 216, 93, 24, 62, 13, 42, 141, 62, 13, 36, 98, 61, 34, 187, 231, 61, 162, 75, 86, 190, 44, 218, 63, 62, 6, 245, 231, 61, 144, 183, 103, 190, 10, 92, 42, 190, 150, 229, 31, 62, 147, 187, 217, 188, 99, 79, 143, 190, 213, 152, 9, 62, 208, 210, 31, 190, 167, 128, 111, 62, 246, 107, 186, 61, 8, 67, 183, 61, 30, 86, 136, 62, 196, 186, 20, 62, 92, 174, 140, 190, 63, 154, 113, 189, 170, 54, 185, 61, 73, 163, 140, 61, 248, 112, 139, 62, 5, 99, 31, 62, 22, 35, 237, 189, 119, 7, 131, 190, 178, 192, 247, 61, 114, 168, 135, 190, 136, 208, 190, 189, 232, 185, 25, 62, 128, 224, 148, 189, 36, 237, 138, 62, 166, 162, 43, 62, 190, 82, 172, 60, 249, 114, 143, 190, 58, 157, 218, 61, 252, 13, 136, 188, 102, 143, 143, 190, 225, 154, 23, 62, 192, 207, 108, 62, 70, 124, 35, 62, 125, 129, 40, 62, 82, 28, 143, 190, 43, 156, 244, 60, 252, 212, 25, 62, 207, 170, 203, 61, 226, 128, 134, 62, 236, 113, 4, 62, 182, 205, 93, 60, 28, 163, 143, 62, 131, 150, 39, 62, 202, 5, 138, 62, 50, 86, 163, 189, 102, 41, 203, 61, 136, 116, 142, 62, 22, 160, 29, 61, 237, 172, 25, 62, 69, 3, 123, 189, 18, 99, 140, 62, 34, 83, 223, 61, 64, 46, 170, 189, 239, 130, 137, 62, 44, 189, 34, 62, 14, 88, 140, 190, 19, 100, 124, 61, 210, 12, 229, 61, 101, 44, 4, 190, 122, 167, 127, 62, 55, 185, 250, 61, 255, 242, 135, 62, 146, 146, 187, 189, 176, 154, 39, 62, 244, 170, 150, 61, 125, 208, 138, 62, 202, 112, 194, 61, 76, 64, 132, 190, 200, 192, 226, 189, 7, 210, 38, 62, 3, 20, 131, 190, 137, 184, 236, 61, 88, 37, 234, 61, 237, 56, 15, 190, 158, 122, 121, 62, 196, 114, 9, 62, 170, 32, 204, 188, 13, 90, 143, 190, 21, 50, 254, 61, 19, 67, 195, 61, 42, 66, 135, 190, 64, 168, 6, 62, 13, 19, 83, 190, 121, 106, 67, 62, 35, 77, 20, 62, 24, 249, 141, 62, 26, 156, 55, 189, 240, 50, 245, 61, 90, 44, 101, 62, 188, 202, 45, 62, 234, 130, 23, 62, 232, 102, 143, 190, 61, 187, 187, 60, 30, 148, 222, 61, 252, 190, 101, 190, 225, 4, 45, 190, 250, 243, 245, 61, 118, 192, 130, 190, 130, 126, 239, 189, 58, 38, 33, 62, 118, 223, 142, 62, 18, 30, 7, 61, 214, 209, 19, 62, 229, 136, 205, 189, 240, 85, 134, 62, 124, 101, 248, 61, 158, 108, 225, 59, 219, 205, 143, 190, 145, 105, 203, 61, 49, 225, 61, 62, 12, 20, 88, 190, 72, 32, 31, 62, 250, 224, 1, 190, 255, 93, 128, 62, 142, 122, 28, 62, 229, 0, 136, 62, 213, 247, 186, 61, 125, 254, 15, 62, 248, 235, 200, 61, 4, 192, 134, 62, 128, 176, 2, 62, 9, 211, 177, 61, 40, 211, 136, 62, 58, 89, 209, 61, 156, 232, 8, 62, 240, 69, 125, 190, 13, 189, 251, 61, 168, 14, 135, 62, 139, 128, 197, 61, 55, 215, 39, 62, 10, 22, 43, 190, 180, 45, 103, 190, 137, 196, 227, 61, 10, 9, 90, 61, 140, 85, 141, 62, 152, 218, 226, 61, 144, 8, 98, 189, 232, 42, 141, 190, 176, 1, 208, 61, 126, 18, 141, 190, 7, 22, 101, 189, 82, 34, 243, 61, 210, 244, 251, 189, 4, 73, 129, 190, 76, 109, 209, 61, 112, 94, 221, 187, 166, 206, 143, 190, 140, 154, 223, 61, 140, 231, 142, 62, 89, 106, 5, 189, 114, 40, 201, 61, 96, 177, 104, 190, 246, 10, 41, 62, 218, 106, 218, 61, 238, 102, 98, 62, 246, 135, 49, 62, 126, 203, 186, 61, 150, 228, 140, 62, 245, 210, 106, 189, 208, 21, 204, 61, 63, 141, 35, 62, 41, 195, 108, 190, 60, 219, 239, 61, 199, 65, 126, 62, 84, 36, 7, 190, 161, 44, 34, 62, 232, 101, 143, 62, 6, 3, 189, 60, 234, 4, 36, 62, 80, 153, 103, 61, 98, 254, 140, 190, 64, 73, 210, 61, 182, 66, 140, 62, 2, 15, 127, 189, 83, 92, 234, 61, 246, 229, 129, 62, 52, 191, 246, 61, 129, 62, 16, 62, 165, 49, 61, 62, 184, 178, 88, 62, 233, 145, 27, 62, 182, 17, 170, 61, 127, 133, 137, 62, 230, 227, 23, 62, 91, 2, 136, 190, 144, 231, 186, 61, 108, 180, 5, 62, 161, 77, 145, 60, 39, 136, 143, 62, 23, 225, 10, 62, 146, 49, 214, 188, 41, 82, 143, 62, 208, 188, 234, 61, 140, 63, 106, 62, 180, 241, 38, 190, 89, 207, 18, 62, 223, 113, 4, 62, 198, 134, 127, 190, 97, 51, 238, 61, 222, 133, 143, 190, 236, 57, 148, 60, 178, 163, 204, 61, 46, 218, 126, 189, 91, 68, 140, 62, 10, 124, 18, 62, 223, 167, 142, 62, 146, 209, 18, 61, 172, 138, 182, 61, 96, 140, 143, 190, 205, 236, 139, 188, 12, 191, 7, 62, 124, 28, 97, 190, 215, 69, 51, 62, 80, 153, 253, 61, 57, 145, 60, 189, 138, 225, 141, 190, 30, 187, 224, 61, 12, 64, 140, 190, 60, 100, 127, 189, 160, 177, 248, 61, 186, 180, 39, 190, 1, 175, 105, 62, 168, 198, 5, 62, 118, 107, 202, 188, 100, 91, 143, 62, 57, 124, 244, 61, 66, 213, 122, 61, 130, 100, 140, 62, 116, 103, 242, 61, 10, 22, 102, 62, 106, 143, 44, 190, 12, 34, 18, 62, 200, 229, 63, 189, 183, 209, 141, 190, 200, 106, 30, 62, 191, 171, 113, 60, 82, 155, 143, 190, 96, 3, 210, 61, 21, 88, 68, 62, 72, 60, 82, 190, 9, 40, 250, 61, 165, 66, 106, 62, 133, 237, 38, 62, 32, 121, 247, 61, 102, 140, 219, 189, 175, 19, 133, 62, 251, 239, 35, 62, 96, 197, 143, 190, 92, 96, 6, 60, 168, 27, 230, 61, 192, 217, 116, 62, 156, 236, 22, 190, 190, 237, 230, 61, 234, 233, 129, 62, 166, 157, 246, 61, 147, 152, 17, 62, 0, 128, 143, 190, 124, 181, 155, 188, 91, 88, 205, 61, 181, 248, 141, 62, 251, 176, 55, 189, 112, 161, 224, 61, 29, 17, 22, 189, 111, 152, 142, 190, 90, 201, 190, 61, 59, 68, 10, 190, 10, 117, 124, 190, 84, 52, 37, 62, 58, 6, 10, 190, 77, 154, 124, 62, 170, 202, 211, 61, 114, 154, 143, 190, 135, 237, 115, 188, 6, 36, 11, 62, 246, 58, 244, 60, 56, 29, 143, 190, 21, 68, 205, 61, 192, 178, 130, 62, 3, 243, 239, 189, 5, 223, 5, 62, 234, 44, 141, 62, 136, 200, 97, 61, 251, 151, 42, 62, 145, 155, 155, 61, 116, 129, 138, 190, 44, 214, 38, 62, 210, 202, 138, 190, 189, 5, 151, 61, 22, 133, 1, 62, 67, 128, 109, 62, 27, 142, 34, 62, 215, 31, 31, 62, 181, 226, 140, 190, 17, 15, 107, 189, 200, 113, 182, 61, 79, 194, 113, 190, 150, 17, 28, 190, 244, 254, 199, 61, 111, 234, 7, 62, 175, 222, 125, 62, 36, 199, 234, 61, 174, 71, 139, 190, 1, 56, 143, 61, 219, 249, 4, 62, 24, 159, 33, 190, 100, 49, 110, 62, 6, 250, 12, 62, 28, 154, 152, 61, 138, 177, 138, 190, 222, 9, 39, 62, 110, 27, 141, 62, 15, 248, 99, 189, 32, 0, 9, 62, 66, 159, 143, 62, 189, 166, 103, 188, 150, 70, 28, 62, 132, 172, 23, 61, 205, 144, 142, 62, 14, 14, 187, 61, 31, 253, 161, 189, 91, 27, 138, 190, 191, 58, 250, 61, 212, 147, 14, 61, 3, 188, 142, 190, 43, 191, 10, 62, 14, 100, 20, 190, 123, 95, 118, 190, 208, 64, 26, 62, 138, 157, 141, 190, 196, 225, 74, 189, 114, 6, 187, 61, 165, 187, 42, 190, 179, 112, 103, 62, 210, 253, 6, 62, 225, 114, 140, 190, 150, 9, 121, 61, 0, 201, 38, 62, 152, 65, 127, 190, 220, 4, 5, 62, 246, 80, 236, 61, 185, 234, 142, 62, 48, 191, 4, 61, 63, 173, 9, 62, 205, 39, 19, 62, 138, 29, 119, 190, 255, 133, 34, 62, 151, 163, 138, 190, 110, 121, 153, 61, 20, 83, 210, 61, 152, 26, 182, 189, 191, 112, 136, 190, 165, 33, 183, 61, 83, 148, 56, 189, 123, 244, 141, 190, 74, 220, 26, 62, 245, 190, 152, 189, 61, 175, 138, 190, 72, 183, 229, 61, 45, 228, 139, 62, 16, 112, 133, 61, 4, 1, 199, 61, 74, 85, 14, 190, 106, 3, 122, 62, 74, 183, 203, 61, 228, 115, 129, 190, 141, 136, 250, 61, 29, 14, 8, 62, 52, 185, 19, 62, 40, 198, 118, 62, 205, 194, 4, 62, 151, 174, 71, 62, 241, 55, 79, 190, 83, 119, 28, 62, 61, 226, 93, 62, 233, 116, 55, 190, 4, 203, 41, 62, 60, 46, 44, 62, 12, 94, 102, 190, 91, 187, 17, 62, 64, 150, 129, 190, 145, 100, 249, 189, 132, 87, 230, 61, 204, 27, 187, 188, 100, 103, 143, 190, 117, 254, 240, 61, 223, 61, 114, 61, 62, 169, 140, 190, 76, 51, 16, 62, 146, 139, 205, 189, 179, 85, 134, 62, 103, 182, 214, 61, 10, 170, 140, 62, 126, 36, 114, 189, 236, 19, 194, 61, 231, 184, 17, 62, 6, 250, 119, 62, 74, 148, 33, 62, 88, 112, 143, 190, 216, 176, 175, 188, 48, 225, 17, 62, 26, 36, 76, 62, 61, 22, 75, 62, 130, 149, 20, 62, 182, 44, 157, 61, 97, 104, 138, 190, 112, 132, 35, 62, 208, 175, 44, 62, 4, 254, 101, 62, 0, 197, 30, 62, 174, 189, 20, 190, 160, 41, 118, 62, 237, 131, 40, 62, 134, 31, 92, 190, 146, 103, 57, 62, 168, 90, 1, 62, 99, 23, 169, 189, 250, 155, 137, 190, 225, 248, 236, 61, 252, 41, 139, 62, 20, 19, 145, 61, 157, 29, 32, 62, 59, 139, 255, 60, 89, 2, 143, 62, 242, 9, 39, 62, 41, 198, 117, 62, 52, 99, 21, 62, 156, 203, 206, 61, 53, 231, 137, 189, 185, 156, 139, 62, 44, 73, 212, 61, 62, 11, 22, 188, 58, 191, 143, 62, 48, 101, 208, 61, 104, 80, 15, 189, 131, 184, 142, 62, 49, 238, 13, 62, 255, 163, 110, 62, 118, 4, 33, 190, 16, 175, 24, 62, 94, 49, 142, 62, 161, 195, 43, 189, 171, 171, 252, 61, 161, 1, 133, 190, 117, 85, 220, 61, 15, 59, 42, 62, 34, 82, 122, 190, 82, 210, 13, 190, 146, 45, 246, 61, 191, 115, 140, 62, 220, 237, 120, 61, 138, 219, 247, 61, 221, 235, 85, 190, 32, 68, 64, 190, 224, 110, 192, 61, 122, 174, 143, 190, 156, 207, 64, 188, 215, 201, 31, 62, 35, 2, 129, 190, 44, 79, 254, 189, 227, 182, 22, 62, 82, 133, 35, 62, 10, 201, 108, 190, 64, 249, 3, 62, 165, 141, 70, 188, 56, 172, 143, 190, 142, 243, 42, 62, 249, 61, 122, 62, 221, 243, 13, 62, 42, 5, 207, 61, 111, 206, 137, 61, 70, 158, 139, 62, 254, 113, 22, 62, 241, 53, 124, 190, 64, 173, 10, 62, 80, 202, 7, 62, 140, 151, 36, 190, 207, 253, 107, 190, 161, 128, 36, 62, 193, 212, 132, 189, 224, 237, 139, 62, 154, 10, 30, 62, 74, 83, 253, 189, 198, 31, 129, 190, 44, 160, 229, 61, 166, 188, 69, 190, 2, 250, 80, 62, 19, 202, 253, 61, 186, 28, 117, 189, 71, 146, 140, 62, 74, 180, 253, 61, 24, 210, 134, 190, 200, 34, 200, 189, 39, 158, 227, 61, 247, 188, 204, 61, 66, 104, 134, 190, 39, 193, 29, 62, 96, 219, 87, 62, 232, 31, 62, 190, 216, 135, 6, 62, 21, 82, 93, 190, 102, 20, 56, 62, 30, 79, 183, 61, 248, 158, 130, 62, 32, 155, 240, 61, 221, 143, 8, 62, 164, 204, 117, 61, 199, 140, 140, 62, 52, 25, 184, 61, 160, 228, 35, 61, 192, 86, 142, 62, 137, 138, 191, 61, 216, 122, 109, 62, 106, 149, 34, 190, 122, 89, 8, 62, 192, 252, 85, 190, 114, 49, 64, 62, 15, 71, 15, 62, 111, 172, 114, 190, 254, 139, 26, 62, 242, 142, 248, 61, 246, 26, 44, 61, 190, 47, 142, 190, 247, 17, 7, 62, 6, 190, 135, 190, 72, 224, 189, 189, 170, 161, 240, 61, 146, 9, 152, 61, 148, 186, 138, 62, 3, 39, 252, 61, 124, 2, 136, 189, 4, 187, 139, 190, 205, 177, 255, 61, 10, 159, 131, 62, 26, 27, 232, 189, 220, 215, 223, 61, 108, 122, 10, 62, 121, 84, 124, 62, 238, 135, 255, 61, 1, 83, 68, 189, 176, 188, 141, 190, 40, 141, 11, 62, 48, 167, 236, 61, 12, 22, 131, 190, 148, 227, 11, 62, 132, 198, 44, 61, 142, 44, 142, 62, 42, 80, 212, 61, 218, 132, 12, 189, 202, 197, 142, 62, 36, 173, 39, 62, 116, 124, 19, 190, 169, 234, 118, 190, 238, 106, 191, 61, 207, 208, 46, 190, 28, 106, 100, 190, 120, 255, 38, 62, 97, 178, 106, 190, 193, 86, 38, 62, 180, 62, 13, 62, 20, 153, 137, 190, 192, 55, 169, 61, 38, 58, 202, 61, 59, 231, 138, 62, 41, 63, 149, 189, 81, 223, 6, 62, 49, 154, 2, 190, 102, 50, 128, 62, 117, 21, 21, 62, 210, 90, 139, 62, 191, 5, 142, 61, 254, 15, 37, 62, 227, 144, 143, 62, 80, 42, 134, 188, 145, 189, 27, 62, 36, 217, 136, 190, 127, 144, 177, 189, 202, 151, 231, 61, 84, 99, 71, 62, 246, 123, 79, 62, 46, 183, 188, 61, 211, 31, 143, 62, 53, 35, 243, 188, 186, 116, 213, 61, 52, 174, 121, 190, 26, 227, 14, 190, 100, 54, 183, 61, 133, 78, 199, 61, 40, 229, 134, 190, 173, 70, 198, 61, 146, 94, 99, 189, 56, 32, 141, 62, 192, 177, 220, 61, 114, 197, 212, 189, 136, 175, 133, 190, 74, 1, 238, 61, 9, 16, 174, 61, 169, 41, 137, 190, 204, 174, 251, 61, 101, 38, 40, 190, 194, 90, 105, 190, 216, 243, 222, 61, 192, 23, 83, 61, 135, 118, 141, 190, 255, 34, 13, 62, 97, 74, 143, 190, 120, 34, 224, 60, 0, 74, 3, 62, 84, 71, 194, 60, 197, 97, 143, 62, 238, 88, 11, 62, 93, 34, 3, 62, 90, 18, 128, 190, 78, 52, 229, 61, 122, 127, 120, 190, 219, 218, 16, 190, 229, 158, 9, 62, 86, 187, 147, 189, 119, 255, 138, 62, 47, 129, 40, 62, 233, 244, 238, 188, 190, 41, 143, 190, 189, 45, 37, 62, 133, 54, 137, 62, 239, 128, 173, 61, 122, 243, 25, 62, 31, 172, 112, 62, 126, 224, 29, 190, 213, 233, 11, 62, 42, 81, 61, 189, 249, 221, 141, 62, 186, 20, 29, 62, 12, 99, 142, 190, 111, 78, 33, 61, 247, 244, 230, 61, 235, 64, 129, 189, 30, 39, 140, 62, 188, 152, 0, 62, 159, 181, 107, 190, 244, 248, 36, 62, 190, 163, 36, 62, 187, 20, 74, 190, 218, 12, 77, 190, 39, 3, 248, 61, 114, 136, 60, 190, 167, 75, 89, 62, 48, 98, 199, 61, 180, 50, 144, 61, 1, 56, 139, 190, 38, 159, 29, 62, 3, 115, 106, 62, 66, 172, 38, 62, 52, 218, 195, 61, 34, 48, 98, 62, 230, 209, 49, 190, 158, 81, 5, 62, 178, 213, 186, 61, 245, 3, 136, 190, 60, 65, 221, 61, 220, 69, 131, 60, 38, 147, 143, 62, 98, 107, 35, 62, 22, 143, 43, 62, 254, 211, 102, 190, 222, 234, 7, 62, 120, 107, 72, 61, 59, 169, 141, 190, 27, 169, 246, 61, 179, 37, 10, 60, 227, 195, 143, 62, 4, 12, 229, 61, 143, 225, 67, 190, 104, 167, 82, 62, 32, 128, 38, 62, 140, 64, 124, 62, 155, 155, 10, 190, 52, 21, 214, 61, 54, 253, 91, 61, 68, 76, 141, 62, 10, 145, 251, 61, 185, 56, 30, 62, 24, 119, 112, 190, 118, 171, 211, 61, 214, 235, 47, 61, 156, 29, 142, 62, 214, 71, 18, 62, 223, 174, 137, 62, 34, 69, 168, 61, 245, 2, 229, 61, 250, 137, 24, 188, 64, 190, 143, 190, 139, 142, 34, 62, 0, 122, 131, 189, 140, 3, 140, 190, 39, 232, 185, 61, 88, 216, 190, 61, 188, 167, 135, 62, 208, 138, 236, 61, 252, 110, 95, 189, 231, 59, 141, 62, 12, 224, 209, 61, 92, 254, 65, 62, 40, 92, 84, 190, 217, 234, 234, 61, 161, 244, 91, 62, 7, 151, 57, 190, 6, 113, 14, 62, 20, 109, 142, 62, 254, 49, 31, 189, 106, 51, 188, 61, 60, 181, 133, 190, 6, 134, 212, 189, 17, 23, 38, 62, 106, 233, 83, 62, 78, 125, 66, 62, 222, 105, 238, 61, 3, 67, 8, 62, 117, 169, 125, 190, 81, 33, 252, 61, 140, 229, 118, 62, 252, 132, 19, 190, 90, 138, 185, 61, 102, 233, 241, 187, 160, 202, 143, 190, 51, 53, 15, 62, 197, 3, 87, 59, 245, 228, 143, 62, 178, 157, 230, 61, 136, 67, 143, 62, 64, 26, 228, 188, 215, 169, 213, 61, 113, 79, 89, 190, 65, 132, 60, 190, 220, 188, 25, 62, 205, 33, 151, 61, 16, 201, 138, 190, 97, 40, 210, 61, 55, 82, 130, 190, 78, 39, 243, 189, 54, 247, 38, 62, 126, 244, 129, 190, 187, 67, 246, 189, 36, 230, 251, 61, 12, 172, 68, 62, 102, 240, 81, 190, 248, 184, 204, 61, 60, 232, 126, 62, 178, 194, 5, 190, 29, 231, 226, 61, 192, 95, 127, 190, 206, 196, 4, 62, 48, 171, 19, 62, 216, 209, 143, 190, 43, 29, 205, 59, 58, 185, 6, 62, 33, 108, 95, 190, 58, 141, 53, 62, 6, 75, 208, 61, 150, 127, 118, 190, 164, 46, 20, 62, 245, 10, 252, 61, 134, 5, 20, 61, 38, 162, 142, 62, 130, 151, 211, 61, 152, 113, 194, 188, 164, 97, 143, 62, 189, 85, 235, 61, 119, 168, 142, 190, 140, 177, 18, 61, 78, 237, 230, 61, 138, 53, 99, 189, 128, 33, 141, 190, 74, 251, 3, 62, 221, 205, 142, 190, 42, 210, 10, 61, 214, 148, 236, 61, 138, 169, 232, 61, 70, 142, 131, 190, 64, 90, 204, 61, 244, 136, 132, 190, 105, 87, 224, 189, 242, 123, 222, 61, 63, 48, 199, 188, 236, 93, 143, 190, 87, 107, 219, 61, 228, 214, 93, 190, 119, 129, 55, 62, 254, 139, 33, 62, 252, 224, 62, 188, 58, 175, 143, 62, 90, 230, 18, 62, 28, 48, 6, 190, 184, 180, 126, 190, 231, 198, 188, 61, 208, 185, 143, 190, 250, 225, 35, 188, 152, 92, 250, 61, 58, 218, 121, 190, 217, 153, 14, 62, 32, 78, 10, 62, 214, 222, 127, 62, 208, 182, 3, 62, 49, 121, 33, 62, 94, 158, 142, 190, 194, 209, 20, 61, 202, 34, 0, 62, 218, 206, 243, 61, 127, 62, 130, 190, 10, 197, 22, 62, 7, 0, 141, 190, 247, 100, 103, 189, 30, 191, 253, 61, 89, 227, 111, 62, 150, 46, 31, 190, 184, 43, 33, 62, 94, 107, 48, 62, 216, 57, 99, 190, 115, 107, 33, 62, 69, 115, 252, 61, 35, 58, 129, 62, 118, 65, 251, 61, 139, 204, 93, 62, 232, 140, 55, 190, 95, 183, 6, 62, 149, 146, 102, 190, 92, 231, 43, 190, 203, 111, 22, 62, 20, 95, 137, 62, 104, 189, 171, 61, 62, 71, 226, 61, 102, 89, 136, 190, 138, 30, 183, 61, 160, 85, 34, 62, 229, 192, 234, 187, 7, 204, 143, 62, 196, 100, 5, 62, 225, 236, 113, 62, 189, 202, 27, 190, 122, 223, 0, 62, 217, 116, 93, 190, 241, 237, 55, 190, 159, 164, 19, 62, 26, 147, 120, 190, 51, 186, 16, 62, 53, 37, 17, 62, 168, 187, 140, 190, 200, 240, 111, 189, 188, 128, 231, 61, 132, 167, 75, 62, 22, 160, 75, 62, 170, 52, 0, 62, 7, 226, 119, 62, 218, 224, 17, 62, 47, 9, 6, 62, 201, 41, 168, 189, 82, 177, 137, 190, 138, 186, 236, 61, 63, 49, 251, 188, 174, 12, 143, 62, 130, 171, 7, 62, 170, 190, 137, 190, 72, 149, 167, 61, 106, 252, 191, 61, 82, 91, 229, 59, 21, 205, 143, 62, 196, 122, 21, 62, 128, 8, 132, 62, 238, 154, 228, 61, 22, 85, 16, 62, 191, 38, 68, 62, 225, 104, 82, 62, 197, 215, 9, 62, 67, 234, 1, 190, 207, 91, 128, 190, 3, 62, 13, 62, 70, 129, 120, 61, 34, 119, 140, 62, 76, 142, 5, 62, 242, 90, 57, 190, 239, 42, 92, 62, 23, 104, 203, 61, 84, 157, 143, 62, 242, 147, 108, 60, 6, 177, 31, 62, 188, 161, 111, 62, 197, 155, 31, 62, 188, 175, 3, 62, 59, 164, 98, 62, 62, 53, 49, 62, 92, 114, 238, 61, 101, 130, 195, 61, 123, 60, 135, 190, 251, 75, 189, 61, 181, 53, 35, 62, 11, 4, 109, 190, 54, 141, 25, 62, 150, 112, 38, 190, 59, 159, 106, 190, 129, 192, 27, 62, 141, 74, 142, 190, 180, 118, 38, 189, 15, 251, 27, 62, 182, 92, 19, 190, 188, 253, 118, 62, 36, 119, 15, 62, 97, 161, 68, 61, 60, 187, 141, 62, 4, 39, 189, 61, 96, 150, 83, 190, 46, 217, 66, 62, 103, 103, 223, 61, 94, 173, 144, 189, 87, 48, 139, 62, 210, 249, 1, 62, 92, 234, 79, 190, 49, 233, 70, 190, 220, 92, 18, 62, 162, 144, 143, 62, 231, 125, 134, 188, 15, 7, 33, 62, 44, 67, 76, 62, 222, 243, 74, 62, 109, 11, 229, 61, 58, 117, 111, 189, 130, 191, 140, 62, 206, 100, 41, 62, 139, 229, 143, 190, 164, 24, 81, 59, 121, 184, 216, 61, 236, 89, 130, 62, 208, 229, 242, 189, 103, 197, 17, 62, 51, 195, 31, 190, 9, 138, 111, 62, 40, 141, 208, 61, 90, 162, 136, 190, 101, 242, 179, 61, 210, 235, 234, 61, 116, 79, 160, 61, 54, 54, 138, 190, 128, 231, 236, 61, 236, 129, 143, 62, 139, 66, 153, 60, 25, 238, 240, 61, 44, 117, 124, 61, 131, 87, 140, 190, 232, 26, 243, 61, 32, 42, 202, 189, 112, 163, 134, 62, 198, 168, 213, 61, 150, 217, 205, 61, 177, 78, 134, 62, 228, 221, 5, 62, 134, 86, 209, 61, 123, 254, 133, 62, 82, 117, 213, 61, 125, 66, 133, 62, 104, 131, 217, 61, 246, 231, 233, 61, 136, 189, 133, 62, 171, 41, 212, 61, 157, 45, 253, 61, 39, 201, 36, 189, 131, 82, 142, 190, 92, 92, 223, 61, 219, 36, 211, 189, 243, 212, 133, 190, 56, 1, 254, 61, 42, 65, 132, 190, 116, 185, 226, 189, 189, 8, 5, 62, 241, 105, 19, 62, 202, 245, 118, 62, 220, 26, 248, 61, 112, 99, 136, 190, 207, 174, 182, 61, 207, 155, 9, 62, 27, 93, 5, 61, 200, 231, 142, 62, 75, 131, 10, 62, 132, 88, 59, 190, 91, 94, 90, 190, 53, 20, 14, 62, 13, 106, 126, 190, 194, 206, 6, 190, 140, 202, 239, 61, 97, 17, 139, 190, 192, 156, 146, 189, 38, 52, 246, 61, 43, 245, 34, 190, 222, 51, 109, 190, 215, 229, 183, 61, 212, 227, 111, 62, 202, 45, 31, 190, 112, 7, 233, 61, 2, 90, 143, 190, 214, 49, 204, 60, 221, 42, 36, 62, 226, 161, 86, 62, 192, 122, 63, 190, 248, 232, 235, 61, 137, 229, 16, 189, 255, 176, 142, 62, 220, 9, 223, 61, 220, 51, 97, 190, 75, 38, 51, 62, 87, 244, 42, 62, 139, 217, 206, 61, 179, 55, 134, 190, 126, 250, 24, 62, 44, 111, 210, 61, 70, 229, 133, 190, 237, 156, 40, 62, 154, 79, 83, 190, 122, 39, 67, 62, 200, 109, 40, 62, 39, 224, 129, 62, 146, 240, 246, 189, 11, 22, 3, 62, 140, 88, 130, 190, 126, 241, 242, 189, 48, 212, 189, 61, 108, 108, 19, 190, 76, 244, 118, 62, 216, 126, 10, 62, 24, 79, 136, 190, 67, 145, 183, 189, 75, 125, 195, 61, 162, 235, 116, 62, 216, 206, 22, 190, 42, 253, 4, 62, 120, 93, 30, 189, 3, 113, 142, 62, 230, 88, 244, 61, 26, 104, 62, 59, 94, 231, 143, 62, 94, 41, 9, 62, 46, 134, 143, 190, 67, 211, 147, 188, 69, 149, 36, 62, 138, 76, 129, 190, 242, 214, 251, 189, 201, 234, 5, 62, 114, 134, 141, 62, 91, 190, 79, 189, 143, 98, 199, 61, 97, 24, 143, 190, 134, 69, 246, 60, 123, 52, 15, 62, 51, 82, 124, 189, 155, 88, 140, 190, 14, 40, 29, 62, 127, 12, 130, 62, 203, 119, 245, 61, 174, 117, 12, 62, 191, 41, 128, 61, 144, 56, 140, 190, 240, 32, 21, 62, 229, 75, 129, 190, 109, 220, 251, 61, 223, 146, 13, 62, 222, 186, 66, 190, 197, 177, 83, 62, 73, 77, 8, 62, 108, 135, 17, 62, 194, 23, 120, 62, 112, 38, 209, 61, 108, 198, 42, 190, 183, 104, 103, 190, 214, 213, 24, 62, 74, 171, 131, 61, 120, 0, 140, 190, 188, 214, 204, 61, 64, 214, 129, 62, 190, 68, 247, 189, 174, 118, 4, 62, 152, 4, 124, 189, 8, 91, 140, 190, 10, 167, 32, 62, 107, 242, 197, 189, 109, 4, 135, 62, 244, 164, 191, 61, 154, 14, 132, 190, 28, 103, 228, 189, 134, 234, 218, 61, 36, 186, 132, 62, 111, 181, 222, 61, 206, 244, 28, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), +"format": "RGBFloat", +"height": 1, +"mipmaps": false, +"width": 2048 +} + +[sub_resource type="ImageTexture" id="ImageTexture_ymtsl"] +image = SubResource("Image_3u2x4") + +[sub_resource type="Curve" id="Curve_ghf00"] +_data = [Vector2(0, 0.5195653), 0.0, 0.0, 0, 0, Vector2(0.24770641, 0.90725327), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0] +point_count = 3 + +[sub_resource type="CurveTexture" id="CurveTexture_mfvyt"] +curve = SubResource("Curve_ghf00") + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_lya8u"] +emission_shape = 5 +emission_point_texture = SubResource("ImageTexture_ymtsl") +emission_normal_texture = SubResource("ImageTexture_feye4") +emission_point_count = 512 +direction = Vector3(0, 0, 0) +spread = 180.0 +initial_velocity_min = 2.0 +initial_velocity_max = 10.0 +gravity = Vector3(0, 0, 0) +scale_min = 0.0 +scale_max = 0.31 +scale_curve = SubResource("CurveTexture_mfvyt") +scale_over_velocity_min = 32.45 +scale_over_velocity_max = 69.25 +color = Color(2.1043189, 2.1043189, 2.1043189, 1) +color_ramp = SubResource("GradientTexture1D_wyalx") +color_initial_ramp = SubResource("GradientTexture1D_oihxu") +alpha_curve = SubResource("CurveTexture_xu2ok") +turbulence_noise_strength = 18.82 +turbulence_noise_scale = 4.192 +turbulence_noise_speed_random = 1.95 + +[sub_resource type="QuadMesh" id="QuadMesh_wi4kk"] +size = Vector2(10, 10) + +[sub_resource type="SphereShape3D" id="SphereShape3D_j8gjs"] +radius = 11.0 + +[sub_resource type="Resource" id="Resource_wi4kk"] +script = ExtResource("10_lya8u") +metadata/_custom_type_script = "uid://d0x8co6nm8koo" [sub_resource type="Gradient" id="Gradient_ctpa3"] offsets = PackedFloat32Array(0, 0.5362319, 1) @@ -109,12 +345,16 @@ albedo_texture = SubResource("NoiseTexture2D_n6fo8") roughness = 0.93 normal_enabled = true normal_texture = SubResource("NoiseTexture2D_v8d1x") +rim_enabled = true +rim_tint = 1.0 subsurf_scatter_enabled = true subsurf_scatter_strength = 1.0 subsurf_scatter_skin_mode = true subsurf_scatter_transmittance_enabled = true subsurf_scatter_transmittance_depth = 8.0 subsurf_scatter_transmittance_boost = 1.0 +backlight_enabled = true +backlight = Color(0.6900825, 0.22685887, 0.11812438, 1) stencil_mode = 3 stencil_flags = 2 stencil_reference = 2 @@ -140,8 +380,8 @@ fill_to = Vector2(0.8034188, 0.6025641) noise_type = 2 frequency = 0.0118 fractal_octaves = 3 -fractal_lacunarity = 3.433 -fractal_gain = 0.2335 +fractal_lacunarity = 4.3055 +fractal_gain = 0.539 [sub_resource type="NoiseTexture2D" id="NoiseTexture2D_ypsyk"] noise = SubResource("FastNoiseLite_3p5o6") @@ -149,11 +389,18 @@ color_ramp = SubResource("Gradient_3t4rw") seamless = true as_normal_map = true normalize = false -bump_strength = 14.7 +bump_strength = 9.1 + +[sub_resource type="FastNoiseLite" id="FastNoiseLite_ean4y"] +frequency = 0.1497 + +[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_1wfvh"] +noise = SubResource("FastNoiseLite_ean4y") +seamless = true [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_pwyh7"] albedo_texture = SubResource("GradientTexture2D_jqb63") -roughness = 0.42 +roughness_texture = SubResource("NoiseTexture2D_1wfvh") normal_enabled = true normal_texture = SubResource("NoiseTexture2D_ypsyk") rim_enabled = true @@ -235,6 +482,7 @@ noise = SubResource("FastNoiseLite_msotc") seamless = true [sub_resource type="Gradient" id="Gradient_n6fo8"] +offsets = PackedFloat32Array(0.17898832, 0.3929961) [sub_resource type="GradientTexture2D" id="GradientTexture2D_rsbf7"] gradient = SubResource("Gradient_n6fo8") @@ -255,7 +503,8 @@ metallic = 0.12 metallic_specular = 0.46 roughness = 0.53 emission_enabled = true -emission = Color(0.10625774, 0.013449825, 0, 1) +emission = Color(3.73, 0.45879102, 0.2920001, 1) +emission_energy_multiplier = 0.0 normal_enabled = true normal_texture = SubResource("NoiseTexture2D_3t4rw") rim_enabled = true @@ -311,6 +560,402 @@ material = SubResource("StandardMaterial3D_q0e3t") radial_segments = 12 rings = 8 +[sub_resource type="FastNoiseLite" id="FastNoiseLite_ghf00"] +frequency = 0.0166 + +[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_mfvyt"] +noise = SubResource("FastNoiseLite_ghf00") +seamless = true + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_sm8dq"] +render_priority = -1 +shader = ExtResource("26_j8gjs") +shader_parameter/UV_scale = Vector2(1, 1) +shader_parameter/UV_offset = Vector2(0, 0.0265) +shader_parameter/UV_scrolling = Vector2(0.154, 0.404) +shader_parameter/objectNormalOffset = 0.8205 +shader_parameter/objectNormalOffsetTexture = SubResource("NoiseTexture2D_mfvyt") +shader_parameter/axisMaskAxisMask_Min = 5.0 +shader_parameter/axisMaskAxisMask_Max = -5.0 +shader_parameter/axisMaskAxisMask_AxisRotation = Vector3(0, 0, 0) +shader_parameter/albedo = Color(0.21208745, 0, 0.22166497, 0.25490198) +shader_parameter/alpha = 1.0 +shader_parameter/normalStrength = 1.0 +shader_parameter/roughness = 1.0 +shader_parameter/roughnessOffset = 0.0 +shader_parameter/metallic = 0.0 +shader_parameter/metallicOffset = 0.0 +shader_parameter/specular = 0.0 +shader_parameter/emission = Color(1, 1, 1, 1) +shader_parameter/emissionIntensity = 1.0 + +[sub_resource type="CapsuleMesh" id="CapsuleMesh_xu2ok"] +material = SubResource("ShaderMaterial_sm8dq") +radius = 0.112 +height = 10.0 + +[sub_resource type="Gradient" id="Gradient_oslmd"] +offsets = PackedFloat32Array(0.10144927, 0.8309179) + +[sub_resource type="FastNoiseLite" id="FastNoiseLite_xd01g"] +frequency = 0.007 +fractal_gain = 1.096 + +[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_r7gxw"] +noise = SubResource("FastNoiseLite_xd01g") +color_ramp = SubResource("Gradient_oslmd") + +[sub_resource type="FastNoiseLite" id="FastNoiseLite_k5c1h"] +frequency = 0.0166 + +[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_lds7d"] +noise = SubResource("FastNoiseLite_k5c1h") +seamless = true + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_ncwc7"] +render_priority = 1 +shader = ExtResource("25_qf8ke") +shader_parameter/UV_scale = Vector2(1, 1) +shader_parameter/UV_offset = Vector2(0, 0) +shader_parameter/UV_scrolling = Vector2(0.0505, 0.39) +shader_parameter/objectNormalOffset = 0.502 +shader_parameter/objectNormalOffsetTexture = SubResource("NoiseTexture2D_lds7d") +shader_parameter/axisMaskAxisMask_Min = 5.0 +shader_parameter/axisMaskAxisMask_Max = -50.0 +shader_parameter/axisMaskAxisMask_AxisRotation = Vector3(0, 0, 0) +shader_parameter/albedo = Color(1.8247963, 0.47775745, 0.3280865, 1) +shader_parameter/alpha = 1.0 +shader_parameter/alphaTexture = SubResource("NoiseTexture2D_r7gxw") +shader_parameter/normalStrength = 1.0 +shader_parameter/roughness = 1.0 +shader_parameter/roughnessOffset = 0.0 +shader_parameter/metallic = 0.23600001121 +shader_parameter/metallicOffset = 0.0 +shader_parameter/specular = 0.0 +shader_parameter/emission = Color(1, 1, 1, 1) +shader_parameter/emissionIntensity = 1.0 + +[sub_resource type="CapsuleMesh" id="CapsuleMesh_vlmmu"] +material = SubResource("ShaderMaterial_ncwc7") +radius = 0.112 +height = 10.0 + +[sub_resource type="Gradient" id="Gradient_jd3k0"] +offsets = PackedFloat32Array(0.34057972, 0.7512077) + +[sub_resource type="FastNoiseLite" id="FastNoiseLite_0nnaw"] +frequency = 0.0159 + +[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_yhae4"] +noise = SubResource("FastNoiseLite_0nnaw") +color_ramp = SubResource("Gradient_jd3k0") + +[sub_resource type="FastNoiseLite" id="FastNoiseLite_4r6s4"] +frequency = 0.0074 + +[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_obi34"] +noise = SubResource("FastNoiseLite_4r6s4") +seamless = true + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_f6h0a"] +render_priority = 2 +shader = ExtResource("25_qf8ke") +shader_parameter/UV_scale = Vector2(1, 1) +shader_parameter/UV_offset = Vector2(0.1655, 0.0735) +shader_parameter/UV_scrolling = Vector2(0.116, 0.205) +shader_parameter/objectNormalOffset = 0.243 +shader_parameter/objectNormalOffsetTexture = SubResource("NoiseTexture2D_obi34") +shader_parameter/axisMaskAxisMask_Min = 5.0 +shader_parameter/axisMaskAxisMask_Max = -100.0 +shader_parameter/axisMaskAxisMask_AxisRotation = Vector3(0, 0, 0) +shader_parameter/albedo = Color(4.2636375, 2.6044075, 1.1525812, 1) +shader_parameter/alpha = 1.0 +shader_parameter/alphaTexture = SubResource("NoiseTexture2D_yhae4") +shader_parameter/normalStrength = 1.0 +shader_parameter/roughness = 1.0 +shader_parameter/roughnessOffset = 0.0 +shader_parameter/metallic = 0.290000013775 +shader_parameter/metallicOffset = 0.0 +shader_parameter/specular = 0.0 +shader_parameter/emission = Color(1, 1, 1, 1) +shader_parameter/emissionIntensity = 1.0 + +[sub_resource type="CapsuleMesh" id="CapsuleMesh_nd3fm"] +material = SubResource("ShaderMaterial_f6h0a") +radius = 0.112 +height = 10.0 + +[sub_resource type="Gradient" id="Gradient_sm8dq"] +offsets = PackedFloat32Array(0, 0.64634144, 0.84390247, 1) +colors = PackedColorArray(1, 1, 1, 0.3882353, 1, 1, 1, 0.9870182, 1, 1, 1, 1, 1, 1, 1, 0) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_xu2ok"] +gradient = SubResource("Gradient_sm8dq") +width = 256 +height = 256 +fill = 1 +fill_from = Vector2(0.5, 0.5) +fill_to = Vector2(0, 0.5) + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_2gtvq"] +transparency = 1 +blend_mode = 1 +cull_mode = 2 +shading_mode = 0 +vertex_color_use_as_albedo = true +albedo_color = Color(1.1291975, 1.1291975, 1.1291975, 1) +albedo_texture = SubResource("GradientTexture2D_xu2ok") +billboard_mode = 3 +billboard_keep_scale = true +particles_anim_h_frames = 1 +particles_anim_v_frames = 1 +particles_anim_loop = false +proximity_fade_enabled = true +proximity_fade_distance = 2.0 + +[sub_resource type="Curve" id="Curve_1wfvh"] +_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.14418605, 0.5139131), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0] +point_count = 3 + +[sub_resource type="CurveTexture" id="CurveTexture_3u2x4"] +curve = SubResource("Curve_1wfvh") + +[sub_resource type="Gradient" id="Gradient_7t6hs"] +colors = PackedColorArray(0.8462217, 0.1448514, 0.1933779, 1, 0.8462217, 0.5682457, 0.311807, 1) + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_wqtyv"] +gradient = SubResource("Gradient_7t6hs") + +[sub_resource type="Gradient" id="Gradient_g5evl"] +colors = PackedColorArray(1, 1, 1, 1, 0.32232416, 0.35635126, 0.40495878, 1) + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_drdgq"] +gradient = SubResource("Gradient_g5evl") + +[sub_resource type="Image" id="Image_7t6hs"] +data = { +"data": PackedByteArray(64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 142, 57, 125, 63, 134, 94, 22, 62, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 136, 177, 127, 63, 45, 97, 72, 61, 15, 243, 18, 177, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 143, 57, 125, 191, 135, 94, 22, 62, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 191, 0, 0, 0, 128, 64, 91, 120, 191, 95, 91, 120, 62, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 130, 168, 43, 191, 106, 235, 61, 63, 0, 0, 0, 0, 64, 91, 120, 191, 96, 91, 120, 190, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 61, 52, 76, 198, 177, 130, 168, 43, 191, 105, 235, 61, 191, 0, 0, 0, 128, 7, 33, 173, 190, 153, 235, 112, 191, 0, 0, 0, 128, 65, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 245, 14, 218, 62, 43, 159, 103, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 63, 0, 0, 0, 0, 102, 235, 61, 63, 136, 168, 43, 63, 0, 0, 0, 0, 142, 57, 125, 63, 133, 94, 22, 62, 0, 0, 0, 0, 24, 91, 120, 190, 68, 91, 120, 191, 0, 0, 0, 128, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 143, 57, 125, 191, 135, 94, 22, 190, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 131, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 63, 0, 0, 0, 0, 149, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 150, 109, 24, 191, 122, 172, 77, 63, 0, 0, 0, 0, 245, 14, 218, 62, 43, 159, 103, 191, 0, 0, 0, 0, 102, 235, 61, 191, 136, 168, 43, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 191, 0, 0, 0, 128, 120, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 151, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 191, 0, 0, 0, 128, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 149, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 143, 57, 125, 191, 135, 94, 22, 62, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 135, 177, 127, 63, 45, 97, 72, 61, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 63, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 189, 0, 0, 0, 128, 149, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 150, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 0, 0, 0, 0, 142, 57, 125, 191, 133, 94, 22, 62, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 150, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 135, 177, 127, 63, 45, 97, 72, 61, 13, 243, 18, 177, 142, 57, 125, 191, 133, 94, 22, 190, 0, 0, 0, 128, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 158, 235, 112, 63, 234, 32, 173, 62, 0, 0, 0, 0, 157, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 142, 57, 125, 191, 133, 94, 22, 190, 0, 0, 0, 128, 245, 14, 218, 190, 43, 159, 103, 191, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 158, 235, 112, 191, 234, 32, 173, 62, 0, 0, 0, 0, 54, 221, 3, 191, 27, 109, 91, 63, 0, 0, 0, 0, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 191, 0, 0, 0, 128, 122, 172, 77, 191, 151, 109, 24, 191, 0, 0, 0, 128, 120, 172, 77, 191, 152, 109, 24, 63, 0, 0, 0, 0, 149, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 158, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 150, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 120, 172, 77, 191, 151, 109, 24, 191, 0, 0, 0, 128, 136, 177, 127, 191, 46, 97, 72, 189, 15, 243, 18, 49, 244, 14, 218, 190, 42, 159, 103, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 158, 235, 112, 191, 234, 32, 173, 190, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 245, 14, 218, 190, 43, 159, 103, 191, 0, 0, 0, 128, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 13, 243, 18, 177, 135, 177, 127, 63, 44, 97, 72, 61, 18, 243, 18, 177, 149, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 143, 57, 125, 63, 135, 94, 22, 62, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 245, 14, 218, 62, 43, 159, 103, 191, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 191, 0, 0, 0, 128, 102, 235, 61, 63, 136, 168, 43, 63, 0, 0, 0, 0, 64, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 143, 57, 125, 191, 135, 94, 22, 62, 0, 0, 0, 0, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 102, 235, 61, 63, 135, 168, 43, 191, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 63, 0, 0, 0, 0, 65, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 120, 172, 77, 191, 151, 109, 24, 191, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 63, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 27, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 245, 14, 218, 190, 43, 159, 103, 191, 0, 0, 0, 128, 158, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 27, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 143, 57, 125, 191, 135, 94, 22, 62, 146, 206, 148, 178, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 62, 147, 206, 148, 178, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 63, 0, 0, 0, 0, 65, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 63, 0, 0, 0, 0, 158, 235, 112, 63, 234, 32, 173, 190, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 52, 76, 198, 177, 122, 172, 77, 191, 151, 109, 24, 191, 0, 0, 0, 128, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 143, 57, 125, 63, 135, 94, 22, 62, 147, 206, 148, 178, 7, 33, 173, 190, 152, 235, 112, 63, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 63, 0, 0, 0, 0, 158, 235, 112, 63, 234, 32, 173, 62, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 54, 221, 3, 63, 27, 109, 91, 191, 0, 0, 0, 0, 158, 235, 112, 63, 234, 32, 173, 62, 0, 0, 0, 0, 149, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 122, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 122, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 149, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 61, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 63, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 63, 0, 0, 0, 0, 158, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 0, 0, 0, 0, 24, 91, 120, 190, 68, 91, 120, 63, 0, 0, 0, 0, 142, 57, 125, 63, 133, 94, 22, 62, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 189, 15, 243, 18, 49, 120, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 149, 109, 24, 191, 122, 172, 77, 63, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 63, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 61, 15, 243, 18, 177, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 189, 13, 243, 18, 49, 143, 57, 125, 63, 135, 94, 22, 190, 142, 206, 148, 50, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 54, 221, 3, 191, 27, 109, 91, 191, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 189, 15, 243, 18, 49, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 65, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 65, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 151, 109, 24, 191, 122, 172, 77, 63, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 189, 13, 243, 18, 49, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 27, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 191, 0, 0, 0, 128, 143, 57, 125, 191, 135, 94, 22, 190, 0, 0, 0, 128, 149, 109, 24, 191, 122, 172, 77, 63, 0, 0, 0, 0, 64, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 142, 57, 125, 63, 134, 94, 22, 62, 0, 0, 0, 0, 54, 221, 3, 63, 27, 109, 91, 191, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 62, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 191, 0, 0, 0, 128, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 26, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 102, 235, 61, 63, 136, 168, 43, 191, 0, 0, 0, 0, 151, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 63, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 189, 52, 76, 198, 49, 102, 235, 61, 63, 135, 168, 43, 63, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 150, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 102, 235, 61, 191, 136, 168, 43, 63, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 191, 0, 0, 0, 128, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 158, 235, 112, 191, 234, 32, 173, 62, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 65, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 135, 177, 127, 191, 45, 97, 72, 189, 0, 0, 0, 128, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 150, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 150, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 27, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 102, 235, 61, 63, 136, 168, 43, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 27, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 191, 0, 0, 0, 128, 150, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 120, 172, 77, 191, 152, 109, 24, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 245, 14, 218, 190, 43, 159, 103, 63, 0, 0, 0, 0, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 189, 13, 243, 18, 49, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 130, 168, 43, 63, 105, 235, 61, 63, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 7, 33, 173, 62, 152, 235, 112, 191, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 191, 0, 0, 0, 128, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 149, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 27, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 158, 235, 112, 63, 234, 32, 173, 62, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 143, 57, 125, 191, 134, 94, 22, 62, 145, 206, 148, 178, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 120, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 191, 0, 0, 0, 128, 130, 168, 43, 191, 106, 235, 61, 63, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 122, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 191, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 191, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 150, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 157, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 26, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 102, 235, 61, 63, 135, 168, 43, 191, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 158, 235, 112, 191, 234, 32, 173, 190, 0, 0, 0, 128, 102, 235, 61, 63, 135, 168, 43, 63, 0, 0, 0, 0, 54, 221, 3, 63, 27, 109, 91, 191, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 61, 15, 243, 18, 177, 122, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 143, 57, 125, 191, 134, 94, 22, 62, 145, 206, 148, 178, 27, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 143, 57, 125, 191, 134, 94, 22, 62, 145, 206, 148, 178, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 102, 235, 61, 191, 136, 168, 43, 63, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 63, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 136, 177, 127, 191, 45, 97, 72, 189, 0, 0, 0, 128, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 142, 57, 125, 191, 134, 94, 22, 62, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 150, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 63, 0, 0, 0, 0, 102, 235, 61, 63, 136, 168, 43, 191, 0, 0, 0, 0, 120, 172, 77, 191, 152, 109, 24, 191, 0, 0, 0, 128, 157, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 158, 235, 112, 191, 234, 32, 173, 62, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 102, 235, 61, 63, 136, 168, 43, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 191, 0, 0, 0, 128, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 63, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 130, 168, 43, 191, 106, 235, 61, 63, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 61, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 122, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 191, 0, 0, 0, 0, 151, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 150, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 142, 57, 125, 191, 133, 94, 22, 190, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 135, 177, 127, 63, 45, 97, 72, 189, 13, 243, 18, 49, 102, 235, 61, 63, 135, 168, 43, 63, 0, 0, 0, 0, 27, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 61, 15, 243, 18, 177, 43, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 136, 177, 127, 63, 45, 97, 72, 61, 14, 243, 18, 177, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 63, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 157, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 158, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 7, 33, 173, 190, 153, 235, 112, 191, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 158, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 131, 168, 43, 191, 106, 235, 61, 191, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 149, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 0, 0, 0, 0, 102, 235, 61, 63, 135, 168, 43, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 120, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 102, 235, 61, 191, 136, 168, 43, 63, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 189, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 143, 57, 125, 191, 135, 94, 22, 62, 146, 206, 148, 178, 24, 91, 120, 190, 68, 91, 120, 191, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 130, 168, 43, 191, 106, 235, 61, 63, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 151, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 24, 91, 120, 190, 68, 91, 120, 191, 0, 0, 0, 128, 7, 33, 173, 190, 152, 235, 112, 63, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), +"format": "RGBFloat", +"height": 1, +"mipmaps": false, +"width": 2048 +} + +[sub_resource type="ImageTexture" id="ImageTexture_4h46k"] +image = SubResource("Image_7t6hs") + +[sub_resource type="Image" id="Image_wqtyv"] +data = { +"data": PackedByteArray(213, 102, 139, 62, 136, 69, 141, 189, 32, 252, 0, 62, 2, 27, 133, 189, 124, 233, 139, 62, 140, 9, 195, 61, 28, 111, 141, 62, 246, 167, 84, 61, 36, 228, 13, 62, 51, 214, 35, 59, 248, 233, 143, 62, 248, 22, 15, 62, 204, 211, 143, 62, 147, 35, 195, 59, 30, 114, 10, 62, 6, 86, 72, 62, 155, 160, 78, 190, 58, 16, 186, 61, 123, 182, 74, 62, 167, 122, 76, 190, 175, 228, 28, 62, 243, 55, 248, 60, 191, 19, 143, 190, 8, 146, 9, 62, 168, 67, 139, 190, 95, 120, 143, 189, 238, 211, 10, 62, 8, 87, 132, 190, 156, 255, 225, 189, 115, 159, 222, 61, 120, 211, 141, 190, 179, 135, 63, 61, 244, 235, 237, 61, 6, 32, 219, 61, 107, 29, 133, 190, 186, 174, 25, 62, 166, 153, 34, 61, 229, 92, 142, 190, 124, 208, 208, 61, 220, 174, 65, 190, 2, 164, 84, 62, 69, 60, 36, 62, 229, 196, 21, 190, 114, 139, 117, 190, 89, 202, 201, 61, 190, 146, 138, 190, 254, 134, 154, 61, 132, 0, 204, 61, 169, 86, 161, 60, 150, 123, 143, 190, 66, 172, 190, 61, 224, 142, 63, 190, 176, 143, 86, 62, 88, 211, 206, 61, 200, 239, 138, 190, 98, 182, 148, 189, 239, 215, 29, 62, 22, 171, 131, 62, 197, 180, 231, 189, 138, 112, 21, 62, 61, 132, 128, 190, 130, 62, 1, 190, 82, 66, 17, 62, 45, 141, 220, 61, 32, 251, 132, 190, 52, 203, 20, 62, 47, 13, 38, 61, 128, 76, 142, 190, 44, 32, 187, 61, 86, 171, 67, 62, 108, 216, 82, 190, 88, 57, 208, 61, 120, 124, 135, 190, 28, 186, 192, 189, 206, 12, 243, 61, 58, 93, 58, 189, 1, 236, 141, 62, 94, 146, 7, 62, 28, 212, 143, 62, 156, 136, 193, 59, 125, 208, 11, 62, 246, 231, 66, 190, 3, 137, 83, 190, 100, 4, 36, 62, 82, 15, 199, 189, 213, 234, 134, 190, 243, 226, 23, 62, 122, 200, 138, 62, 62, 43, 151, 61, 218, 154, 1, 62, 223, 94, 1, 62, 157, 124, 128, 62, 28, 210, 20, 62, 182, 98, 96, 62, 129, 64, 52, 190, 52, 60, 16, 62, 53, 104, 34, 189, 208, 93, 142, 190, 90, 198, 228, 61, 194, 252, 131, 62, 185, 254, 228, 61, 80, 23, 40, 62, 76, 144, 11, 188, 85, 195, 143, 62, 99, 197, 18, 62, 239, 183, 76, 62, 175, 114, 74, 62, 210, 145, 211, 61, 115, 250, 141, 62, 28, 83, 55, 61, 14, 227, 194, 61, 240, 26, 165, 189, 126, 233, 137, 190, 169, 84, 38, 62, 113, 203, 218, 60, 142, 78, 143, 190, 166, 127, 221, 61, 104, 211, 115, 190, 36, 161, 24, 190, 230, 218, 28, 62, 1, 243, 28, 188, 134, 188, 143, 190, 247, 29, 253, 61, 170, 177, 128, 190, 130, 125, 0, 190, 37, 149, 231, 61, 215, 74, 142, 190, 0, 103, 38, 189, 214, 107, 4, 62, 102, 228, 27, 190, 116, 221, 113, 62, 185, 218, 231, 61, 93, 175, 128, 62, 73, 135, 0, 62, 94, 217, 28, 62, 156, 235, 57, 62, 45, 168, 91, 190, 166, 159, 15, 62, 236, 122, 76, 190, 48, 182, 74, 190, 59, 67, 201, 61, 172, 105, 96, 189, 64, 55, 141, 62, 90, 250, 233, 61, 152, 112, 108, 62, 171, 252, 35, 62, 187, 17, 4, 62, 140, 226, 113, 190, 241, 219, 27, 62, 130, 76, 41, 62, 168, 111, 2, 60, 234, 198, 143, 190, 21, 249, 32, 62, 61, 11, 86, 190, 106, 33, 64, 190, 59, 197, 25, 62, 166, 210, 130, 190, 246, 227, 238, 189, 33, 170, 13, 62, 235, 42, 144, 61, 126, 56, 139, 62, 218, 218, 220, 61, 208, 174, 96, 62, 211, 217, 51, 190, 68, 84, 26, 62, 50, 217, 159, 186, 49, 242, 143, 62, 110, 27, 247, 61, 35, 219, 4, 62, 57, 85, 127, 62, 128, 181, 34, 62, 131, 178, 45, 62, 74, 62, 101, 62, 202, 93, 241, 61, 244, 114, 111, 62, 156, 233, 31, 62, 232, 229, 232, 61, 79, 145, 143, 61, 23, 66, 139, 62, 20, 41, 250, 61, 16, 1, 116, 190, 44, 85, 24, 62, 42, 153, 229, 61, 124, 211, 36, 190, 99, 209, 107, 62, 236, 178, 39, 62, 187, 157, 246, 61, 229, 233, 129, 190, 208, 170, 34, 62, 238, 178, 82, 190, 210, 212, 67, 62, 48, 206, 4, 62, 15, 230, 135, 190, 154, 34, 188, 61, 233, 137, 230, 61, 42, 227, 27, 190, 50, 222, 113, 190, 254, 161, 241, 61, 52, 8, 110, 190, 174, 214, 33, 62, 226, 184, 30, 62, 130, 25, 46, 62, 246, 241, 100, 62, 178, 252, 16, 62, 220, 166, 67, 190, 119, 220, 82, 190, 244, 134, 42, 62, 29, 204, 124, 190, 89, 179, 9, 190, 154, 156, 5, 62, 100, 35, 130, 62, 54, 181, 244, 61, 62, 34, 40, 62, 143, 29, 87, 190, 233, 241, 62, 190, 134, 96, 223, 61, 88, 184, 138, 62, 88, 45, 152, 61, 150, 45, 16, 62, 136, 86, 40, 62, 22, 55, 105, 190, 46, 242, 234, 61, 163, 97, 141, 190, 220, 125, 87, 61, 241, 12, 17, 62, 106, 204, 250, 188, 158, 13, 143, 190, 164, 22, 23, 62, 8, 41, 135, 190, 240, 90, 196, 189, 184, 252, 254, 61, 120, 84, 143, 62, 59, 66, 211, 60, 49, 18, 32, 62, 197, 59, 255, 61, 74, 230, 128, 62, 46, 65, 220, 61, 133, 95, 143, 190, 91, 41, 197, 188, 190, 153, 0, 62, 236, 34, 35, 62, 247, 17, 109, 62, 33, 75, 1, 62, 198, 25, 34, 190, 121, 214, 109, 190, 206, 87, 246, 61, 218, 24, 93, 190, 184, 83, 56, 62, 60, 138, 214, 61, 87, 178, 56, 190, 84, 195, 92, 62, 234, 132, 39, 62, 219, 199, 143, 190, 83, 10, 0, 60, 54, 106, 208, 61, 4, 250, 142, 190, 253, 134, 1, 61, 244, 105, 191, 61, 244, 188, 49, 189, 251, 20, 142, 62, 63, 65, 17, 62, 139, 158, 62, 61, 202, 215, 141, 190, 60, 248, 22, 62, 66, 89, 38, 62, 134, 176, 106, 62, 116, 133, 30, 62, 204, 84, 198, 188, 152, 94, 143, 190, 15, 128, 34, 62, 46, 169, 143, 62, 197, 83, 78, 60, 173, 182, 210, 61, 242, 59, 141, 190, 42, 109, 95, 189, 192, 175, 38, 62, 72, 223, 133, 190, 228, 177, 210, 189, 90, 196, 4, 62, 24, 170, 102, 62, 164, 199, 43, 62, 94, 107, 251, 61, 82, 65, 128, 190, 216, 90, 2, 62, 9, 56, 198, 61, 68, 146, 136, 62, 126, 165, 180, 61, 253, 182, 11, 62, 217, 81, 134, 62, 130, 182, 205, 61, 66, 90, 232, 61, 105, 25, 142, 190, 167, 206, 48, 189, 183, 145, 36, 62, 68, 0, 238, 189, 111, 237, 130, 190, 254, 208, 37, 62, 204, 224, 113, 62, 216, 222, 27, 62, 110, 239, 21, 62, 216, 156, 68, 62, 35, 254, 81, 190, 250, 120, 6, 62, 100, 53, 137, 190, 133, 141, 173, 61, 26, 102, 33, 62, 38, 219, 11, 190, 127, 128, 123, 62, 175, 203, 22, 62, 122, 246, 58, 62, 248, 182, 90, 190, 191, 91, 183, 61, 120, 220, 186, 189, 90, 3, 136, 190, 218, 13, 10, 62, 88, 181, 110, 190, 13, 237, 32, 190, 166, 101, 185, 61, 223, 37, 100, 190, 231, 44, 47, 62, 108, 239, 16, 62, 190, 43, 37, 190, 250, 143, 107, 190, 42, 88, 237, 61, 146, 133, 173, 61, 25, 54, 137, 190, 74, 218, 10, 62, 227, 195, 148, 58, 188, 242, 143, 62, 117, 248, 208, 61, 89, 82, 75, 190, 198, 237, 75, 62, 51, 215, 1, 62, 205, 151, 73, 190, 196, 125, 77, 62, 50, 212, 200, 61, 16, 27, 93, 190, 70, 81, 56, 62, 120, 77, 205, 61, 148, 8, 133, 62, 23, 8, 220, 61, 6, 43, 0, 62, 126, 61, 243, 189, 154, 79, 130, 190, 40, 91, 222, 61, 40, 120, 33, 62, 64, 78, 110, 62, 100, 88, 39, 62, 163, 2, 79, 190, 144, 233, 71, 62, 230, 84, 17, 62, 243, 110, 110, 190, 9, 76, 33, 190, 165, 182, 0, 62, 233, 156, 143, 190, 11, 165, 109, 188, 90, 1, 245, 61, 75, 182, 230, 189, 6, 201, 131, 62, 200, 5, 195, 61, 3, 19, 71, 190, 142, 196, 79, 62, 212, 140, 40, 62, 12, 132, 204, 189, 94, 109, 134, 62, 208, 6, 26, 62, 24, 42, 238, 188, 161, 43, 143, 62, 151, 107, 23, 62, 33, 66, 7, 190, 188, 51, 126, 190, 227, 43, 189, 61, 237, 156, 137, 190, 224, 12, 169, 189, 100, 74, 31, 62, 239, 202, 123, 62, 78, 95, 11, 62, 108, 93, 255, 61, 53, 21, 6, 190, 98, 193, 126, 190, 189, 26, 3, 62, 117, 125, 181, 61, 220, 126, 136, 62, 220, 220, 229, 61, 202, 155, 119, 62, 186, 85, 18, 62, 178, 247, 25, 62, 54, 149, 84, 190, 60, 191, 65, 190, 213, 110, 24, 62, 58, 171, 71, 190, 251, 58, 79, 62, 31, 129, 32, 62, 141, 234, 143, 190, 241, 247, 29, 59, 186, 217, 33, 62, 241, 133, 143, 62, 159, 33, 148, 60, 189, 25, 23, 62, 64, 231, 38, 62, 73, 71, 106, 62, 74, 240, 182, 61, 105, 175, 11, 190, 201, 154, 123, 62, 60, 255, 9, 62, 208, 14, 86, 189, 113, 104, 141, 190, 76, 218, 34, 62, 188, 113, 142, 62, 0, 55, 30, 61, 222, 69, 40, 62, 42, 25, 58, 62, 2, 127, 91, 190, 174, 246, 30, 62, 24, 109, 1, 62, 68, 121, 128, 190, 96, 37, 36, 62, 100, 107, 175, 189, 118, 10, 137, 190, 200, 214, 249, 61, 252, 195, 83, 62, 184, 166, 66, 62, 37, 222, 188, 61, 143, 64, 139, 190, 240, 169, 143, 61, 142, 138, 39, 62, 161, 227, 131, 62, 69, 212, 229, 189, 30, 195, 8, 62, 90, 175, 141, 190, 6, 34, 71, 61, 6, 68, 42, 62, 168, 1, 62, 62, 182, 246, 87, 190, 216, 25, 200, 61, 208, 215, 90, 62, 37, 210, 58, 190, 10, 119, 192, 61, 124, 180, 108, 61, 137, 213, 140, 62, 216, 93, 24, 62, 13, 42, 141, 62, 13, 36, 98, 61, 34, 187, 231, 61, 162, 75, 86, 190, 44, 218, 63, 62, 6, 245, 231, 61, 144, 183, 103, 190, 10, 92, 42, 190, 150, 229, 31, 62, 147, 187, 217, 188, 99, 79, 143, 190, 213, 152, 9, 62, 208, 210, 31, 190, 167, 128, 111, 62, 246, 107, 186, 61, 8, 67, 183, 61, 30, 86, 136, 62, 196, 186, 20, 62, 92, 174, 140, 190, 63, 154, 113, 189, 170, 54, 185, 61, 73, 163, 140, 61, 248, 112, 139, 62, 5, 99, 31, 62, 22, 35, 237, 189, 119, 7, 131, 190, 178, 192, 247, 61, 114, 168, 135, 190, 136, 208, 190, 189, 232, 185, 25, 62, 128, 224, 148, 189, 36, 237, 138, 62, 166, 162, 43, 62, 190, 82, 172, 60, 249, 114, 143, 190, 58, 157, 218, 61, 252, 13, 136, 188, 102, 143, 143, 190, 225, 154, 23, 62, 192, 207, 108, 62, 70, 124, 35, 62, 125, 129, 40, 62, 82, 28, 143, 190, 43, 156, 244, 60, 252, 212, 25, 62, 207, 170, 203, 61, 226, 128, 134, 62, 236, 113, 4, 62, 182, 205, 93, 60, 28, 163, 143, 62, 131, 150, 39, 62, 202, 5, 138, 62, 50, 86, 163, 189, 102, 41, 203, 61, 136, 116, 142, 62, 22, 160, 29, 61, 237, 172, 25, 62, 69, 3, 123, 189, 18, 99, 140, 62, 34, 83, 223, 61, 64, 46, 170, 189, 239, 130, 137, 62, 44, 189, 34, 62, 14, 88, 140, 190, 19, 100, 124, 61, 210, 12, 229, 61, 101, 44, 4, 190, 122, 167, 127, 62, 55, 185, 250, 61, 255, 242, 135, 62, 146, 146, 187, 189, 176, 154, 39, 62, 244, 170, 150, 61, 125, 208, 138, 62, 202, 112, 194, 61, 76, 64, 132, 190, 200, 192, 226, 189, 7, 210, 38, 62, 3, 20, 131, 190, 137, 184, 236, 61, 88, 37, 234, 61, 237, 56, 15, 190, 158, 122, 121, 62, 196, 114, 9, 62, 170, 32, 204, 188, 13, 90, 143, 190, 21, 50, 254, 61, 19, 67, 195, 61, 42, 66, 135, 190, 64, 168, 6, 62, 13, 19, 83, 190, 121, 106, 67, 62, 35, 77, 20, 62, 24, 249, 141, 62, 26, 156, 55, 189, 240, 50, 245, 61, 90, 44, 101, 62, 188, 202, 45, 62, 234, 130, 23, 62, 232, 102, 143, 190, 61, 187, 187, 60, 30, 148, 222, 61, 252, 190, 101, 190, 225, 4, 45, 190, 250, 243, 245, 61, 118, 192, 130, 190, 130, 126, 239, 189, 58, 38, 33, 62, 118, 223, 142, 62, 18, 30, 7, 61, 214, 209, 19, 62, 229, 136, 205, 189, 240, 85, 134, 62, 124, 101, 248, 61, 158, 108, 225, 59, 219, 205, 143, 190, 145, 105, 203, 61, 49, 225, 61, 62, 12, 20, 88, 190, 72, 32, 31, 62, 250, 224, 1, 190, 255, 93, 128, 62, 142, 122, 28, 62, 229, 0, 136, 62, 213, 247, 186, 61, 125, 254, 15, 62, 248, 235, 200, 61, 4, 192, 134, 62, 128, 176, 2, 62, 9, 211, 177, 61, 40, 211, 136, 62, 58, 89, 209, 61, 156, 232, 8, 62, 240, 69, 125, 190, 13, 189, 251, 61, 168, 14, 135, 62, 139, 128, 197, 61, 55, 215, 39, 62, 10, 22, 43, 190, 180, 45, 103, 190, 137, 196, 227, 61, 10, 9, 90, 61, 140, 85, 141, 62, 152, 218, 226, 61, 144, 8, 98, 189, 232, 42, 141, 190, 176, 1, 208, 61, 126, 18, 141, 190, 7, 22, 101, 189, 82, 34, 243, 61, 210, 244, 251, 189, 4, 73, 129, 190, 76, 109, 209, 61, 112, 94, 221, 187, 166, 206, 143, 190, 140, 154, 223, 61, 140, 231, 142, 62, 89, 106, 5, 189, 114, 40, 201, 61, 96, 177, 104, 190, 246, 10, 41, 62, 218, 106, 218, 61, 238, 102, 98, 62, 246, 135, 49, 62, 126, 203, 186, 61, 150, 228, 140, 62, 245, 210, 106, 189, 208, 21, 204, 61, 63, 141, 35, 62, 41, 195, 108, 190, 60, 219, 239, 61, 199, 65, 126, 62, 84, 36, 7, 190, 161, 44, 34, 62, 232, 101, 143, 62, 6, 3, 189, 60, 234, 4, 36, 62, 80, 153, 103, 61, 98, 254, 140, 190, 64, 73, 210, 61, 182, 66, 140, 62, 2, 15, 127, 189, 83, 92, 234, 61, 246, 229, 129, 62, 52, 191, 246, 61, 129, 62, 16, 62, 165, 49, 61, 62, 184, 178, 88, 62, 233, 145, 27, 62, 182, 17, 170, 61, 127, 133, 137, 62, 230, 227, 23, 62, 91, 2, 136, 190, 144, 231, 186, 61, 108, 180, 5, 62, 161, 77, 145, 60, 39, 136, 143, 62, 23, 225, 10, 62, 146, 49, 214, 188, 41, 82, 143, 62, 208, 188, 234, 61, 140, 63, 106, 62, 180, 241, 38, 190, 89, 207, 18, 62, 223, 113, 4, 62, 198, 134, 127, 190, 97, 51, 238, 61, 222, 133, 143, 190, 236, 57, 148, 60, 178, 163, 204, 61, 46, 218, 126, 189, 91, 68, 140, 62, 10, 124, 18, 62, 223, 167, 142, 62, 146, 209, 18, 61, 172, 138, 182, 61, 96, 140, 143, 190, 205, 236, 139, 188, 12, 191, 7, 62, 124, 28, 97, 190, 215, 69, 51, 62, 80, 153, 253, 61, 57, 145, 60, 189, 138, 225, 141, 190, 30, 187, 224, 61, 12, 64, 140, 190, 60, 100, 127, 189, 160, 177, 248, 61, 186, 180, 39, 190, 1, 175, 105, 62, 168, 198, 5, 62, 118, 107, 202, 188, 100, 91, 143, 62, 57, 124, 244, 61, 66, 213, 122, 61, 130, 100, 140, 62, 116, 103, 242, 61, 10, 22, 102, 62, 106, 143, 44, 190, 12, 34, 18, 62, 200, 229, 63, 189, 183, 209, 141, 190, 200, 106, 30, 62, 191, 171, 113, 60, 82, 155, 143, 190, 96, 3, 210, 61, 21, 88, 68, 62, 72, 60, 82, 190, 9, 40, 250, 61, 165, 66, 106, 62, 133, 237, 38, 62, 32, 121, 247, 61, 102, 140, 219, 189, 175, 19, 133, 62, 251, 239, 35, 62, 96, 197, 143, 190, 92, 96, 6, 60, 168, 27, 230, 61, 192, 217, 116, 62, 156, 236, 22, 190, 190, 237, 230, 61, 234, 233, 129, 62, 166, 157, 246, 61, 147, 152, 17, 62, 0, 128, 143, 190, 124, 181, 155, 188, 91, 88, 205, 61, 181, 248, 141, 62, 251, 176, 55, 189, 112, 161, 224, 61, 29, 17, 22, 189, 111, 152, 142, 190, 90, 201, 190, 61, 59, 68, 10, 190, 10, 117, 124, 190, 84, 52, 37, 62, 58, 6, 10, 190, 77, 154, 124, 62, 170, 202, 211, 61, 114, 154, 143, 190, 135, 237, 115, 188, 6, 36, 11, 62, 246, 58, 244, 60, 56, 29, 143, 190, 21, 68, 205, 61, 192, 178, 130, 62, 3, 243, 239, 189, 5, 223, 5, 62, 234, 44, 141, 62, 136, 200, 97, 61, 251, 151, 42, 62, 145, 155, 155, 61, 116, 129, 138, 190, 44, 214, 38, 62, 210, 202, 138, 190, 189, 5, 151, 61, 22, 133, 1, 62, 67, 128, 109, 62, 27, 142, 34, 62, 215, 31, 31, 62, 181, 226, 140, 190, 17, 15, 107, 189, 200, 113, 182, 61, 79, 194, 113, 190, 150, 17, 28, 190, 244, 254, 199, 61, 111, 234, 7, 62, 175, 222, 125, 62, 36, 199, 234, 61, 174, 71, 139, 190, 1, 56, 143, 61, 219, 249, 4, 62, 24, 159, 33, 190, 100, 49, 110, 62, 6, 250, 12, 62, 28, 154, 152, 61, 138, 177, 138, 190, 222, 9, 39, 62, 110, 27, 141, 62, 15, 248, 99, 189, 32, 0, 9, 62, 66, 159, 143, 62, 189, 166, 103, 188, 150, 70, 28, 62, 132, 172, 23, 61, 205, 144, 142, 62, 14, 14, 187, 61, 31, 253, 161, 189, 91, 27, 138, 190, 191, 58, 250, 61, 212, 147, 14, 61, 3, 188, 142, 190, 43, 191, 10, 62, 14, 100, 20, 190, 123, 95, 118, 190, 208, 64, 26, 62, 138, 157, 141, 190, 196, 225, 74, 189, 114, 6, 187, 61, 165, 187, 42, 190, 179, 112, 103, 62, 210, 253, 6, 62, 225, 114, 140, 190, 150, 9, 121, 61, 0, 201, 38, 62, 152, 65, 127, 190, 220, 4, 5, 62, 246, 80, 236, 61, 185, 234, 142, 62, 48, 191, 4, 61, 63, 173, 9, 62, 205, 39, 19, 62, 138, 29, 119, 190, 255, 133, 34, 62, 151, 163, 138, 190, 110, 121, 153, 61, 20, 83, 210, 61, 152, 26, 182, 189, 191, 112, 136, 190, 165, 33, 183, 61, 83, 148, 56, 189, 123, 244, 141, 190, 74, 220, 26, 62, 245, 190, 152, 189, 61, 175, 138, 190, 72, 183, 229, 61, 45, 228, 139, 62, 16, 112, 133, 61, 4, 1, 199, 61, 74, 85, 14, 190, 106, 3, 122, 62, 74, 183, 203, 61, 228, 115, 129, 190, 141, 136, 250, 61, 29, 14, 8, 62, 52, 185, 19, 62, 40, 198, 118, 62, 205, 194, 4, 62, 151, 174, 71, 62, 241, 55, 79, 190, 83, 119, 28, 62, 61, 226, 93, 62, 233, 116, 55, 190, 4, 203, 41, 62, 60, 46, 44, 62, 12, 94, 102, 190, 91, 187, 17, 62, 64, 150, 129, 190, 145, 100, 249, 189, 132, 87, 230, 61, 204, 27, 187, 188, 100, 103, 143, 190, 117, 254, 240, 61, 223, 61, 114, 61, 62, 169, 140, 190, 76, 51, 16, 62, 146, 139, 205, 189, 179, 85, 134, 62, 103, 182, 214, 61, 10, 170, 140, 62, 126, 36, 114, 189, 236, 19, 194, 61, 231, 184, 17, 62, 6, 250, 119, 62, 74, 148, 33, 62, 88, 112, 143, 190, 216, 176, 175, 188, 48, 225, 17, 62, 26, 36, 76, 62, 61, 22, 75, 62, 130, 149, 20, 62, 182, 44, 157, 61, 97, 104, 138, 190, 112, 132, 35, 62, 208, 175, 44, 62, 4, 254, 101, 62, 0, 197, 30, 62, 174, 189, 20, 190, 160, 41, 118, 62, 237, 131, 40, 62, 134, 31, 92, 190, 146, 103, 57, 62, 168, 90, 1, 62, 99, 23, 169, 189, 250, 155, 137, 190, 225, 248, 236, 61, 252, 41, 139, 62, 20, 19, 145, 61, 157, 29, 32, 62, 59, 139, 255, 60, 89, 2, 143, 62, 242, 9, 39, 62, 41, 198, 117, 62, 52, 99, 21, 62, 156, 203, 206, 61, 53, 231, 137, 189, 185, 156, 139, 62, 44, 73, 212, 61, 62, 11, 22, 188, 58, 191, 143, 62, 48, 101, 208, 61, 104, 80, 15, 189, 131, 184, 142, 62, 49, 238, 13, 62, 255, 163, 110, 62, 118, 4, 33, 190, 16, 175, 24, 62, 94, 49, 142, 62, 161, 195, 43, 189, 171, 171, 252, 61, 161, 1, 133, 190, 117, 85, 220, 61, 15, 59, 42, 62, 34, 82, 122, 190, 82, 210, 13, 190, 146, 45, 246, 61, 191, 115, 140, 62, 220, 237, 120, 61, 138, 219, 247, 61, 221, 235, 85, 190, 32, 68, 64, 190, 224, 110, 192, 61, 122, 174, 143, 190, 156, 207, 64, 188, 215, 201, 31, 62, 35, 2, 129, 190, 44, 79, 254, 189, 227, 182, 22, 62, 82, 133, 35, 62, 10, 201, 108, 190, 64, 249, 3, 62, 165, 141, 70, 188, 56, 172, 143, 190, 142, 243, 42, 62, 249, 61, 122, 62, 221, 243, 13, 62, 42, 5, 207, 61, 111, 206, 137, 61, 70, 158, 139, 62, 254, 113, 22, 62, 241, 53, 124, 190, 64, 173, 10, 62, 80, 202, 7, 62, 140, 151, 36, 190, 207, 253, 107, 190, 161, 128, 36, 62, 193, 212, 132, 189, 224, 237, 139, 62, 154, 10, 30, 62, 74, 83, 253, 189, 198, 31, 129, 190, 44, 160, 229, 61, 166, 188, 69, 190, 2, 250, 80, 62, 19, 202, 253, 61, 186, 28, 117, 189, 71, 146, 140, 62, 74, 180, 253, 61, 24, 210, 134, 190, 200, 34, 200, 189, 39, 158, 227, 61, 247, 188, 204, 61, 66, 104, 134, 190, 39, 193, 29, 62, 96, 219, 87, 62, 232, 31, 62, 190, 216, 135, 6, 62, 21, 82, 93, 190, 102, 20, 56, 62, 30, 79, 183, 61, 248, 158, 130, 62, 32, 155, 240, 61, 221, 143, 8, 62, 164, 204, 117, 61, 199, 140, 140, 62, 52, 25, 184, 61, 160, 228, 35, 61, 192, 86, 142, 62, 137, 138, 191, 61, 216, 122, 109, 62, 106, 149, 34, 190, 122, 89, 8, 62, 192, 252, 85, 190, 114, 49, 64, 62, 15, 71, 15, 62, 111, 172, 114, 190, 254, 139, 26, 62, 242, 142, 248, 61, 246, 26, 44, 61, 190, 47, 142, 190, 247, 17, 7, 62, 6, 190, 135, 190, 72, 224, 189, 189, 170, 161, 240, 61, 146, 9, 152, 61, 148, 186, 138, 62, 3, 39, 252, 61, 124, 2, 136, 189, 4, 187, 139, 190, 205, 177, 255, 61, 10, 159, 131, 62, 26, 27, 232, 189, 220, 215, 223, 61, 108, 122, 10, 62, 121, 84, 124, 62, 238, 135, 255, 61, 1, 83, 68, 189, 176, 188, 141, 190, 40, 141, 11, 62, 48, 167, 236, 61, 12, 22, 131, 190, 148, 227, 11, 62, 132, 198, 44, 61, 142, 44, 142, 62, 42, 80, 212, 61, 218, 132, 12, 189, 202, 197, 142, 62, 36, 173, 39, 62, 116, 124, 19, 190, 169, 234, 118, 190, 238, 106, 191, 61, 207, 208, 46, 190, 28, 106, 100, 190, 120, 255, 38, 62, 97, 178, 106, 190, 193, 86, 38, 62, 180, 62, 13, 62, 20, 153, 137, 190, 192, 55, 169, 61, 38, 58, 202, 61, 59, 231, 138, 62, 41, 63, 149, 189, 81, 223, 6, 62, 49, 154, 2, 190, 102, 50, 128, 62, 117, 21, 21, 62, 210, 90, 139, 62, 191, 5, 142, 61, 254, 15, 37, 62, 227, 144, 143, 62, 80, 42, 134, 188, 145, 189, 27, 62, 36, 217, 136, 190, 127, 144, 177, 189, 202, 151, 231, 61, 84, 99, 71, 62, 246, 123, 79, 62, 46, 183, 188, 61, 211, 31, 143, 62, 53, 35, 243, 188, 186, 116, 213, 61, 52, 174, 121, 190, 26, 227, 14, 190, 100, 54, 183, 61, 133, 78, 199, 61, 40, 229, 134, 190, 173, 70, 198, 61, 146, 94, 99, 189, 56, 32, 141, 62, 192, 177, 220, 61, 114, 197, 212, 189, 136, 175, 133, 190, 74, 1, 238, 61, 9, 16, 174, 61, 169, 41, 137, 190, 204, 174, 251, 61, 101, 38, 40, 190, 194, 90, 105, 190, 216, 243, 222, 61, 192, 23, 83, 61, 135, 118, 141, 190, 255, 34, 13, 62, 97, 74, 143, 190, 120, 34, 224, 60, 0, 74, 3, 62, 84, 71, 194, 60, 197, 97, 143, 62, 238, 88, 11, 62, 93, 34, 3, 62, 90, 18, 128, 190, 78, 52, 229, 61, 122, 127, 120, 190, 219, 218, 16, 190, 229, 158, 9, 62, 86, 187, 147, 189, 119, 255, 138, 62, 47, 129, 40, 62, 233, 244, 238, 188, 190, 41, 143, 190, 189, 45, 37, 62, 133, 54, 137, 62, 239, 128, 173, 61, 122, 243, 25, 62, 31, 172, 112, 62, 126, 224, 29, 190, 213, 233, 11, 62, 42, 81, 61, 189, 249, 221, 141, 62, 186, 20, 29, 62, 12, 99, 142, 190, 111, 78, 33, 61, 247, 244, 230, 61, 235, 64, 129, 189, 30, 39, 140, 62, 188, 152, 0, 62, 159, 181, 107, 190, 244, 248, 36, 62, 190, 163, 36, 62, 187, 20, 74, 190, 218, 12, 77, 190, 39, 3, 248, 61, 114, 136, 60, 190, 167, 75, 89, 62, 48, 98, 199, 61, 180, 50, 144, 61, 1, 56, 139, 190, 38, 159, 29, 62, 3, 115, 106, 62, 66, 172, 38, 62, 52, 218, 195, 61, 34, 48, 98, 62, 230, 209, 49, 190, 158, 81, 5, 62, 178, 213, 186, 61, 245, 3, 136, 190, 60, 65, 221, 61, 220, 69, 131, 60, 38, 147, 143, 62, 98, 107, 35, 62, 22, 143, 43, 62, 254, 211, 102, 190, 222, 234, 7, 62, 120, 107, 72, 61, 59, 169, 141, 190, 27, 169, 246, 61, 179, 37, 10, 60, 227, 195, 143, 62, 4, 12, 229, 61, 143, 225, 67, 190, 104, 167, 82, 62, 32, 128, 38, 62, 140, 64, 124, 62, 155, 155, 10, 190, 52, 21, 214, 61, 54, 253, 91, 61, 68, 76, 141, 62, 10, 145, 251, 61, 185, 56, 30, 62, 24, 119, 112, 190, 118, 171, 211, 61, 214, 235, 47, 61, 156, 29, 142, 62, 214, 71, 18, 62, 223, 174, 137, 62, 34, 69, 168, 61, 245, 2, 229, 61, 250, 137, 24, 188, 64, 190, 143, 190, 139, 142, 34, 62, 0, 122, 131, 189, 140, 3, 140, 190, 39, 232, 185, 61, 88, 216, 190, 61, 188, 167, 135, 62, 208, 138, 236, 61, 252, 110, 95, 189, 231, 59, 141, 62, 12, 224, 209, 61, 92, 254, 65, 62, 40, 92, 84, 190, 217, 234, 234, 61, 161, 244, 91, 62, 7, 151, 57, 190, 6, 113, 14, 62, 20, 109, 142, 62, 254, 49, 31, 189, 106, 51, 188, 61, 60, 181, 133, 190, 6, 134, 212, 189, 17, 23, 38, 62, 106, 233, 83, 62, 78, 125, 66, 62, 222, 105, 238, 61, 3, 67, 8, 62, 117, 169, 125, 190, 81, 33, 252, 61, 140, 229, 118, 62, 252, 132, 19, 190, 90, 138, 185, 61, 102, 233, 241, 187, 160, 202, 143, 190, 51, 53, 15, 62, 197, 3, 87, 59, 245, 228, 143, 62, 178, 157, 230, 61, 136, 67, 143, 62, 64, 26, 228, 188, 215, 169, 213, 61, 113, 79, 89, 190, 65, 132, 60, 190, 220, 188, 25, 62, 205, 33, 151, 61, 16, 201, 138, 190, 97, 40, 210, 61, 55, 82, 130, 190, 78, 39, 243, 189, 54, 247, 38, 62, 126, 244, 129, 190, 187, 67, 246, 189, 36, 230, 251, 61, 12, 172, 68, 62, 102, 240, 81, 190, 248, 184, 204, 61, 60, 232, 126, 62, 178, 194, 5, 190, 29, 231, 226, 61, 192, 95, 127, 190, 206, 196, 4, 62, 48, 171, 19, 62, 216, 209, 143, 190, 43, 29, 205, 59, 58, 185, 6, 62, 33, 108, 95, 190, 58, 141, 53, 62, 6, 75, 208, 61, 150, 127, 118, 190, 164, 46, 20, 62, 245, 10, 252, 61, 134, 5, 20, 61, 38, 162, 142, 62, 130, 151, 211, 61, 152, 113, 194, 188, 164, 97, 143, 62, 189, 85, 235, 61, 119, 168, 142, 190, 140, 177, 18, 61, 78, 237, 230, 61, 138, 53, 99, 189, 128, 33, 141, 190, 74, 251, 3, 62, 221, 205, 142, 190, 42, 210, 10, 61, 214, 148, 236, 61, 138, 169, 232, 61, 70, 142, 131, 190, 64, 90, 204, 61, 244, 136, 132, 190, 105, 87, 224, 189, 242, 123, 222, 61, 63, 48, 199, 188, 236, 93, 143, 190, 87, 107, 219, 61, 228, 214, 93, 190, 119, 129, 55, 62, 254, 139, 33, 62, 252, 224, 62, 188, 58, 175, 143, 62, 90, 230, 18, 62, 28, 48, 6, 190, 184, 180, 126, 190, 231, 198, 188, 61, 208, 185, 143, 190, 250, 225, 35, 188, 152, 92, 250, 61, 58, 218, 121, 190, 217, 153, 14, 62, 32, 78, 10, 62, 214, 222, 127, 62, 208, 182, 3, 62, 49, 121, 33, 62, 94, 158, 142, 190, 194, 209, 20, 61, 202, 34, 0, 62, 218, 206, 243, 61, 127, 62, 130, 190, 10, 197, 22, 62, 7, 0, 141, 190, 247, 100, 103, 189, 30, 191, 253, 61, 89, 227, 111, 62, 150, 46, 31, 190, 184, 43, 33, 62, 94, 107, 48, 62, 216, 57, 99, 190, 115, 107, 33, 62, 69, 115, 252, 61, 35, 58, 129, 62, 118, 65, 251, 61, 139, 204, 93, 62, 232, 140, 55, 190, 95, 183, 6, 62, 149, 146, 102, 190, 92, 231, 43, 190, 203, 111, 22, 62, 20, 95, 137, 62, 104, 189, 171, 61, 62, 71, 226, 61, 102, 89, 136, 190, 138, 30, 183, 61, 160, 85, 34, 62, 229, 192, 234, 187, 7, 204, 143, 62, 196, 100, 5, 62, 225, 236, 113, 62, 189, 202, 27, 190, 122, 223, 0, 62, 217, 116, 93, 190, 241, 237, 55, 190, 159, 164, 19, 62, 26, 147, 120, 190, 51, 186, 16, 62, 53, 37, 17, 62, 168, 187, 140, 190, 200, 240, 111, 189, 188, 128, 231, 61, 132, 167, 75, 62, 22, 160, 75, 62, 170, 52, 0, 62, 7, 226, 119, 62, 218, 224, 17, 62, 47, 9, 6, 62, 201, 41, 168, 189, 82, 177, 137, 190, 138, 186, 236, 61, 63, 49, 251, 188, 174, 12, 143, 62, 130, 171, 7, 62, 170, 190, 137, 190, 72, 149, 167, 61, 106, 252, 191, 61, 82, 91, 229, 59, 21, 205, 143, 62, 196, 122, 21, 62, 128, 8, 132, 62, 238, 154, 228, 61, 22, 85, 16, 62, 191, 38, 68, 62, 225, 104, 82, 62, 197, 215, 9, 62, 67, 234, 1, 190, 207, 91, 128, 190, 3, 62, 13, 62, 70, 129, 120, 61, 34, 119, 140, 62, 76, 142, 5, 62, 242, 90, 57, 190, 239, 42, 92, 62, 23, 104, 203, 61, 84, 157, 143, 62, 242, 147, 108, 60, 6, 177, 31, 62, 188, 161, 111, 62, 197, 155, 31, 62, 188, 175, 3, 62, 59, 164, 98, 62, 62, 53, 49, 62, 92, 114, 238, 61, 101, 130, 195, 61, 123, 60, 135, 190, 251, 75, 189, 61, 181, 53, 35, 62, 11, 4, 109, 190, 54, 141, 25, 62, 150, 112, 38, 190, 59, 159, 106, 190, 129, 192, 27, 62, 141, 74, 142, 190, 180, 118, 38, 189, 15, 251, 27, 62, 182, 92, 19, 190, 188, 253, 118, 62, 36, 119, 15, 62, 97, 161, 68, 61, 60, 187, 141, 62, 4, 39, 189, 61, 96, 150, 83, 190, 46, 217, 66, 62, 103, 103, 223, 61, 94, 173, 144, 189, 87, 48, 139, 62, 210, 249, 1, 62, 92, 234, 79, 190, 49, 233, 70, 190, 220, 92, 18, 62, 162, 144, 143, 62, 231, 125, 134, 188, 15, 7, 33, 62, 44, 67, 76, 62, 222, 243, 74, 62, 109, 11, 229, 61, 58, 117, 111, 189, 130, 191, 140, 62, 206, 100, 41, 62, 139, 229, 143, 190, 164, 24, 81, 59, 121, 184, 216, 61, 236, 89, 130, 62, 208, 229, 242, 189, 103, 197, 17, 62, 51, 195, 31, 190, 9, 138, 111, 62, 40, 141, 208, 61, 90, 162, 136, 190, 101, 242, 179, 61, 210, 235, 234, 61, 116, 79, 160, 61, 54, 54, 138, 190, 128, 231, 236, 61, 236, 129, 143, 62, 139, 66, 153, 60, 25, 238, 240, 61, 44, 117, 124, 61, 131, 87, 140, 190, 232, 26, 243, 61, 32, 42, 202, 189, 112, 163, 134, 62, 198, 168, 213, 61, 150, 217, 205, 61, 177, 78, 134, 62, 228, 221, 5, 62, 134, 86, 209, 61, 123, 254, 133, 62, 82, 117, 213, 61, 125, 66, 133, 62, 104, 131, 217, 61, 246, 231, 233, 61, 136, 189, 133, 62, 171, 41, 212, 61, 157, 45, 253, 61, 39, 201, 36, 189, 131, 82, 142, 190, 92, 92, 223, 61, 219, 36, 211, 189, 243, 212, 133, 190, 56, 1, 254, 61, 42, 65, 132, 190, 116, 185, 226, 189, 189, 8, 5, 62, 241, 105, 19, 62, 202, 245, 118, 62, 220, 26, 248, 61, 112, 99, 136, 190, 207, 174, 182, 61, 207, 155, 9, 62, 27, 93, 5, 61, 200, 231, 142, 62, 75, 131, 10, 62, 132, 88, 59, 190, 91, 94, 90, 190, 53, 20, 14, 62, 13, 106, 126, 190, 194, 206, 6, 190, 140, 202, 239, 61, 97, 17, 139, 190, 192, 156, 146, 189, 38, 52, 246, 61, 43, 245, 34, 190, 222, 51, 109, 190, 215, 229, 183, 61, 212, 227, 111, 62, 202, 45, 31, 190, 112, 7, 233, 61, 2, 90, 143, 190, 214, 49, 204, 60, 221, 42, 36, 62, 226, 161, 86, 62, 192, 122, 63, 190, 248, 232, 235, 61, 137, 229, 16, 189, 255, 176, 142, 62, 220, 9, 223, 61, 220, 51, 97, 190, 75, 38, 51, 62, 87, 244, 42, 62, 139, 217, 206, 61, 179, 55, 134, 190, 126, 250, 24, 62, 44, 111, 210, 61, 70, 229, 133, 190, 237, 156, 40, 62, 154, 79, 83, 190, 122, 39, 67, 62, 200, 109, 40, 62, 39, 224, 129, 62, 146, 240, 246, 189, 11, 22, 3, 62, 140, 88, 130, 190, 126, 241, 242, 189, 48, 212, 189, 61, 108, 108, 19, 190, 76, 244, 118, 62, 216, 126, 10, 62, 24, 79, 136, 190, 67, 145, 183, 189, 75, 125, 195, 61, 162, 235, 116, 62, 216, 206, 22, 190, 42, 253, 4, 62, 120, 93, 30, 189, 3, 113, 142, 62, 230, 88, 244, 61, 26, 104, 62, 59, 94, 231, 143, 62, 94, 41, 9, 62, 46, 134, 143, 190, 67, 211, 147, 188, 69, 149, 36, 62, 138, 76, 129, 190, 242, 214, 251, 189, 201, 234, 5, 62, 114, 134, 141, 62, 91, 190, 79, 189, 143, 98, 199, 61, 97, 24, 143, 190, 134, 69, 246, 60, 123, 52, 15, 62, 51, 82, 124, 189, 155, 88, 140, 190, 14, 40, 29, 62, 127, 12, 130, 62, 203, 119, 245, 61, 174, 117, 12, 62, 191, 41, 128, 61, 144, 56, 140, 190, 240, 32, 21, 62, 229, 75, 129, 190, 109, 220, 251, 61, 223, 146, 13, 62, 222, 186, 66, 190, 197, 177, 83, 62, 73, 77, 8, 62, 108, 135, 17, 62, 194, 23, 120, 62, 112, 38, 209, 61, 108, 198, 42, 190, 183, 104, 103, 190, 214, 213, 24, 62, 74, 171, 131, 61, 120, 0, 140, 190, 188, 214, 204, 61, 64, 214, 129, 62, 190, 68, 247, 189, 174, 118, 4, 62, 152, 4, 124, 189, 8, 91, 140, 190, 10, 167, 32, 62, 107, 242, 197, 189, 109, 4, 135, 62, 244, 164, 191, 61, 154, 14, 132, 190, 28, 103, 228, 189, 134, 234, 218, 61, 36, 186, 132, 62, 111, 181, 222, 61, 206, 244, 28, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), +"format": "RGBFloat", +"height": 1, +"mipmaps": false, +"width": 2048 +} + +[sub_resource type="ImageTexture" id="ImageTexture_u7ube"] +image = SubResource("Image_wqtyv") + +[sub_resource type="Curve" id="Curve_o67pt"] +_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.1511628, 0.5252175), 1.7078729, 1.7078729, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0] +point_count = 3 + +[sub_resource type="CurveTexture" id="CurveTexture_oafc8"] +curve = SubResource("Curve_o67pt") + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_44g62"] +emission_shape = 5 +emission_point_texture = SubResource("ImageTexture_u7ube") +emission_normal_texture = SubResource("ImageTexture_4h46k") +emission_point_count = 512 +direction = Vector3(0, 0, 0) +spread = 117.04 +initial_velocity_min = 0.19999999 +initial_velocity_max = 2.04 +gravity = Vector3(0, 100.5955, 0) +scale_min = 0.089999996 +scale_max = 0.53 +scale_curve = SubResource("CurveTexture_oafc8") +scale_over_velocity_min = 32.45 +scale_over_velocity_max = 69.25 +color_ramp = SubResource("GradientTexture1D_drdgq") +color_initial_ramp = SubResource("GradientTexture1D_wqtyv") +alpha_curve = SubResource("CurveTexture_3u2x4") +turbulence_noise_strength = 18.82 +turbulence_noise_scale = 4.192 +turbulence_noise_speed_random = 1.95 + +[sub_resource type="Curve" id="Curve_ycrwu"] +_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.12790698, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0] +point_count = 3 + +[sub_resource type="CurveTexture" id="CurveTexture_725d0"] +curve = SubResource("Curve_ycrwu") + +[sub_resource type="Gradient" id="Gradient_g6u3h"] +colors = PackedColorArray(1, 0, 0.1539259, 1, 1, 0.19529057, 0, 1) + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_qf8ke"] +gradient = SubResource("Gradient_g6u3h") + +[sub_resource type="Gradient" id="Gradient_ng42h"] +colors = PackedColorArray(1, 1, 1, 1, 0.32232416, 0.35635126, 0.40495878, 1) + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_30cme"] +gradient = SubResource("Gradient_ng42h") + +[sub_resource type="Image" id="Image_g5evl"] +data = { +"data": PackedByteArray(64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 142, 57, 125, 63, 134, 94, 22, 62, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 136, 177, 127, 63, 45, 97, 72, 61, 15, 243, 18, 177, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 143, 57, 125, 191, 135, 94, 22, 62, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 191, 0, 0, 0, 128, 64, 91, 120, 191, 95, 91, 120, 62, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 130, 168, 43, 191, 106, 235, 61, 63, 0, 0, 0, 0, 64, 91, 120, 191, 96, 91, 120, 190, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 61, 52, 76, 198, 177, 130, 168, 43, 191, 105, 235, 61, 191, 0, 0, 0, 128, 7, 33, 173, 190, 153, 235, 112, 191, 0, 0, 0, 128, 65, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 245, 14, 218, 62, 43, 159, 103, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 63, 0, 0, 0, 0, 102, 235, 61, 63, 136, 168, 43, 63, 0, 0, 0, 0, 142, 57, 125, 63, 133, 94, 22, 62, 0, 0, 0, 0, 24, 91, 120, 190, 68, 91, 120, 191, 0, 0, 0, 128, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 143, 57, 125, 191, 135, 94, 22, 190, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 131, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 63, 0, 0, 0, 0, 149, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 150, 109, 24, 191, 122, 172, 77, 63, 0, 0, 0, 0, 245, 14, 218, 62, 43, 159, 103, 191, 0, 0, 0, 0, 102, 235, 61, 191, 136, 168, 43, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 191, 0, 0, 0, 128, 120, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 151, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 191, 0, 0, 0, 128, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 149, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 143, 57, 125, 191, 135, 94, 22, 62, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 135, 177, 127, 63, 45, 97, 72, 61, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 63, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 189, 0, 0, 0, 128, 149, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 150, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 0, 0, 0, 0, 142, 57, 125, 191, 133, 94, 22, 62, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 150, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 135, 177, 127, 63, 45, 97, 72, 61, 13, 243, 18, 177, 142, 57, 125, 191, 133, 94, 22, 190, 0, 0, 0, 128, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 158, 235, 112, 63, 234, 32, 173, 62, 0, 0, 0, 0, 157, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 142, 57, 125, 191, 133, 94, 22, 190, 0, 0, 0, 128, 245, 14, 218, 190, 43, 159, 103, 191, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 158, 235, 112, 191, 234, 32, 173, 62, 0, 0, 0, 0, 54, 221, 3, 191, 27, 109, 91, 63, 0, 0, 0, 0, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 191, 0, 0, 0, 128, 122, 172, 77, 191, 151, 109, 24, 191, 0, 0, 0, 128, 120, 172, 77, 191, 152, 109, 24, 63, 0, 0, 0, 0, 149, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 158, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 150, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 120, 172, 77, 191, 151, 109, 24, 191, 0, 0, 0, 128, 136, 177, 127, 191, 46, 97, 72, 189, 15, 243, 18, 49, 244, 14, 218, 190, 42, 159, 103, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 158, 235, 112, 191, 234, 32, 173, 190, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 245, 14, 218, 190, 43, 159, 103, 191, 0, 0, 0, 128, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 13, 243, 18, 177, 135, 177, 127, 63, 44, 97, 72, 61, 18, 243, 18, 177, 149, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 143, 57, 125, 63, 135, 94, 22, 62, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 245, 14, 218, 62, 43, 159, 103, 191, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 191, 0, 0, 0, 128, 102, 235, 61, 63, 136, 168, 43, 63, 0, 0, 0, 0, 64, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 143, 57, 125, 191, 135, 94, 22, 62, 0, 0, 0, 0, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 102, 235, 61, 63, 135, 168, 43, 191, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 63, 0, 0, 0, 0, 65, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 120, 172, 77, 191, 151, 109, 24, 191, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 63, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 27, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 245, 14, 218, 190, 43, 159, 103, 191, 0, 0, 0, 128, 158, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 27, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 143, 57, 125, 191, 135, 94, 22, 62, 146, 206, 148, 178, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 62, 147, 206, 148, 178, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 63, 0, 0, 0, 0, 65, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 63, 0, 0, 0, 0, 158, 235, 112, 63, 234, 32, 173, 190, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 52, 76, 198, 177, 122, 172, 77, 191, 151, 109, 24, 191, 0, 0, 0, 128, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 143, 57, 125, 63, 135, 94, 22, 62, 147, 206, 148, 178, 7, 33, 173, 190, 152, 235, 112, 63, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 63, 0, 0, 0, 0, 158, 235, 112, 63, 234, 32, 173, 62, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 54, 221, 3, 63, 27, 109, 91, 191, 0, 0, 0, 0, 158, 235, 112, 63, 234, 32, 173, 62, 0, 0, 0, 0, 149, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 122, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 122, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 149, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 61, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 63, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 63, 0, 0, 0, 0, 158, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 0, 0, 0, 0, 24, 91, 120, 190, 68, 91, 120, 63, 0, 0, 0, 0, 142, 57, 125, 63, 133, 94, 22, 62, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 189, 15, 243, 18, 49, 120, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 149, 109, 24, 191, 122, 172, 77, 63, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 43, 97, 72, 61, 136, 177, 127, 191, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 7, 33, 173, 190, 153, 235, 112, 63, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 61, 15, 243, 18, 177, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 189, 13, 243, 18, 49, 143, 57, 125, 63, 135, 94, 22, 190, 142, 206, 148, 50, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 54, 221, 3, 191, 27, 109, 91, 191, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 189, 15, 243, 18, 49, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 65, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 65, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 151, 109, 24, 191, 122, 172, 77, 63, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 189, 13, 243, 18, 49, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 27, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 191, 0, 0, 0, 128, 143, 57, 125, 191, 135, 94, 22, 190, 0, 0, 0, 128, 149, 109, 24, 191, 122, 172, 77, 63, 0, 0, 0, 0, 64, 91, 120, 191, 96, 91, 120, 62, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 142, 57, 125, 63, 134, 94, 22, 62, 0, 0, 0, 0, 54, 221, 3, 63, 27, 109, 91, 191, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 62, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 191, 0, 0, 0, 128, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 26, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 191, 0, 0, 0, 0, 102, 235, 61, 63, 136, 168, 43, 191, 0, 0, 0, 0, 151, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 63, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 189, 52, 76, 198, 49, 102, 235, 61, 63, 135, 168, 43, 63, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 150, 109, 24, 63, 122, 172, 77, 63, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 102, 235, 61, 191, 136, 168, 43, 63, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 191, 0, 0, 0, 128, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 120, 172, 77, 63, 152, 109, 24, 191, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 158, 235, 112, 191, 234, 32, 173, 62, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 65, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 135, 177, 127, 191, 45, 97, 72, 189, 0, 0, 0, 128, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 150, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 150, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 27, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 102, 235, 61, 63, 136, 168, 43, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 27, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 191, 0, 0, 0, 128, 150, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 120, 172, 77, 191, 152, 109, 24, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 64, 91, 120, 63, 95, 91, 120, 190, 0, 0, 0, 0, 245, 14, 218, 190, 43, 159, 103, 63, 0, 0, 0, 0, 64, 91, 120, 63, 96, 91, 120, 62, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 189, 13, 243, 18, 49, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 130, 168, 43, 63, 105, 235, 61, 63, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 7, 33, 173, 62, 152, 235, 112, 191, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 191, 0, 0, 0, 128, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 149, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 191, 0, 0, 0, 128, 27, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 158, 235, 112, 63, 234, 32, 173, 62, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 143, 57, 125, 191, 134, 94, 22, 62, 145, 206, 148, 178, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 120, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 191, 0, 0, 0, 128, 130, 168, 43, 191, 106, 235, 61, 63, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 122, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 120, 172, 77, 63, 151, 109, 24, 191, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 191, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 150, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 191, 0, 0, 0, 0, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 130, 168, 43, 191, 105, 235, 61, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 191, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 157, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 26, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 102, 235, 61, 63, 135, 168, 43, 191, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 158, 235, 112, 191, 234, 32, 173, 190, 0, 0, 0, 128, 102, 235, 61, 63, 135, 168, 43, 63, 0, 0, 0, 0, 54, 221, 3, 63, 27, 109, 91, 191, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 130, 168, 43, 63, 106, 235, 61, 191, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 61, 15, 243, 18, 177, 122, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 143, 57, 125, 191, 134, 94, 22, 62, 145, 206, 148, 178, 27, 91, 120, 190, 69, 91, 120, 191, 0, 0, 0, 128, 143, 57, 125, 191, 134, 94, 22, 62, 145, 206, 148, 178, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 43, 97, 72, 189, 136, 177, 127, 191, 0, 0, 0, 128, 102, 235, 61, 191, 136, 168, 43, 63, 0, 0, 0, 0, 43, 97, 72, 189, 136, 177, 127, 63, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 136, 177, 127, 191, 45, 97, 72, 189, 0, 0, 0, 128, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 142, 57, 125, 191, 134, 94, 22, 62, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 191, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 150, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 244, 14, 218, 62, 42, 159, 103, 63, 0, 0, 0, 0, 102, 235, 61, 63, 136, 168, 43, 191, 0, 0, 0, 0, 120, 172, 77, 191, 152, 109, 24, 191, 0, 0, 0, 128, 157, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 158, 235, 112, 191, 234, 32, 173, 62, 0, 0, 0, 0, 42, 97, 72, 189, 135, 177, 127, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 22, 109, 91, 191, 62, 221, 3, 63, 0, 0, 0, 0, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 102, 235, 61, 63, 136, 168, 43, 63, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 191, 0, 0, 0, 128, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 43, 97, 72, 61, 136, 177, 127, 63, 0, 0, 0, 0, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 130, 168, 43, 63, 105, 235, 61, 63, 0, 0, 0, 0, 244, 14, 218, 190, 42, 159, 103, 191, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 63, 0, 0, 0, 0, 130, 168, 43, 191, 106, 235, 61, 63, 0, 0, 0, 0, 135, 177, 127, 63, 45, 97, 72, 61, 0, 0, 0, 0, 22, 109, 91, 63, 62, 221, 3, 63, 0, 0, 0, 0, 122, 172, 77, 63, 151, 109, 24, 63, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 191, 0, 0, 0, 0, 151, 109, 24, 63, 122, 172, 77, 191, 0, 0, 0, 0, 150, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 142, 57, 125, 191, 133, 94, 22, 190, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 63, 0, 0, 0, 0, 26, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 102, 235, 61, 191, 135, 168, 43, 191, 0, 0, 0, 128, 135, 177, 127, 63, 45, 97, 72, 189, 13, 243, 18, 49, 102, 235, 61, 63, 135, 168, 43, 63, 0, 0, 0, 0, 27, 91, 120, 190, 69, 91, 120, 63, 0, 0, 0, 0, 136, 177, 127, 191, 45, 97, 72, 61, 15, 243, 18, 177, 43, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 136, 177, 127, 63, 45, 97, 72, 61, 14, 243, 18, 177, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 7, 33, 173, 190, 152, 235, 112, 63, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 7, 33, 173, 62, 152, 235, 112, 63, 0, 0, 0, 0, 157, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 158, 235, 112, 63, 233, 32, 173, 62, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 191, 0, 0, 0, 128, 7, 33, 173, 190, 153, 235, 112, 191, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 158, 235, 112, 191, 233, 32, 173, 62, 0, 0, 0, 0, 133, 94, 22, 62, 143, 57, 125, 63, 0, 0, 0, 0, 131, 168, 43, 191, 106, 235, 61, 191, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 64, 91, 120, 191, 95, 91, 120, 190, 0, 0, 0, 128, 149, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 61, 0, 0, 0, 0, 102, 235, 61, 63, 135, 168, 43, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 120, 172, 77, 191, 151, 109, 24, 63, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 7, 33, 173, 62, 153, 235, 112, 191, 0, 0, 0, 0, 102, 235, 61, 191, 136, 168, 43, 63, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 54, 221, 3, 191, 28, 109, 91, 63, 0, 0, 0, 0, 157, 235, 112, 191, 233, 32, 173, 190, 0, 0, 0, 128, 22, 109, 91, 63, 62, 221, 3, 191, 0, 0, 0, 0, 133, 94, 22, 190, 143, 57, 125, 63, 0, 0, 0, 0, 42, 97, 72, 61, 135, 177, 127, 63, 0, 0, 0, 0, 135, 177, 127, 191, 45, 97, 72, 189, 0, 0, 0, 128, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 143, 57, 125, 63, 135, 94, 22, 190, 0, 0, 0, 0, 143, 57, 125, 191, 135, 94, 22, 62, 146, 206, 148, 178, 24, 91, 120, 190, 68, 91, 120, 191, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 24, 91, 120, 62, 68, 91, 120, 191, 0, 0, 0, 0, 43, 159, 103, 191, 241, 14, 218, 62, 0, 0, 0, 0, 130, 168, 43, 191, 106, 235, 61, 63, 0, 0, 0, 0, 54, 221, 3, 63, 28, 109, 91, 63, 0, 0, 0, 0, 151, 109, 24, 191, 122, 172, 77, 191, 0, 0, 0, 128, 26, 91, 120, 62, 69, 91, 120, 191, 0, 0, 0, 0, 44, 159, 103, 63, 241, 14, 218, 190, 0, 0, 0, 0, 24, 91, 120, 190, 68, 91, 120, 191, 0, 0, 0, 128, 7, 33, 173, 190, 152, 235, 112, 63, 0, 0, 0, 0, 44, 159, 103, 191, 241, 14, 218, 190, 0, 0, 0, 128, 43, 159, 103, 63, 241, 14, 218, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), +"format": "RGBFloat", +"height": 1, +"mipmaps": false, +"width": 2048 +} + +[sub_resource type="ImageTexture" id="ImageTexture_c82hk"] +image = SubResource("Image_g5evl") + +[sub_resource type="Image" id="Image_drdgq"] +data = { +"data": PackedByteArray(213, 102, 139, 62, 136, 69, 141, 189, 32, 252, 0, 62, 2, 27, 133, 189, 124, 233, 139, 62, 140, 9, 195, 61, 28, 111, 141, 62, 246, 167, 84, 61, 36, 228, 13, 62, 51, 214, 35, 59, 248, 233, 143, 62, 248, 22, 15, 62, 204, 211, 143, 62, 147, 35, 195, 59, 30, 114, 10, 62, 6, 86, 72, 62, 155, 160, 78, 190, 58, 16, 186, 61, 123, 182, 74, 62, 167, 122, 76, 190, 175, 228, 28, 62, 243, 55, 248, 60, 191, 19, 143, 190, 8, 146, 9, 62, 168, 67, 139, 190, 95, 120, 143, 189, 238, 211, 10, 62, 8, 87, 132, 190, 156, 255, 225, 189, 115, 159, 222, 61, 120, 211, 141, 190, 179, 135, 63, 61, 244, 235, 237, 61, 6, 32, 219, 61, 107, 29, 133, 190, 186, 174, 25, 62, 166, 153, 34, 61, 229, 92, 142, 190, 124, 208, 208, 61, 220, 174, 65, 190, 2, 164, 84, 62, 69, 60, 36, 62, 229, 196, 21, 190, 114, 139, 117, 190, 89, 202, 201, 61, 190, 146, 138, 190, 254, 134, 154, 61, 132, 0, 204, 61, 169, 86, 161, 60, 150, 123, 143, 190, 66, 172, 190, 61, 224, 142, 63, 190, 176, 143, 86, 62, 88, 211, 206, 61, 200, 239, 138, 190, 98, 182, 148, 189, 239, 215, 29, 62, 22, 171, 131, 62, 197, 180, 231, 189, 138, 112, 21, 62, 61, 132, 128, 190, 130, 62, 1, 190, 82, 66, 17, 62, 45, 141, 220, 61, 32, 251, 132, 190, 52, 203, 20, 62, 47, 13, 38, 61, 128, 76, 142, 190, 44, 32, 187, 61, 86, 171, 67, 62, 108, 216, 82, 190, 88, 57, 208, 61, 120, 124, 135, 190, 28, 186, 192, 189, 206, 12, 243, 61, 58, 93, 58, 189, 1, 236, 141, 62, 94, 146, 7, 62, 28, 212, 143, 62, 156, 136, 193, 59, 125, 208, 11, 62, 246, 231, 66, 190, 3, 137, 83, 190, 100, 4, 36, 62, 82, 15, 199, 189, 213, 234, 134, 190, 243, 226, 23, 62, 122, 200, 138, 62, 62, 43, 151, 61, 218, 154, 1, 62, 223, 94, 1, 62, 157, 124, 128, 62, 28, 210, 20, 62, 182, 98, 96, 62, 129, 64, 52, 190, 52, 60, 16, 62, 53, 104, 34, 189, 208, 93, 142, 190, 90, 198, 228, 61, 194, 252, 131, 62, 185, 254, 228, 61, 80, 23, 40, 62, 76, 144, 11, 188, 85, 195, 143, 62, 99, 197, 18, 62, 239, 183, 76, 62, 175, 114, 74, 62, 210, 145, 211, 61, 115, 250, 141, 62, 28, 83, 55, 61, 14, 227, 194, 61, 240, 26, 165, 189, 126, 233, 137, 190, 169, 84, 38, 62, 113, 203, 218, 60, 142, 78, 143, 190, 166, 127, 221, 61, 104, 211, 115, 190, 36, 161, 24, 190, 230, 218, 28, 62, 1, 243, 28, 188, 134, 188, 143, 190, 247, 29, 253, 61, 170, 177, 128, 190, 130, 125, 0, 190, 37, 149, 231, 61, 215, 74, 142, 190, 0, 103, 38, 189, 214, 107, 4, 62, 102, 228, 27, 190, 116, 221, 113, 62, 185, 218, 231, 61, 93, 175, 128, 62, 73, 135, 0, 62, 94, 217, 28, 62, 156, 235, 57, 62, 45, 168, 91, 190, 166, 159, 15, 62, 236, 122, 76, 190, 48, 182, 74, 190, 59, 67, 201, 61, 172, 105, 96, 189, 64, 55, 141, 62, 90, 250, 233, 61, 152, 112, 108, 62, 171, 252, 35, 62, 187, 17, 4, 62, 140, 226, 113, 190, 241, 219, 27, 62, 130, 76, 41, 62, 168, 111, 2, 60, 234, 198, 143, 190, 21, 249, 32, 62, 61, 11, 86, 190, 106, 33, 64, 190, 59, 197, 25, 62, 166, 210, 130, 190, 246, 227, 238, 189, 33, 170, 13, 62, 235, 42, 144, 61, 126, 56, 139, 62, 218, 218, 220, 61, 208, 174, 96, 62, 211, 217, 51, 190, 68, 84, 26, 62, 50, 217, 159, 186, 49, 242, 143, 62, 110, 27, 247, 61, 35, 219, 4, 62, 57, 85, 127, 62, 128, 181, 34, 62, 131, 178, 45, 62, 74, 62, 101, 62, 202, 93, 241, 61, 244, 114, 111, 62, 156, 233, 31, 62, 232, 229, 232, 61, 79, 145, 143, 61, 23, 66, 139, 62, 20, 41, 250, 61, 16, 1, 116, 190, 44, 85, 24, 62, 42, 153, 229, 61, 124, 211, 36, 190, 99, 209, 107, 62, 236, 178, 39, 62, 187, 157, 246, 61, 229, 233, 129, 190, 208, 170, 34, 62, 238, 178, 82, 190, 210, 212, 67, 62, 48, 206, 4, 62, 15, 230, 135, 190, 154, 34, 188, 61, 233, 137, 230, 61, 42, 227, 27, 190, 50, 222, 113, 190, 254, 161, 241, 61, 52, 8, 110, 190, 174, 214, 33, 62, 226, 184, 30, 62, 130, 25, 46, 62, 246, 241, 100, 62, 178, 252, 16, 62, 220, 166, 67, 190, 119, 220, 82, 190, 244, 134, 42, 62, 29, 204, 124, 190, 89, 179, 9, 190, 154, 156, 5, 62, 100, 35, 130, 62, 54, 181, 244, 61, 62, 34, 40, 62, 143, 29, 87, 190, 233, 241, 62, 190, 134, 96, 223, 61, 88, 184, 138, 62, 88, 45, 152, 61, 150, 45, 16, 62, 136, 86, 40, 62, 22, 55, 105, 190, 46, 242, 234, 61, 163, 97, 141, 190, 220, 125, 87, 61, 241, 12, 17, 62, 106, 204, 250, 188, 158, 13, 143, 190, 164, 22, 23, 62, 8, 41, 135, 190, 240, 90, 196, 189, 184, 252, 254, 61, 120, 84, 143, 62, 59, 66, 211, 60, 49, 18, 32, 62, 197, 59, 255, 61, 74, 230, 128, 62, 46, 65, 220, 61, 133, 95, 143, 190, 91, 41, 197, 188, 190, 153, 0, 62, 236, 34, 35, 62, 247, 17, 109, 62, 33, 75, 1, 62, 198, 25, 34, 190, 121, 214, 109, 190, 206, 87, 246, 61, 218, 24, 93, 190, 184, 83, 56, 62, 60, 138, 214, 61, 87, 178, 56, 190, 84, 195, 92, 62, 234, 132, 39, 62, 219, 199, 143, 190, 83, 10, 0, 60, 54, 106, 208, 61, 4, 250, 142, 190, 253, 134, 1, 61, 244, 105, 191, 61, 244, 188, 49, 189, 251, 20, 142, 62, 63, 65, 17, 62, 139, 158, 62, 61, 202, 215, 141, 190, 60, 248, 22, 62, 66, 89, 38, 62, 134, 176, 106, 62, 116, 133, 30, 62, 204, 84, 198, 188, 152, 94, 143, 190, 15, 128, 34, 62, 46, 169, 143, 62, 197, 83, 78, 60, 173, 182, 210, 61, 242, 59, 141, 190, 42, 109, 95, 189, 192, 175, 38, 62, 72, 223, 133, 190, 228, 177, 210, 189, 90, 196, 4, 62, 24, 170, 102, 62, 164, 199, 43, 62, 94, 107, 251, 61, 82, 65, 128, 190, 216, 90, 2, 62, 9, 56, 198, 61, 68, 146, 136, 62, 126, 165, 180, 61, 253, 182, 11, 62, 217, 81, 134, 62, 130, 182, 205, 61, 66, 90, 232, 61, 105, 25, 142, 190, 167, 206, 48, 189, 183, 145, 36, 62, 68, 0, 238, 189, 111, 237, 130, 190, 254, 208, 37, 62, 204, 224, 113, 62, 216, 222, 27, 62, 110, 239, 21, 62, 216, 156, 68, 62, 35, 254, 81, 190, 250, 120, 6, 62, 100, 53, 137, 190, 133, 141, 173, 61, 26, 102, 33, 62, 38, 219, 11, 190, 127, 128, 123, 62, 175, 203, 22, 62, 122, 246, 58, 62, 248, 182, 90, 190, 191, 91, 183, 61, 120, 220, 186, 189, 90, 3, 136, 190, 218, 13, 10, 62, 88, 181, 110, 190, 13, 237, 32, 190, 166, 101, 185, 61, 223, 37, 100, 190, 231, 44, 47, 62, 108, 239, 16, 62, 190, 43, 37, 190, 250, 143, 107, 190, 42, 88, 237, 61, 146, 133, 173, 61, 25, 54, 137, 190, 74, 218, 10, 62, 227, 195, 148, 58, 188, 242, 143, 62, 117, 248, 208, 61, 89, 82, 75, 190, 198, 237, 75, 62, 51, 215, 1, 62, 205, 151, 73, 190, 196, 125, 77, 62, 50, 212, 200, 61, 16, 27, 93, 190, 70, 81, 56, 62, 120, 77, 205, 61, 148, 8, 133, 62, 23, 8, 220, 61, 6, 43, 0, 62, 126, 61, 243, 189, 154, 79, 130, 190, 40, 91, 222, 61, 40, 120, 33, 62, 64, 78, 110, 62, 100, 88, 39, 62, 163, 2, 79, 190, 144, 233, 71, 62, 230, 84, 17, 62, 243, 110, 110, 190, 9, 76, 33, 190, 165, 182, 0, 62, 233, 156, 143, 190, 11, 165, 109, 188, 90, 1, 245, 61, 75, 182, 230, 189, 6, 201, 131, 62, 200, 5, 195, 61, 3, 19, 71, 190, 142, 196, 79, 62, 212, 140, 40, 62, 12, 132, 204, 189, 94, 109, 134, 62, 208, 6, 26, 62, 24, 42, 238, 188, 161, 43, 143, 62, 151, 107, 23, 62, 33, 66, 7, 190, 188, 51, 126, 190, 227, 43, 189, 61, 237, 156, 137, 190, 224, 12, 169, 189, 100, 74, 31, 62, 239, 202, 123, 62, 78, 95, 11, 62, 108, 93, 255, 61, 53, 21, 6, 190, 98, 193, 126, 190, 189, 26, 3, 62, 117, 125, 181, 61, 220, 126, 136, 62, 220, 220, 229, 61, 202, 155, 119, 62, 186, 85, 18, 62, 178, 247, 25, 62, 54, 149, 84, 190, 60, 191, 65, 190, 213, 110, 24, 62, 58, 171, 71, 190, 251, 58, 79, 62, 31, 129, 32, 62, 141, 234, 143, 190, 241, 247, 29, 59, 186, 217, 33, 62, 241, 133, 143, 62, 159, 33, 148, 60, 189, 25, 23, 62, 64, 231, 38, 62, 73, 71, 106, 62, 74, 240, 182, 61, 105, 175, 11, 190, 201, 154, 123, 62, 60, 255, 9, 62, 208, 14, 86, 189, 113, 104, 141, 190, 76, 218, 34, 62, 188, 113, 142, 62, 0, 55, 30, 61, 222, 69, 40, 62, 42, 25, 58, 62, 2, 127, 91, 190, 174, 246, 30, 62, 24, 109, 1, 62, 68, 121, 128, 190, 96, 37, 36, 62, 100, 107, 175, 189, 118, 10, 137, 190, 200, 214, 249, 61, 252, 195, 83, 62, 184, 166, 66, 62, 37, 222, 188, 61, 143, 64, 139, 190, 240, 169, 143, 61, 142, 138, 39, 62, 161, 227, 131, 62, 69, 212, 229, 189, 30, 195, 8, 62, 90, 175, 141, 190, 6, 34, 71, 61, 6, 68, 42, 62, 168, 1, 62, 62, 182, 246, 87, 190, 216, 25, 200, 61, 208, 215, 90, 62, 37, 210, 58, 190, 10, 119, 192, 61, 124, 180, 108, 61, 137, 213, 140, 62, 216, 93, 24, 62, 13, 42, 141, 62, 13, 36, 98, 61, 34, 187, 231, 61, 162, 75, 86, 190, 44, 218, 63, 62, 6, 245, 231, 61, 144, 183, 103, 190, 10, 92, 42, 190, 150, 229, 31, 62, 147, 187, 217, 188, 99, 79, 143, 190, 213, 152, 9, 62, 208, 210, 31, 190, 167, 128, 111, 62, 246, 107, 186, 61, 8, 67, 183, 61, 30, 86, 136, 62, 196, 186, 20, 62, 92, 174, 140, 190, 63, 154, 113, 189, 170, 54, 185, 61, 73, 163, 140, 61, 248, 112, 139, 62, 5, 99, 31, 62, 22, 35, 237, 189, 119, 7, 131, 190, 178, 192, 247, 61, 114, 168, 135, 190, 136, 208, 190, 189, 232, 185, 25, 62, 128, 224, 148, 189, 36, 237, 138, 62, 166, 162, 43, 62, 190, 82, 172, 60, 249, 114, 143, 190, 58, 157, 218, 61, 252, 13, 136, 188, 102, 143, 143, 190, 225, 154, 23, 62, 192, 207, 108, 62, 70, 124, 35, 62, 125, 129, 40, 62, 82, 28, 143, 190, 43, 156, 244, 60, 252, 212, 25, 62, 207, 170, 203, 61, 226, 128, 134, 62, 236, 113, 4, 62, 182, 205, 93, 60, 28, 163, 143, 62, 131, 150, 39, 62, 202, 5, 138, 62, 50, 86, 163, 189, 102, 41, 203, 61, 136, 116, 142, 62, 22, 160, 29, 61, 237, 172, 25, 62, 69, 3, 123, 189, 18, 99, 140, 62, 34, 83, 223, 61, 64, 46, 170, 189, 239, 130, 137, 62, 44, 189, 34, 62, 14, 88, 140, 190, 19, 100, 124, 61, 210, 12, 229, 61, 101, 44, 4, 190, 122, 167, 127, 62, 55, 185, 250, 61, 255, 242, 135, 62, 146, 146, 187, 189, 176, 154, 39, 62, 244, 170, 150, 61, 125, 208, 138, 62, 202, 112, 194, 61, 76, 64, 132, 190, 200, 192, 226, 189, 7, 210, 38, 62, 3, 20, 131, 190, 137, 184, 236, 61, 88, 37, 234, 61, 237, 56, 15, 190, 158, 122, 121, 62, 196, 114, 9, 62, 170, 32, 204, 188, 13, 90, 143, 190, 21, 50, 254, 61, 19, 67, 195, 61, 42, 66, 135, 190, 64, 168, 6, 62, 13, 19, 83, 190, 121, 106, 67, 62, 35, 77, 20, 62, 24, 249, 141, 62, 26, 156, 55, 189, 240, 50, 245, 61, 90, 44, 101, 62, 188, 202, 45, 62, 234, 130, 23, 62, 232, 102, 143, 190, 61, 187, 187, 60, 30, 148, 222, 61, 252, 190, 101, 190, 225, 4, 45, 190, 250, 243, 245, 61, 118, 192, 130, 190, 130, 126, 239, 189, 58, 38, 33, 62, 118, 223, 142, 62, 18, 30, 7, 61, 214, 209, 19, 62, 229, 136, 205, 189, 240, 85, 134, 62, 124, 101, 248, 61, 158, 108, 225, 59, 219, 205, 143, 190, 145, 105, 203, 61, 49, 225, 61, 62, 12, 20, 88, 190, 72, 32, 31, 62, 250, 224, 1, 190, 255, 93, 128, 62, 142, 122, 28, 62, 229, 0, 136, 62, 213, 247, 186, 61, 125, 254, 15, 62, 248, 235, 200, 61, 4, 192, 134, 62, 128, 176, 2, 62, 9, 211, 177, 61, 40, 211, 136, 62, 58, 89, 209, 61, 156, 232, 8, 62, 240, 69, 125, 190, 13, 189, 251, 61, 168, 14, 135, 62, 139, 128, 197, 61, 55, 215, 39, 62, 10, 22, 43, 190, 180, 45, 103, 190, 137, 196, 227, 61, 10, 9, 90, 61, 140, 85, 141, 62, 152, 218, 226, 61, 144, 8, 98, 189, 232, 42, 141, 190, 176, 1, 208, 61, 126, 18, 141, 190, 7, 22, 101, 189, 82, 34, 243, 61, 210, 244, 251, 189, 4, 73, 129, 190, 76, 109, 209, 61, 112, 94, 221, 187, 166, 206, 143, 190, 140, 154, 223, 61, 140, 231, 142, 62, 89, 106, 5, 189, 114, 40, 201, 61, 96, 177, 104, 190, 246, 10, 41, 62, 218, 106, 218, 61, 238, 102, 98, 62, 246, 135, 49, 62, 126, 203, 186, 61, 150, 228, 140, 62, 245, 210, 106, 189, 208, 21, 204, 61, 63, 141, 35, 62, 41, 195, 108, 190, 60, 219, 239, 61, 199, 65, 126, 62, 84, 36, 7, 190, 161, 44, 34, 62, 232, 101, 143, 62, 6, 3, 189, 60, 234, 4, 36, 62, 80, 153, 103, 61, 98, 254, 140, 190, 64, 73, 210, 61, 182, 66, 140, 62, 2, 15, 127, 189, 83, 92, 234, 61, 246, 229, 129, 62, 52, 191, 246, 61, 129, 62, 16, 62, 165, 49, 61, 62, 184, 178, 88, 62, 233, 145, 27, 62, 182, 17, 170, 61, 127, 133, 137, 62, 230, 227, 23, 62, 91, 2, 136, 190, 144, 231, 186, 61, 108, 180, 5, 62, 161, 77, 145, 60, 39, 136, 143, 62, 23, 225, 10, 62, 146, 49, 214, 188, 41, 82, 143, 62, 208, 188, 234, 61, 140, 63, 106, 62, 180, 241, 38, 190, 89, 207, 18, 62, 223, 113, 4, 62, 198, 134, 127, 190, 97, 51, 238, 61, 222, 133, 143, 190, 236, 57, 148, 60, 178, 163, 204, 61, 46, 218, 126, 189, 91, 68, 140, 62, 10, 124, 18, 62, 223, 167, 142, 62, 146, 209, 18, 61, 172, 138, 182, 61, 96, 140, 143, 190, 205, 236, 139, 188, 12, 191, 7, 62, 124, 28, 97, 190, 215, 69, 51, 62, 80, 153, 253, 61, 57, 145, 60, 189, 138, 225, 141, 190, 30, 187, 224, 61, 12, 64, 140, 190, 60, 100, 127, 189, 160, 177, 248, 61, 186, 180, 39, 190, 1, 175, 105, 62, 168, 198, 5, 62, 118, 107, 202, 188, 100, 91, 143, 62, 57, 124, 244, 61, 66, 213, 122, 61, 130, 100, 140, 62, 116, 103, 242, 61, 10, 22, 102, 62, 106, 143, 44, 190, 12, 34, 18, 62, 200, 229, 63, 189, 183, 209, 141, 190, 200, 106, 30, 62, 191, 171, 113, 60, 82, 155, 143, 190, 96, 3, 210, 61, 21, 88, 68, 62, 72, 60, 82, 190, 9, 40, 250, 61, 165, 66, 106, 62, 133, 237, 38, 62, 32, 121, 247, 61, 102, 140, 219, 189, 175, 19, 133, 62, 251, 239, 35, 62, 96, 197, 143, 190, 92, 96, 6, 60, 168, 27, 230, 61, 192, 217, 116, 62, 156, 236, 22, 190, 190, 237, 230, 61, 234, 233, 129, 62, 166, 157, 246, 61, 147, 152, 17, 62, 0, 128, 143, 190, 124, 181, 155, 188, 91, 88, 205, 61, 181, 248, 141, 62, 251, 176, 55, 189, 112, 161, 224, 61, 29, 17, 22, 189, 111, 152, 142, 190, 90, 201, 190, 61, 59, 68, 10, 190, 10, 117, 124, 190, 84, 52, 37, 62, 58, 6, 10, 190, 77, 154, 124, 62, 170, 202, 211, 61, 114, 154, 143, 190, 135, 237, 115, 188, 6, 36, 11, 62, 246, 58, 244, 60, 56, 29, 143, 190, 21, 68, 205, 61, 192, 178, 130, 62, 3, 243, 239, 189, 5, 223, 5, 62, 234, 44, 141, 62, 136, 200, 97, 61, 251, 151, 42, 62, 145, 155, 155, 61, 116, 129, 138, 190, 44, 214, 38, 62, 210, 202, 138, 190, 189, 5, 151, 61, 22, 133, 1, 62, 67, 128, 109, 62, 27, 142, 34, 62, 215, 31, 31, 62, 181, 226, 140, 190, 17, 15, 107, 189, 200, 113, 182, 61, 79, 194, 113, 190, 150, 17, 28, 190, 244, 254, 199, 61, 111, 234, 7, 62, 175, 222, 125, 62, 36, 199, 234, 61, 174, 71, 139, 190, 1, 56, 143, 61, 219, 249, 4, 62, 24, 159, 33, 190, 100, 49, 110, 62, 6, 250, 12, 62, 28, 154, 152, 61, 138, 177, 138, 190, 222, 9, 39, 62, 110, 27, 141, 62, 15, 248, 99, 189, 32, 0, 9, 62, 66, 159, 143, 62, 189, 166, 103, 188, 150, 70, 28, 62, 132, 172, 23, 61, 205, 144, 142, 62, 14, 14, 187, 61, 31, 253, 161, 189, 91, 27, 138, 190, 191, 58, 250, 61, 212, 147, 14, 61, 3, 188, 142, 190, 43, 191, 10, 62, 14, 100, 20, 190, 123, 95, 118, 190, 208, 64, 26, 62, 138, 157, 141, 190, 196, 225, 74, 189, 114, 6, 187, 61, 165, 187, 42, 190, 179, 112, 103, 62, 210, 253, 6, 62, 225, 114, 140, 190, 150, 9, 121, 61, 0, 201, 38, 62, 152, 65, 127, 190, 220, 4, 5, 62, 246, 80, 236, 61, 185, 234, 142, 62, 48, 191, 4, 61, 63, 173, 9, 62, 205, 39, 19, 62, 138, 29, 119, 190, 255, 133, 34, 62, 151, 163, 138, 190, 110, 121, 153, 61, 20, 83, 210, 61, 152, 26, 182, 189, 191, 112, 136, 190, 165, 33, 183, 61, 83, 148, 56, 189, 123, 244, 141, 190, 74, 220, 26, 62, 245, 190, 152, 189, 61, 175, 138, 190, 72, 183, 229, 61, 45, 228, 139, 62, 16, 112, 133, 61, 4, 1, 199, 61, 74, 85, 14, 190, 106, 3, 122, 62, 74, 183, 203, 61, 228, 115, 129, 190, 141, 136, 250, 61, 29, 14, 8, 62, 52, 185, 19, 62, 40, 198, 118, 62, 205, 194, 4, 62, 151, 174, 71, 62, 241, 55, 79, 190, 83, 119, 28, 62, 61, 226, 93, 62, 233, 116, 55, 190, 4, 203, 41, 62, 60, 46, 44, 62, 12, 94, 102, 190, 91, 187, 17, 62, 64, 150, 129, 190, 145, 100, 249, 189, 132, 87, 230, 61, 204, 27, 187, 188, 100, 103, 143, 190, 117, 254, 240, 61, 223, 61, 114, 61, 62, 169, 140, 190, 76, 51, 16, 62, 146, 139, 205, 189, 179, 85, 134, 62, 103, 182, 214, 61, 10, 170, 140, 62, 126, 36, 114, 189, 236, 19, 194, 61, 231, 184, 17, 62, 6, 250, 119, 62, 74, 148, 33, 62, 88, 112, 143, 190, 216, 176, 175, 188, 48, 225, 17, 62, 26, 36, 76, 62, 61, 22, 75, 62, 130, 149, 20, 62, 182, 44, 157, 61, 97, 104, 138, 190, 112, 132, 35, 62, 208, 175, 44, 62, 4, 254, 101, 62, 0, 197, 30, 62, 174, 189, 20, 190, 160, 41, 118, 62, 237, 131, 40, 62, 134, 31, 92, 190, 146, 103, 57, 62, 168, 90, 1, 62, 99, 23, 169, 189, 250, 155, 137, 190, 225, 248, 236, 61, 252, 41, 139, 62, 20, 19, 145, 61, 157, 29, 32, 62, 59, 139, 255, 60, 89, 2, 143, 62, 242, 9, 39, 62, 41, 198, 117, 62, 52, 99, 21, 62, 156, 203, 206, 61, 53, 231, 137, 189, 185, 156, 139, 62, 44, 73, 212, 61, 62, 11, 22, 188, 58, 191, 143, 62, 48, 101, 208, 61, 104, 80, 15, 189, 131, 184, 142, 62, 49, 238, 13, 62, 255, 163, 110, 62, 118, 4, 33, 190, 16, 175, 24, 62, 94, 49, 142, 62, 161, 195, 43, 189, 171, 171, 252, 61, 161, 1, 133, 190, 117, 85, 220, 61, 15, 59, 42, 62, 34, 82, 122, 190, 82, 210, 13, 190, 146, 45, 246, 61, 191, 115, 140, 62, 220, 237, 120, 61, 138, 219, 247, 61, 221, 235, 85, 190, 32, 68, 64, 190, 224, 110, 192, 61, 122, 174, 143, 190, 156, 207, 64, 188, 215, 201, 31, 62, 35, 2, 129, 190, 44, 79, 254, 189, 227, 182, 22, 62, 82, 133, 35, 62, 10, 201, 108, 190, 64, 249, 3, 62, 165, 141, 70, 188, 56, 172, 143, 190, 142, 243, 42, 62, 249, 61, 122, 62, 221, 243, 13, 62, 42, 5, 207, 61, 111, 206, 137, 61, 70, 158, 139, 62, 254, 113, 22, 62, 241, 53, 124, 190, 64, 173, 10, 62, 80, 202, 7, 62, 140, 151, 36, 190, 207, 253, 107, 190, 161, 128, 36, 62, 193, 212, 132, 189, 224, 237, 139, 62, 154, 10, 30, 62, 74, 83, 253, 189, 198, 31, 129, 190, 44, 160, 229, 61, 166, 188, 69, 190, 2, 250, 80, 62, 19, 202, 253, 61, 186, 28, 117, 189, 71, 146, 140, 62, 74, 180, 253, 61, 24, 210, 134, 190, 200, 34, 200, 189, 39, 158, 227, 61, 247, 188, 204, 61, 66, 104, 134, 190, 39, 193, 29, 62, 96, 219, 87, 62, 232, 31, 62, 190, 216, 135, 6, 62, 21, 82, 93, 190, 102, 20, 56, 62, 30, 79, 183, 61, 248, 158, 130, 62, 32, 155, 240, 61, 221, 143, 8, 62, 164, 204, 117, 61, 199, 140, 140, 62, 52, 25, 184, 61, 160, 228, 35, 61, 192, 86, 142, 62, 137, 138, 191, 61, 216, 122, 109, 62, 106, 149, 34, 190, 122, 89, 8, 62, 192, 252, 85, 190, 114, 49, 64, 62, 15, 71, 15, 62, 111, 172, 114, 190, 254, 139, 26, 62, 242, 142, 248, 61, 246, 26, 44, 61, 190, 47, 142, 190, 247, 17, 7, 62, 6, 190, 135, 190, 72, 224, 189, 189, 170, 161, 240, 61, 146, 9, 152, 61, 148, 186, 138, 62, 3, 39, 252, 61, 124, 2, 136, 189, 4, 187, 139, 190, 205, 177, 255, 61, 10, 159, 131, 62, 26, 27, 232, 189, 220, 215, 223, 61, 108, 122, 10, 62, 121, 84, 124, 62, 238, 135, 255, 61, 1, 83, 68, 189, 176, 188, 141, 190, 40, 141, 11, 62, 48, 167, 236, 61, 12, 22, 131, 190, 148, 227, 11, 62, 132, 198, 44, 61, 142, 44, 142, 62, 42, 80, 212, 61, 218, 132, 12, 189, 202, 197, 142, 62, 36, 173, 39, 62, 116, 124, 19, 190, 169, 234, 118, 190, 238, 106, 191, 61, 207, 208, 46, 190, 28, 106, 100, 190, 120, 255, 38, 62, 97, 178, 106, 190, 193, 86, 38, 62, 180, 62, 13, 62, 20, 153, 137, 190, 192, 55, 169, 61, 38, 58, 202, 61, 59, 231, 138, 62, 41, 63, 149, 189, 81, 223, 6, 62, 49, 154, 2, 190, 102, 50, 128, 62, 117, 21, 21, 62, 210, 90, 139, 62, 191, 5, 142, 61, 254, 15, 37, 62, 227, 144, 143, 62, 80, 42, 134, 188, 145, 189, 27, 62, 36, 217, 136, 190, 127, 144, 177, 189, 202, 151, 231, 61, 84, 99, 71, 62, 246, 123, 79, 62, 46, 183, 188, 61, 211, 31, 143, 62, 53, 35, 243, 188, 186, 116, 213, 61, 52, 174, 121, 190, 26, 227, 14, 190, 100, 54, 183, 61, 133, 78, 199, 61, 40, 229, 134, 190, 173, 70, 198, 61, 146, 94, 99, 189, 56, 32, 141, 62, 192, 177, 220, 61, 114, 197, 212, 189, 136, 175, 133, 190, 74, 1, 238, 61, 9, 16, 174, 61, 169, 41, 137, 190, 204, 174, 251, 61, 101, 38, 40, 190, 194, 90, 105, 190, 216, 243, 222, 61, 192, 23, 83, 61, 135, 118, 141, 190, 255, 34, 13, 62, 97, 74, 143, 190, 120, 34, 224, 60, 0, 74, 3, 62, 84, 71, 194, 60, 197, 97, 143, 62, 238, 88, 11, 62, 93, 34, 3, 62, 90, 18, 128, 190, 78, 52, 229, 61, 122, 127, 120, 190, 219, 218, 16, 190, 229, 158, 9, 62, 86, 187, 147, 189, 119, 255, 138, 62, 47, 129, 40, 62, 233, 244, 238, 188, 190, 41, 143, 190, 189, 45, 37, 62, 133, 54, 137, 62, 239, 128, 173, 61, 122, 243, 25, 62, 31, 172, 112, 62, 126, 224, 29, 190, 213, 233, 11, 62, 42, 81, 61, 189, 249, 221, 141, 62, 186, 20, 29, 62, 12, 99, 142, 190, 111, 78, 33, 61, 247, 244, 230, 61, 235, 64, 129, 189, 30, 39, 140, 62, 188, 152, 0, 62, 159, 181, 107, 190, 244, 248, 36, 62, 190, 163, 36, 62, 187, 20, 74, 190, 218, 12, 77, 190, 39, 3, 248, 61, 114, 136, 60, 190, 167, 75, 89, 62, 48, 98, 199, 61, 180, 50, 144, 61, 1, 56, 139, 190, 38, 159, 29, 62, 3, 115, 106, 62, 66, 172, 38, 62, 52, 218, 195, 61, 34, 48, 98, 62, 230, 209, 49, 190, 158, 81, 5, 62, 178, 213, 186, 61, 245, 3, 136, 190, 60, 65, 221, 61, 220, 69, 131, 60, 38, 147, 143, 62, 98, 107, 35, 62, 22, 143, 43, 62, 254, 211, 102, 190, 222, 234, 7, 62, 120, 107, 72, 61, 59, 169, 141, 190, 27, 169, 246, 61, 179, 37, 10, 60, 227, 195, 143, 62, 4, 12, 229, 61, 143, 225, 67, 190, 104, 167, 82, 62, 32, 128, 38, 62, 140, 64, 124, 62, 155, 155, 10, 190, 52, 21, 214, 61, 54, 253, 91, 61, 68, 76, 141, 62, 10, 145, 251, 61, 185, 56, 30, 62, 24, 119, 112, 190, 118, 171, 211, 61, 214, 235, 47, 61, 156, 29, 142, 62, 214, 71, 18, 62, 223, 174, 137, 62, 34, 69, 168, 61, 245, 2, 229, 61, 250, 137, 24, 188, 64, 190, 143, 190, 139, 142, 34, 62, 0, 122, 131, 189, 140, 3, 140, 190, 39, 232, 185, 61, 88, 216, 190, 61, 188, 167, 135, 62, 208, 138, 236, 61, 252, 110, 95, 189, 231, 59, 141, 62, 12, 224, 209, 61, 92, 254, 65, 62, 40, 92, 84, 190, 217, 234, 234, 61, 161, 244, 91, 62, 7, 151, 57, 190, 6, 113, 14, 62, 20, 109, 142, 62, 254, 49, 31, 189, 106, 51, 188, 61, 60, 181, 133, 190, 6, 134, 212, 189, 17, 23, 38, 62, 106, 233, 83, 62, 78, 125, 66, 62, 222, 105, 238, 61, 3, 67, 8, 62, 117, 169, 125, 190, 81, 33, 252, 61, 140, 229, 118, 62, 252, 132, 19, 190, 90, 138, 185, 61, 102, 233, 241, 187, 160, 202, 143, 190, 51, 53, 15, 62, 197, 3, 87, 59, 245, 228, 143, 62, 178, 157, 230, 61, 136, 67, 143, 62, 64, 26, 228, 188, 215, 169, 213, 61, 113, 79, 89, 190, 65, 132, 60, 190, 220, 188, 25, 62, 205, 33, 151, 61, 16, 201, 138, 190, 97, 40, 210, 61, 55, 82, 130, 190, 78, 39, 243, 189, 54, 247, 38, 62, 126, 244, 129, 190, 187, 67, 246, 189, 36, 230, 251, 61, 12, 172, 68, 62, 102, 240, 81, 190, 248, 184, 204, 61, 60, 232, 126, 62, 178, 194, 5, 190, 29, 231, 226, 61, 192, 95, 127, 190, 206, 196, 4, 62, 48, 171, 19, 62, 216, 209, 143, 190, 43, 29, 205, 59, 58, 185, 6, 62, 33, 108, 95, 190, 58, 141, 53, 62, 6, 75, 208, 61, 150, 127, 118, 190, 164, 46, 20, 62, 245, 10, 252, 61, 134, 5, 20, 61, 38, 162, 142, 62, 130, 151, 211, 61, 152, 113, 194, 188, 164, 97, 143, 62, 189, 85, 235, 61, 119, 168, 142, 190, 140, 177, 18, 61, 78, 237, 230, 61, 138, 53, 99, 189, 128, 33, 141, 190, 74, 251, 3, 62, 221, 205, 142, 190, 42, 210, 10, 61, 214, 148, 236, 61, 138, 169, 232, 61, 70, 142, 131, 190, 64, 90, 204, 61, 244, 136, 132, 190, 105, 87, 224, 189, 242, 123, 222, 61, 63, 48, 199, 188, 236, 93, 143, 190, 87, 107, 219, 61, 228, 214, 93, 190, 119, 129, 55, 62, 254, 139, 33, 62, 252, 224, 62, 188, 58, 175, 143, 62, 90, 230, 18, 62, 28, 48, 6, 190, 184, 180, 126, 190, 231, 198, 188, 61, 208, 185, 143, 190, 250, 225, 35, 188, 152, 92, 250, 61, 58, 218, 121, 190, 217, 153, 14, 62, 32, 78, 10, 62, 214, 222, 127, 62, 208, 182, 3, 62, 49, 121, 33, 62, 94, 158, 142, 190, 194, 209, 20, 61, 202, 34, 0, 62, 218, 206, 243, 61, 127, 62, 130, 190, 10, 197, 22, 62, 7, 0, 141, 190, 247, 100, 103, 189, 30, 191, 253, 61, 89, 227, 111, 62, 150, 46, 31, 190, 184, 43, 33, 62, 94, 107, 48, 62, 216, 57, 99, 190, 115, 107, 33, 62, 69, 115, 252, 61, 35, 58, 129, 62, 118, 65, 251, 61, 139, 204, 93, 62, 232, 140, 55, 190, 95, 183, 6, 62, 149, 146, 102, 190, 92, 231, 43, 190, 203, 111, 22, 62, 20, 95, 137, 62, 104, 189, 171, 61, 62, 71, 226, 61, 102, 89, 136, 190, 138, 30, 183, 61, 160, 85, 34, 62, 229, 192, 234, 187, 7, 204, 143, 62, 196, 100, 5, 62, 225, 236, 113, 62, 189, 202, 27, 190, 122, 223, 0, 62, 217, 116, 93, 190, 241, 237, 55, 190, 159, 164, 19, 62, 26, 147, 120, 190, 51, 186, 16, 62, 53, 37, 17, 62, 168, 187, 140, 190, 200, 240, 111, 189, 188, 128, 231, 61, 132, 167, 75, 62, 22, 160, 75, 62, 170, 52, 0, 62, 7, 226, 119, 62, 218, 224, 17, 62, 47, 9, 6, 62, 201, 41, 168, 189, 82, 177, 137, 190, 138, 186, 236, 61, 63, 49, 251, 188, 174, 12, 143, 62, 130, 171, 7, 62, 170, 190, 137, 190, 72, 149, 167, 61, 106, 252, 191, 61, 82, 91, 229, 59, 21, 205, 143, 62, 196, 122, 21, 62, 128, 8, 132, 62, 238, 154, 228, 61, 22, 85, 16, 62, 191, 38, 68, 62, 225, 104, 82, 62, 197, 215, 9, 62, 67, 234, 1, 190, 207, 91, 128, 190, 3, 62, 13, 62, 70, 129, 120, 61, 34, 119, 140, 62, 76, 142, 5, 62, 242, 90, 57, 190, 239, 42, 92, 62, 23, 104, 203, 61, 84, 157, 143, 62, 242, 147, 108, 60, 6, 177, 31, 62, 188, 161, 111, 62, 197, 155, 31, 62, 188, 175, 3, 62, 59, 164, 98, 62, 62, 53, 49, 62, 92, 114, 238, 61, 101, 130, 195, 61, 123, 60, 135, 190, 251, 75, 189, 61, 181, 53, 35, 62, 11, 4, 109, 190, 54, 141, 25, 62, 150, 112, 38, 190, 59, 159, 106, 190, 129, 192, 27, 62, 141, 74, 142, 190, 180, 118, 38, 189, 15, 251, 27, 62, 182, 92, 19, 190, 188, 253, 118, 62, 36, 119, 15, 62, 97, 161, 68, 61, 60, 187, 141, 62, 4, 39, 189, 61, 96, 150, 83, 190, 46, 217, 66, 62, 103, 103, 223, 61, 94, 173, 144, 189, 87, 48, 139, 62, 210, 249, 1, 62, 92, 234, 79, 190, 49, 233, 70, 190, 220, 92, 18, 62, 162, 144, 143, 62, 231, 125, 134, 188, 15, 7, 33, 62, 44, 67, 76, 62, 222, 243, 74, 62, 109, 11, 229, 61, 58, 117, 111, 189, 130, 191, 140, 62, 206, 100, 41, 62, 139, 229, 143, 190, 164, 24, 81, 59, 121, 184, 216, 61, 236, 89, 130, 62, 208, 229, 242, 189, 103, 197, 17, 62, 51, 195, 31, 190, 9, 138, 111, 62, 40, 141, 208, 61, 90, 162, 136, 190, 101, 242, 179, 61, 210, 235, 234, 61, 116, 79, 160, 61, 54, 54, 138, 190, 128, 231, 236, 61, 236, 129, 143, 62, 139, 66, 153, 60, 25, 238, 240, 61, 44, 117, 124, 61, 131, 87, 140, 190, 232, 26, 243, 61, 32, 42, 202, 189, 112, 163, 134, 62, 198, 168, 213, 61, 150, 217, 205, 61, 177, 78, 134, 62, 228, 221, 5, 62, 134, 86, 209, 61, 123, 254, 133, 62, 82, 117, 213, 61, 125, 66, 133, 62, 104, 131, 217, 61, 246, 231, 233, 61, 136, 189, 133, 62, 171, 41, 212, 61, 157, 45, 253, 61, 39, 201, 36, 189, 131, 82, 142, 190, 92, 92, 223, 61, 219, 36, 211, 189, 243, 212, 133, 190, 56, 1, 254, 61, 42, 65, 132, 190, 116, 185, 226, 189, 189, 8, 5, 62, 241, 105, 19, 62, 202, 245, 118, 62, 220, 26, 248, 61, 112, 99, 136, 190, 207, 174, 182, 61, 207, 155, 9, 62, 27, 93, 5, 61, 200, 231, 142, 62, 75, 131, 10, 62, 132, 88, 59, 190, 91, 94, 90, 190, 53, 20, 14, 62, 13, 106, 126, 190, 194, 206, 6, 190, 140, 202, 239, 61, 97, 17, 139, 190, 192, 156, 146, 189, 38, 52, 246, 61, 43, 245, 34, 190, 222, 51, 109, 190, 215, 229, 183, 61, 212, 227, 111, 62, 202, 45, 31, 190, 112, 7, 233, 61, 2, 90, 143, 190, 214, 49, 204, 60, 221, 42, 36, 62, 226, 161, 86, 62, 192, 122, 63, 190, 248, 232, 235, 61, 137, 229, 16, 189, 255, 176, 142, 62, 220, 9, 223, 61, 220, 51, 97, 190, 75, 38, 51, 62, 87, 244, 42, 62, 139, 217, 206, 61, 179, 55, 134, 190, 126, 250, 24, 62, 44, 111, 210, 61, 70, 229, 133, 190, 237, 156, 40, 62, 154, 79, 83, 190, 122, 39, 67, 62, 200, 109, 40, 62, 39, 224, 129, 62, 146, 240, 246, 189, 11, 22, 3, 62, 140, 88, 130, 190, 126, 241, 242, 189, 48, 212, 189, 61, 108, 108, 19, 190, 76, 244, 118, 62, 216, 126, 10, 62, 24, 79, 136, 190, 67, 145, 183, 189, 75, 125, 195, 61, 162, 235, 116, 62, 216, 206, 22, 190, 42, 253, 4, 62, 120, 93, 30, 189, 3, 113, 142, 62, 230, 88, 244, 61, 26, 104, 62, 59, 94, 231, 143, 62, 94, 41, 9, 62, 46, 134, 143, 190, 67, 211, 147, 188, 69, 149, 36, 62, 138, 76, 129, 190, 242, 214, 251, 189, 201, 234, 5, 62, 114, 134, 141, 62, 91, 190, 79, 189, 143, 98, 199, 61, 97, 24, 143, 190, 134, 69, 246, 60, 123, 52, 15, 62, 51, 82, 124, 189, 155, 88, 140, 190, 14, 40, 29, 62, 127, 12, 130, 62, 203, 119, 245, 61, 174, 117, 12, 62, 191, 41, 128, 61, 144, 56, 140, 190, 240, 32, 21, 62, 229, 75, 129, 190, 109, 220, 251, 61, 223, 146, 13, 62, 222, 186, 66, 190, 197, 177, 83, 62, 73, 77, 8, 62, 108, 135, 17, 62, 194, 23, 120, 62, 112, 38, 209, 61, 108, 198, 42, 190, 183, 104, 103, 190, 214, 213, 24, 62, 74, 171, 131, 61, 120, 0, 140, 190, 188, 214, 204, 61, 64, 214, 129, 62, 190, 68, 247, 189, 174, 118, 4, 62, 152, 4, 124, 189, 8, 91, 140, 190, 10, 167, 32, 62, 107, 242, 197, 189, 109, 4, 135, 62, 244, 164, 191, 61, 154, 14, 132, 190, 28, 103, 228, 189, 134, 234, 218, 61, 36, 186, 132, 62, 111, 181, 222, 61, 206, 244, 28, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), +"format": "RGBFloat", +"height": 1, +"mipmaps": false, +"width": 2048 +} + +[sub_resource type="ImageTexture" id="ImageTexture_olxhp"] +image = SubResource("Image_drdgq") + +[sub_resource type="Curve" id="Curve_khlq0"] +_data = [Vector2(0, 0.5195653), 0.0, 0.0, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0] +point_count = 2 + +[sub_resource type="CurveTexture" id="CurveTexture_c1xak"] +curve = SubResource("Curve_khlq0") + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_ehig0"] +emission_shape = 5 +emission_point_texture = SubResource("ImageTexture_olxhp") +emission_normal_texture = SubResource("ImageTexture_c82hk") +emission_point_count = 512 +direction = Vector3(0, 0, 0) +spread = 11.579 +initial_velocity_min = 0.5 +initial_velocity_max = 4.0 +gravity = Vector3(0, 0, 0) +scale_min = 0.0 +scale_max = 0.31 +scale_curve = SubResource("CurveTexture_c1xak") +scale_over_velocity_min = 32.45 +scale_over_velocity_max = 69.25 +color = Color(2.1043189, 2.1043189, 2.1043189, 1) +color_ramp = SubResource("GradientTexture1D_30cme") +color_initial_ramp = SubResource("GradientTexture1D_qf8ke") +alpha_curve = SubResource("CurveTexture_725d0") +turbulence_noise_strength = 18.82 +turbulence_noise_scale = 4.192 +turbulence_noise_speed_random = 1.95 + +[sub_resource type="Curve" id="Curve_j8gjs"] +_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.14418605, 0.5139131), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0] +point_count = 3 + +[sub_resource type="CurveTexture" id="CurveTexture_ghf00"] +curve = SubResource("Curve_j8gjs") + +[sub_resource type="Gradient" id="Gradient_mfvyt"] +colors = PackedColorArray(0.8462217, 0.1448514, 0.1933779, 1, 0.8462217, 0.5682457, 0.311807, 1) + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_sm8dq"] +gradient = SubResource("Gradient_mfvyt") + +[sub_resource type="Curve" id="Curve_oihxu"] +_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.1511628, 0.5252175), 1.7078729, 1.7078729, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0] +point_count = 3 + +[sub_resource type="CurveTexture" id="CurveTexture_gosrm"] +curve = SubResource("Curve_oihxu") + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_xu2ok"] +emission_shape = 5 +emission_point_texture = SubResource("ImageTexture_ymtsl") +emission_normal_texture = SubResource("ImageTexture_feye4") +emission_point_count = 512 +direction = Vector3(0, 0, 0) +spread = 117.04 +initial_velocity_min = 0.19999999 +initial_velocity_max = 2.04 +gravity = Vector3(0, 0, 0) +scale_min = 0.17 +scale_max = 1.0699999 +scale_curve = SubResource("CurveTexture_gosrm") +scale_over_velocity_min = 32.45 +scale_over_velocity_max = 69.25 +color_ramp = SubResource("GradientTexture1D_wyalx") +color_initial_ramp = SubResource("GradientTexture1D_sm8dq") +alpha_curve = SubResource("CurveTexture_ghf00") +turbulence_noise_strength = 18.82 +turbulence_noise_scale = 4.192 +turbulence_noise_speed_random = 1.95 + +[sub_resource type="QuadMesh" id="QuadMesh_ycrwu"] + +[sub_resource type="Gradient" id="Gradient_725d0"] +offsets = PackedFloat32Array(0.16612378, 0.5081433, 0.71986973, 1) +colors = PackedColorArray(1, 0.6465715, 0.07910311, 1, 1, 0.37649995, 0.13, 0.34509805, 1, 0.06666666, 0, 0.105882354, 1, 0, 0.46885586, 0) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_g6u3h"] +gradient = SubResource("Gradient_725d0") +fill = 1 +fill_from = Vector2(0.5, 0.5) +fill_to = Vector2(1, 0.5) + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ng42h"] +transparency = 1 +blend_mode = 1 +cull_mode = 2 +shading_mode = 0 +albedo_color = Color(1, 1, 1, 0.45490196) +albedo_texture = SubResource("GradientTexture2D_g6u3h") +billboard_mode = 3 +billboard_keep_scale = true +particles_anim_h_frames = 1 +particles_anim_v_frames = 1 +particles_anim_loop = false + +[sub_resource type="Resource" id="Resource_r7gxw"] +script = ExtResource("54_khlq0") +value = 1.0 +metadata/_custom_type_script = "uid://cfvigaosponfn" + +[sub_resource type="Resource" id="Resource_k5c1h"] +script = ExtResource("55_c1xak") +amountRatio = SubResource("Resource_r7gxw") +metadata/_custom_type_script = "uid://bvrtvo7tdhft6" + +[sub_resource type="Curve" id="Curve_lds7d"] +_data = [Vector2(0, 0), 0.0, 1.0, 0, 1, Vector2(1, 1), 1.0, 0.0, 1, 0] +point_count = 2 + +[sub_resource type="Resource" id="Resource_ncwc7"] +script = ExtResource("56_ehig0") +duration = 0.1 +curve = SubResource("Curve_lds7d") + +[sub_resource type="Resource" id="Resource_vlmmu"] +script = ExtResource("54_khlq0") +metadata/_custom_type_script = "uid://cfvigaosponfn" + +[sub_resource type="Resource" id="Resource_jd3k0"] +script = ExtResource("55_c1xak") +amountRatio = SubResource("Resource_vlmmu") +metadata/_custom_type_script = "uid://bvrtvo7tdhft6" + +[sub_resource type="BoxMesh" id="BoxMesh_48olo"] +size = Vector3(10, 10, 200) + [sub_resource type="Resource" id="Resource_30cme"] script = ExtResource("2_j8gjs") writeAlpha = true @@ -424,161 +1069,328 @@ specular = SubResource("Resource_drdgq") emission = SubResource("Resource_c82hk") layers = [SubResource("Resource_ehig0")] -[sub_resource type="FastNoiseLite" id="FastNoiseLite_ghf00"] -frequency = 0.0166 - -[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_mfvyt"] -noise = SubResource("FastNoiseLite_ghf00") -seamless = true - -[sub_resource type="ShaderMaterial" id="ShaderMaterial_sm8dq"] -render_priority = -1 -shader = ExtResource("26_j8gjs") -shader_parameter/UV_scale = Vector2(1, 1) -shader_parameter/UV_offset = Vector2(0, 0.0265) -shader_parameter/UV_scrolling = Vector2(0.154, 0.404) -shader_parameter/objectNormalOffset = 0.8205 -shader_parameter/objectNormalOffsetTexture = SubResource("NoiseTexture2D_mfvyt") -shader_parameter/axisMaskAxisMask_Min = 5.658 -shader_parameter/axisMaskAxisMask_Max = -5.0 -shader_parameter/axisMaskAxisMask_AxisRotation = Vector3(0, 0, 0) -shader_parameter/albedo = Color(0.21208745, 0, 0.22166497, 0.25490198) -shader_parameter/alpha = 1.0 -shader_parameter/normalStrength = 1.0 -shader_parameter/roughness = 1.0 -shader_parameter/roughnessOffset = 0.0 -shader_parameter/metallic = 0.0 -shader_parameter/metallicOffset = 0.0 -shader_parameter/specular = 0.0 -shader_parameter/emission = Color(1, 1, 1, 1) -shader_parameter/emissionIntensity = 1.0 - -[sub_resource type="CapsuleMesh" id="CapsuleMesh_xu2ok"] -material = SubResource("ShaderMaterial_sm8dq") -radius = 0.112 -height = 11.9 - -[sub_resource type="Gradient" id="Gradient_oslmd"] -offsets = PackedFloat32Array(0.10144927, 0.8309179) - -[sub_resource type="FastNoiseLite" id="FastNoiseLite_xd01g"] -frequency = 0.007 -fractal_gain = 1.096 - -[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_r7gxw"] -noise = SubResource("FastNoiseLite_xd01g") -color_ramp = SubResource("Gradient_oslmd") - -[sub_resource type="FastNoiseLite" id="FastNoiseLite_k5c1h"] -frequency = 0.0166 - -[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_lds7d"] -noise = SubResource("FastNoiseLite_k5c1h") -seamless = true - -[sub_resource type="ShaderMaterial" id="ShaderMaterial_ncwc7"] -render_priority = 0 -shader = ExtResource("25_qf8ke") -shader_parameter/UV_scale = Vector2(1, 1) -shader_parameter/UV_offset = Vector2(0, 0) -shader_parameter/UV_scrolling = Vector2(0.0505, 0.39) -shader_parameter/objectNormalOffset = 0.502 -shader_parameter/objectNormalOffsetTexture = SubResource("NoiseTexture2D_lds7d") -shader_parameter/axisMaskAxisMask_Min = 5.658 -shader_parameter/axisMaskAxisMask_Max = -50.0 -shader_parameter/axisMaskAxisMask_AxisRotation = Vector3(0, 0, 0) -shader_parameter/albedo = Color(1.8247963, 0.47775745, 0.3280865, 1) -shader_parameter/alpha = 1.0 -shader_parameter/alphaTexture = SubResource("NoiseTexture2D_r7gxw") -shader_parameter/normalStrength = 1.0 -shader_parameter/roughness = 1.0 -shader_parameter/roughnessOffset = 0.0 -shader_parameter/metallic = 0.23600001121 -shader_parameter/metallicOffset = 0.0 -shader_parameter/specular = 0.0 -shader_parameter/emission = Color(1, 1, 1, 1) -shader_parameter/emissionIntensity = 1.0 - -[sub_resource type="CapsuleMesh" id="CapsuleMesh_vlmmu"] -material = SubResource("ShaderMaterial_ncwc7") -radius = 0.112 -height = 11.9 - -[sub_resource type="Gradient" id="Gradient_jd3k0"] -offsets = PackedFloat32Array(0.34057972, 0.7512077) - -[sub_resource type="FastNoiseLite" id="FastNoiseLite_0nnaw"] -frequency = 0.0159 - -[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_yhae4"] -noise = SubResource("FastNoiseLite_0nnaw") -color_ramp = SubResource("Gradient_jd3k0") - -[sub_resource type="FastNoiseLite" id="FastNoiseLite_4r6s4"] -frequency = 0.0074 - -[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_obi34"] -noise = SubResource("FastNoiseLite_4r6s4") -seamless = true - -[sub_resource type="ShaderMaterial" id="ShaderMaterial_f6h0a"] -render_priority = 1 -shader = ExtResource("25_qf8ke") -shader_parameter/UV_scale = Vector2(1, 1) -shader_parameter/UV_offset = Vector2(0.1655, 0.0735) -shader_parameter/UV_scrolling = Vector2(0.116, 0.205) -shader_parameter/objectNormalOffset = 0.243 -shader_parameter/objectNormalOffsetTexture = SubResource("NoiseTexture2D_obi34") -shader_parameter/axisMaskAxisMask_Min = 5.5055 -shader_parameter/axisMaskAxisMask_Max = -100.0 -shader_parameter/axisMaskAxisMask_AxisRotation = Vector3(0, 0, 0) -shader_parameter/albedo = Color(4.2636375, 2.6044075, 1.1525812, 1) -shader_parameter/alpha = 1.0 -shader_parameter/alphaTexture = SubResource("NoiseTexture2D_yhae4") -shader_parameter/normalStrength = 1.0 -shader_parameter/roughness = 1.0 -shader_parameter/roughnessOffset = 0.0 -shader_parameter/metallic = 0.290000013775 -shader_parameter/metallicOffset = 0.0 -shader_parameter/specular = 0.0 -shader_parameter/emission = Color(1, 1, 1, 1) -shader_parameter/emissionIntensity = 1.0 - -[sub_resource type="CapsuleMesh" id="CapsuleMesh_nd3fm"] -material = SubResource("ShaderMaterial_f6h0a") -radius = 0.112 -height = 11.9 - -[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_0l1rm"] -radius = 0.163 -height = 11.230375 +[sub_resource type="SphereShape3D" id="SphereShape3D_khlq0"] +radius = 230.0 [node name="Eye" type="Node3D"] + +[node name="Eye" type="Node" parent="." node_paths=PackedStringArray("transform", "beamScale", "onHasCollider", "onNoCollider", "playerSight", "multiRayCaster", "health", "collider")] +script = ExtResource("1_mpdbb") +transform = NodePath("../AnimatableBody3D") +beamScale = NodePath("../AnimatableBody3D/Graphics/Beam") +onHasCollider = NodePath("../AnimatableBody3D/Graphics/Beam/On Has Collider") +onNoCollider = NodePath("../AnimatableBody3D/Graphics/Beam/On No Collider") +playerSight = NodePath("../PlayerSight") +toPlayerRotationSmoothing = SubResource("Resource_xd01g") +multiRayCaster = NodePath("../AnimatableBody3D/MultiRayCaster") +health = NodePath("../Health") +lengthSmoothing = SubResource("Resource_oslmd") +collider = NodePath("../AnimatableBody3D/Graphics/Beam/Beam Collider") +debugLength = 10.0 +wobbleRaycast = 0.3 +metadata/_custom_type_script = "uid://bxyvrb0kijl80" + +[node name="Health" type="Node" parent="." node_paths=PackedStringArray("onDamage", "onDeath")] +script = ExtResource("38_lya8u") +healthData = ExtResource("39_wi4kk") +currentHealth = 25 +onDamage = NodePath("../On Hit") +onDeath = NodePath("../Once OnDeath") +metadata/_custom_type_script = "uid://cbbesrlha8kor" + +[node name="PlayerSight" type="Node" parent="."] +script = ExtResource("5_sbsrj") +metadata/_custom_type_script = "uid://ck22blkf6u3vx" + +[node name="OnReady" type="Node" parent="."] +script = ExtResource("1_ycrwu") +metadata/_custom_type_script = "uid://dyf6ee3ov3ran" + +[node name="Show All" type="Node" parent="OnReady" node_paths=PackedStringArray("enable")] +script = ExtResource("7_mlins") +enable = [NodePath("../../AnimatableBody3D/Graphics"), NodePath("../../AnimatableBody3D/Collidable"), NodePath("../../AnimatableBody3D/CollisionShape3D")] +metadata/_custom_type_script = "uid://bex6umukt0r8d" + +[node name="On Hit" type="Node" parent="."] +script = ExtResource("3_7oqba") +metadata/_custom_type_script = "uid://ceaglilesxsi4" + +[node name="Parallel" type="Node" parent="On Hit"] +script = ExtResource("4_ymtsl") +metadata/_custom_type_script = "uid://dy65lu5p2yf3j" + +[node name="Play Short Hit" type="Node" parent="On Hit/Parallel" node_paths=PackedStringArray("player")] +script = ExtResource("12_ng42h") +player = NodePath("../../../AnimatableBody3D/Short Hit Impact") +metadata/_custom_type_script = "uid://ddgf2mfdmqywc" + +[node name="Flash" type="Node" parent="On Hit/Parallel" node_paths=PackedStringArray("targets")] +script = ExtResource("5_lya8u") +flashEffect = ExtResource("6_wi4kk") +targets = [NodePath("../../../AnimatableBody3D/Graphics/Body"), NodePath("../../../AnimatableBody3D/Graphics/Eyeball Ring")] +metadata/_custom_type_script = "uid://dnwqkymbre3vb" + +[node name="Shake" type="Node" parent="On Hit/Parallel" node_paths=PackedStringArray("targets")] +script = ExtResource("7_k5rj5") +shakeEffect = ExtResource("8_5lj55") +targets = [NodePath("../../../AnimatableBody3D/Graphics")] +metadata/_custom_type_script = "uid://bnhnintao4qu0" + +[node name="Once OnDeath" type="Node" parent="." node_paths=PackedStringArray("action")] +script = ExtResource("11_qf8ke") +action = NodePath("OnDeath") +metadata/_custom_type_script = "uid://crm7o7w0gumhn" + +[node name="OnDeath" type="Node" parent="Once OnDeath"] +script = ExtResource("3_7oqba") +metadata/_custom_type_script = "uid://ceaglilesxsi4" + +[node name="PlaySound" type="Node" parent="Once OnDeath/OnDeath" node_paths=PackedStringArray("player")] +script = ExtResource("12_ng42h") +player = NodePath("../../../AnimatableBody3D/Explosion Hit Impact") +metadata/_custom_type_script = "uid://ddgf2mfdmqywc" + +[node name="PlayParticles" type="Node" parent="Once OnDeath/OnDeath" node_paths=PackedStringArray("particles3D")] +script = ExtResource("8_ycrwu") +particles3D = NodePath("../../../Death Particles") +timeLine = ExtResource("9_725d0") +metadata/_custom_type_script = "uid://dnstanbmrqthf" + +[node name="Delay2" type="Node" parent="Once OnDeath/OnDeath"] +script = ExtResource("11_g6u3h") +duration = 0.1 +metadata/_custom_type_script = "uid://b2g7rycr0ouu4" + +[node name="SetNodeState" type="Node" parent="Once OnDeath/OnDeath" node_paths=PackedStringArray("disable")] +script = ExtResource("7_mlins") +disable = [NodePath("../../../AnimatableBody3D/Graphics/Beam"), NodePath("../../../AnimatableBody3D/Graphics"), NodePath("../../../AnimatableBody3D/Collidable"), NodePath("../../../AnimatableBody3D/CollisionShape3D")] +metadata/_custom_type_script = "uid://bex6umukt0r8d" + +[node name="PlayParticles2" type="Node" parent="Once OnDeath/OnDeath" node_paths=PackedStringArray("particles3D")] +script = ExtResource("8_ycrwu") +particles3D = NodePath("../../../Death Particles Spark") +timeLine = ExtResource("9_725d0") +metadata/_custom_type_script = "uid://dnstanbmrqthf" + +[node name="Delay" type="Node" parent="Once OnDeath/OnDeath"] +script = ExtResource("11_g6u3h") +duration = 1.5 +metadata/_custom_type_script = "uid://b2g7rycr0ouu4" + +[node name="RemoveNode" type="Node" parent="Once OnDeath/OnDeath" node_paths=PackedStringArray("target")] +script = ExtResource("9_k5rj5") +target = NodePath("../../..") +metadata/_custom_type_script = "uid://dq5kae8x62gre" + +[node name="Death Particles" type="GPUParticles3D" parent="."] +transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0.0015469075) +material_override = SubResource("StandardMaterial3D_qf8ke") +emitting = false +amount = 100 +lifetime = 0.7 +one_shot = true +explosiveness = 1.0 +randomness = 1.0 +fixed_fps = 0 +interpolate = false +fract_delta = false +local_coords = true +process_material = SubResource("ParticleProcessMaterial_c1xak") +draw_pass_1 = SubResource("CapsuleMesh_ehig0") + +[node name="Death Particles Spark" type="GPUParticles3D" parent="."] transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0) +material_override = SubResource("StandardMaterial3D_mfvyt") +emitting = false +amount = 50 +lifetime = 0.5 +one_shot = true +explosiveness = 0.53 +randomness = 1.0 +fixed_fps = 0 +interpolate = false +fract_delta = false +process_material = SubResource("ParticleProcessMaterial_lya8u") +draw_pass_1 = SubResource("QuadMesh_wi4kk") -[node name="Body" type="MeshInstance3D" parent="."] -transform = Transform3D(0.85489887, 0.06793073, -0.505765, 0.5184991, -0.078397766, 0.8373004, 0.01751926, -0.994605, -0.100541964, -0.018339759, 0.02467431, 0.028014192) +[node name="AnimatableBody3D" type="AnimatableBody3D" parent="."] +sync_to_physics = false + +[node name="CollisionShape3D" type="CollisionShape3D" parent="AnimatableBody3D"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 6.7583637) +shape = SubResource("SphereShape3D_j8gjs") + +[node name="Collidable" type="Node3D" parent="AnimatableBody3D" node_paths=PackedStringArray("onEntered")] +script = ExtResource("1_t88uc") +collisionTypes = [ExtResource("2_feye4")] +onEntered = NodePath("../On Collision/Damagable") +metadata/_custom_type_script = "uid://dbgwebayabwd5" + +[node name="On Collision" type="Node" parent="AnimatableBody3D"] +script = ExtResource("8_725d0") +metadata/_custom_type_script = "uid://b4yjsis2fh64c" + +[node name="Damagable" type="Node" parent="AnimatableBody3D/On Collision" node_paths=PackedStringArray("collidable", "health")] +script = ExtResource("9_ymtsl") +damagableData = SubResource("Resource_wi4kk") +collidable = NodePath("../../Collidable") +health = NodePath("../../../Health") +metadata/_custom_type_script = "uid://dn1jkvx1f4y5r" + +[node name="Explosion Hit Impact" type="AudioStreamPlayer3D" parent="AnimatableBody3D"] +transform = Transform3D(0.05, 0, 0, 0, 0.05, 0, 0, 0, 0.05, 0, 0, 0) +stream = ExtResource("22_30cme") +volume_db = 3.0 +unit_size = 50.0 +attenuation_filter_cutoff_hz = 20500.0 +attenuation_filter_db = 0.0 + +[node name="Short Hit Impact" type="AudioStreamPlayer3D" parent="AnimatableBody3D"] +transform = Transform3D(0.05, 0, 0, 0, 0.05, 0, 0, 0, 0.05, 0, 0, 0) +stream = ExtResource("25_khlq0") +volume_db = 3.0 +unit_size = 50.0 +attenuation_filter_cutoff_hz = 20500.0 +attenuation_filter_db = 0.0 + +[node name="Graphics" type="Node3D" parent="AnimatableBody3D"] + +[node name="Body" type="MeshInstance3D" parent="AnimatableBody3D/Graphics"] +transform = Transform3D(17.712524, 1.4074467, -10.478871, 10.742706, -1.6243118, 17.347904, 0.36297897, -20.607075, -2.0831141, -0.24061243, 0.19676891, 7.204266) mesh = SubResource("SphereMesh_ue0no") +skeleton = NodePath("../../..") -[node name="Eyeball" type="MeshInstance3D" parent="."] -transform = Transform3D(0.7147661, 0.058523145, -0.0011959553, -0.058512043, 0.7147457, 0.0056451797, 0.0016527415, -0.005528641, 0.7171357, -0.009354973, 0.028731871, -0.2043596) +[node name="Eyeball" type="MeshInstance3D" parent="AnimatableBody3D/Graphics"] +transform = Transform3D(14.809134, 1.2125324, -0.024778822, -1.2123024, 14.808711, 0.11696165, 0.034242906, -0.114547096, 14.85823, -0.054457996, 0.28083694, 2.3897476) mesh = SubResource("SphereMesh_v8d1x") +skeleton = NodePath("../../..") -[node name="Eyeball Ring" type="MeshInstance3D" parent="."] -transform = Transform3D(0.40258938, 0.0006736636, 0.03296299, -0.03295668, -0.0031796098, 0.40257788, 0.00093090534, -0.40392405, -0.003113985, -0.018744273, 0.029613936, -0.27377757) +[node name="Eyeball Ring" type="MeshInstance3D" parent="AnimatableBody3D/Graphics"] +transform = Transform3D(8.34119, 0.013957538, 0.6829553, -0.68282455, -0.06587787, 8.340952, 0.01928729, -8.368843, -0.0645182, -0.2489935, 0.29911232, 0.95148706) mesh = SubResource("TorusMesh_0aqcu") +skeleton = NodePath("../../..") -[node name="Inner Iris" type="MeshInstance3D" parent="."] -transform = Transform3D(0.20958887, 0.017160583, -7.5683e-05, -0.017157326, 0.20958291, 0.00035725534, 0.0004846394, -0.0016211391, 0.04538401, 8.897782e-05, 0.003942692, -0.56209004) +[node name="Inner Iris" type="MeshInstance3D" parent="AnimatableBody3D/Graphics"] +transform = Transform3D(4.342441, 0.3555476, -0.0015680649, -0.3554801, 4.3423176, 0.007401921, 0.010041173, -0.033588145, 0.9403046, 0.14120984, -0.2327664, -5.0220165) mesh = SubResource("SphereMesh_mxqtn") +skeleton = NodePath("../../..") -[node name="Outer Iris" type="MeshInstance3D" parent="."] -transform = Transform3D(0.43651515, 0.03568947, 0.00053336023, -0.03573391, 0.43510565, 0.010900199, 0.0010093808, -0.03067168, 0.1552499, -6.377697e-06, 0.0046777725, -0.49473515) +[node name="Outer Iris" type="MeshInstance3D" parent="AnimatableBody3D/Graphics"] +transform = Transform3D(9.044093, 0.73944485, 0.011050613, -0.7403656, 9.01489, 0.22583963, 0.020913212, -0.635482, 3.2165997, 0.13923419, -0.21753639, -3.6265006) mesh = SubResource("SphereMesh_ypsyk") +skeleton = NodePath("../../..") -[node name="Iris Glass" type="MeshInstance3D" parent="."] -transform = Transform3D(0.43150875, 0.035310935, -6.3955786e-06, -0.035324097, 0.4310103, 0.004521489, 0.0009977699, -0.011964726, 0.16286051, 0.0039503933, 0.00404079, -0.5085375) +[node name="Iris Glass" type="MeshInstance3D" parent="AnimatableBody3D/Graphics"] +transform = Transform3D(8.940367, 0.7316021, -0.00013250906, -0.73187476, 8.930039, 0.09368007, 0.020672647, -0.2478954, 3.374283, 0.22121394, -0.23073395, -3.912469) mesh = SubResource("SphereMesh_1c5re") +skeleton = NodePath("../../..") + +[node name="Beam" type="Node3D" parent="AnimatableBody3D/Graphics"] + +[node name="Beam Collider" type="Node" parent="AnimatableBody3D/Graphics/Beam"] +script = ExtResource("26_ng42h") +collisionType = ExtResource("28_ghf00") +activateAlwaysOnInside = true +metadata/_custom_type_script = "uid://xnupkyu3042b" + +[node name="Damager" type="Node" parent="AnimatableBody3D/Graphics/Beam"] +script = ExtResource("29_3u2x4") +damagerData = ExtResource("30_3u2x4") +metadata/_custom_type_script = "uid://ba1bue0f8r50y" + +[node name="Scale Target" type="Node3D" parent="AnimatableBody3D/Graphics/Beam"] +transform = Transform3D(1, 1.7484555e-07, 0, -1.7484555e-07, 1, 0, 0, 0, 1, 0, 0, 0) + +[node name="Black Beam" type="MeshInstance3D" parent="AnimatableBody3D/Graphics/Beam/Scale Target"] +transform = Transform3D(10.434195, 0, 1.1368684e-13, -1.1368684e-13, -8.362276e-07, 10.434195, 0, -19.130657, -4.5609315e-07, 0, 0, -101.212715) +mesh = SubResource("CapsuleMesh_xu2ok") +skeleton = NodePath("") + +[node name="Outer Beam" type="MeshInstance3D" parent="AnimatableBody3D/Graphics/Beam/Scale Target"] +transform = Transform3D(10.434195, 0, 1.1368684e-13, -1.1368684e-13, -8.362276e-07, 10.434195, 0, -19.130657, -4.5609315e-07, 0, 0, -101.212715) +mesh = SubResource("CapsuleMesh_vlmmu") +skeleton = NodePath("") + +[node name="Inner Beam" type="MeshInstance3D" parent="AnimatableBody3D/Graphics/Beam/Scale Target"] +transform = Transform3D(7.1798806, -1.3552527e-20, -1.1368684e-13, 0, -8.362274e-07, 7.179879, 0, -19.130653, -3.1384246e-07, 0, 0, -101.212715) +mesh = SubResource("CapsuleMesh_nd3fm") +skeleton = NodePath("") + +[node name="GPUParticles3D4" type="GPUParticles3D" parent="AnimatableBody3D/Graphics/Beam/Scale Target"] +transform = Transform3D(20, -3.4969112e-06, 0, 3.4969112e-06, 20, 0, 0, 0, 20, 0, 0, -197.18517) +material_override = SubResource("StandardMaterial3D_2gtvq") +amount = 60 +lifetime = 0.3 +randomness = 1.0 +fixed_fps = 0 +interpolate = false +fract_delta = false +process_material = SubResource("ParticleProcessMaterial_44g62") +draw_pass_1 = SubResource("QuadMesh_wi4kk") + +[node name="GPUParticles3D2" type="GPUParticles3D" parent="AnimatableBody3D/Graphics/Beam"] +transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, -5.939996) +material_override = SubResource("StandardMaterial3D_mfvyt") +amount = 25 +lifetime = 0.15000000000000002 +randomness = 1.0 +fixed_fps = 0 +interpolate = false +fract_delta = false +process_material = SubResource("ParticleProcessMaterial_ehig0") +draw_pass_1 = SubResource("QuadMesh_wi4kk") + +[node name="GPUParticles3D3" type="GPUParticles3D" parent="AnimatableBody3D/Graphics/Beam"] +transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, -5.939996) +material_override = SubResource("StandardMaterial3D_2gtvq") +amount = 2 +lifetime = 0.3 +randomness = 1.0 +fixed_fps = 0 +interpolate = false +fract_delta = false +process_material = SubResource("ParticleProcessMaterial_xu2ok") +draw_pass_1 = SubResource("QuadMesh_wi4kk") + +[node name="MeshInstance3D2" type="MeshInstance3D" parent="AnimatableBody3D/Graphics/Beam"] +transform = Transform3D(56, 0, 0, 0, 56, 0, 0, 0, 56, 0, 0, 7.416855) +mesh = SubResource("QuadMesh_ycrwu") +surface_material_override/0 = SubResource("StandardMaterial3D_ng42h") + +[node name="On Has Collider" type="Node" parent="AnimatableBody3D/Graphics/Beam"] +script = ExtResource("8_725d0") +metadata/_custom_type_script = "uid://b4yjsis2fh64c" + +[node name="TweenParticles" type="Node" parent="AnimatableBody3D/Graphics/Beam/On Has Collider"] +script = ExtResource("53_hyv5a") +tweenParticlesData = SubResource("Resource_k5c1h") +tweenType = SubResource("Resource_ncwc7") +metadata/_custom_type_script = "uid://seym2gxpvk7j" + +[node name="On No Collider" type="Node" parent="AnimatableBody3D/Graphics/Beam"] +script = ExtResource("8_725d0") +metadata/_custom_type_script = "uid://b4yjsis2fh64c" + +[node name="TweenParticles2" type="Node" parent="AnimatableBody3D/Graphics/Beam/On No Collider"] +script = ExtResource("53_hyv5a") +tweenParticlesData = SubResource("Resource_jd3k0") +tweenType = SubResource("Resource_ncwc7") +metadata/_custom_type_script = "uid://seym2gxpvk7j" + +[node name="MeshInstance3D" type="MeshInstance3D" parent="AnimatableBody3D/Graphics"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -102.98399) +visible = false +mesh = SubResource("BoxMesh_48olo") + +[node name="MultiRayCaster" type="Node3D" parent="AnimatableBody3D"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.27704972, -0.029269421, -4.9363346) +script = ExtResource("53_o6mbh") +rayLength = 150.0 +maxHits = 1 +sortByPointerPriority = true +to = Vector3(0, 0, -200) +updateMode = 0 +metadata/_custom_type_script = "uid://bltwuqpvalu26" [node name="SpatialShaderGenerator" type="Node" parent="."] script = ExtResource("1_hyk7e") @@ -589,30 +1401,44 @@ shader = ExtResource("25_qf8ke") numVariants = 1 metadata/_custom_type_script = "uid://2gudnu1r4pjg" -[node name="Beam" type="Node3D" parent="."] +[node name="Player Interaction Area" type="Area3D" parent="."] -[node name="Black Beam" type="MeshInstance3D" parent="Beam"] -transform = Transform3D(0.49753824, 0, 0, 0, -4.3711392e-08, 0.49753824, 0, -1, -2.1748088e-08, 0, 0, -6.223662) -mesh = SubResource("CapsuleMesh_xu2ok") -skeleton = NodePath("") +[node name="CollisionShape3D" type="CollisionShape3D" parent="Player Interaction Area"] +shape = SubResource("SphereShape3D_khlq0") -[node name="Outer Beam" type="MeshInstance3D" parent="Beam"] -transform = Transform3D(0.49753824, 0, 0, 0, -4.3711392e-08, 0.49753824, 0, -1, -2.1748088e-08, 0, 0, -6.223662) -mesh = SubResource("CapsuleMesh_vlmmu") -skeleton = NodePath("") - -[node name="Inner Beam" type="MeshInstance3D" parent="Beam"] -transform = Transform3D(0.34236136, 0, 0, 0, -4.371138e-08, 0.3423613, 0, -0.9999998, -1.4965087e-08, 0, 0, -6.223662) -mesh = SubResource("CapsuleMesh_nd3fm") -skeleton = NodePath("") - -[node name="Area3D" type="Area3D" parent="Beam"] - -[node name="CollisionShape3D" type="CollisionShape3D" parent="Beam/Area3D"] -transform = Transform3D(1, 0, 0, 0, -4.3711392e-08, -1, 0, 1, -4.3711392e-08, 0, 2.6184352e-07, -5.9902816) -shape = SubResource("CapsuleShape3D_0l1rm") - -[node name="Collider" type="Node" parent="Beam/Area3D" node_paths=PackedStringArray("area")] +[node name="Collider" type="Node" parent="Player Interaction Area" node_paths=PackedStringArray("area", "onEntered", "onExit")] script = ExtResource("26_ng42h") area = NodePath("..") +collisionType = ExtResource("60_ean4y") +onEntered = NodePath("On Player Visible") +onExit = NodePath("On Player Invisible") metadata/_custom_type_script = "uid://xnupkyu3042b" + +[node name="On Player Visible" type="Node" parent="Player Interaction Area/Collider"] +script = ExtResource("8_725d0") +metadata/_custom_type_script = "uid://b4yjsis2fh64c" + +[node name="SetPlayerSight" type="Node" parent="Player Interaction Area/Collider/On Player Visible" node_paths=PackedStringArray("playerSight")] +script = ExtResource("61_1wfvh") +playerSight = NodePath("../../../../PlayerSight") +visible = true +metadata/_custom_type_script = "uid://bfdpav4wcws7s" + +[node name="SetNodeState" type="Node" parent="Player Interaction Area/Collider/On Player Visible" node_paths=PackedStringArray("enable")] +script = ExtResource("7_mlins") +enable = [NodePath("../../../../AnimatableBody3D/Graphics/Beam")] +metadata/_custom_type_script = "uid://bex6umukt0r8d" + +[node name="On Player Invisible" type="Node" parent="Player Interaction Area/Collider"] +script = ExtResource("8_725d0") +metadata/_custom_type_script = "uid://b4yjsis2fh64c" + +[node name="SetPlayerSight" type="Node" parent="Player Interaction Area/Collider/On Player Invisible" node_paths=PackedStringArray("playerSight")] +script = ExtResource("61_1wfvh") +playerSight = NodePath("../../../../PlayerSight") +metadata/_custom_type_script = "uid://bfdpav4wcws7s" + +[node name="SetNodeState2" type="Node" parent="Player Interaction Area/Collider/On Player Invisible" node_paths=PackedStringArray("disable")] +script = ExtResource("7_mlins") +disable = [NodePath("../../../../AnimatableBody3D/Graphics/Beam")] +metadata/_custom_type_script = "uid://bex6umukt0r8d" diff --git a/DomeFox/Game Objects/Eye/EyeBeam-Damage.tres b/DomeFox/Game Objects/Eye/EyeBeam-Damage.tres new file mode 100644 index 0000000..d31fbcb --- /dev/null +++ b/DomeFox/Game Objects/Eye/EyeBeam-Damage.tres @@ -0,0 +1,8 @@ +[gd_resource type="Resource" script_class="DamagerData" load_steps=2 format=3 uid="uid://dchdcdx53xjj4"] + +[ext_resource type="Script" uid="uid://bksl7m8vfm068" path="res://DomeFox/Game Objects/Health/DamagerData.cs" id="1_va70n"] + +[resource] +script = ExtResource("1_va70n") +numDamage = 5 +metadata/_custom_type_script = "uid://bksl7m8vfm068" diff --git a/DomeFox/Game Objects/Eye/GlowShader.gdshader b/DomeFox/Game Objects/Eye/GlowShader.gdshader new file mode 100644 index 0000000..a242a3f --- /dev/null +++ b/DomeFox/Game Objects/Eye/GlowShader.gdshader @@ -0,0 +1,29 @@ + +shader_type spatial; +render_mode blend_mix, depth_draw_opaque, cull_front, diffuse_burley, specular_schlick_ggx, unshaded; + +#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Transform.gdshaderinc" +#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Light.gdshaderinc" +#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Math.gdshaderinc" + +uniform vec4 albedo : source_color; +uniform sampler2D texture_albedo : source_color, filter_linear_mipmap, repeat_enable; +uniform float alpha = 1.0; +uniform float glowPower = 0.2; +uniform float glowScale = 1.2; + +void vertex() +{ + +} + +void fragment() +{ + float fresnel = clamp( fresnelNormalizedFromView( NORMAL ), 0, 1 ); + vec4 sampledAlbedo = texture( texture_albedo, UV ); + ALBEDO = albedo.rgb * sampledAlbedo.rgb; + //ALBEDO = vec3( centerDistance ); + ALPHA = 1.0 - clamp01( pow( fresnel, glowPower ) * glowScale ); + ALPHA *= alpha; + +} diff --git a/DomeFox/Game Objects/Eye/GlowShader.gdshader.uid b/DomeFox/Game Objects/Eye/GlowShader.gdshader.uid new file mode 100644 index 0000000..b7eddd5 --- /dev/null +++ b/DomeFox/Game Objects/Eye/GlowShader.gdshader.uid @@ -0,0 +1 @@ +uid://bes2cxci34jvx diff --git a/DomeFox/Game Objects/Eye/eye-explosion-sound-short.mp3 b/DomeFox/Game Objects/Eye/eye-explosion-sound-short.mp3 new file mode 100644 index 0000000..27c6213 Binary files /dev/null and b/DomeFox/Game Objects/Eye/eye-explosion-sound-short.mp3 differ diff --git a/DomeFox/Game Objects/Eye/eye-explosion-sound-short.mp3.import b/DomeFox/Game Objects/Eye/eye-explosion-sound-short.mp3.import new file mode 100644 index 0000000..6ef2fd9 --- /dev/null +++ b/DomeFox/Game Objects/Eye/eye-explosion-sound-short.mp3.import @@ -0,0 +1,19 @@ +[remap] + +importer="mp3" +type="AudioStreamMP3" +uid="uid://c5w4unmnxxwfi" +path="res://.godot/imported/eye-explosion-sound-short.mp3-911f0065fc40d390e31bfb3017dfd16c.mp3str" + +[deps] + +source_file="res://DomeFox/Game Objects/Eye/eye-explosion-sound-short.mp3" +dest_files=["res://.godot/imported/eye-explosion-sound-short.mp3-911f0065fc40d390e31bfb3017dfd16c.mp3str"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/DomeFox/Game Objects/Eye/eye-explosion-sound-short.ogg b/DomeFox/Game Objects/Eye/eye-explosion-sound-short.ogg new file mode 100644 index 0000000..d726416 Binary files /dev/null and b/DomeFox/Game Objects/Eye/eye-explosion-sound-short.ogg differ diff --git a/DomeFox/Game Objects/Eye/eye-explosion-sound-short.ogg.import b/DomeFox/Game Objects/Eye/eye-explosion-sound-short.ogg.import new file mode 100644 index 0000000..df2aaae --- /dev/null +++ b/DomeFox/Game Objects/Eye/eye-explosion-sound-short.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://d3ft8g1thg4n" +path="res://.godot/imported/eye-explosion-sound-short.ogg-6d45ebb7606a2418c41d1943e1bef9ea.oggvorbisstr" + +[deps] + +source_file="res://DomeFox/Game Objects/Eye/eye-explosion-sound-short.ogg" +dest_files=["res://.godot/imported/eye-explosion-sound-short.ogg-6d45ebb7606a2418c41d1943e1bef9ea.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/DomeFox/Game Objects/Eye/eye-explosion-sound-short.wav b/DomeFox/Game Objects/Eye/eye-explosion-sound-short.wav new file mode 100644 index 0000000..5d1b2ed Binary files /dev/null and b/DomeFox/Game Objects/Eye/eye-explosion-sound-short.wav differ diff --git a/DomeFox/Game Objects/Eye/eye-explosion-sound-short.wav.import b/DomeFox/Game Objects/Eye/eye-explosion-sound-short.wav.import new file mode 100644 index 0000000..5419af6 --- /dev/null +++ b/DomeFox/Game Objects/Eye/eye-explosion-sound-short.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://dtvoafygp83e7" +path="res://.godot/imported/eye-explosion-sound-short.wav-e9e7985951b4e67513afa2fe9b185ad3.sample" + +[deps] + +source_file="res://DomeFox/Game Objects/Eye/eye-explosion-sound-short.wav" +dest_files=["res://.godot/imported/eye-explosion-sound-short.wav-e9e7985951b4e67513afa2fe9b185ad3.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/DomeFox/Game Objects/Eye/eye-explosion-sound.mp3 b/DomeFox/Game Objects/Eye/eye-explosion-sound.mp3 new file mode 100644 index 0000000..2864018 Binary files /dev/null and b/DomeFox/Game Objects/Eye/eye-explosion-sound.mp3 differ diff --git a/DomeFox/Game Objects/Eye/eye-explosion-sound.mp3.import b/DomeFox/Game Objects/Eye/eye-explosion-sound.mp3.import new file mode 100644 index 0000000..dbfa4d1 --- /dev/null +++ b/DomeFox/Game Objects/Eye/eye-explosion-sound.mp3.import @@ -0,0 +1,19 @@ +[remap] + +importer="mp3" +type="AudioStreamMP3" +uid="uid://dg3uryx3mwg5f" +path="res://.godot/imported/eye-explosion-sound.mp3-80e2425b2a24664a6934045b0b27bf5c.mp3str" + +[deps] + +source_file="res://DomeFox/Game Objects/Eye/eye-explosion-sound.mp3" +dest_files=["res://.godot/imported/eye-explosion-sound.mp3-80e2425b2a24664a6934045b0b27bf5c.mp3str"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/DomeFox/Game Objects/Eye/eye-explosion-sound.ogg b/DomeFox/Game Objects/Eye/eye-explosion-sound.ogg new file mode 100644 index 0000000..d975bec Binary files /dev/null and b/DomeFox/Game Objects/Eye/eye-explosion-sound.ogg differ diff --git a/DomeFox/Game Objects/Eye/eye-explosion-sound.ogg.import b/DomeFox/Game Objects/Eye/eye-explosion-sound.ogg.import new file mode 100644 index 0000000..2fac161 --- /dev/null +++ b/DomeFox/Game Objects/Eye/eye-explosion-sound.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://bahgqyijj5tvx" +path="res://.godot/imported/eye-explosion-sound.ogg-386e875f7cbd83f8f1ba9d6d54049985.oggvorbisstr" + +[deps] + +source_file="res://DomeFox/Game Objects/Eye/eye-explosion-sound.ogg" +dest_files=["res://.godot/imported/eye-explosion-sound.ogg-386e875f7cbd83f8f1ba9d6d54049985.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/DomeFox/Game Objects/Eye/eye-explosion-sound.wav b/DomeFox/Game Objects/Eye/eye-explosion-sound.wav new file mode 100644 index 0000000..7aaf8d8 Binary files /dev/null and b/DomeFox/Game Objects/Eye/eye-explosion-sound.wav differ diff --git a/DomeFox/Game Objects/Eye/eye-explosion-sound.wav.import b/DomeFox/Game Objects/Eye/eye-explosion-sound.wav.import new file mode 100644 index 0000000..80ec142 --- /dev/null +++ b/DomeFox/Game Objects/Eye/eye-explosion-sound.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://cw6imhrmxg6n0" +path="res://.godot/imported/eye-explosion-sound.wav-6168d238d96172eb05b01b3e6ef2dc07.sample" + +[deps] + +source_file="res://DomeFox/Game Objects/Eye/eye-explosion-sound.wav" +dest_files=["res://.godot/imported/eye-explosion-sound.wav-6168d238d96172eb05b01b3e6ef2dc07.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/DomeFox/Game Objects/Eye/eye-explosion-sound.zip b/DomeFox/Game Objects/Eye/eye-explosion-sound.zip new file mode 100644 index 0000000..4d7434b Binary files /dev/null and b/DomeFox/Game Objects/Eye/eye-explosion-sound.zip differ diff --git a/DomeFox/Game Objects/Focusable/Focusable.cs b/DomeFox/Game Objects/Focusable/Focusable.cs new file mode 100644 index 0000000..c2d3318 --- /dev/null +++ b/DomeFox/Game Objects/Focusable/Focusable.cs @@ -0,0 +1,11 @@ +using Godot; +using Rokojori; +using System.Collections.Generic; +using System.Threading.Tasks; + +[Tool, GlobalClass] +public partial class Focusable : Node +{ + +} + diff --git a/DomeFox/Game Objects/Focusable/Focusable.cs.uid b/DomeFox/Game Objects/Focusable/Focusable.cs.uid new file mode 100644 index 0000000..aadc960 --- /dev/null +++ b/DomeFox/Game Objects/Focusable/Focusable.cs.uid @@ -0,0 +1 @@ +uid://bn367gamj5ev0 diff --git a/DomeFox/Game Objects/Health/Damagable.cs b/DomeFox/Game Objects/Health/Damagable.cs new file mode 100644 index 0000000..5316621 --- /dev/null +++ b/DomeFox/Game Objects/Health/Damagable.cs @@ -0,0 +1,37 @@ +using Godot; +using Rokojori; + +[Tool, GlobalClass] +public partial class Damagable:Action +{ + [Export] + public DamagableData damagableData; + + [Export] + public Collidable collidable; + + [Export] + public Health health; + + [Export] + public int defaultDamage = 0; + + protected override void _OnTrigger() + { + var collider = collidable.collider; + var damager = collider.GetNextSiblingOrChild(); + + // this.LogInfo( "Damagable:", HierarchyName.Of( collider ), HierarchyName.Of( damager ) ); + + if ( damager == null ) + { + return; + } + + var computedDamage = damagableData.ComputeDamage( this, damager ); + + // this.LogInfo( "Computed Damage:", computedDamage ); + health.ChangeHealth( computedDamage ); + } + +} \ No newline at end of file diff --git a/DomeFox/Game Objects/Health/Damagable.cs.uid b/DomeFox/Game Objects/Health/Damagable.cs.uid new file mode 100644 index 0000000..2109604 --- /dev/null +++ b/DomeFox/Game Objects/Health/Damagable.cs.uid @@ -0,0 +1 @@ +uid://dn1jkvx1f4y5r diff --git a/DomeFox/Game Objects/Health/DamagableData.cs b/DomeFox/Game Objects/Health/DamagableData.cs new file mode 100644 index 0000000..a318a9d --- /dev/null +++ b/DomeFox/Game Objects/Health/DamagableData.cs @@ -0,0 +1,15 @@ +using Godot; +using Rokojori; + +[Tool, GlobalClass] +public partial class DamagableData:Resource +{ + [Export] + public int damageAbsorbion = 0; + + public int ComputeDamage( Damagable damagable, Damager damager ) + { + return -Mathf.Max( 0, damager.damagerData.numDamage - damageAbsorbion ); + } + +} \ No newline at end of file diff --git a/DomeFox/Game Objects/Health/DamagableData.cs.uid b/DomeFox/Game Objects/Health/DamagableData.cs.uid new file mode 100644 index 0000000..081d956 --- /dev/null +++ b/DomeFox/Game Objects/Health/DamagableData.cs.uid @@ -0,0 +1 @@ +uid://d0x8co6nm8koo diff --git a/DomeFox/Game Objects/Health/Damager.cs b/DomeFox/Game Objects/Health/Damager.cs new file mode 100644 index 0000000..23ac56c --- /dev/null +++ b/DomeFox/Game Objects/Health/Damager.cs @@ -0,0 +1,10 @@ +using Godot; +using Rokojori; + +[Tool, GlobalClass] +public partial class Damager:Node +{ + [Export] + public DamagerData damagerData; + +} \ No newline at end of file diff --git a/DomeFox/Game Objects/Health/Damager.cs.uid b/DomeFox/Game Objects/Health/Damager.cs.uid new file mode 100644 index 0000000..a1267ab --- /dev/null +++ b/DomeFox/Game Objects/Health/Damager.cs.uid @@ -0,0 +1 @@ +uid://ba1bue0f8r50y diff --git a/DomeFox/Game Objects/Health/DamagerData.cs b/DomeFox/Game Objects/Health/DamagerData.cs new file mode 100644 index 0000000..fa3220d --- /dev/null +++ b/DomeFox/Game Objects/Health/DamagerData.cs @@ -0,0 +1,9 @@ +using Godot; +using Rokojori; + +[Tool, GlobalClass] +public partial class DamagerData:Resource +{ + [Export] + public int numDamage; +} \ No newline at end of file diff --git a/DomeFox/Game Objects/Health/DamagerData.cs.uid b/DomeFox/Game Objects/Health/DamagerData.cs.uid new file mode 100644 index 0000000..a44dc74 --- /dev/null +++ b/DomeFox/Game Objects/Health/DamagerData.cs.uid @@ -0,0 +1 @@ +uid://bksl7m8vfm068 diff --git a/DomeFox/Game Objects/Health/Health.cs b/DomeFox/Game Objects/Health/Health.cs new file mode 100644 index 0000000..c5b3877 --- /dev/null +++ b/DomeFox/Game Objects/Health/Health.cs @@ -0,0 +1,97 @@ +using Godot; +using Rokojori; + +[Tool, GlobalClass] +public partial class Health:Node +{ + [Export] + public HealthData healthData; + + [Export] + public bool initializeOnReady = true; + + [Export] + public int currentHealth = 0; + + [Export] + public Action onHeal; + + [Export] + public Action onMax; + + [Export] + public Action onDamage; + + [Export] + public Action onDeath; + + [Export] + public bool markAsDead = true; + + bool _isDead = false; + + public bool isDead => _isDead; + + public void ChangeHealth( int change ) + { + if ( _isDead ) + { + return; + } + + var previouseHealth = currentHealth; + currentHealth = Mathf.Clamp( previouseHealth + change, 0, healthData.max ); + + var realChange = currentHealth - previouseHealth;; + + // this.LogInfo( "Health Changed:", change, previouseHealth, ">", currentHealth, " +/-", realChange ); + + if ( previouseHealth == currentHealth ) + { + return; + } + + + + if ( realChange < 0 ) + { + Action.Trigger( onDamage ); + + if ( currentHealth == 0 ) + { + if ( markAsDead ) + { + _isDead = true; + } + + Action.Trigger( onDeath ); + } + } + else + { + + Action.Trigger( onHeal ); + + if ( currentHealth == healthData.max ) + { + Action.Trigger( onMax ); + } + } + + + } + + public void Initialize() + { + currentHealth = healthData.initial; + } + + public override void _Ready() + { + if ( initializeOnReady ) + { + Initialize(); + } + } + +} \ No newline at end of file diff --git a/DomeFox/Game Objects/Health/Health.cs.uid b/DomeFox/Game Objects/Health/Health.cs.uid new file mode 100644 index 0000000..12f789d --- /dev/null +++ b/DomeFox/Game Objects/Health/Health.cs.uid @@ -0,0 +1 @@ +uid://cbbesrlha8kor diff --git a/DomeFox/Game Objects/Health/HealthData.cs b/DomeFox/Game Objects/Health/HealthData.cs new file mode 100644 index 0000000..9fd4afc --- /dev/null +++ b/DomeFox/Game Objects/Health/HealthData.cs @@ -0,0 +1,14 @@ +using Godot; +using Rokojori; + +[Tool, GlobalClass] +public partial class HealthData:Resource +{ + [Export] + public int max = 200; + + [Export] + public int initial = 100; + + +} \ No newline at end of file diff --git a/DomeFox/Game Objects/Health/HealthData.cs.uid b/DomeFox/Game Objects/Health/HealthData.cs.uid new file mode 100644 index 0000000..5b0d3b2 --- /dev/null +++ b/DomeFox/Game Objects/Health/HealthData.cs.uid @@ -0,0 +1 @@ +uid://w5l6csc2p364 diff --git a/DomeFox/Game Objects/Health/SyncHealthUI.cs b/DomeFox/Game Objects/Health/SyncHealthUI.cs new file mode 100644 index 0000000..cb2ce4e --- /dev/null +++ b/DomeFox/Game Objects/Health/SyncHealthUI.cs @@ -0,0 +1,17 @@ +using Godot; +using Rokojori; + +[Tool, GlobalClass] +public partial class SyncHealthUI:Action +{ + [Export] + public UIText text; + + [Export] + public Health health; + + protected override void _OnTrigger() + { + text.locale = LocaleText.Create( health.currentHealth + "" ); + } +} diff --git a/DomeFox/Game Objects/Health/SyncHealthUI.cs.uid b/DomeFox/Game Objects/Health/SyncHealthUI.cs.uid new file mode 100644 index 0000000..d357260 --- /dev/null +++ b/DomeFox/Game Objects/Health/SyncHealthUI.cs.uid @@ -0,0 +1 @@ +uid://5vvwb74foskj diff --git a/DomeFox/Game Objects/Laser/AimControl.cs b/DomeFox/Game Objects/Laser/AimControl.cs index dae3713..b249ef2 100644 --- a/DomeFox/Game Objects/Laser/AimControl.cs +++ b/DomeFox/Game Objects/Laser/AimControl.cs @@ -72,21 +72,21 @@ public partial class AimControl : Node return; } - pointer.onPointerChange.AddAction( - ( p )=> - { - if ( p == null ) - { - this.LogInfo( "onBlur", p ); - Action.Trigger( onBlur ); - } - else - { - this.LogInfo( "onFocus", p ); - Action.Trigger( onFocus ); - } - } - ); + // pointer.onPointerChange.AddAction( + // ( p )=> + // { + // if ( p == null ) + // { + // this.LogInfo( "onBlur", p ); + // Action.Trigger( onBlur ); + // } + // else + // { + // this.LogInfo( "onFocus", p ); + // Action.Trigger( onFocus ); + // } + // } + // ); } diff --git a/DomeFox/Game Objects/Laser/LaseBeam-Damage Data.tres b/DomeFox/Game Objects/Laser/LaseBeam-Damage Data.tres new file mode 100644 index 0000000..ac35b52 --- /dev/null +++ b/DomeFox/Game Objects/Laser/LaseBeam-Damage Data.tres @@ -0,0 +1,8 @@ +[gd_resource type="Resource" script_class="DamagerData" load_steps=2 format=3 uid="uid://mkrqdvv6p004"] + +[ext_resource type="Script" uid="uid://bksl7m8vfm068" path="res://DomeFox/Game Objects/Health/DamagerData.cs" id="1_h4ut6"] + +[resource] +script = ExtResource("1_h4ut6") +numDamage = 5 +metadata/_custom_type_script = "uid://bksl7m8vfm068" diff --git a/DomeFox/Game Objects/Laser/LaserBeam.cs b/DomeFox/Game Objects/Laser/LaserBeam.cs index 7a0ccbd..c31d2e0 100644 --- a/DomeFox/Game Objects/Laser/LaserBeam.cs +++ b/DomeFox/Game Objects/Laser/LaserBeam.cs @@ -5,23 +5,14 @@ using Rokojori; public partial class LaserBeam: Action { [Export] - public Node3D body; + public Projectile body; [Export] public Node3D graphics; - [Export] - public Vector3 direction; - - [Export] - public float speed = 1; - [Export] public Duration duration; - [Export] - public Node3D aim; - [Export] public Action onDone; @@ -31,12 +22,6 @@ public partial class LaserBeam: Action [Export] public Curve scaleCurve; - [Export] - public float forwardFollowDistanceScale = 1.5f; - - [Export] - public float correctionDistance = 500; - protected override void _OnTrigger() { Action.Trigger( onStart ); @@ -64,8 +49,4 @@ public partial class LaserBeam: Action ); } - public override void _PhysicsProcess( double delta ) - { - body.GlobalPosition += direction * speed * (float)delta; - } } diff --git a/DomeFox/Game Objects/Laser/LaserBeam.tscn b/DomeFox/Game Objects/Laser/LaserBeam.tscn index cf31f03..f6e5fb0 100644 --- a/DomeFox/Game Objects/Laser/LaserBeam.tscn +++ b/DomeFox/Game Objects/Laser/LaserBeam.tscn @@ -1,8 +1,9 @@ -[gd_scene load_steps=44 format=3 uid="uid://dwdm5cq57lrv2"] +[gd_scene load_steps=57 format=3 uid="uid://dwdm5cq57lrv2"] [ext_resource type="Script" uid="uid://ds7m6xeltbhyv" path="res://DomeFox/Game Objects/Laser/LaserBeam.cs" id="1_rsmh3"] [ext_resource type="Script" uid="uid://ddhwhwos5kkrm" path="res://addons/rokojori_action_library/Runtime/Time/Duration/SecondsDuration.cs" id="2_vdjdq"] [ext_resource type="Resource" uid="uid://ch5nsa6yafs5l" path="res://addons/rokojori_action_library/Runtime/Time/TimeLines/GameTime.tres" id="3_nlvic"] +[ext_resource type="Script" uid="uid://baohlfn1nwjsk" path="res://addons/rokojori_action_library/Runtime/Physics/Projectile.cs" id="4_x7uco"] [ext_resource type="Script" uid="uid://b4yjsis2fh64c" path="res://addons/rokojori_action_library/Runtime/Actions/ActionList.cs" id="5_0loo2"] [ext_resource type="Script" uid="uid://crm7o7w0gumhn" path="res://addons/rokojori_action_library/Runtime/Actions/Conditional/Once.cs" id="6_0sgxb"] [ext_resource type="Script" uid="uid://dq5kae8x62gre" path="res://addons/rokojori_action_library/Runtime/Actions/RemoveNode.cs" id="6_nibk5"] @@ -15,12 +16,18 @@ [ext_resource type="Script" uid="uid://cnp3xr8gawyi6" path="res://addons/rokojori_action_library/Runtime/Actions/Node3D/SetTransform.cs" id="9_qx516"] [ext_resource type="Script" uid="uid://b2g7rycr0ouu4" path="res://addons/rokojori_action_library/Runtime/Actions/Time/Delay.cs" id="10_6687p"] [ext_resource type="Script" uid="uid://be4oc7tgr55vu" path="res://addons/rokojori_action_library/Runtime/Animation/Transform/TransformCurve.cs" id="10_xwb5b"] +[ext_resource type="Script" uid="uid://0wcfunmv4j6d" path="res://addons/rokojori_action_library/Runtime/Actions/Visual/TweenMaterial.cs" id="11_p1x71"] [ext_resource type="Script" uid="uid://bqpiwp16h7614" path="res://addons/rokojori_action_library/Runtime/Animation/Transform/TransformAnimations.cs" id="11_u0sqv"] +[ext_resource type="Script" uid="uid://dy65lu5p2yf3j" path="res://addons/rokojori_action_library/Runtime/Actions/Sequence/Parallel.cs" id="11_x7uco"] +[ext_resource type="Script" uid="uid://lm37r3ycp1ls" path="res://addons/rokojori_action_library/Runtime/Animation/Tweens/TweenTimeCurve.cs" id="12_fwjbr"] [ext_resource type="Script" uid="uid://cd0ikdsdhutn0" path="res://addons/rokojori_action_library/Runtime/Actions/RJLogMessage.cs" id="13_u0sqv"] +[ext_resource type="Script" uid="uid://csgk6d2jvferv" path="res://addons/rokojori_action_library/Runtime/Actions/Visual/TweenScale.cs" id="14_b1tky"] +[ext_resource type="Script" uid="uid://cdspv8f8l6dgd" path="res://addons/rokojori_action_library/Runtime/Actions/Physics/SetCollisionShape.cs" id="14_jmxwb"] [ext_resource type="Script" uid="uid://dnstanbmrqthf" path="res://addons/rokojori_action_library/Runtime/Actions/Node3D/PlayParticles.cs" id="16_qx516"] [ext_resource type="Script" uid="uid://xnupkyu3042b" path="res://addons/rokojori_action_library/Runtime/Interactions/Collider.cs" id="19_6687p"] [ext_resource type="Resource" uid="uid://ckyvygk7xtnpm" path="res://DomeFox/Game Objects/Wall/Projectile-Collision.tres" id="20_6687p"] -[ext_resource type="Shader" uid="uid://g038sa37p3uc" path="res://DomeFox/X/Flares/FlareShaderAdd.gdshader" id="21_anpfd"] +[ext_resource type="Script" uid="uid://ba1bue0f8r50y" path="res://DomeFox/Game Objects/Health/Damager.cs" id="21_xnre0"] +[ext_resource type="Resource" uid="uid://mkrqdvv6p004" path="res://DomeFox/Game Objects/Laser/LaseBeam-Damage Data.tres" id="22_xnre0"] [sub_resource type="Resource" id="Resource_88k83"] script = ExtResource("2_vdjdq") @@ -33,6 +40,10 @@ _limits = [0.0, 2.0, 0.0, 1.0] _data = [Vector2(0, 1.2477157), 0.0, 0.0, 0, 0, Vector2(0.05333334, 2), 0.0, 0.0, 0, 0, Vector2(0.16266668, 1.1817259), -1.5747585, -1.5747585, 0, 0, Vector2(0.3786667, 1.0365483), 0.0, 0.0, 0, 0, Vector2(1, 0.9705584), 0.0, 0.0, 0, 0] point_count = 5 +[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_u0sqv"] +radius = 1.0532227 +height = 5.6881676 + [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_0sgxb"] render_priority = 1 transparency = 1 @@ -82,12 +93,13 @@ curve = SubResource("Curve_anpfd") [sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_u0sqv"] particle_flag_align_y = true spread = 180.0 -initial_velocity_min = 20.0 -initial_velocity_max = 20.0 +initial_velocity_min = 15.0 +initial_velocity_max = 60.0 linear_accel_curve = SubResource("CurveTexture_anpfd") damping_min = 10.0 damping_max = 10.0 damping_curve = SubResource("CurveTexture_6687p") +scale_min = 0.29999998 scale_curve = SubResource("CurveTexture_12esp") turbulence_noise_strength = 16.15 turbulence_noise_scale = 10.0 @@ -117,7 +129,7 @@ metadata/_stencil_owned = true [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_kglu6"] next_pass = SubResource("StandardMaterial3D_apv0p") shading_mode = 0 -albedo_color = Color(1.2836698, 0.7847774, 0.60943115, 1) +albedo_color = Color(1.2838488, 0.790611, 0.61125183, 0) disable_receive_shadows = true stencil_mode = 1 stencil_flags = 2 @@ -135,6 +147,44 @@ rings = 3 radius = 0.6 height = 5.0 +[sub_resource type="SphereMesh" id="SphereMesh_xnre0"] +radius = 2.0 +height = 4.0 + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_b1tky"] +transparency = 1 +shading_mode = 0 +albedo_color = Color(2.5804994, 0.71441597, 0.50707334, 0) + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_jmxwb"] +transparency = 1 +shading_mode = 0 +albedo_color = Color(2.5804994, 0.71441597, 0.50707334, 1) + +[sub_resource type="Curve" id="Curve_jmxwb"] +_data = [Vector2(0, 0), 0.0, 0.06975378, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0] +point_count = 2 + +[sub_resource type="Resource" id="Resource_1816h"] +script = ExtResource("12_fwjbr") +duration = 0.1 +curve = SubResource("Curve_jmxwb") + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_1816h"] +transparency = 1 +shading_mode = 0 +albedo_color = Color(3.373, 0.676, 1.435061, 0) + +[sub_resource type="Resource" id="Resource_3knx3"] +script = ExtResource("12_fwjbr") +duration = 0.2 +curve = SubResource("Curve_jmxwb") + +[sub_resource type="Resource" id="Resource_dtivv"] +script = ExtResource("12_fwjbr") +duration = 0.2 +curve = SubResource("Curve_jmxwb") + [sub_resource type="Curve" id="Curve_qx516"] _limits = [0.0, 2.0, 0.0, 1.0] _data = [Vector2(0, 1), 0.0, 1.6231704, 0, 1, Vector2(0.10330579, 1.1676829), 0.0, 0.0, 0, 0, Vector2(0.22520661, 0.95960355), 0.0, 0.0, 0, 0, Vector2(0.3264463, 1.0884145), 0.0, 0.0, 0, 0, Vector2(0.43388432, 0.91996944), 0.0, 0.0, 0, 0, Vector2(0.481405, 1.1181402), 0.0, 0.0, 0, 0, Vector2(0.5619835, 0.91996944), 0.0, 0.0, 0, 0, Vector2(0.69214886, 1.6234756), 0.0, 0.0, 0, 0, Vector2(0.766529, 0.672256), 0.0, 0.0, 0, 0, Vector2(0.85123974, 1.078506), 0.0, 0.0, 0, 0, Vector2(1, 1), -0.527735, 0.0, 1, 0] @@ -154,64 +204,48 @@ curves = [SubResource("Resource_apv0p")] timeline = ExtResource("3_nlvic") metadata/_custom_type_script = "uid://bqpiwp16h7614" -[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_u0sqv"] -radius = 1.8408203 -height = 7.665756 - -[sub_resource type="ShaderMaterial" id="ShaderMaterial_to38e"] -render_priority = 0 -shader = ExtResource("21_anpfd") -shader_parameter/color = Color(0.8862745, 0.41734034, 0.23137252, 1) -shader_parameter/alphaScale = 1.0 -shader_parameter/circleAmount = 1.0 -shader_parameter/circleDistortion = 2.1085 -shader_parameter/ellipseAmount = 0.057 -shader_parameter/ellipseDistortion = 2.3855 -shader_parameter/ellipseScale = Vector2(1, 0.982) -shader_parameter/add_vs_max = 0.0 -shader_parameter/centerHSL = Vector4(0.08, 0, 0.18, 1) -shader_parameter/outsideHSL = Vector4(-0.05, 1.65, 0.02, 0) -shader_parameter/sizeX = 21.20800095988 -shader_parameter/sizeY = 1.0 -shader_parameter/scaleAll = 0.1755 -shader_parameter/worldSize_vs_screenSize = 0.3450000163875 -shader_parameter/usSpectralsNoise = true -shader_parameter/spectralsAmount = Vector3(0.1, 0.05, 0.02) -shader_parameter/nonSpectralAmount = 1.0 -shader_parameter/spectralsSize = Vector3(1, 0.8, 0.5) -shader_parameter/spectralsSharpness = Vector3(0, 0, 0) -shader_parameter/spectralsFrequency = Vector3(50, 200, 500) -shader_parameter/spectralsSpeed = Vector3(5, -3, -2) -shader_parameter/useQuickOcclusionTest = false -shader_parameter/occlusionZOffset = 5.7530016982674965 -shader_parameter/occlusionTestMaxSteps = 10 -shader_parameter/occlusionTestStepStride = 1.0 -shader_parameter/occlusionTest_ViewDependingScaleAmount = 0.5 -shader_parameter/occlusionTest_ViewDependingDistance = 100.0 - -[sub_resource type="QuadMesh" id="QuadMesh_flomn"] -material = SubResource("ShaderMaterial_to38e") -size = Vector2(0.0001, 0.0001) - [node name="LaserBeam Root" type="Node3D"] [node name="LaserBeam" type="Node" parent="." node_paths=PackedStringArray("body", "graphics", "onDone", "onStart")] script = ExtResource("1_rsmh3") -body = NodePath("..") -graphics = NodePath("../Graphics") +body = NodePath("../Projectile") +graphics = NodePath("../Projectile/Graphics") duration = SubResource("Resource_88k83") -onDone = NodePath("../Once On Done") -onStart = NodePath("../On Start") +onDone = NodePath("../Projectile/Once On Done") +onStart = NodePath("../Projectile/On Start") scaleCurve = SubResource("Curve_u0sqv") metadata/_custom_type_script = "uid://ds7m6xeltbhyv" -[node name="PlayParticles Shoot" type="Node" parent="." node_paths=PackedStringArray("particles3D")] +[node name="Projectile" type="CharacterBody3D" parent="." node_paths=PackedStringArray("collider")] +script = ExtResource("4_x7uco") +speed = 1.0 +disableOnCollision = true +collider = NodePath("Collider") +metadata/_custom_type_script = "uid://baohlfn1nwjsk" + +[node name="CollisionShape3D" type="CollisionShape3D" parent="Projectile"] +transform = Transform3D(1, 0, 0, 0, -4.371139e-08, -1, 0, 1, -4.371139e-08, 0, -4.974116e-08, 0.025711179) +shape = SubResource("CapsuleShape3D_u0sqv") + +[node name="Collider" type="Node" parent="Projectile" node_paths=PackedStringArray("area", "onEntered")] +script = ExtResource("19_6687p") +area = NodePath("") +collisionType = ExtResource("20_6687p") +onEntered = NodePath("../Once On Done") +metadata/_custom_type_script = "uid://xnupkyu3042b" + +[node name="Damager" type="Node" parent="Projectile"] +script = ExtResource("21_xnre0") +damagerData = ExtResource("22_xnre0") +metadata/_custom_type_script = "uid://ba1bue0f8r50y" + +[node name="PlayParticles Shoot" type="Node" parent="Projectile" node_paths=PackedStringArray("particles3D")] script = ExtResource("16_qx516") particles3D = NodePath("../Shoot Start") timeLine = ExtResource("3_nlvic") metadata/_custom_type_script = "uid://dnstanbmrqthf" -[node name="Shoot Start" type="GPUParticles3D" parent="."] +[node name="Shoot Start" type="GPUParticles3D" parent="Projectile"] transform = Transform3D(2.047461, 0, 0, 0, 2.047461, 0, 0, 0, 2.047461, 0, 0, 0) material_override = SubResource("StandardMaterial3D_qx516") emitting = false @@ -226,113 +260,151 @@ fract_delta = false process_material = SubResource("ParticleProcessMaterial_u0sqv") draw_pass_1 = SubResource("CapsuleMesh_qx516") -[node name="PlayParticles Impact" type="Node" parent="." node_paths=PackedStringArray("particles3D")] +[node name="PlayParticles Impact" type="Node" parent="Projectile" node_paths=PackedStringArray("particles3D")] script = ExtResource("16_qx516") particles3D = NodePath("../Impact") timeLine = ExtResource("3_nlvic") metadata/_custom_type_script = "uid://dnstanbmrqthf" -[node name="Impact" type="GPUParticles3D" parent="."] +[node name="Impact" type="GPUParticles3D" parent="Projectile"] transform = Transform3D(2.047461, 0, 0, 0, 2.047461, 0, 0, 0, 2.047461, 0, 0, 0) material_override = SubResource("StandardMaterial3D_kglu6") emitting = false -amount = 20 -lifetime = 0.5 +amount = 5 +lifetime = 0.3 one_shot = true explosiveness = 1.0 +randomness = 1.0 fixed_fps = 0 interpolate = false fract_delta = false process_material = SubResource("ParticleProcessMaterial_u0sqv") draw_pass_1 = SubResource("CapsuleMesh_12esp") -[node name="Graphics" type="MeshInstance3D" parent="."] -transform = Transform3D(1, 0, 0, 0, -4.371139e-08, -1, 0, 1, -4.371139e-08, 0, 0, 0) +[node name="Graphics" type="MeshInstance3D" parent="Projectile"] +transform = Transform3D(0.001, 0, 0, 0, -4.371139e-11, -0.001, 0, 0.001, -4.371139e-11, 0, 0, 0) cast_shadow = 0 mesh = SubResource("CapsuleMesh_xwb5b") +skeleton = NodePath("../..") surface_material_override/0 = SubResource("StandardMaterial3D_kglu6") -[node name="Once On Done" type="Node" parent="." node_paths=PackedStringArray("action")] +[node name="MeshInstance3D" type="MeshInstance3D" parent="Projectile"] +transform = Transform3D(0.1, 0, 0, 0, 0.1, 0, 0, 0, 0.1, 0, 0, 0) +mesh = SubResource("SphereMesh_xnre0") +skeleton = NodePath("../..") +surface_material_override/0 = SubResource("StandardMaterial3D_b1tky") + +[node name="Once On Done" type="Node" parent="Projectile" node_paths=PackedStringArray("action")] script = ExtResource("6_0sgxb") action = NodePath("On Done") metadata/_custom_type_script = "uid://crm7o7w0gumhn" -[node name="On Done" type="Node" parent="Once On Done"] +[node name="On Done" type="Node" parent="Projectile/Once On Done"] script = ExtResource("5_0loo2") metadata/_custom_type_script = "uid://b4yjsis2fh64c" -[node name="Disable Graphics + Physics" type="Node" parent="Once On Done/On Done" node_paths=PackedStringArray("disable")] +[node name="SetCollisionShape" type="Node" parent="Projectile/Once On Done/On Done" node_paths=PackedStringArray("shape3D")] +script = ExtResource("14_jmxwb") +shape3D = NodePath("../../../CollisionShape3D") +disabled = true +metadata/_custom_type_script = "uid://cdspv8f8l6dgd" + +[node name="Disable Graphics + Physics" type="Node" parent="Projectile/Once On Done/On Done" node_paths=PackedStringArray("disable")] script = ExtResource("8_brkx5") -disable = [NodePath("../../../Graphics"), NodePath("../../../Area3D"), NodePath("../../../Area3D/CollisionShape3D"), NodePath("../../../Area3D/Collider")] +disable = [NodePath("../../../../LaserBeam"), NodePath("../../../Graphics"), NodePath("../../../CollisionShape3D"), NodePath("../../../Collider")] metadata/_custom_type_script = "uid://bex6umukt0r8d" -[node name="Impact Particles" type="Node" parent="Once On Done/On Done" node_paths=PackedStringArray("referencedAction")] +[node name="Impact Particles" type="Node" parent="Projectile/Once On Done/On Done" node_paths=PackedStringArray("referencedAction")] script = ExtResource("7_88k83") referencedAction = NodePath("../../../PlayParticles Impact") metadata/_custom_type_script = "uid://dxra6jao22it4" -[node name="StopRepeatSequence" type="Node" parent="Once On Done/On Done" node_paths=PackedStringArray("repeatSequence")] +[node name="SetNodeState" type="Node" parent="Projectile/Once On Done/On Done" node_paths=PackedStringArray("enable")] +script = ExtResource("8_brkx5") +enable = [NodePath("../../../MeshInstance3D")] +metadata/_custom_type_script = "uid://bex6umukt0r8d" + +[node name="StopRepeatSequence" type="Node" parent="Projectile/Once On Done/On Done" node_paths=PackedStringArray("repeatSequence")] script = ExtResource("6_xwb5b") repeatSequence = NodePath("../../../Repeat Animation") metadata/_custom_type_script = "uid://cvw0nxi8migso" -[node name="ActionSequence" type="Node" parent="Once On Done/On Done"] +[node name="ActionSequence" type="Node" parent="Projectile/Once On Done/On Done"] script = ExtResource("9_0sgxb") metadata/_custom_type_script = "uid://ceaglilesxsi4" -[node name="Delay" type="Node" parent="Once On Done/On Done/ActionSequence"] +[node name="Parallel" type="Node" parent="Projectile/Once On Done/On Done/ActionSequence"] +script = ExtResource("11_x7uco") +metadata/_custom_type_script = "uid://dy65lu5p2yf3j" + +[node name="TweenMaterial" type="Node" parent="Projectile/Once On Done/On Done/ActionSequence/Parallel" node_paths=PackedStringArray("target")] +script = ExtResource("11_p1x71") +toMaterial = SubResource("StandardMaterial3D_jmxwb") +tweenType = SubResource("Resource_1816h") +target = NodePath("../../../../../MeshInstance3D") +slot = 2 +metadata/_custom_type_script = "uid://0wcfunmv4j6d" + +[node name="TweenScale" type="Node" parent="Projectile/Once On Done/On Done/ActionSequence/Parallel" node_paths=PackedStringArray("target")] +script = ExtResource("14_b1tky") +target = NodePath("../../../../../MeshInstance3D") +tweenType = SubResource("Resource_1816h") +metadata/_custom_type_script = "uid://csgk6d2jvferv" + +[node name="Parallel2" type="Node" parent="Projectile/Once On Done/On Done/ActionSequence"] +script = ExtResource("11_x7uco") +metadata/_custom_type_script = "uid://dy65lu5p2yf3j" + +[node name="TweenMaterial" type="Node" parent="Projectile/Once On Done/On Done/ActionSequence/Parallel2" node_paths=PackedStringArray("target")] +script = ExtResource("11_p1x71") +toMaterial = SubResource("StandardMaterial3D_1816h") +tweenType = SubResource("Resource_3knx3") +target = NodePath("../../../../../MeshInstance3D") +slot = 2 +metadata/_custom_type_script = "uid://0wcfunmv4j6d" + +[node name="TweenScale" type="Node" parent="Projectile/Once On Done/On Done/ActionSequence/Parallel2" node_paths=PackedStringArray("target")] +script = ExtResource("14_b1tky") +target = NodePath("../../../../../MeshInstance3D") +endScale = Vector3(2, 2, 2) +tweenType = SubResource("Resource_dtivv") +metadata/_custom_type_script = "uid://csgk6d2jvferv" + +[node name="Delay" type="Node" parent="Projectile/Once On Done/On Done/ActionSequence"] script = ExtResource("10_6687p") duration = 1.0 timeLine = ExtResource("3_nlvic") metadata/_custom_type_script = "uid://b2g7rycr0ouu4" -[node name="RemoveNode" type="Node" parent="Once On Done/On Done/ActionSequence" node_paths=PackedStringArray("target")] +[node name="RemoveNode" type="Node" parent="Projectile/Once On Done/On Done/ActionSequence" node_paths=PackedStringArray("target")] script = ExtResource("6_nibk5") -target = NodePath("../../../..") +target = NodePath("../../../../..") metadata/_custom_type_script = "uid://dq5kae8x62gre" -[node name="On Start" type="Node" parent="."] +[node name="On Start" type="Node" parent="Projectile"] script = ExtResource("5_0loo2") metadata/_custom_type_script = "uid://b4yjsis2fh64c" -[node name="SetTransform" type="Node" parent="On Start" node_paths=PackedStringArray("target")] +[node name="SetTransform" type="Node" parent="Projectile/On Start" node_paths=PackedStringArray("target")] script = ExtResource("9_qx516") target = NodePath("../../Graphics") scaleMode = 1 scale = Vector3(0.001, 0.001, 0.001) metadata/_custom_type_script = "uid://cnp3xr8gawyi6" -[node name="Repeat Animation" type="Node" parent="." node_paths=PackedStringArray("action")] +[node name="Repeat Animation" type="Node" parent="Projectile" node_paths=PackedStringArray("action")] script = ExtResource("8_1c3gh") action = NodePath("AnimateTransform") timeLine = ExtResource("3_nlvic") metadata/_custom_type_script = "uid://j41ppn275x8i" -[node name="AnimateTransform" type="Node" parent="Repeat Animation" node_paths=PackedStringArray("target")] +[node name="AnimateTransform" type="Node" parent="Projectile/Repeat Animation" node_paths=PackedStringArray("target")] script = ExtResource("9_gk6jt") animations = SubResource("Resource_kglu6") target = NodePath("../../Graphics") metadata/_custom_type_script = "uid://cbtqgliarexam" -[node name="RJLogMessage" type="Node" parent="Repeat Animation"] +[node name="RJLogMessage" type="Node" parent="Projectile/Repeat Animation"] script = ExtResource("13_u0sqv") message = "repeat" metadata/_custom_type_script = "uid://cd0ikdsdhutn0" - -[node name="Area3D" type="Area3D" parent="."] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -1.112234) - -[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D"] -transform = Transform3D(1, 0, 0, 0, -4.371139e-08, -1, 0, 1, -4.371139e-08, 0, -5.269331e-08, 1.2054825) -shape = SubResource("CapsuleShape3D_u0sqv") - -[node name="Collider" type="Node" parent="Area3D" node_paths=PackedStringArray("area", "onEntered")] -script = ExtResource("19_6687p") -area = NodePath("..") -collisionType = ExtResource("20_6687p") -onEntered = NodePath("../../Once On Done") -metadata/_custom_type_script = "uid://xnupkyu3042b" - -[node name="MeshInstance3D3" type="MeshInstance3D" parent="Area3D"] -mesh = SubResource("QuadMesh_flomn") -skeleton = NodePath("../..") diff --git a/DomeFox/Game Objects/Laser/ShootLaser.cs b/DomeFox/Game Objects/Laser/ShootLaser.cs index 801cbb1..ebc4062 100644 --- a/DomeFox/Game Objects/Laser/ShootLaser.cs +++ b/DomeFox/Game Objects/Laser/ShootLaser.cs @@ -37,12 +37,11 @@ public partial class ShootLaser: Action laserScene.SetParent( container ); var laserBeam = laserScene.Get(); - laserBeam.direction = dir; - laserBeam.speed = speed; - laserBeam.body.LookTowards( dir ); - laserBeam.forwardFollowDistanceScale = 1.5f; + var projectile = laserBeam.body; - laserBeam.body.GlobalPosition = projectileOrigin.GlobalPosition; + projectile.GlobalPosition = projectileOrigin.GlobalPosition; + projectile.LookTowards( dir ); + projectile.speed = speed; Action.Trigger( laserBeam ); } diff --git a/DomeFox/Game Objects/Stone/Stone.tscn b/DomeFox/Game Objects/Stone/Stone.tscn index 4425f43..285a836 100644 --- a/DomeFox/Game Objects/Stone/Stone.tscn +++ b/DomeFox/Game Objects/Stone/Stone.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=53 format=3 uid="uid://dpgjtkmuvsr41"] +[gd_scene load_steps=55 format=3 uid="uid://dpgjtkmuvsr41"] [ext_resource type="AudioStream" uid="uid://by14wgfo8ateq" path="res://DomeFox/Game Objects/Laser/water-fox-impact.ogg" id="2_ehw2o"] [ext_resource type="Script" uid="uid://crm7o7w0gumhn" path="res://addons/rokojori_action_library/Runtime/Actions/Conditional/Once.cs" id="2_ucinm"] @@ -20,7 +20,9 @@ [ext_resource type="Script" uid="uid://bqpiwp16h7614" path="res://addons/rokojori_action_library/Runtime/Animation/Transform/TransformAnimations.cs" id="13_vl44m"] [ext_resource type="Script" uid="uid://bex6umukt0r8d" path="res://addons/rokojori_action_library/Runtime/Actions/Node/SetNodeState.cs" id="16_p24ea"] [ext_resource type="Script" uid="uid://dncqth3uf3tb3" path="res://addons/rokojori_action_library/Runtime/Animation/HDRColor.cs" id="19_1ntkc"] +[ext_resource type="Script" uid="uid://c1ivlrrt71nwp" path="res://addons/rokojori_action_library/Runtime/Cameras/Effects/PlayCameraEffect.cs" id="19_jsg3s"] [ext_resource type="Script" uid="uid://ddgf2mfdmqywc" path="res://addons/rokojori_action_library/Runtime/Actions/Node3D/PlaySound.cs" id="19_uxklm"] +[ext_resource type="Resource" uid="uid://uyuplc6hm25j" path="res://addons/rokojori_action_library/Runtime/Cameras/Effects/Presets/ScreenShake.tres" id="20_l8f1n"] [ext_resource type="Script" uid="uid://cupnq55n3nimc" path="res://addons/rokojori_action_library/Runtime/Animation/Flash/FlashEffect.cs" id="20_vk22f"] [sub_resource type="SphereShape3D" id="SphereShape3D_am4la"] @@ -219,6 +221,7 @@ stream = ExtResource("2_ehw2o") volume_db = 6.0 unit_size = 50.49 max_db = 6.0 +bus = &"FX" attenuation_filter_cutoff_hz = 20500.0 attenuation_filter_db = 0.0 @@ -273,6 +276,12 @@ flashEffect = SubResource("Resource_ammpp") targets = [NodePath("../../../../RigidBody3D/Animation Target/Graphics")] metadata/_custom_type_script = "uid://dnwqkymbre3vb" +[node name="PlayCameraEffect" type="Node" parent="Once On Impact/OnImpact/Parallel"] +script = ExtResource("19_jsg3s") +cameraEffect = ExtResource("20_l8f1n") +useActiveCameraSlot = true +metadata/_custom_type_script = "uid://c1ivlrrt71nwp" + [node name="Shrink" type="Node" parent="Once On Impact/OnImpact" node_paths=PackedStringArray("target")] script = ExtResource("11_2spjm") animations = SubResource("Resource_ehw2o") diff --git a/DomeFox/Game Objects/Submarine/Submarine.tscn b/DomeFox/Game Objects/Submarine/Submarine.tscn index a97417a..6b00de4 100644 --- a/DomeFox/Game Objects/Submarine/Submarine.tscn +++ b/DomeFox/Game Objects/Submarine/Submarine.tscn @@ -1,6 +1,6 @@ [gd_scene load_steps=8 format=3 uid="uid://c74clrqg1mf47"] -[ext_resource type="PackedScene" uid="uid://c1khime56rk4l" path="res://DomeFox/X/GDScript/Submarine/submarine.gltf" id="1_6xjl7"] +[ext_resource type="PackedScene" uid="uid://c1khime56rk4l" path="res://DomeFox/XYZ/GDScript/Submarine/submarine.gltf" id="1_6xjl7"] [sub_resource type="Shader" id="Shader_3gsdb"] code = " diff --git a/DomeFox/Game Objects/Wall/LowPolyWall-Material.tres b/DomeFox/Game Objects/Wall/LowPolyWall-Material.tres index df0c27c..a49a484 100644 --- a/DomeFox/Game Objects/Wall/LowPolyWall-Material.tres +++ b/DomeFox/Game Objects/Wall/LowPolyWall-Material.tres @@ -87,3 +87,6 @@ shader_parameter/uv1_offset = Vector3(0, 0, 0) shader_parameter/uv2_blend_sharpness = 1.0000000475 shader_parameter/uv2_scale = Vector3(0.001, 0.001, 0.001) shader_parameter/uv2_offset = Vector3(-0.087, 0, 0) +shader_parameter/fadeOffset = 0.1 +shader_parameter/worldCameraLineDistanceFadeInnerRadius = 10.0 +shader_parameter/worldCameraLineDistanceFadeOuterRadius = 50.0 diff --git a/DomeFox/Game Objects/Wall/LowPolyWall-Shader.tres b/DomeFox/Game Objects/Wall/LowPolyWall-Shader.tres index 9548151..60ffd5f 100644 --- a/DomeFox/Game Objects/Wall/LowPolyWall-Shader.tres +++ b/DomeFox/Game Objects/Wall/LowPolyWall-Shader.tres @@ -6,6 +6,8 @@ shader_type spatial; render_mode blend_mix, depth_draw_opaque, cull_disabled, diffuse_burley, specular_schlick_ggx; #include \"res://addons/rokojori_action_library/Runtime/Shading/Library/Transform.gdshaderinc\" +#include \"res://addons/rokojori_action_library/Runtime/Shading/Library/SDF.gdshaderinc\" +#include \"res://addons/rokojori_action_library/Runtime/Shading/Library/Noise.gdshaderinc\" uniform vec4 albedo : source_color; uniform sampler2D albedoGradient : source_color, filter_linear_mipmap, repeat_enable; @@ -44,6 +46,17 @@ varying vec3 uv2_power_normal; uniform vec3 uv2_scale; uniform vec3 uv2_offset; +group_uniforms Fading.LineFading; + +global uniform vec3 playerPosition = vec3( 0.0, 0.0, 0.0); +uniform float fadeOffset = 0.5; +varying vec3 worldCameraLineDistanceFadeViewPosition; +uniform float worldCameraLineDistanceFadeInnerRadius = 0.5; +uniform float worldCameraLineDistanceFadeOuterRadius = 30; + +// [ F A D I N G ] +group_uniforms Fading; + varying float discardValue; varying float wallDestruction; @@ -94,6 +107,9 @@ void vertex() uv2_triplanar_pos = (MODEL_MATRIX * vec4(VERTEX, 1.0)).xyz * uv2_scale + uv2_offset; uv2_power_normal /= dot(uv2_power_normal, vec3(1.0)); uv2_triplanar_pos *= vec3(1.0, -1.0, 1.0); + + worldCameraLineDistanceFadeViewPosition = worldToView( playerPosition, VIEW_MATRIX ); + } vec4 triplanar_texture(sampler2D p_sampler, vec3 p_weights, vec3 p_triplanar_pos) { @@ -116,6 +132,19 @@ void fragment() discard; } + float worldLineDistanceFadeDistance = + sdRoundCone( VERTEX, vec3( 0.0, 0.0, 0.0), worldCameraLineDistanceFadeViewPosition, 0, worldCameraLineDistanceFadeInnerRadius ); + + + float worldLineDistanceFadeAmount = clamp( smoothstep( 0, ( worldCameraLineDistanceFadeOuterRadius - worldCameraLineDistanceFadeInnerRadius ), worldLineDistanceFadeDistance ), 0.0, 1.0 ); + + + if ( ditherDiscard( worldLineDistanceFadeAmount + fadeOffset, FRAGCOORD ) ) + { + discard; + } + + vec4 albedo_tex = triplanar_texture(texture_albedo, uv1_power_normal, uv1_triplanar_pos); ALBEDO = worldAlbedo.rgb * albedo_tex.rgb; diff --git a/DomeFox/Game Objects/Wall/Wall.cs b/DomeFox/Game Objects/Wall/Wall.cs new file mode 100644 index 0000000..7f02ee6 --- /dev/null +++ b/DomeFox/Game Objects/Wall/Wall.cs @@ -0,0 +1,12 @@ +using Godot; +using Rokojori; +using System.Collections.Generic; +using System.Threading.Tasks; + +[Tool, GlobalClass] +public partial class Wall : Node +{ + [Export] + public CollisionShape3D collisionShape3D; +} + diff --git a/DomeFox/Game Objects/Wall/Wall.cs.uid b/DomeFox/Game Objects/Wall/Wall.cs.uid new file mode 100644 index 0000000..2806a01 --- /dev/null +++ b/DomeFox/Game Objects/Wall/Wall.cs.uid @@ -0,0 +1 @@ +uid://drcfv6u34vs61 diff --git a/DomeFox/Game Objects/Wall/Wall.tscn b/DomeFox/Game Objects/Wall/Wall.tscn index ca7482c..aa817b4 100644 --- a/DomeFox/Game Objects/Wall/Wall.tscn +++ b/DomeFox/Game Objects/Wall/Wall.tscn @@ -1,13 +1,10 @@ -[gd_scene load_steps=22 format=3 uid="uid://be3xq8wvk32p8"] +[gd_scene load_steps=15 format=3 uid="uid://be3xq8wvk32p8"] +[ext_resource type="Script" uid="uid://drcfv6u34vs61" path="res://DomeFox/Game Objects/Wall/Wall.cs" id="1_4k145"] [ext_resource type="Script" uid="uid://dbgwebayabwd5" path="res://addons/rokojori_action_library/Runtime/Interactions/Collidable.cs" id="1_d4yus"] [ext_resource type="Resource" uid="uid://ckyvygk7xtnpm" path="res://DomeFox/Game Objects/Wall/Projectile-Collision.tres" id="2_7ycdx"] [ext_resource type="Script" uid="uid://ceaglilesxsi4" path="res://addons/rokojori_action_library/Runtime/Actions/ActionSequence.cs" id="3_auw5h"] -[ext_resource type="Script" uid="uid://dnwqkymbre3vb" path="res://addons/rokojori_action_library/Runtime/Animation/Flash/Flash.cs" id="4_auw5h"] [ext_resource type="Script" uid="uid://dq5kae8x62gre" path="res://addons/rokojori_action_library/Runtime/Actions/RemoveNode.cs" id="4_c5shf"] -[ext_resource type="Script" uid="uid://dncqth3uf3tb3" path="res://addons/rokojori_action_library/Runtime/Animation/HDRColor.cs" id="5_kteqw"] -[ext_resource type="Script" uid="uid://c5tm02yj1bhhx" path="res://addons/rokojori_action_library/Runtime/Animation/AnimationCurve.cs" id="6_tpf5v"] -[ext_resource type="Script" uid="uid://cupnq55n3nimc" path="res://addons/rokojori_action_library/Runtime/Animation/Flash/FlashEffect.cs" id="7_7ycdx"] [ext_resource type="Resource" uid="uid://ch5nsa6yafs5l" path="res://addons/rokojori_action_library/Runtime/Time/TimeLines/GameTime.tres" id="8_04wpl"] [ext_resource type="Script" uid="uid://c7gjkwcuwo17h" path="res://DomeFox/Game Objects/Wall/WallHealth.cs" id="10_0bi28"] [ext_resource type="Script" uid="uid://ddgf2mfdmqywc" path="res://addons/rokojori_action_library/Runtime/Actions/Node3D/PlaySound.cs" id="11_0bi28"] @@ -17,7 +14,8 @@ [ext_resource type="AudioStream" uid="uid://by14wgfo8ateq" path="res://DomeFox/Game Objects/Laser/water-fox-impact.ogg" id="14_7vxi8"] [sub_resource type="BoxShape3D" id="BoxShape3D_dlj2d"] -size = Vector3(30, 170.28778, 2) +resource_local_to_scene = true +size = Vector3(604.6057, 170, 0.2) [sub_resource type="Resource" id="Resource_juwdv"] script = ExtResource("13_73h16") @@ -25,30 +23,13 @@ seconds = 0.1 timeLine = ExtResource("8_04wpl") metadata/_custom_type_script = "uid://ddhwhwos5kkrm" -[sub_resource type="Resource" id="Resource_mqcr4"] -script = ExtResource("5_kteqw") -color = Color(1.0562375, 0.5419403, 0.35492313, 1) -colorMultiply = 1.5 -rgbMultiply = 2.0 - -[sub_resource type="Curve" id="Curve_juwdv"] -_data = [Vector2(0, 1), 0.0, 0.0775112, 0, 0, Vector2(0.61455524, 0), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0442571, 0.0, 0, 0] -point_count = 3 - -[sub_resource type="Resource" id="Resource_iro2o"] -script = ExtResource("6_tpf5v") -duration = 0.3 -curve = SubResource("Curve_juwdv") - -[sub_resource type="Resource" id="Resource_3oj55"] -script = ExtResource("7_7ycdx") -flashCurve = SubResource("Resource_iro2o") -timeline = ExtResource("8_04wpl") -color = SubResource("Resource_mqcr4") -materialMode = 1 - [node name="Wall" type="Node3D"] +[node name="Wall" type="Node" parent="." node_paths=PackedStringArray("collisionShape3D")] +script = ExtResource("1_4k145") +collisionShape3D = NodePath("../StaticBody3D/CollisionShape3D") +metadata/_custom_type_script = "uid://drcfv6u34vs61" + [node name="StaticBody3D" type="StaticBody3D" parent="."] [node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D"] @@ -100,12 +81,6 @@ overdrivePreventionFlag = ExtResource("12_ebsfu") overdrivePreventionDuration = SubResource("Resource_juwdv") metadata/_custom_type_script = "uid://ddgf2mfdmqywc" -[node name="Flash" type="Node" parent="On Hit" node_paths=PackedStringArray("targets")] -script = ExtResource("4_auw5h") -flashEffect = SubResource("Resource_3oj55") -targets = [NodePath("")] -metadata/_custom_type_script = "uid://dnwqkymbre3vb" - [node name="WallHealth" type="Node" parent="." node_paths=PackedStringArray("onHit", "onFinalHit")] script = ExtResource("10_0bi28") onHit = NodePath("../On Hit") diff --git a/DomeFox/Game Objects/Wall/WallCollidable.cs b/DomeFox/Game Objects/Wall/WallCollidable.cs new file mode 100644 index 0000000..b57e619 --- /dev/null +++ b/DomeFox/Game Objects/Wall/WallCollidable.cs @@ -0,0 +1,28 @@ +using Godot; +using System.Collections; +using System.Collections.Generic; + +namespace Rokojori +{ + [Tool] + [GlobalClass] + public partial class WallCollidable: Collidable + { + [Export] + public MeshInstance3D hitMesh; + + [Export] + public CollisionShape3D collisionShape3D; + + protected override void _Collide( Collider collider, CollisionPhase phase ) + { + // var p = Plane3.CreateFromNormalAndCoplanarPoint( collisionShape3D.GlobalForward(), collisionShape3D.GlobalPosition ); + // var closest = p.ClosestPointTo( collider.area.GlobalPosition ); + + // var hit = (MeshInstance3D) this.CreateChildFromDuplicate( hitMesh ); + // hit.GlobalPosition = closest; + // NodeState.Enable( hit ); + + } + } +} \ No newline at end of file diff --git a/DomeFox/Game Objects/Wall/WallCollidable.cs.uid b/DomeFox/Game Objects/Wall/WallCollidable.cs.uid new file mode 100644 index 0000000..a489166 --- /dev/null +++ b/DomeFox/Game Objects/Wall/WallCollidable.cs.uid @@ -0,0 +1 @@ +uid://3y8xs2ii8gu1 diff --git a/DomeFox/Game Objects/Wall/WallShader.gdshader b/DomeFox/Game Objects/Wall/WallShader.gdshader new file mode 100644 index 0000000..8aed46e --- /dev/null +++ b/DomeFox/Game Objects/Wall/WallShader.gdshader @@ -0,0 +1,189 @@ + + +shader_type spatial; + +// Rokojori Shader @alb.382-fad.254-geo.121-met.376-nor.278-occ.376-rou.390-sha.391-spa.20-spa.24-spe.376-tra.402-tra.402-uvm.19: +/* +[ Rokojori.TransparencyModule ] { "alphaScissorTreshold":0.009999999776482582, "blendMode":{"__class__": "Godot.BaseMaterial3D+BlendModeEnum","value__": 0}, "cullMode":{"__class__": "Godot.BaseMaterial3D+CullModeEnum","value__": 0}, "depthDraw":{"__class__": "Godot.BaseMaterial3D+DepthDrawModeEnum","value__": 0}, "noDepthTest":false, "transparency":{"__class__": "Godot.BaseMaterial3D+TransparencyEnum","value__": 0} } +[ Rokojori.ShadingModule ] { "diffuseMode":{"__class__": "Godot.BaseMaterial3D+DiffuseModeEnum","value__": 0}, "disableAmbientLight":false, "disableFog":false, "disableReceivingShadows":false, "shadingMode":{"__class__": "Godot.BaseMaterial3D+ShadingModeEnum","value__": 1}, "shadowToOpacity":false, "specularMode":{"__class__": "Godot.BaseMaterial3D+SpecularModeEnum","value__": 0}, "wireFrameMode":false } +[ Rokojori.UVModule ] { "channels":[] } +[ Rokojori.GeometryModule ] { "modifiers":[{ "__class__": "Rokojori.GeometryTerrainOffset", "sortableCode": true, "uniformGroup": null}] } +[ Rokojori.SpatialVarying ] { "variables":[] } +[ Rokojori.SpatialMasksModule ] { "maskVariables":[] } +[ Rokojori.AlbedoModule ] { "assignmentType":{"__class__": "Rokojori.TextureModule+AssignmentType","value__": 0}, "filter":{"__class__": "Rokojori.TextureModule+TextureFilter","value__": 5}, "overlayLayers":[], "repeat":true, "srgb":true, "textureDefault":{"__class__": "Rokojori.TextureModule+TextureDefault","value__": 0}, "tintVarying":"", "useTint":true, "uvChannel":"UV", "writeAlpha":false } +[ Rokojori.TransparencyModule ] { "alphaScissorTreshold":0.009999999776482582, "blendMode":{"__class__": "Godot.BaseMaterial3D+BlendModeEnum","value__": 0}, "cullMode":{"__class__": "Godot.BaseMaterial3D+CullModeEnum","value__": 0}, "depthDraw":{"__class__": "Godot.BaseMaterial3D+DepthDrawModeEnum","value__": 0}, "noDepthTest":false, "transparency":{"__class__": "Godot.BaseMaterial3D+TransparencyEnum","value__": 0} } +[ Rokojori.FadingModule ] { "alphaFadeMode":{"__class__": "Rokojori.AlphaFadeMode","value__": 2}, "fadingModifiers":[{ "__class__": "Rokojori.LineFading", "mode": 1, "alphaFadeMode": 0, "createUniformGroup": true, "sortableCode": true, "uniformGroup": null}] } +[ Rokojori.NormalMapModule ] { "allowNegativeStrength":false, "filter":{"__class__": "Rokojori.TextureModule+TextureFilter","value__": 5}, "maximumStrength":5, "repeat":true, "textureDefault":{"__class__": "Rokojori.TextureModule+TextureDefault","value__": 0}, "useStrength":true, "uvChannel":"UV" } +[ Rokojori.OcclusionModule ] { "assignmentType":{"__class__": "Rokojori.TextureModule+AssignmentType","value__": 0}, "domainMode":{"__class__": "Rokojori.TextureModule+DomainMode","value__": 3}, "filter":{"__class__": "Rokojori.TextureModule+TextureFilter","value__": 5}, "repeat":true, "textureDefault":{"__class__": "Rokojori.TextureModule+TextureDefault","value__": 0}, "uvChannel":"UV" } +[ Rokojori.RoughnessModule ] { "assignmentType":{"__class__": "Rokojori.TextureModule+AssignmentType","value__": 0}, "clamp":true, "domainMode":{"__class__": "Rokojori.TextureModule+DomainMode","value__": 3}, "filter":{"__class__": "Rokojori.TextureModule+TextureFilter","value__": 5}, "repeat":true, "textureDefault":{"__class__": "Rokojori.TextureModule+TextureDefault","value__": 0}, "uvChannel":"UV" } +[ Rokojori.MetallicModule ] { "assignmentType":{"__class__": "Rokojori.TextureModule+AssignmentType","value__": 0}, "domainMode":{"__class__": "Rokojori.TextureModule+DomainMode","value__": 3}, "filter":{"__class__": "Rokojori.TextureModule+TextureFilter","value__": 5}, "repeat":true, "textureDefault":{"__class__": "Rokojori.TextureModule+TextureDefault","value__": 0}, "uvChannel":"UV" } +[ Rokojori.SpecularModule ] { "assignmentType":{"__class__": "Rokojori.TextureModule+AssignmentType","value__": 0}, "domainMode":{"__class__": "Rokojori.TextureModule+DomainMode","value__": 0}, "filter":{"__class__": "Rokojori.TextureModule+TextureFilter","value__": 5}, "repeat":true, "textureDefault":{"__class__": "Rokojori.TextureModule+TextureDefault","value__": 0}, "uvChannel":"UV" } +*/ + +render_mode blend_mix, cull_back, depth_draw_opaque, diffuse_burley, specular_schlick_ggx; + +#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Terrain.gdshaderinc" +#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Noise.gdshaderinc" +#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Transform.gdshaderinc" +#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Line3.gdshaderinc" +#include "res://addons/rokojori_action_library/Runtime/Shading/Library/SDF.gdshaderinc" +#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Math.gdshaderinc" + +// [ G E O M E T R Y . T E R R A I N ] +group_uniforms Geometry.Terrain; + + +uniform sampler2D terrainHeightMap; +uniform vec2 terrainCenterXZ = vec2( 0.0, 0.0 ); +uniform vec2 terrainSizeXZ = vec2( 100.0, 100.0 ); +uniform float terrainMinHeight = 0.0; +uniform float terrainMaxHeight = 100.0; + + + + +// [ A L B E D O ] +group_uniforms albedo; + +uniform vec4 albedo:source_color = vec4( 1.0, 1.0, 1.0, 1.0); +uniform sampler2D albedoTexture:source_color, hint_default_white, repeat_enable, filter_linear_mipmap_anisotropic; + + + +// [ F A D I N G ] +group_uniforms Fading; + + + + +// [ F A D I N G . L I N E F A D I N G ] +group_uniforms Fading.LineFading; + +uniform vec3 worldCameraLineDistanceFadeWorldPosition = vec3( 0.0, 0.0, 0.0); +varying vec3 worldCameraLineDistanceFadeViewPosition; +uniform float worldCameraLineDistanceFadeInnerRadius = 0.10000000149011612; +uniform float worldCameraLineDistanceFadeOuterRadius = 0.15000000596046448; + + + + + +// [ F A D I N G ] +group_uniforms Fading; + + + + + + +// [ N O R M A L ] +group_uniforms normal; + +uniform float normalStrength:hint_range( 0.0, 5.0) = 1.0; +uniform sampler2D normalTexture:hint_normal, repeat_enable, filter_linear_mipmap_anisotropic; + + + +// [ O C C L U S I O N ] +group_uniforms occlusion; + +uniform float occlusion:hint_range( 0.0, 1.0) = 1.0; + +uniform float occlusionOffset:hint_range( -1.0, 1.0) = 0.0; +uniform sampler2D occlusionTexture:hint_default_white, repeat_enable, filter_linear_mipmap_anisotropic; + + + +// [ R O U G H N E S S ] +group_uniforms roughness; + +uniform float roughness:hint_range( 0.0, 1.0) = 1.0; + +uniform float roughnessOffset:hint_range( -1.0, 1.0) = 0.0; +uniform sampler2D roughnessTexture:hint_default_white, repeat_enable, filter_linear_mipmap_anisotropic; + + + +// [ M E T A L L I C ] +group_uniforms metallic; + +uniform float metallic:hint_range( 0.0, 1.0) = 0.0; + +uniform float metallicOffset:hint_range( -1.0, 1.0) = 0.0; +uniform sampler2D metallicTexture:hint_default_white, repeat_enable, filter_linear_mipmap_anisotropic; + + + +// [ S P E C U L A R ] +group_uniforms specular; + +uniform float specular:hint_range( 0.0, 1.0) = 0.5; + + + +void vertex() +{ + + + + // [ T E R R A I N ] + + + addTerrainOffset( + MODEL_MATRIX, + VERTEX, + terrainHeightMap, + terrainCenterXZ, + terrainSizeXZ, + terrainMinHeight, + terrainMaxHeight + ); + + + + + + worldCameraLineDistanceFadeViewPosition = worldToView( worldCameraLineDistanceFadeWorldPosition, VIEW_MATRIX ); + + +} + +void fragment() +{ + + vec4 sampledAlbedo = texture( albedoTexture, UV ); + ALBEDO = sampledAlbedo.rgb * albedo.rgb; + + + + { + + float worldLineDistanceFadeDistance = sdRoundCone( VERTEX, vec3( 0.0, 0.0, 0.0), worldCameraLineDistanceFadeViewPosition, 0, worldCameraLineDistanceFadeInnerRadius ); + + + float worldLineDistanceFadeAmount = clamp( smoothstep( 0, ( worldCameraLineDistanceFadeOuterRadius - worldCameraLineDistanceFadeInnerRadius ), worldLineDistanceFadeDistance ), 0.0, 1.0 ); + + + if ( ditherDiscard( worldLineDistanceFadeAmount, FRAGCOORD ) ) + { + discard; + } + + + } + vec4 sampledNormal = texture( normalTexture, UV ); + NORMAL_MAP = sampledNormal.rgb; + NORMAL_MAP_DEPTH = normalStrength; + + vec4 sampledOcclusion = texture( occlusionTexture, UV ); + AO = sampledOcclusion.r * occlusion + occlusionOffset; + + vec4 sampledRoughness = texture( roughnessTexture, UV ); + ROUGHNESS = sampledRoughness.g * roughness + roughnessOffset; + ROUGHNESS = clamp01( ROUGHNESS ); + + vec4 sampledMetallic = texture( metallicTexture, UV ); + METALLIC = sampledMetallic.b * metallic + metallicOffset; + + +} diff --git a/DomeFox/Game Objects/Wall/WallShader.gdshader.uid b/DomeFox/Game Objects/Wall/WallShader.gdshader.uid new file mode 100644 index 0000000..4f03215 --- /dev/null +++ b/DomeFox/Game Objects/Wall/WallShader.gdshader.uid @@ -0,0 +1 @@ +uid://dsb7yxwp7xw2e diff --git a/DomeFox/Game/DomeFoxGame.cs b/DomeFox/Game/DomeFoxGame.cs index 1ced7a5..4369cd9 100644 --- a/DomeFox/Game/DomeFoxGame.cs +++ b/DomeFox/Game/DomeFoxGame.cs @@ -9,10 +9,20 @@ public partial class DomeFoxGame : Node [Export] public int crystals = 0; + [Export] + public bool paused = false; + + public void AddCrystal() { crystals ++; Unique.Get().crystalCounter.locale = LocaleText.Create( crystals + "" ); } + + + public void TogglePause() + { + paused = ! paused; + } } \ No newline at end of file diff --git a/DomeFox/Graphics/PostProcessingHack.cs b/DomeFox/Graphics/PostProcessingHack.cs new file mode 100644 index 0000000..e7bb770 --- /dev/null +++ b/DomeFox/Graphics/PostProcessingHack.cs @@ -0,0 +1,29 @@ +using Godot; +using Rokojori; +using System.Collections.Generic; +using System.Threading.Tasks; + +[Tool, GlobalClass] +public partial class PostProcessingHack : Action +{ + [Export] + public CompositorEffect[] compositorEffects; + + [Export] + public WorldEnvironment environment; + + + protected override void _OnTrigger() + { + + var godotArray = new Godot.Collections.Array(); + + for ( int i = 0; i < compositorEffects.Length; i++ ) + { + godotArray.Add( (CompositorEffect) compositorEffects[ i ].Duplicate() ); + } + + environment.Compositor.CompositorEffects = godotArray; + } + +} diff --git a/DomeFox/Graphics/PostProcessingHack.cs.uid b/DomeFox/Graphics/PostProcessingHack.cs.uid new file mode 100644 index 0000000..cd2d721 --- /dev/null +++ b/DomeFox/Graphics/PostProcessingHack.cs.uid @@ -0,0 +1 @@ +uid://efhpaj7sfbcr diff --git a/DomeFox/Level/LevelGenerator.cs b/DomeFox/Level/LevelGenerator.cs index e40535d..48f6de3 100644 --- a/DomeFox/Level/LevelGenerator.cs +++ b/DomeFox/Level/LevelGenerator.cs @@ -68,7 +68,7 @@ public partial class LevelGenerator : Action var boundaryPointSize = Circle.WithRadius( maxRadius ).circumference / boundaryDensity; - this.LogInfo( "Num Boundary Points", boundaryPointSize ); + // this.LogInfo( "Num Boundary Points", boundaryPointSize ); for ( int i = 0; i < boundaryPointSize; i++ ) { @@ -170,12 +170,13 @@ public partial class LevelGenerator : Action return rooms[ index ].room; } - public override void _Ready() - { - this.LogInfo( "Ready", this.walls.Length ); - InitializeWalls(); - } + // public override void _Ready() + // { + // this.LogInfo( "Ready", this.walls.Length ); + + // InitializeWalls(); + // } async Task InitializeWalls() { @@ -218,13 +219,19 @@ public partial class LevelGenerator : Action var numWalls = length / wallSize; var wallObject = this.CreateChild( wall, "Wall " + wallIndex ); + + var wallNode = wallObject.Get(); wallObject.GlobalPosition = center; wallObject.SetGlobalYaw( yaw + Mathf.Pi * 0.5f ); - wallObject.Scale = new Vector3( numWalls, 1, 1 ); + + var boxShape = wallNode.collisionShape3D.Shape as BoxShape3D; + boxShape.Size = new Vector3( length, 170, 0.2f ); + + // wallObject.Scale = new Vector3( numWalls, 1, 1 ); var setTexturesAttributes= wallObject.GetAll(); - this.LogInfo( "Num walls:", setTexturesAttributes.Count ); + // this.LogInfo( "Num walls:", setTexturesAttributes.Count ); setTexturesAttributes.ForEach( ( st )=> @@ -232,7 +239,7 @@ public partial class LevelGenerator : Action st.index = wallIndex; st.textureAttributes = textureAttributes; - this.LogInfo( "Set Index:", st.index, HierarchyName.Of( st ) ); + // this.LogInfo( "Set Index:", st.index, HierarchyName.Of( st ) ); } ); diff --git a/DomeFox/Player/Player-DamagableData.tres b/DomeFox/Player/Player-DamagableData.tres new file mode 100644 index 0000000..09ea6c0 --- /dev/null +++ b/DomeFox/Player/Player-DamagableData.tres @@ -0,0 +1,7 @@ +[gd_resource type="Resource" script_class="DamagableData" load_steps=2 format=3 uid="uid://bbnik8um7y2xe"] + +[ext_resource type="Script" uid="uid://d0x8co6nm8koo" path="res://DomeFox/Game Objects/Health/DamagableData.cs" id="1_8gphl"] + +[resource] +script = ExtResource("1_8gphl") +metadata/_custom_type_script = "uid://d0x8co6nm8koo" diff --git a/DomeFox/Player/Player-Health-Data.tres b/DomeFox/Player/Player-Health-Data.tres new file mode 100644 index 0000000..fbfe7a1 --- /dev/null +++ b/DomeFox/Player/Player-Health-Data.tres @@ -0,0 +1,7 @@ +[gd_resource type="Resource" script_class="HealthData" load_steps=2 format=3 uid="uid://ckith6bwr51uc"] + +[ext_resource type="Script" uid="uid://w5l6csc2p364" path="res://DomeFox/Game Objects/Health/HealthData.cs" id="1_k7yae"] + +[resource] +script = ExtResource("1_k7yae") +metadata/_custom_type_script = "uid://w5l6csc2p364" diff --git a/DomeFox/Player/Player.cs b/DomeFox/Player/Player.cs new file mode 100644 index 0000000..4bc868e --- /dev/null +++ b/DomeFox/Player/Player.cs @@ -0,0 +1,19 @@ +using Godot; +using Rokojori; +using System.Collections.Generic; +using System.Threading.Tasks; + +[Tool, GlobalClass] +public partial class Player : Node +{ + [Export] + public Node3D transform; + + [Export] + public Vector3Property playerPosition; + + public override void _Process( double delta ) + { + playerPosition.value = transform.GlobalPosition; + } +} \ No newline at end of file diff --git a/DomeFox/Player/Player.cs.uid b/DomeFox/Player/Player.cs.uid new file mode 100644 index 0000000..89b0d92 --- /dev/null +++ b/DomeFox/Player/Player.cs.uid @@ -0,0 +1 @@ +uid://lcmgq0fr5fgs diff --git a/DomeFox/Player/PlayerCollision.tres b/DomeFox/Player/PlayerCollision.tres new file mode 100644 index 0000000..524f749 --- /dev/null +++ b/DomeFox/Player/PlayerCollision.tres @@ -0,0 +1,7 @@ +[gd_resource type="Resource" script_class="CollisionFlag" load_steps=2 format=3 uid="uid://dw7wtapaqufxu"] + +[ext_resource type="Script" uid="uid://crk6vntm10let" path="res://addons/rokojori_action_library/Runtime/Interactions/CollisionFlag.cs" id="1_nrk5x"] + +[resource] +script = ExtResource("1_nrk5x") +metadata/_custom_type_script = "uid://crk6vntm10let" diff --git a/DomeFox/Player/PlayerPosition-Vector3ShaderProperty.tres b/DomeFox/Player/PlayerPosition-Vector3ShaderProperty.tres new file mode 100644 index 0000000..410780f --- /dev/null +++ b/DomeFox/Player/PlayerPosition-Vector3ShaderProperty.tres @@ -0,0 +1,14 @@ +[gd_resource type="Resource" script_class="Vector3Property" load_steps=4 format=3 uid="uid://7flbr6w8tfkk"] + +[ext_resource type="Script" uid="uid://rukdqg1uo30" path="res://addons/rokojori_action_library/Runtime/Shading/Properties/Vector3PropertyName.cs" id="1_o2sqd"] +[ext_resource type="Script" uid="uid://bhq3wuoierkuq" path="res://addons/rokojori_action_library/Runtime/Shading/Properties/Properties/Vector3Property.cs" id="2_1jd0m"] + +[sub_resource type="Resource" id="Resource_1m6i4"] +script = ExtResource("1_o2sqd") +propertyName = "playerPosition" +metadata/_custom_type_script = "uid://rukdqg1uo30" + +[resource] +script = ExtResource("2_1jd0m") +propertyName = SubResource("Resource_1m6i4") +metadata/_custom_type_script = "uid://bhq3wuoierkuq" diff --git a/DomeFox/Player/PlayerSight.cs b/DomeFox/Player/PlayerSight.cs new file mode 100644 index 0000000..dbfd10f --- /dev/null +++ b/DomeFox/Player/PlayerSight.cs @@ -0,0 +1,11 @@ +using Godot; +using Rokojori; +using System.Collections.Generic; +using System.Threading.Tasks; + +[Tool, GlobalClass] +public partial class PlayerSight : Node +{ + [Export] + public bool visible = false; +} \ No newline at end of file diff --git a/DomeFox/Player/PlayerSight.cs.uid b/DomeFox/Player/PlayerSight.cs.uid new file mode 100644 index 0000000..cec8303 --- /dev/null +++ b/DomeFox/Player/PlayerSight.cs.uid @@ -0,0 +1 @@ +uid://ck22blkf6u3vx diff --git a/DomeFox/Player/SetPlayerSight.cs b/DomeFox/Player/SetPlayerSight.cs new file mode 100644 index 0000000..6dd7481 --- /dev/null +++ b/DomeFox/Player/SetPlayerSight.cs @@ -0,0 +1,19 @@ +using Godot; +using Rokojori; +using System.Collections.Generic; +using System.Threading.Tasks; + +[Tool, GlobalClass] +public partial class SetPlayerSight : Action +{ + [Export] + public PlayerSight playerSight; + + [Export] + public bool visible; + + protected override void _OnTrigger() + { + playerSight.visible = visible; + } +} \ No newline at end of file diff --git a/DomeFox/Player/SetPlayerSight.cs.uid b/DomeFox/Player/SetPlayerSight.cs.uid new file mode 100644 index 0000000..59559b1 --- /dev/null +++ b/DomeFox/Player/SetPlayerSight.cs.uid @@ -0,0 +1 @@ +uid://bfdpav4wcws7s diff --git a/DomeFox/Player/sound-fx/player-hit-damage.flp b/DomeFox/Player/sound-fx/player-hit-damage.flp new file mode 100644 index 0000000..b111dd2 Binary files /dev/null and b/DomeFox/Player/sound-fx/player-hit-damage.flp differ diff --git a/DomeFox/Player/sound-fx/player-hit-damage.mp3 b/DomeFox/Player/sound-fx/player-hit-damage.mp3 new file mode 100644 index 0000000..f9f4d03 Binary files /dev/null and b/DomeFox/Player/sound-fx/player-hit-damage.mp3 differ diff --git a/DomeFox/Player/sound-fx/player-hit-damage.mp3.import b/DomeFox/Player/sound-fx/player-hit-damage.mp3.import new file mode 100644 index 0000000..4d77f61 --- /dev/null +++ b/DomeFox/Player/sound-fx/player-hit-damage.mp3.import @@ -0,0 +1,19 @@ +[remap] + +importer="mp3" +type="AudioStreamMP3" +uid="uid://ckb6stpf5454h" +path="res://.godot/imported/player-hit-damage.mp3-5415da2fe94d2dfe3c918ec86886861c.mp3str" + +[deps] + +source_file="res://DomeFox/Player/sound-fx/player-hit-damage.mp3" +dest_files=["res://.godot/imported/player-hit-damage.mp3-5415da2fe94d2dfe3c918ec86886861c.mp3str"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/DomeFox/Player/sound-fx/player-hit-damage.ogg b/DomeFox/Player/sound-fx/player-hit-damage.ogg new file mode 100644 index 0000000..84c7ef5 Binary files /dev/null and b/DomeFox/Player/sound-fx/player-hit-damage.ogg differ diff --git a/DomeFox/Player/sound-fx/player-hit-damage.ogg.import b/DomeFox/Player/sound-fx/player-hit-damage.ogg.import new file mode 100644 index 0000000..4a59ce0 --- /dev/null +++ b/DomeFox/Player/sound-fx/player-hit-damage.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://5g5yqhw3tuj8" +path="res://.godot/imported/player-hit-damage.ogg-4cb25fc1a7b56f6495fdbb2954baf53a.oggvorbisstr" + +[deps] + +source_file="res://DomeFox/Player/sound-fx/player-hit-damage.ogg" +dest_files=["res://.godot/imported/player-hit-damage.ogg-4cb25fc1a7b56f6495fdbb2954baf53a.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/DomeFox/Player/sound-fx/player-hit-damage.wav b/DomeFox/Player/sound-fx/player-hit-damage.wav new file mode 100644 index 0000000..b985375 Binary files /dev/null and b/DomeFox/Player/sound-fx/player-hit-damage.wav differ diff --git a/DomeFox/Player/sound-fx/player-hit-damage.wav.import b/DomeFox/Player/sound-fx/player-hit-damage.wav.import new file mode 100644 index 0000000..8044d9b --- /dev/null +++ b/DomeFox/Player/sound-fx/player-hit-damage.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://biivekpfjgiki" +path="res://.godot/imported/player-hit-damage.wav-a737d7949ad73e49b04c0bca42a9d26b.sample" + +[deps] + +source_file="res://DomeFox/Player/sound-fx/player-hit-damage.wav" +dest_files=["res://.godot/imported/player-hit-damage.wav-a737d7949ad73e49b04c0bca42a9d26b.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/DomeFox/UI/DomeFoxGameUI.cs b/DomeFox/UI/DomeFoxGameUI.cs index 14b97e3..ed2b80e 100644 --- a/DomeFox/UI/DomeFoxGameUI.cs +++ b/DomeFox/UI/DomeFoxGameUI.cs @@ -4,10 +4,20 @@ using System.Collections.Generic; using System.Threading.Tasks; [Tool, GlobalClass, Icon( "res://icon.svg" )] -public partial class DomeFoxGameUI: Node +public partial class DomeFoxGameUI: Node, iOnInputSensor { [Export] public UIText crystalCounter; + [Export] + public Sensor pauseButton; + + public override void _Input( InputEvent inputEvent ) + { + if ( pauseButton != null && pauseButton.isDown ) + { + Unique.Get().TogglePause(); + } + } } \ No newline at end of file diff --git a/DomeFox/UI/Fonts/Dosis/Dosis-VariableFont_wght.ttf b/DomeFox/UI/Fonts/Dosis/Dosis-VariableFont_wght.ttf new file mode 100644 index 0000000..78af21c Binary files /dev/null and b/DomeFox/UI/Fonts/Dosis/Dosis-VariableFont_wght.ttf differ diff --git a/DomeFox/UI/Fonts/Dosis/Dosis-VariableFont_wght.ttf.import b/DomeFox/UI/Fonts/Dosis/Dosis-VariableFont_wght.ttf.import new file mode 100644 index 0000000..5f023af --- /dev/null +++ b/DomeFox/UI/Fonts/Dosis/Dosis-VariableFont_wght.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://nnhy5dv8k0nr" +path="res://.godot/imported/Dosis-VariableFont_wght.ttf-761c350cf1036bf5681c0a736df7709c.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Dosis/Dosis-VariableFont_wght.ttf" +dest_files=["res://.godot/imported/Dosis-VariableFont_wght.ttf-761c350cf1036bf5681c0a736df7709c.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Dosis/OFL.txt b/DomeFox/UI/Fonts/Dosis/OFL.txt new file mode 100644 index 0000000..35a7281 --- /dev/null +++ b/DomeFox/UI/Fonts/Dosis/OFL.txt @@ -0,0 +1,95 @@ +Copyright (c) 2011, Edgar Tolentino and Pablo Impallari (www.impallari.com|impallari@gmail.com), +Copyright (c) 2011, Igino Marini. (www.ikern.com|mail@iginomarini.com), +with Reserved Font Names "Dosis". + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/DomeFox/UI/Fonts/Dosis/README.txt b/DomeFox/UI/Fonts/Dosis/README.txt new file mode 100644 index 0000000..76015bf --- /dev/null +++ b/DomeFox/UI/Fonts/Dosis/README.txt @@ -0,0 +1,69 @@ +Dosis Variable Font +=================== + +This download contains Dosis as both a variable font and static fonts. + +Dosis is a variable font with this axis: + wght + +This means all the styles are contained in a single file: + Dosis-VariableFont_wght.ttf + +If your app fully supports variable fonts, you can now pick intermediate styles +that aren’t available as static fonts. Not all apps support variable fonts, and +in those cases you can use the static font files for Dosis: + static/Dosis-ExtraLight.ttf + static/Dosis-Light.ttf + static/Dosis-Regular.ttf + static/Dosis-Medium.ttf + static/Dosis-SemiBold.ttf + static/Dosis-Bold.ttf + static/Dosis-ExtraBold.ttf + +Get started +----------- + +1. Install the font files you want to use + +2. Use your app's font picker to view the font family and all the +available styles + +Learn more about variable fonts +------------------------------- + + https://developers.google.com/web/fundamentals/design-and-ux/typography/variable-fonts + https://variablefonts.typenetwork.com + https://medium.com/variable-fonts + +In desktop apps + + https://theblog.adobe.com/can-variable-fonts-illustrator-cc + https://helpx.adobe.com/nz/photoshop/using/fonts.html#variable_fonts + +Online + + https://developers.google.com/fonts/docs/getting_started + https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Fonts/Variable_Fonts_Guide + https://developer.microsoft.com/en-us/microsoft-edge/testdrive/demos/variable-fonts + +Installing fonts + + MacOS: https://support.apple.com/en-us/HT201749 + Linux: https://www.google.com/search?q=how+to+install+a+font+on+gnu%2Blinux + Windows: https://support.microsoft.com/en-us/help/314960/how-to-install-or-remove-a-font-in-windows + +Android Apps + + https://developers.google.com/fonts/docs/android + https://developer.android.com/guide/topics/ui/look-and-feel/downloadable-fonts + +License +------- +Please read the full license text (OFL.txt) to understand the permissions, +restrictions and requirements for usage, redistribution, and modification. + +You can use them freely in your products & projects - print or digital, +commercial or otherwise. However, you can't sell the fonts on their own. + +This isn't legal advice, please consider consulting a lawyer and see the full +license for all details. diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-Bold.ttf b/DomeFox/UI/Fonts/Dosis/static/Dosis-Bold.ttf new file mode 100644 index 0000000..f54363f Binary files /dev/null and b/DomeFox/UI/Fonts/Dosis/static/Dosis-Bold.ttf differ diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-Bold.ttf.import b/DomeFox/UI/Fonts/Dosis/static/Dosis-Bold.ttf.import new file mode 100644 index 0000000..da4128b --- /dev/null +++ b/DomeFox/UI/Fonts/Dosis/static/Dosis-Bold.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://qxtia86uqxaf" +path="res://.godot/imported/Dosis-Bold.ttf-fb6afb137596a8b31355ba4be319dd7a.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Dosis/static/Dosis-Bold.ttf" +dest_files=["res://.godot/imported/Dosis-Bold.ttf-fb6afb137596a8b31355ba4be319dd7a.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraBold.ttf b/DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraBold.ttf new file mode 100644 index 0000000..918c7be Binary files /dev/null and b/DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraBold.ttf differ diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraBold.ttf.import b/DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraBold.ttf.import new file mode 100644 index 0000000..84bab21 --- /dev/null +++ b/DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraBold.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://mchosbipx5u0" +path="res://.godot/imported/Dosis-ExtraBold.ttf-22e160e2f4bc29bdc81150751e6ef580.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraBold.ttf" +dest_files=["res://.godot/imported/Dosis-ExtraBold.ttf-22e160e2f4bc29bdc81150751e6ef580.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraLight.ttf b/DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraLight.ttf new file mode 100644 index 0000000..b47296d Binary files /dev/null and b/DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraLight.ttf differ diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraLight.ttf.import b/DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraLight.ttf.import new file mode 100644 index 0000000..2896c3f --- /dev/null +++ b/DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraLight.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://ipwtoloeiipu" +path="res://.godot/imported/Dosis-ExtraLight.ttf-d7d3be391ab8bd215ce84da5f8318cac.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Dosis/static/Dosis-ExtraLight.ttf" +dest_files=["res://.godot/imported/Dosis-ExtraLight.ttf-d7d3be391ab8bd215ce84da5f8318cac.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-Light.ttf b/DomeFox/UI/Fonts/Dosis/static/Dosis-Light.ttf new file mode 100644 index 0000000..1cf3815 Binary files /dev/null and b/DomeFox/UI/Fonts/Dosis/static/Dosis-Light.ttf differ diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-Light.ttf.import b/DomeFox/UI/Fonts/Dosis/static/Dosis-Light.ttf.import new file mode 100644 index 0000000..debcd82 --- /dev/null +++ b/DomeFox/UI/Fonts/Dosis/static/Dosis-Light.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://c4ox3ptqqmin8" +path="res://.godot/imported/Dosis-Light.ttf-973cccac501150b9f1d18cd98b3d4922.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Dosis/static/Dosis-Light.ttf" +dest_files=["res://.godot/imported/Dosis-Light.ttf-973cccac501150b9f1d18cd98b3d4922.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-Medium.ttf b/DomeFox/UI/Fonts/Dosis/static/Dosis-Medium.ttf new file mode 100644 index 0000000..9c59a5a Binary files /dev/null and b/DomeFox/UI/Fonts/Dosis/static/Dosis-Medium.ttf differ diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-Medium.ttf.import b/DomeFox/UI/Fonts/Dosis/static/Dosis-Medium.ttf.import new file mode 100644 index 0000000..6591b44 --- /dev/null +++ b/DomeFox/UI/Fonts/Dosis/static/Dosis-Medium.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://b0eaevxyhkxb0" +path="res://.godot/imported/Dosis-Medium.ttf-663c2a5381747149b2019d81b325b3b7.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Dosis/static/Dosis-Medium.ttf" +dest_files=["res://.godot/imported/Dosis-Medium.ttf-663c2a5381747149b2019d81b325b3b7.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-Regular.ttf b/DomeFox/UI/Fonts/Dosis/static/Dosis-Regular.ttf new file mode 100644 index 0000000..0e6c3bb Binary files /dev/null and b/DomeFox/UI/Fonts/Dosis/static/Dosis-Regular.ttf differ diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-Regular.ttf.import b/DomeFox/UI/Fonts/Dosis/static/Dosis-Regular.ttf.import new file mode 100644 index 0000000..bd9276d --- /dev/null +++ b/DomeFox/UI/Fonts/Dosis/static/Dosis-Regular.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://cdq0f1h52alq0" +path="res://.godot/imported/Dosis-Regular.ttf-e25730957d6c39490581749250dff134.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Dosis/static/Dosis-Regular.ttf" +dest_files=["res://.godot/imported/Dosis-Regular.ttf-e25730957d6c39490581749250dff134.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-SemiBold.ttf b/DomeFox/UI/Fonts/Dosis/static/Dosis-SemiBold.ttf new file mode 100644 index 0000000..22c31f6 Binary files /dev/null and b/DomeFox/UI/Fonts/Dosis/static/Dosis-SemiBold.ttf differ diff --git a/DomeFox/UI/Fonts/Dosis/static/Dosis-SemiBold.ttf.import b/DomeFox/UI/Fonts/Dosis/static/Dosis-SemiBold.ttf.import new file mode 100644 index 0000000..7196c44 --- /dev/null +++ b/DomeFox/UI/Fonts/Dosis/static/Dosis-SemiBold.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://brwyso7p5joyv" +path="res://.godot/imported/Dosis-SemiBold.ttf-27b985511b7e12708719b5f9fa1d022e.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Dosis/static/Dosis-SemiBold.ttf" +dest_files=["res://.godot/imported/Dosis-SemiBold.ttf-27b985511b7e12708719b5f9fa1d022e.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Electrolize/Electrolize-Regular.ttf b/DomeFox/UI/Fonts/Electrolize/Electrolize-Regular.ttf new file mode 100644 index 0000000..f1b9fba Binary files /dev/null and b/DomeFox/UI/Fonts/Electrolize/Electrolize-Regular.ttf differ diff --git a/DomeFox/UI/Fonts/Electrolize/Electrolize-Regular.ttf.import b/DomeFox/UI/Fonts/Electrolize/Electrolize-Regular.ttf.import new file mode 100644 index 0000000..276dffc --- /dev/null +++ b/DomeFox/UI/Fonts/Electrolize/Electrolize-Regular.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://dgk2uqw4d0g0h" +path="res://.godot/imported/Electrolize-Regular.ttf-eeed3fc61e622df1e66c19c882fd2157.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Electrolize/Electrolize-Regular.ttf" +dest_files=["res://.godot/imported/Electrolize-Regular.ttf-eeed3fc61e622df1e66c19c882fd2157.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Electrolize/OFL.txt b/DomeFox/UI/Fonts/Electrolize/OFL.txt new file mode 100644 index 0000000..9b03bff --- /dev/null +++ b/DomeFox/UI/Fonts/Electrolize/OFL.txt @@ -0,0 +1,94 @@ +Copyright (c) 2011, Cyreal (www.cyreal.org), +with Reserved Font Name "Electrolize". + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +https://openfontlicense.org + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/DomeFox/UI/Fonts/Manrope/Manrope-VariableFont_wght.ttf b/DomeFox/UI/Fonts/Manrope/Manrope-VariableFont_wght.ttf new file mode 100644 index 0000000..3610d72 Binary files /dev/null and b/DomeFox/UI/Fonts/Manrope/Manrope-VariableFont_wght.ttf differ diff --git a/DomeFox/UI/Fonts/Manrope/Manrope-VariableFont_wght.ttf.import b/DomeFox/UI/Fonts/Manrope/Manrope-VariableFont_wght.ttf.import new file mode 100644 index 0000000..84bc5b8 --- /dev/null +++ b/DomeFox/UI/Fonts/Manrope/Manrope-VariableFont_wght.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://popmo3yte7t4" +path="res://.godot/imported/Manrope-VariableFont_wght.ttf-67c9610178715d486236b9d97fb97222.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Manrope/Manrope-VariableFont_wght.ttf" +dest_files=["res://.godot/imported/Manrope-VariableFont_wght.ttf-67c9610178715d486236b9d97fb97222.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Manrope/OFL.txt b/DomeFox/UI/Fonts/Manrope/OFL.txt new file mode 100644 index 0000000..0bc44ac --- /dev/null +++ b/DomeFox/UI/Fonts/Manrope/OFL.txt @@ -0,0 +1,93 @@ +Copyright 2020 The Manrope Project Authors (https://github.com/sharanda/manrope) + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/DomeFox/UI/Fonts/Manrope/README.txt b/DomeFox/UI/Fonts/Manrope/README.txt new file mode 100644 index 0000000..55ed206 --- /dev/null +++ b/DomeFox/UI/Fonts/Manrope/README.txt @@ -0,0 +1,69 @@ +Manrope Variable Font +===================== + +This download contains Manrope as both a variable font and static fonts. + +Manrope is a variable font with this axis: + wght + +This means all the styles are contained in a single file: + Manrope-VariableFont_wght.ttf + +If your app fully supports variable fonts, you can now pick intermediate styles +that aren’t available as static fonts. Not all apps support variable fonts, and +in those cases you can use the static font files for Manrope: + static/Manrope-ExtraLight.ttf + static/Manrope-Light.ttf + static/Manrope-Regular.ttf + static/Manrope-Medium.ttf + static/Manrope-SemiBold.ttf + static/Manrope-Bold.ttf + static/Manrope-ExtraBold.ttf + +Get started +----------- + +1. Install the font files you want to use + +2. Use your app's font picker to view the font family and all the +available styles + +Learn more about variable fonts +------------------------------- + + https://developers.google.com/web/fundamentals/design-and-ux/typography/variable-fonts + https://variablefonts.typenetwork.com + https://medium.com/variable-fonts + +In desktop apps + + https://theblog.adobe.com/can-variable-fonts-illustrator-cc + https://helpx.adobe.com/nz/photoshop/using/fonts.html#variable_fonts + +Online + + https://developers.google.com/fonts/docs/getting_started + https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Fonts/Variable_Fonts_Guide + https://developer.microsoft.com/en-us/microsoft-edge/testdrive/demos/variable-fonts + +Installing fonts + + MacOS: https://support.apple.com/en-us/HT201749 + Linux: https://www.google.com/search?q=how+to+install+a+font+on+gnu%2Blinux + Windows: https://support.microsoft.com/en-us/help/314960/how-to-install-or-remove-a-font-in-windows + +Android Apps + + https://developers.google.com/fonts/docs/android + https://developer.android.com/guide/topics/ui/look-and-feel/downloadable-fonts + +License +------- +Please read the full license text (OFL.txt) to understand the permissions, +restrictions and requirements for usage, redistribution, and modification. + +You can use them freely in your products & projects - print or digital, +commercial or otherwise. However, you can't sell the fonts on their own. + +This isn't legal advice, please consider consulting a lawyer and see the full +license for all details. diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-Bold.ttf b/DomeFox/UI/Fonts/Manrope/static/Manrope-Bold.ttf new file mode 100644 index 0000000..0b2be32 Binary files /dev/null and b/DomeFox/UI/Fonts/Manrope/static/Manrope-Bold.ttf differ diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-Bold.ttf.import b/DomeFox/UI/Fonts/Manrope/static/Manrope-Bold.ttf.import new file mode 100644 index 0000000..457d93e --- /dev/null +++ b/DomeFox/UI/Fonts/Manrope/static/Manrope-Bold.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://bvtvvbws2rl61" +path="res://.godot/imported/Manrope-Bold.ttf-beca0cce383ed3032cbbcd67abe37abb.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Manrope/static/Manrope-Bold.ttf" +dest_files=["res://.godot/imported/Manrope-Bold.ttf-beca0cce383ed3032cbbcd67abe37abb.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraBold.ttf b/DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraBold.ttf new file mode 100644 index 0000000..7bd3b2b Binary files /dev/null and b/DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraBold.ttf differ diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraBold.ttf.import b/DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraBold.ttf.import new file mode 100644 index 0000000..817bd5e --- /dev/null +++ b/DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraBold.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://ddasbf7y4pgr0" +path="res://.godot/imported/Manrope-ExtraBold.ttf-d6c506227470dd740836b482c0480ebb.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraBold.ttf" +dest_files=["res://.godot/imported/Manrope-ExtraBold.ttf-d6c506227470dd740836b482c0480ebb.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraLight.ttf b/DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraLight.ttf new file mode 100644 index 0000000..9d21d77 Binary files /dev/null and b/DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraLight.ttf differ diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraLight.ttf.import b/DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraLight.ttf.import new file mode 100644 index 0000000..2cb4ad7 --- /dev/null +++ b/DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraLight.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://68pjeoms5e5u" +path="res://.godot/imported/Manrope-ExtraLight.ttf-e356b66c8f53264426834c6f56ea7ca7.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Manrope/static/Manrope-ExtraLight.ttf" +dest_files=["res://.godot/imported/Manrope-ExtraLight.ttf-e356b66c8f53264426834c6f56ea7ca7.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-Light.ttf b/DomeFox/UI/Fonts/Manrope/static/Manrope-Light.ttf new file mode 100644 index 0000000..5a771c8 Binary files /dev/null and b/DomeFox/UI/Fonts/Manrope/static/Manrope-Light.ttf differ diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-Light.ttf.import b/DomeFox/UI/Fonts/Manrope/static/Manrope-Light.ttf.import new file mode 100644 index 0000000..e7197c7 --- /dev/null +++ b/DomeFox/UI/Fonts/Manrope/static/Manrope-Light.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://dbrwx5ms8u65g" +path="res://.godot/imported/Manrope-Light.ttf-720ce5ccc0a925e922f07f0d214dcc4c.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Manrope/static/Manrope-Light.ttf" +dest_files=["res://.godot/imported/Manrope-Light.ttf-720ce5ccc0a925e922f07f0d214dcc4c.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-Medium.ttf b/DomeFox/UI/Fonts/Manrope/static/Manrope-Medium.ttf new file mode 100644 index 0000000..e704d98 Binary files /dev/null and b/DomeFox/UI/Fonts/Manrope/static/Manrope-Medium.ttf differ diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-Medium.ttf.import b/DomeFox/UI/Fonts/Manrope/static/Manrope-Medium.ttf.import new file mode 100644 index 0000000..80a0374 --- /dev/null +++ b/DomeFox/UI/Fonts/Manrope/static/Manrope-Medium.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://h4s3o6s8y0cb" +path="res://.godot/imported/Manrope-Medium.ttf-3ab20f66b24e195bdcf61ff45cbb9742.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Manrope/static/Manrope-Medium.ttf" +dest_files=["res://.godot/imported/Manrope-Medium.ttf-3ab20f66b24e195bdcf61ff45cbb9742.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-Regular.ttf b/DomeFox/UI/Fonts/Manrope/static/Manrope-Regular.ttf new file mode 100644 index 0000000..8f41418 Binary files /dev/null and b/DomeFox/UI/Fonts/Manrope/static/Manrope-Regular.ttf differ diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-Regular.ttf.import b/DomeFox/UI/Fonts/Manrope/static/Manrope-Regular.ttf.import new file mode 100644 index 0000000..8c1162b --- /dev/null +++ b/DomeFox/UI/Fonts/Manrope/static/Manrope-Regular.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://c3uthijpiu3jt" +path="res://.godot/imported/Manrope-Regular.ttf-eac87c40e6b2e764b5fa2ade9f2047e1.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Manrope/static/Manrope-Regular.ttf" +dest_files=["res://.godot/imported/Manrope-Regular.ttf-eac87c40e6b2e764b5fa2ade9f2047e1.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-SemiBold.ttf b/DomeFox/UI/Fonts/Manrope/static/Manrope-SemiBold.ttf new file mode 100644 index 0000000..76ef531 Binary files /dev/null and b/DomeFox/UI/Fonts/Manrope/static/Manrope-SemiBold.ttf differ diff --git a/DomeFox/UI/Fonts/Manrope/static/Manrope-SemiBold.ttf.import b/DomeFox/UI/Fonts/Manrope/static/Manrope-SemiBold.ttf.import new file mode 100644 index 0000000..6f7a6f3 --- /dev/null +++ b/DomeFox/UI/Fonts/Manrope/static/Manrope-SemiBold.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://ccqbdgp7adv1h" +path="res://.godot/imported/Manrope-SemiBold.ttf-036b1cfcc497bd34eafd98b62a68998e.fontdata" + +[deps] + +source_file="res://DomeFox/UI/Fonts/Manrope/static/Manrope-SemiBold.ttf" +dest_files=["res://.godot/imported/Manrope-SemiBold.ttf-036b1cfcc497bd34eafd98b62a68998e.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/DomeFox/UI/UI-Settings-DomeFox.tres b/DomeFox/UI/UI-Settings-DomeFox.tres new file mode 100644 index 0000000..45924e6 --- /dev/null +++ b/DomeFox/UI/UI-Settings-DomeFox.tres @@ -0,0 +1,29 @@ +[gd_resource type="Resource" script_class="UISettings" load_steps=10 format=3 uid="uid://bmgx7v1u6u2u8"] + +[ext_resource type="FontFile" uid="uid://b0eaevxyhkxb0" path="res://DomeFox/UI/Fonts/Dosis/static/Dosis-Medium.ttf" id="1_7ypki"] +[ext_resource type="Resource" uid="uid://b4iykcwesp1y6" path="res://addons/rokojori_action_library/Runtime/Time/TimeLines/UITime.tres" id="2_ldifd"] +[ext_resource type="Script" uid="uid://cnkyynboxg1qg" path="res://addons/rokojori_action_library/Runtime/UI/Styling/UINumber.cs" id="3_1p2cb"] +[ext_resource type="Resource" uid="uid://dq52vhnqr5m6" path="res://addons/rokojori_action_library/Runtime/Sensors/Default-Sensors/Default-Input-Icons-Library.tres" id="4_ljdow"] +[ext_resource type="Script" uid="uid://cgdxalxhdbmjn" path="res://addons/rokojori_action_library/Runtime/UI/UISettings.cs" id="5_gitkp"] +[ext_resource type="Resource" uid="uid://bhy8b3gopkq4m" path="res://addons/rokojori_action_library/Runtime/UI/ShaderProperties/Vector2/Size.tres" id="6_mkgf2"] +[ext_resource type="Script" uid="uid://cebfjne1ewhnm" path="res://addons/rokojori_action_library/Runtime/Shading/Properties/Vector2PropertyName.cs" id="7_xfq5m"] + +[sub_resource type="Resource" id="Resource_7ypki"] +script = ExtResource("3_1p2cb") +value = 1.5 +unit = "vw" +metadata/_custom_type_script = "uid://cnkyynboxg1qg" + +[sub_resource type="Resource" id="Resource_6vky0"] +script = ExtResource("7_xfq5m") +propertyName = "texture_size" +metadata/_custom_type_script = "uid://cebfjne1ewhnm" + +[resource] +script = ExtResource("5_gitkp") +inputIconsLibrary = ExtResource("4_ljdow") +fontSize = SubResource("Resource_7ypki") +defaultFont = ExtResource("1_7ypki") +sizePropertyName = ExtResource("6_mkgf2") +textureSizePropertyName = SubResource("Resource_6vky0") +defaultTimeline = ExtResource("2_ldifd") diff --git a/DomeFox/X/Flares/FlareBloom.material.depren b/DomeFox/X/Flares/FlareBloom.material.depren deleted file mode 100644 index cae984a..0000000 Binary files a/DomeFox/X/Flares/FlareBloom.material.depren and /dev/null differ diff --git a/DomeFox/X/Flares/FlareShader2.gdshader b/DomeFox/X/Flares/FlareShader2.gdshader deleted file mode 100644 index 3d78ac0..0000000 --- a/DomeFox/X/Flares/FlareShader2.gdshader +++ /dev/null @@ -1,107 +0,0 @@ -// NOTE: Shader automatically converted from Godot Engine 4.4.stable.mono's StandardMaterial3D. - -shader_type spatial; -render_mode blend_mix, depth_test_disabled, cull_disabled, unshaded, fog_disabled; - -#include "res://Flares/FlareShaderBase.gdshaderinc" - -// -//#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Colors.gdshaderinc" -//#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Math.gdshaderinc" -//#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Transform.gdshaderinc" -//#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Depth.gdshaderinc" -// -//uniform sampler2D depthTexture:hint_depth_texture; -//uniform vec4 color : source_color = vec4( 0.887, 0.434, 0.233, 1.0 ); -//uniform float circleAmount = 1; -//uniform float circleDistortion = 1; -//uniform float ellipseAmount = 1; -//uniform float ellipseDistortion = 1; -//uniform vec2 ellipseScale = vec2( 1, 0.5 ); -//uniform float add_vs_max:hint_range(0,1) = 0.5; -// -//uniform vec4 centerHSL = vec4( 0.08, 0.0, 0.18, 1.0 ); -//varying vec4 centerColor; -// -//uniform vec4 outsideHSL = vec4( -0.05, 1.65, 0.02, 0.0 ); -//varying vec4 outsideColor; -// -//uniform float sizeX = 10; -//uniform float sizeY = 0.5; -//uniform float scaleAll = 1; -//uniform float worldSize_vs_screenSize:hint_range(0,1) = 1; -//varying vec2 stretch; -// -// -//uniform float proximityFadeDistance = 10; -//uniform int fadeCheckLevels = 10; -//uniform sampler2D fading; -//uniform sampler2D sizeXfading; -//uniform sampler2D sizeYfading; -// -//varying float occlusionAlpha; -// -//void vertex() -//{ - //vec2 screenPosition = worldToScreen( NODE_POSITION_WORLD, VIEW_MATRIX, PROJECTION_MATRIX ); - //float fadeValue = textureLod( fading, screenPosition, 0.0 ).r; - //float sizeXFade = textureLod( sizeXfading, screenPosition, 0.0 ).r; - //float sizeYFade = textureLod( sizeYfading, screenPosition, 0.0 ).r; - // - //float sX = sizeX * sizeXFade; - //float sY = sizeY * sizeYFade; - // - //vec2 viewOffset = vec2( 1, 1 ) * proximityFadeDistance; - // - //occlusionAlpha = fadeValue * getQuickOcclusionAt( depthTexture, NODE_POSITION_WORLD, fadeCheckLevels, viewOffset, PROJECTION_MATRIX, INV_PROJECTION_MATRIX ); - // - //float camDist = length( NODE_POSITION_WORLD - CAMERA_POSITION_WORLD ); - //vec2 sizeScaled = vec2( sX, sY ) * scaleAll * occlusionAlpha; - //vec2 size = mix( sizeScaled, sizeScaled * camDist * 0.1, worldSize_vs_screenSize ); - //stretch = vec2( sX, sY ); - //vec3 worldOffset = billboardWorldOffsetWithSize( size, UV, INV_VIEW_MATRIX, MODEL_MATRIX ); - //VERTEX += worldOffset; - //vec3 hsl = RGBtoHSL( color.rgb ); - //vec3 shiftedHSL = shiftHSL( hsl, centerHSL.rgb, 60.0 ); - //vec3 shiftedRGB = HSLtoRGB( shiftedHSL ); - // - //centerColor = vec4( shiftRGBwithHSL( color.rgb, centerHSL.rgb, 60.0 ), centerHSL.a * color.a); - //outsideColor = vec4( shiftRGBwithHSL( color.rgb, outsideHSL.rgb, 60.0 ), outsideHSL.a * color.a ); -//} -// -// -// -//void fragment() -//{ - //vec2 circleUV = ( UV - vec2( 0.5 ) ) * stretch + vec2( 0.5 ); - //vec2 centerUV = UV - vec2( 0.5 ); - //float angle = atan( centerUV.y, centerUV.x ); - //float noise = - //sin( TIME * -3.0 + angle * 200.0 ) * 0.05 + - //sin( TIME * 5.0 + angle * 50.0 ) * 0.1 + - //sin( TIME * -2.0 + angle* 500.0 ) * 0.03 + - //0.95; - //float distanceToCircle = 1.0 - min( 1, length( circleUV - vec2( 0.5, 0.5 ) ) / 0.5 ); - //vec2 ellipseUV = ( UV - vec2( 0.5 ) ) / ellipseScale + vec2( 0.5 ); - //float distanceToEllipse = 1.0 - min( 1, length( ellipseUV - vec2( 0.5, 0.5 ) ) / 0.5 ); - // - //distanceToCircle = clamp01( distanceToCircle * noise ); - //distanceToEllipse = clamp01( distanceToEllipse ); - // - //distanceToCircle = pow( distanceToCircle, circleDistortion ); - //distanceToEllipse = pow( distanceToEllipse, ellipseDistortion ); - // - //distanceToCircle *= circleAmount; - //distanceToEllipse *= ellipseAmount; - // - //float addResult = min( 1, distanceToEllipse + distanceToCircle ); - //float maxResult = min( 1, max( distanceToEllipse, distanceToCircle ) ); - //float t = mix( addResult, maxResult, add_vs_max ); - //vec4 mixedColor = mixThreeColors( outsideColor, color, centerColor, t ); - // - //ALBEDO = mixedColor.rgb; - ////ALBEDO = vec3( depth, linear_depth, 0.0 ); - //ALPHA = mixedColor.a * occlusionAlpha; - ////ALPHA = 1.0; -// -//} diff --git a/DomeFox/X/Flares/sky/Sky Daylight.material b/DomeFox/X/Flares/sky/Sky Daylight.material deleted file mode 100644 index 6566b64..0000000 Binary files a/DomeFox/X/Flares/sky/Sky Daylight.material and /dev/null differ diff --git a/DomeFox/X/Flares/sky/Sky Night.material.depren b/DomeFox/X/Flares/sky/Sky Night.material.depren deleted file mode 100644 index d50efae..0000000 Binary files a/DomeFox/X/Flares/sky/Sky Night.material.depren and /dev/null differ diff --git a/DomeFox/X/BloodSkin.tscn b/DomeFox/XYZ/BloodSkin.tscn similarity index 100% rename from DomeFox/X/BloodSkin.tscn rename to DomeFox/XYZ/BloodSkin.tscn diff --git a/DomeFox/X/Flares/FPSCounter.cs b/DomeFox/XYZ/Flares/FPSCounter.cs similarity index 100% rename from DomeFox/X/Flares/FPSCounter.cs rename to DomeFox/XYZ/Flares/FPSCounter.cs diff --git a/DomeFox/X/Flares/FPSCounter.cs.uid b/DomeFox/XYZ/Flares/FPSCounter.cs.uid similarity index 100% rename from DomeFox/X/Flares/FPSCounter.cs.uid rename to DomeFox/XYZ/Flares/FPSCounter.cs.uid diff --git a/DomeFox/X/Flares/FlareBloom.gdshader b/DomeFox/XYZ/Flares/FlareBloom.gdshader similarity index 100% rename from DomeFox/X/Flares/FlareBloom.gdshader rename to DomeFox/XYZ/Flares/FlareBloom.gdshader diff --git a/DomeFox/X/Flares/FlareBloom.gdshader.uid b/DomeFox/XYZ/Flares/FlareBloom.gdshader.uid similarity index 100% rename from DomeFox/X/Flares/FlareBloom.gdshader.uid rename to DomeFox/XYZ/Flares/FlareBloom.gdshader.uid diff --git a/DomeFox/X/Flares/FlareBloom.material b/DomeFox/XYZ/Flares/FlareBloom.material similarity index 100% rename from DomeFox/X/Flares/FlareBloom.material rename to DomeFox/XYZ/Flares/FlareBloom.material diff --git a/DomeFox/XYZ/Flares/FlareBloom.material.depren b/DomeFox/XYZ/Flares/FlareBloom.material.depren new file mode 100644 index 0000000..3acae15 Binary files /dev/null and b/DomeFox/XYZ/Flares/FlareBloom.material.depren differ diff --git a/DomeFox/X/Flares/FlareShader.gdshader b/DomeFox/XYZ/Flares/FlareShader.gdshader similarity index 100% rename from DomeFox/X/Flares/FlareShader.gdshader rename to DomeFox/XYZ/Flares/FlareShader.gdshader diff --git a/DomeFox/X/Flares/FlareShader.gdshader.uid b/DomeFox/XYZ/Flares/FlareShader.gdshader.uid similarity index 100% rename from DomeFox/X/Flares/FlareShader.gdshader.uid rename to DomeFox/XYZ/Flares/FlareShader.gdshader.uid diff --git a/DomeFox/XYZ/Flares/FlareShader2.gdshader b/DomeFox/XYZ/Flares/FlareShader2.gdshader new file mode 100644 index 0000000..2bbdd11 --- /dev/null +++ b/DomeFox/XYZ/Flares/FlareShader2.gdshader @@ -0,0 +1,4 @@ +shader_type spatial; +render_mode blend_mix, depth_test_disabled, cull_disabled, unshaded, fog_disabled; + +#include "res://DomeFox/XYZ/Flares/FlareShaderBase.gdshaderinc" diff --git a/DomeFox/X/Flares/FlareShader2.gdshader.uid b/DomeFox/XYZ/Flares/FlareShader2.gdshader.uid similarity index 100% rename from DomeFox/X/Flares/FlareShader2.gdshader.uid rename to DomeFox/XYZ/Flares/FlareShader2.gdshader.uid diff --git a/DomeFox/X/Flares/FlareShaderAdd.gdshader b/DomeFox/XYZ/Flares/FlareShaderAdd.gdshader similarity index 59% rename from DomeFox/X/Flares/FlareShaderAdd.gdshader rename to DomeFox/XYZ/Flares/FlareShaderAdd.gdshader index 53e282c..0ec931f 100644 --- a/DomeFox/X/Flares/FlareShaderAdd.gdshader +++ b/DomeFox/XYZ/Flares/FlareShaderAdd.gdshader @@ -1,4 +1,4 @@ shader_type spatial; render_mode blend_add, depth_test_disabled, cull_disabled, unshaded; -#include "res://Flares/FlareShaderBase.gdshaderinc" \ No newline at end of file +#include "res://DomeFox/XYZ/Flares/FlareShaderBase.gdshaderinc" \ No newline at end of file diff --git a/DomeFox/X/Flares/FlareShaderAdd.gdshader.uid b/DomeFox/XYZ/Flares/FlareShaderAdd.gdshader.uid similarity index 100% rename from DomeFox/X/Flares/FlareShaderAdd.gdshader.uid rename to DomeFox/XYZ/Flares/FlareShaderAdd.gdshader.uid diff --git a/DomeFox/X/Flares/FlareShaderBase.gdshaderinc b/DomeFox/XYZ/Flares/FlareShaderBase.gdshaderinc similarity index 100% rename from DomeFox/X/Flares/FlareShaderBase.gdshaderinc rename to DomeFox/XYZ/Flares/FlareShaderBase.gdshaderinc diff --git a/DomeFox/X/Flares/FlareShaderBase.gdshaderinc.uid b/DomeFox/XYZ/Flares/FlareShaderBase.gdshaderinc.uid similarity index 100% rename from DomeFox/X/Flares/FlareShaderBase.gdshaderinc.uid rename to DomeFox/XYZ/Flares/FlareShaderBase.gdshaderinc.uid diff --git a/DomeFox/X/Flares/Flares.tscn b/DomeFox/XYZ/Flares/Flares.tscn similarity index 99% rename from DomeFox/X/Flares/Flares.tscn rename to DomeFox/XYZ/Flares/Flares.tscn index ae435da..2eb373f 100644 --- a/DomeFox/X/Flares/Flares.tscn +++ b/DomeFox/XYZ/Flares/Flares.tscn @@ -3,23 +3,23 @@ [ext_resource type="Script" uid="uid://edtvlsps4bnc" path="res://addons/rokojori_action_library/Runtime/App/App.cs" id="1_viy0g"] [ext_resource type="Script" uid="uid://d16ef6yoxkj5q" path="res://addons/rokojori_action_library/Runtime/Procedural/Parametric/Cuboid/Cuboid.cs" id="1_yex5v"] [ext_resource type="Script" uid="uid://cp2xx28316r70" path="res://addons/rokojori_action_library/Runtime/Sensors/SensorManager.cs" id="2_qkq5f"] -[ext_resource type="Shader" uid="uid://bxgy0k2a1kgq1" path="res://DomeFox/X/Flares/FlareShader2.gdshader" id="3_5scu6"] +[ext_resource type="Shader" uid="uid://bxgy0k2a1kgq1" path="res://DomeFox/XYZ/Flares/FlareShader2.gdshader" id="3_5scu6"] [ext_resource type="Script" path="res://addons/rokojori_action_library/Runtime/VirtualCameras/VirtualCamera3DManager.cs" id="3_juauv"] [ext_resource type="Script" path="res://addons/rokojori_action_library/Runtime/VirtualCameras/VirtualCamera3DSlot.cs" id="4_k5c1b"] -[ext_resource type="Shader" uid="uid://g038sa37p3uc" path="res://DomeFox/X/Flares/FlareShaderAdd.gdshader" id="4_udfuj"] +[ext_resource type="Shader" uid="uid://g038sa37p3uc" path="res://DomeFox/XYZ/Flares/FlareShaderAdd.gdshader" id="4_udfuj"] [ext_resource type="Script" uid="uid://bbrqjqs6dc1hy" path="res://addons/rokojori_action_library/Runtime/Cameras/EditorCamera/EditorCamera.cs" id="5_32eh2"] [ext_resource type="Script" uid="uid://lhuuedx87rem" path="res://addons/rokojori_action_library/Runtime/Animation/Smoothing/FrameSmoothing.cs" id="6_34blr"] [ext_resource type="Resource" uid="uid://dgxeibp77r1wy" path="res://addons/rokojori_action_library/Runtime/Cameras/EditorCamera/Inputs/MouseEditorCamera Default Inputs.tres" id="6_qkq5f"] -[ext_resource type="Material" uid="uid://u1lmmrkikp8g" path="res://DomeFox/X/Flares/sky/Sky Night.material" id="7_juauv"] +[ext_resource type="Material" uid="uid://u1lmmrkikp8g" path="res://DomeFox/XYZ/Flares/sky/Sky Night.material" id="7_juauv"] [ext_resource type="Script" uid="uid://cdweilvlwjucr" path="res://addons/rokojori_action_library/Runtime/Time/TimeLineManager.cs" id="7_m5o0u"] [ext_resource type="Resource" uid="uid://ch5nsa6yafs5l" path="res://addons/rokojori_action_library/Runtime/Time/TimeLines/GameTime.tres" id="8_jt7rm"] [ext_resource type="Resource" uid="uid://h6oi6vkj4c2m" path="res://addons/rokojori_action_library/Runtime/Time/TimeLines/RealTime.tres" id="9_rpiuu"] [ext_resource type="Script" uid="uid://bu6np1t32bddg" path="res://addons/rokojori_action_library/Runtime/UI/UI.cs" id="11_ddrbw"] -[ext_resource type="Material" uid="uid://dexd7by3soeen" path="res://DomeFox/X/Flares/FlareBloom.material" id="11_juauv"] +[ext_resource type="Material" uid="uid://dexd7by3soeen" path="res://DomeFox/XYZ/Flares/FlareBloom.material" id="11_juauv"] [ext_resource type="Script" uid="uid://rqs2m0u6yvvf" path="res://addons/rokojori_action_library/Runtime/UI/Nodes/UIText.cs" id="12_xj37j"] [ext_resource type="Script" uid="uid://bvj322mokkq63" path="res://addons/rokojori_action_library/Runtime/Localization/LocaleText.cs" id="13_yjsl1"] [ext_resource type="Script" uid="uid://c7add1gwcja21" path="res://addons/rokojori_action_library/Runtime/Procedural/Scatter/ScatterList.cs" id="14_iyxj7"] -[ext_resource type="Script" uid="uid://d2nkptgvmwtkt" path="res://DomeFox/X/Flares/FPSCounter.cs" id="14_xj37j"] +[ext_resource type="Script" uid="uid://d2nkptgvmwtkt" path="res://DomeFox/XYZ/Flares/FPSCounter.cs" id="14_xj37j"] [ext_resource type="Script" uid="uid://gc7b03qg3fap" path="res://addons/rokojori_action_library/Runtime/Procedural/Scatter/Generators/GenerateInBox.cs" id="15_7no6h"] [ext_resource type="Script" uid="uid://dma6i63t4myyu" path="res://addons/rokojori_action_library/Runtime/Procedural/Scatter/Generators/GeneratorEntry.cs" id="16_gc5qg"] [ext_resource type="Script" uid="uid://cwhhaasonvhy" path="res://addons/rokojori_action_library/Runtime/Rendering/Compositor/CompositorEffects/DepthAntiAliasing/DepthAntiAliasingEffect.cs" id="16_xj37j"] @@ -28,13 +28,13 @@ [ext_resource type="Script" uid="uid://c3c8limywowjv" path="res://addons/rokojori_action_library/Runtime/Procedural/Parametric/Spline/Spline.cs" id="19_d2v3q"] [ext_resource type="Script" uid="uid://0wmpolvwadsu" path="res://addons/rokojori_action_library/Runtime/Procedural/Parametric/Spline/SplinePoint.cs" id="20_8l08q"] [ext_resource type="Script" uid="uid://cl36x2jgfuypo" path="res://addons/rokojori_action_library/Runtime/Actions/OnProcess.cs" id="21_rb226"] -[ext_resource type="Script" uid="uid://c3p1tjxyl0u1q" path="res://DomeFox/X/Flares/FollowPath.cs" id="22_hxv0c"] +[ext_resource type="Script" uid="uid://c3p1tjxyl0u1q" path="res://DomeFox/XYZ/Flares/FollowPath.cs" id="22_hxv0c"] [ext_resource type="Script" uid="uid://c6q38t7ya66ik" path="res://addons/rokojori_action_library/Runtime/Procedural/Mesh/MassRenderer.cs" id="23_w7k2g"] [ext_resource type="Script" uid="uid://be3t3dwgs5hi" path="res://addons/rokojori_action_library/Runtime/Procedural/Mesh/LODMultiMeshInstance3D.cs" id="24_40v6l"] -[ext_resource type="Texture2D" uid="uid://3x3b5qbcosry" path="res://DomeFox/X/Flares/rokojori-label-blur-2.png" id="24_eqg7l"] -[ext_resource type="Texture2D" uid="uid://d2ni52mwgyim3" path="res://DomeFox/X/Flares/rokojori-label-blur.png" id="25_34blr"] -[ext_resource type="Texture2D" uid="uid://bg11uq08m2q2b" path="res://DomeFox/X/Flares/rokojori-label.png" id="25_40v6l"] -[ext_resource type="Shader" uid="uid://ciwchv0hirpm6" path="res://DomeFox/X/Flares/Test.gdshader" id="35_yjsl1"] +[ext_resource type="Texture2D" uid="uid://3x3b5qbcosry" path="res://DomeFox/XYZ/Flares/rokojori-label-blur-2.png" id="24_eqg7l"] +[ext_resource type="Texture2D" uid="uid://d2ni52mwgyim3" path="res://DomeFox/XYZ/Flares/rokojori-label-blur.png" id="25_34blr"] +[ext_resource type="Texture2D" uid="uid://bg11uq08m2q2b" path="res://DomeFox/XYZ/Flares/rokojori-label.png" id="25_40v6l"] +[ext_resource type="Shader" uid="uid://ciwchv0hirpm6" path="res://DomeFox/XYZ/Flares/Test.gdshader" id="35_yjsl1"] [sub_resource type="Resource" id="Resource_mjevu"] script = ExtResource("6_34blr") diff --git a/DomeFox/X/Flares/FollowPath.cs b/DomeFox/XYZ/Flares/FollowPath.cs similarity index 100% rename from DomeFox/X/Flares/FollowPath.cs rename to DomeFox/XYZ/Flares/FollowPath.cs diff --git a/DomeFox/X/Flares/FollowPath.cs.uid b/DomeFox/XYZ/Flares/FollowPath.cs.uid similarity index 100% rename from DomeFox/X/Flares/FollowPath.cs.uid rename to DomeFox/XYZ/Flares/FollowPath.cs.uid diff --git a/DomeFox/X/Flares/Test.gdshader b/DomeFox/XYZ/Flares/Test.gdshader similarity index 100% rename from DomeFox/X/Flares/Test.gdshader rename to DomeFox/XYZ/Flares/Test.gdshader diff --git a/DomeFox/X/Flares/Test.gdshader.uid b/DomeFox/XYZ/Flares/Test.gdshader.uid similarity index 100% rename from DomeFox/X/Flares/Test.gdshader.uid rename to DomeFox/XYZ/Flares/Test.gdshader.uid diff --git a/DomeFox/X/Flares/red-button.tres b/DomeFox/XYZ/Flares/red-button.tres similarity index 100% rename from DomeFox/X/Flares/red-button.tres rename to DomeFox/XYZ/Flares/red-button.tres diff --git a/DomeFox/X/Flares/rokojori-label-blur-2.png b/DomeFox/XYZ/Flares/rokojori-label-blur-2.png similarity index 100% rename from DomeFox/X/Flares/rokojori-label-blur-2.png rename to DomeFox/XYZ/Flares/rokojori-label-blur-2.png diff --git a/DomeFox/X/Flares/rokojori-label-blur-2.png.import b/DomeFox/XYZ/Flares/rokojori-label-blur-2.png.import similarity index 73% rename from DomeFox/X/Flares/rokojori-label-blur-2.png.import rename to DomeFox/XYZ/Flares/rokojori-label-blur-2.png.import index 6440760..ff79e79 100644 --- a/DomeFox/X/Flares/rokojori-label-blur-2.png.import +++ b/DomeFox/XYZ/Flares/rokojori-label-blur-2.png.import @@ -3,7 +3,7 @@ importer="texture" type="CompressedTexture2D" uid="uid://3x3b5qbcosry" -path.s3tc="res://.godot/imported/rokojori-label-blur-2.png-2563e5e6d160f86f4ce314678111f792.s3tc.ctex" +path.s3tc="res://.godot/imported/rokojori-label-blur-2.png-35fce9a605524a3907329d0be9a896e4.s3tc.ctex" metadata={ "imported_formats": ["s3tc_bptc"], "vram_texture": true @@ -11,8 +11,8 @@ metadata={ [deps] -source_file="res://DomeFox/X/Flares/rokojori-label-blur-2.png" -dest_files=["res://.godot/imported/rokojori-label-blur-2.png-2563e5e6d160f86f4ce314678111f792.s3tc.ctex"] +source_file="res://DomeFox/XYZ/Flares/rokojori-label-blur-2.png" +dest_files=["res://.godot/imported/rokojori-label-blur-2.png-35fce9a605524a3907329d0be9a896e4.s3tc.ctex"] [params] diff --git a/DomeFox/X/Flares/rokojori-label-blur.png b/DomeFox/XYZ/Flares/rokojori-label-blur.png similarity index 100% rename from DomeFox/X/Flares/rokojori-label-blur.png rename to DomeFox/XYZ/Flares/rokojori-label-blur.png diff --git a/DomeFox/X/Flares/rokojori-label-blur.png.import b/DomeFox/XYZ/Flares/rokojori-label-blur.png.import similarity index 73% rename from DomeFox/X/Flares/rokojori-label-blur.png.import rename to DomeFox/XYZ/Flares/rokojori-label-blur.png.import index 74bc7ec..2874fa8 100644 --- a/DomeFox/X/Flares/rokojori-label-blur.png.import +++ b/DomeFox/XYZ/Flares/rokojori-label-blur.png.import @@ -3,7 +3,7 @@ importer="texture" type="CompressedTexture2D" uid="uid://d2ni52mwgyim3" -path.s3tc="res://.godot/imported/rokojori-label-blur.png-e625ef7475cecfebfb9ca4023b5b0292.s3tc.ctex" +path.s3tc="res://.godot/imported/rokojori-label-blur.png-6348aebee37af974eda70676560e1fd8.s3tc.ctex" metadata={ "imported_formats": ["s3tc_bptc"], "vram_texture": true @@ -11,8 +11,8 @@ metadata={ [deps] -source_file="res://DomeFox/X/Flares/rokojori-label-blur.png" -dest_files=["res://.godot/imported/rokojori-label-blur.png-e625ef7475cecfebfb9ca4023b5b0292.s3tc.ctex"] +source_file="res://DomeFox/XYZ/Flares/rokojori-label-blur.png" +dest_files=["res://.godot/imported/rokojori-label-blur.png-6348aebee37af974eda70676560e1fd8.s3tc.ctex"] [params] diff --git a/DomeFox/X/Flares/rokojori-label.png b/DomeFox/XYZ/Flares/rokojori-label.png similarity index 100% rename from DomeFox/X/Flares/rokojori-label.png rename to DomeFox/XYZ/Flares/rokojori-label.png diff --git a/DomeFox/X/Flares/rokojori-label.png.import b/DomeFox/XYZ/Flares/rokojori-label.png.import similarity index 75% rename from DomeFox/X/Flares/rokojori-label.png.import rename to DomeFox/XYZ/Flares/rokojori-label.png.import index dabea53..e4f853c 100644 --- a/DomeFox/X/Flares/rokojori-label.png.import +++ b/DomeFox/XYZ/Flares/rokojori-label.png.import @@ -3,7 +3,7 @@ importer="texture" type="CompressedTexture2D" uid="uid://bg11uq08m2q2b" -path.s3tc="res://.godot/imported/rokojori-label.png-d5e6822b0c27390446077a4c2edad4d1.s3tc.ctex" +path.s3tc="res://.godot/imported/rokojori-label.png-04464b39ee0bac0c4d18dd1ea1057ab8.s3tc.ctex" metadata={ "imported_formats": ["s3tc_bptc"], "vram_texture": true @@ -11,8 +11,8 @@ metadata={ [deps] -source_file="res://DomeFox/X/Flares/rokojori-label.png" -dest_files=["res://.godot/imported/rokojori-label.png-d5e6822b0c27390446077a4c2edad4d1.s3tc.ctex"] +source_file="res://DomeFox/XYZ/Flares/rokojori-label.png" +dest_files=["res://.godot/imported/rokojori-label.png-04464b39ee0bac0c4d18dd1ea1057ab8.s3tc.ctex"] [params] diff --git a/DomeFox/X/Flares/sky/NightSkyHDRI001_8K-HDR.exr b/DomeFox/XYZ/Flares/sky/NightSkyHDRI001_8K-HDR.exr similarity index 100% rename from DomeFox/X/Flares/sky/NightSkyHDRI001_8K-HDR.exr rename to DomeFox/XYZ/Flares/sky/NightSkyHDRI001_8K-HDR.exr diff --git a/DomeFox/X/Flares/sky/NightSkyHDRI001_8K-HDR.exr.import b/DomeFox/XYZ/Flares/sky/NightSkyHDRI001_8K-HDR.exr.import similarity index 73% rename from DomeFox/X/Flares/sky/NightSkyHDRI001_8K-HDR.exr.import rename to DomeFox/XYZ/Flares/sky/NightSkyHDRI001_8K-HDR.exr.import index 33b4681..0b00e05 100644 --- a/DomeFox/X/Flares/sky/NightSkyHDRI001_8K-HDR.exr.import +++ b/DomeFox/XYZ/Flares/sky/NightSkyHDRI001_8K-HDR.exr.import @@ -3,7 +3,7 @@ importer="texture" type="CompressedTexture2D" uid="uid://bk0a7vmtq22ix" -path.bptc="res://.godot/imported/NightSkyHDRI001_8K-HDR.exr-19d2ce03e2a71e0953a314b6d272592d.bptc.ctex" +path.bptc="res://.godot/imported/NightSkyHDRI001_8K-HDR.exr-79d28dd3c90412cd08b19622fbddf4e6.bptc.ctex" metadata={ "imported_formats": ["s3tc_bptc"], "vram_texture": true @@ -11,8 +11,8 @@ metadata={ [deps] -source_file="res://DomeFox/X/Flares/sky/NightSkyHDRI001_8K-HDR.exr" -dest_files=["res://.godot/imported/NightSkyHDRI001_8K-HDR.exr-19d2ce03e2a71e0953a314b6d272592d.bptc.ctex"] +source_file="res://DomeFox/XYZ/Flares/sky/NightSkyHDRI001_8K-HDR.exr" +dest_files=["res://.godot/imported/NightSkyHDRI001_8K-HDR.exr-79d28dd3c90412cd08b19622fbddf4e6.bptc.ctex"] [params] diff --git a/DomeFox/X/Flares/sky/Sky Night.material b/DomeFox/XYZ/Flares/sky/Sky Night.material similarity index 100% rename from DomeFox/X/Flares/sky/Sky Night.material rename to DomeFox/XYZ/Flares/sky/Sky Night.material diff --git a/DomeFox/XYZ/Flares/sky/Sky Night.material.depren b/DomeFox/XYZ/Flares/sky/Sky Night.material.depren new file mode 100644 index 0000000..e91add7 Binary files /dev/null and b/DomeFox/XYZ/Flares/sky/Sky Night.material.depren differ diff --git a/DomeFox/X/Flares/yellow-button.tres b/DomeFox/XYZ/Flares/yellow-button.tres similarity index 100% rename from DomeFox/X/Flares/yellow-button.tres rename to DomeFox/XYZ/Flares/yellow-button.tres diff --git a/DomeFox/X/GDScript/GDAction.gd b/DomeFox/XYZ/GDScript/GDAction.gd similarity index 100% rename from DomeFox/X/GDScript/GDAction.gd rename to DomeFox/XYZ/GDScript/GDAction.gd diff --git a/DomeFox/X/GDScript/GDAction.gd.uid b/DomeFox/XYZ/GDScript/GDAction.gd.uid similarity index 100% rename from DomeFox/X/GDScript/GDAction.gd.uid rename to DomeFox/XYZ/GDScript/GDAction.gd.uid diff --git a/DomeFox/X/GDScript/GDScript.tscn b/DomeFox/XYZ/GDScript/GDScript.tscn similarity index 98% rename from DomeFox/X/GDScript/GDScript.tscn rename to DomeFox/XYZ/GDScript/GDScript.tscn index 5f89088..e00dfd7 100644 --- a/DomeFox/X/GDScript/GDScript.tscn +++ b/DomeFox/XYZ/GDScript/GDScript.tscn @@ -18,10 +18,10 @@ [ext_resource type="Script" uid="uid://b4yjsis2fh64c" path="res://addons/rokojori_action_library/Runtime/Actions/ActionList.cs" id="16_8bne0"] [ext_resource type="Script" uid="uid://cd0ikdsdhutn0" path="res://addons/rokojori_action_library/Runtime/Actions/RJLogMessage.cs" id="17_nkxw2"] [ext_resource type="Script" uid="uid://c2m6vuo3nucna" path="res://addons/rokojori_action_library/Runtime/Actions/GDScriptAction.cs" id="18_nkxw2"] -[ext_resource type="Script" uid="uid://c663pstq6p2se" path="res://DomeFox/X/GDScript/MyLogic.gd" id="19_8bne0"] +[ext_resource type="Script" uid="uid://c663pstq6p2se" path="res://DomeFox/XYZ/GDScript/MyLogic.gd" id="19_8bne0"] [ext_resource type="Script" uid="uid://ceaglilesxsi4" path="res://addons/rokojori_action_library/Runtime/Actions/ActionSequence.cs" id="20_kjca4"] [ext_resource type="Script" uid="uid://cb26oih56el4s" path="res://addons/rokojori_action_library/Runtime/Actions/GDScriptSequenceAction.cs" id="21_7wu60"] -[ext_resource type="Script" uid="uid://c2w3mwy5aic0i" path="res://DomeFox/X/GDScript/MySequenceLogic.gd" id="21_hi3nk"] +[ext_resource type="Script" uid="uid://c2w3mwy5aic0i" path="res://DomeFox/XYZ/GDScript/MySequenceLogic.gd" id="21_hi3nk"] [sub_resource type="Resource" id="Resource_kjca4"] script = ExtResource("9_foj7o") diff --git a/DomeFox/X/GDScript/MyLogic.gd b/DomeFox/XYZ/GDScript/MyLogic.gd similarity index 100% rename from DomeFox/X/GDScript/MyLogic.gd rename to DomeFox/XYZ/GDScript/MyLogic.gd diff --git a/DomeFox/X/GDScript/MyLogic.gd.uid b/DomeFox/XYZ/GDScript/MyLogic.gd.uid similarity index 100% rename from DomeFox/X/GDScript/MyLogic.gd.uid rename to DomeFox/XYZ/GDScript/MyLogic.gd.uid diff --git a/DomeFox/X/GDScript/MySequenceLogic.gd b/DomeFox/XYZ/GDScript/MySequenceLogic.gd similarity index 100% rename from DomeFox/X/GDScript/MySequenceLogic.gd rename to DomeFox/XYZ/GDScript/MySequenceLogic.gd diff --git a/DomeFox/X/GDScript/MySequenceLogic.gd.uid b/DomeFox/XYZ/GDScript/MySequenceLogic.gd.uid similarity index 100% rename from DomeFox/X/GDScript/MySequenceLogic.gd.uid rename to DomeFox/XYZ/GDScript/MySequenceLogic.gd.uid diff --git a/DomeFox/X/GDScript/Submarine/submarine.bin b/DomeFox/XYZ/GDScript/Submarine/submarine.bin similarity index 100% rename from DomeFox/X/GDScript/Submarine/submarine.bin rename to DomeFox/XYZ/GDScript/Submarine/submarine.bin diff --git a/DomeFox/X/GDScript/Submarine/submarine.gltf b/DomeFox/XYZ/GDScript/Submarine/submarine.gltf similarity index 100% rename from DomeFox/X/GDScript/Submarine/submarine.gltf rename to DomeFox/XYZ/GDScript/Submarine/submarine.gltf diff --git a/DomeFox/X/GDScript/Submarine/submarine.gltf.import b/DomeFox/XYZ/GDScript/Submarine/submarine.gltf.import similarity index 77% rename from DomeFox/X/GDScript/Submarine/submarine.gltf.import rename to DomeFox/XYZ/GDScript/Submarine/submarine.gltf.import index d96cae3..fa4e12a 100644 --- a/DomeFox/X/GDScript/Submarine/submarine.gltf.import +++ b/DomeFox/XYZ/GDScript/Submarine/submarine.gltf.import @@ -4,12 +4,12 @@ importer="scene" importer_version=1 type="PackedScene" uid="uid://c1khime56rk4l" -path="res://.godot/imported/submarine.gltf-b7369b8fa35497cd15d77501372abc7c.scn" +path="res://.godot/imported/submarine.gltf-fa1f1ba2b9c8b8c83619164ace5e760e.scn" [deps] -source_file="res://DomeFox/X/GDScript/Submarine/submarine.gltf" -dest_files=["res://.godot/imported/submarine.gltf-b7369b8fa35497cd15d77501372abc7c.scn"] +source_file="res://DomeFox/XYZ/GDScript/Submarine/submarine.gltf" +dest_files=["res://.godot/imported/submarine.gltf-fa1f1ba2b9c8b8c83619164ace5e760e.scn"] [params] diff --git a/DomeFox/X/Submarine Stage/Cube/cube.bin b/DomeFox/XYZ/Submarine Stage/Cube/cube.bin similarity index 100% rename from DomeFox/X/Submarine Stage/Cube/cube.bin rename to DomeFox/XYZ/Submarine Stage/Cube/cube.bin diff --git a/DomeFox/X/Submarine Stage/Cube/cube.glb b/DomeFox/XYZ/Submarine Stage/Cube/cube.glb similarity index 100% rename from DomeFox/X/Submarine Stage/Cube/cube.glb rename to DomeFox/XYZ/Submarine Stage/Cube/cube.glb diff --git a/DomeFox/X/Submarine Stage/Cube/cube.glb.import b/DomeFox/XYZ/Submarine Stage/Cube/cube.glb.import similarity index 79% rename from DomeFox/X/Submarine Stage/Cube/cube.glb.import rename to DomeFox/XYZ/Submarine Stage/Cube/cube.glb.import index 49acc8f..64d5a45 100644 --- a/DomeFox/X/Submarine Stage/Cube/cube.glb.import +++ b/DomeFox/XYZ/Submarine Stage/Cube/cube.glb.import @@ -4,12 +4,12 @@ importer="scene" importer_version=1 type="PackedScene" uid="uid://cnni7lta7k548" -path="res://.godot/imported/cube.glb-c7203490a2e7755ea5f7101c0618706d.scn" +path="res://.godot/imported/cube.glb-0d7ec296092fdf2b4f175c0a24d6a8d8.scn" [deps] -source_file="res://DomeFox/X/Submarine Stage/Cube/cube.glb" -dest_files=["res://.godot/imported/cube.glb-c7203490a2e7755ea5f7101c0618706d.scn"] +source_file="res://DomeFox/XYZ/Submarine Stage/Cube/cube.glb" +dest_files=["res://.godot/imported/cube.glb-0d7ec296092fdf2b4f175c0a24d6a8d8.scn"] [params] diff --git a/DomeFox/X/Submarine Stage/Cube/cube.gltf b/DomeFox/XYZ/Submarine Stage/Cube/cube.gltf similarity index 100% rename from DomeFox/X/Submarine Stage/Cube/cube.gltf rename to DomeFox/XYZ/Submarine Stage/Cube/cube.gltf diff --git a/DomeFox/X/Submarine Stage/Cube/cube.gltf.import b/DomeFox/XYZ/Submarine Stage/Cube/cube.gltf.import similarity index 78% rename from DomeFox/X/Submarine Stage/Cube/cube.gltf.import rename to DomeFox/XYZ/Submarine Stage/Cube/cube.gltf.import index 2151865..e1ebe01 100644 --- a/DomeFox/X/Submarine Stage/Cube/cube.gltf.import +++ b/DomeFox/XYZ/Submarine Stage/Cube/cube.gltf.import @@ -4,12 +4,12 @@ importer="scene" importer_version=1 type="PackedScene" uid="uid://raf5itidcbgn" -path="res://.godot/imported/cube.gltf-1f25a60bdebebfe352a8289ce98ee1de.scn" +path="res://.godot/imported/cube.gltf-bcab25c128ff6138e9115634d63f8e1a.scn" [deps] -source_file="res://DomeFox/X/Submarine Stage/Cube/cube.gltf" -dest_files=["res://.godot/imported/cube.gltf-1f25a60bdebebfe352a8289ce98ee1de.scn"] +source_file="res://DomeFox/XYZ/Submarine Stage/Cube/cube.gltf" +dest_files=["res://.godot/imported/cube.gltf-bcab25c128ff6138e9115634d63f8e1a.scn"] [params] diff --git a/DomeFox/X/Submarine Stage/Debug/UpdateTube.cs b/DomeFox/XYZ/Submarine Stage/Debug/UpdateTube.cs similarity index 100% rename from DomeFox/X/Submarine Stage/Debug/UpdateTube.cs rename to DomeFox/XYZ/Submarine Stage/Debug/UpdateTube.cs diff --git a/DomeFox/X/Submarine Stage/Debug/UpdateTube.cs.uid b/DomeFox/XYZ/Submarine Stage/Debug/UpdateTube.cs.uid similarity index 100% rename from DomeFox/X/Submarine Stage/Debug/UpdateTube.cs.uid rename to DomeFox/XYZ/Submarine Stage/Debug/UpdateTube.cs.uid diff --git a/DomeFox/X/Submarine Stage/PostQuad.gdshader b/DomeFox/XYZ/Submarine Stage/PostQuad.gdshader similarity index 100% rename from DomeFox/X/Submarine Stage/PostQuad.gdshader rename to DomeFox/XYZ/Submarine Stage/PostQuad.gdshader diff --git a/DomeFox/X/Submarine Stage/PostQuad.gdshader.uid b/DomeFox/XYZ/Submarine Stage/PostQuad.gdshader.uid similarity index 100% rename from DomeFox/X/Submarine Stage/PostQuad.gdshader.uid rename to DomeFox/XYZ/Submarine Stage/PostQuad.gdshader.uid diff --git a/DomeFox/X/Submarine Stage/SpriteShadow.gdshader b/DomeFox/XYZ/Submarine Stage/SpriteShadow.gdshader similarity index 100% rename from DomeFox/X/Submarine Stage/SpriteShadow.gdshader rename to DomeFox/XYZ/Submarine Stage/SpriteShadow.gdshader diff --git a/DomeFox/X/Submarine Stage/SpriteShadow.gdshader.uid b/DomeFox/XYZ/Submarine Stage/SpriteShadow.gdshader.uid similarity index 100% rename from DomeFox/X/Submarine Stage/SpriteShadow.gdshader.uid rename to DomeFox/XYZ/Submarine Stage/SpriteShadow.gdshader.uid diff --git a/DomeFox/X/Submarine Stage/bush.png b/DomeFox/XYZ/Submarine Stage/bush.png similarity index 100% rename from DomeFox/X/Submarine Stage/bush.png rename to DomeFox/XYZ/Submarine Stage/bush.png diff --git a/DomeFox/X/Submarine Stage/bush.png.import b/DomeFox/XYZ/Submarine Stage/bush.png.import similarity index 76% rename from DomeFox/X/Submarine Stage/bush.png.import rename to DomeFox/XYZ/Submarine Stage/bush.png.import index bb1bbd6..3609d00 100644 --- a/DomeFox/X/Submarine Stage/bush.png.import +++ b/DomeFox/XYZ/Submarine Stage/bush.png.import @@ -3,7 +3,7 @@ importer="texture" type="CompressedTexture2D" uid="uid://dusktbtfsk86f" -path.s3tc="res://.godot/imported/bush.png-a0f0ef86b32061bae4b9d596fcf90128.s3tc.ctex" +path.s3tc="res://.godot/imported/bush.png-1540ee9ad0022b74dee8973f42bfba7f.s3tc.ctex" metadata={ "imported_formats": ["s3tc_bptc"], "vram_texture": true @@ -11,8 +11,8 @@ metadata={ [deps] -source_file="res://DomeFox/X/Submarine Stage/bush.png" -dest_files=["res://.godot/imported/bush.png-a0f0ef86b32061bae4b9d596fcf90128.s3tc.ctex"] +source_file="res://DomeFox/XYZ/Submarine Stage/bush.png" +dest_files=["res://.godot/imported/bush.png-1540ee9ad0022b74dee8973f42bfba7f.s3tc.ctex"] [params] diff --git a/DomeFox/X/Submarine Stage/plam-tree.png b/DomeFox/XYZ/Submarine Stage/plam-tree.png similarity index 100% rename from DomeFox/X/Submarine Stage/plam-tree.png rename to DomeFox/XYZ/Submarine Stage/plam-tree.png diff --git a/DomeFox/X/Submarine Stage/plam-tree.png.import b/DomeFox/XYZ/Submarine Stage/plam-tree.png.import similarity index 75% rename from DomeFox/X/Submarine Stage/plam-tree.png.import rename to DomeFox/XYZ/Submarine Stage/plam-tree.png.import index 4b427dd..f563f4e 100644 --- a/DomeFox/X/Submarine Stage/plam-tree.png.import +++ b/DomeFox/XYZ/Submarine Stage/plam-tree.png.import @@ -3,7 +3,7 @@ importer="texture" type="CompressedTexture2D" uid="uid://bcatjkrni7e17" -path.s3tc="res://.godot/imported/plam-tree.png-f246930a4afe59db5e7150be02bf0992.s3tc.ctex" +path.s3tc="res://.godot/imported/plam-tree.png-1a69897ef0f447f11f6a4d2a76757f2c.s3tc.ctex" metadata={ "imported_formats": ["s3tc_bptc"], "vram_texture": true @@ -11,8 +11,8 @@ metadata={ [deps] -source_file="res://DomeFox/X/Submarine Stage/plam-tree.png" -dest_files=["res://.godot/imported/plam-tree.png-f246930a4afe59db5e7150be02bf0992.s3tc.ctex"] +source_file="res://DomeFox/XYZ/Submarine Stage/plam-tree.png" +dest_files=["res://.godot/imported/plam-tree.png-1a69897ef0f447f11f6a4d2a76757f2c.s3tc.ctex"] [params] diff --git a/DomeFox/X/Submarine Stage/sprite.svg b/DomeFox/XYZ/Submarine Stage/sprite.svg similarity index 100% rename from DomeFox/X/Submarine Stage/sprite.svg rename to DomeFox/XYZ/Submarine Stage/sprite.svg diff --git a/DomeFox/X/Submarine Stage/sprite.svg.import b/DomeFox/XYZ/Submarine Stage/sprite.svg.import similarity index 78% rename from DomeFox/X/Submarine Stage/sprite.svg.import rename to DomeFox/XYZ/Submarine Stage/sprite.svg.import index 99d83e6..4b3c51b 100644 --- a/DomeFox/X/Submarine Stage/sprite.svg.import +++ b/DomeFox/XYZ/Submarine Stage/sprite.svg.import @@ -3,7 +3,7 @@ importer="texture" type="CompressedTexture2D" uid="uid://bejyka5p5k3e5" -path.s3tc="res://.godot/imported/sprite.svg-2df0026f2b6d21f2a617dda12aea73ab.s3tc.ctex" +path.s3tc="res://.godot/imported/sprite.svg-b00f27d61547f992376032694d409d9d.s3tc.ctex" metadata={ "imported_formats": ["s3tc_bptc"], "vram_texture": true @@ -11,8 +11,8 @@ metadata={ [deps] -source_file="res://DomeFox/X/Submarine Stage/sprite.svg" -dest_files=["res://.godot/imported/sprite.svg-2df0026f2b6d21f2a617dda12aea73ab.s3tc.ctex"] +source_file="res://DomeFox/XYZ/Submarine Stage/sprite.svg" +dest_files=["res://.godot/imported/sprite.svg-b00f27d61547f992376032694d409d9d.s3tc.ctex"] [params] diff --git a/addons/rokojori_action_library b/addons/rokojori_action_library index 1c98676..cc090bd 160000 --- a/addons/rokojori_action_library +++ b/addons/rokojori_action_library @@ -1 +1 @@ -Subproject commit 1c986768628cfb9cc735f9ffe88e9df33821abd9 +Subproject commit cc090bdf47a843c77225dd0bb96fc20ebfcea2c0 diff --git a/icon.svg b/icon.svg index 831bf3f..4bd5474 100644 --- a/icon.svg +++ b/icon.svg @@ -25,15 +25,15 @@ inkscape:deskcolor="#333333" inkscape:document-units="px" showgrid="false" - inkscape:zoom="0.8356201" - inkscape:cx="159.76159" - inkscape:cy="130.44205" + inkscape:zoom="0.59087264" + inkscape:cx="19.462739" + inkscape:cy="135.39297" inkscape:window-width="1920" inkscape:window-height="1017" inkscape:window-x="-8" inkscape:window-y="-8" inkscape:window-maximized="1" - inkscape:current-layer="g50087" /> + id="g117322" + transform="matrix(3.0645249,0,0,3.0645249,-8207.5849,-6760.6928)" + style="fill:#ffffff;fill-opacity:1"> diff --git a/project.godot b/project.godot index 646e8d7..2fb1d4e 100644 --- a/project.godot +++ b/project.godot @@ -11,9 +11,15 @@ config_version=5 [application] config/name="DomeFox" +run/main_scene="uid://3f5uj8xc0hqr" config/features=PackedStringArray("4.5", "C#", "Forward Plus") +run/max_fps=60 config/icon="res://icon.svg" +[audio] + +buses/default_bus_layout="" + [autoload] RokojoriRootAutoLoad="*res://addons/rokojori_action_library/Runtime/Godot/Root.cs"