diff --git a/assets/materials/grunk_overlays/danger_overlay.material b/assets/materials/grunk_overlays/danger_overlay.material index 3f2e300..1f41859 100644 Binary files a/assets/materials/grunk_overlays/danger_overlay.material and b/assets/materials/grunk_overlays/danger_overlay.material differ diff --git a/assets/materials/grunk_overlays/gunk_overlay.material b/assets/materials/grunk_overlays/gunk_overlay.material index 39a9cb1..5413dfe 100644 Binary files a/assets/materials/grunk_overlays/gunk_overlay.material and b/assets/materials/grunk_overlays/gunk_overlay.material differ diff --git a/assets/materials/grunk_overlays/lowrez_overlay.material b/assets/materials/grunk_overlays/lowrez_overlay.material index f68b700..ee46d09 100644 Binary files a/assets/materials/grunk_overlays/lowrez_overlay.material and b/assets/materials/grunk_overlays/lowrez_overlay.material differ diff --git a/assets/materials/grunk_overlays/oily_overlay.material b/assets/materials/grunk_overlays/oily_overlay.material index 5a3e29d..ebd55fa 100644 Binary files a/assets/materials/grunk_overlays/oily_overlay.material and b/assets/materials/grunk_overlays/oily_overlay.material differ diff --git a/assets/materials/metal_plate_02/metal_plate_02.material b/assets/materials/metal_plate_02/metal_plate_02.material index 9829b15..1b8e3dd 100644 Binary files a/assets/materials/metal_plate_02/metal_plate_02.material and b/assets/materials/metal_plate_02/metal_plate_02.material differ diff --git a/assets/props/overhead_light/overhead_light_burnout_E.png.import b/assets/props/overhead_light/overhead_light_burnout_E.png.import index f34780a..c9afc41 100644 --- a/assets/props/overhead_light/overhead_light_burnout_E.png.import +++ b/assets/props/overhead_light/overhead_light_burnout_E.png.import @@ -3,25 +3,27 @@ importer="texture" type="CompressedTexture2D" uid="uid://b0vorb12h2idg" -path="res://.godot/imported/overhead_light_burnout_E.png-ce71c7290fb299e0f7b60d0a9c7d4505.ctex" +path.s3tc="res://.godot/imported/overhead_light_burnout_E.png-ce71c7290fb299e0f7b60d0a9c7d4505.s3tc.ctex" +path.etc2="res://.godot/imported/overhead_light_burnout_E.png-ce71c7290fb299e0f7b60d0a9c7d4505.etc2.ctex" metadata={ -"vram_texture": false +"imported_formats": ["s3tc_bptc", "etc2_astc"], +"vram_texture": true } [deps] source_file="res://assets/props/overhead_light/overhead_light_burnout_E.png" -dest_files=["res://.godot/imported/overhead_light_burnout_E.png-ce71c7290fb299e0f7b60d0a9c7d4505.ctex"] +dest_files=["res://.godot/imported/overhead_light_burnout_E.png-ce71c7290fb299e0f7b60d0a9c7d4505.s3tc.ctex", "res://.godot/imported/overhead_light_burnout_E.png-ce71c7290fb299e0f7b60d0a9c7d4505.etc2.ctex"] [params] -compress/mode=0 +compress/mode=2 compress/high_quality=false compress/lossy_quality=0.7 compress/hdr_compression=1 compress/normal_map=0 compress/channel_pack=0 -mipmaps/generate=false +mipmaps/generate=true mipmaps/limit=-1 roughness/mode=0 roughness/src_normal="" @@ -31,4 +33,4 @@ process/normal_map_invert_y=false process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 -detect_3d/compress_to=1 +detect_3d/compress_to=0 diff --git a/levels/sandbox/editor_visual_demo.tscn b/levels/sandbox/editor_visual_demo.tscn index f543a26..e50da5e 100644 --- a/levels/sandbox/editor_visual_demo.tscn +++ b/levels/sandbox/editor_visual_demo.tscn @@ -91,6 +91,8 @@ shader_parameter/iridescence_intensity = 0.1 shader_parameter/overlay_emission_scale = 1.0 shader_parameter/edge_bleed = 0.25 shader_parameter/gunk_mask = ExtResource("3_3t4ks") +shader_parameter/base_uv_scale = Vector3(1, 1, 1) +shader_parameter/normal_blend = 1.0 [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_gpcv6"] data = PackedVector3Array(4.5, 0, 4.5, -4.5, 0, 4.5, 4.5, 0, -4.5, 4.5, 0, -4.5, -4.5, 0, 4.5, -4.5, 0, -4.5) @@ -243,6 +245,8 @@ shader_parameter/iridescence_intensity = 0.0 shader_parameter/overlay_emission_scale = 1.0 shader_parameter/edge_bleed = 0.25 shader_parameter/gunk_mask = ExtResource("31_753oq") +shader_parameter/base_uv_scale = Vector3(1, 1, 1) +shader_parameter/normal_blend = 1.0 [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_k52xx"] resource_local_to_scene = true diff --git a/levels/sandbox/sandbox.tscn b/levels/sandbox/sandbox.tscn index e87e753..ef288bb 100644 --- a/levels/sandbox/sandbox.tscn +++ b/levels/sandbox/sandbox.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=71 format=4 uid="uid://16ds4fvv72xk"] +[gd_scene load_steps=103 format=4 uid="uid://16ds4fvv72xk"] [ext_resource type="Environment" uid="uid://bkvij3ljl5ox3" path="res://levels/ghost_ship/environment_3.tres" id="1_fk1xc"] [ext_resource type="PackedScene" uid="uid://bwe2jdmvinhqd" path="res://src/player/player.tscn" id="1_h436a"] @@ -10,24 +10,45 @@ [ext_resource type="Material" uid="uid://cqjr3cbxtfg2j" path="res://assets/materials/grunk_overlays/gunk_overlay.material" id="7_tpfln"] [ext_resource type="ArrayMesh" uid="uid://5jt7xxr05lw3" path="res://assets/level/hallway/hallway_2.mesh" id="8_hrvvi"] [ext_resource type="ArrayMesh" uid="uid://o6k7ebet848p" path="res://assets/level/hallway/hallway_3.mesh" id="9_2roq2"] +[ext_resource type="Shader" uid="uid://o1vaioor4435" path="res://src/shaders/gunk/gunk_overlay.gdshader" id="9_hvycv"] [ext_resource type="PackedScene" uid="uid://b6eg8t04rkh0c" path="res://src/props/wall_switch/wall_switch.tscn" id="9_p27ol"] +[ext_resource type="Texture2D" uid="uid://no4s7dsg8tih" path="res://assets/props/overhead_light/overhead_light_N.png" id="10_1emik"] [ext_resource type="PackedScene" uid="uid://2yqi5u5eo025" path="res://src/world/gunk_node/grunk_nodule.tscn" id="10_2roq2"] [ext_resource type="PackedScene" uid="uid://d1kacn4b60ucy" path="res://src/ui/post_processing.tscn" id="11_6fwow"] +[ext_resource type="Gradient" uid="uid://dcr1dt7cujba4" path="res://assets/swatches/gradients/blessing.tres" id="11_idgxi"] +[ext_resource type="Texture2D" uid="uid://c1v1sj6b8rwrl" path="res://levels/ghost_ship/level/airlock/overhead_light_airlock_mask_C.png" id="12_1emik"] +[ext_resource type="NoiseTexture3D" uid="uid://qwu7xshh6o42" path="res://assets/materials/grunk_textures/detailed_grunk.tres" id="12_ts5bb"] +[ext_resource type="Gradient" uid="uid://drsjxjmcx54v4" path="res://assets/swatches/gradients/funkyfuture8.tres" id="13_iuvtc"] +[ext_resource type="ArrayMesh" uid="uid://m4did6uilrp7" path="res://assets/props/overhead_light/overhead_light.obj" id="14_pf2fq"] +[ext_resource type="Texture2D" uid="uid://brdnb2dfgauaa" path="res://assets/props/overhead_light/overhead_light_burnout_C.png" id="15_a3xnt"] [ext_resource type="Texture2D" uid="uid://dc3k6nnaddy0c" path="res://assets/props/railing/railing_C.png" id="15_ia0wb"] [ext_resource type="ArrayMesh" uid="uid://cvdabvdy6ewe4" path="res://assets/props/railing/railing.obj" id="15_tx1dy"] +[ext_resource type="Texture2D" uid="uid://b0vorb12h2idg" path="res://assets/props/overhead_light/overhead_light_burnout_E.png" id="16_m18je"] [ext_resource type="Texture2D" uid="uid://dgyk61lmv3q66" path="res://assets/props/railing/railing_M.png" id="16_tx1dy"] +[ext_resource type="Texture2D" uid="uid://c3pfufk3r4611" path="res://assets/props/overhead_light/overhead_light_burnout_M.png" id="17_18iak"] [ext_resource type="Texture2D" uid="uid://cd142v5tbh10j" path="res://assets/props/railing/railing_N.png" id="17_p1wtp"] [ext_resource type="Material" uid="uid://dmolqtdktqdsl" path="res://levels/ghost_ship/guide_sign/airlock_sign.material" id="17_v2ya2"] +[ext_resource type="Texture2D" uid="uid://buxuntbbfwvfg" path="res://assets/props/overhead_light/overhead_light_burnout_N.png" id="18_5dvti"] [ext_resource type="Texture2D" uid="uid://tpweuhaqj3uy" path="res://assets/props/railing/railing_R.png" id="18_hwij6"] +[ext_resource type="Texture2D" uid="uid://c40m0iq5tot1a" path="res://assets/props/overhead_light/overhead_light_burnout_R.png" id="19_0teru"] [ext_resource type="PackedScene" uid="uid://dtus42gmb1kqq" path="res://src/props/vending_machine/vending_machine.tscn" id="20_tx1dy"] [ext_resource type="Texture2D" uid="uid://d2xq0uvxh2ojk" path="res://assets/props/vending_machine/vending_machine_C.png" id="21_2l4r6"] +[ext_resource type="Texture2D" uid="uid://bsovubygl3go2" path="res://assets/props/crate_long/crate_long_N.png" id="21_m18je"] +[ext_resource type="Texture2D" uid="uid://cm1jrvx7ftx4c" path="res://assets/black.png" id="22_18iak"] [ext_resource type="Texture2D" uid="uid://d0xe37qm3k7d8" path="res://assets/props/vending_machine/vending_machine_E.png" id="22_aj57l"] +[ext_resource type="ArrayMesh" uid="uid://cd7vwjss7qytk" path="res://assets/props/crate_long/crate_long.obj" id="23_5dvti"] [ext_resource type="Texture2D" uid="uid://dkilg200w8x4y" path="res://assets/props/vending_machine/vending_machine_M.png" id="23_nnn8o"] +[ext_resource type="Texture2D" uid="uid://cd0w8eqpount3" path="res://assets/props/crate_long/crate_long_C.png" id="24_0teru"] [ext_resource type="Texture2D" uid="uid://8v7jta2qdvut" path="res://assets/props/vending_machine/vending_machine_N.png" id="24_tq6jb"] +[ext_resource type="Texture2D" uid="uid://da5p04vbiy3xe" path="res://assets/props/crate_long/crate_long_M.png" id="25_q4hvq"] [ext_resource type="Texture2D" uid="uid://gbvtbiurxrop" path="res://assets/props/vending_machine/vending_machine_R.png" id="25_tmxet"] [ext_resource type="Material" uid="uid://dutkfm4ek0ysh" path="res://assets/materials/grunk_overlays/bright_overlay.material" id="26_lorhs"] +[ext_resource type="Texture2D" uid="uid://b1m1my5q2vlwi" path="res://assets/props/crate_long/crate_long_R.png" id="26_tu4x4"] +[ext_resource type="Texture2D" uid="uid://bgc8oqsnimb8i" path="res://assets/level/floor/floor_1_N.png" id="27_0teru"] +[ext_resource type="ArrayMesh" uid="uid://dpr5cgq743f4s" path="res://assets/level/floor/floor_9x9.mesh" id="28_q4hvq"] [ext_resource type="Material" uid="uid://c1vy4bkwb1g5m" path="res://assets/materials/grunk_overlays/lowrez_overlay.material" id="28_tq6jb"] [ext_resource type="Material" uid="uid://dl3cvc4e7evn4" path="res://assets/materials/grunk_overlays/oily_overlay.material" id="29_tmxet"] +[ext_resource type="Texture2D" uid="uid://dthjo3ymo7say" path="res://levels/ghost_ship/level/airlock/floor_mask.png" id="29_tu4x4"] [ext_resource type="Material" uid="uid://7xrgrvf3lymv" path="res://assets/npc/shambler/shambler.material" id="30_ct1gt"] [ext_resource type="Material" uid="uid://1lpeda8rpndg" path="res://assets/materials/grunk_overlays/danger_overlay.material" id="30_lorhs"] [ext_resource type="Material" uid="uid://c7wfw7dvdquo8" path="res://assets/materials/grunk_overlays/crystal_overlay.material" id="30_v2ya2"] @@ -76,7 +97,7 @@ shadow_mesh = SubResource("ArrayMesh_24j8i") [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_nxc47"] data = PackedVector3Array(0.7236, -0.4472, 0.5257, 0, -1, 0, -0.2764, -0.4472, 0.8506, 0, -1, 0, 0.7236, -0.4472, 0.5257, 0.7236, -0.4472, -0.5257, -0.2764, -0.4472, 0.8506, 0, -1, 0, -0.8944, -0.4472, 0, -0.8944, -0.4472, 0, 0, -1, 0, -0.2764, -0.4472, -0.8506, -0.2764, -0.4472, -0.8506, 0, -1, 0, 0.7236, -0.4472, -0.5257, 0.7236, -0.4472, -0.5257, 0.7236, -0.4472, 0.5257, 0.8944, 0.4472, 0, 0.7236, -0.4472, 0.5257, -0.2764, -0.4472, 0.8506, 0.2764, 0.4472, 0.8506, -0.2764, -0.4472, 0.8506, -0.8944, -0.4472, 0, -0.7236, 0.4472, 0.5257, -0.8944, -0.4472, 0, -0.2764, -0.4472, -0.8506, -0.7236, 0.4472, -0.5257, -0.2764, -0.4472, -0.8506, 0.7236, -0.4472, -0.5257, 0.2764, 0.4472, -0.8506, 0.8944, 0.4472, 0, 0.7236, -0.4472, 0.5257, 0.2764, 0.4472, 0.8506, 0.2764, 0.4472, 0.8506, -0.2764, -0.4472, 0.8506, -0.7236, 0.4472, 0.5257, -0.7236, 0.4472, 0.5257, -0.8944, -0.4472, 0, -0.7236, 0.4472, -0.5257, -0.7236, 0.4472, -0.5257, -0.2764, -0.4472, -0.8506, 0.2764, 0.4472, -0.8506, 0.2764, 0.4472, -0.8506, 0.7236, -0.4472, -0.5257, 0.8944, 0.4472, 0, 0.8944, 0.4472, 0, 0.2764, 0.4472, 0.8506, 0, 1, 0, 0.2764, 0.4472, 0.8506, -0.7236, 0.4472, 0.5257, 0, 1, 0, -0.7236, 0.4472, 0.5257, -0.7236, 0.4472, -0.5257, 0, 1, 0, -0.7236, 0.4472, -0.5257, 0.2764, 0.4472, -0.8506, 0, 1, 0, 0.2764, 0.4472, -0.8506, 0.8944, 0.4472, 0, 0, 1, 0) -[sub_resource type="ShaderMaterial" id="ShaderMaterial_v2ya2"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_0teru"] resource_local_to_scene = true render_priority = 0 shader = ExtResource("5_rdjtm") @@ -140,7 +161,7 @@ shadow_mesh = SubResource("ArrayMesh_60cnp") [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_hvf6a"] data = PackedVector3Array(0.4375, 0.164, 0.7656, 0.4687, 0.2422, 0.7578, 0.5, 0.0937, 0.6875, 0.5, 0.0937, 0.6875, 0.4687, 0.2422, 0.7578, 0.5625, 0.2422, 0.6719, -0.4375, 0.164, 0.7656, -0.5, 0.0937, 0.6875, -0.4688, 0.2422, 0.7578, -0.4688, 0.2422, 0.7578, -0.5, 0.0937, 0.6875, -0.5625, 0.2422, 0.6719, 0.5, 0.0937, 0.6875, 0.5625, 0.2422, 0.6719, 0.5469, 0.0547, 0.5781, 0.5469, 0.0547, 0.5781, 0.5625, 0.2422, 0.6719, 0.625, 0.2422, 0.5625, -0.5, 0.0937, 0.6875, -0.5469, 0.0547, 0.5781, -0.5625, 0.2422, 0.6719, -0.5625, 0.2422, 0.6719, -0.5469, 0.0547, 0.5781, -0.625, 0.2422, 0.5625, 0.3515, 0.0312, 0.7187, 0.5, 0.0937, 0.6875, 0.3515, -0.0234, 0.6172, 0.3515, -0.0234, 0.6172, 0.5, 0.0937, 0.6875, 0.5469, 0.0547, 0.5781, -0.3516, 0.0312, 0.7187, -0.3516, -0.0234, 0.6172, -0.5, 0.0937, 0.6875, -0.5, 0.0937, 0.6875, -0.3516, -0.0234, 0.6172, -0.5469, 0.0547, 0.5781, 0.3515, 0.1328, 0.7812, 0.4375, 0.164, 0.7656, 0.3515, 0.0312, 0.7187, 0.3515, 0.0312, 0.7187, 0.4375, 0.164, 0.7656, 0.5, 0.0937, 0.6875, -0.3516, 0.1328, 0.7812, -0.3516, 0.0312, 0.7187, -0.4375, 0.164, 0.7656, -0.4375, 0.164, 0.7656, -0.3516, 0.0312, 0.7187, -0.5, 0.0937, 0.6875, 0.2734, 0.164, 0.7969, 0.3515, 0.1328, 0.7812, 0.2031, 0.0937, 0.7422, 0.2031, 0.0937, 0.7422, 0.3515, 0.1328, 0.7812, 0.3515, 0.0312, 0.7187, -0.2735, 0.164, 0.7969, -0.2031, 0.0937, 0.7422, -0.3516, 0.1328, 0.7812, -0.3516, 0.1328, 0.7812, -0.2031, 0.0937, 0.7422, -0.3516, 0.0312, 0.7187, 0.2031, 0.0937, 0.7422, 0.3515, 0.0312, 0.7187, 0.1562, 0.0547, 0.6484, 0.1562, 0.0547, 0.6484, 0.3515, 0.0312, 0.7187, 0.3515, -0.0234, 0.6172, -0.2031, 0.0937, 0.7422, -0.1563, 0.0547, 0.6484, -0.3516, 0.0312, 0.7187, -0.3516, 0.0312, 0.7187, -0.1563, 0.0547, 0.6484, -0.3516, -0.0234, 0.6172, 0.1406, 0.2422, 0.7422, 0.2031, 0.0937, 0.7422, 0.0781, 0.2422, 0.6562, 0.0781, 0.2422, 0.6562, 0.2031, 0.0937, 0.7422, 0.1562, 0.0547, 0.6484, -0.1406, 0.2422, 0.7422, -0.0781, 0.2422, 0.6562, -0.2031, 0.0937, 0.7422, -0.2031, 0.0937, 0.7422, -0.0781, 0.2422, 0.6562, -0.1563, 0.0547, 0.6484, 0.2422, 0.2422, 0.7969, 0.2734, 0.164, 0.7969, 0.1406, 0.2422, 0.7422, 0.1406, 0.2422, 0.7422, 0.2734, 0.164, 0.7969, 0.2031, 0.0937, 0.7422, -0.2422, 0.2422, 0.7969, -0.1406, 0.2422, 0.7422, -0.2735, 0.164, 0.7969, -0.2735, 0.164, 0.7969, -0.1406, 0.2422, 0.7422, -0.2031, 0.0937, 0.7422, 0.2734, 0.3281, 0.7969, 0.2422, 0.2422, 0.7969, 0.2031, 0.3906, 0.7422, 0.2031, 0.3906, 0.7422, 0.2422, 0.2422, 0.7969, 0.1406, 0.2422, 0.7422, -0.2735, 0.3281, 0.7969, -0.2031, 0.3906, 0.7422, -0.2422, 0.2422, 0.7969, -0.2422, 0.2422, 0.7969, -0.2031, 0.3906, 0.7422, -0.1406, 0.2422, 0.7422, 0.2031, 0.3906, 0.7422, 0.1406, 0.2422, 0.7422, 0.1562, 0.4375, 0.6484, 0.1562, 0.4375, 0.6484, 0.1406, 0.2422, 0.7422, 0.0781, 0.2422, 0.6562, -0.2031, 0.3906, 0.7422, -0.1563, 0.4375, 0.6484, -0.1406, 0.2422, 0.7422, -0.1406, 0.2422, 0.7422, -0.1563, 0.4375, 0.6484, -0.0781, 0.2422, 0.6562, 0.3515, 0.4531, 0.7187, 0.2031, 0.3906, 0.7422, 0.3515, 0.5156, 0.6172, 0.3515, 0.5156, 0.6172, 0.2031, 0.3906, 0.7422, 0.1562, 0.4375, 0.6484, -0.3516, 0.4531, 0.7187, -0.3516, 0.5156, 0.6172, -0.2031, 0.3906, 0.7422, -0.2031, 0.3906, 0.7422, -0.3516, 0.5156, 0.6172, -0.1563, 0.4375, 0.6484, 0.3515, 0.3594, 0.7812, 0.2734, 0.3281, 0.7969, 0.3515, 0.4531, 0.7187, 0.3515, 0.4531, 0.7187, 0.2734, 0.3281, 0.7969, 0.2031, 0.3906, 0.7422, -0.3516, 0.3594, 0.7812, -0.3516, 0.4531, 0.7187, -0.2735, 0.3281, 0.7969, -0.2735, 0.3281, 0.7969, -0.3516, 0.4531, 0.7187, -0.2031, 0.3906, 0.7422, 0.4375, 0.3281, 0.7656, 0.3515, 0.3594, 0.7812, 0.5, 0.3906, 0.6875, 0.5, 0.3906, 0.6875, 0.3515, 0.3594, 0.7812, 0.3515, 0.4531, 0.7187, -0.4375, 0.3281, 0.7656, -0.5, 0.3906, 0.6875, -0.3516, 0.3594, 0.7812, -0.3516, 0.3594, 0.7812, -0.5, 0.3906, 0.6875, -0.3516, 0.4531, 0.7187, 0.5, 0.3906, 0.6875, 0.3515, 0.4531, 0.7187, 0.5469, 0.4375, 0.5781, 0.5469, 0.4375, 0.5781, 0.3515, 0.4531, 0.7187, 0.3515, 0.5156, 0.6172, -0.5, 0.3906, 0.6875, -0.5469, 0.4375, 0.5781, -0.3516, 0.4531, 0.7187, -0.3516, 0.4531, 0.7187, -0.5469, 0.4375, 0.5781, -0.3516, 0.5156, 0.6172, 0.5625, 0.2422, 0.6719, 0.5, 0.3906, 0.6875, 0.625, 0.2422, 0.5625, 0.625, 0.2422, 0.5625, 0.5, 0.3906, 0.6875, 0.5469, 0.4375, 0.5781, -0.5625, 0.2422, 0.6719, -0.625, 0.2422, 0.5625, -0.5, 0.3906, 0.6875, -0.5, 0.3906, 0.6875, -0.625, 0.2422, 0.5625, -0.5469, 0.4375, 0.5781, 0.4687, 0.2422, 0.7578, 0.4375, 0.3281, 0.7656, 0.5625, 0.2422, 0.6719, 0.5625, 0.2422, 0.6719, 0.4375, 0.3281, 0.7656, 0.5, 0.3906, 0.6875, -0.4688, 0.2422, 0.7578, -0.5625, 0.2422, 0.6719, -0.4375, 0.3281, 0.7656, -0.4375, 0.3281, 0.7656, -0.5625, 0.2422, 0.6719, -0.5, 0.3906, 0.6875, 0.4375, 0.3281, 0.7656, 0.4687, 0.2422, 0.7578, 0.4453, 0.3359, 0.7812, 0.4453, 0.3359, 0.7812, 0.4687, 0.2422, 0.7578, 0.4765, 0.2422, 0.7734, -0.4375, 0.3281, 0.7656, -0.4453, 0.3359, 0.7812, -0.4688, 0.2422, 0.7578, -0.4688, 0.2422, 0.7578, -0.4453, 0.3359, 0.7812, -0.4766, 0.2422, 0.7734, 0.3515, 0.3594, 0.7812, 0.4375, 0.3281, 0.7656, 0.3515, 0.375, 0.8047, 0.3515, 0.375, 0.8047, 0.4375, 0.3281, 0.7656, 0.4453, 0.3359, 0.7812, -0.3516, 0.3594, 0.7812, -0.3516, 0.375, 0.8047, -0.4375, 0.3281, 0.7656, -0.4375, 0.3281, 0.7656, -0.3516, 0.375, 0.8047, -0.4453, 0.3359, 0.7812, 0.2734, 0.3281, 0.7969, 0.3515, 0.3594, 0.7812, 0.2656, 0.3359, 0.8203, 0.2656, 0.3359, 0.8203, 0.3515, 0.3594, 0.7812, 0.3515, 0.375, 0.8047, -0.2735, 0.3281, 0.7969, -0.2656, 0.3359, 0.8203, -0.3516, 0.3594, 0.7812, -0.3516, 0.3594, 0.7812, -0.2656, 0.3359, 0.8203, -0.3516, 0.375, 0.8047, 0.2422, 0.2422, 0.7969, 0.2734, 0.3281, 0.7969, 0.2265, 0.2422, 0.8203, 0.2265, 0.2422, 0.8203, 0.2734, 0.3281, 0.7969, 0.2656, 0.3359, 0.8203, -0.2422, 0.2422, 0.7969, -0.2266, 0.2422, 0.8203, -0.2735, 0.3281, 0.7969, -0.2735, 0.3281, 0.7969, -0.2266, 0.2422, 0.8203, -0.2656, 0.3359, 0.8203, 0.2734, 0.164, 0.7969, 0.2422, 0.2422, 0.7969, 0.2656, 0.1562, 0.8203, 0.2656, 0.1562, 0.8203, 0.2422, 0.2422, 0.7969, 0.2265, 0.2422, 0.8203, -0.2735, 0.164, 0.7969, -0.2656, 0.1562, 0.8203, -0.2422, 0.2422, 0.7969, -0.2422, 0.2422, 0.7969, -0.2656, 0.1562, 0.8203, -0.2266, 0.2422, 0.8203, 0.3515, 0.1328, 0.7812, 0.2734, 0.164, 0.7969, 0.3515, 0.1172, 0.8047, 0.3515, 0.1172, 0.8047, 0.2734, 0.164, 0.7969, 0.2656, 0.1562, 0.8203, -0.3516, 0.1328, 0.7812, -0.3516, 0.1172, 0.8047, -0.2735, 0.164, 0.7969, -0.2735, 0.164, 0.7969, -0.3516, 0.1172, 0.8047, -0.2656, 0.1562, 0.8203, 0.4375, 0.164, 0.7656, 0.3515, 0.1328, 0.7812, 0.4453, 0.1562, 0.7812, 0.4453, 0.1562, 0.7812, 0.3515, 0.1328, 0.7812, 0.3515, 0.1172, 0.8047, -0.4375, 0.164, 0.7656, -0.4453, 0.1562, 0.7812, -0.3516, 0.1328, 0.7812, -0.3516, 0.1328, 0.7812, -0.4453, 0.1562, 0.7812, -0.3516, 0.1172, 0.8047, 0.4687, 0.2422, 0.7578, 0.4375, 0.164, 0.7656, 0.4765, 0.2422, 0.7734, 0.4765, 0.2422, 0.7734, 0.4375, 0.164, 0.7656, 0.4453, 0.1562, 0.7812, -0.4688, 0.2422, 0.7578, -0.4766, 0.2422, 0.7734, -0.4375, 0.164, 0.7656, -0.4375, 0.164, 0.7656, -0.4766, 0.2422, 0.7734, -0.4453, 0.1562, 0.7812, 0.4453, 0.1562, 0.7812, 0.3515, 0.2422, 0.8281, 0.4765, 0.2422, 0.7734, -0.4453, 0.1562, 0.7812, -0.4766, 0.2422, 0.7734, -0.3516, 0.2422, 0.8281, 0.4453, 0.1562, 0.7812, 0.3515, 0.1172, 0.8047, 0.3515, 0.2422, 0.8281, -0.4453, 0.1562, 0.7812, -0.3516, 0.2422, 0.8281, -0.3516, 0.1172, 0.8047, 0.2656, 0.1562, 0.8203, 0.3515, 0.2422, 0.8281, 0.3515, 0.1172, 0.8047, -0.2656, 0.1562, 0.8203, -0.3516, 0.1172, 0.8047, -0.3516, 0.2422, 0.8281, 0.2265, 0.2422, 0.8203, 0.3515, 0.2422, 0.8281, 0.2656, 0.1562, 0.8203, -0.2266, 0.2422, 0.8203, -0.2656, 0.1562, 0.8203, -0.3516, 0.2422, 0.8281, 0.2656, 0.3359, 0.8203, 0.3515, 0.2422, 0.8281, 0.2265, 0.2422, 0.8203, -0.2656, 0.3359, 0.8203, -0.2266, 0.2422, 0.8203, -0.3516, 0.2422, 0.8281, 0.3515, 0.375, 0.8047, 0.3515, 0.2422, 0.8281, 0.2656, 0.3359, 0.8203, -0.3516, 0.375, 0.8047, -0.2656, 0.3359, 0.8203, -0.3516, 0.2422, 0.8281, 0.4453, 0.3359, 0.7812, 0.3515, 0.2422, 0.8281, 0.3515, 0.375, 0.8047, -0.4453, 0.3359, 0.7812, -0.3516, 0.375, 0.8047, -0.3516, 0.2422, 0.8281, 0.4765, 0.2422, 0.7734, 0.3515, 0.2422, 0.8281, 0.4453, 0.3359, 0.7812, -0.4766, 0.2422, 0.7734, -0.4453, 0.3359, 0.7812, -0.3516, 0.2422, 0.8281, 0.164, -0.9297, 0.6328, 0.1797, -0.9688, 0.5547, 0, -0.9453, 0.6406, 0, -0.9453, 0.6406, 0.1797, -0.9688, 0.5547, 0, -0.9844, 0.5781, -0.1641, -0.9297, 0.6328, 0, -0.9453, 0.6406, -0.1797, -0.9688, 0.5547, -0.1797, -0.9688, 0.5547, 0, -0.9453, 0.6406, 0, -0.9844, 0.5781, 0.2343, -0.9141, 0.6328, 0.3281, -0.9453, 0.5234, 0.164, -0.9297, 0.6328, 0.164, -0.9297, 0.6328, 0.3281, -0.9453, 0.5234, 0.1797, -0.9688, 0.5547, -0.2344, -0.9141, 0.6328, -0.1641, -0.9297, 0.6328, -0.3281, -0.9453, 0.5234, -0.3281, -0.9453, 0.5234, -0.1641, -0.9297, 0.6328, -0.1797, -0.9688, 0.5547, 0.2656, -0.8203, 0.6641, 0.3671, -0.8906, 0.5312, 0.2343, -0.9141, 0.6328, 0.2343, -0.9141, 0.6328, 0.3671, -0.8906, 0.5312, 0.3281, -0.9453, 0.5234, -0.2656, -0.8203, 0.6641, -0.2344, -0.9141, 0.6328, -0.3672, -0.8906, 0.5312, -0.3672, -0.8906, 0.5312, -0.2344, -0.9141, 0.6328, -0.3281, -0.9453, 0.5234, 0.25, -0.7031, 0.6875, 0.3515, -0.6953, 0.5703, 0.2656, -0.8203, 0.6641, 0.2656, -0.8203, 0.6641, 0.3515, -0.6953, 0.5703, 0.3671, -0.8906, 0.5312, -0.25, -0.7031, 0.6875, -0.2656, -0.8203, 0.6641, -0.3516, -0.6953, 0.5703, -0.3516, -0.6953, 0.5703, -0.2656, -0.8203, 0.6641, -0.3672, -0.8906, 0.5312, 0.2109, -0.4453, 0.7109, 0.3125, -0.4375, 0.5703, 0.25, -0.7031, 0.6875, 0.25, -0.7031, 0.6875, 0.3125, -0.4375, 0.5703, 0.3515, -0.6953, 0.5703, -0.211, -0.4453, 0.7109, -0.25, -0.7031, 0.6875, -0.3125, -0.4375, 0.5703, -0.3125, -0.4375, 0.5703, -0.25, -0.7031, 0.6875, -0.3516, -0.6953, 0.5703, 0.4375, -0.1406, 0.5312, 0.2031, -0.1875, 0.5625, 0.3984, -0.0469, 0.6719, 0.3984, -0.0469, 0.6719, 0.2031, -0.1875, 0.5625, 0.125, -0.1016, 0.8125, -0.4375, -0.1406, 0.5312, -0.3984, -0.0469, 0.6719, -0.2031, -0.1875, 0.5625, -0.2031, -0.1875, 0.5625, -0.3984, -0.0469, 0.6719, -0.125, -0.1016, 0.8125, 0.6328, -0.0391, 0.5391, 0.4375, -0.1406, 0.5312, 0.6172, 0.0547, 0.625, 0.6172, 0.0547, 0.625, 0.4375, -0.1406, 0.5312, 0.3984, -0.0469, 0.6719, -0.6328, -0.0391, 0.5391, -0.6172, 0.0547, 0.625, -0.4375, -0.1406, 0.5312, -0.4375, -0.1406, 0.5312, -0.6172, 0.0547, 0.625, -0.3984, -0.0469, 0.6719, 0.8281, 0.1484, 0.4453, 0.6328, -0.0391, 0.5391, 0.7266, 0.2031, 0.6016, 0.7266, 0.2031, 0.6016, 0.6328, -0.0391, 0.5391, 0.6172, 0.0547, 0.625, -0.8282, 0.1484, 0.4453, -0.7266, 0.2031, 0.6016, -0.6328, -0.0391, 0.5391, -0.6328, -0.0391, 0.5391, -0.7266, 0.2031, 0.6016, -0.6172, 0.0547, 0.625, 0.8594, 0.4297, 0.5937, 0.8281, 0.1484, 0.4453, 0.7422, 0.375, 0.6562, 0.7422, 0.375, 0.6562, 0.8281, 0.1484, 0.4453, 0.7266, 0.2031, 0.6016, -0.8594, 0.4297, 0.5937, -0.7422, 0.375, 0.6562, -0.8282, 0.1484, 0.4453, -0.8282, 0.1484, 0.4453, -0.7422, 0.375, 0.6562, -0.7266, 0.2031, 0.6016, 0.7109, 0.4844, 0.625, 0.8594, 0.4297, 0.5937, 0.6875, 0.414, 0.7266, 0.6875, 0.414, 0.7266, 0.8594, 0.4297, 0.5937, 0.7422, 0.375, 0.6562, -0.711, 0.4844, 0.625, -0.6875, 0.414, 0.7266, -0.8594, 0.4297, 0.5937, -0.8594, 0.4297, 0.5937, -0.6875, 0.414, 0.7266, -0.7422, 0.375, 0.6562, 0.4922, 0.6016, 0.6875, 0.7109, 0.4844, 0.625, 0.4375, 0.5469, 0.7969, 0.4375, 0.5469, 0.7969, 0.7109, 0.4844, 0.625, 0.6875, 0.414, 0.7266, -0.4922, 0.6016, 0.6875, -0.4375, 0.5469, 0.7969, -0.711, 0.4844, 0.625, -0.711, 0.4844, 0.625, -0.4375, 0.5469, 0.7969, -0.6875, 0.414, 0.7266, 0.3203, 0.7578, 0.7344, 0.4922, 0.6016, 0.6875, 0.3125, 0.6406, 0.8359, 0.3125, 0.6406, 0.8359, 0.4922, 0.6016, 0.6875, 0.4375, 0.5469, 0.7969, -0.3203, 0.7578, 0.7344, -0.3125, 0.6406, 0.8359, -0.4922, 0.6016, 0.6875, -0.4922, 0.6016, 0.6875, -0.3125, 0.6406, 0.8359, -0.4375, 0.5469, 0.7969, 0.1562, 0.7187, 0.7578, 0.3203, 0.7578, 0.7344, 0.2031, 0.6172, 0.8516, 0.2031, 0.6172, 0.8516, 0.3203, 0.7578, 0.7344, 0.3125, 0.6406, 0.8359, -0.1563, 0.7187, 0.7578, -0.2031, 0.6172, 0.8516, -0.3203, 0.7578, 0.7344, -0.3203, 0.7578, 0.7344, -0.2031, 0.6172, 0.8516, -0.3125, 0.6406, 0.8359, 0.0625, 0.4922, 0.75, 0.1562, 0.7187, 0.7578, 0.1015, 0.4297, 0.8437, 0.1015, 0.4297, 0.8437, 0.1562, 0.7187, 0.7578, 0.2031, 0.6172, 0.8516, -0.0625, 0.4922, 0.75, -0.1016, 0.4297, 0.8437, -0.1563, 0.7187, 0.7578, -0.1563, 0.7187, 0.7578, -0.1016, 0.4297, 0.8437, -0.2031, 0.6172, 0.8516, 0, 0.4297, 0.7422, 0.0625, 0.4922, 0.75, 0, 0.3516, 0.8203, 0, 0.3516, 0.8203, 0.0625, 0.4922, 0.75, 0.1015, 0.4297, 0.8437, 0, 0.4297, 0.7422, 0, 0.3516, 0.8203, -0.0625, 0.4922, 0.75, -0.0625, 0.4922, 0.75, 0, 0.3516, 0.8203, -0.1016, 0.4297, 0.8437, 0.25, 0.4687, 0.7578, 0.164, 0.414, 0.7734, 0.2031, 0.6172, 0.8516, 0.2031, 0.6172, 0.8516, 0.164, 0.414, 0.7734, 0.1015, 0.4297, 0.8437, -0.25, 0.4687, 0.7578, -0.2031, 0.6172, 0.8516, -0.1641, 0.414, 0.7734, -0.1641, 0.414, 0.7734, -0.2031, 0.6172, 0.8516, -0.1016, 0.4297, 0.8437, 0.3281, 0.4766, 0.7422, 0.25, 0.4687, 0.7578, 0.3125, 0.6406, 0.8359, 0.3125, 0.6406, 0.8359, 0.25, 0.4687, 0.7578, 0.2031, 0.6172, 0.8516, -0.3281, 0.4766, 0.7422, -0.3125, 0.6406, 0.8359, -0.25, 0.4687, 0.7578, -0.25, 0.4687, 0.7578, -0.3125, 0.6406, 0.8359, -0.2031, 0.6172, 0.8516, 0.4375, 0.5469, 0.7969, 0.4297, 0.4375, 0.7187, 0.3125, 0.6406, 0.8359, 0.3125, 0.6406, 0.8359, 0.4297, 0.4375, 0.7187, 0.3281, 0.4766, 0.7422, -0.4375, 0.5469, 0.7969, -0.3125, 0.6406, 0.8359, -0.4297, 0.4375, 0.7187, -0.4297, 0.4375, 0.7187, -0.3125, 0.6406, 0.8359, -0.3281, 0.4766, 0.7422, 0.6875, 0.414, 0.7266, 0.6016, 0.375, 0.6641, 0.4375, 0.5469, 0.7969, 0.4375, 0.5469, 0.7969, 0.6016, 0.375, 0.6641, 0.4297, 0.4375, 0.7187, -0.6875, 0.414, 0.7266, -0.4375, 0.5469, 0.7969, -0.6016, 0.375, 0.6641, -0.6016, 0.375, 0.6641, -0.4375, 0.5469, 0.7969, -0.4297, 0.4375, 0.7187, 0.7422, 0.375, 0.6562, 0.6406, 0.2969, 0.6484, 0.6875, 0.414, 0.7266, 0.6875, 0.414, 0.7266, 0.6406, 0.2969, 0.6484, 0.6016, 0.375, 0.6641, -0.7422, 0.375, 0.6562, -0.6875, 0.414, 0.7266, -0.6406, 0.2969, 0.6484, -0.6406, 0.2969, 0.6484, -0.6875, 0.414, 0.7266, -0.6016, 0.375, 0.6641, 0.7266, 0.2031, 0.6016, 0.625, 0.1875, 0.6484, 0.7422, 0.375, 0.6562, 0.7422, 0.375, 0.6562, 0.625, 0.1875, 0.6484, 0.6406, 0.2969, 0.6484, -0.7266, 0.2031, 0.6016, -0.7422, 0.375, 0.6562, -0.625, 0.1875, 0.6484, -0.625, 0.1875, 0.6484, -0.7422, 0.375, 0.6562, -0.6406, 0.2969, 0.6484, 0.6172, 0.0547, 0.625, 0.4922, 0.0625, 0.6719, 0.7266, 0.2031, 0.6016, 0.7266, 0.2031, 0.6016, 0.4922, 0.0625, 0.6719, 0.625, 0.1875, 0.6484, -0.6172, 0.0547, 0.625, -0.7266, 0.2031, 0.6016, -0.4922, 0.0625, 0.6719, -0.4922, 0.0625, 0.6719, -0.7266, 0.2031, 0.6016, -0.625, 0.1875, 0.6484, 0.3984, -0.0469, 0.6719, 0.375, 0.0156, 0.7031, 0.6172, 0.0547, 0.625, 0.6172, 0.0547, 0.625, 0.375, 0.0156, 0.7031, 0.4922, 0.0625, 0.6719, -0.3984, -0.0469, 0.6719, -0.6172, 0.0547, 0.625, -0.375, 0.0156, 0.7031, -0.375, 0.0156, 0.7031, -0.6172, 0.0547, 0.625, -0.4922, 0.0625, 0.6719, 0.125, -0.1016, 0.8125, 0.2031, 0.0937, 0.7422, 0.3984, -0.0469, 0.6719, 0.3984, -0.0469, 0.6719, 0.2031, 0.0937, 0.7422, 0.375, 0.0156, 0.7031, -0.125, -0.1016, 0.8125, -0.3984, -0.0469, 0.6719, -0.2031, 0.0937, 0.7422, -0.2031, 0.0937, 0.7422, -0.3984, -0.0469, 0.6719, -0.375, 0.0156, 0.7031, 0.164, 0.1406, 0.75, 0.2031, 0.0937, 0.7422, 0, 0.0468, 0.7266, 0, 0.0468, 0.7266, 0.2031, 0.0937, 0.7422, 0.125, -0.1016, 0.8125, -0.1641, 0.1406, 0.75, 0, 0.0468, 0.7266, -0.2031, 0.0937, 0.7422, -0.2031, 0.0937, 0.7422, 0, 0.0468, 0.7266, -0.125, -0.1016, 0.8125, 0.1015, 0.4297, 0.8437, 0.164, 0.414, 0.7734, 0, 0.3516, 0.8203, 0, 0.3516, 0.8203, 0.164, 0.414, 0.7734, 0.125, 0.3047, 0.7656, -0.1016, 0.4297, 0.8437, 0, 0.3516, 0.8203, -0.1641, 0.414, 0.7734, -0.1641, 0.414, 0.7734, 0, 0.3516, 0.8203, -0.125, 0.3047, 0.7656, 0, 0.3516, 0.8203, 0.125, 0.3047, 0.7656, 0, 0.2109, 0.7656, 0, 0.2109, 0.7656, 0.125, 0.3047, 0.7656, 0.1328, 0.2109, 0.7578, 0, 0.3516, 0.8203, 0, 0.2109, 0.7656, -0.125, 0.3047, 0.7656, -0.125, 0.3047, 0.7656, 0, 0.2109, 0.7656, -0.1328, 0.2109, 0.7578, 0.164, 0.1406, 0.75, 0, 0.0468, 0.7266, 0.1328, 0.2109, 0.7578, 0.1328, 0.2109, 0.7578, 0, 0.0468, 0.7266, 0, 0.2109, 0.7656, -0.1641, 0.1406, 0.75, -0.1328, 0.2109, 0.7578, 0, 0.0468, 0.7266, 0, 0.0468, 0.7266, -0.1328, 0.2109, 0.7578, 0, 0.2109, 0.7656, 0, -0.8906, 0.6875, 0.0625, -0.8828, 0.6953, 0, -0.9453, 0.6406, 0, -0.9453, 0.6406, 0.0625, -0.8828, 0.6953, 0.164, -0.9297, 0.6328, 0, -0.8906, 0.6875, 0, -0.9453, 0.6406, -0.0625, -0.8828, 0.6953, -0.0625, -0.8828, 0.6953, 0, -0.9453, 0.6406, -0.1641, -0.9297, 0.6328, 0.0625, -0.8828, 0.6953, 0.1172, -0.8359, 0.7109, 0.164, -0.9297, 0.6328, 0.164, -0.9297, 0.6328, 0.1172, -0.8359, 0.7109, 0.2343, -0.9141, 0.6328, -0.0625, -0.8828, 0.6953, -0.1641, -0.9297, 0.6328, -0.1172, -0.8359, 0.7109, -0.1172, -0.8359, 0.7109, -0.1641, -0.9297, 0.6328, -0.2344, -0.9141, 0.6328, 0.1172, -0.8359, 0.7109, 0.1093, -0.7188, 0.7344, 0.2343, -0.9141, 0.6328, 0.2343, -0.9141, 0.6328, 0.1093, -0.7188, 0.7344, 0.2656, -0.8203, 0.6641, -0.1172, -0.8359, 0.7109, -0.2344, -0.9141, 0.6328, -0.1094, -0.7188, 0.7344, -0.1094, -0.7188, 0.7344, -0.2344, -0.9141, 0.6328, -0.2656, -0.8203, 0.6641, 0.0781, -0.4453, 0.75, 0.2109, -0.4453, 0.7109, 0.1172, -0.6875, 0.7344, 0.1172, -0.6875, 0.7344, 0.2109, -0.4453, 0.7109, 0.25, -0.7031, 0.6875, -0.0781, -0.4453, 0.75, -0.1172, -0.6875, 0.7344, -0.211, -0.4453, 0.7109, -0.211, -0.4453, 0.7109, -0.1172, -0.6875, 0.7344, -0.25, -0.7031, 0.6875, 0.2656, -0.8203, 0.6641, 0.1093, -0.7188, 0.7344, 0.25, -0.7031, 0.6875, 0.25, -0.7031, 0.6875, 0.1093, -0.7188, 0.7344, 0.1172, -0.6875, 0.7344, -0.2656, -0.8203, 0.6641, -0.25, -0.7031, 0.6875, -0.1094, -0.7188, 0.7344, -0.1094, -0.7188, 0.7344, -0.25, -0.7031, 0.6875, -0.1172, -0.6875, 0.7344, 0, -0.3281, 0.7422, 0.0859, -0.2891, 0.7422, 0, -0.4453, 0.75, 0, -0.4453, 0.75, 0.0859, -0.2891, 0.7422, 0.0781, -0.4453, 0.75, 0, -0.3281, 0.7422, 0, -0.4453, 0.75, -0.086, -0.2891, 0.7422, -0.086, -0.2891, 0.7422, 0, -0.4453, 0.75, -0.0781, -0.4453, 0.75, 0.0781, -0.4453, 0.75, 0.1172, -0.6875, 0.7344, 0, -0.4453, 0.75, 0, -0.4453, 0.75, 0.1172, -0.6875, 0.7344, 0, -0.6797, 0.7344, -0.0781, -0.4453, 0.75, 0, -0.4453, 0.75, -0.1172, -0.6875, 0.7344, -0.1172, -0.6875, 0.7344, 0, -0.4453, 0.75, 0, -0.6797, 0.7344, 0.1093, -0.7188, 0.7344, 0, -0.7656, 0.7344, 0.1172, -0.6875, 0.7344, 0.1172, -0.6875, 0.7344, 0, -0.7656, 0.7344, 0, -0.6797, 0.7344, -0.1094, -0.7188, 0.7344, -0.1172, -0.6875, 0.7344, 0, -0.7656, 0.7344, 0, -0.7656, 0.7344, -0.1172, -0.6875, 0.7344, 0, -0.6797, 0.7344, 0.1328, -0.2266, 0.7969, 0.125, -0.2266, 0.75, 0.0937, -0.2735, 0.7812, 0.0937, -0.2735, 0.7812, 0.125, -0.2266, 0.75, 0.0859, -0.2891, 0.7422, -0.1328, -0.2266, 0.7969, -0.0938, -0.2735, 0.7812, -0.125, -0.2266, 0.75, -0.125, -0.2266, 0.75, -0.0938, -0.2735, 0.7812, -0.086, -0.2891, 0.7422, 0.1093, -0.1328, 0.7812, 0.1015, -0.1484, 0.7422, 0.1328, -0.2266, 0.7969, 0.1328, -0.2266, 0.7969, 0.1015, -0.1484, 0.7422, 0.125, -0.2266, 0.75, -0.1094, -0.1328, 0.7812, -0.1328, -0.2266, 0.7969, -0.1016, -0.1484, 0.7422, -0.1016, -0.1484, 0.7422, -0.1328, -0.2266, 0.7969, -0.125, -0.2266, 0.75, 0.039, -0.125, 0.7812, 0, -0.1406, 0.7422, 0.1093, -0.1328, 0.7812, 0.1093, -0.1328, 0.7812, 0, -0.1406, 0.7422, 0.1015, -0.1484, 0.7422, -0.0391, -0.125, 0.7812, -0.1094, -0.1328, 0.7812, 0, -0.1406, 0.7422, 0, -0.1406, 0.7422, -0.1094, -0.1328, 0.7812, -0.1016, -0.1484, 0.7422, 0, -0.1875, 0.7969, 0, -0.1953, 0.75, 0.039, -0.125, 0.7812, 0.039, -0.125, 0.7812, 0, -0.1953, 0.75, 0, -0.1406, 0.7422, 0, -0.1875, 0.7969, -0.0391, -0.125, 0.7812, 0, -0.1953, 0.75, 0, -0.1953, 0.75, -0.0391, -0.125, 0.7812, 0, -0.1406, 0.7422, 0.0859, -0.2891, 0.7422, 0, -0.3281, 0.7422, 0.0937, -0.2735, 0.7812, 0.0937, -0.2735, 0.7812, 0, -0.3281, 0.7422, 0, -0.3203, 0.7812, -0.086, -0.2891, 0.7422, -0.0938, -0.2735, 0.7812, 0, -0.3281, 0.7422, 0, -0.3281, 0.7422, -0.0938, -0.2735, 0.7812, 0, -0.3203, 0.7812, 0.0937, -0.2735, 0.7812, 0, -0.3203, 0.7812, 0.0781, -0.25, 0.8047, 0.0781, -0.25, 0.8047, 0, -0.3203, 0.7812, 0, -0.2891, 0.8047, -0.0938, -0.2735, 0.7812, -0.0781, -0.25, 0.8047, 0, -0.3203, 0.7812, 0, -0.3203, 0.7812, -0.0781, -0.25, 0.8047, 0, -0.2891, 0.8047, 0, -0.2032, 0.8281, 0, -0.1875, 0.7969, 0.0468, -0.1484, 0.8125, 0.0468, -0.1484, 0.8125, 0, -0.1875, 0.7969, 0.039, -0.125, 0.7812, 0, -0.2032, 0.8281, -0.0469, -0.1484, 0.8125, 0, -0.1875, 0.7969, 0, -0.1875, 0.7969, -0.0469, -0.1484, 0.8125, -0.0391, -0.125, 0.7812, 0.0468, -0.1484, 0.8125, 0.039, -0.125, 0.7812, 0.0937, -0.1563, 0.8125, 0.0937, -0.1563, 0.8125, 0.039, -0.125, 0.7812, 0.1093, -0.1328, 0.7812, -0.0469, -0.1484, 0.8125, -0.0938, -0.1563, 0.8125, -0.0391, -0.125, 0.7812, -0.0391, -0.125, 0.7812, -0.0938, -0.1563, 0.8125, -0.1094, -0.1328, 0.7812, 0.0937, -0.1563, 0.8125, 0.1093, -0.1328, 0.7812, 0.1093, -0.2266, 0.8281, 0.1093, -0.2266, 0.8281, 0.1093, -0.1328, 0.7812, 0.1328, -0.2266, 0.7969, -0.0938, -0.1563, 0.8125, -0.1094, -0.2266, 0.8281, -0.1094, -0.1328, 0.7812, -0.1094, -0.1328, 0.7812, -0.1094, -0.2266, 0.8281, -0.1328, -0.2266, 0.7969, 0.1093, -0.2266, 0.8281, 0.1328, -0.2266, 0.7969, 0.0781, -0.25, 0.8047, 0.0781, -0.25, 0.8047, 0.1328, -0.2266, 0.7969, 0.0937, -0.2735, 0.7812, -0.1094, -0.2266, 0.8281, -0.0781, -0.25, 0.8047, -0.1328, -0.2266, 0.7969, -0.1328, -0.2266, 0.7969, -0.0781, -0.25, 0.8047, -0.0938, -0.2735, 0.7812, 0.1093, -0.2266, 0.8281, 0, -0.2032, 0.8281, 0.0937, -0.1563, 0.8125, 0.0937, -0.1563, 0.8125, 0, -0.2032, 0.8281, 0.0468, -0.1484, 0.8125, -0.1094, -0.2266, 0.8281, -0.0938, -0.1563, 0.8125, 0, -0.2032, 0.8281, 0, -0.2032, 0.8281, -0.0938, -0.1563, 0.8125, -0.0469, -0.1484, 0.8125, 0, -0.2891, 0.8047, 0, -0.2032, 0.8281, 0.0781, -0.25, 0.8047, 0.0781, -0.25, 0.8047, 0, -0.2032, 0.8281, 0.1093, -0.2266, 0.8281, 0, -0.2891, 0.8047, -0.0781, -0.25, 0.8047, 0, -0.2032, 0.8281, 0, -0.2032, 0.8281, -0.0781, -0.25, 0.8047, -0.1094, -0.2266, 0.8281, 0.1015, -0.1484, 0.7422, 0, -0.1406, 0.7422, 0.125, -0.1016, 0.8125, 0.125, -0.1016, 0.8125, 0, -0.1406, 0.7422, 0, 0.0468, 0.7266, -0.1016, -0.1484, 0.7422, -0.125, -0.1016, 0.8125, 0, -0.1406, 0.7422, 0, -0.1406, 0.7422, -0.125, -0.1016, 0.8125, 0, 0.0468, 0.7266, 0.125, -0.2266, 0.75, 0.1015, -0.1484, 0.7422, 0.164, -0.2422, 0.7109, 0.164, -0.2422, 0.7109, 0.1015, -0.1484, 0.7422, 0.125, -0.1016, 0.8125, -0.125, -0.2266, 0.75, -0.1641, -0.2422, 0.7109, -0.1016, -0.1484, 0.7422, -0.1016, -0.1484, 0.7422, -0.1641, -0.2422, 0.7109, -0.125, -0.1016, 0.8125, 0.0859, -0.2891, 0.7422, 0.125, -0.2266, 0.75, 0.1797, -0.3125, 0.7109, 0.1797, -0.3125, 0.7109, 0.125, -0.2266, 0.75, 0.164, -0.2422, 0.7109, -0.086, -0.2891, 0.7422, -0.1797, -0.3125, 0.7109, -0.125, -0.2266, 0.75, -0.125, -0.2266, 0.75, -0.1797, -0.3125, 0.7109, -0.1641, -0.2422, 0.7109, 0.0781, -0.4453, 0.75, 0.0859, -0.2891, 0.7422, 0.2109, -0.4453, 0.7109, 0.2109, -0.4453, 0.7109, 0.0859, -0.2891, 0.7422, 0.1797, -0.3125, 0.7109, -0.0781, -0.4453, 0.75, -0.211, -0.4453, 0.7109, -0.086, -0.2891, 0.7422, -0.086, -0.2891, 0.7422, -0.211, -0.4453, 0.7109, -0.1797, -0.3125, 0.7109, 0.2578, -0.3125, 0.5547, 0.3125, -0.4375, 0.5703, 0.1797, -0.3125, 0.7109, 0.1797, -0.3125, 0.7109, 0.3125, -0.4375, 0.5703, 0.2109, -0.4453, 0.7109, -0.2578, -0.3125, 0.5547, -0.1797, -0.3125, 0.7109, -0.3125, -0.4375, 0.5703, -0.3125, -0.4375, 0.5703, -0.1797, -0.3125, 0.7109, -0.211, -0.4453, 0.7109, 0.2343, -0.25, 0.5547, 0.2578, -0.3125, 0.5547, 0.164, -0.2422, 0.7109, 0.164, -0.2422, 0.7109, 0.2578, -0.3125, 0.5547, 0.1797, -0.3125, 0.7109, -0.2344, -0.25, 0.5547, -0.1641, -0.2422, 0.7109, -0.2578, -0.3125, 0.5547, -0.2578, -0.3125, 0.5547, -0.1641, -0.2422, 0.7109, -0.1797, -0.3125, 0.7109, 0.125, -0.1016, 0.8125, 0.2031, -0.1875, 0.5625, 0.164, -0.2422, 0.7109, 0.164, -0.2422, 0.7109, 0.2031, -0.1875, 0.5625, 0.2343, -0.25, 0.5547, -0.125, -0.1016, 0.8125, -0.1641, -0.2422, 0.7109, -0.2031, -0.1875, 0.5625, -0.2031, -0.1875, 0.5625, -0.1641, -0.2422, 0.7109, -0.2344, -0.25, 0.5547, 0, -0.7656, 0.7344, 0.1093, -0.7188, 0.7344, 0, -0.7735, 0.7187, 0, -0.7735, 0.7187, 0.1093, -0.7188, 0.7344, 0.0937, -0.7422, 0.7266, 0, -0.7656, 0.7344, 0, -0.7735, 0.7187, -0.1094, -0.7188, 0.7344, -0.1094, -0.7188, 0.7344, 0, -0.7735, 0.7187, -0.0938, -0.7422, 0.7266, 0.1093, -0.7188, 0.7344, 0.1172, -0.8359, 0.7109, 0.0937, -0.7422, 0.7266, 0.0937, -0.7422, 0.7266, 0.1172, -0.8359, 0.7109, 0.0937, -0.8203, 0.7109, -0.1094, -0.7188, 0.7344, -0.0938, -0.7422, 0.7266, -0.1172, -0.8359, 0.7109, -0.1172, -0.8359, 0.7109, -0.0938, -0.7422, 0.7266, -0.0938, -0.8203, 0.7109, 0.1172, -0.8359, 0.7109, 0.0625, -0.8828, 0.6953, 0.0937, -0.8203, 0.7109, 0.0937, -0.8203, 0.7109, 0.0625, -0.8828, 0.6953, 0.0468, -0.8672, 0.6875, -0.1172, -0.8359, 0.7109, -0.0938, -0.8203, 0.7109, -0.0625, -0.8828, 0.6953, -0.0625, -0.8828, 0.6953, -0.0938, -0.8203, 0.7109, -0.0469, -0.8672, 0.6875, 0.0625, -0.8828, 0.6953, 0, -0.8906, 0.6875, 0.0468, -0.8672, 0.6875, 0.0468, -0.8672, 0.6875, 0, -0.8906, 0.6875, 0, -0.875, 0.6875, -0.0625, -0.8828, 0.6953, -0.0469, -0.8672, 0.6875, 0, -0.8906, 0.6875, 0, -0.8906, 0.6875, -0.0469, -0.8672, 0.6875, 0, -0.875, 0.6875, 0.0468, -0.8672, 0.6875, 0, -0.875, 0.6875, 0.0468, -0.8516, 0.6328, 0.0468, -0.8516, 0.6328, 0, -0.875, 0.6875, 0, -0.8594, 0.6328, -0.0469, -0.8672, 0.6875, -0.0469, -0.8516, 0.6328, 0, -0.875, 0.6875, 0, -0.875, 0.6875, -0.0469, -0.8516, 0.6328, 0, -0.8594, 0.6328, 0.0937, -0.8203, 0.7109, 0.0468, -0.8672, 0.6875, 0.0937, -0.8125, 0.6406, 0.0937, -0.8125, 0.6406, 0.0468, -0.8672, 0.6875, 0.0468, -0.8516, 0.6328, -0.0938, -0.8203, 0.7109, -0.0938, -0.8125, 0.6406, -0.0469, -0.8672, 0.6875, -0.0469, -0.8672, 0.6875, -0.0938, -0.8125, 0.6406, -0.0469, -0.8516, 0.6328, 0.0937, -0.7422, 0.7266, 0.0937, -0.8203, 0.7109, 0.0937, -0.75, 0.6641, 0.0937, -0.75, 0.6641, 0.0937, -0.8203, 0.7109, 0.0937, -0.8125, 0.6406, -0.0938, -0.7422, 0.7266, -0.0938, -0.75, 0.6641, -0.0938, -0.8203, 0.7109, -0.0938, -0.8203, 0.7109, -0.0938, -0.75, 0.6641, -0.0938, -0.8125, 0.6406, 0, -0.7735, 0.7187, 0.0937, -0.7422, 0.7266, 0, -0.7813, 0.6562, 0, -0.7813, 0.6562, 0.0937, -0.7422, 0.7266, 0.0937, -0.75, 0.6641, 0, -0.7735, 0.7187, 0, -0.7813, 0.6562, -0.0938, -0.7422, 0.7266, -0.0938, -0.7422, 0.7266, 0, -0.7813, 0.6562, -0.0938, -0.75, 0.6641, 0, -0.8594, 0.6328, 0, -0.7813, 0.6562, 0.0468, -0.8516, 0.6328, 0.0468, -0.8516, 0.6328, 0, -0.7813, 0.6562, 0.0937, -0.75, 0.6641, 0, -0.8594, 0.6328, -0.0469, -0.8516, 0.6328, 0, -0.7813, 0.6562, 0, -0.7813, 0.6562, -0.0469, -0.8516, 0.6328, -0.0938, -0.75, 0.6641, 0.0468, -0.8516, 0.6328, 0.0937, -0.75, 0.6641, 0.0937, -0.8125, 0.6406, -0.0469, -0.8516, 0.6328, -0.0938, -0.8125, 0.6406, -0.0938, -0.75, 0.6641, 0.164, 0.1406, 0.75, 0.1328, 0.2109, 0.7578, 0.1875, 0.1562, 0.7734, 0.1875, 0.1562, 0.7734, 0.1328, 0.2109, 0.7578, 0.1718, 0.2187, 0.7812, -0.1641, 0.1406, 0.75, -0.1875, 0.1562, 0.7734, -0.1328, 0.2109, 0.7578, -0.1328, 0.2109, 0.7578, -0.1875, 0.1562, 0.7734, -0.1719, 0.2187, 0.7812, 0.1328, 0.2109, 0.7578, 0.125, 0.3047, 0.7656, 0.1718, 0.2187, 0.7812, 0.1718, 0.2187, 0.7812, 0.125, 0.3047, 0.7656, 0.1797, 0.2969, 0.7812, -0.1328, 0.2109, 0.7578, -0.1719, 0.2187, 0.7812, -0.125, 0.3047, 0.7656, -0.125, 0.3047, 0.7656, -0.1719, 0.2187, 0.7812, -0.1797, 0.2969, 0.7812, 0.125, 0.3047, 0.7656, 0.164, 0.414, 0.7734, 0.1797, 0.2969, 0.7812, 0.1797, 0.2969, 0.7812, 0.164, 0.414, 0.7734, 0.2109, 0.375, 0.7812, -0.125, 0.3047, 0.7656, -0.1797, 0.2969, 0.7812, -0.1641, 0.414, 0.7734, -0.1641, 0.414, 0.7734, -0.1797, 0.2969, 0.7812, -0.211, 0.375, 0.7812, 0.2031, 0.0937, 0.7422, 0.164, 0.1406, 0.75, 0.2265, 0.1094, 0.7812, 0.2265, 0.1094, 0.7812, 0.164, 0.1406, 0.75, 0.1875, 0.1562, 0.7734, -0.2031, 0.0937, 0.7422, -0.2266, 0.1094, 0.7812, -0.1641, 0.1406, 0.75, -0.1641, 0.1406, 0.75, -0.2266, 0.1094, 0.7812, -0.1875, 0.1562, 0.7734, 0.375, 0.0156, 0.7031, 0.2031, 0.0937, 0.7422, 0.375, 0.0625, 0.7422, 0.375, 0.0625, 0.7422, 0.2031, 0.0937, 0.7422, 0.2265, 0.1094, 0.7812, -0.375, 0.0156, 0.7031, -0.375, 0.0625, 0.7422, -0.2031, 0.0937, 0.7422, -0.2031, 0.0937, 0.7422, -0.375, 0.0625, 0.7422, -0.2266, 0.1094, 0.7812, 0.4922, 0.0625, 0.6719, 0.375, 0.0156, 0.7031, 0.4765, 0.1016, 0.7187, 0.4765, 0.1016, 0.7187, 0.375, 0.0156, 0.7031, 0.375, 0.0625, 0.7422, -0.4922, 0.0625, 0.6719, -0.4766, 0.1016, 0.7187, -0.375, 0.0156, 0.7031, -0.375, 0.0156, 0.7031, -0.4766, 0.1016, 0.7187, -0.375, 0.0625, 0.7422, 0.625, 0.1875, 0.6484, 0.4922, 0.0625, 0.6719, 0.5781, 0.1953, 0.6797, 0.5781, 0.1953, 0.6797, 0.4922, 0.0625, 0.6719, 0.4765, 0.1016, 0.7187, -0.625, 0.1875, 0.6484, -0.5781, 0.1953, 0.6797, -0.4922, 0.0625, 0.6719, -0.4922, 0.0625, 0.6719, -0.5781, 0.1953, 0.6797, -0.4766, 0.1016, 0.7187, 0.6406, 0.2969, 0.6484, 0.625, 0.1875, 0.6484, 0.5859, 0.289, 0.6875, 0.5859, 0.289, 0.6875, 0.625, 0.1875, 0.6484, 0.5781, 0.1953, 0.6797, -0.6406, 0.2969, 0.6484, -0.5859, 0.289, 0.6875, -0.625, 0.1875, 0.6484, -0.625, 0.1875, 0.6484, -0.5859, 0.289, 0.6875, -0.5781, 0.1953, 0.6797, 0.6016, 0.375, 0.6641, 0.6406, 0.2969, 0.6484, 0.5625, 0.3516, 0.6953, 0.5625, 0.3516, 0.6953, 0.6406, 0.2969, 0.6484, 0.5859, 0.289, 0.6875, -0.6016, 0.375, 0.6641, -0.5625, 0.3516, 0.6953, -0.6406, 0.2969, 0.6484, -0.6406, 0.2969, 0.6484, -0.5625, 0.3516, 0.6953, -0.5859, 0.289, 0.6875, 0.4297, 0.4375, 0.7187, 0.6016, 0.375, 0.6641, 0.4218, 0.3984, 0.7734, 0.4218, 0.3984, 0.7734, 0.6016, 0.375, 0.6641, 0.5625, 0.3516, 0.6953, -0.4297, 0.4375, 0.7187, -0.4219, 0.3984, 0.7734, -0.6016, 0.375, 0.6641, -0.6016, 0.375, 0.6641, -0.4219, 0.3984, 0.7734, -0.5625, 0.3516, 0.6953, 0.3281, 0.4766, 0.7422, 0.4297, 0.4375, 0.7187, 0.3359, 0.4297, 0.7578, 0.3359, 0.4297, 0.7578, 0.4297, 0.4375, 0.7187, 0.4218, 0.3984, 0.7734, -0.3281, 0.4766, 0.7422, -0.3359, 0.4297, 0.7578, -0.4297, 0.4375, 0.7187, -0.4297, 0.4375, 0.7187, -0.3359, 0.4297, 0.7578, -0.4219, 0.3984, 0.7734, 0.25, 0.4687, 0.7578, 0.3281, 0.4766, 0.7422, 0.2734, 0.4219, 0.7734, 0.2734, 0.4219, 0.7734, 0.3281, 0.4766, 0.7422, 0.3359, 0.4297, 0.7578, -0.25, 0.4687, 0.7578, -0.2735, 0.4219, 0.7734, -0.3281, 0.4766, 0.7422, -0.3281, 0.4766, 0.7422, -0.2735, 0.4219, 0.7734, -0.3359, 0.4297, 0.7578, 0.164, 0.414, 0.7734, 0.25, 0.4687, 0.7578, 0.2109, 0.375, 0.7812, 0.2109, 0.375, 0.7812, 0.25, 0.4687, 0.7578, 0.2734, 0.4219, 0.7734, -0.1641, 0.414, 0.7734, -0.211, 0.375, 0.7812, -0.25, 0.4687, 0.7578, -0.25, 0.4687, 0.7578, -0.211, 0.375, 0.7812, -0.2735, 0.4219, 0.7734, 0.2109, 0.375, 0.7812, 0.2734, 0.4219, 0.7734, 0.2343, 0.3594, 0.7578, 0.2343, 0.3594, 0.7578, 0.2734, 0.4219, 0.7734, 0.2812, 0.3984, 0.7656, -0.211, 0.375, 0.7812, -0.2344, 0.3594, 0.7578, -0.2735, 0.4219, 0.7734, -0.2735, 0.4219, 0.7734, -0.2344, 0.3594, 0.7578, -0.2813, 0.3984, 0.7656, 0.2734, 0.4219, 0.7734, 0.3359, 0.4297, 0.7578, 0.2812, 0.3984, 0.7656, 0.2812, 0.3984, 0.7656, 0.3359, 0.4297, 0.7578, 0.3359, 0.4062, 0.75, -0.2735, 0.4219, 0.7734, -0.2813, 0.3984, 0.7656, -0.3359, 0.4297, 0.7578, -0.3359, 0.4297, 0.7578, -0.2813, 0.3984, 0.7656, -0.3359, 0.4062, 0.75, 0.3359, 0.4297, 0.7578, 0.4218, 0.3984, 0.7734, 0.3359, 0.4062, 0.75, 0.3359, 0.4062, 0.75, 0.4218, 0.3984, 0.7734, 0.414, 0.3906, 0.75, -0.3359, 0.4297, 0.7578, -0.3359, 0.4062, 0.75, -0.4219, 0.3984, 0.7734, -0.4219, 0.3984, 0.7734, -0.3359, 0.4062, 0.75, -0.4141, 0.3906, 0.75, 0.4218, 0.3984, 0.7734, 0.5625, 0.3516, 0.6953, 0.414, 0.3906, 0.75, 0.414, 0.3906, 0.75, 0.5625, 0.3516, 0.6953, 0.5312, 0.3359, 0.6797, -0.4219, 0.3984, 0.7734, -0.4141, 0.3906, 0.75, -0.5625, 0.3516, 0.6953, -0.5625, 0.3516, 0.6953, -0.4141, 0.3906, 0.75, -0.5313, 0.3359, 0.6797, 0.5625, 0.3516, 0.6953, 0.5859, 0.289, 0.6875, 0.5312, 0.3359, 0.6797, 0.5312, 0.3359, 0.6797, 0.5859, 0.289, 0.6875, 0.5547, 0.2812, 0.6719, -0.5625, 0.3516, 0.6953, -0.5313, 0.3359, 0.6797, -0.5859, 0.289, 0.6875, -0.5859, 0.289, 0.6875, -0.5313, 0.3359, 0.6797, -0.5547, 0.2812, 0.6719, 0.5859, 0.289, 0.6875, 0.5781, 0.1953, 0.6797, 0.5547, 0.2812, 0.6719, 0.5547, 0.2812, 0.6719, 0.5781, 0.1953, 0.6797, 0.5469, 0.2109, 0.6719, -0.5859, 0.289, 0.6875, -0.5547, 0.2812, 0.6719, -0.5781, 0.1953, 0.6797, -0.5781, 0.1953, 0.6797, -0.5547, 0.2812, 0.6719, -0.5469, 0.2109, 0.6719, 0.5781, 0.1953, 0.6797, 0.4765, 0.1016, 0.7187, 0.5469, 0.2109, 0.6719, 0.5469, 0.2109, 0.6719, 0.4765, 0.1016, 0.7187, 0.4609, 0.1172, 0.7031, -0.5781, 0.1953, 0.6797, -0.5469, 0.2109, 0.6719, -0.4766, 0.1016, 0.7187, -0.4766, 0.1016, 0.7187, -0.5469, 0.2109, 0.6719, -0.4609, 0.1172, 0.7031, 0.4765, 0.1016, 0.7187, 0.375, 0.0625, 0.7422, 0.4609, 0.1172, 0.7031, 0.4609, 0.1172, 0.7031, 0.375, 0.0625, 0.7422, 0.375, 0.0859, 0.7266, -0.4766, 0.1016, 0.7187, -0.4609, 0.1172, 0.7031, -0.375, 0.0625, 0.7422, -0.375, 0.0625, 0.7422, -0.4609, 0.1172, 0.7031, -0.375, 0.0859, 0.7266, 0.375, 0.0625, 0.7422, 0.2265, 0.1094, 0.7812, 0.375, 0.0859, 0.7266, 0.375, 0.0859, 0.7266, 0.2265, 0.1094, 0.7812, 0.2422, 0.125, 0.7578, -0.375, 0.0625, 0.7422, -0.375, 0.0859, 0.7266, -0.2266, 0.1094, 0.7812, -0.2266, 0.1094, 0.7812, -0.375, 0.0859, 0.7266, -0.2422, 0.125, 0.7578, 0.2265, 0.1094, 0.7812, 0.1875, 0.1562, 0.7734, 0.2422, 0.125, 0.7578, 0.2422, 0.125, 0.7578, 0.1875, 0.1562, 0.7734, 0.2031, 0.1719, 0.75, -0.2266, 0.1094, 0.7812, -0.2422, 0.125, 0.7578, -0.1875, 0.1562, 0.7734, -0.1875, 0.1562, 0.7734, -0.2422, 0.125, 0.7578, -0.2031, 0.1719, 0.75, 0.1797, 0.2969, 0.7812, 0.2109, 0.375, 0.7812, 0.1953, 0.2969, 0.7578, 0.1953, 0.2969, 0.7578, 0.2109, 0.375, 0.7812, 0.2343, 0.3594, 0.7578, -0.1797, 0.2969, 0.7812, -0.1953, 0.2969, 0.7578, -0.211, 0.375, 0.7812, -0.211, 0.375, 0.7812, -0.1953, 0.2969, 0.7578, -0.2344, 0.3594, 0.7578, 0.1718, 0.2187, 0.7812, 0.1797, 0.2969, 0.7812, 0.1953, 0.2266, 0.75, 0.1953, 0.2266, 0.75, 0.1797, 0.2969, 0.7812, 0.1953, 0.2969, 0.7578, -0.1719, 0.2187, 0.7812, -0.1953, 0.2266, 0.75, -0.1797, 0.2969, 0.7812, -0.1797, 0.2969, 0.7812, -0.1953, 0.2266, 0.75, -0.1953, 0.2969, 0.7578, 0.1875, 0.1562, 0.7734, 0.1718, 0.2187, 0.7812, 0.2031, 0.1719, 0.75, 0.2031, 0.1719, 0.75, 0.1718, 0.2187, 0.7812, 0.1953, 0.2266, 0.75, -0.1875, 0.1562, 0.7734, -0.2031, 0.1719, 0.75, -0.1719, 0.2187, 0.7812, -0.1719, 0.2187, 0.7812, -0.2031, 0.1719, 0.75, -0.1953, 0.2266, 0.75, 0.0625, 0.4922, 0.75, 0, 0.4297, 0.7422, 0.1093, 0.4609, 0.6094, 0.1093, 0.4609, 0.6094, 0, 0.4297, 0.7422, 0, 0.4062, 0.6016, -0.0625, 0.4922, 0.75, -0.1094, 0.4609, 0.6094, 0, 0.4297, 0.7422, 0, 0.4297, 0.7422, -0.1094, 0.4609, 0.6094, 0, 0.4062, 0.6016, 0.1562, 0.7187, 0.7578, 0.0625, 0.4922, 0.75, 0.1953, 0.664, 0.6172, 0.1953, 0.664, 0.6172, 0.0625, 0.4922, 0.75, 0.1093, 0.4609, 0.6094, -0.1563, 0.7187, 0.7578, -0.1953, 0.664, 0.6172, -0.0625, 0.4922, 0.75, -0.0625, 0.4922, 0.75, -0.1953, 0.664, 0.6172, -0.1094, 0.4609, 0.6094, 0.3203, 0.7578, 0.7344, 0.1562, 0.7187, 0.7578, 0.3359, 0.6875, 0.5937, 0.3359, 0.6875, 0.5937, 0.1562, 0.7187, 0.7578, 0.1953, 0.664, 0.6172, -0.3203, 0.7578, 0.7344, -0.3359, 0.6875, 0.5937, -0.1563, 0.7187, 0.7578, -0.1563, 0.7187, 0.7578, -0.3359, 0.6875, 0.5937, -0.1953, 0.664, 0.6172, 0.4922, 0.6016, 0.6875, 0.3203, 0.7578, 0.7344, 0.4844, 0.5547, 0.5547, 0.4844, 0.5547, 0.5547, 0.3203, 0.7578, 0.7344, 0.3359, 0.6875, 0.5937, -0.4922, 0.6016, 0.6875, -0.4844, 0.5547, 0.5547, -0.3203, 0.7578, 0.7344, -0.3203, 0.7578, 0.7344, -0.4844, 0.5547, 0.5547, -0.3359, 0.6875, 0.5937, 0.7109, 0.4844, 0.625, 0.4922, 0.6016, 0.6875, 0.6797, 0.4531, 0.4922, 0.6797, 0.4531, 0.4922, 0.4922, 0.6016, 0.6875, 0.4844, 0.5547, 0.5547, -0.711, 0.4844, 0.625, -0.6797, 0.4531, 0.4922, -0.4922, 0.6016, 0.6875, -0.4922, 0.6016, 0.6875, -0.6797, 0.4531, 0.4922, -0.4844, 0.5547, 0.5547, 0.8594, 0.4297, 0.5937, 0.7109, 0.4844, 0.625, 0.7969, 0.4062, 0.4609, 0.7969, 0.4062, 0.4609, 0.7109, 0.4844, 0.625, 0.6797, 0.4531, 0.4922, -0.8594, 0.4297, 0.5937, -0.7969, 0.4062, 0.4609, -0.711, 0.4844, 0.625, -0.711, 0.4844, 0.625, -0.7969, 0.4062, 0.4609, -0.6797, 0.4531, 0.4922, 0.8281, 0.1484, 0.4453, 0.8594, 0.4297, 0.5937, 0.7734, 0.164, 0.375, 0.7734, 0.164, 0.375, 0.8594, 0.4297, 0.5937, 0.7969, 0.4062, 0.4609, -0.8282, 0.1484, 0.4453, -0.7735, 0.164, 0.375, -0.8594, 0.4297, 0.5937, -0.8594, 0.4297, 0.5937, -0.7735, 0.164, 0.375, -0.7969, 0.4062, 0.4609, 0.6328, -0.0391, 0.5391, 0.8281, 0.1484, 0.4453, 0.6016, 0, 0.4141, 0.6016, 0, 0.4141, 0.8281, 0.1484, 0.4453, 0.7734, 0.164, 0.375, -0.6328, -0.0391, 0.5391, -0.6016, 0, 0.4141, -0.8282, 0.1484, 0.4453, -0.8282, 0.1484, 0.4453, -0.6016, 0, 0.4141, -0.7735, 0.164, 0.375, 0.4375, -0.1406, 0.5312, 0.6328, -0.0391, 0.5391, 0.4375, -0.0938, 0.4687, 0.4375, -0.0938, 0.4687, 0.6328, -0.0391, 0.5391, 0.6016, 0, 0.4141, -0.4375, -0.1406, 0.5312, -0.4375, -0.0938, 0.4687, -0.6328, -0.0391, 0.5391, -0.6328, -0.0391, 0.5391, -0.4375, -0.0938, 0.4687, -0.6016, 0, 0.4141, 0, -0.4844, 0.2812, 0, -0.5703, 0.3203, 0.1797, -0.4141, 0.2578, 0.1797, -0.4141, 0.2578, 0, -0.5703, 0.3203, 0.125, -0.5391, 0.3593, 0, -0.4844, 0.2812, -0.1797, -0.4141, 0.2578, 0, -0.5703, 0.3203, 0, -0.5703, 0.3203, -0.1797, -0.4141, 0.2578, -0.125, -0.5391, 0.3593, 0, -0.5703, 0.3203, 0, -0.8047, 0.3437, 0.125, -0.5391, 0.3593, 0.125, -0.5391, 0.3593, 0, -0.8047, 0.3437, 0.1406, -0.7578, 0.3672, 0, -0.5703, 0.3203, -0.125, -0.5391, 0.3593, 0, -0.8047, 0.3437, 0, -0.8047, 0.3437, -0.125, -0.5391, 0.3593, -0.1406, -0.7578, 0.3672, 0, -0.8047, 0.3437, 0, -0.9766, 0.4609, 0.1406, -0.7578, 0.3672, 0.1406, -0.7578, 0.3672, 0, -0.9766, 0.4609, 0.164, -0.9453, 0.4375, 0, -0.8047, 0.3437, -0.1406, -0.7578, 0.3672, 0, -0.9766, 0.4609, 0, -0.9766, 0.4609, -0.1406, -0.7578, 0.3672, -0.1641, -0.9453, 0.4375, 0, -0.9844, 0.5781, 0.1797, -0.9688, 0.5547, 0, -0.9766, 0.4609, 0, -0.9766, 0.4609, 0.1797, -0.9688, 0.5547, 0.164, -0.9453, 0.4375, 0, -0.9844, 0.5781, 0, -0.9766, 0.4609, -0.1797, -0.9688, 0.5547, -0.1797, -0.9688, 0.5547, 0, -0.9766, 0.4609, -0.1641, -0.9453, 0.4375, 0.1797, -0.9688, 0.5547, 0.3281, -0.9453, 0.5234, 0.164, -0.9453, 0.4375, 0.164, -0.9453, 0.4375, 0.3281, -0.9453, 0.5234, 0.3281, -0.9141, 0.3984, -0.1797, -0.9688, 0.5547, -0.1641, -0.9453, 0.4375, -0.3281, -0.9453, 0.5234, -0.3281, -0.9453, 0.5234, -0.1641, -0.9453, 0.4375, -0.3281, -0.9141, 0.3984, 0.3281, -0.9453, 0.5234, 0.3671, -0.8906, 0.5312, 0.3281, -0.9141, 0.3984, 0.3281, -0.9141, 0.3984, 0.3671, -0.8906, 0.5312, 0.289, -0.7109, 0.3828, -0.3281, -0.9453, 0.5234, -0.3281, -0.9141, 0.3984, -0.3672, -0.8906, 0.5312, -0.3672, -0.8906, 0.5312, -0.3281, -0.9141, 0.3984, -0.2891, -0.7109, 0.3828, 0.3671, -0.8906, 0.5312, 0.3515, -0.6953, 0.5703, 0.289, -0.7109, 0.3828, 0.289, -0.7109, 0.3828, 0.3515, -0.6953, 0.5703, 0.25, -0.5, 0.3906, -0.3672, -0.8906, 0.5312, -0.2891, -0.7109, 0.3828, -0.3516, -0.6953, 0.5703, -0.3516, -0.6953, 0.5703, -0.2891, -0.7109, 0.3828, -0.25, -0.5, 0.3906, 0.1406, -0.7578, 0.3672, 0.289, -0.7109, 0.3828, 0.125, -0.5391, 0.3593, 0.125, -0.5391, 0.3593, 0.289, -0.7109, 0.3828, 0.25, -0.5, 0.3906, -0.1406, -0.7578, 0.3672, -0.125, -0.5391, 0.3593, -0.2891, -0.7109, 0.3828, -0.2891, -0.7109, 0.3828, -0.125, -0.5391, 0.3593, -0.25, -0.5, 0.3906, 0.3281, -0.9141, 0.3984, 0.289, -0.7109, 0.3828, 0.164, -0.9453, 0.4375, 0.164, -0.9453, 0.4375, 0.289, -0.7109, 0.3828, 0.1406, -0.7578, 0.3672, -0.3281, -0.9141, 0.3984, -0.1641, -0.9453, 0.4375, -0.2891, -0.7109, 0.3828, -0.2891, -0.7109, 0.3828, -0.1641, -0.9453, 0.4375, -0.1406, -0.7578, 0.3672, 0.25, -0.5, 0.3906, 0.2343, -0.3516, 0.4062, 0.125, -0.5391, 0.3593, 0.125, -0.5391, 0.3593, 0.2343, -0.3516, 0.4062, 0.1797, -0.4141, 0.2578, -0.25, -0.5, 0.3906, -0.125, -0.5391, 0.3593, -0.2344, -0.3516, 0.4062, -0.2344, -0.3516, 0.4062, -0.125, -0.5391, 0.3593, -0.1797, -0.4141, 0.2578, 0.3515, -0.6953, 0.5703, 0.3125, -0.4375, 0.5703, 0.25, -0.5, 0.3906, 0.25, -0.5, 0.3906, 0.3125, -0.4375, 0.5703, 0.2343, -0.3516, 0.4062, -0.3516, -0.6953, 0.5703, -0.25, -0.5, 0.3906, -0.3125, -0.4375, 0.5703, -0.3125, -0.4375, 0.5703, -0.25, -0.5, 0.3906, -0.2344, -0.3516, 0.4062, 0.2187, -0.2813, 0.4297, 0.2578, -0.3125, 0.5547, 0.2109, -0.2266, 0.4687, 0.2109, -0.2266, 0.4687, 0.2578, -0.3125, 0.5547, 0.2343, -0.25, 0.5547, -0.2188, -0.2813, 0.4297, -0.211, -0.2266, 0.4687, -0.2578, -0.3125, 0.5547, -0.2578, -0.3125, 0.5547, -0.211, -0.2266, 0.4687, -0.2344, -0.25, 0.5547, 0.2343, -0.3516, 0.4062, 0.3125, -0.4375, 0.5703, 0.2187, -0.2813, 0.4297, 0.2187, -0.2813, 0.4297, 0.3125, -0.4375, 0.5703, 0.2578, -0.3125, 0.5547, -0.2344, -0.3516, 0.4062, -0.2188, -0.2813, 0.4297, -0.3125, -0.4375, 0.5703, -0.3125, -0.4375, 0.5703, -0.2188, -0.2813, 0.4297, -0.2578, -0.3125, 0.5547, 0.2343, -0.25, 0.5547, 0.2031, -0.1875, 0.5625, 0.2109, -0.2266, 0.4687, 0.2109, -0.2266, 0.4687, 0.2031, -0.1875, 0.5625, 0.2031, -0.1719, 0.5, -0.2344, -0.25, 0.5547, -0.211, -0.2266, 0.4687, -0.2031, -0.1875, 0.5625, -0.2031, -0.1875, 0.5625, -0.211, -0.2266, 0.4687, -0.2031, -0.1719, 0.5, 0.2031, -0.1719, 0.5, 0.2031, -0.1875, 0.5625, 0.4375, -0.0938, 0.4687, 0.4375, -0.0938, 0.4687, 0.2031, -0.1875, 0.5625, 0.4375, -0.1406, 0.5312, -0.2031, -0.1719, 0.5, -0.4375, -0.0938, 0.4687, -0.2031, -0.1875, 0.5625, -0.2031, -0.1875, 0.5625, -0.4375, -0.0938, 0.4687, -0.4375, -0.1406, 0.5312, 0.3359, 0.0547, -0.6641, 0, 0.0703, -0.8281, 0.3437, -0.1484, -0.5391, 0.3437, -0.1484, -0.5391, 0, 0.0703, -0.8281, 0, -0.1953, -0.6719, -0.3359, 0.0547, -0.6641, -0.3438, -0.1484, -0.5391, 0, 0.0703, -0.8281, 0, 0.0703, -0.8281, -0.3438, -0.1484, -0.5391, 0, -0.1953, -0.6719, 0.3437, -0.1484, -0.5391, 0, -0.1953, -0.6719, 0.2968, -0.3125, -0.2656, 0.2968, -0.3125, -0.2656, 0, -0.1953, -0.6719, 0, -0.3828, -0.3516, -0.3438, -0.1484, -0.5391, -0.2969, -0.3125, -0.2656, 0, -0.1953, -0.6719, 0, -0.1953, -0.6719, -0.2969, -0.3125, -0.2656, 0, -0.3828, -0.3516, 0.2968, -0.3125, -0.2656, 0, -0.3828, -0.3516, 0.2109, -0.3906, 0.164, 0.2109, -0.3906, 0.164, 0, -0.3828, -0.3516, 0, -0.461, 0.1875, -0.2969, -0.3125, -0.2656, -0.211, -0.3906, 0.164, 0, -0.3828, -0.3516, 0, -0.3828, -0.3516, -0.211, -0.3906, 0.164, 0, -0.461, 0.1875, 0.2109, -0.3906, 0.164, 0, -0.461, 0.1875, 0.1797, -0.4141, 0.2578, 0.1797, -0.4141, 0.2578, 0, -0.461, 0.1875, 0, -0.4844, 0.2812, -0.211, -0.3906, 0.164, -0.1797, -0.4141, 0.2578, 0, -0.461, 0.1875, 0, -0.461, 0.1875, -0.1797, -0.4141, 0.2578, 0, -0.4844, 0.2812, 0.1797, -0.4141, 0.2578, 0.2343, -0.3516, 0.4062, 0.2109, -0.3906, 0.164, 0.2109, -0.3906, 0.164, 0.2343, -0.3516, 0.4062, 0.2187, -0.2813, 0.4297, -0.1797, -0.4141, 0.2578, -0.211, -0.3906, 0.164, -0.2344, -0.3516, 0.4062, -0.2344, -0.3516, 0.4062, -0.211, -0.3906, 0.164, -0.2188, -0.2813, 0.4297, 0.6016, 0, 0.4141, 0.7734, 0.164, 0.375, 0.7344, -0.0469, 0.0703, 0.7344, -0.0469, 0.0703, 0.7734, 0.164, 0.375, 0.8515, 0.2344, 0.0547, -0.6016, 0, 0.4141, -0.7344, -0.0469, 0.0703, -0.7735, 0.164, 0.375, -0.7735, 0.164, 0.375, -0.7344, -0.0469, 0.0703, -0.8516, 0.2344, 0.0547, 0.4609, 0.4375, -0.7031, 0, 0.5625, -0.8516, 0.3359, 0.0547, -0.6641, 0.3359, 0.0547, -0.6641, 0, 0.5625, -0.8516, 0, 0.0703, -0.8281, -0.4609, 0.4375, -0.7031, -0.3359, 0.0547, -0.6641, 0, 0.5625, -0.8516, 0, 0.5625, -0.8516, -0.3359, 0.0547, -0.6641, 0, 0.0703, -0.8281, 0.4531, 0.8515, 0.2344, 0, 0.8984, 0.2891, 0.4531, 0.9297, -0.0703, 0.4531, 0.9297, -0.0703, 0, 0.8984, 0.2891, 0, 0.9844, -0.0781, -0.4531, 0.8515, 0.2344, -0.4531, 0.9297, -0.0703, 0, 0.8984, 0.2891, 0, 0.8984, 0.2891, -0.4531, 0.9297, -0.0703, 0, 0.9844, -0.0781, 0.4531, 0.9297, -0.0703, 0, 0.9844, -0.0781, 0.4531, 0.8672, -0.3828, 0.4531, 0.8672, -0.3828, 0, 0.9844, -0.0781, 0, 0.8984, -0.5469, -0.4531, 0.9297, -0.0703, -0.4531, 0.8672, -0.3828, 0, 0.9844, -0.0781, 0, 0.9844, -0.0781, -0.4531, 0.8672, -0.3828, 0, 0.8984, -0.5469, 0.4531, 0.8672, -0.3828, 0, 0.8984, -0.5469, 0.4609, 0.4375, -0.7031, 0.4609, 0.4375, -0.7031, 0, 0.8984, -0.5469, 0, 0.5625, -0.8516, -0.4531, 0.8672, -0.3828, -0.4609, 0.4375, -0.7031, 0, 0.8984, -0.5469, 0, 0.8984, -0.5469, -0.4609, 0.4375, -0.7031, 0, 0.5625, -0.8516, 0.7969, 0.4062, 0.4609, 0.6797, 0.4531, 0.4922, 0.7266, 0.4062, 0.3359, 0.7266, 0.4062, 0.3359, 0.6797, 0.4531, 0.4922, 0.6328, 0.4531, 0.2812, -0.7969, 0.4062, 0.4609, -0.7266, 0.4062, 0.3359, -0.6797, 0.4531, 0.4922, -0.6797, 0.4531, 0.4922, -0.7266, 0.4062, 0.3359, -0.6328, 0.4531, 0.2812, 0.7266, 0.4062, 0.3359, 0.6328, 0.4531, 0.2812, 0.7969, 0.5625, 0.125, 0.7969, 0.5625, 0.125, 0.6328, 0.4531, 0.2812, 0.6406, 0.7031, 0.0547, -0.7266, 0.4062, 0.3359, -0.7969, 0.5625, 0.125, -0.6328, 0.4531, 0.2812, -0.6328, 0.4531, 0.2812, -0.7969, 0.5625, 0.125, -0.6406, 0.7031, 0.0547, 0.7969, 0.5625, 0.125, 0.6406, 0.7031, 0.0547, 0.7969, 0.6172, -0.1172, 0.7969, 0.6172, -0.1172, 0.6406, 0.7031, 0.0547, 0.6406, 0.75, -0.1953, -0.7969, 0.5625, 0.125, -0.7969, 0.6172, -0.1172, -0.6406, 0.7031, 0.0547, -0.6406, 0.7031, 0.0547, -0.7969, 0.6172, -0.1172, -0.6406, 0.75, -0.1953, 0.7969, 0.6172, -0.1172, 0.6406, 0.75, -0.1953, 0.7969, 0.539, -0.3594, 0.7969, 0.539, -0.3594, 0.6406, 0.75, -0.1953, 0.6406, 0.6797, -0.4453, -0.7969, 0.6172, -0.1172, -0.7969, 0.539, -0.3594, -0.6406, 0.75, -0.1953, -0.6406, 0.75, -0.1953, -0.7969, 0.539, -0.3594, -0.6406, 0.6797, -0.4453, 0.6172, 0.3281, -0.5859, 0.7734, 0.2656, -0.4375, 0.6406, 0.6797, -0.4453, 0.6406, 0.6797, -0.4453, 0.7734, 0.2656, -0.4375, 0.7969, 0.539, -0.3594, -0.6172, 0.3281, -0.5859, -0.6406, 0.6797, -0.4453, -0.7735, 0.2656, -0.4375, -0.7735, 0.2656, -0.4375, -0.6406, 0.6797, -0.4453, -0.7969, 0.539, -0.3594, 0.4531, 0.8672, -0.3828, 0.4609, 0.4375, -0.7031, 0.6406, 0.6797, -0.4453, 0.6406, 0.6797, -0.4453, 0.4609, 0.4375, -0.7031, 0.6172, 0.3281, -0.5859, -0.4531, 0.8672, -0.3828, -0.6406, 0.6797, -0.4453, -0.4609, 0.4375, -0.7031, -0.4609, 0.4375, -0.7031, -0.6406, 0.6797, -0.4453, -0.6172, 0.3281, -0.5859, 0.4531, 0.9297, -0.0703, 0.4531, 0.8672, -0.3828, 0.6406, 0.75, -0.1953, 0.6406, 0.75, -0.1953, 0.4531, 0.8672, -0.3828, 0.6406, 0.6797, -0.4453, -0.4531, 0.9297, -0.0703, -0.6406, 0.75, -0.1953, -0.4531, 0.8672, -0.3828, -0.4531, 0.8672, -0.3828, -0.6406, 0.75, -0.1953, -0.6406, 0.6797, -0.4453, 0.4531, 0.8515, 0.2344, 0.4531, 0.9297, -0.0703, 0.6406, 0.7031, 0.0547, 0.6406, 0.7031, 0.0547, 0.4531, 0.9297, -0.0703, 0.6406, 0.75, -0.1953, -0.4531, 0.8515, 0.2344, -0.6406, 0.7031, 0.0547, -0.4531, 0.9297, -0.0703, -0.4531, 0.9297, -0.0703, -0.6406, 0.7031, 0.0547, -0.6406, 0.75, -0.1953, 0.4609, 0.5234, 0.4297, 0.4531, 0.8515, 0.2344, 0.6328, 0.4531, 0.2812, 0.6328, 0.4531, 0.2812, 0.4531, 0.8515, 0.2344, 0.6406, 0.7031, 0.0547, -0.4609, 0.5234, 0.4297, -0.6328, 0.4531, 0.2812, -0.4531, 0.8515, 0.2344, -0.4531, 0.8515, 0.2344, -0.6328, 0.4531, 0.2812, -0.6406, 0.7031, 0.0547, 0.6797, 0.4531, 0.4922, 0.4844, 0.5547, 0.5547, 0.6328, 0.4531, 0.2812, 0.6328, 0.4531, 0.2812, 0.4844, 0.5547, 0.5547, 0.4609, 0.5234, 0.4297, -0.6797, 0.4531, 0.4922, -0.6328, 0.4531, 0.2812, -0.4844, 0.5547, 0.5547, -0.4844, 0.5547, 0.5547, -0.6328, 0.4531, 0.2812, -0.4609, 0.5234, 0.4297, 0.4609, 0.5234, 0.4297, 0, 0.5703, 0.5703, 0.4531, 0.8515, 0.2344, 0.4531, 0.8515, 0.2344, 0, 0.5703, 0.5703, 0, 0.8984, 0.2891, -0.4609, 0.5234, 0.4297, -0.4531, 0.8515, 0.2344, 0, 0.5703, 0.5703, 0, 0.5703, 0.5703, -0.4531, 0.8515, 0.2344, 0, 0.8984, 0.2891, 0.1953, 0.664, 0.6172, 0.1093, 0.4609, 0.6094, 0.3359, 0.6875, 0.5937, 0.3359, 0.6875, 0.5937, 0.1093, 0.4609, 0.6094, 0.4844, 0.5547, 0.5547, -0.1953, 0.664, 0.6172, -0.3359, 0.6875, 0.5937, -0.1094, 0.4609, 0.6094, -0.1094, 0.4609, 0.6094, -0.3359, 0.6875, 0.5937, -0.4844, 0.5547, 0.5547, 0.4844, 0.5547, 0.5547, 0.1093, 0.4609, 0.6094, 0.4609, 0.5234, 0.4297, 0.4609, 0.5234, 0.4297, 0.1093, 0.4609, 0.6094, 0, 0.5703, 0.5703, -0.4844, 0.5547, 0.5547, -0.4609, 0.5234, 0.4297, -0.1094, 0.4609, 0.6094, -0.1094, 0.4609, 0.6094, -0.4609, 0.5234, 0.4297, 0, 0.5703, 0.5703, 0.1093, 0.4609, 0.6094, 0, 0.4062, 0.6016, 0, 0.5703, 0.5703, -0.1094, 0.4609, 0.6094, 0, 0.5703, 0.5703, 0, 0.4062, 0.6016, 0.7734, 0.164, 0.375, 0.7969, 0.4062, 0.4609, 0.8515, 0.2344, 0.0547, 0.8515, 0.2344, 0.0547, 0.7969, 0.4062, 0.4609, 0.7266, 0.4062, 0.3359, -0.7735, 0.164, 0.375, -0.8516, 0.2344, 0.0547, -0.7969, 0.4062, 0.4609, -0.7969, 0.4062, 0.4609, -0.8516, 0.2344, 0.0547, -0.7266, 0.4062, 0.3359, 0.8594, 0.3203, -0.0469, 0.8515, 0.2344, 0.0547, 0.7969, 0.5625, 0.125, 0.7969, 0.5625, 0.125, 0.8515, 0.2344, 0.0547, 0.7266, 0.4062, 0.3359, -0.8594, 0.3203, -0.0469, -0.7969, 0.5625, 0.125, -0.8516, 0.2344, 0.0547, -0.8516, 0.2344, 0.0547, -0.7969, 0.5625, 0.125, -0.7266, 0.4062, 0.3359, 0.8203, 0.3281, -0.2031, 0.8594, 0.3203, -0.0469, 0.7969, 0.6172, -0.1172, 0.7969, 0.6172, -0.1172, 0.8594, 0.3203, -0.0469, 0.7969, 0.5625, 0.125, -0.8203, 0.3281, -0.2031, -0.7969, 0.6172, -0.1172, -0.8594, 0.3203, -0.0469, -0.8594, 0.3203, -0.0469, -0.7969, 0.6172, -0.1172, -0.7969, 0.5625, 0.125, 0.7969, 0.539, -0.3594, 0.7734, 0.2656, -0.4375, 0.7969, 0.6172, -0.1172, 0.7969, 0.6172, -0.1172, 0.7734, 0.2656, -0.4375, 0.8203, 0.3281, -0.2031, -0.7969, 0.539, -0.3594, -0.7969, 0.6172, -0.1172, -0.7735, 0.2656, -0.4375, -0.7735, 0.2656, -0.4375, -0.7969, 0.6172, -0.1172, -0.8203, 0.3281, -0.2031, 0.2968, -0.3125, -0.2656, 0.2109, -0.3906, 0.164, 0.4297, -0.1953, -0.211, 0.4297, -0.1953, -0.211, 0.2109, -0.3906, 0.164, 0.4062, -0.1719, 0.1484, -0.2969, -0.3125, -0.2656, -0.4297, -0.1953, -0.211, -0.211, -0.3906, 0.164, -0.211, -0.3906, 0.164, -0.4297, -0.1953, -0.211, -0.4063, -0.1719, 0.1484, 0.4062, -0.1719, 0.1484, 0.7344, -0.0469, 0.0703, 0.4297, -0.1953, -0.211, 0.4297, -0.1953, -0.211, 0.7344, -0.0469, 0.0703, 0.5937, -0.125, -0.1641, -0.4063, -0.1719, 0.1484, -0.4297, -0.1953, -0.211, -0.7344, -0.0469, 0.0703, -0.7344, -0.0469, 0.0703, -0.4297, -0.1953, -0.211, -0.5938, -0.125, -0.1641, 0.4375, -0.0938, 0.4687, 0.6016, 0, 0.4141, 0.4062, -0.1719, 0.1484, 0.4062, -0.1719, 0.1484, 0.6016, 0, 0.4141, 0.7344, -0.0469, 0.0703, -0.4375, -0.0938, 0.4687, -0.4063, -0.1719, 0.1484, -0.6016, 0, 0.4141, -0.6016, 0, 0.4141, -0.4063, -0.1719, 0.1484, -0.7344, -0.0469, 0.0703, 0.2109, -0.2266, 0.4687, 0.4375, -0.0938, 0.4687, 0.2187, -0.2813, 0.4297, 0.2187, -0.2813, 0.4297, 0.4375, -0.0938, 0.4687, 0.4062, -0.1719, 0.1484, -0.211, -0.2266, 0.4687, -0.2188, -0.2813, 0.4297, -0.4375, -0.0938, 0.4687, -0.4375, -0.0938, 0.4687, -0.2188, -0.2813, 0.4297, -0.4063, -0.1719, 0.1484, 0.2109, -0.3906, 0.164, 0.2187, -0.2813, 0.4297, 0.4062, -0.1719, 0.1484, -0.211, -0.3906, 0.164, -0.4063, -0.1719, 0.1484, -0.2188, -0.2813, 0.4297, 0.2031, -0.1719, 0.5, 0.4375, -0.0938, 0.4687, 0.2109, -0.2266, 0.4687, -0.2031, -0.1719, 0.5, -0.211, -0.2266, 0.4687, -0.4375, -0.0938, 0.4687, 0.6406, -0.0078, -0.4297, 0.7734, 0.2656, -0.4375, 0.4844, 0.0234, -0.5469, 0.4844, 0.0234, -0.5469, 0.7734, 0.2656, -0.4375, 0.6172, 0.3281, -0.5859, -0.6406, -0.0078, -0.4297, -0.4844, 0.0234, -0.5469, -0.7735, 0.2656, -0.4375, -0.7735, 0.2656, -0.4375, -0.4844, 0.0234, -0.5469, -0.6172, 0.3281, -0.5859, 0.6172, 0.3281, -0.5859, 0.4609, 0.4375, -0.7031, 0.4844, 0.0234, -0.5469, 0.4844, 0.0234, -0.5469, 0.4609, 0.4375, -0.7031, 0.3359, 0.0547, -0.6641, -0.6172, 0.3281, -0.5859, -0.4844, 0.0234, -0.5469, -0.4609, 0.4375, -0.7031, -0.4609, 0.4375, -0.7031, -0.4844, 0.0234, -0.5469, -0.3359, 0.0547, -0.6641, 0.4297, -0.1953, -0.211, 0.5937, -0.125, -0.1641, 0.4844, 0.0234, -0.5469, 0.4844, 0.0234, -0.5469, 0.5937, -0.125, -0.1641, 0.6406, -0.0078, -0.4297, -0.4297, -0.1953, -0.211, -0.4844, 0.0234, -0.5469, -0.5938, -0.125, -0.1641, -0.5938, -0.125, -0.1641, -0.4844, 0.0234, -0.5469, -0.6406, -0.0078, -0.4297, 0.3437, -0.1484, -0.5391, 0.2968, -0.3125, -0.2656, 0.4844, 0.0234, -0.5469, 0.4844, 0.0234, -0.5469, 0.2968, -0.3125, -0.2656, 0.4297, -0.1953, -0.211, -0.3438, -0.1484, -0.5391, -0.4844, 0.0234, -0.5469, -0.2969, -0.3125, -0.2656, -0.2969, -0.3125, -0.2656, -0.4844, 0.0234, -0.5469, -0.4297, -0.1953, -0.211, 0.4844, 0.0234, -0.5469, 0.3359, 0.0547, -0.6641, 0.3437, -0.1484, -0.5391, -0.4844, 0.0234, -0.5469, -0.3438, -0.1484, -0.5391, -0.3359, 0.0547, -0.6641, 0.8906, 0.4062, -0.2344, 1.0234, 0.4766, -0.3125, 0.9219, 0.3594, -0.2188, 0.9219, 0.3594, -0.2188, 1.0234, 0.4766, -0.3125, 1.0156, 0.414, -0.2891, -0.8907, 0.4062, -0.2344, -0.9219, 0.3594, -0.2188, -1.0235, 0.4766, -0.3125, -1.0235, 0.4766, -0.3125, -0.9219, 0.3594, -0.2188, -1.0157, 0.414, -0.2891, 1.0156, 0.414, -0.2891, 1.0234, 0.4766, -0.3125, 1.1875, 0.4375, -0.3906, 1.1875, 0.4375, -0.3906, 1.0234, 0.4766, -0.3125, 1.2343, 0.5078, -0.4219, -1.0157, 0.414, -0.2891, -1.1875, 0.4375, -0.3906, -1.0235, 0.4766, -0.3125, -1.0235, 0.4766, -0.3125, -1.1875, 0.4375, -0.3906, -1.2344, 0.5078, -0.4219, 1.1875, 0.4375, -0.3906, 1.2343, 0.5078, -0.4219, 1.2656, 0.289, -0.4063, 1.2656, 0.289, -0.4063, 1.2343, 0.5078, -0.4219, 1.3515, 0.3203, -0.4219, -1.1875, 0.4375, -0.3906, -1.2656, 0.289, -0.4063, -1.2344, 0.5078, -0.4219, -1.2344, 0.5078, -0.4219, -1.2656, 0.289, -0.4063, -1.3516, 0.3203, -0.4219, 1.2656, 0.289, -0.4063, 1.3515, 0.3203, -0.4219, 1.2109, 0.0781, -0.4063, 1.2109, 0.0781, -0.4063, 1.3515, 0.3203, -0.4219, 1.2812, 0.0547, -0.4297, -1.2656, 0.289, -0.4063, -1.211, 0.0781, -0.4063, -1.3516, 0.3203, -0.4219, -1.3516, 0.3203, -0.4219, -1.211, 0.0781, -0.4063, -1.2813, 0.0547, -0.4297, 1.2109, 0.0781, -0.4063, 1.2812, 0.0547, -0.4297, 1.0312, -0.0391, -0.3047, 1.0312, -0.0391, -0.3047, 1.2812, 0.0547, -0.4297, 1.039, -0.1016, -0.3281, -1.211, 0.0781, -0.4063, -1.0313, -0.0391, -0.3047, -1.2813, 0.0547, -0.4297, -1.2813, 0.0547, -0.4297, -1.0313, -0.0391, -0.3047, -1.0391, -0.1016, -0.3281, 1.0312, -0.0391, -0.3047, 1.039, -0.1016, -0.3281, 0.8281, -0.0703, -0.1328, 0.8281, -0.0703, -0.1328, 1.039, -0.1016, -0.3281, 0.7734, -0.1406, -0.125, -1.0313, -0.0391, -0.3047, -0.8282, -0.0703, -0.1328, -1.0391, -0.1016, -0.3281, -1.0391, -0.1016, -0.3281, -0.8282, -0.0703, -0.1328, -0.7735, -0.1406, -0.125, 1.039, 0, -0.3672, 1.0312, -0.0391, -0.3047, 0.8828, -0.0234, -0.211, 0.8828, -0.0234, -0.211, 1.0312, -0.0391, -0.3047, 0.8281, -0.0703, -0.1328, -1.0391, 0, -0.3672, -0.8828, -0.0234, -0.211, -1.0313, -0.0391, -0.3047, -1.0313, -0.0391, -0.3047, -0.8828, -0.0234, -0.211, -0.8282, -0.0703, -0.1328, 1.1875, 0.0937, -0.4453, 1.2109, 0.0781, -0.4063, 1.039, 0, -0.3672, 1.039, 0, -0.3672, 1.2109, 0.0781, -0.4063, 1.0312, -0.0391, -0.3047, -1.1875, 0.0937, -0.4453, -1.0391, 0, -0.3672, -1.211, 0.0781, -0.4063, -1.211, 0.0781, -0.4063, -1.0391, 0, -0.3672, -1.0313, -0.0391, -0.3047, 1.2343, 0.25, -0.4453, 1.2656, 0.289, -0.4063, 1.1875, 0.0937, -0.4453, 1.1875, 0.0937, -0.4453, 1.2656, 0.289, -0.4063, 1.2109, 0.0781, -0.4063, -1.2344, 0.25, -0.4453, -1.1875, 0.0937, -0.4453, -1.2656, 0.289, -0.4063, -1.2656, 0.289, -0.4063, -1.1875, 0.0937, -0.4453, -1.211, 0.0781, -0.4063, 1.1718, 0.3594, -0.4375, 1.1875, 0.4375, -0.3906, 1.2343, 0.25, -0.4453, 1.2343, 0.25, -0.4453, 1.1875, 0.4375, -0.3906, 1.2656, 0.289, -0.4063, -1.1719, 0.3594, -0.4375, -1.2344, 0.25, -0.4453, -1.1875, 0.4375, -0.3906, -1.1875, 0.4375, -0.3906, -1.2344, 0.25, -0.4453, -1.2656, 0.289, -0.4063, 1.0234, 0.3437, -0.3594, 1.0156, 0.414, -0.2891, 1.1718, 0.3594, -0.4375, 1.1718, 0.3594, -0.4375, 1.0156, 0.414, -0.2891, 1.1875, 0.4375, -0.3906, -1.0235, 0.3437, -0.3594, -1.1719, 0.3594, -0.4375, -1.0157, 0.414, -0.2891, -1.0157, 0.414, -0.2891, -1.1719, 0.3594, -0.4375, -1.1875, 0.4375, -0.3906, 0.9219, 0.3594, -0.2188, 1.0156, 0.414, -0.2891, 0.9453, 0.3047, -0.2891, 0.9453, 0.3047, -0.2891, 1.0156, 0.414, -0.2891, 1.0234, 0.3437, -0.3594, -0.9219, 0.3594, -0.2188, -0.9453, 0.3047, -0.2891, -1.0157, 0.414, -0.2891, -1.0157, 0.414, -0.2891, -0.9453, 0.3047, -0.2891, -1.0235, 0.3437, -0.3594, 0.5937, -0.125, -0.1641, 0.7344, -0.0469, 0.0703, 0.7187, -0.0234, -0.1719, 0.7187, -0.0234, -0.1719, 0.7344, -0.0469, 0.0703, 0.7266, 0, -0.0703, -0.5938, -0.125, -0.1641, -0.7188, -0.0234, -0.1719, -0.7344, -0.0469, 0.0703, -0.7344, -0.0469, 0.0703, -0.7188, -0.0234, -0.1719, -0.7266, 0, -0.0703, 0.7734, -0.1406, -0.125, 0.5937, -0.125, -0.1641, 0.8281, -0.0703, -0.1328, 0.8281, -0.0703, -0.1328, 0.5937, -0.125, -0.1641, 0.7187, -0.0234, -0.1719, -0.7735, -0.1406, -0.125, -0.8282, -0.0703, -0.1328, -0.5938, -0.125, -0.1641, -0.5938, -0.125, -0.1641, -0.8282, -0.0703, -0.1328, -0.7188, -0.0234, -0.1719, 0.7344, -0.0469, 0.0703, 0.8515, 0.2344, 0.0547, 0.7266, 0, -0.0703, 0.7266, 0, -0.0703, 0.8515, 0.2344, 0.0547, 0.8594, 0.3203, -0.0469, -0.7344, -0.0469, 0.0703, -0.7266, 0, -0.0703, -0.8516, 0.2344, 0.0547, -0.8516, 0.2344, 0.0547, -0.7266, 0, -0.0703, -0.8594, 0.3203, -0.0469, 0.8437, 0.289, -0.211, 0.8203, 0.3281, -0.2031, 0.9219, 0.3594, -0.2188, 0.9219, 0.3594, -0.2188, 0.8203, 0.3281, -0.2031, 0.8906, 0.4062, -0.2344, -0.8438, 0.289, -0.211, -0.9219, 0.3594, -0.2188, -0.8203, 0.3281, -0.2031, -0.8203, 0.3281, -0.2031, -0.9219, 0.3594, -0.2188, -0.8907, 0.4062, -0.2344, 0.8828, -0.0234, -0.211, 0.8281, -0.0703, -0.1328, 0.8125, -0.0156, -0.2735, 0.8125, -0.0156, -0.2735, 0.8281, -0.0703, -0.1328, 0.7187, -0.0234, -0.1719, -0.8828, -0.0234, -0.211, -0.8125, -0.0156, -0.2735, -0.8282, -0.0703, -0.1328, -0.8282, -0.0703, -0.1328, -0.8125, -0.0156, -0.2735, -0.7188, -0.0234, -0.1719, 0.7187, 0.039, -0.1875, 0.8437, 0.0156, -0.2735, 0.7187, -0.0234, -0.1719, 0.7187, -0.0234, -0.1719, 0.8437, 0.0156, -0.2735, 0.8125, -0.0156, -0.2735, -0.7188, 0.039, -0.1875, -0.7188, -0.0234, -0.1719, -0.8438, 0.0156, -0.2735, -0.8438, 0.0156, -0.2735, -0.7188, -0.0234, -0.1719, -0.8125, -0.0156, -0.2735, 0.7187, 0.039, -0.1875, 0.7578, 0.0937, -0.2735, 0.8437, 0.0156, -0.2735, 0.8437, 0.0156, -0.2735, 0.7578, 0.0937, -0.2735, 0.8203, 0.0859, -0.2735, -0.7188, 0.039, -0.1875, -0.8438, 0.0156, -0.2735, -0.7579, 0.0937, -0.2735, -0.7579, 0.0937, -0.2735, -0.8438, 0.0156, -0.2735, -0.8203, 0.0859, -0.2735, 0.7969, 0.2031, -0.211, 0.8359, 0.1719, -0.2735, 0.7187, 0.039, -0.1875, 0.7187, 0.039, -0.1875, 0.8359, 0.1719, -0.2735, 0.7578, 0.0937, -0.2735, -0.7969, 0.2031, -0.211, -0.7188, 0.039, -0.1875, -0.836, 0.1719, -0.2735, -0.836, 0.1719, -0.2735, -0.7188, 0.039, -0.1875, -0.7579, 0.0937, -0.2735, 0.7969, 0.2031, -0.211, 0.8437, 0.289, -0.211, 0.8359, 0.1719, -0.2735, 0.8359, 0.1719, -0.2735, 0.8437, 0.289, -0.211, 0.8906, 0.2422, -0.2656, -0.7969, 0.2031, -0.211, -0.836, 0.1719, -0.2735, -0.8438, 0.289, -0.211, -0.8438, 0.289, -0.211, -0.836, 0.1719, -0.2735, -0.8907, 0.2422, -0.2656, 0.8437, 0.289, -0.211, 0.9219, 0.3594, -0.2188, 0.8906, 0.2422, -0.2656, 0.8906, 0.2422, -0.2656, 0.9219, 0.3594, -0.2188, 0.9453, 0.3047, -0.2891, -0.8438, 0.289, -0.211, -0.8907, 0.2422, -0.2656, -0.9219, 0.3594, -0.2188, -0.9219, 0.3594, -0.2188, -0.8907, 0.2422, -0.2656, -0.9453, 0.3047, -0.2891, 0.7969, 0.2031, -0.211, 0.8594, 0.3203, -0.0469, 0.8437, 0.289, -0.211, 0.8437, 0.289, -0.211, 0.8594, 0.3203, -0.0469, 0.8203, 0.3281, -0.2031, -0.7969, 0.2031, -0.211, -0.8438, 0.289, -0.211, -0.8594, 0.3203, -0.0469, -0.8594, 0.3203, -0.0469, -0.8438, 0.289, -0.211, -0.8203, 0.3281, -0.2031, 0.7266, 0, -0.0703, 0.8594, 0.3203, -0.0469, 0.7187, 0.039, -0.1875, 0.7187, 0.039, -0.1875, 0.8594, 0.3203, -0.0469, 0.7969, 0.2031, -0.211, -0.7266, 0, -0.0703, -0.7188, 0.039, -0.1875, -0.8594, 0.3203, -0.0469, -0.8594, 0.3203, -0.0469, -0.7188, 0.039, -0.1875, -0.7969, 0.2031, -0.211, 0.7187, -0.0234, -0.1719, 0.7266, 0, -0.0703, 0.7187, 0.039, -0.1875, -0.7188, -0.0234, -0.1719, -0.7188, 0.039, -0.1875, -0.7266, 0, -0.0703, 0.8906, 0.2422, -0.2656, 0.9453, 0.3047, -0.2891, 0.8906, 0.2344, -0.3203, 0.8906, 0.2344, -0.3203, 0.9453, 0.3047, -0.2891, 0.9531, 0.289, -0.3438, -0.8907, 0.2422, -0.2656, -0.8907, 0.2344, -0.3203, -0.9453, 0.3047, -0.2891, -0.9453, 0.3047, -0.2891, -0.8907, 0.2344, -0.3203, -0.9532, 0.289, -0.3438, 0.8359, 0.1719, -0.2735, 0.8906, 0.2422, -0.2656, 0.8437, 0.1719, -0.3203, 0.8437, 0.1719, -0.3203, 0.8906, 0.2422, -0.2656, 0.8906, 0.2344, -0.3203, -0.836, 0.1719, -0.2735, -0.8438, 0.1719, -0.3203, -0.8907, 0.2422, -0.2656, -0.8907, 0.2422, -0.2656, -0.8438, 0.1719, -0.3203, -0.8907, 0.2344, -0.3203, 0.7578, 0.0937, -0.2735, 0.8359, 0.1719, -0.2735, 0.7656, 0.0937, -0.3203, 0.7656, 0.0937, -0.3203, 0.8359, 0.1719, -0.2735, 0.8437, 0.1719, -0.3203, -0.7579, 0.0937, -0.2735, -0.7657, 0.0937, -0.3203, -0.836, 0.1719, -0.2735, -0.836, 0.1719, -0.2735, -0.7657, 0.0937, -0.3203, -0.8438, 0.1719, -0.3203, 0.8203, 0.0859, -0.2735, 0.7578, 0.0937, -0.2735, 0.8281, 0.0781, -0.3203, 0.8281, 0.0781, -0.3203, 0.7578, 0.0937, -0.2735, 0.7656, 0.0937, -0.3203, -0.8203, 0.0859, -0.2735, -0.8282, 0.0781, -0.3203, -0.7579, 0.0937, -0.2735, -0.7579, 0.0937, -0.2735, -0.8282, 0.0781, -0.3203, -0.7657, 0.0937, -0.3203, 0.8437, 0.0156, -0.2735, 0.8203, 0.0859, -0.2735, 0.8515, 0.0156, -0.3203, 0.8515, 0.0156, -0.3203, 0.8203, 0.0859, -0.2735, 0.8281, 0.0781, -0.3203, -0.8438, 0.0156, -0.2735, -0.8516, 0.0156, -0.3203, -0.8203, 0.0859, -0.2735, -0.8203, 0.0859, -0.2735, -0.8516, 0.0156, -0.3203, -0.8282, 0.0781, -0.3203, 0.8125, -0.0156, -0.2735, 0.8437, 0.0156, -0.2735, 0.8125, -0.0156, -0.3203, 0.8125, -0.0156, -0.3203, 0.8437, 0.0156, -0.2735, 0.8515, 0.0156, -0.3203, -0.8125, -0.0156, -0.2735, -0.8125, -0.0156, -0.3203, -0.8438, 0.0156, -0.2735, -0.8438, 0.0156, -0.2735, -0.8125, -0.0156, -0.3203, -0.8516, 0.0156, -0.3203, 0.8828, -0.0234, -0.211, 0.8125, -0.0156, -0.2735, 0.8828, -0.0156, -0.2656, 0.8828, -0.0156, -0.2656, 0.8125, -0.0156, -0.2735, 0.8125, -0.0156, -0.3203, -0.8828, -0.0234, -0.211, -0.8828, -0.0156, -0.2656, -0.8125, -0.0156, -0.2735, -0.8125, -0.0156, -0.2735, -0.8828, -0.0156, -0.2656, -0.8125, -0.0156, -0.3203, 0.9453, 0.3047, -0.2891, 1.0234, 0.3437, -0.3594, 0.9531, 0.289, -0.3438, 0.9531, 0.289, -0.3438, 1.0234, 0.3437, -0.3594, 1.039, 0.3281, -0.4141, -0.9453, 0.3047, -0.2891, -0.9532, 0.289, -0.3438, -1.0235, 0.3437, -0.3594, -1.0235, 0.3437, -0.3594, -0.9532, 0.289, -0.3438, -1.0391, 0.3281, -0.4141, 1.0234, 0.3437, -0.3594, 1.1718, 0.3594, -0.4375, 1.039, 0.3281, -0.4141, 1.039, 0.3281, -0.4141, 1.1718, 0.3594, -0.4375, 1.1875, 0.3437, -0.4844, -1.0235, 0.3437, -0.3594, -1.0391, 0.3281, -0.4141, -1.1719, 0.3594, -0.4375, -1.1719, 0.3594, -0.4375, -1.0391, 0.3281, -0.4141, -1.1875, 0.3437, -0.4844, 1.1718, 0.3594, -0.4375, 1.2343, 0.25, -0.4453, 1.1875, 0.3437, -0.4844, 1.1875, 0.3437, -0.4844, 1.2343, 0.25, -0.4453, 1.2578, 0.2422, -0.4922, -1.1719, 0.3594, -0.4375, -1.1875, 0.3437, -0.4844, -1.2344, 0.25, -0.4453, -1.2344, 0.25, -0.4453, -1.1875, 0.3437, -0.4844, -1.2578, 0.2422, -0.4922, 1.2343, 0.25, -0.4453, 1.1875, 0.0937, -0.4453, 1.2578, 0.2422, -0.4922, 1.2578, 0.2422, -0.4922, 1.1875, 0.0937, -0.4453, 1.2109, 0.0859, -0.4844, -1.2344, 0.25, -0.4453, -1.2578, 0.2422, -0.4922, -1.1875, 0.0937, -0.4453, -1.1875, 0.0937, -0.4453, -1.2578, 0.2422, -0.4922, -1.211, 0.0859, -0.4844, 1.1875, 0.0937, -0.4453, 1.039, 0, -0.3672, 1.2109, 0.0859, -0.4844, 1.2109, 0.0859, -0.4844, 1.039, 0, -0.3672, 1.0469, 0, -0.4219, -1.1875, 0.0937, -0.4453, -1.211, 0.0859, -0.4844, -1.0391, 0, -0.3672, -1.0391, 0, -0.3672, -1.211, 0.0859, -0.4844, -1.0469, 0, -0.4219, 1.039, 0, -0.3672, 0.8828, -0.0234, -0.211, 1.0469, 0, -0.4219, 1.0469, 0, -0.4219, 0.8828, -0.0234, -0.211, 0.8828, -0.0156, -0.2656, -1.0391, 0, -0.3672, -1.0469, 0, -0.4219, -0.8828, -0.0234, -0.211, -0.8828, -0.0234, -0.211, -1.0469, 0, -0.4219, -0.8828, -0.0156, -0.2656, 0.8515, 0.0156, -0.3203, 0.8281, 0.0781, -0.3203, 0.9375, 0.0625, -0.336, 0.9375, 0.0625, -0.336, 0.8281, 0.0781, -0.3203, 0.8906, 0.1094, -0.3281, -0.8516, 0.0156, -0.3203, -0.9375, 0.0625, -0.336, -0.8282, 0.0781, -0.3203, -0.8282, 0.0781, -0.3203, -0.9375, 0.0625, -0.336, -0.8907, 0.1094, -0.3281, 0.9375, 0.0625, -0.336, 0.8906, 0.1094, -0.3281, 1, 0.125, -0.3672, 1, 0.125, -0.3672, 0.8906, 0.1094, -0.3281, 0.9609, 0.1719, -0.3516, -0.9375, 0.0625, -0.336, -1, 0.125, -0.3672, -0.8907, 0.1094, -0.3281, -0.8907, 0.1094, -0.3281, -1, 0.125, -0.3672, -0.961, 0.1719, -0.3516, 1, 0.125, -0.3672, 0.9609, 0.1719, -0.3516, 1.0547, 0.1875, -0.3828, 1.0547, 0.1875, -0.3828, 0.9609, 0.1719, -0.3516, 1.0156, 0.2344, -0.375, -1, 0.125, -0.3672, -1.0547, 0.1875, -0.3828, -0.961, 0.1719, -0.3516, -0.961, 0.1719, -0.3516, -1.0547, 0.1875, -0.3828, -1.0157, 0.2344, -0.375, 1.0547, 0.1875, -0.3828, 1.0156, 0.2344, -0.375, 1.1093, 0.2109, -0.3906, 1.1093, 0.2109, -0.3906, 1.0156, 0.2344, -0.375, 1.0859, 0.2734, -0.3906, -1.0547, 0.1875, -0.3828, -1.1094, 0.2109, -0.3906, -1.0157, 0.2344, -0.375, -1.0157, 0.2344, -0.375, -1.1094, 0.2109, -0.3906, -1.086, 0.2734, -0.3906, 0.9531, 0.289, -0.3438, 1.039, 0.3281, -0.4141, 1.0156, 0.2344, -0.375, 1.0156, 0.2344, -0.375, 1.039, 0.3281, -0.4141, 1.0859, 0.2734, -0.3906, -0.9532, 0.289, -0.3438, -1.0157, 0.2344, -0.375, -1.0391, 0.3281, -0.4141, -1.0391, 0.3281, -0.4141, -1.0157, 0.2344, -0.375, -1.086, 0.2734, -0.3906, 0.9609, 0.1719, -0.3516, 0.8906, 0.2344, -0.3203, 1.0156, 0.2344, -0.375, 1.0156, 0.2344, -0.375, 0.8906, 0.2344, -0.3203, 0.9531, 0.289, -0.3438, -0.961, 0.1719, -0.3516, -1.0157, 0.2344, -0.375, -0.8907, 0.2344, -0.3203, -0.8907, 0.2344, -0.3203, -1.0157, 0.2344, -0.375, -0.9532, 0.289, -0.3438, 0.8437, 0.1719, -0.3203, 0.8906, 0.2344, -0.3203, 0.8906, 0.1094, -0.3281, 0.8906, 0.1094, -0.3281, 0.8906, 0.2344, -0.3203, 0.9609, 0.1719, -0.3516, -0.8438, 0.1719, -0.3203, -0.8907, 0.1094, -0.3281, -0.8907, 0.2344, -0.3203, -0.8907, 0.2344, -0.3203, -0.8907, 0.1094, -0.3281, -0.961, 0.1719, -0.3516, 0.8906, 0.1094, -0.3281, 0.8281, 0.0781, -0.3203, 0.8437, 0.1719, -0.3203, 0.8437, 0.1719, -0.3203, 0.8281, 0.0781, -0.3203, 0.7656, 0.0937, -0.3203, -0.8907, 0.1094, -0.3281, -0.8438, 0.1719, -0.3203, -0.8282, 0.0781, -0.3203, -0.8282, 0.0781, -0.3203, -0.8438, 0.1719, -0.3203, -0.7657, 0.0937, -0.3203, 0.8828, -0.0156, -0.2656, 0.8125, -0.0156, -0.3203, 0.9375, 0.0625, -0.336, 0.9375, 0.0625, -0.336, 0.8125, -0.0156, -0.3203, 0.8515, 0.0156, -0.3203, -0.8828, -0.0156, -0.2656, -0.9375, 0.0625, -0.336, -0.8125, -0.0156, -0.3203, -0.8125, -0.0156, -0.3203, -0.9375, 0.0625, -0.336, -0.8516, 0.0156, -0.3203, 1, 0.125, -0.3672, 1.0469, 0, -0.4219, 0.9375, 0.0625, -0.336, 0.9375, 0.0625, -0.336, 1.0469, 0, -0.4219, 0.8828, -0.0156, -0.2656, -1, 0.125, -0.3672, -0.9375, 0.0625, -0.336, -1.0469, 0, -0.4219, -1.0469, 0, -0.4219, -0.9375, 0.0625, -0.336, -0.8828, -0.0156, -0.2656, 1.0547, 0.1875, -0.3828, 1.2109, 0.0859, -0.4844, 1, 0.125, -0.3672, 1, 0.125, -0.3672, 1.2109, 0.0859, -0.4844, 1.0469, 0, -0.4219, -1.0547, 0.1875, -0.3828, -1, 0.125, -0.3672, -1.211, 0.0859, -0.4844, -1.211, 0.0859, -0.4844, -1, 0.125, -0.3672, -1.0469, 0, -0.4219, 1.1093, 0.2109, -0.3906, 1.2578, 0.2422, -0.4922, 1.0547, 0.1875, -0.3828, 1.0547, 0.1875, -0.3828, 1.2578, 0.2422, -0.4922, 1.2109, 0.0859, -0.4844, -1.1094, 0.2109, -0.3906, -1.0547, 0.1875, -0.3828, -1.2578, 0.2422, -0.4922, -1.2578, 0.2422, -0.4922, -1.0547, 0.1875, -0.3828, -1.211, 0.0859, -0.4844, 1.0859, 0.2734, -0.3906, 1.1875, 0.3437, -0.4844, 1.1093, 0.2109, -0.3906, 1.1093, 0.2109, -0.3906, 1.1875, 0.3437, -0.4844, 1.2578, 0.2422, -0.4922, -1.086, 0.2734, -0.3906, -1.1094, 0.2109, -0.3906, -1.1875, 0.3437, -0.4844, -1.1875, 0.3437, -0.4844, -1.1094, 0.2109, -0.3906, -1.2578, 0.2422, -0.4922, 1.0859, 0.2734, -0.3906, 1.039, 0.3281, -0.4141, 1.1875, 0.3437, -0.4844, -1.086, 0.2734, -0.3906, -1.1875, 0.3437, -0.4844, -1.0391, 0.3281, -0.4141, 0.7734, -0.1406, -0.125, 1.039, -0.1016, -0.3281, 0.7891, -0.125, -0.3281, 0.7891, -0.125, -0.3281, 1.039, -0.1016, -0.3281, 1.039, -0.086, -0.4922, -0.7735, -0.1406, -0.125, -0.7891, -0.125, -0.3281, -1.0391, -0.1016, -0.3281, -1.0391, -0.1016, -0.3281, -0.7891, -0.125, -0.3281, -1.0391, -0.086, -0.4922, 1.039, -0.1016, -0.3281, 1.2812, 0.0547, -0.4297, 1.039, -0.086, -0.4922, 1.039, -0.086, -0.4922, 1.2812, 0.0547, -0.4297, 1.3125, 0.0547, -0.5313, -1.0391, -0.1016, -0.3281, -1.0391, -0.086, -0.4922, -1.2813, 0.0547, -0.4297, -1.2813, 0.0547, -0.4297, -1.0391, -0.086, -0.4922, -1.3125, 0.0547, -0.5313, 1.2812, 0.0547, -0.4297, 1.3515, 0.3203, -0.4219, 1.3125, 0.0547, -0.5313, 1.3125, 0.0547, -0.5313, 1.3515, 0.3203, -0.4219, 1.3672, 0.2969, -0.5, -1.2813, 0.0547, -0.4297, -1.3125, 0.0547, -0.5313, -1.3516, 0.3203, -0.4219, -1.3516, 0.3203, -0.4219, -1.3125, 0.0547, -0.5313, -1.3672, 0.2969, -0.5, 1.3515, 0.3203, -0.4219, 1.2343, 0.5078, -0.4219, 1.3672, 0.2969, -0.5, 1.3672, 0.2969, -0.5, 1.2343, 0.5078, -0.4219, 1.25, 0.4687, -0.5469, -1.3516, 0.3203, -0.4219, -1.3672, 0.2969, -0.5, -1.2344, 0.5078, -0.4219, -1.2344, 0.5078, -0.4219, -1.3672, 0.2969, -0.5, -1.25, 0.4687, -0.5469, 1.2343, 0.5078, -0.4219, 1.0234, 0.4766, -0.3125, 1.25, 0.4687, -0.5469, 1.25, 0.4687, -0.5469, 1.0234, 0.4766, -0.3125, 1.0234, 0.4375, -0.4844, -1.2344, 0.5078, -0.4219, -1.25, 0.4687, -0.5469, -1.0235, 0.4766, -0.3125, -1.0235, 0.4766, -0.3125, -1.25, 0.4687, -0.5469, -1.0235, 0.4375, -0.4844, 1.0234, 0.4766, -0.3125, 0.8906, 0.4062, -0.2344, 1.0234, 0.4375, -0.4844, 1.0234, 0.4375, -0.4844, 0.8906, 0.4062, -0.2344, 0.8594, 0.3828, -0.3828, -1.0235, 0.4766, -0.3125, -1.0235, 0.4375, -0.4844, -0.8907, 0.4062, -0.2344, -0.8907, 0.4062, -0.2344, -1.0235, 0.4375, -0.4844, -0.8594, 0.3828, -0.3828, 1.039, -0.086, -0.4922, 1.0234, 0.4375, -0.4844, 0.7891, -0.125, -0.3281, 0.7891, -0.125, -0.3281, 1.0234, 0.4375, -0.4844, 0.8594, 0.3828, -0.3828, -1.0391, -0.086, -0.4922, -0.7891, -0.125, -0.3281, -1.0235, 0.4375, -0.4844, -1.0235, 0.4375, -0.4844, -0.7891, -0.125, -0.3281, -0.8594, 0.3828, -0.3828, 1.25, 0.4687, -0.5469, 1.0234, 0.4375, -0.4844, 1.3125, 0.0547, -0.5313, 1.3125, 0.0547, -0.5313, 1.0234, 0.4375, -0.4844, 1.039, -0.086, -0.4922, -1.25, 0.4687, -0.5469, -1.3125, 0.0547, -0.5313, -1.0235, 0.4375, -0.4844, -1.0235, 0.4375, -0.4844, -1.3125, 0.0547, -0.5313, -1.0391, -0.086, -0.4922, 1.3672, 0.2969, -0.5, 1.25, 0.4687, -0.5469, 1.3125, 0.0547, -0.5313, -1.3672, 0.2969, -0.5, -1.3125, 0.0547, -0.5313, -1.25, 0.4687, -0.5469, 0.8203, 0.3281, -0.2031, 0.7734, 0.2656, -0.4375, 0.8906, 0.4062, -0.2344, 0.8906, 0.4062, -0.2344, 0.7734, 0.2656, -0.4375, 0.8594, 0.3828, -0.3828, -0.8203, 0.3281, -0.2031, -0.8907, 0.4062, -0.2344, -0.7735, 0.2656, -0.4375, -0.7735, 0.2656, -0.4375, -0.8907, 0.4062, -0.2344, -0.8594, 0.3828, -0.3828, 0.8594, 0.3828, -0.3828, 0.7734, 0.2656, -0.4375, 0.7891, -0.125, -0.3281, 0.7891, -0.125, -0.3281, 0.7734, 0.2656, -0.4375, 0.6406, -0.0078, -0.4297, -0.8594, 0.3828, -0.3828, -0.7891, -0.125, -0.3281, -0.7735, 0.2656, -0.4375, -0.7735, 0.2656, -0.4375, -0.7891, -0.125, -0.3281, -0.6406, -0.0078, -0.4297, 0.6406, -0.0078, -0.4297, 0.5937, -0.125, -0.1641, 0.7891, -0.125, -0.3281, 0.7891, -0.125, -0.3281, 0.5937, -0.125, -0.1641, 0.7734, -0.1406, -0.125, -0.6406, -0.0078, -0.4297, -0.7891, -0.125, -0.3281, -0.5938, -0.125, -0.1641, -0.5938, -0.125, -0.1641, -0.7891, -0.125, -0.3281, -0.7735, -0.1406, -0.125) -[sub_resource type="ShaderMaterial" id="ShaderMaterial_60cnp"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_tu4x4"] resource_local_to_scene = true render_priority = 0 shader = ExtResource("5_rdjtm") @@ -205,7 +226,7 @@ shadow_mesh = SubResource("ArrayMesh_i3ihq") [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_0qjrr"] data = PackedVector3Array(-4, 4, 4, -4, -4, 4, -4, 4, -4, -4, 4, -4, -4, -4, 4, -4, -4, -4, -4, 4, -4, -4, -4, -4, 4, 4, -4, 4, 4, -4, -4, -4, -4, 4, -4, -4, 4, 4, -4, 4, -4, -4, 4, 4, 4, 4, 4, 4, 4, -4, -4, 4, -4, 4, 4, 4, 4, 4, -4, 4, -4, 4, 4, -4, 4, 4, 4, -4, 4, -4, -4, 4, 4, -4, -4, -4, -4, -4, 4, -4, 4, 4, -4, 4, -4, -4, -4, -4, -4, 4, -4, 4, -4, 4, 4, -4, -4, 4, 4, -4, 4, 4, 4, 4, -4, 4, 4, 4) -[sub_resource type="ShaderMaterial" id="ShaderMaterial_n2skm"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_2ow4w"] resource_local_to_scene = true render_priority = 0 shader = ExtResource("5_rdjtm") @@ -272,7 +293,7 @@ shadow_mesh = SubResource("ArrayMesh_jllhp") [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_6ood3"] data = PackedVector3Array(-0.0001, 6, -4, -0.0001, -6, -4, 0.7803, 6, -3.9232, 0.7803, 6, -3.9232, -0.0001, -6, -4, 0.7803, -6, -3.9232, 0.7803, 6, -3.9232, 0.7803, -6, -3.9232, 1.5307, 6, -3.6956, 1.5307, 6, -3.6956, 0.7803, -6, -3.9232, 1.5307, -6, -3.6956, 1.5307, 6, -3.6956, 1.5307, -6, -3.6956, 2.2223, 6, -3.3259, 2.2223, 6, -3.3259, 1.5307, -6, -3.6956, 2.2223, -6, -3.3259, 2.2223, 6, -3.3259, 2.2223, -6, -3.3259, 2.8284, 6, -2.8285, 2.8284, 6, -2.8285, 2.2223, -6, -3.3259, 2.8284, -6, -2.8285, 2.8284, 6, -2.8285, 2.8284, -6, -2.8285, 3.3258, 6, -2.2224, 3.3258, 6, -2.2224, 2.8284, -6, -2.8285, 3.3258, -6, -2.2224, 3.3258, 6, -2.2224, 3.3258, -6, -2.2224, 3.6954, 6, -1.5308, 3.6954, 6, -1.5308, 3.3258, -6, -2.2224, 3.6954, -6, -1.5308, 3.6954, 6, -1.5308, 3.6954, -6, -1.5308, 3.9231, 6, -0.7805, 3.9231, 6, -0.7805, 3.6954, -6, -1.5308, 3.9231, -6, -0.7805, 3.9231, 6, -0.7805, 3.9231, -6, -0.7805, 4, 6, -0.0001, 4, 6, -0.0001, 3.9231, -6, -0.7805, 4, -6, -0.0001, 4, 6, -0.0001, 4, -6, -0.0001, 3.9231, 6, 0.7803, 3.9231, 6, 0.7803, 4, -6, -0.0001, 3.9231, -6, 0.7803, 3.9231, 6, 0.7803, 3.9231, -6, 0.7803, 3.6954, 6, 1.5307, 3.6954, 6, 1.5307, 3.9231, -6, 0.7803, 3.6954, -6, 1.5307, 3.6954, 6, 1.5307, 3.6954, -6, 1.5307, 3.3258, 6, 2.2223, 3.3258, 6, 2.2223, 3.6954, -6, 1.5307, 3.3258, -6, 2.2223, 3.3258, 6, 2.2223, 3.3258, -6, 2.2223, 2.8284, 6, 2.8284, 2.8284, 6, 2.8284, 3.3258, -6, 2.2223, 2.8284, -6, 2.8284, 2.8284, 6, 2.8284, 2.8284, -6, 2.8284, 2.2223, 6, 3.3258, 2.2223, 6, 3.3258, 2.8284, -6, 2.8284, 2.2223, -6, 3.3258, 2.2223, 6, 3.3258, 2.2223, -6, 3.3258, 1.5307, 6, 3.6954, 1.5307, 6, 3.6954, 2.2223, -6, 3.3258, 1.5307, -6, 3.6954, 1.5307, 6, 3.6954, 1.5307, -6, 3.6954, 0.7803, 6, 3.9231, 0.7803, 6, 3.9231, 1.5307, -6, 3.6954, 0.7803, -6, 3.9231, 0.7803, 6, 3.9231, 0.7803, -6, 3.9231, -0.0001, 6, 4, -0.0001, 6, 4, 0.7803, -6, 3.9231, -0.0001, -6, 4, -0.0001, 6, 4, -0.0001, -6, 4, -0.7805, 6, 3.9231, -0.7805, 6, 3.9231, -0.0001, -6, 4, -0.7805, -6, 3.9231, -0.7805, 6, 3.9231, -0.7805, -6, 3.9231, -1.5308, 6, 3.6954, -1.5308, 6, 3.6954, -0.7805, -6, 3.9231, -1.5308, -6, 3.6954, -1.5308, 6, 3.6954, -1.5308, -6, 3.6954, -2.2224, 6, 3.3258, -2.2224, 6, 3.3258, -1.5308, -6, 3.6954, -2.2224, -6, 3.3258, -2.2224, 6, 3.3258, -2.2224, -6, 3.3258, -2.8285, 6, 2.8284, -2.8285, 6, 2.8284, -2.2224, -6, 3.3258, -2.8285, -6, 2.8284, -2.8285, 6, 2.8284, -2.8285, -6, 2.8284, -3.3259, 6, 2.2223, -3.3259, 6, 2.2223, -2.8285, -6, 2.8284, -3.3259, -6, 2.2223, -3.3259, 6, 2.2223, -3.3259, -6, 2.2223, -3.6956, 6, 1.5307, -3.6956, 6, 1.5307, -3.3259, -6, 2.2223, -3.6956, -6, 1.5307, -3.6956, 6, 1.5307, -3.6956, -6, 1.5307, -3.9232, 6, 0.7803, -3.9232, 6, 0.7803, -3.6956, -6, 1.5307, -3.9232, -6, 0.7803, -3.9232, 6, 0.7803, -3.9232, -6, 0.7803, -4, 6, -0.0001, -4, 6, -0.0001, -3.9232, -6, 0.7803, -4, -6, -0.0001, -4, 6, -0.0001, -4, -6, -0.0001, -3.9232, 6, -0.7805, -3.9232, 6, -0.7805, -4, -6, -0.0001, -3.9232, -6, -0.7805, -3.9232, 6, -0.7805, -3.9232, -6, -0.7805, -3.6956, 6, -1.5308, -3.6956, 6, -1.5308, -3.9232, -6, -0.7805, -3.6956, -6, -1.5308, -3.6956, 6, -1.5308, -3.6956, -6, -1.5308, -3.3259, 6, -2.2224, -3.3259, 6, -2.2224, -3.6956, -6, -1.5308, -3.3259, -6, -2.2224, -3.3259, 6, -2.2224, -3.3259, -6, -2.2224, -2.8285, 6, -2.8285, -2.8285, 6, -2.8285, -3.3259, -6, -2.2224, -2.8285, -6, -2.8285, -2.8285, 6, -2.8285, -2.8285, -6, -2.8285, -2.2224, 6, -3.3259, -2.2224, 6, -3.3259, -2.8285, -6, -2.8285, -2.2224, -6, -3.3259, -2.2224, 6, -3.3259, -2.2224, -6, -3.3259, -1.5308, 6, -3.6956, -1.5308, 6, -3.6956, -2.2224, -6, -3.3259, -1.5308, -6, -3.6956, -0.0001, 6, -4, 0.7803, 6, -3.9232, -0.7805, 6, -3.9232, -0.7805, 6, -3.9232, 0.7803, 6, -3.9232, -1.5308, 6, -3.6956, -1.5308, 6, -3.6956, 0.7803, 6, -3.9232, -2.2224, 6, -3.3259, -2.2224, 6, -3.3259, 0.7803, 6, -3.9232, -2.8285, 6, -2.8285, -2.8285, 6, -2.8285, 0.7803, 6, -3.9232, -3.3259, 6, -2.2224, -3.3259, 6, -2.2224, 0.7803, 6, -3.9232, -3.6956, 6, -1.5308, -3.6956, 6, -1.5308, 0.7803, 6, -3.9232, -3.9232, 6, -0.7805, -3.9232, 6, -0.7805, 0.7803, 6, -3.9232, -4, 6, -0.0001, -4, 6, -0.0001, 0.7803, 6, -3.9232, -3.9232, 6, 0.7803, -3.9232, 6, 0.7803, 0.7803, 6, -3.9232, -3.6956, 6, 1.5307, -3.6956, 6, 1.5307, 0.7803, 6, -3.9232, -3.3259, 6, 2.2223, -3.3259, 6, 2.2223, 0.7803, 6, -3.9232, -2.8285, 6, 2.8284, -2.8285, 6, 2.8284, 0.7803, 6, -3.9232, -2.2224, 6, 3.3258, -2.2224, 6, 3.3258, 0.7803, 6, -3.9232, -1.5308, 6, 3.6954, -1.5308, 6, 3.6954, 0.7803, 6, -3.9232, -0.7805, 6, 3.9231, -0.7805, 6, 3.9231, 0.7803, 6, -3.9232, -0.0001, 6, 4, -0.0001, 6, 4, 0.7803, 6, -3.9232, 0.7803, 6, 3.9231, 0.7803, 6, 3.9231, 0.7803, 6, -3.9232, 1.5307, 6, 3.6954, 1.5307, 6, 3.6954, 0.7803, 6, -3.9232, 2.2223, 6, 3.3258, 2.2223, 6, 3.3258, 0.7803, 6, -3.9232, 2.8284, 6, 2.8284, 2.8284, 6, 2.8284, 0.7803, 6, -3.9232, 3.3258, 6, 2.2223, 3.3258, 6, 2.2223, 0.7803, 6, -3.9232, 3.6954, 6, 1.5307, 3.6954, 6, 1.5307, 0.7803, 6, -3.9232, 3.9231, 6, 0.7803, 3.9231, 6, 0.7803, 0.7803, 6, -3.9232, 4, 6, -0.0001, 4, 6, -0.0001, 0.7803, 6, -3.9232, 3.9231, 6, -0.7805, 3.9231, 6, -0.7805, 0.7803, 6, -3.9232, 3.6954, 6, -1.5308, 3.6954, 6, -1.5308, 0.7803, 6, -3.9232, 3.3258, 6, -2.2224, 3.3258, 6, -2.2224, 0.7803, 6, -3.9232, 2.8284, 6, -2.8285, 2.8284, 6, -2.8285, 0.7803, 6, -3.9232, 2.2223, 6, -3.3259, 2.2223, 6, -3.3259, 0.7803, 6, -3.9232, 1.5307, 6, -3.6956, -1.5308, 6, -3.6956, -1.5308, -6, -3.6956, -0.7805, 6, -3.9232, -0.7805, 6, -3.9232, -1.5308, -6, -3.6956, -0.7805, -6, -3.9232, -0.7805, 6, -3.9232, -0.7805, -6, -3.9232, -0.0001, 6, -4, -0.0001, 6, -4, -0.7805, -6, -3.9232, -0.0001, -6, -4, 0.7803, -6, -3.9232, -0.0001, -6, -4, 1.5307, -6, -3.6956, 1.5307, -6, -3.6956, -0.0001, -6, -4, 2.2223, -6, -3.3259, 2.2223, -6, -3.3259, -0.0001, -6, -4, 2.8284, -6, -2.8285, 2.8284, -6, -2.8285, -0.0001, -6, -4, 3.3258, -6, -2.2224, 3.3258, -6, -2.2224, -0.0001, -6, -4, 3.6954, -6, -1.5308, 3.6954, -6, -1.5308, -0.0001, -6, -4, 3.9231, -6, -0.7805, 3.9231, -6, -0.7805, -0.0001, -6, -4, 4, -6, -0.0001, 4, -6, -0.0001, -0.0001, -6, -4, 3.9231, -6, 0.7803, 3.9231, -6, 0.7803, -0.0001, -6, -4, 3.6954, -6, 1.5307, 3.6954, -6, 1.5307, -0.0001, -6, -4, 3.3258, -6, 2.2223, 3.3258, -6, 2.2223, -0.0001, -6, -4, 2.8284, -6, 2.8284, 2.8284, -6, 2.8284, -0.0001, -6, -4, 2.2223, -6, 3.3258, 2.2223, -6, 3.3258, -0.0001, -6, -4, 1.5307, -6, 3.6954, 1.5307, -6, 3.6954, -0.0001, -6, -4, 0.7803, -6, 3.9231, 0.7803, -6, 3.9231, -0.0001, -6, -4, -0.0001, -6, 4, -0.0001, -6, 4, -0.0001, -6, -4, -0.7805, -6, 3.9231, -0.7805, -6, 3.9231, -0.0001, -6, -4, -1.5308, -6, 3.6954, -1.5308, -6, 3.6954, -0.0001, -6, -4, -2.2224, -6, 3.3258, -2.2224, -6, 3.3258, -0.0001, -6, -4, -2.8285, -6, 2.8284, -2.8285, -6, 2.8284, -0.0001, -6, -4, -3.3259, -6, 2.2223, -3.3259, -6, 2.2223, -0.0001, -6, -4, -3.6956, -6, 1.5307, -3.6956, -6, 1.5307, -0.0001, -6, -4, -3.9232, -6, 0.7803, -3.9232, -6, 0.7803, -0.0001, -6, -4, -4, -6, -0.0001, -4, -6, -0.0001, -0.0001, -6, -4, -3.9232, -6, -0.7805, -3.9232, -6, -0.7805, -0.0001, -6, -4, -3.6956, -6, -1.5308, -3.6956, -6, -1.5308, -0.0001, -6, -4, -3.3259, -6, -2.2224, -3.3259, -6, -2.2224, -0.0001, -6, -4, -2.8285, -6, -2.8285, -2.8285, -6, -2.8285, -0.0001, -6, -4, -2.2224, -6, -3.3259, -2.2224, -6, -3.3259, -0.0001, -6, -4, -1.5308, -6, -3.6956, -1.5308, -6, -3.6956, -0.0001, -6, -4, -0.7805, -6, -3.9232) -[sub_resource type="ShaderMaterial" id="ShaderMaterial_e7iqv"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_8khl4"] resource_local_to_scene = true render_priority = 0 shader = ExtResource("5_rdjtm") @@ -300,10 +321,168 @@ shader_parameter/jitter_time_scale = 0.1 shader_parameter/vertex_inflation = 0.0 shader_parameter/inflation_pixellation = 10.0 +[sub_resource type="GradientTexture1D" id="GradientTexture1D_hd7tb"] +gradient = ExtResource("11_idgxi") + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_hqva6"] +gradient = ExtResource("13_iuvtc") + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_q4hvq"] +render_priority = 0 +shader = ExtResource("9_hvycv") +shader_parameter/gunk_noise = ExtResource("12_ts5bb") +shader_parameter/color_1 = Color(0, 0.03, 0.1, 1) +shader_parameter/color_2 = Color(0, 0.1, 0.3, 1) +shader_parameter/emission_color = Color(0.25, 0.88, 1, 1) +shader_parameter/uv_scale = Vector2(2, 2) +shader_parameter/pan_speed = Vector2(0, 0) +shader_parameter/time_scale = 0.2 +shader_parameter/pixellation = 128.0 +shader_parameter/time_pixellation = 30.0 +shader_parameter/roughness = 0.15 +shader_parameter/specular_contribution = 0.8 +shader_parameter/emission_strength = 0.02 +shader_parameter/bump_strength = 5.0 +shader_parameter/fresnel_color = Color(1, 1, 1, 1) +shader_parameter/fresnel_gradient = SubResource("GradientTexture1D_hd7tb") +shader_parameter/fresnel_power = 16.0 +shader_parameter/fresnel_intensity = 0.01 +shader_parameter/iridescence_color = Color(1, 1, 1, 1) +shader_parameter/iridescence_gradient = SubResource("GradientTexture1D_hqva6") +shader_parameter/iridescence_power = 4.0 +shader_parameter/iridescence_intensity = 0.1 +shader_parameter/overlay_emission_scale = 1.0 +shader_parameter/edge_bleed = 0.2 +shader_parameter/gunk_mask = ExtResource("2_2roq2") +shader_parameter/base_uv_scale = Vector3(1, 1, 1) +shader_parameter/base_normal_map = ExtResource("10_1emik") +shader_parameter/normal_blend = 0.5 + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_tu4x4"] +albedo_texture = ExtResource("15_a3xnt") +metallic = 1.0 +metallic_texture = ExtResource("17_18iak") +roughness_texture = ExtResource("19_0teru") +emission_enabled = true +emission_texture = ExtResource("16_m18je") +normal_enabled = true +normal_texture = ExtResource("18_5dvti") +texture_filter = 2 + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_3mhb3"] +gradient = ExtResource("11_idgxi") + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_cx7lg"] +gradient = ExtResource("13_iuvtc") + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_1emik"] +render_priority = 0 +shader = ExtResource("9_hvycv") +shader_parameter/gunk_noise = ExtResource("12_ts5bb") +shader_parameter/color_1 = Color(0, 0.03, 0.1, 1) +shader_parameter/color_2 = Color(0, 0.1, 0.3, 1) +shader_parameter/emission_color = Color(0.25, 0.88, 1, 1) +shader_parameter/uv_scale = Vector2(2, 2) +shader_parameter/pan_speed = Vector2(0, 0) +shader_parameter/time_scale = 0.2 +shader_parameter/pixellation = 128.0 +shader_parameter/time_pixellation = 30.0 +shader_parameter/roughness = 0.15 +shader_parameter/specular_contribution = 0.8 +shader_parameter/emission_strength = 0.02 +shader_parameter/bump_strength = 5.0 +shader_parameter/fresnel_color = Color(1, 1, 1, 1) +shader_parameter/fresnel_gradient = SubResource("GradientTexture1D_3mhb3") +shader_parameter/fresnel_power = 16.0 +shader_parameter/fresnel_intensity = 0.01 +shader_parameter/iridescence_color = Color(1, 1, 1, 1) +shader_parameter/iridescence_gradient = SubResource("GradientTexture1D_cx7lg") +shader_parameter/iridescence_power = 4.0 +shader_parameter/iridescence_intensity = 0.1 +shader_parameter/overlay_emission_scale = 1.0 +shader_parameter/edge_bleed = 0.2 +shader_parameter/gunk_mask = ExtResource("12_1emik") +shader_parameter/base_uv_scale = Vector3(1, 1, 1) +shader_parameter/normal_blend = 0.6 + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_ijbqr"] +render_priority = 0 +shader = ExtResource("9_hvycv") +shader_parameter/gunk_noise = ExtResource("12_ts5bb") +shader_parameter/color_1 = Color(0, 0.03, 0.1, 1) +shader_parameter/color_2 = Color(0, 0.1, 0.3, 1) +shader_parameter/emission_color = Color(0.25, 0.88, 1, 1) +shader_parameter/uv_scale = Vector2(2, 2) +shader_parameter/pan_speed = Vector2(0, 0) +shader_parameter/time_scale = 0.2 +shader_parameter/pixellation = 128.0 +shader_parameter/time_pixellation = 30.0 +shader_parameter/roughness = 0.15 +shader_parameter/specular_contribution = 0.8 +shader_parameter/emission_strength = 0.02 +shader_parameter/bump_strength = 5.7 +shader_parameter/fresnel_color = Color(1, 1, 1, 1) +shader_parameter/fresnel_gradient = SubResource("GradientTexture1D_hd7tb") +shader_parameter/fresnel_power = 16.0 +shader_parameter/fresnel_intensity = 0.01 +shader_parameter/iridescence_color = Color(1, 1, 1, 1) +shader_parameter/iridescence_gradient = SubResource("GradientTexture1D_hqva6") +shader_parameter/iridescence_power = 4.0 +shader_parameter/iridescence_intensity = 0.1 +shader_parameter/overlay_emission_scale = 1.0 +shader_parameter/edge_bleed = 0.2 +shader_parameter/gunk_mask = ExtResource("22_18iak") +shader_parameter/base_uv_scale = Vector3(1, 1, 1) +shader_parameter/base_normal_map = ExtResource("21_m18je") +shader_parameter/normal_blend = 0.5 + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_llyif"] +albedo_texture = ExtResource("24_0teru") +metallic = 1.0 +metallic_texture = ExtResource("25_q4hvq") +roughness_texture = ExtResource("26_tu4x4") +normal_enabled = true +normal_texture = ExtResource("21_m18je") +texture_filter = 2 + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_llyif"] +render_priority = 0 +shader = ExtResource("9_hvycv") +shader_parameter/gunk_noise = ExtResource("12_ts5bb") +shader_parameter/color_1 = Color(0, 0.03, 0.1, 1) +shader_parameter/color_2 = Color(0, 0.1, 0.3, 1) +shader_parameter/emission_color = Color(0.25, 0.88, 1, 1) +shader_parameter/uv_scale = Vector2(4, 4) +shader_parameter/pan_speed = Vector2(0, 0) +shader_parameter/time_scale = 0.2 +shader_parameter/pixellation = 128.0 +shader_parameter/time_pixellation = 30.0 +shader_parameter/roughness = 0.15 +shader_parameter/specular_contribution = 0.8 +shader_parameter/emission_strength = 0.02 +shader_parameter/bump_strength = 5.0 +shader_parameter/fresnel_color = Color(1, 1, 1, 1) +shader_parameter/fresnel_gradient = SubResource("GradientTexture1D_hd7tb") +shader_parameter/fresnel_power = 16.0 +shader_parameter/fresnel_intensity = 0.01 +shader_parameter/iridescence_color = Color(1, 1, 1, 1) +shader_parameter/iridescence_gradient = SubResource("GradientTexture1D_hqva6") +shader_parameter/iridescence_power = 4.0 +shader_parameter/iridescence_intensity = 0.1 +shader_parameter/overlay_emission_scale = 1.0 +shader_parameter/edge_bleed = 0.2 +shader_parameter/gunk_mask = ExtResource("2_2roq2") +shader_parameter/base_uv_scale = Vector3(3, 3, 1) +shader_parameter/base_normal_map = ExtResource("27_0teru") +shader_parameter/normal_blend = 0.6 + +[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_2ow4w"] +data = PackedVector3Array(4.5, 0, 4.5, -4.5, 0, 4.5, 4.5, 0, -4.5, 4.5, 0, -4.5, -4.5, 0, 4.5, -4.5, 0, -4.5) + [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_p1wtp"] data = PackedVector3Array(-1.5, 0, -6, -1.5, 0, 6, -1.5, 3, -6, -1.5, 3, -6, -1.5, 0, 6, -1.5, 3, 6, 1.5, 0, 6, 1.5, 0, -6, 1.5, 3, 6, 1.5, 3, 6, 1.5, 0, -6, 1.5, 3, -6, -1.5, 0, 6, -1.5, 0, -6, 1.5, 0, 6, 1.5, 0, 6, -1.5, 0, -6, 1.5, 0, -6, 1.5, 3, 6, 1.5, 3, -6, -1.5, 3, 6, -1.5, 3, 6, 1.5, 3, -6, -1.5, 3, -6) -[sub_resource type="ShaderMaterial" id="ShaderMaterial_sbkki"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_rfmj3"] resource_local_to_scene = true render_priority = 0 shader = ExtResource("5_rdjtm") @@ -368,7 +547,7 @@ data = PackedVector3Array(-1, 0, 0.2, -1, -0.4, 0, -1, 0, -0.2, -1, 0, -0.2, -1, [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_2l4r6"] data = PackedVector3Array(-1.5, 0, -6, -1.5, 0, 6, -1.5, 3, -6, -1.5, 3, -6, -1.5, 0, 6, -1.5, 3, 6, 1.5, 0, 6, 1.5, 0, -6, 1.5, 3, 6, 1.5, 3, 6, 1.5, 0, -6, 1.5, 3, -6, -1.5, 0, 6, -1.5, 0, -6, 1.5, 0, 6, 1.5, 0, 6, -1.5, 0, -6, 1.5, 0, -6, 1.5, 3, 6, 1.5, 3, -6, -1.5, 3, 6, -1.5, 3, 6, 1.5, 3, -6, -1.5, 3, -6) -[sub_resource type="ShaderMaterial" id="ShaderMaterial_ttaci"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_jiwa2"] resource_local_to_scene = true render_priority = 0 shader = ExtResource("5_rdjtm") @@ -399,7 +578,7 @@ shader_parameter/inflation_pixellation = 10.0 [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_tmxet"] data = PackedVector3Array(-1.5, 0, -6, -1.5, 0, 6, -1.5, 3, -6, -1.5, 3, -6, -1.5, 0, 6, -1.5, 3, 6, 1.5, 0, 6, 1.5, 0, -6, 1.5, 3, 6, 1.5, 3, 6, 1.5, 0, -6, 1.5, 3, -6, -1.5, 0, 6, -1.5, 0, -6, 1.5, 0, 6, 1.5, 0, 6, -1.5, 0, -6, 1.5, 0, -6, 1.5, 3, 6, 1.5, 3, -6, -1.5, 3, 6, -1.5, 3, 6, 1.5, 3, -6, -1.5, 3, -6) -[sub_resource type="ShaderMaterial" id="ShaderMaterial_ykedl"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_y6dph"] resource_local_to_scene = true render_priority = 0 shader = ExtResource("5_rdjtm") @@ -538,7 +717,7 @@ mask_dim = 128 body = NodePath("..") mesh_instance = NodePath("../..") initial_mask = ExtResource("2_2roq2") -source_gunk_material = SubResource("ShaderMaterial_v2ya2") +source_gunk_material = SubResource("ShaderMaterial_0teru") [node name="Monkey" type="MeshInstance3D" parent="Geometry"] transform = Transform3D(-0.616239, 0, 0.787559, 0, 1, 0, -0.787559, 0, -0.616239, -2.22512, 1.41158, 2.88581) @@ -555,7 +734,7 @@ shape = SubResource("ConcavePolygonShape3D_hvf6a") mask_dim = 128 body = NodePath("..") mesh_instance = NodePath("../..") -source_gunk_material = SubResource("ShaderMaterial_60cnp") +source_gunk_material = SubResource("ShaderMaterial_tu4x4") [node name="Cube" type="MeshInstance3D" parent="Geometry"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 4, 0) @@ -574,7 +753,7 @@ shape = SubResource("ConcavePolygonShape3D_0qjrr") mask_dim = 512 body = NodePath("..") mesh_instance = NodePath("../..") -source_gunk_material = SubResource("ShaderMaterial_n2skm") +source_gunk_material = SubResource("ShaderMaterial_2ow4w") [node name="Cylinder" type="MeshInstance3D" parent="Geometry"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.33738, 6, -7.18125) @@ -592,11 +771,49 @@ shape = SubResource("ConcavePolygonShape3D_6ood3") mask_dim = 512 body = NodePath("..") mesh_instance = NodePath("../..") -source_gunk_material = SubResource("ShaderMaterial_e7iqv") +source_gunk_material = SubResource("ShaderMaterial_8khl4") [node name="WallSwitch" parent="Geometry" instance=ExtResource("9_p27ol")] transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 3.9, 1.50699, 2.45659) +[node name="OverheadLight" type="MeshInstance3D" parent="Geometry"] +transform = Transform3D(-4.37114e-08, -1, -4.37114e-08, 0, -4.37114e-08, 1, -1, 4.37114e-08, 1.91069e-15, -10.5442, 3.33698, 9.04638) +material_overlay = SubResource("ShaderMaterial_q4hvq") +mesh = ExtResource("14_pf2fq") +skeleton = NodePath("../../OverlayTests") +surface_material_override/0 = SubResource("StandardMaterial3D_tu4x4") + +[node name="OverheadLight2" type="MeshInstance3D" parent="Geometry"] +transform = Transform3D(-4.37114e-08, -1, -4.37114e-08, 0, -4.37114e-08, 1, -1, 4.37114e-08, 1.91069e-15, -10.5442, 3.33698, 10.0464) +material_overlay = SubResource("ShaderMaterial_1emik") +mesh = ExtResource("14_pf2fq") +skeleton = NodePath("../../OverlayTests") +surface_material_override/0 = SubResource("StandardMaterial3D_tu4x4") + +[node name="CrateLong" type="MeshInstance3D" parent="Geometry"] +transform = Transform3D(-0.537421, -0.80669, 0.245826, 0.503825, -0.540888, -0.673499, 0.676269, -0.238099, 0.697115, -10, 1, 11) +material_overlay = SubResource("ShaderMaterial_ijbqr") +mesh = ExtResource("23_5dvti") +surface_material_override/0 = SubResource("StandardMaterial3D_llyif") + +[node name="Floor2" type="MeshInstance3D" parent="Geometry"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14, 1, 18) +material_overlay = SubResource("ShaderMaterial_llyif") +mesh = ExtResource("28_q4hvq") + +[node name="StaticBody3D" type="StaticBody3D" parent="Geometry/Floor2" groups=["MetalMaterial"]] +collision_layer = 5 +collision_mask = 0 + +[node name="CollisionShape3D" type="CollisionShape3D" parent="Geometry/Floor2/StaticBody3D"] +shape = SubResource("ConcavePolygonShape3D_2ow4w") + +[node name="Gunkable" parent="Geometry/Floor2/StaticBody3D" node_paths=PackedStringArray("body", "mesh_instance") instance=ExtResource("2_aj57l")] +body = NodePath("..") +mesh_instance = NodePath("../..") +initial_mask = ExtResource("29_tu4x4") +source_gunk_material = ExtResource("7_tpfln") + [node name="LevelTiles" type="Node3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 25) @@ -615,7 +832,7 @@ shape = SubResource("ConcavePolygonShape3D_p1wtp") [node name="Gunkable" parent="LevelTiles/Hallway1/StaticBody3D" node_paths=PackedStringArray("body", "mesh_instance") instance=ExtResource("2_aj57l")] body = NodePath("..") mesh_instance = NodePath("../..") -source_gunk_material = SubResource("ShaderMaterial_sbkki") +source_gunk_material = SubResource("ShaderMaterial_rfmj3") [node name="AirlockSign" type="MeshInstance3D" parent="LevelTiles/Hallway1"] transform = Transform3D(1, 0, 1.74846e-07, 0, 1, 0, -1.74846e-07, 0, 1, 0, 3, -4.5) @@ -651,7 +868,7 @@ shape = SubResource("ConcavePolygonShape3D_2l4r6") [node name="Gunkable" parent="LevelTiles/Hallway2/StaticBody3D" node_paths=PackedStringArray("body", "mesh_instance") instance=ExtResource("2_aj57l")] body = NodePath("..") mesh_instance = NodePath("../..") -source_gunk_material = SubResource("ShaderMaterial_ttaci") +source_gunk_material = SubResource("ShaderMaterial_jiwa2") [node name="Hallway3" type="MeshInstance3D" parent="LevelTiles"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 30) @@ -668,7 +885,7 @@ shape = SubResource("ConcavePolygonShape3D_tmxet") [node name="Gunkable" parent="LevelTiles/Hallway3/StaticBody3D" node_paths=PackedStringArray("body", "mesh_instance") instance=ExtResource("2_aj57l")] body = NodePath("..") mesh_instance = NodePath("../..") -source_gunk_material = SubResource("ShaderMaterial_ykedl") +source_gunk_material = SubResource("ShaderMaterial_y6dph") [node name="GrunkNodule" parent="." instance=ExtResource("10_2roq2")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 1, -1) diff --git a/src/shaders/gunk/common.gdshaderinc b/src/shaders/gunk/common.gdshaderinc index 86c144f..a49a669 100644 --- a/src/shaders/gunk/common.gdshaderinc +++ b/src/shaders/gunk/common.gdshaderinc @@ -72,6 +72,26 @@ float hardstep(float value) { return 0.5 * tanh( (20.0 * x - 10.0) * inversesqrt(x - x * x) ) + 0.5; } +vec3 slerp(vec3 a, vec3 b, float t) { + vec3 v0 = normalize(a); + vec3 v1 = normalize(b); + + float cos_theta = clamp(dot(v0, v1), -1.0, 1.0); + + // use lerp for small angles to avoid division by small sine + const float epsilon = 1e-6; + if (1.0 - abs(cos_theta) < epsilon) { + return normalize(mix(v0, v1, t)); + } + + float theta = acos(cos_theta); + float sin_theta = sin(theta); + float w0 = sin((1.0 - t) * theta) / sin_theta; + float w1 = sin(t * theta) / sin_theta; + + return w0 * v0 + w1 * v1; +} + vec3 swirl_uvt(vec3 uvt) { uvt.x += sin(uvt.y * 1.54 * PI + uvt.z) * cos(uvt.y * 1.31 * PI + uvt.z) * 0.2; uvt.y += cos(uvt.x * 1.74 * PI + uvt.z) * -sin(uvt.y * 1.64 * PI + uvt.z) * 0.2; diff --git a/src/shaders/gunk/gunk_overlay.gdshader b/src/shaders/gunk/gunk_overlay.gdshader index 3027073..3354440 100644 --- a/src/shaders/gunk/gunk_overlay.gdshader +++ b/src/shaders/gunk/gunk_overlay.gdshader @@ -5,6 +5,11 @@ render_mode depth_prepass_alpha; #define USE_MASK #include "common.gdshaderinc" +group_uniforms base_material; +uniform vec3 base_uv_scale = vec3(1.0); +uniform sampler2D base_normal_map: filter_linear; +uniform float normal_blend = 1.0; + void fragment() { vec3 uvt = scale_uvt(UV, TIME); float value = sample_noise(uvt); @@ -13,16 +18,27 @@ void fragment() { EMISSION = base_emission(UV, value); SPECULAR = base_specular(); - // vec3 nmap = minimal_convolution(UV, uvt); - // vec3 nmap = cross_convolution(UV, uvt); - vec3 nmap = sobel_convolution(UV, uvt); - // vec3 nmap = sobel_5x5_convolution(UV, uvt); - // vec3 nmap = scharr_convolution(UV, uvt); - // vec3 nmap = godot_convolution(UV, uvt); - NORMAL_MAP = nmap / 2.0 + 0.5; + mat3 TBN = mat3(TANGENT, BINORMAL, NORMAL); + mat3 inv_TBN = transpose(TBN); + + vec3 base_nmap = texture(base_normal_map, UV * base_uv_scale.xy).rgb * 2.0 - 1.0; + vec3 base_world_normal = TBN * base_nmap; + vec3 gunk_nmap = sobel_convolution(UV, uvt); + vec3 gunk_world_normal = TBN * gunk_nmap; + + // Unity blending + // see https://blog.selfshadow.com/publications/blending-in-detail/ + vec3 n = base_nmap; + mat3 basis = mat3( + vec3(n.z, n.y, -n.x), + vec3(n.x, n.z, -n.y), + vec3(n.x, n.y, n.z) + ); + vec3 nmap = normalize(gunk_nmap.x * basis[0] + gunk_nmap.y * basis[1] + gunk_nmap.z * basis[2]); + vec3 world_normal = TBN * nmap; + NORMAL_MAP = nmap / 2.0 + 0.5; // add fresnel - vec3 world_normal = mat3(TANGENT, BINORMAL, NORMAL) * nmap; EMISSION += rim_glow( world_normal, VIEW, diff --git a/src/world/gunkable/gunkable.gd b/src/world/gunkable/gunkable.gd index 627e04b..add29bf 100644 --- a/src/world/gunkable/gunkable.gd +++ b/src/world/gunkable/gunkable.gd @@ -22,6 +22,12 @@ const MASK_THRESHOLD := 0.5 @export var source_gunk_material: ShaderMaterial +@export_group("Base Materials") +@export var base_material_index := 0 +@export var base_uv_scale := Vector3.ONE +@export var base_normal_map: Texture2D +@export var base_normal_blend := 0.6 + var meshtool := MeshDataTool.new() var _polyline_buffer: Array[Vector2] = [] @@ -68,6 +74,22 @@ func _ready() -> void: mat_instance.next_pass = mesh_instance.material_overlay mesh_instance.material_overlay = mat_instance + # Extract what we can from a base material, if we can find one. + var base_material: Material = mesh_instance.get_surface_override_material(base_material_index) + if not base_material: + base_material = mesh_instance.mesh.surface_get_material(base_material_index) + var standard_base_mat: StandardMaterial3D = base_material as StandardMaterial3D + + if not base_normal_map and standard_base_mat: + base_normal_map = standard_base_mat.normal_texture + base_uv_scale = standard_base_mat.uv1_scale + + if base_normal_map: + mat_instance.set_shader_parameter("base_normal_map", base_normal_map) + mat_instance.set_shader_parameter("normal_blend", base_normal_blend) + + mat_instance.set_shader_parameter("base_uv_scale", base_uv_scale) + _deferred_init.call_deferred() # Initialize meshtool