From 8a3c2ca7123fc6d4aa7fd764deeecbc316be8927 Mon Sep 17 00:00:00 2001 From: chendian <-> Date: Thu, 13 Feb 2025 10:15:38 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E5=85=B3=E5=8D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- render/shader/level_grid_block.gdshader | 1 + scene/level/level.tscn | 4 +-- script/level/level_instance.gd | 35 +++++++++---------------- script/manager/level_manager.gd | 16 ++++------- 4 files changed, 21 insertions(+), 35 deletions(-) diff --git a/render/shader/level_grid_block.gdshader b/render/shader/level_grid_block.gdshader index ceeb5c2..5388364 100644 --- a/render/shader/level_grid_block.gdshader +++ b/render/shader/level_grid_block.gdshader @@ -1,4 +1,5 @@ shader_type spatial; +render_mode cull_disabled; uniform bool is_target = false; uniform bool is_focus = false; uniform vec3 target_position = vec3(0, 1.28, 1); diff --git a/scene/level/level.tscn b/scene/level/level.tscn index ed1612c..2c81630 100644 --- a/scene/level/level.tscn +++ b/scene/level/level.tscn @@ -28,11 +28,11 @@ mesh_library = ExtResource("1_am8tr") cell_size = Vector3(1.28, 1.28, 1.28) cell_center_y = false data = { -"cells": PackedInt32Array(196608, 4, 6, 24, 4, 655362, 55, 4, 1441794, 31, 4, 1048578, 27, 4, 655362, 7, 4, 6, 131072, 4, 6, 60, 4, 1441794, 8, 4, 6, 58, 4, 1441794, 65568, 4, 655362, 67, 4, 1441794, 62, 4, 1441794, 23, 4, 655362, 51, 4, 1441794, 65536, 4, 6, 22, 4, 655362, 65567, 4, 655362, 36, 4, 1048578, 0, 4, 6, 30, 4, 655362, 56, 4, 1441794, 1, 4, 6, 29, 4, 655362, 69, 4, 1441794, 2, 4, 6, 70, 4, 1441794, 6, 4, 6, 68, 4, 1441794, 28, 4, 655362, 66, 4, 1441794, 5, 4, 6, 9, 4, 6, 13, 4, 6, 33, 4, 1048578, 10, 4, 6, 63, 4, 1441794, 32, 4, 1048578, 54, 4, 1441794, 65, 4, 1441794, 4, 4, 6, 11, 4, 6, 3, 4, 6, 25, 4, 655362, 12, 4, 6, 64, 4, 1441794, 34, 4, 1048578, 59, 4, 1441794, 53, 4, 1441794, 262184, 4, 1441794, 65560, 4, 655364, 35, 4, 1048578, 52, 4, 1441794, 14, 4, 6, 65559, 4, 655365, 48, 4, 2, 49, 4, 2, 196648, 4, 1441794, 47, 4, 2, 41, 4, 2, 46, 4, 2, 61, 4, 1441794, 42, 4, 2, 45, 4, 2, 43, 4, 2, 44, 4, 2, 40, 4, 2, 50, 4, 2, 39, 4, 1048578, 65558, 4, 1048578, 37, 4, 1048578, 26, 4, 655362, 262144, 4, 6, 57, 4, 1441794, 38, 4, 1048578, 65563, 3, 655362, 65568, 3, 655362, 19, 3, 6, 70, 3, 1441794, 65583, 3, 655365, 62, 3, 1441794, 65546, 3, 6, 65578, 3, 4, 65582, 3, 2, 65554, 3, 655366, 65552, 3, 1441795, 65547, 3, 6, 65548, 3, 6, 61, 3, 1441794, 18, 3, 655366, 65545, 3, 6, 65572, 3, 1441794, 20, 3, 6, 65567, 3, 655362, 65581, 3, 2, 17, 3, 6, 65573, 3, 655362, 65556, 3, 6, 3, 3, 6, 12, 3, 6, 4, 3, 6, 65574, 3, 655362, 65576, 3, 655362, 65536, 3, 6, 65558, 3, 655362, 65586, 3, 2, 65560, 3, 1048578, 65555, 3, 6, 65553, 3, 1441795, 65584, 3, 655364, 21, 3, 1441794, 63, 3, 1441794, 64, 3, 1441794, 65579, 3, 5, 65559, 3, 655362, 13, 3, 6, 15, 3, 6, 65544, 3, 6, 16, 3, 6, 5, 3, 6, 65580, 3, 2, 65557, 3, 655362, 14, 3, 6, 65575, 3, 655362, 68, 3, 1441794, 23, 3, 655362, 22, 3, 655362, 262184, 3, 655362, 27, 3, 655362, 26, 3, 655362, 262144, 3, 6, 25, 3, 655362, 262152, 3, 6, 41, 3, 2, 262154, 3, 6, 262153, 3, 6, 48, 3, 2, 40, 3, 2, 39, 3, 1048578, 44, 3, 2, 43, 3, 2, 42, 3, 2, 45, 3, 2, 46, 3, 2, 47, 3, 2, 35, 3, 1048578, 196648, 3, 655362, 196658, 3, 2, 34, 3, 1048578, 30, 3, 655362, 29, 3, 655362, 28, 3, 655362, 262156, 3, 6, 262155, 3, 6, 33, 3, 1048578, 32, 3, 1048578, 31, 3, 1048578, 24, 3, 655362, 37, 3, 1048578, 196608, 3, 6, 36, 3, 1048578, 131083, 3, 6, 67, 3, 1441794, 8, 3, 6, 131084, 3, 6, 131072, 3, 6, 7, 3, 6, 6, 3, 6, 11, 3, 6, 65, 3, 1441794, 10, 3, 6, 131112, 3, 655362, 131082, 3, 6, 9, 3, 6, 131081, 3, 6, 131122, 3, 2, 131080, 3, 6, 66, 3, 1441794, 2, 3, 6, 69, 3, 1441794, 1, 3, 6, 0, 3, 6, 38, 3, 1048578, 31, 2, 2, 46, 2, 2, 65, 2, 1441794, 18, 2, 6, 10, 2, 6, 11, 2, 6, 21, 2, 2, 35, 2, 2, 5, 2, 6, 32, 2, 2, 42, 2, 2, 13, 2, 6, 9, 2, 6, 30, 2, 2, 65581, 2, 2, 0, 2, 6, 1, 2, 6, 34, 2, 2, 29, 2, 2, 65582, 2, 2, 2, 2, 6, 66, 2, 1441794, 38, 2, 2, 28, 2, 2, 70, 2, 1441794, 65583, 2, 2, 68, 2, 1441794, 33, 2, 2, 19, 2, 6, 17, 2, 6, 41, 2, 2, 43, 2, 2, 47, 2, 2, 64, 2, 1441794, 20, 2, 6, 63, 2, 1441794, 16, 2, 6, 48, 2, 2, 36, 2, 2, 37, 2, 2, 44, 2, 2, 40, 2, 2, 39, 2, 2, 4, 2, 6, 24, 2, 2, 6, 2, 6, 3, 2, 6, 14, 2, 6, 45, 2, 2, 23, 2, 2, 7, 2, 6, 22, 2, 2, 69, 2, 1441794, 15, 2, 6, 27, 2, 2, 26, 2, 2, 8, 2, 6, 67, 2, 1441794, 25, 2, 2, 12, 2, 6, 65541, 2, 6, 196649, 2, 2, 65537, 2, 6, 262187, 2, 2, 65555, 2, 6, 196637, 2, 655362, 131108, 2, 655362, 65557, 2, 655362, 65563, 2, 655362, 196638, 2, 655362, 65578, 2, 2, 262193, 2, 2, 262153, 2, 6, 131096, 2, 655362, 262152, 2, 6, 131087, 2, 6, 131106, 2, 655362, 262154, 2, 6, 196650, 2, 2, 131095, 2, 655362, 131080, 2, 6, 65559, 2, 655362, 65536, 2, 6, 65562, 2, 655362, 262146, 2, 6, 196613, 2, 6, 65538, 2, 6, 65540, 2, 6, 65558, 2, 655362, 65539, 2, 6, 65561, 2, 655362, 65556, 2, 6, 262145, 2, 6, 65577, 2, 2, 65580, 2, 2, 262186, 2, 2, 65564, 2, 655362, 262144, 2, 6, 65554, 2, 6, 65560, 2, 655362, 65542, 2, 6, 65579, 2, 2, 196612, 2, 6, 196651, 2, 2, 196631, 2, 655362, 131092, 2, 6, 131097, 2, 655362, 131078, 2, 6, 131088, 2, 6, 131104, 2, 655362, 196657, 2, 2, 131093, 2, 655362, 131105, 2, 655362, 131121, 2, 2, 131074, 2, 6, 131120, 2, 2, 131122, 2, 2, 131119, 2, 2, 131114, 2, 2, 131081, 2, 6, 196648, 2, 1048578, 131073, 2, 6, 131077, 2, 6, 131113, 2, 2, 131076, 2, 6, 196635, 2, 655362, 131094, 2, 655362, 196655, 2, 2, 196658, 2, 2, 131086, 2, 6, 196656, 2, 2, 131107, 2, 655362, 131100, 2, 655362, 196636, 2, 655362, 131112, 2, 1048578, 131101, 2, 655362, 131090, 2, 6, 131102, 2, 655362, 131099, 2, 655362, 196634, 2, 655362, 196633, 2, 655362, 131089, 2, 6, 131079, 2, 6, 131075, 2, 6, 131103, 2, 655362, 131091, 2, 6, 131098, 2, 655362, 196632, 2, 655362, 131115, 2, 2, 262171, 2, 1048578, 262163, 2, 1048582, 65546, 2, 6, 262170, 2, 1048578, 131085, 2, 6, 262169, 2, 1048578, 262164, 2, 1048582, 65552, 2, 6, 262168, 2, 1048578, 65575, 2, 655362, 262165, 2, 1048578, 262167, 2, 1048578, 65545, 2, 6, 65576, 2, 2, 262166, 2, 1048578, 65567, 2, 655362, 262159, 2, 1048582, 196619, 2, 1441798, 65553, 2, 6, 262160, 2, 1048582, 196618, 2, 6, 65566, 2, 655362, 196622, 2, 6, 196609, 2, 6, 196629, 2, 655362, 196610, 2, 6, 196628, 2, 6, 196621, 2, 6, 196611, 2, 6, 196608, 2, 6, 196630, 2, 655362, 196623, 2, 6, 65584, 2, 2, 262158, 2, 1048582, 196620, 2, 6, 65585, 2, 2, 262157, 2, 1048582, 131082, 2, 6, 262156, 2, 1048582, 262155, 2, 1441798, 65551, 2, 6, 65573, 2, 655362, 262151, 2, 6, 262150, 2, 6, 196625, 2, 6, 65570, 2, 655362, 262184, 2, 1048578, 196616, 2, 6, 196615, 2, 6, 262149, 2, 6, 196626, 2, 6, 262148, 2, 6, 131084, 2, 6, 65574, 2, 655362, 196614, 2, 6, 65548, 2, 6, 65569, 2, 655362, 65547, 2, 1441798, 262147, 2, 6, 196627, 2, 6, 65568, 2, 655362, 262185, 2, 2, 262191, 2, 2, 131083, 2, 1441798, 65565, 2, 655362, 65544, 2, 6, 196617, 2, 6, 196624, 2, 6, 65543, 2, 6, 65549, 2, 6, 131072, 2, 6, 65571, 2, 655362, 262161, 2, 1048582, 65550, 2, 6, 65572, 2, 655362, 262192, 2, 2, 262162, 2, 1048582, 262174, 2, 1048578, 262173, 2, 1048578, 262172, 2, 1048578, 34, 1, 2, 196639, 1, 655362, 196655, 1, 2, 196640, 1, 655362, 196641, 1, 655362, 37, 1, 2, 196658, 1, 2, 196649, 1, 2, 36, 1, 2, 35, 1, 2, 41, 1, 2, 38, 1, 2, 196638, 1, 655362, 262186, 1, 2, 262185, 1, 2, 27, 1, 2, 262191, 1, 2, 262184, 1, 1048578, 22, 1, 2, 262192, 1, 2, 23, 1, 2, 262174, 1, 655362, 262175, 1, 655362, 262176, 1, 655362, 262177, 1, 655362, 24, 1, 2, 262178, 1, 655362, 32, 1, 2, 33, 1, 2, 262179, 1, 655362, 28, 1, 2, 29, 1, 2, 30, 1, 2, 31, 1, 2, 196642, 1, 655362, 196656, 1, 2, 196643, 1, 655362, 46, 1, 2, 42, 1, 2, 196648, 1, 1048578, 196657, 1, 2, 45, 1, 2, 196652, 1, 2, 43, 1, 2, 44, 1, 2, 196653, 1, 2, 196651, 1, 2, 39, 1, 2, 196654, 1, 2, 40, 1, 2, 196650, 1, 2, 48, 1, 2, 47, 1, 2, 262193, 1, 2, 25, 1, 2, 262188, 1, 2, 262189, 1, 2, 26, 1, 2, 262187, 1, 2, 262190, 1, 2, 64, 1, 1441794, 5, 1, 6, 65566, 1, 655362, 70, 1, 1441794, 131102, 1, 655362, 0, 1, 6, 65576, 1, 655362, 11, 1, 6, 65567, 1, 655362, 21, 1, 2, 65575, 1, 655362, 14, 1, 6, 131103, 1, 655362, 1, 1, 6, 65574, 1, 1048578, 131104, 1, 655362, 131121, 1, 2, 66, 1, 1441794, 131122, 1, 2, 131114, 1, 2, 131118, 1, 2, 13, 1, 6, 9, 1, 6, 131120, 1, 2, 131119, 1, 2, 19, 1, 6, 61, 1, 1441794, 65568, 1, 655362, 18, 1, 6, 15, 1, 6, 65569, 1, 655362, 65577, 1, 2, 17, 1, 6, 20, 1, 6, 16, 1, 6, 65578, 1, 2, 65579, 1, 2, 62, 1, 1441794, 65570, 1, 655362, 2, 1, 6, 69, 1, 1441794, 131106, 1, 655362, 3, 1, 6, 65573, 1, 655362, 65572, 1, 655362, 131105, 1, 655362, 4, 1, 6, 65571, 1, 655362, 63, 1, 1441794, 131107, 1, 655362, 131116, 1, 2, 6, 1, 6, 131109, 1, 655365, 8, 1, 6, 67, 1, 1441794, 131117, 1, 2, 65583, 1, 2, 68, 1, 1441794, 65580, 1, 2, 131115, 1, 2, 65584, 1, 2, 131113, 1, 2, 65585, 1, 2, 131112, 1, 1048578, 131108, 1, 655362, 65581, 1, 2, 65582, 1, 2, 65, 1, 1441794, 7, 1, 6, 12, 1, 6, 131110, 1, 655364, 10, 1, 6, 65571, 0, 655362, 29, 0, 2, 12, 0, 6, 65573, 0, 655362, 65572, 0, 655362, 23, 0, 2, 61, 0, 1441794, 30, 0, 2, 262184, 0, 1048578, 22, 0, 2, 17, 0, 6, 65574, 0, 655362, 14, 0, 6, 65575, 0, 1048578, 33, 0, 2, 32, 0, 2, 262180, 0, 655362, 262181, 0, 655362, 63, 0, 1441794, 64, 0, 1441794, 24, 0, 2, 65576, 0, 1048578, 11, 0, 6, 31, 0, 2, 21, 0, 2, 28, 0, 2, 13, 0, 6, 262179, 0, 655362, 68, 0, 1441794, 196645, 0, 655362, 35, 0, 2, 131112, 0, 655362, 36, 0, 2, 10, 0, 6, 65, 0, 1441794, 196644, 0, 655362, 41, 0, 2, 9, 0, 6, 196643, 0, 655362, 131111, 0, 655362, 46, 0, 2, 42, 0, 2, 196648, 0, 1048578, 45, 0, 2, 37, 0, 2, 66, 0, 1441794, 67, 0, 1441794, 8, 0, 6, 38, 0, 2, 131108, 0, 655362, 34, 0, 2, 7, 0, 6, 131110, 0, 655362, 131109, 0, 655362, 196646, 0, 655362, 6, 0, 6, 4, 0, 6, 131107, 0, 655362, 262182, 0, 655362, 47, 0, 2, 3, 0, 6, 69, 0, 1441794, 262183, 0, 1048578, 25, 0, 2, 2, 0, 6, 16, 0, 6, 62, 0, 1441794, 20, 0, 6, 26, 0, 2, 15, 0, 6, 18, 0, 6, 19, 0, 6, 27, 0, 2, 43, 0, 2, 196647, 0, 1048578, 44, 0, 2, 1, 0, 6, 0, 0, 6, 39, 0, 2, 70, 0, 1441794, 40, 0, 2, 5, 0, 6, 48, 0, 2, 65551, 3, 4, 71, 4, 2, 72, 4, 2, 73, 4, 2, 74, 4, 2, 75, 4, 2, 76, 4, 2, 77, 4, 2, 78, 4, 2, 79, 4, 2, 80, 4, 2, 71, 0, 2, 71, 1, 2, 71, 2, 2, 71, 3, 2, 72, 0, 2, 72, 1, 2, 72, 2, 2, 72, 3, 2, 73, 0, 2, 73, 1, 2, 73, 2, 2, 73, 3, 2, 74, 0, 2, 74, 1, 2, 74, 2, 2, 74, 3, 2, 75, 0, 2, 75, 1, 2, 75, 2, 2, 75, 3, 2, 76, 0, 2, 76, 1, 2, 76, 2, 2, 76, 3, 2, 77, 0, 2, 77, 1, 2, 77, 2, 2, 77, 3, 2, 78, 0, 2, 78, 1, 2, 78, 2, 2, 78, 3, 2, 79, 0, 2, 79, 1, 2, 79, 2, 2, 79, 3, 2, 80, 0, 2, 80, 1, 2, 80, 2, 2, 80, 3, 2, 196641, 2, 655364, 196640, 2, 655363, 196639, 2, 655363, 196616, 3, 6, 196617, 3, 6, 196618, 3, 6, 196619, 3, 6, 196620, 3, 1441798, 65540, 4, 1048578, 262194, 1, 2, 262194, 2, 2, 262194, 3, 2, 61, 2, 1441794, 62, 2, 1441794, 49, 0, 2, 49, 1, 2, 49, 2, 2, 49, 3, 2, 50, 0, 2, 50, 1, 2, 50, 2, 2, 50, 3, 2, 51, 0, 1441794, 51, 1, 1441794, 51, 2, 1441794, 51, 3, 1441794, 52, 0, 1441794, 52, 1, 1441794, 52, 2, 1441794, 52, 3, 1441794, 53, 0, 1441794, 53, 1, 1441794, 53, 2, 1441794, 53, 3, 1441794, 54, 0, 1441794, 54, 1, 1441794, 54, 2, 1441794, 54, 3, 1441794, 55, 0, 1441794, 55, 1, 1441794, 55, 2, 1441794, 55, 3, 1441794, 56, 0, 1441794, 56, 1, 1441794, 56, 2, 1441794, 56, 3, 1441794, 57, 0, 1441794, 57, 1, 1441794, 57, 2, 1441794, 57, 3, 1441794, 58, 0, 1441794, 58, 1, 1441794, 58, 2, 1441794, 58, 3, 1441794, 59, 0, 1441794, 59, 1, 1441794, 59, 2, 1441794, 59, 3, 1441794, 60, 0, 1441794, 60, 1, 1441794, 60, 2, 1441794, 60, 3, 1441794, 65586, 0, 2, 65586, 1, 2, 65586, 2, 2, 65587, 1, 2, 65587, 2, 2, 65587, 3, 2, 65588, 1, 2, 65588, 2, 2, 65588, 3, 2, 65589, 1, 2, 65589, 2, 2, 65589, 3, 2, 65590, 1, 2, 65590, 2, 2, 65590, 3, 2, 65591, 1, 2, 65591, 2, 2, 65591, 3, 2, 131123, 1, 2, 131123, 2, 2, 131123, 3, 2, 131124, 1, 2, 131124, 2, 2, 131124, 3, 2, 131125, 1, 2, 131125, 2, 2, 131125, 3, 2, 131126, 1, 2, 131126, 2, 2, 131126, 3, 2, 131127, 1, 2, 131127, 2, 2, 131127, 3, 2, 131128, 1, 2, 131128, 2, 2, 131128, 3, 2, 65587, 0, 2, 65588, 0, 2, 65589, 0, 2, 65590, 0, 2, 65591, 0, 2, 131122, 0, 655362, 131123, 0, 2, 131124, 0, 2, 131125, 0, 2, 131126, 0, 2, 131127, 0, 2, 131128, 0, 2, 196658, 0, 655362, 196659, 0, 2, 196659, 1, 2, 196659, 2, 2, 196660, 0, 2, 196660, 1, 2, 196660, 2, 2, 196661, 0, 2, 196661, 1, 2, 196661, 2, 2, 196662, 0, 2, 196662, 1, 2, 196662, 2, 2, 196663, 0, 2, 196663, 1, 2, 196663, 2, 2, 262194, 0, 655362, 65592, 0, 2, 65592, 1, 2, 65592, 2, 2, 65592, 3, 2, 327720, 0, 655362, 327720, 1, 655362, 327721, 0, 655362, 327721, 1, 655362, 327722, 0, 655362, 327722, 1, 655362, 327723, 0, 655362, 327723, 1, 655362, 327724, 0, 655362, 327724, 1, 655362, 327725, 0, 655362, 327725, 1, 655362, 327726, 0, 655362, 327726, 1, 655362, 327727, 0, 655362, 327727, 1, 655362, 327728, 0, 655362, 327728, 1, 655362, 327729, 0, 655362, 327729, 1, 655362, 327730, 0, 655362, 327730, 1, 655362, 327730, 2, 655362, 327730, 3, 655362, 65577, 0, 655362, 65578, 0, 655362, 65579, 0, 655362, 65580, 0, 655362, 65581, 0, 655362, 65582, 0, 655362, 65583, 0, 655362, 65584, 0, 655362, 65585, 0, 655362, 131113, 0, 655362, 131114, 0, 655362, 131115, 0, 655362, 131116, 0, 655362, 131117, 0, 655362, 131118, 0, 655362, 131119, 0, 655362, 131120, 0, 655362, 131121, 0, 655362, 196649, 0, 655362, 196650, 0, 655362, 196651, 0, 655362, 196652, 0, 655362, 196653, 0, 655362, 196654, 0, 655362, 196655, 0, 655362, 196656, 0, 655362, 196657, 0, 655362, 262185, 0, 655362, 262186, 0, 655362, 262187, 0, 655362, 262188, 0, 655362, 262189, 0, 655362, 262190, 0, 655362, 262191, 0, 655362, 262192, 0, 655362, 262193, 0, 655362, 327720, 2, 655362, 327720, 3, 655362, 327720, 4, 655362, 327721, 2, 655362, 327722, 2, 655362, 327723, 2, 655362, 327727, 2, 655362, 327728, 2, 655362, 327729, 2, 655362, 65593, 0, 655362, 65594, 0, 655362, 65595, 0, 655362, 65596, 0, 655362, 65597, 0, 655362, 65598, 0, 655362, 65599, 0, 655362, 65600, 0, 655362, 65601, 0, 655362, 65602, 0, 655362, 65603, 0, 655362, 65604, 0, 655362, 65605, 0, 655362, 65606, 0, 655362, 65607, 0, 655362, 131129, 0, 655362, 131130, 0, 655362, 131131, 0, 655362, 131132, 0, 655362, 131133, 0, 655362, 131134, 0, 655362, 131135, 0, 655362, 131136, 0, 655362, 131137, 0, 655362, 131138, 0, 655362, 131139, 0, 655362, 131140, 0, 655362, 131141, 0, 655362, 131142, 0, 655362, 131143, 0, 655362, 196664, 0, 655362, 196665, 0, 655362, 196666, 0, 655362, 196667, 0, 655362, 196668, 0, 655362, 196669, 0, 655362, 196670, 0, 655362, 196671, 0, 655362, 196672, 0, 655362, 196676, 0, 655362, 196677, 0, 655362, 196678, 0, 655362, 196664, 1, 655362, 196664, 2, 655362, 196664, 3, 655362, 196659, 3, 655362, 196660, 3, 655362, 196661, 3, 655362, 196662, 3, 655362, 196663, 3, 655362, 65604, 1, 655362, 65604, 2, 655362, 65604, 3, 655362, 65604, 4, 655362, 65605, 1, 655362, 65605, 2, 655362, 65605, 3, 655362, 65605, 4, 655362, 65606, 1, 655362, 65606, 2, 655362, 65606, 3, 655362, 65606, 4, 655362, 131140, 1, 655362, 131140, 2, 655362, 131140, 3, 655362, 131140, 4, 655362, 131141, 1, 655362, 131141, 2, 655362, 131141, 3, 655362, 131141, 4, 655362, 131142, 1, 655362, 131142, 2, 655362, 131142, 3, 655362, 131142, 4, 655362, 196676, 1, 655362, 196676, 2, 655362, 196676, 3, 655362, 196677, 1, 655362, 196677, 2, 655362, 196677, 3, 655362, 196678, 1, 655362, 196678, 2, 655362, 196678, 3, 655362, 262212, 0, 655362, 262212, 1, 655362, 262212, 2, 655362, 262212, 3, 655362, 262213, 0, 655362, 262213, 1, 655362, 262213, 2, 655362, 262213, 3, 655362, 262214, 0, 655362, 262214, 1, 655362, 262214, 2, 655362, 262214, 3, 655362, 262195, 0, 655362, 262196, 0, 655362, 262197, 0, 655362, 262198, 0, 655362, 262199, 0, 655362, 262200, 0, 655362, 262201, 0, 655362, 262202, 0, 655362, 262203, 0, 655362, 262204, 0, 655362, 262205, 0, 655362, 262206, 0, 655362, 262207, 0, 655362, 262208, 0, 655362, 262209, 0, 655362, 262210, 0, 655362, 262211, 0, 655362, 327750, 0, 655362, 327750, 1, 655362, 327750, 2, 655362, 327750, 3, 2, 327751, 0, 655362, 327751, 1, 655362, 327751, 2, 655362, 327751, 3, 2, 327751, 4, 2, 327752, 0, 655362, 327752, 1, 655362, 327752, 2, 655362, 327752, 3, 655362, 327752, 4, 655362, 327753, 0, 655362, 327753, 1, 655362, 327753, 2, 655362, 327753, 3, 655362, 327753, 4, 655362, 327754, 0, 655362, 327754, 1, 655362, 327754, 2, 655362, 327754, 3, 655362, 327754, 4, 655362, 327755, 0, 655362, 327755, 1, 655362, 327755, 2, 655362, 327755, 3, 655362, 327755, 4, 655362, 327756, 0, 655362, 327756, 1, 655362, 327756, 2, 655362, 327756, 3, 655362, 327756, 4, 655362, 327757, 0, 655362, 327757, 1, 655362, 327757, 2, 655362, 327757, 3, 655362, 327757, 4, 655362, 327758, 0, 655362, 327758, 1, 655362, 327758, 2, 655362, 327758, 3, 655362, 327758, 4, 655362, 327759, 0, 655362, 327759, 1, 655362, 327759, 2, 655362, 327759, 3, 655362, 327759, 4, 655362, 327760, 0, 655362, 327760, 1, 655362, 327760, 2, 655362, 327760, 3, 655362, 327760, 4, 655362, 65601, 1, 655362, 65601, 2, 655362, 65601, 3, 655362, 65601, 4, 655362, 65602, 1, 655362, 65602, 2, 655362, 65602, 3, 655362, 65602, 4, 655362, 65603, 1, 655362, 65603, 2, 655362, 65603, 3, 655362, 65603, 4, 655362, 131137, 1, 655362, 131137, 2, 655362, 131137, 3, 655362, 131137, 4, 655362, 131138, 1, 655362, 131138, 2, 655362, 131138, 3, 655362, 131138, 4, 655362, 131139, 1, 655362, 131139, 2, 655362, 131139, 3, 655362, 131139, 4, 655362, 196673, 0, 655362, 196674, 0, 655362, 196675, 0, 655362, 65593, 1, 655362, 65593, 2, 655362, 65593, 3, 655362, 65594, 1, 655362, 65594, 2, 655362, 65594, 3, 655362, 65595, 1, 655362, 65595, 2, 655362, 65595, 3, 655362, 131129, 1, 655362, 131129, 2, 655362, 131129, 3, 655362, 131130, 1, 655362, 131130, 2, 655362, 131130, 3, 655362, 131131, 1, 655362, 131131, 2, 655362, 131131, 3, 655362, 196674, 1, 655362, 196674, 2, 655362, 196675, 1, 655362, 196675, 2, 655362, 262210, 1, 655362, 262210, 2, 655362, 262211, 1, 655362, 262211, 2, 655362, 327748, 0, 655362, 327748, 1, 655362, 327748, 2, 655362, 327748, 3, 655362, 327749, 0, 655362, 327749, 1, 655362, 327749, 2, 655362, 327749, 3, 655362, 327746, 0, 655362, 327746, 1, 655362, 327746, 2, 655362, 327747, 0, 655362, 327747, 1, 655362, 327747, 2, 655362, 327731, 0, 655362, 327732, 0, 655362, 327733, 0, 655362, 327734, 0, 655362, 327735, 0, 655362, 327736, 0, 655362, 327737, 0, 655362, 327738, 0, 655362, 327739, 0, 655362, 327740, 0, 655362, 327741, 0, 655362, 327742, 0, 655362, 327743, 0, 655362, 327744, 0, 655362, 327745, 0, 655362, 196673, 1, 655362, 196673, 2, 655362, 262209, 1, 655362, 262209, 2, 655362, 327745, 1, 655362, 327745, 2, 655362, 196675, 3, 655362, 262211, 3, 655362, 327747, 3, 655362, 196665, 1, 655362, 196666, 1, 655362, 196667, 1, 655362, 262195, 1, 655362, 262196, 1, 655362, 262197, 1, 655362, 262198, 1, 655362, 262199, 1, 655362, 262200, 1, 655362, 262201, 1, 655362, 262202, 1, 655362, 262203, 1, 655362, 327739, 1, 655362, 327740, 1, 655362, 327741, 1, 655362, 327742, 1, 655362, 327743, 1, 655362, 327744, 1, 655362, 65596, 1, 655362, 65597, 1, 655362, 65598, 1, 655362, 65599, 1, 655362, 65600, 1, 655362, 131132, 1, 655362, 131133, 1, 655362, 131134, 1, 655362, 131135, 1, 655362, 131136, 1, 655362, 196668, 1, 655362, 196669, 1, 655362, 196670, 1, 655362, 196671, 1, 655362, 196672, 1, 655362, 262204, 1, 655362, 262205, 1, 655362, 262206, 1, 655362, 262207, 1, 655362, 262208, 1, 655362, 262195, 2, 655362, 262195, 3, 655362, 262196, 2, 655362, 262196, 3, 655362, 262197, 2, 655362, 262197, 3, 655362, 262198, 2, 655362, 262198, 3, 655362, 262199, 2, 655362, 262199, 3, 655362, 262200, 2, 655362, 262200, 3, 655362, 327735, 1, 655362, 327736, 1, 655362, 327737, 1, 655362, 327738, 1, 655362, 327734, 1, 2, 327733, 1, 2, 393266, 0, 2, 393267, 0, 2, 393268, 0, 2, 393269, 0, 2, 393270, 0, 2, 393271, 0, 2, 393272, 0, 2, 393273, 0, 2, 393274, 0, 2, 393275, 0, 2, 393276, 0, 2, 393277, 0, 2, 393278, 0, 2, 393279, 0, 2, 393280, 0, 2, 393281, 0, 2, 393282, 0, 2, 393283, 0, 2, 393284, 0, 2, 393285, 0, 2, 393286, 0, 2, 327727, 3, 2, 327727, 4, 2, 327728, 3, 2, 327728, 4, 2, 327729, 3, 2, 327729, 4, 2, 393263, 0, 2, 393263, 1, 2, 393263, 2, 2, 393263, 3, 2, 393263, 4, 2, 458799, 0, 2, 458799, 1, 2, 458799, 2, 2, 458799, 3, 2, 458799, 4, 2, 327731, 1, 2, 327731, 2, 2, 327731, 3, 2, 327732, 1, 2, 327732, 2, 2, 327732, 3, 2, 327733, 2, 655365, 327734, 2, 655364, 327727, 65531, 655362, 327727, 65532, 655362, 327727, 65533, 655362, 327727, 65534, 655362, 327727, 65535, 655362, 327728, 65531, 655362, 327728, 65532, 655362, 327728, 65533, 655362, 327728, 65534, 655362, 327728, 65535, 655362, 327729, 65531, 655362, 327729, 65532, 655362, 327729, 65533, 655362, 327729, 65534, 655362, 327729, 65535, 655362, 327730, 65531, 655362, 327730, 65532, 655362, 327730, 65533, 655362, 327730, 65534, 655362, 327730, 65535, 655362, 327731, 65531, 655362, 327731, 65532, 655362, 327731, 65533, 655362, 327731, 65534, 655362, 327731, 65535, 655362, 327732, 65531, 655362, 327732, 65532, 655362, 327732, 65533, 655362, 327732, 65534, 655362, 327732, 65535, 655362, 327733, 65531, 655362, 327733, 65532, 655362, 327733, 65533, 655362, 327733, 65534, 655362, 327733, 65535, 655362, 327734, 65531, 655362, 327734, 65532, 655362, 327734, 65533, 655362, 327734, 65534, 655362, 327734, 65535, 655362, 327735, 65531, 655362, 327735, 65532, 655362, 327735, 65533, 655362, 327735, 65534, 655362, 327735, 65535, 655362, 327736, 65531, 655362, 327736, 65532, 655362, 327736, 65533, 655362, 327736, 65534, 655362, 327736, 65535, 655362, 327737, 65531, 655362, 327737, 65532, 655362, 327737, 65533, 655362, 327737, 65534, 655362, 327737, 65535, 655362, 327738, 65531, 655362, 327738, 65532, 655362, 327738, 65533, 655362, 327738, 65534, 655362, 327738, 65535, 655362, 327739, 65531, 655362, 327739, 65532, 655362, 327739, 65533, 655362, 327739, 65534, 655362, 327739, 65535, 655362, 327740, 65531, 655362, 327740, 65532, 655362, 327740, 65533, 655362, 327740, 65534, 655362, 327740, 65535, 655362, 393266, 65532, 655362, 393266, 65531, 655362, 393263, 65531, 655362, 393264, 65531, 655362, 393265, 65531, 655362, 393263, 65532, 655362, 393263, 65533, 655362, 393263, 65534, 655362, 393263, 65535, 655362, 458799, 65531, 655362, 458799, 65532, 655362, 458799, 65533, 655362, 458799, 65534, 655362, 458799, 65535, 655362, 458800, 65531, 655362, 458801, 65531, 655362, 458802, 65531, 655362, 458802, 65532, 655362, 458802, 0, 655362, 393267, 65531, 2, 393268, 65531, 2, 393269, 65531, 2, 393270, 65531, 2, 393271, 65531, 2, 393272, 65531, 2, 393273, 65531, 2, 393274, 65531, 2, 393275, 65531, 2, 393276, 65531, 2, 393276, 65532, 2, 393276, 65533, 2, 393276, 65534, 2, 393276, 65535, 2, 458803, 65531, 2, 458804, 65531, 2, 458805, 65531, 2, 458806, 65531, 2, 458807, 65531, 2, 458808, 65531, 2, 458809, 65531, 2, 458810, 65531, 2, 458811, 65531, 2, 458812, 65531, 2, 458812, 65532, 2, 458812, 65533, 2, 458812, 65534, 2, 458812, 65535, 2, 458803, 0, 2, 458804, 0, 2, 458805, 0, 2, 458806, 0, 2, 458807, 0, 2, 458808, 0, 2, 458809, 0, 2, 458810, 0, 2, 458811, 0, 2, 458812, 0, 2, 458813, 0, 2, 458814, 0, 2, 458815, 0, 2, 458816, 0, 2, 458817, 0, 2, 458818, 0, 2, 458819, 0, 2, 458820, 0, 2, 458821, 0, 2, 458822, 0, 2, 524338, 0, 2, 524339, 0, 2, 524340, 0, 2, 524341, 0, 2, 524342, 0, 2, 524343, 0, 2, 524344, 0, 2, 524345, 0, 2, 524346, 0, 2, 524347, 0, 2, 524348, 0, 2, 524349, 0, 2, 524350, 0, 2, 524351, 0, 2, 524352, 0, 2, 524353, 0, 2, 524354, 0, 2, 524355, 0, 2, 524356, 0, 2, 524357, 0, 2, 524358, 0, 2, 589874, 0, 2, 589875, 0, 2, 589876, 0, 2, 589877, 0, 2, 589878, 0, 2, 589879, 0, 2, 589880, 0, 2, 589881, 0, 2, 589882, 0, 2, 589883, 0, 2, 589884, 0, 2, 589885, 0, 2, 589886, 0, 2, 589887, 0, 2, 589888, 0, 2, 589889, 0, 2, 589890, 0, 2, 589891, 0, 2, 589892, 0, 2, 589893, 0, 2, 589894, 0, 2, 393285, 1, 2, 393285, 2, 2, 393286, 1, 2, 393286, 2, 2, 458821, 2, 2, 458822, 2, 2, 458821, 1, 2, 458822, 1, 2, 393287, 0, 2, 393287, 1, 2, 393287, 2, 2, 393288, 0, 2, 393288, 1, 2, 393288, 2, 2, 458823, 0, 2, 458823, 1, 2, 458823, 2, 2, 458824, 0, 2, 458824, 1, 2, 458824, 2, 2, 393266, 65533, 2, 393266, 65534, 2, 458802, 65533, 2, 458802, 65534, 2, 524338, 65531, 2, 524338, 65532, 2, 524338, 65533, 2, 524338, 65534, 2, 327728, 5, 2, 327728, 6, 2, 327728, 7, 2, 327728, 8, 2, 327728, 9, 2, 327728, 10, 2, 327729, 5, 2, 327729, 6, 2, 327729, 7, 2, 327729, 8, 2, 327729, 9, 2, 327729, 10, 2, 327727, 5, 2, 327727, 6, 2, 327727, 7, 2, 327727, 8, 2, 327727, 9, 2, 327727, 10, 2, 327730, 5, 2, 327730, 6, 2, 327730, 7, 2, 327730, 8, 2, 327730, 9, 2, 327730, 10, 2, 393266, 10, 2, 393263, 10, 2, 393264, 10, 2, 393265, 10, 2, 393263, 5, 2, 393263, 6, 2, 393263, 7, 2, 393263, 8, 2, 393263, 9, 2, 458799, 5, 2, 458799, 6, 2, 458799, 7, 2, 458799, 8, 2, 458799, 9, 2, 458799, 10, 2, 458800, 10, 2, 458801, 10, 2, 458802, 10, 2, 524338, 10, 2, 589874, 10, 2, 524335, 10, 2, 524336, 10, 2, 524337, 10, 2, 589871, 10, 2, 589872, 10, 2, 589873, 10, 2, 524335, 65531, 2, 524335, 65532, 2, 524335, 65533, 2, 524335, 65534, 2, 524335, 65535, 2, 524335, 0, 2, 524335, 1, 2, 524335, 2, 2, 524335, 3, 2, 524335, 4, 2, 524335, 5, 2, 524335, 6, 2, 524335, 7, 2, 524335, 8, 2, 524335, 9, 2, 524336, 65531, 2, 524337, 65531, 2, 589874, 65531, 2, 589874, 65532, 2, 589874, 65533, 2, 589874, 65534, 2, 589871, 65531, 2, 589872, 65531, 2, 589873, 65531, 2, 589871, 65532, 2, 589871, 65533, 2, 589871, 65534, 2, 589871, 65535, 2, 589871, 0, 2, 589871, 1, 2, 589871, 2, 2, 589871, 3, 2, 589871, 4, 2, 589871, 5, 2, 589871, 6, 2, 589871, 7, 2, 589871, 8, 2, 589871, 9, 2, 327730, 4, 2, 393265, 9, 655362, 393266, 3, 655362, 393266, 4, 655362, 393266, 5, 655362, 393266, 6, 655362, 393266, 7, 655362, 393266, 8, 655362, 393266, 9, 655362, 458801, 9, 655362, 458802, 3, 655362, 458802, 4, 655362, 458802, 5, 655362, 458802, 6, 655362, 458802, 7, 655362, 458802, 8, 655362, 458802, 9, 655362, 15, 4, 655362, 16, 4, 655362, 17, 4, 655362, 18, 4, 655362, 19, 4, 655362, 20, 4, 655362, 21, 4, 655362, 65554, 4, 655362, 65555, 4, 655362, 65556, 4, 655362, 65557, 4, 655362, 65551, 4, 4, 65552, 4, 3, 65553, 4, 3, 40, 5, 2, 41, 5, 2, 42, 5, 2, 43, 5, 2, 44, 5, 2, 45, 5, 2, 46, 5, 2, 47, 5, 2, 48, 5, 2, 49, 5, 2, 50, 5, 2, 51, 5, 2, 52, 5, 2, 53, 5, 2, 54, 5, 2, 55, 5, 2, 56, 5, 2, 57, 5, 2, 58, 5, 2, 59, 5, 2, 60, 5, 2, 61, 5, 2, 62, 5, 2, 63, 5, 2, 64, 5, 2, 65, 5, 2, 66, 5, 2, 67, 5, 2, 68, 5, 2, 69, 5, 2, 70, 5, 2, 71, 5, 2, 72, 5, 2, 73, 5, 2, 74, 5, 2, 75, 5, 2, 76, 5, 2, 77, 5, 2, 78, 5, 2, 79, 5, 2, 80, 5, 2, 327750, 5, 2, 327751, 5, 2, 327752, 5, 2, 327753, 5, 2, 327754, 5, 2, 327755, 5, 2, 327756, 5, 2, 327757, 5, 2, 327758, 5, 2, 327759, 5, 2, 327760, 5, 2, 196678, 5, 2, 262214, 5, 2, 524358, 1, 1441794, 589894, 1, 1441794, 393286, 3, 1441794, 393286, 5, 1441794, 458822, 3, 1441794, 458822, 5, 1441794, 524358, 3, 1441794, 524358, 5, 1441794, 589894, 3, 1441794, 589894, 5, 1441794, 131142, 5, 2, 65606, 5, 1441794, 524338, 3, 1441794, 524338, 4, 1441794, 524338, 5, 1441794, 524338, 6, 1441794, 524338, 7, 1441794, 524338, 8, 1441794, 524338, 9, 1441794, 589874, 3, 1441794, 589874, 4, 1441794, 589874, 5, 1441794, 589874, 6, 1441794, 589874, 7, 1441794, 589874, 8, 1441794, 589874, 9, 1441794, 393266, 2, 1441794, 458802, 2, 1441794, 524338, 2, 1441794, 589874, 2, 1441794, 13, 5, 1441794, 14, 5, 1441794, 15, 5, 1441794, 16, 5, 1441794, 17, 5, 1441794, 18, 5, 1441794, 19, 5, 1441794, 20, 5, 1441794, 21, 5, 1441794, 22, 5, 1441794, 23, 5, 1441794, 24, 5, 1441794, 25, 5, 1441794, 26, 5, 1441794, 27, 5, 1441794, 28, 5, 1441794, 29, 5, 1441794, 30, 5, 1441794, 31, 5, 1441794, 32, 5, 1441794, 33, 5, 1441794, 34, 5, 1441794, 35, 5, 1441794, 36, 5, 1441794, 37, 5, 1441794, 38, 5, 1441794, 39, 5, 1441794, 0, 5, 1441794, 1, 5, 1441794, 2, 5, 1441794, 3, 5, 1441794, 4, 5, 1441794, 5, 5, 1441794, 6, 5, 1441794, 7, 5, 1441794, 8, 5, 1441794, 9, 5, 1441794, 10, 5, 1441794, 11, 5, 1441794, 12, 5, 1441794, 393266, 65535, 1441794) +"cells": PackedInt32Array(196608, 4, 6, 24, 4, 655362, 55, 4, 1441794, 31, 4, 1048578, 27, 4, 655362, 7, 4, 6, 131072, 4, 6, 60, 4, 1441794, 8, 4, 6, 58, 4, 1441794, 65568, 4, 655362, 67, 4, 1441794, 62, 4, 1441794, 23, 4, 655362, 51, 4, 1441794, 65536, 4, 6, 22, 4, 655362, 65567, 4, 655362, 36, 4, 1048578, 0, 4, 6, 30, 4, 655362, 56, 4, 1441794, 1, 4, 6, 29, 4, 655362, 69, 4, 1441794, 2, 4, 6, 70, 4, 1441794, 6, 4, 6, 68, 4, 1441794, 28, 4, 655362, 66, 4, 1441794, 5, 4, 6, 9, 4, 6, 13, 4, 6, 33, 4, 1048578, 10, 4, 6, 63, 4, 1441794, 32, 4, 1048578, 54, 4, 1441794, 65, 4, 1441794, 4, 4, 6, 11, 4, 6, 3, 4, 6, 25, 4, 655362, 12, 4, 6, 64, 4, 1441794, 34, 4, 1048578, 59, 4, 1441794, 53, 4, 1441794, 262184, 4, 1441794, 65560, 4, 655364, 35, 4, 1048578, 52, 4, 1441794, 14, 4, 6, 65559, 4, 655365, 48, 4, 2, 49, 4, 2, 196648, 4, 1441794, 47, 4, 2, 41, 4, 2, 46, 4, 2, 61, 4, 1441794, 42, 4, 2, 45, 4, 2, 43, 4, 2, 44, 4, 2, 40, 4, 2, 50, 4, 2, 39, 4, 1048578, 65558, 4, 1048578, 37, 4, 1048578, 26, 4, 655362, 262144, 4, 6, 57, 4, 1441794, 38, 4, 1048578, 65563, 3, 655362, 65568, 3, 655362, 19, 3, 6, 70, 3, 1441794, 65583, 3, 655365, 62, 3, 1441794, 65546, 3, 6, 65578, 3, 4, 65582, 3, 2, 65554, 3, 655366, 65552, 3, 1441795, 65547, 3, 6, 65548, 3, 6, 61, 3, 1441794, 18, 3, 655366, 65545, 3, 6, 65572, 3, 1441794, 20, 3, 6, 65567, 3, 655362, 65581, 3, 2, 17, 3, 6, 65573, 3, 655362, 65556, 3, 6, 3, 3, 6, 12, 3, 6, 4, 3, 6, 65574, 3, 655362, 65576, 3, 655362, 65536, 3, 6, 65558, 3, 655362, 65586, 3, 2, 65560, 3, 1048578, 65555, 3, 6, 65553, 3, 1441795, 65584, 3, 655364, 21, 3, 1441794, 63, 3, 1441794, 64, 3, 1441794, 65579, 3, 5, 65559, 3, 655362, 13, 3, 6, 15, 3, 6, 65544, 3, 6, 16, 3, 6, 5, 3, 6, 65580, 3, 2, 65557, 3, 655362, 14, 3, 6, 65575, 3, 655362, 68, 3, 1441794, 23, 3, 655362, 22, 3, 655362, 262184, 3, 655362, 27, 3, 655362, 26, 3, 655362, 262144, 3, 6, 25, 3, 655362, 262152, 3, 6, 41, 3, 2, 262154, 3, 6, 262153, 3, 6, 48, 3, 2, 40, 3, 2, 39, 3, 1048578, 44, 3, 2, 43, 3, 2, 42, 3, 2, 45, 3, 2, 46, 3, 2, 47, 3, 2, 35, 3, 1048578, 196648, 3, 655362, 196658, 3, 2, 34, 3, 1048578, 30, 3, 655362, 29, 3, 655362, 28, 3, 655362, 262156, 3, 6, 262155, 3, 6, 33, 3, 1048578, 32, 3, 1048578, 31, 3, 1048578, 24, 3, 655362, 37, 3, 1048578, 196608, 3, 6, 36, 3, 1048578, 131083, 3, 6, 67, 3, 1441794, 8, 3, 6, 131084, 3, 6, 131072, 3, 6, 7, 3, 6, 6, 3, 6, 11, 3, 6, 65, 3, 1441794, 10, 3, 6, 131112, 3, 655362, 131082, 3, 6, 9, 3, 6, 131081, 3, 6, 131122, 3, 2, 131080, 3, 6, 66, 3, 1441794, 2, 3, 6, 69, 3, 1441794, 1, 3, 6, 0, 3, 6, 38, 3, 1048578, 31, 2, 2, 46, 2, 2, 65, 2, 1441794, 18, 2, 6, 10, 2, 6, 11, 2, 6, 21, 2, 2, 35, 2, 2, 5, 2, 6, 32, 2, 2, 42, 2, 2, 13, 2, 6, 9, 2, 6, 30, 2, 2, 65581, 2, 2, 0, 2, 6, 1, 2, 6, 34, 2, 2, 29, 2, 2, 65582, 2, 2, 2, 2, 6, 66, 2, 1441794, 38, 2, 2, 28, 2, 2, 70, 2, 1441794, 65583, 2, 2, 68, 2, 1441794, 33, 2, 2, 19, 2, 6, 17, 2, 6, 41, 2, 2, 43, 2, 2, 47, 2, 2, 64, 2, 1441794, 20, 2, 6, 63, 2, 1441794, 16, 2, 6, 48, 2, 2, 36, 2, 2, 37, 2, 2, 44, 2, 2, 40, 2, 2, 39, 2, 2, 4, 2, 6, 24, 2, 2, 6, 2, 6, 3, 2, 6, 14, 2, 6, 45, 2, 2, 23, 2, 2, 7, 2, 6, 22, 2, 2, 69, 2, 1441794, 15, 2, 6, 27, 2, 2, 26, 2, 2, 8, 2, 6, 67, 2, 1441794, 25, 2, 2, 12, 2, 6, 65541, 2, 6, 196649, 2, 2, 65537, 2, 6, 262187, 2, 2, 65555, 2, 6, 196637, 2, 655362, 131108, 2, 655362, 65557, 2, 655362, 65563, 2, 655362, 196638, 2, 655362, 65578, 2, 2, 262193, 2, 2, 262153, 2, 6, 131096, 2, 655362, 262152, 2, 6, 131087, 2, 6, 131106, 2, 655362, 262154, 2, 6, 196650, 2, 2, 131095, 2, 655362, 131080, 2, 6, 65559, 2, 655362, 65536, 2, 6, 65562, 2, 655362, 262146, 2, 6, 196613, 2, 6, 65538, 2, 6, 65540, 2, 6, 65558, 2, 655362, 65539, 2, 6, 65561, 2, 655362, 65556, 2, 6, 262145, 2, 6, 65577, 2, 2, 65580, 2, 2, 262186, 2, 2, 65564, 2, 655362, 262144, 2, 6, 65554, 2, 6, 65560, 2, 655362, 65542, 2, 6, 65579, 2, 2, 196612, 2, 6, 196651, 2, 2, 196631, 2, 655362, 131092, 2, 6, 131097, 2, 655362, 131078, 2, 6, 131088, 2, 6, 131104, 2, 655362, 196657, 2, 2, 131093, 2, 655362, 131105, 2, 655362, 131121, 2, 2, 131074, 2, 6, 131120, 2, 2, 131122, 2, 2, 131119, 2, 2, 131114, 2, 2, 131081, 2, 6, 196648, 2, 1048578, 131073, 2, 6, 131077, 2, 6, 131113, 2, 2, 131076, 2, 6, 196635, 2, 655362, 131094, 2, 655362, 196655, 2, 2, 196658, 2, 2, 131086, 2, 6, 196656, 2, 2, 131107, 2, 655362, 131100, 2, 655362, 196636, 2, 655362, 131112, 2, 1048578, 131101, 2, 655362, 131090, 2, 6, 131102, 2, 655362, 131099, 2, 655362, 196634, 2, 655362, 196633, 2, 655362, 131089, 2, 6, 131079, 2, 6, 131075, 2, 6, 131103, 2, 655362, 131091, 2, 6, 131098, 2, 655362, 196632, 2, 655362, 131115, 2, 2, 262171, 2, 1048578, 262163, 2, 1048582, 65546, 2, 6, 262170, 2, 1048578, 131085, 2, 6, 262169, 2, 1048578, 262164, 2, 1048582, 65552, 2, 6, 262168, 2, 1048578, 65575, 2, 655362, 262165, 2, 1048578, 262167, 2, 1048578, 65545, 2, 6, 65576, 2, 2, 262166, 2, 1048578, 65567, 2, 655362, 262159, 2, 1048582, 196619, 2, 1441798, 65553, 2, 6, 262160, 2, 1048582, 196618, 2, 6, 65566, 2, 655362, 196622, 2, 6, 196609, 2, 6, 196629, 2, 655362, 196610, 2, 6, 196628, 2, 6, 196621, 2, 6, 196611, 2, 6, 196608, 2, 6, 196630, 2, 655362, 196623, 2, 6, 65584, 2, 2, 262158, 2, 1048582, 196620, 2, 6, 65585, 2, 2, 262157, 2, 1048582, 131082, 2, 6, 262156, 2, 1048582, 262155, 2, 1441798, 65551, 2, 6, 65573, 2, 655362, 262151, 2, 6, 262150, 2, 6, 196625, 2, 6, 65570, 2, 655362, 262184, 2, 1048578, 196616, 2, 6, 196615, 2, 6, 262149, 2, 6, 196626, 2, 6, 262148, 2, 6, 131084, 2, 6, 65574, 2, 655362, 196614, 2, 6, 65548, 2, 6, 65569, 2, 655362, 65547, 2, 1441798, 262147, 2, 6, 196627, 2, 6, 65568, 2, 655362, 262185, 2, 2, 262191, 2, 2, 131083, 2, 1441798, 65565, 2, 655362, 65544, 2, 6, 196617, 2, 6, 196624, 2, 6, 65543, 2, 6, 65549, 2, 6, 131072, 2, 6, 65571, 2, 655362, 262161, 2, 1048582, 65550, 2, 6, 65572, 2, 655362, 262192, 2, 2, 262162, 2, 1048582, 262174, 2, 1048578, 262173, 2, 1048578, 262172, 2, 1048578, 34, 1, 2, 196639, 1, 655362, 196655, 1, 2, 196640, 1, 655362, 196641, 1, 655362, 37, 1, 2, 196658, 1, 2, 196649, 1, 2, 36, 1, 2, 35, 1, 2, 41, 1, 2, 38, 1, 2, 196638, 1, 655362, 262186, 1, 2, 262185, 1, 2, 27, 1, 2, 262191, 1, 2, 262184, 1, 1048578, 22, 1, 2, 262192, 1, 2, 23, 1, 2, 262174, 1, 655362, 262175, 1, 655362, 262176, 1, 655362, 262177, 1, 655362, 24, 1, 2, 262178, 1, 655362, 32, 1, 2, 33, 1, 2, 262179, 1, 655362, 28, 1, 2, 29, 1, 2, 30, 1, 2, 31, 1, 2, 196642, 1, 655362, 196656, 1, 2, 196643, 1, 655362, 46, 1, 2, 42, 1, 2, 196648, 1, 1048578, 196657, 1, 2, 45, 1, 2, 196652, 1, 2, 43, 1, 2, 44, 1, 2, 196653, 1, 2, 196651, 1, 2, 39, 1, 2, 196654, 1, 2, 40, 1, 2, 196650, 1, 2, 48, 1, 2, 47, 1, 2, 262193, 1, 2, 25, 1, 2, 262188, 1, 2, 262189, 1, 2, 26, 1, 2, 262187, 1, 2, 262190, 1, 2, 64, 1, 1441794, 5, 1, 6, 65566, 1, 655362, 70, 1, 1441794, 131102, 1, 655362, 0, 1, 6, 65576, 1, 655362, 11, 1, 6, 65567, 1, 655362, 21, 1, 2, 65575, 1, 655362, 14, 1, 6, 131103, 1, 655362, 1, 1, 6, 65574, 1, 1048578, 131104, 1, 655362, 131121, 1, 2, 66, 1, 1441794, 131122, 1, 2, 131114, 1, 2, 131118, 1, 2, 13, 1, 6, 9, 1, 6, 131120, 1, 2, 131119, 1, 2, 19, 1, 6, 61, 1, 1441794, 65568, 1, 655362, 18, 1, 6, 15, 1, 6, 65569, 1, 655362, 65577, 1, 2, 17, 1, 6, 20, 1, 6, 16, 1, 6, 65578, 1, 2, 65579, 1, 2, 62, 1, 1441794, 65570, 1, 655362, 2, 1, 6, 69, 1, 1441794, 131106, 1, 655362, 3, 1, 6, 65573, 1, 655362, 65572, 1, 655362, 131105, 1, 655362, 4, 1, 6, 65571, 1, 655362, 63, 1, 1441794, 131107, 1, 655362, 131116, 1, 2, 6, 1, 6, 131109, 1, 655365, 8, 1, 6, 67, 1, 1441794, 131117, 1, 2, 65583, 1, 2, 68, 1, 1441794, 65580, 1, 2, 131115, 1, 2, 65584, 1, 2, 131113, 1, 2, 65585, 1, 2, 131112, 1, 1048578, 131108, 1, 655362, 65581, 1, 2, 65582, 1, 2, 65, 1, 1441794, 7, 1, 6, 12, 1, 6, 131110, 1, 655364, 10, 1, 6, 65571, 0, 655362, 29, 0, 2, 12, 0, 6, 65573, 0, 655362, 65572, 0, 655362, 23, 0, 2, 61, 0, 1441794, 30, 0, 2, 262184, 0, 1048578, 22, 0, 2, 17, 0, 6, 65574, 0, 655362, 14, 0, 6, 65575, 0, 1048578, 33, 0, 2, 32, 0, 2, 262180, 0, 655362, 262181, 0, 655362, 63, 0, 1441794, 64, 0, 1441794, 24, 0, 2, 65576, 0, 1048578, 11, 0, 6, 31, 0, 2, 21, 0, 2, 28, 0, 2, 13, 0, 6, 262179, 0, 655362, 68, 0, 1441794, 196645, 0, 655362, 35, 0, 2, 131112, 0, 655362, 36, 0, 2, 10, 0, 6, 65, 0, 1441794, 196644, 0, 655362, 41, 0, 2, 9, 0, 6, 196643, 0, 655362, 131111, 0, 655362, 46, 0, 2, 42, 0, 2, 196648, 0, 1048578, 45, 0, 2, 37, 0, 2, 66, 0, 1441794, 67, 0, 1441794, 8, 0, 6, 38, 0, 2, 131108, 0, 655362, 34, 0, 2, 7, 0, 6, 131110, 0, 655362, 131109, 0, 655362, 196646, 0, 655362, 6, 0, 6, 4, 0, 6, 131107, 0, 655362, 262182, 0, 655362, 47, 0, 2, 3, 0, 6, 69, 0, 1441794, 262183, 0, 1048578, 25, 0, 2, 2, 0, 6, 16, 0, 6, 62, 0, 1441794, 20, 0, 6, 26, 0, 2, 15, 0, 6, 18, 0, 6, 19, 0, 6, 27, 0, 2, 43, 0, 2, 196647, 0, 1048578, 44, 0, 2, 1, 0, 6, 0, 0, 6, 39, 0, 2, 70, 0, 1441794, 40, 0, 2, 5, 0, 6, 48, 0, 2, 65551, 3, 4, 71, 4, 2, 72, 4, 2, 73, 4, 2, 74, 4, 2, 75, 4, 2, 76, 4, 2, 77, 4, 2, 78, 4, 2, 79, 4, 2, 80, 4, 2, 71, 0, 2, 71, 1, 2, 71, 2, 2, 71, 3, 2, 72, 0, 2, 72, 1, 2, 72, 2, 2, 72, 3, 2, 73, 0, 2, 73, 1, 2, 73, 2, 2, 73, 3, 2, 74, 0, 2, 74, 1, 2, 74, 2, 2, 74, 3, 2, 75, 0, 2, 75, 1, 2, 75, 2, 2, 75, 3, 2, 76, 0, 2, 76, 1, 2, 76, 2, 2, 76, 3, 2, 77, 0, 2, 77, 1, 2, 77, 2, 2, 77, 3, 2, 78, 0, 2, 78, 1, 2, 78, 2, 2, 78, 3, 2, 79, 0, 2, 79, 1, 2, 79, 2, 2, 79, 3, 2, 80, 0, 2, 80, 1, 2, 80, 2, 2, 80, 3, 2, 196641, 2, 655364, 196640, 2, 655363, 196639, 2, 655363, 196616, 3, 6, 196617, 3, 6, 196618, 3, 6, 196619, 3, 6, 196620, 3, 1441798, 65540, 4, 1048578, 262194, 1, 2, 262194, 2, 2, 262194, 3, 2, 61, 2, 1441794, 62, 2, 1441794, 49, 0, 2, 49, 1, 2, 49, 2, 2, 49, 3, 2, 50, 0, 2, 50, 1, 2, 50, 2, 2, 50, 3, 2, 51, 0, 1441794, 51, 1, 1441794, 51, 2, 1441794, 51, 3, 1441794, 52, 0, 1441794, 52, 1, 1441794, 52, 2, 1441794, 52, 3, 1441794, 53, 0, 1441794, 53, 1, 1441794, 53, 2, 1441794, 53, 3, 1441794, 54, 0, 1441794, 54, 1, 1441794, 54, 2, 1441794, 54, 3, 1441794, 55, 0, 1441794, 55, 1, 1441794, 55, 2, 1441794, 55, 3, 1441794, 56, 0, 1441794, 56, 1, 1441794, 56, 2, 1441794, 56, 3, 1441794, 57, 0, 1441794, 57, 1, 1441794, 57, 2, 1441794, 57, 3, 1441794, 58, 0, 1441794, 58, 1, 1441794, 58, 2, 1441794, 58, 3, 1441794, 59, 0, 1441794, 59, 1, 1441794, 59, 2, 1441794, 59, 3, 1441794, 60, 0, 1441794, 60, 1, 1441794, 60, 2, 1441794, 60, 3, 1441794, 65586, 0, 2, 65586, 1, 2, 65586, 2, 2, 65587, 1, 2, 65587, 2, 2, 65587, 3, 2, 65588, 1, 2, 65588, 2, 2, 65588, 3, 2, 65589, 1, 2, 65589, 2, 2, 65589, 3, 2, 65590, 1, 2, 65590, 2, 2, 65590, 3, 2, 65591, 1, 2, 65591, 2, 2, 65591, 3, 2, 131123, 1, 2, 131123, 2, 2, 131123, 3, 2, 131124, 1, 2, 131124, 2, 2, 131124, 3, 2, 131125, 1, 2, 131125, 2, 2, 131125, 3, 2, 131126, 1, 2, 131126, 2, 2, 131126, 3, 2, 131127, 1, 2, 131127, 2, 2, 131127, 3, 2, 131128, 1, 2, 131128, 2, 2, 131128, 3, 2, 65587, 0, 2, 65588, 0, 2, 65589, 0, 2, 65590, 0, 2, 65591, 0, 2, 131122, 0, 655362, 131123, 0, 2, 131124, 0, 2, 131125, 0, 2, 131126, 0, 2, 131127, 0, 2, 131128, 0, 2, 196658, 0, 655362, 196659, 0, 2, 196659, 1, 2, 196659, 2, 2, 196660, 0, 2, 196660, 1, 2, 196660, 2, 2, 196661, 0, 2, 196661, 1, 2, 196661, 2, 2, 196662, 0, 2, 196662, 1, 2, 196662, 2, 2, 196663, 0, 2, 196663, 1, 2, 196663, 2, 2, 262194, 0, 655362, 65592, 0, 2, 65592, 1, 2, 65592, 2, 2, 65592, 3, 2, 327720, 0, 655362, 327720, 1, 655362, 327721, 0, 655362, 327721, 1, 655362, 327722, 0, 655362, 327722, 1, 655362, 327723, 0, 655362, 327723, 1, 655362, 327724, 0, 655362, 327724, 1, 655362, 327725, 0, 655362, 327725, 1, 655362, 327726, 0, 655362, 327726, 1, 655362, 327729, 0, 655362, 327729, 1, 655362, 327730, 0, 655362, 327730, 1, 655362, 327730, 2, 655362, 327730, 3, 655362, 65577, 0, 655362, 65578, 0, 655362, 65579, 0, 655362, 65580, 0, 655362, 65581, 0, 655362, 65582, 0, 655362, 65583, 0, 655362, 65584, 0, 655362, 65585, 0, 655362, 131113, 0, 655362, 131114, 0, 655362, 131115, 0, 655362, 131116, 0, 655362, 131117, 0, 655362, 131118, 0, 655362, 131119, 0, 655362, 131120, 0, 655362, 131121, 0, 655362, 196649, 0, 655362, 196650, 0, 655362, 196651, 0, 655362, 196652, 0, 655362, 196653, 0, 655362, 196654, 0, 655362, 196655, 0, 655362, 196656, 0, 655362, 196657, 0, 655362, 262185, 0, 655362, 262186, 0, 655362, 262187, 0, 655362, 262188, 0, 655362, 262189, 0, 655362, 262190, 0, 655362, 262191, 0, 655362, 262192, 0, 655362, 262193, 0, 655362, 327720, 2, 655362, 327720, 3, 655362, 327720, 4, 655362, 327721, 2, 655362, 327722, 2, 655362, 327723, 2, 655362, 65593, 0, 655362, 65594, 0, 655362, 65595, 0, 655362, 65596, 0, 655362, 65597, 0, 655362, 65598, 0, 655362, 65599, 0, 655362, 65600, 0, 655362, 65601, 0, 655362, 65602, 0, 655362, 65603, 0, 655362, 65604, 0, 655362, 65605, 0, 655362, 65606, 0, 655362, 65607, 0, 655362, 131129, 0, 655362, 131130, 0, 655362, 131131, 0, 655362, 131132, 0, 655362, 131133, 0, 655362, 131134, 0, 655362, 131135, 0, 655362, 131136, 0, 655362, 131137, 0, 655362, 131138, 0, 655362, 131139, 0, 655362, 131140, 0, 655362, 131141, 0, 655362, 131142, 0, 655362, 131143, 0, 655362, 196664, 0, 655362, 196665, 0, 655362, 196666, 0, 655362, 196667, 0, 655362, 196668, 0, 655362, 196669, 0, 655362, 196670, 0, 655362, 196671, 0, 655362, 196672, 0, 655362, 196676, 0, 655362, 196677, 0, 655362, 196678, 0, 655362, 196664, 1, 655362, 196664, 2, 655362, 196664, 3, 655362, 196659, 3, 655362, 196660, 3, 655362, 196661, 3, 655362, 196662, 3, 655362, 196663, 3, 655362, 65604, 1, 655362, 65604, 2, 655362, 65604, 3, 655362, 65604, 4, 655362, 65605, 1, 655362, 65605, 2, 655362, 65605, 3, 655362, 65605, 4, 655362, 65606, 1, 655362, 65606, 2, 655362, 65606, 3, 655362, 65606, 4, 655362, 131140, 1, 655362, 131140, 2, 655362, 131140, 3, 655362, 131140, 4, 655362, 131141, 1, 655362, 131141, 2, 655362, 131141, 3, 655362, 131141, 4, 655362, 131142, 1, 655362, 131142, 2, 655362, 131142, 3, 655362, 131142, 4, 655362, 196676, 1, 655362, 196676, 2, 655362, 196676, 3, 655362, 196677, 1, 655362, 196677, 2, 655362, 196677, 3, 655362, 196678, 1, 655362, 196678, 2, 655362, 196678, 3, 655362, 262212, 0, 655362, 262212, 1, 655362, 262212, 2, 655362, 262212, 3, 655362, 262213, 0, 655362, 262213, 1, 655362, 262213, 2, 655362, 262213, 3, 655362, 262214, 0, 655362, 262214, 1, 655362, 262214, 2, 655362, 262214, 3, 655362, 262195, 0, 655362, 262196, 0, 655362, 262197, 0, 655362, 262198, 0, 655362, 262199, 0, 655362, 262200, 0, 655362, 262201, 0, 655362, 262202, 0, 655362, 262203, 0, 655362, 262204, 0, 655362, 262205, 0, 655362, 262206, 0, 655362, 262207, 0, 655362, 262208, 0, 655362, 262209, 0, 655362, 262210, 0, 655362, 262211, 0, 655362, 327750, 0, 655362, 327750, 1, 655362, 327750, 2, 655362, 327750, 3, 2, 327751, 0, 655362, 327751, 1, 655362, 327751, 2, 655362, 327751, 3, 2, 327751, 4, 2, 327752, 0, 655362, 327752, 1, 655362, 327752, 2, 655362, 327752, 3, 655362, 327752, 4, 655362, 327753, 0, 655362, 327753, 1, 655362, 327753, 2, 655362, 327753, 3, 655362, 327753, 4, 655362, 327754, 0, 655362, 327754, 1, 655362, 327754, 2, 655362, 327754, 3, 655362, 327754, 4, 655362, 327755, 0, 655362, 327755, 1, 655362, 327755, 2, 655362, 327755, 3, 655362, 327755, 4, 655362, 327756, 0, 655362, 327756, 1, 655362, 327756, 2, 655362, 327756, 3, 655362, 327756, 4, 655362, 327757, 0, 655362, 327757, 1, 655362, 327757, 2, 655362, 327757, 3, 655362, 327757, 4, 655362, 327758, 0, 655362, 327758, 1, 655362, 327758, 2, 655362, 327758, 3, 655362, 327758, 4, 655362, 327759, 0, 655362, 327759, 1, 655362, 327759, 2, 655362, 327759, 3, 655362, 327759, 4, 655362, 327760, 0, 655362, 327760, 1, 655362, 327760, 2, 655362, 327760, 3, 655362, 327760, 4, 655362, 65601, 1, 655362, 65601, 2, 655362, 65601, 3, 655362, 65601, 4, 655362, 65602, 1, 655362, 65602, 2, 655362, 65602, 3, 655362, 65602, 4, 655362, 65603, 1, 655362, 65603, 2, 655362, 65603, 3, 655362, 65603, 4, 655362, 131137, 1, 655362, 131137, 2, 655362, 131137, 3, 655362, 131137, 4, 655362, 131138, 1, 655362, 131138, 2, 655362, 131138, 3, 655362, 131138, 4, 655362, 131139, 1, 655362, 131139, 2, 655362, 131139, 3, 655362, 131139, 4, 655362, 196673, 0, 655362, 196674, 0, 655362, 196675, 0, 655362, 65593, 1, 655362, 65593, 2, 655362, 65593, 3, 655362, 65594, 1, 655362, 65594, 2, 655362, 65594, 3, 655362, 65595, 1, 655362, 65595, 2, 655362, 65595, 3, 655362, 131129, 1, 655362, 131129, 2, 655362, 131129, 3, 655362, 131130, 1, 655362, 131130, 2, 655362, 131130, 3, 655362, 131131, 1, 655362, 131131, 2, 655362, 131131, 3, 655362, 196674, 1, 655362, 196674, 2, 655362, 196675, 1, 655362, 196675, 2, 655362, 262210, 1, 655362, 262210, 2, 655362, 262211, 1, 655362, 262211, 2, 655362, 327748, 0, 655362, 327748, 1, 655362, 327748, 2, 655362, 327748, 3, 655362, 327749, 0, 655362, 327749, 1, 655362, 327749, 2, 655362, 327749, 3, 655362, 327746, 0, 655362, 327746, 1, 655362, 327746, 2, 655362, 327747, 0, 655362, 327747, 1, 655362, 327747, 2, 655362, 327731, 0, 655362, 327732, 0, 655362, 327733, 0, 655362, 327734, 0, 655362, 327735, 0, 655362, 327736, 0, 655362, 327737, 0, 655362, 327738, 0, 655362, 327739, 0, 655362, 327740, 0, 655362, 327741, 0, 655362, 327742, 0, 655362, 327743, 0, 655362, 327744, 0, 655362, 327745, 0, 655362, 196673, 1, 655362, 196673, 2, 655362, 262209, 1, 655362, 262209, 2, 655362, 327745, 1, 655362, 327745, 2, 655362, 196675, 3, 655362, 262211, 3, 655362, 327747, 3, 655362, 196665, 1, 655362, 196666, 1, 655362, 196667, 1, 655362, 262195, 1, 655362, 262196, 1, 655362, 262197, 1, 655362, 262198, 1, 655362, 262199, 1, 655362, 262200, 1, 655362, 262201, 1, 655362, 262202, 1, 655362, 262203, 1, 655362, 327739, 1, 655362, 327740, 1, 655362, 327741, 1, 655362, 327742, 1, 655362, 327743, 1, 655362, 327744, 1, 655362, 65596, 1, 655362, 65597, 1, 655362, 65598, 1, 655362, 65599, 1, 655362, 65600, 1, 655362, 131132, 1, 655362, 131133, 1, 655362, 131134, 1, 655362, 131135, 1, 655362, 131136, 1, 655362, 196668, 1, 655362, 196669, 1, 655362, 196670, 1, 655362, 196671, 1, 655362, 196672, 1, 655362, 262204, 1, 655362, 262205, 1, 655362, 262206, 1, 655362, 262207, 1, 655362, 262208, 1, 655362, 262195, 2, 655362, 262195, 3, 655362, 262196, 2, 655362, 262196, 3, 655362, 262197, 2, 655362, 262197, 3, 655362, 262198, 2, 655362, 262198, 3, 655362, 262199, 2, 655362, 262199, 3, 655362, 262200, 2, 655362, 262200, 3, 655362, 327735, 1, 655362, 327736, 1, 655362, 327737, 1, 655362, 327738, 1, 655362, 327734, 1, 2, 327733, 1, 2, 393266, 0, 2, 393267, 0, 2, 393268, 0, 2, 393269, 0, 2, 393270, 0, 2, 393271, 0, 2, 393272, 0, 2, 393273, 0, 2, 393274, 0, 2, 393275, 0, 2, 393276, 0, 2, 393277, 0, 2, 393278, 0, 2, 393279, 0, 2, 393280, 0, 2, 393281, 0, 2, 393282, 0, 2, 393283, 0, 2, 393284, 0, 2, 393285, 0, 2, 393286, 0, 2, 327731, 1, 2, 327731, 2, 2, 327731, 3, 2, 327732, 1, 2, 327732, 2, 2, 327732, 3, 2, 327733, 2, 655365, 327734, 2, 655364, 327727, 65531, 655362, 327727, 65532, 655362, 327727, 65533, 655362, 327727, 65534, 655362, 327728, 65531, 655362, 327728, 65532, 655362, 327728, 65533, 655362, 327728, 65534, 655362, 327729, 65531, 655362, 327729, 65532, 655362, 327729, 65533, 655362, 327729, 65534, 655362, 327729, 65535, 655362, 327730, 65531, 655362, 327730, 65532, 655362, 327730, 65533, 655362, 327730, 65534, 655362, 327730, 65535, 655362, 327731, 65531, 655362, 327731, 65532, 655362, 327731, 65533, 655362, 327731, 65534, 655362, 327731, 65535, 655362, 327732, 65531, 655362, 327732, 65532, 655362, 327732, 65533, 655362, 327732, 65534, 655362, 327732, 65535, 655362, 327733, 65531, 655362, 327733, 65532, 655362, 327733, 65533, 655362, 327733, 65534, 655362, 327733, 65535, 655362, 327734, 65531, 655362, 327734, 65532, 655362, 327734, 65533, 655362, 327734, 65534, 655362, 327734, 65535, 655362, 327735, 65531, 655362, 327735, 65532, 655362, 327735, 65533, 655362, 327735, 65534, 655362, 327735, 65535, 655362, 327736, 65531, 655362, 327736, 65532, 655362, 327736, 65533, 655362, 327736, 65534, 655362, 327736, 65535, 655362, 327737, 65531, 655362, 327737, 65532, 655362, 327737, 65533, 655362, 327737, 65534, 655362, 327737, 65535, 655362, 327738, 65531, 655362, 327738, 65532, 655362, 327738, 65533, 655362, 327738, 65534, 655362, 327738, 65535, 655362, 327739, 65531, 655362, 327739, 65532, 655362, 327739, 65533, 655362, 327739, 65534, 655362, 327739, 65535, 655362, 327740, 65531, 655362, 327740, 65532, 655362, 327740, 65533, 655362, 327740, 65534, 655362, 327740, 65535, 655362, 393266, 65532, 655362, 393266, 65531, 655362, 393265, 65531, 655362, 458801, 65531, 655362, 458802, 65531, 655362, 458802, 65532, 655362, 458802, 0, 655362, 393267, 65531, 2, 393268, 65531, 2, 393269, 65531, 2, 393270, 65531, 2, 393271, 65531, 2, 393272, 65531, 2, 393273, 65531, 2, 393274, 65531, 2, 393275, 65531, 2, 393276, 65531, 2, 393276, 65532, 2, 393276, 65533, 2, 393276, 65534, 2, 393276, 65535, 2, 458803, 65531, 2, 458804, 65531, 2, 458805, 65531, 2, 458806, 65531, 2, 458807, 65531, 2, 458808, 65531, 2, 458809, 65531, 2, 458810, 65531, 2, 458811, 65531, 2, 458812, 65531, 2, 458812, 65532, 2, 458812, 65533, 2, 458812, 65534, 2, 458812, 65535, 2, 458803, 0, 2, 458804, 0, 2, 458805, 0, 2, 458806, 0, 2, 458807, 0, 2, 458808, 0, 2, 458809, 0, 2, 458810, 0, 2, 458811, 0, 2, 458812, 0, 2, 458813, 0, 2, 458814, 0, 2, 458815, 0, 2, 458816, 0, 2, 458817, 0, 2, 458818, 0, 2, 458819, 0, 2, 458820, 0, 2, 458821, 0, 2, 458822, 0, 2, 524338, 0, 2, 524339, 0, 2, 524340, 0, 2, 524341, 0, 2, 524342, 0, 2, 524343, 0, 2, 524344, 0, 2, 524345, 0, 2, 524346, 0, 2, 524347, 0, 2, 524348, 0, 2, 524349, 0, 2, 524350, 0, 2, 524351, 0, 2, 524352, 0, 2, 524353, 0, 2, 524354, 0, 2, 524355, 0, 2, 524356, 0, 2, 524357, 0, 2, 524358, 0, 2, 589874, 0, 2, 589875, 0, 2, 589876, 0, 2, 589877, 0, 2, 589878, 0, 2, 589879, 0, 2, 589880, 0, 2, 589881, 0, 2, 589882, 0, 2, 589883, 0, 2, 589884, 0, 2, 589885, 0, 2, 589886, 0, 2, 589887, 0, 2, 589888, 0, 2, 589889, 0, 2, 589890, 0, 2, 589891, 0, 2, 589892, 0, 2, 589893, 0, 2, 589894, 0, 2, 393285, 1, 2, 393285, 2, 2, 393286, 1, 2, 393286, 2, 2, 458821, 2, 2, 458822, 2, 2, 458821, 1, 2, 458822, 1, 2, 393287, 0, 2, 393287, 1, 2, 393287, 2, 2, 393288, 0, 2, 393288, 1, 2, 393288, 2, 2, 458823, 0, 2, 458823, 1, 2, 458823, 2, 2, 458824, 0, 2, 458824, 1, 2, 458824, 2, 2, 393266, 65533, 2, 393266, 65534, 2, 458802, 65533, 2, 458802, 65534, 2, 524338, 65531, 2, 524338, 65532, 2, 524338, 65533, 2, 524338, 65534, 2, 327728, 7, 2, 327728, 8, 2, 327728, 9, 2, 327728, 10, 2, 327729, 7, 2, 327729, 8, 2, 327729, 9, 2, 327729, 10, 2, 327727, 7, 2, 327727, 8, 2, 327727, 9, 2, 327727, 10, 2, 327730, 5, 2, 327730, 6, 2, 327730, 7, 2, 327730, 8, 2, 327730, 9, 2, 327730, 10, 2, 393266, 10, 2, 393265, 10, 2, 458801, 10, 2, 458802, 10, 2, 524338, 10, 2, 589874, 10, 2, 524337, 10, 2, 589873, 10, 2, 524337, 65531, 2, 589874, 65531, 2, 589874, 65532, 2, 589874, 65533, 2, 589874, 65534, 2, 589873, 65531, 2, 327730, 4, 2, 393265, 9, 655362, 393266, 3, 655362, 393266, 4, 655362, 393266, 5, 655362, 393266, 6, 655362, 393266, 7, 655362, 393266, 8, 655362, 393266, 9, 655362, 458801, 9, 655362, 458802, 3, 655362, 458802, 4, 655362, 458802, 5, 655362, 458802, 6, 655362, 458802, 7, 655362, 458802, 8, 655362, 458802, 9, 655362, 15, 4, 655362, 16, 4, 655362, 17, 4, 655362, 18, 4, 655362, 19, 4, 655362, 20, 4, 655362, 21, 4, 655362, 65554, 4, 655362, 65555, 4, 655362, 65556, 4, 655362, 65557, 4, 655362, 65551, 4, 4, 65552, 4, 3, 65553, 4, 3, 40, 5, 2, 41, 5, 2, 42, 5, 2, 43, 5, 2, 44, 5, 2, 45, 5, 2, 46, 5, 2, 47, 5, 2, 48, 5, 2, 49, 5, 2, 50, 5, 2, 51, 5, 2, 52, 5, 2, 53, 5, 2, 54, 5, 2, 55, 5, 2, 56, 5, 2, 57, 5, 2, 58, 5, 2, 59, 5, 2, 60, 5, 2, 61, 5, 2, 62, 5, 2, 63, 5, 2, 64, 5, 2, 65, 5, 2, 66, 5, 2, 67, 5, 2, 68, 5, 2, 69, 5, 2, 70, 5, 2, 71, 5, 2, 72, 5, 2, 73, 5, 2, 74, 5, 2, 75, 5, 2, 76, 5, 2, 77, 5, 2, 78, 5, 2, 79, 5, 2, 80, 5, 2, 327750, 5, 2, 327751, 5, 2, 327752, 5, 2, 327753, 5, 2, 327754, 5, 2, 327755, 5, 2, 327756, 5, 2, 327757, 5, 2, 327758, 5, 2, 327759, 5, 2, 327760, 5, 2, 196678, 5, 2, 262214, 5, 2, 524358, 1, 1441794, 589894, 1, 1441794, 393286, 3, 1441794, 393286, 5, 1441794, 458822, 3, 1441794, 458822, 5, 1441794, 524358, 3, 1441794, 524358, 5, 1441794, 589894, 3, 1441794, 589894, 5, 1441794, 131142, 5, 2, 65606, 5, 1441794, 524338, 3, 1441794, 524338, 4, 1441794, 524338, 5, 1441794, 524338, 6, 1441794, 524338, 7, 1441794, 524338, 8, 1441794, 524338, 9, 1441794, 589874, 3, 1441794, 589874, 4, 1441794, 589874, 5, 1441794, 589874, 6, 1441794, 589874, 7, 1441794, 589874, 8, 1441794, 589874, 9, 1441794, 393266, 2, 1441794, 458802, 2, 1441794, 524338, 2, 1441794, 589874, 2, 1441794, 13, 5, 1441794, 14, 5, 1441794, 15, 5, 1441794, 16, 5, 1441794, 17, 5, 1441794, 18, 5, 1441794, 19, 5, 1441794, 20, 5, 1441794, 21, 5, 1441794, 22, 5, 1441794, 23, 5, 1441794, 24, 5, 1441794, 25, 5, 1441794, 26, 5, 1441794, 27, 5, 1441794, 28, 5, 1441794, 29, 5, 1441794, 30, 5, 1441794, 31, 5, 1441794, 32, 5, 1441794, 33, 5, 1441794, 34, 5, 1441794, 35, 5, 1441794, 36, 5, 1441794, 37, 5, 1441794, 38, 5, 1441794, 39, 5, 1441794, 327727, 65535, 655362, 327727, 0, 655362, 327727, 1, 655362, 327728, 65535, 655362, 327728, 0, 655362, 327728, 1, 655362, 327727, 2, 655362, 327727, 3, 2, 327727, 4, 2, 327727, 6, 2, 327728, 2, 655362, 327728, 3, 2, 327728, 4, 2, 327728, 6, 2, 327729, 2, 655362, 327729, 3, 2, 327729, 4, 2, 327729, 5, 2, 327729, 6, 2, 327727, 5, 2, 327728, 5, 2, 393263, 65531, 655362, 393263, 65532, 655362, 393263, 65533, 655362, 393263, 65534, 655362, 393263, 65535, 655362, 393263, 0, 2, 393263, 1, 2, 393263, 2, 2, 393263, 3, 2, 393263, 4, 2, 393263, 5, 2, 393263, 6, 2, 393263, 7, 2, 393263, 8, 2, 393263, 9, 2, 393263, 10, 2, 393264, 65531, 655362, 393264, 10, 2, 458799, 65531, 655362, 458799, 65532, 655362, 458799, 65533, 655362, 458799, 65534, 655362, 458799, 65535, 655362, 458799, 0, 2, 458799, 1, 2, 458799, 2, 2, 458799, 3, 2, 458799, 4, 2, 458799, 5, 2, 458799, 6, 2, 458799, 7, 2, 458799, 8, 2, 458799, 9, 2, 458799, 10, 2, 458800, 65531, 655362, 458800, 10, 2, 524335, 65531, 2, 524335, 65532, 2, 524335, 65533, 2, 524335, 65534, 2, 524335, 65535, 2, 524335, 0, 2, 524335, 1, 2, 524335, 2, 2, 524335, 3, 2, 524335, 4, 2, 524335, 5, 2, 524335, 6, 2, 524335, 7, 2, 524335, 8, 2, 524335, 9, 2, 524335, 10, 2, 524336, 65531, 2, 524336, 10, 2, 0, 5, 1441794, 1, 5, 1441794, 2, 5, 1441794, 3, 5, 1441794, 4, 5, 1441794, 5, 5, 1441794, 6, 5, 1441794, 7, 5, 1441794, 8, 5, 1441794, 9, 5, 1441794, 10, 5, 1441794, 11, 5, 1441794, 12, 5, 1441794, 589871, 65531, 2, 589871, 65532, 2, 589871, 65533, 2, 589871, 65534, 2, 589871, 65535, 2, 589871, 0, 2, 589871, 1, 2, 589871, 2, 2, 589871, 3, 2, 589871, 4, 2, 589871, 5, 2, 589871, 6, 2, 589871, 7, 2, 589871, 8, 2, 589871, 9, 2, 589871, 10, 2, 589872, 65531, 2, 589872, 10, 2, 393266, 65535, 1441794) } script = ExtResource("3_gavly") metadata/_custom_type_script = ExtResource("3_gavly") -metadata/_editor_floor_ = Vector3(9, 6, 5) +metadata/_editor_floor_ = Vector3(9, 5, 5) [node name="LevelGridSub" type="GridMap" parent="."] mesh_library = ExtResource("2_8ku8g") diff --git a/script/level/level_instance.gd b/script/level/level_instance.gd index e21d475..34bcc89 100644 --- a/script/level/level_instance.gd +++ b/script/level/level_instance.gd @@ -133,8 +133,8 @@ func set_level_range_visible(value: bool) -> void: func set_focus() -> void: var level_range: CSGBox3D = $LevelRange as CSGBox3D var level_size: Vector3 = level_range.size - var focus_min: Vector3 = get_global_position() - Vector3(0.640001, 0.640001, 0.640001) - var focus_max: Vector3 = get_global_position() + level_size + Vector3(0.640001, 0.640001, 0.640001) + var focus_min: Vector3 = get_global_position() + var focus_max: Vector3 = get_global_position() + level_size grid_block_material.set_shader_parameter("focus_min", focus_min) grid_block_material.set_shader_parameter("focus_max", focus_max) @@ -221,7 +221,6 @@ func init_level_main() -> void: # 左面黑块 var black_y_max_left: int = id_max.y - 1 for z in range(id_min.z + 1, id_max.z + 1): - var pos: Vector3i = Vector3i(id_min.x, id_min.y, z) var has_link = false var mark_black_list_check: Array[Vector3i] = [] for y in range(id_min.y - 1, black_y_max_left): @@ -242,7 +241,6 @@ func init_level_main() -> void: # 右边面黑块 var black_y_max_right: int = id_max.y - 1 for z in range(id_min.z + 1, id_max.z + 1): - var pos: Vector3i = Vector3i(id_max.x, id_min.y, z) var has_link = false var mark_black_list_check: Array[Vector3i] = [] for y in range(id_min.y - 1, black_y_max_right): @@ -275,16 +273,21 @@ func init_level_main() -> void: for x in range(id_min.x, id_max.x + 1): for z in range(id_min.z, id_max.z + 1): var pos: Vector3i = Vector3i(x, id_max.y, z) - add_grid_main_cache_cell(level_main, pos) + var pos_up: Vector3i = Vector3i(x, id_max.y + 1, z) var pos_down: Vector3i = Vector3i(x, id_max.y - 1, z) - if level_main.get_cell_item(pos_down) == GridMap.INVALID_CELL_ITEM or pos_down in mark_white_list: - var pos_up: Vector3i = Vector3i(x, id_max.y + 1, z) + var is_link = not check_grid(level_main, pos) and not check_grid(level_main, pos_up) and not check_grid(level_main, pos_down) + if is_link and not pos_down in mark_white_list: var float_pos_check: Vector3 = Util.get_level_float_pos2(pos_up) + Vector3(0.64, 0, 0.64) - if Global.level_mgr.get_level_by_pos(float_pos_check) and not check_grid(level_main, pos_up): + if Global.level_mgr.get_level_by_pos(float_pos_check): continue + add_grid_main_cache_cell(level_main, pos) + if pos_down in mark_white_list: mark_white_list.append(pos) else: - mark_black_list.append(pos) + if check_grid(level_main, pos_down): + mark_black_list.append(pos) + else: + mark_white_list.append(pos) func check_grid(level_main: GridMap, pos: Vector3i) -> bool: @@ -303,17 +306,9 @@ func add_grid_main_cache_cell(level_main: GridMap, pos: Vector3i) -> void: grid_main_cache_cells.append(cache_data) -func set_replace(is_active: bool, last_grid_main_cache_cells: Array[GridMainCacheCellData] = []) -> void: +func set_replace(is_active: bool) -> void: var level_main: GridMap = %LevelGridMain as GridMap if is_active: - var id_min: Vector3i = Util.get_level_grid_pos2(pos_min()) - var id_max: Vector3i = Util.get_level_grid_pos2(pos_max()) - for cache_data in last_grid_main_cache_cells: - if cache_data.pos.x < id_min.x or cache_data.pos.z < id_min.z or cache_data.pos.x > id_max.x or cache_data.pos.z > id_max.z: - continue - level_main.set_cell_item(cache_data.pos, cache_data.id, cache_data.orientation) - for cache_data in grid_main_cache_cells: - level_main.set_cell_item(cache_data.pos, GridMap.INVALID_CELL_ITEM) for pos in mark_white_list: level_main.set_cell_item(pos, 0) for pos in mark_black_list: @@ -343,10 +338,6 @@ func get_level_active_spots() -> Array[LevelActiveSpot]: return level_active_spots -func get_grid_main_cache_cells() -> Array[GridMainCacheCellData]: - return grid_main_cache_cells - - func pos_min() -> Vector3: return get_global_position() diff --git a/script/manager/level_manager.gd b/script/manager/level_manager.gd index f2c1fc4..17b6848 100644 --- a/script/manager/level_manager.gd +++ b/script/manager/level_manager.gd @@ -13,7 +13,7 @@ var level_doors: Array[LevelDoor] var is_level_active: bool var enemy_count: int # 由关卡生成的怪物数量 var current_enmey: Array[int] # 当前存活怪物id -var replace_cache: Array[LevelInstance] +var replace_cache: LevelInstance func _ready(): @@ -120,16 +120,10 @@ func enter_level() -> void: level_enemy_cfgs = cur_level_instance.get_enemy_cfgs() enemy_count = 0 #更新cell - replace_cache.append(cur_level_instance) - if len(replace_cache) >= 3: - var replace_level_instance: LevelInstance = replace_cache.pop_at(0) - if replace_level_instance != cur_level_instance: - replace_level_instance.set_replace(false) - if len(replace_cache) >= 2: - var replace_level_instance: LevelInstance = replace_cache[0] - cur_level_instance.set_replace(true, replace_level_instance.get_grid_main_cache_cells()) - else: - cur_level_instance.set_replace(true) + if replace_cache: + replace_cache.set_replace(false) + cur_level_instance.set_replace(true) + replace_cache = cur_level_instance SignalManager.level_size_change.emit(cur_level_instance.get_level_size()) SignalManager.level_pos_change.emit(cur_level_instance.get_level_pos())