From 9de1b41acd8be237df1350894c7d16dcbae1d523 Mon Sep 17 00:00:00 2001 From: HumanoidSandvichDispenser Date: Tue, 15 Aug 2023 19:52:15 -0700 Subject: [PATCH] character now teleports to specified marker when switching maps --- BoundingBoxes/ConnectorBox.cs | 9 +------ Entities/ArenaEntrance.tscn | 6 ++--- Scenes/BaseMap.tscn | 8 ++---- Scenes/Map.cs | 3 +++ Scenes/Maps/Arena.tscn | 29 +++++++------------- Scenes/Maps/ArenaExterior.tscn | 49 +++++++++++++++++----------------- UI/LocationDisplay.cs | 1 + Utils/World.cs | 29 ++++++-------------- 8 files changed, 52 insertions(+), 82 deletions(-) diff --git a/BoundingBoxes/ConnectorBox.cs b/BoundingBoxes/ConnectorBox.cs index b10b5b4..fa962af 100644 --- a/BoundingBoxes/ConnectorBox.cs +++ b/BoundingBoxes/ConnectorBox.cs @@ -29,20 +29,13 @@ public partial class ConnectorBox : Area2D [Export] public InteractionTrigger InteractionTrigger { get; set; } - [Export] - public CollisionShape2D Collision { get; set; } - private Player _player = null; public override void _Ready() { - if (Collision is null) - { - throw new NullReferenceException("Collision not specified"); - } - BodyEntered += (Node2D body) => { + GD.Print(body.Name + " entered"); if (body is Player && InteractionTrigger is null) { OnInteraction(); diff --git a/Entities/ArenaEntrance.tscn b/Entities/ArenaEntrance.tscn index 7172a57..f94f918 100644 --- a/Entities/ArenaEntrance.tscn +++ b/Entities/ArenaEntrance.tscn @@ -29,13 +29,11 @@ offset_bottom = -28.0 [node name="Label" parent="InteractionTrigger/Popup" index="0"] text = "Enter" -[node name="Area2D" type="Area2D" parent="." node_paths=PackedStringArray("InteractionTrigger", "Collision")] +[node name="Area2D" type="Area2D" parent="." node_paths=PackedStringArray("InteractionTrigger")] script = ExtResource("3_4rsih") ToArea = "res://Scenes/Maps/Arena.tscn" -ToConnector = "entrance" -Identifier = "arena_entrance" +ToConnector = "Entrance" InteractionTrigger = NodePath("../InteractionTrigger") -Collision = NodePath("CollisionShape2D") [node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"] shape = SubResource("RectangleShape2D_djn8q") diff --git a/Scenes/BaseMap.tscn b/Scenes/BaseMap.tscn index 386464d..603d2e4 100644 --- a/Scenes/BaseMap.tscn +++ b/Scenes/BaseMap.tscn @@ -1832,7 +1832,7 @@ background_mode = 3 glow_enabled = true glow_hdr_threshold = 1.4 -[node name="TileMap" type="TileMap" node_paths=PackedStringArray("Entities", "Areas", "Spawners")] +[node name="TileMap" type="TileMap" node_paths=PackedStringArray("Entities", "Areas", "Spawners", "Markers")] y_sort_enabled = true texture_filter = 3 tile_set = SubResource("TileSet_18c7j") @@ -1878,11 +1878,7 @@ script = ExtResource("2_4m0a1") Entities = NodePath("Entities") Areas = NodePath("Areas") Spawners = NodePath("Spawners") -CameraLowerBound = null -CameraUpperBound = null -ClearColor = null -AreaName = null -MapName = null +Markers = NodePath("Markers") [node name="CanvasModulate" type="CanvasModulate" parent="."] diff --git a/Scenes/Map.cs b/Scenes/Map.cs index 908f0c1..8a5048f 100644 --- a/Scenes/Map.cs +++ b/Scenes/Map.cs @@ -14,6 +14,9 @@ public partial class Map : TileMap [Export] public Node2D Spawners { get; set; } + [Export] + public Node2D Markers { get; set; } + [Export] public Vector2 CameraLowerBound { get; set; } diff --git a/Scenes/Maps/Arena.tscn b/Scenes/Maps/Arena.tscn index 17a6a79..8d8c02b 100644 --- a/Scenes/Maps/Arena.tscn +++ b/Scenes/Maps/Arena.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=14 format=3 uid="uid://b2x17su05ou5w"] +[gd_scene load_steps=13 format=3 uid="uid://b2x17su05ou5w"] [ext_resource type="PackedScene" uid="uid://clwv2owvk6abe" path="res://Scenes/BaseMap.tscn" id="1_ifiic"] [ext_resource type="TileSet" uid="uid://l61kbx31ug4p" path="res://Scenes/Maps/ArenaTileset.tres" id="2_x0mh7"] @@ -8,10 +8,9 @@ [ext_resource type="PackedScene" uid="uid://ceadk7pam7vab" path="res://Entities/TorchLamp.tscn" id="6_jy3pc"] [ext_resource type="Texture2D" uid="uid://d1ukste16yq6v" path="res://Assets/Sprites/Particles/player-light.png" id="7_y7j0e"] [ext_resource type="AudioStream" uid="uid://dy4qjflo1k28b" path="res://Assets/Sounds/calm-storm-ambient.mp3" id="8_wox7d"] -[ext_resource type="PackedScene" uid="uid://dldnp8eunxj3q" path="res://BoundingBoxes/InteractionTrigger.tscn" id="9_3401j"] [ext_resource type="Script" path="res://BoundingBoxes/ConnectorBox.cs" id="9_fg062"] -[sub_resource type="ShaderMaterial" id="ShaderMaterial_eas6j"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_y8wqw"] resource_local_to_scene = true shader = ExtResource("5_h8k5p") shader_parameter/color = Vector4(1, 1, 1, 1) @@ -31,8 +30,6 @@ layer_2/tile_data = PackedInt32Array(1376242, 262144, 2, 1441778, 196608, 3, 137 layer_3/tile_data = PackedInt32Array(-196612, 65536, 1, -131076, 65536, 1, -65540, 196608, 0, -4, 131072, 0, -196611, 65536, 1, -131075, 65536, 0, -65539, 131072, 0, -3, 196608, 0, -196610, 65536, 0, -131074, 65536, 1, -65538, 0, 0, -2, 65536, 0, -196609, 65536, 1, -131073, 65536, 1, -65537, 65536, 0, -1, 65536, 1, -458760, 0, 0, -393224, 196608, 0, -327688, 196608, 0, -262152, 0, 0, -196616, 65536, 0, -131080, 131072, 0, -65544, 196608, 0, -8, 131072, 0, 65528, 131072, 0, 131064, 196608, 0, 196600, 131072, 0, 262136, 65536, 0, 327672, 65536, 0, 393208, 65536, 0, 458744, 0, 0, 524280, 65536, 0, -458759, 0, 1, -393223, 131072, 0, -327687, 131072, 0, -262151, 65536, 0, -196615, 65536, 1, -131079, 131072, 0, -65543, 131072, 0, -7, 196608, 0, 65529, 196608, 0, 131065, 196608, 0, 196601, 131072, 0, 262137, 65536, 1, 327673, 0, 0, 393209, 65536, 1, 458745, 65536, 0, 524281, 65536, 1, -458758, 0, 0, -393222, 65536, 0, -327686, 0, 0, -262150, 65536, 0, -196614, 0, 0, -131078, 0, 1, -65542, 196608, 0, -6, 196608, 0, 65530, 65536, 1, 131066, 65536, 1, 196602, 65536, 1, 262138, 0, 0, 327674, 65536, 1, 393210, 65536, 0, 458746, 131072, 0, 524282, 131072, 0, -458757, 65536, 0, -393221, 65536, 1, -327685, 65536, 0, -262149, 65536, 0, -196613, 0, 1, -131077, 0, 1, -65541, 131072, 0, -5, 131072, 0, 65531, 65536, 0, 131067, 0, 1, 196603, 0, 0, 262139, 0, 1, 327675, 0, 0, 393211, 65536, 0, 458747, 131072, 0, 524283, 196608, 0, -458756, 0, 0, -393220, 0, 1, -327684, 0, 0, -262148, 0, 0, 65532, 65536, 0, 131068, 65536, 0, 196604, 65536, 1, 262140, 0, 1, 327676, 131072, 0, 393212, 196608, 0, 458748, 196608, 0, 524284, 196608, 0, -458755, 0, 1, -393219, 0, 1, -327683, 0, 1, -262147, 0, 0, 65533, 65536, 0, 131069, 65536, 1, 196605, 65536, 1, 262141, 0, 1, 327677, 196608, 0, 393213, 131072, 0, 458749, 196608, 0, 524285, 131072, 0, -458754, 65536, 1, -393218, 65536, 1, -327682, 131072, 0, -262146, 196608, 0, 65534, 0, 1, 131070, 65536, 0, 196606, 196608, 0, 262142, 131072, 0, 327678, 196608, 0, 393214, 131072, 0, 458750, 65536, 0, 524286, 0, 0, -458753, 0, 1, -393217, 0, 1, -327681, 196608, 0, -262145, 131072, 0, 65535, 0, 1, 131071, 65536, 1, 196607, 131072, 0, 262143, 196608, 0, 327679, 131072, 0, 393215, 131072, 0, 458751, 65536, 1, 524287, 0, 0, -524288, 65536, 1, -458752, 65536, 1, -393216, 196608, 0, -327680, 196608, 0, -262144, 65536, 0, -196608, 0, 1, -131072, 65536, 0, -65536, 65536, 0, 0, 65536, 0, 65536, 65536, 1, 131072, 65536, 0, 196608, 65536, 1, 262144, 65536, 0, 327680, 0, 1, 393216, 0, 0, 458752, 0, 1, -524287, 65536, 1, -458751, 0, 0, -393215, 196608, 0, -327679, 196608, 0, -262143, 0, 0, -196607, 65536, 1, -131071, 0, 1, -65535, 65536, 1, 1, 0, 0, 65537, 65536, 1, 131073, 65536, 0, 196609, 65536, 0, 262145, 65536, 1, 327681, 65536, 1, 393217, 0, 1, 458753, 65536, 1, -524286, 65536, 0, -458750, 65536, 0, -393214, 131072, 0, -327678, 196608, 0, -262142, 0, 0, -196606, 65536, 0, -131070, 196608, 0, -65534, 131072, 0, 2, 131072, 0, 65538, 196608, 0, 131074, 65536, 0, 196610, 0, 0, 262146, 0, 1, 327682, 65536, 0, 393218, 131072, 0, 458754, 131072, 0, -524285, 65536, 0, -458749, 65536, 0, -393213, 131072, 0, -327677, 196608, 0, -262141, 0, 0, -196605, 65536, 0, -131069, 131072, 0, -65533, 131072, 0, 3, 196608, 0, 65539, 196608, 0, 131075, 0, 0, 196611, 0, 1, 262147, 65536, 1, 327683, 65536, 1, 393219, 196608, 0, 458755, 196608, 0, -524284, 0, 1, -458748, 65536, 0, -393212, 65536, 0, -327676, 0, 0, -262140, 65536, 1, -196604, 0, 1, -131068, 0, 1, -65532, 0, 1, 4, 0, 0, 65540, 65536, 1, 131076, 0, 0, 196612, 65536, 0, 262148, 131072, 0, 327684, 196608, 0, 393220, 196608, 0, 458756, 196608, 0, -524283, 65536, 1, -458747, 65536, 0, -393211, 65536, 1, -327675, 0, 0, -262139, 0, 1, -196603, 0, 1, -131067, 0, 1, -65531, 65536, 1, 5, 65536, 0, 65541, 65536, 0, 131077, 65536, 0, 196613, 0, 0, 262149, 196608, 0, 327685, 196608, 0, 393221, 131072, 0, 458757, 131072, 0, -524282, 0, 1, -458746, 0, 1, -393210, 0, 0, -327674, 65536, 0, -262138, 0, 0, -196602, 0, 1, -131066, 131072, 0, -65530, 196608, 0, 6, 65536, 0, 65542, 65536, 0, 131078, 0, 0, 196614, 0, 1, 262150, 65536, 0, 327686, 65536, 1, 393222, 0, 1, 458758, 0, 1, -524281, 65536, 0, -458745, 65536, 0, -393209, 196608, 0, -327673, 196608, 0, -262137, 196608, 0, -196601, 131072, 0, -131065, 196608, 0, -65529, 131072, 0, 7, 0, 1, 65543, 65536, 1, 131079, 0, 1, 196615, 0, 0, 262151, 0, 0, 327687, 0, 1, 393223, 65536, 0, 458759, 0, 1, 655359, 65536, 0, 720895, 0, 1, 589824, 0, 0, 655360, 196608, 0, 786431, 0, 0, 851967, 0, 0, 917503, 0, 1, 983039, 196608, 0, 720896, 196608, 0, 786432, 196608, 0, 851968, 0, 1, 917504, 65536, 1, 1048575, 131072, 0, 1114111, 131072, 0, 1179647, 196608, 0, 1245183, 0, 0, 983040, 0, 0, 1048576, 65536, 0, 1114112, 131072, 0, 1179648, 65536, 0, 1310719, 65536, 1, 1376255, 0, 1, 1441791, 131072, 0, 1507327, 131072, 0, 1245184, 131072, 0, 1310720, 131072, 0, 1376256, 196608, 0, 1441792, 131072, 0, 1572858, 196608, 0, 1638394, 65536, 0, 1572859, 0, 1, 1638395, 65536, 0, 1572860, 0, 0, 1638396, 196608, 0, 1572861, 196608, 0, 1638397, 196608, 0, 1572862, 65536, 1, 1638398, 196608, 0, 1572863, 65536, 1, 1638399, 0, 0, 1507328, 0, 0, 1572864, 0, 1, 1507316, 0, 0, 1572852, 0, 1, 1638388, 131072, 0, 1703924, 196608, 0, 1769460, 131072, 0, 1834996, 65536, 0, 1900532, 65536, 0, 1966068, 65536, 1, 1507317, 65536, 1, 1572853, 65536, 1, 1638389, 196608, 0, 1703925, 131072, 0, 1769461, 131072, 0, 1834997, 0, 0, 1900533, 0, 1, 1966069, 65536, 1, 1507318, 0, 1, 1572854, 0, 0, 1638390, 196608, 0, 1703926, 196608, 0, 1769462, 131072, 0, 1834998, 65536, 0, 1900534, 0, 0, 1966070, 65536, 1, 1507319, 0, 0, 1572855, 0, 0, 1638391, 196608, 0, 1703927, 196608, 0, 1769463, 196608, 0, 1834999, 65536, 0, 1900535, 65536, 1, 1966071, 65536, 0, 1507320, 65536, 1, 1572856, 0, 0, 1638392, 0, 0, 1703928, 65536, 1, 1769464, 65536, 1, 1835000, 0, 0, 1900536, 0, 1, 1966072, 65536, 1, 1507321, 0, 1, 1572857, 0, 0, 1638393, 0, 1, 1703929, 65536, 1, 1769465, 0, 1, 1835001, 65536, 1, 1900537, 0, 0, 1966073, 0, 1, 589823, 0, 0, 524288, 0, 0, 1507315, 65536, 0, 1572851, 65536, 0, 1638387, 0, 1, 1703923, 0, 0, 1769459, 196608, 0, 1834995, 0, 1, 1900531, 0, 0, 1966067, 0, 1) layer_4/tile_data = PackedInt32Array(-524296, 327680, 0, -589818, 262144, 0, -589817, 262144, 1, -589819, 327680, 0, -589820, 196608, 1, -589821, 327680, 1, -589822, 131072, 1, -589823, 262144, 1, -589824, 327680, 0, -524289, 131072, 1, -524290, 327680, 0, -524291, 327680, 1, -524292, 327680, 1, -524293, 327680, 0, -524294, 131072, 1, -524295, 262144, 1, -589832, 131072, 2, -589831, 131072, 2, -589830, 131072, 2, -589829, 131072, 2, -589828, 131072, 2, -589827, 131072, 2, -589826, 131072, 2, -589825, 131072, 2, -655360, 131072, 2, -655359, 131072, 2, -655358, 131072, 2, -655357, 131072, 2, -655356, 131072, 2, -655355, 131072, 2, -655354, 131072, 2, -655353, 131072, 2, -655352, 327680, 2, -589833, 262144, 2, -524297, 196608, 3, -458761, 196608, 3, -393225, 196608, 3, -327689, 196608, 3, -262153, 196608, 3, -196617, 196608, 3, -131081, 196608, 3, -65545, 196608, 3, -9, 196608, 3, 65527, 196608, 3, 131063, 196608, 3, 196599, 196608, 3, 262135, 196608, 3, 327671, 196608, 3, 393207, 196608, 3, 458743, 196608, 3, 524279, 196608, 3, 262152, 131072, 3, 327688, 131072, 3, 393224, 131072, 3, 458760, 131072, 3, 196616, 131072, 3, 131080, 131072, 3, 65544, 131072, 3, 8, 131072, 3, -65528, 131072, 3, -131064, 131072, 3, -196600, 131072, 3, -262136, 131072, 3, -589816, 131072, 3, -524280, 131072, 3, -458744, 131072, 3, -393208, 131072, 3, -327672, 131072, 3, 589816, 196608, 2, 589817, 196608, 2, 589818, 196608, 2, 589819, 196608, 2, 589820, 196608, 2, 589821, 196608, 2, 589822, 196608, 2, 524289, 196608, 2, 524290, 196608, 2, 524291, 196608, 2, 524292, 196608, 2, 524293, 196608, 2, 524294, 196608, 2, 524295, 196608, 2, 524296, 327680, 3, 589815, 262144, 3) layer_5/name = "Layer -1" -CameraLowerBound = Vector2(0, 0) -CameraUpperBound = Vector2(0, 0) ClearColor = Color(0.105882, 0.0470588, 0.117647, 1) AreaName = "The Arena" MapName = "The Arena" @@ -113,7 +110,7 @@ visible = false position = Vector2(120, -112) [node name="Doc" parent="Entities" index="0" instance=ExtResource("4_ej0f3")] -material = SubResource("ShaderMaterial_eas6j") +material = SubResource("ShaderMaterial_y8wqw") [node name="PointLight2D" type="PointLight2D" parent="Entities" index="1"] position = Vector2(168, -42) @@ -136,22 +133,16 @@ autoplay = true [node name="CollisionShape2D" type="CollisionShape2D" parent="Areas/Area2D" index="0"] shape = SubResource("RectangleShape2D_gwpea") -[node name="Entrance" type="Node2D" parent="Areas" index="1"] +[node name="Entrance" type="Area2D" parent="Areas" index="1"] position = Vector2(0, 360) - -[node name="InteractionTrigger" parent="Areas/Entrance" index="0" instance=ExtResource("9_3401j")] - -[node name="Connector" type="Area2D" parent="Areas/Entrance" index="1" node_paths=PackedStringArray("InteractionTrigger", "Collision")] -collision_layer = 68 -collision_mask = 0 +collision_layer = 0 +collision_mask = 4 script = ExtResource("9_fg062") ToArea = "res://Scenes/Maps/ArenaExterior.tscn" -ToConnector = "arena_entrance" -Identifier = "entrance" -InteractionTrigger = NodePath("../InteractionTrigger") -Collision = NodePath("CollisionShape2D") +ToConnector = "ArenaEntrance" -[node name="CollisionShape2D" type="CollisionShape2D" parent="Areas/Entrance/Connector" index="0"] +[node name="CollisionShape2D" type="CollisionShape2D" parent="Areas/Entrance" index="0"] shape = SubResource("RectangleShape2D_2xagi") -[editable path="Areas/Entrance/InteractionTrigger"] +[node name="Entrance" type="Marker2D" parent="Markers" index="0"] +position = Vector2(0, 335) diff --git a/Scenes/Maps/ArenaExterior.tscn b/Scenes/Maps/ArenaExterior.tscn index 36ef66b..80bef24 100644 --- a/Scenes/Maps/ArenaExterior.tscn +++ b/Scenes/Maps/ArenaExterior.tscn @@ -162,77 +162,77 @@ size = Vector2(64, 97) [sub_resource type="RectangleShape2D" id="RectangleShape2D_5pcme"] size = Vector2(18, 6) -[sub_resource type="ShaderMaterial" id="ShaderMaterial_xq8mc"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_ctg4t"] resource_local_to_scene = true shader = ExtResource("28_b3suq") shader_parameter/color = Vector4(1, 1, 1, 1) shader_parameter/intensity = 0.0 shader_parameter/alpha_modulate = 1.0 -[sub_resource type="ShaderMaterial" id="ShaderMaterial_w21tu"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_h8que"] resource_local_to_scene = true shader = ExtResource("28_b3suq") shader_parameter/color = Vector4(1, 1, 1, 1) shader_parameter/intensity = 0.0 shader_parameter/alpha_modulate = 1.0 -[sub_resource type="ShaderMaterial" id="ShaderMaterial_bgnx0"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_o5ihe"] resource_local_to_scene = true shader = ExtResource("28_b3suq") shader_parameter/color = Vector4(1, 1, 1, 1) shader_parameter/intensity = 0.0 shader_parameter/alpha_modulate = 1.0 -[sub_resource type="ShaderMaterial" id="ShaderMaterial_wpwa5"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_6hrf6"] resource_local_to_scene = true shader = ExtResource("28_b3suq") shader_parameter/color = Vector4(1, 1, 1, 1) shader_parameter/intensity = 0.0 shader_parameter/alpha_modulate = 1.0 -[sub_resource type="ShaderMaterial" id="ShaderMaterial_nayll"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_wipup"] resource_local_to_scene = true shader = ExtResource("28_b3suq") shader_parameter/color = Vector4(1, 1, 1, 1) shader_parameter/intensity = 0.0 shader_parameter/alpha_modulate = 1.0 -[sub_resource type="ShaderMaterial" id="ShaderMaterial_ng6wy"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_4w0mf"] resource_local_to_scene = true shader = ExtResource("28_b3suq") shader_parameter/color = Vector4(1, 1, 1, 1) shader_parameter/intensity = 0.0 shader_parameter/alpha_modulate = 1.0 -[sub_resource type="ShaderMaterial" id="ShaderMaterial_vxxuo"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_76uvw"] resource_local_to_scene = true shader = ExtResource("28_b3suq") shader_parameter/color = Vector4(1, 1, 1, 1) shader_parameter/intensity = 0.0 shader_parameter/alpha_modulate = 1.0 -[sub_resource type="ShaderMaterial" id="ShaderMaterial_xq55r"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_w515t"] resource_local_to_scene = true shader = ExtResource("28_b3suq") shader_parameter/color = Vector4(1, 1, 1, 1) shader_parameter/intensity = 0.0 shader_parameter/alpha_modulate = 1.0 -[sub_resource type="ShaderMaterial" id="ShaderMaterial_1c5jm"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_1jw68"] resource_local_to_scene = true shader = ExtResource("28_b3suq") shader_parameter/color = Vector4(1, 1, 1, 1) shader_parameter/intensity = 0.0 shader_parameter/alpha_modulate = 1.0 -[sub_resource type="ShaderMaterial" id="ShaderMaterial_r6iyg"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_88cs5"] resource_local_to_scene = true shader = ExtResource("28_b3suq") shader_parameter/color = Vector4(1, 1, 1, 1) shader_parameter/intensity = 0.0 shader_parameter/alpha_modulate = 1.0 -[sub_resource type="ShaderMaterial" id="ShaderMaterial_3ca81"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_f3see"] resource_local_to_scene = true shader = ExtResource("28_b3suq") shader_parameter/color = Vector4(1, 1, 1, 1) @@ -246,8 +246,6 @@ layer_1/tile_data = PackedInt32Array(-1703953, 393216, 0, -1703952, 393216, 0, 1 layer_2/tile_data = PackedInt32Array(1310721, 393216, 0, 1310722, 393216, 0, 1310723, 393216, 0, 1310724, 393216, 0, 1310728, 393216, 0, 1769490, 393216, 0, 1769487, 393216, 0, 1769488, 393216, 0, 2293761, 655360, 6, 2293762, 655360, 6, 2359298, 655360, 7, 2359297, 655360, 7, 2359296, 589824, 7, 2293760, 589824, 6, 2228224, 589824, 5, 2228225, 655360, 5, 2228226, 655360, 5, 2293763, 655360, 6, 2359299, 655360, 7, 2228227, 655360, 5, 2293764, 655360, 6, 2359300, 655360, 7, 2228228, 655360, 5, 2293765, 655360, 6, 2359301, 655360, 7, 2228229, 655360, 5, 2293766, 655360, 6, 2359302, 655360, 7, 2228230, 655360, 5, 2293767, 655360, 6, 2359303, 655360, 7, 2228231, 655360, 5, 2293768, 655360, 6, 2359304, 655360, 7, 2228232, 655360, 5, 2293769, 655360, 6, 2359305, 655360, 7, 2228233, 655360, 5, 2293770, 655360, 6, 2359306, 655360, 7, 2228234, 655360, 5, 2293771, 655360, 6, 2359307, 655360, 7, 2228235, 655360, 5, 2293772, 720896, 6, 2359308, 720896, 7, 2228236, 720896, 5, -1179649, 851968, 6, -1245184, 851968, 6, -1179648, 851968, 7, -1114113, 851968, 7, -1114114, 786432, 7, -1179650, 786432, 6, -1245186, 786432, 6, -1245185, 851968, 6, -1310720, 851968, 6, -1245183, 917504, 6, -1179647, 917504, 7, -1310719, 917504, 6, -1310722, 786432, 5, -1310721, 851968, 5, -1376256, 851968, 5, -1376255, 917504, 5, -1572889, 655360, 6, -1572888, 655360, 6, -1507352, 655360, 7, -1507353, 655360, 7, -1507354, 589824, 7, -1572890, 589824, 6, -1638426, 589824, 5, -1638425, 655360, 5, -1638424, 655360, 5, -1572887, 655360, 6, -1507351, 655360, 7, -1638423, 655360, 5, -1572886, 655360, 6, -1507350, 655360, 7, -1638422, 655360, 5, -1572885, 655360, 6, -1507349, 655360, 7, -1638421, 655360, 5, -1572884, 655360, 6, -1507348, 655360, 7, -1638420, 655360, 5, -1572883, 655360, 6, -1507347, 655360, 7, -1638419, 655360, 5, -1572882, 655360, 6, -1507346, 655360, 7, -1638418, 655360, 5, -1572881, 655360, 6, -1507345, 655360, 7, -1638417, 655360, 5, -1572880, 655360, 6, -1572879, 720896, 6, -1507343, 720896, 7, -1507344, 655360, 7, -1638416, 655360, 5, -1638415, 720896, 5, 1703970, 1, 6, 1769506, 1, 6, 1835042, 1, 6, 1900578, 1, 6, 1703973, 131073, 6, 1769509, 131073, 6, 1835045, 131073, 6, 1900581, 131073, 6, 1507361, 393216, 3, 1507362, 458752, 2, 1507365, 458752, 3, 1507366, 393216, 3, 1638431, 65537, 7, 1638430, 65537, 7, 1638441, 65537, 7, 1638440, 65537, 7) layer_3/tile_data = PackedInt32Array(-65538, 0, 0, -2, 131072, 0, 65534, 196608, 0, 131070, 65536, 0, -65537, 196608, 0, -1, 131072, 0, 65535, 196608, 0, 131071, 196608, 0, -131072, 131072, 0, -65536, 131072, 0, 0, 131072, 0, 65536, 131072, 0, -131071, 65536, 1, -65535, 131072, 0, 1, 131072, 0, 65537, 65536, 1, -196612, 65536, 1, -131076, 0, 1, -65540, 65536, 0, -4, 131072, 0, 65532, 196608, 0, 131068, 0, 0, 196604, 65536, 0, 262140, 0, 0, -196611, 0, 0, -131075, 65536, 1, -65539, 0, 1, -3, 131072, 0, 65533, 131072, 0, 131069, 65536, 1, 196605, 0, 0, 262141, 65536, 0, -196610, 65536, 1, -131074, 0, 1, 196606, 0, 1, 262142, 65536, 0, -196609, 196608, 0, -131073, 196608, 0, 196607, 131072, 0, 262143, 131072, 0, -262144, 196608, 0, -196608, 196608, 0, 131072, 131072, 0, 196608, 196608, 0, -262143, 65536, 0, -196607, 65536, 0, 131073, 0, 0, 196609, 65536, 1, -262142, 65536, 1, -196606, 0, 0, -131070, 0, 0, -65534, 196608, 0, 2, 131072, 0, 65538, 0, 1, 131074, 65536, 0, 196610, 65536, 1, -262141, 0, 1, -196605, 65536, 0, -131069, 0, 1, -65533, 196608, 0, 3, 196608, 0, 65539, 0, 1, 131075, 65536, 0, 196611, 0, 1, -8, 196608, 0, 65528, 131072, 0, -7, 196608, 0, 65529, 131072, 0, -6, 131072, 0, 65530, 131072, 0, -5, 196608, 0, 65531, 196608, 0, -458753, 196608, 0, -393217, 131072, 0, -327681, 196608, 0, -262145, 131072, 0, -524288, 196608, 0, -458752, 131072, 0, -393216, 196608, 0, -327680, 196608, 0, -65532, 196608, 0, 4, 196608, 0, -65531, 196608, 0, 5, 196608, 0, -65530, 196608, 0, 6, 131072, 0, -65529, 131072, 0, 7, 131072, 0, 327679, 131072, 0, 393215, 131072, 0, 458751, 131072, 0, 524287, 196608, 0, 262144, 196608, 0, 327680, 131072, 0, 393216, 131072, 0, 458752, 131072, 0, 131064, 0, 0, 196600, 65536, 1, 262136, 65536, 1, 131065, 65536, 1, 196601, 0, 1, 262137, 65536, 1, 131066, 0, 1, 196602, 65536, 1, 262138, 65536, 0, 131067, 65536, 1, 196603, 0, 0, 262139, 65536, 1, 327672, 65536, 0, 393208, 0, 0, 458744, 65536, 1, 524280, 0, 1, 327673, 0, 1, 393209, 0, 0, 458745, 65536, 0, 524281, 0, 1, 327674, 0, 1, 393210, 0, 1, 458746, 0, 0, 524282, 0, 1, 327675, 0, 0, 393211, 0, 0, 458747, 65536, 0, 524283, 65536, 0, 327676, 0, 1, 393212, 65536, 0, 458748, 65536, 1, 524284, 65536, 1, 327677, 65536, 0, 393213, 65536, 1, 458749, 0, 1, 524285, 0, 1, 327678, 65536, 0, 393214, 0, 1, 458750, 65536, 1, 524286, 0, 0, 262145, 0, 0, 327681, 65536, 1, 393217, 0, 0, 458753, 65536, 0, 262146, 0, 1, 327682, 0, 1, 393218, 65536, 1, 458754, 65536, 1, 262147, 65536, 0, 327683, 0, 0, 393219, 0, 1, 458755, 0, 1, 65540, 0, 1, 131076, 0, 0, 196612, 65536, 0, 262148, 65536, 0, 327684, 65536, 1, 393220, 65536, 1, 458756, 65536, 1, 65541, 0, 0, 131077, 0, 1, 196613, 0, 0, 262149, 0, 0, 327685, 65536, 0, 393221, 65536, 0, 458757, 0, 0, 65542, 65536, 1, 131078, 65536, 0, 196614, 0, 1, 262150, 0, 1, 327686, 0, 1, 393222, 0, 0, 458758, 65536, 1, 65543, 0, 0, 131079, 65536, 1, 196615, 65536, 0, 262151, 0, 1, 327687, 0, 0, 393223, 65536, 0, 458759, 0, 0, -131080, 65536, 1, -65544, 65536, 1, -131079, 0, 1, -65543, 0, 0, -131078, 0, 0, -65542, 65536, 0, -131077, 65536, 1, -65541, 65536, 1, -458760, 0, 0, -393224, 65536, 0, -327688, 0, 1, -262152, 0, 1, -196616, 0, 0, -458759, 65536, 1, -393223, 0, 1, -327687, 65536, 0, -262151, 0, 1, -196615, 65536, 0, -458758, 65536, 1, -393222, 65536, 1, -327686, 65536, 0, -262150, 65536, 1, -196614, 0, 1, -458757, 0, 1, -393221, 65536, 1, -327685, 65536, 1, -262149, 0, 1, -196613, 65536, 1, -458756, 0, 1, -393220, 65536, 0, -327684, 65536, 0, -262148, 0, 1, -458755, 0, 1, -393219, 65536, 0, -327683, 0, 1, -262147, 65536, 0, -458754, 0, 1, -393218, 0, 0, -327682, 65536, 1, -262146, 65536, 0, -524287, 0, 0, -458751, 65536, 0, -393215, 65536, 1, -327679, 0, 1, -524286, 65536, 1, -458750, 0, 1, -393214, 0, 1, -327678, 65536, 0, -524285, 0, 0, -458749, 65536, 0, -393213, 65536, 0, -327677, 0, 1, -524284, 65536, 0, -458748, 65536, 1, -393212, 65536, 1, -327676, 0, 1, -262140, 65536, 0, -524283, 65536, 0, -458747, 65536, 1, -393211, 0, 1, -327675, 0, 0, -262139, 0, 1, -524282, 0, 0, -458746, 0, 0, -393210, 0, 1, -327674, 0, 1, -262138, 0, 1, -524281, 65536, 1, -458745, 65536, 0, -393209, 65536, 0, -327673, 65536, 0, -262137, 0, 0, -196604, 0, 1, -131068, 65536, 0, -196603, 65536, 0, -131067, 65536, 1, -196602, 65536, 0, -131066, 0, 0, -196601, 0, 0, -131065, 0, 0, -524296, 131072, 1, -524295, 196608, 1, -524294, 131072, 1, -524293, 131072, 1, -524292, 131072, 1, -524291, 196608, 1, -589822, 196608, 1, -589821, 131072, 1, -589820, 131072, 1, -524290, 131072, 1, -524289, 196608, 0, -589824, 196608, 0, -589823, 131072, 1, -589819, 131072, 1, -589818, 196608, 1, -589817, 131072, 1, -524297, 196608, 3, -458761, 196608, 3, -393225, 196608, 3, -327689, 196608, 3, -262153, 196608, 3, -196617, 196608, 3, -131081, 65536, 5, -65545, 131072, 1, -9, 65536, 0, 65527, 65536, 1, 131063, 65536, 4, 196599, 196608, 3, 262135, 196608, 3, 327671, 196608, 3, 393207, 196608, 3, 458743, 196608, 3, 524279, 196608, 3, -589816, 131072, 3, -524280, 131072, 3, -458744, 131072, 3, -393208, 131072, 3, -327672, 131072, 3, -262136, 131072, 3, -196600, 0, 5, -131064, 262144, 0, -65528, 196608, 0, 8, 131072, 0, 65544, 0, 4, 131080, 131072, 3, 196616, 131072, 3, 262152, 131072, 3, 327688, 131072, 3, 393224, 131072, 3, 458760, 131072, 3, 589816, 196608, 2, 589817, 196608, 2, 589818, 196608, 2, 589819, 196608, 2, 589820, 196608, 2, 589821, 196608, 2, 589822, 65536, 4, 589823, 65536, 0, 524288, 65536, 0, 524289, 0, 4, 524290, 196608, 2, 524291, 196608, 2, 524292, 196608, 2, 524293, 196608, 2, 524294, 196608, 2, 524295, 196608, 2, 524296, 327680, 3, 589815, 262144, 3, -589825, 131072, 0, -655360, 131072, 0, -983041, 131072, 0, -917505, 131072, 0, -851969, 196608, 0, -786433, 131072, 0, -720897, 196608, 0, -655361, 196608, 0, -1048576, 196608, 0, -983040, 131072, 0, -917504, 131072, 0, -851968, 196608, 0, -786432, 196608, 0, -720896, 196608, 0, -1245187, 196608, 0, -1179651, 65536, 1, -1114115, 65536, 0, -1048579, 65536, 1, -1245186, 131072, 0, -1179650, 65536, 1, -1114114, 0, 0, -1048578, 0, 0, -1245185, 196608, 0, -1179649, 131072, 0, -1114113, 131072, 0, -1048577, 0, 0, -1310720, 131072, 0, -1245184, 131072, 0, -1179648, 196608, 0, -1114112, 65536, 0, -1310719, 196608, 0, -1245183, 196608, 0, -1179647, 0, 1, -1114111, 0, 0, -1310718, 196608, 0, -1245182, 131072, 0, -1179646, 65536, 0, -1114110, 0, 1, -1245188, 65536, 1, -1179652, 0, 1, -1114116, 65536, 0, -1048580, 65536, 1, -1310717, 65536, 0, -1245181, 0, 0, -1179645, 65536, 1, -1114109, 65536, 0, -1507332, 0, 0, -1441796, 65536, 0, -1376260, 196608, 0, -1310724, 0, 1, -1507331, 131072, 0, -1441795, 131072, 0, -1376259, 196608, 0, -1310723, 196608, 0, -1507330, 196608, 0, -1441794, 196608, 0, -1376258, 131072, 0, -1310722, 196608, 0, -1507329, 131072, 0, -1441793, 131072, 0, -1376257, 131072, 0, -1310721, 131072, 0, -1572864, 65536, 1, -1507328, 0, 1, -1441792, 0, 0, -1376256, 131072, 0, -1572863, 65536, 1, -1507327, 65536, 1, -1441791, 65536, 1, -1376255, 131072, 0, -1572862, 65536, 0, -1507326, 0, 1, -1441790, 65536, 0, -1376254, 196608, 0, -1572861, 65536, 0, -1507325, 65536, 1, -1441789, 0, 0, -1376253, 65536, 0, -1507337, 196608, 0, -1441801, 65536, 1, -1376265, 0, 1, -1507336, 131072, 0, -1441800, 196608, 0, -1376264, 0, 0, -1507335, 0, 1, -1441799, 196608, 0, -1376263, 65536, 0, -1507334, 65536, 1, -1441798, 65536, 1, -1376262, 65536, 0, -1507333, 65536, 0, -1441797, 65536, 0, -1376261, 196608, 0, -1507341, 0, 1, -1441805, 0, 1, -1376269, 65536, 0, -1507340, 65536, 0, -1441804, 196608, 0, -1376268, 65536, 0, -1507339, 65536, 0, -1441803, 196608, 0, -1376267, 131072, 0, -1507338, 65536, 1, -1441802, 131072, 0, -1376266, 0, 0, -1638420, 0, 1, -1572884, 131072, 0, -1507348, 196608, 0, -1441812, 131072, 0, -1376276, 196608, 0, -1310740, 131072, 0, -1245204, 65536, 1, -1638419, 0, 1, -1572883, 196608, 0, -1507347, 131072, 0, -1441811, 131072, 0, -1376275, 131072, 0, -1310739, 196608, 0, -1245203, 0, 0, -1638418, 65536, 0, -1572882, 196608, 0, -1507346, 131072, 0, -1441810, 196608, 0, -1376274, 131072, 0, -1310738, 131072, 0, -1245202, 0, 0, -1638417, 0, 0, -1572881, 131072, 0, -1507345, 131072, 0, -1441809, 196608, 0, -1376273, 196608, 0, -1310737, 196608, 0, -1245201, 0, 1, -1638416, 0, 0, -1572880, 131072, 0, -1507344, 196608, 0, -1441808, 131072, 0, -1376272, 196608, 0, -1310736, 131072, 0, -1245200, 0, 0, -1638415, 65536, 1, -1572879, 196608, 0, -1507343, 196608, 0, -1441807, 196608, 0, -1376271, 131072, 0, -1310735, 131072, 0, -1245199, 65536, 0, -1638414, 0, 1, -1572878, 0, 1, -1507342, 65536, 1, -1441806, 65536, 0, -1376270, 65536, 1, -1310734, 65536, 0, -1245198, 65536, 1, -1638421, 65536, 1, -1572885, 0, 0, -1507349, 65536, 1, -1441813, 65536, 0, -1376277, 65536, 1, -1310741, 65536, 1, -1245205, 65536, 0, -1638427, 0, 1, -1638426, 0, 1, -1638425, 65536, 1, -1638424, 65536, 0, -1638423, 0, 0, -1638422, 0, 1, -1441821, 196608, 0, -1376285, 65536, 1, -1310749, 196608, 0, -1245213, 65536, 1, -1441820, 0, 0, -1376284, 65536, 1, -1310748, 65536, 0, -1245212, 196608, 0, -1179677, 0, 1, -1114141, 0, 0, -1048605, 65536, 0, -983069, 131072, 0, -917533, 131072, 0, -851997, 65536, 0, -786461, 0, 0, -720925, 65536, 0, -655389, 65536, 0, -589853, 131072, 0, -1179676, 131072, 0, -1114140, 196608, 0, -1048604, 0, 1, -983068, 0, 0, -917532, 65536, 0, -851996, 131072, 0, -786460, 131072, 0, -720924, 196608, 0, -655388, 0, 0, -589852, 0, 1, -524317, 0, 0, -458781, 65536, 0, -393245, 0, 1, -327709, 196608, 0, -262173, 196608, 0, -196637, 131072, 0, -131101, 196608, 0, -65565, 0, 0, -29, 0, 0, -524316, 196608, 0, -458780, 65536, 0, -393244, 196608, 0, -327708, 0, 1, -262172, 65536, 1, -196636, 131072, 0, -131100, 131072, 0, -65564, 0, 1, -28, 65536, 0, -589857, 131072, 0, -524321, 131072, 0, -589856, 131072, 0, -524320, 131072, 0, -589855, 196608, 0, -524319, 0, 0, -589854, 131072, 0, -524318, 65536, 0, -589851, 196608, 0, -524315, 0, 0, -589850, 65536, 1, -524314, 0, 0, -589849, 196608, 0, -524313, 196608, 0, -589848, 131072, 0, -524312, 196608, 0, 65501, 0, 0, 131037, 0, 0, 196573, 65536, 1, 262109, 65536, 0, 327645, 65536, 0, 65502, 0, 0, 131038, 131072, 0, 196574, 196608, 0, 262110, 131072, 0, 327646, 0, 0, 65503, 65536, 1, 131039, 196608, 0, 196575, 131072, 0, 262111, 131072, 0, 327647, 0, 0, 65504, 65536, 0, 131040, 131072, 0, 196576, 196608, 0, 262112, 196608, 0, 327648, 0, 0, 65505, 65536, 1, 131041, 131072, 0, 196577, 196608, 0, 262113, 131072, 0, 327649, 65536, 1, 65506, 0, 0, 131042, 65536, 1, 196578, 0, 1, 262114, 65536, 0, 327650, 0, 0, 65507, 65536, 0, 131043, 196608, 0, 196579, 131072, 0, 262115, 131072, 0, 327651, 0, 1, 65508, 65536, 0, 131044, 131072, 0, 196580, 131072, 0, 262116, 196608, 0, 327652, 0, 0, 65509, 0, 0, 131045, 196608, 0, 196581, 131072, 0, 262117, 196608, 0, 327653, 65536, 1, 65510, 0, 0, 131046, 196608, 0, 196582, 131072, 0, 262118, 196608, 0, 327654, 0, 1, 65511, 65536, 0, 131047, 131072, 0, 196583, 131072, 0, 262119, 131072, 0, 327655, 0, 1, 65512, 65536, 1, 131048, 131072, 0, 196584, 131072, 0, 262120, 196608, 0, 327656, 65536, 0, 65513, 0, 0, 131049, 196608, 0, 196585, 131072, 0, 262121, 131072, 0, 327657, 0, 0, 65514, 65536, 1, 131050, 0, 0, 196586, 65536, 0, 262122, 0, 1, 327658, 0, 1, 393192, 65536, 0, 458728, 131072, 0, 524264, 65536, 1, 393193, 0, 0, 458729, 196608, 0, 524265, 65536, 0, 393194, 65536, 0, 458730, 196608, 0, 524266, 65536, 1, 393191, 65536, 0, 458727, 65536, 0, 524263, 65536, 0, 393195, 131072, 0, 458731, 196608, 0, 524267, 65536, 0, 393196, 131072, 0, 458732, 131072, 0, 524268, 65536, 1, 393197, 196608, 0, 458733, 131072, 0, 524269, 0, 0, 393198, 0, 1, 458734, 0, 0, 524270, 196608, 0, 393199, 65536, 0, 458735, 0, 1, 524271, 196608, 0, 65520, 196608, 3, 131056, 196608, 3, 196592, 196608, 3, 262128, 65536, 5, 327664, 196608, 1, 393200, 0, 1, 458736, 65536, 1, 65521, 65536, 1, 131057, 131072, 0, 196593, 196608, 0, 262129, 196608, 0, 327665, 131072, 0, 393201, 196608, 0, 458737, 0, 1, 65522, 131072, 0, 131058, 131072, 0, 196594, 131072, 0, 262130, 131072, 0, 327666, 196608, 0, 393202, 131072, 0, 458738, 65536, 0, 65523, 131072, 0, 131059, 0, 4, 196595, 131072, 3, 262131, 131072, 3, 327667, 0, 5, 393203, 0, 1, 458739, 65536, 1, 524272, 196608, 0, 524273, 131072, 0, 524274, 131072, 0, 524275, 131072, 0, -16, 196608, 3, -15, 0, 0, -14, 0, 0, -13, 0, 0, -12, 131072, 0, 65524, 131072, 0, -11, 0, 1, 65525, 0, 1, -10, 65536, 0, 65526, 65536, 1, -65552, 196608, 3, -65551, 131072, 1, -65550, 131072, 1, -65549, 196608, 1, -65548, 131072, 1, -65547, 131072, 1, -65546, 196608, 1, -27, 131072, 1, -26, 196608, 1, -25, 196608, 1, -24, 131072, 1, -23, 131072, 1, -22, 131072, 1, -35, 196608, 1, -34, 131072, 1, -33, 131072, 1, -32, 196608, 1, -31, 196608, 1, -30, 131072, 1, 327659, 131072, 1, 327660, 196608, 1, 327661, 196608, 1, 327662, 131072, 1, -1703963, 196608, 1, -1703962, 196608, 1, -1703961, 262144, 7, -1703960, 262144, 0, -1703959, 262144, 0, -1703958, 327680, 0, -1703957, 196608, 6, -1703956, 262144, 7, -1703955, 262144, 0, -1703954, 327680, 0, -1703953, 131072, 1, -1703952, 196608, 1, -1703951, 196608, 1, -1703950, 131072, 1, -1572877, 131072, 1, -1572876, 196608, 1, -1572875, 196608, 1, -1572874, 131072, 1, -1572873, 131072, 1, -1572872, 196608, 1, -1572871, 196608, 1, -1572870, 196608, 1, -1572869, 131072, 1, -1572868, 131072, 1, -1572867, 131072, 1, -1572866, 131072, 1, -1572865, 131072, 1, -1638400, 131072, 1, -1638399, 131072, 1, -1638398, 196608, 1, -1638397, 131072, 1, -1572860, 131072, 3, -1507324, 131072, 3, -1441788, 131072, 3, -1376252, 131072, 3, -1310716, 131072, 3, -1245180, 131072, 3, -1179644, 131072, 3, -1114108, 131072, 3, -1245189, 196608, 3, -1179653, 196608, 3, -1114117, 196608, 3, -1048581, 196608, 3, -1310725, 65536, 4, -1310733, 0, 4, -1179661, 327680, 3, -1245197, 131072, 3, -1310732, 196608, 2, -1310731, 196608, 2, -1310730, 196608, 2, -1310729, 196608, 2, -1310728, 196608, 2, -1310727, 196608, 2, -1310726, 196608, 2, -983044, 196608, 2, -983043, 196608, 2, -983042, 65536, 4, -1048574, 196608, 2, -1048573, 196608, 2, -1048575, 0, 4, -1048572, 327680, 3, -983045, 262144, 3, -917506, 196608, 3, -851970, 196608, 3, -786434, 196608, 3, -720898, 196608, 3, -983039, 131072, 3, -917503, 131072, 3, -851967, 131072, 3, -786431, 131072, 3, -131087, 131072, 2, -131086, 131072, 2, -131085, 131072, 2, -131084, 131072, 2, -131083, 131072, 2, -131082, 131072, 2, -131088, 262144, 2, -65563, 0, 5, -65562, 131072, 2, -65561, 131072, 2, -65560, 131072, 2, -65559, 131072, 2, -65558, 131072, 2, -65571, 131072, 2, -65570, 131072, 2, -65569, 131072, 2, -65568, 131072, 2, -65567, 131072, 2, -65566, 65536, 5, -655393, 131072, 1, -655392, 131072, 1, -655391, 131072, 1, -655390, 196608, 1, -655387, 196608, 1, -655386, 196608, 1, -655385, 196608, 1, -655384, 196608, 1, -720929, 131072, 2, -720928, 131072, 2, -720927, 131072, 2, -720926, 65536, 5, -720923, 0, 5, -720922, 131072, 2, -720921, 131072, 2, -720920, 131072, 2, -1769499, 131072, 2, -1769498, 131072, 2, -1769497, 131072, 2, -1769496, 131072, 2, -1769495, 131072, 2, -1769494, 131072, 2, -1769493, 131072, 2, -1769492, 131072, 2, -1769491, 131072, 2, -1769490, 131072, 2, -1769489, 131072, 2, -1769488, 131072, 2, -1769487, 131072, 2, -1769486, 131072, 2, -1638413, 0, 5, -1638412, 131072, 2, -1638411, 131072, 2, -1638410, 131072, 2, -1638409, 131072, 2, -1638408, 131072, 2, -1638407, 131072, 2, -1638406, 131072, 2, -1638405, 131072, 2, -1638404, 131072, 2, -1638403, 131072, 2, -1638402, 131072, 2, -1638401, 131072, 2, -1703936, 131072, 2, -1703935, 131072, 2, -1703934, 131072, 2, -1703933, 131072, 2, -1703949, 131072, 3, -1769485, 327680, 2, -1703964, 65536, 5, -1441822, 196608, 3, -1376286, 196608, 3, -1310750, 196608, 3, -1245214, 196608, 3, -1179678, 196608, 3, -1114142, 196608, 3, -1048606, 196608, 3, -983070, 196608, 3, -917534, 196608, 3, -851998, 196608, 3, -786462, 196608, 3, -1114139, 131072, 3, -1048603, 131072, 3, -983067, 131072, 3, -917531, 131072, 3, -851995, 131072, 3, -786459, 131072, 3, -1179669, 196608, 2, -1179668, 196608, 2, -1179667, 196608, 2, -1179666, 196608, 2, -1179665, 196608, 2, -1179664, 196608, 2, -1179663, 196608, 2, -1179662, 196608, 2, -1769500, 262144, 2, 65500, 196608, 3, 131036, 196608, 3, 196572, 196608, 3, 262108, 196608, 3, 327644, 196608, 3, 393204, 131072, 3, 458740, 131072, 3, 524276, 131072, 3, 131061, 196608, 2, 131062, 196608, 2, 589799, 196608, 2, 589800, 196608, 2, 589801, 196608, 2, 589802, 196608, 2, 589803, 196608, 2, 589804, 196608, 2, 589805, 196608, 2, 589806, 196608, 2, 589807, 65536, 4, 589808, 0, 1, 589809, 0, 0, 589810, 0, 0, 589811, 0, 0, 393181, 196608, 2, 393182, 196608, 2, 393183, 196608, 2, 393184, 196608, 2, 393185, 196608, 2, 393186, 196608, 2, 393187, 196608, 2, 393188, 196608, 2, 393189, 196608, 2, 393190, 65536, 4, 458726, 196608, 3, 524262, 196608, 3, 65515, 131072, 3, 131051, 131072, 3, 196587, 131072, 3, 262123, 0, 5, -21, 131072, 3, -65557, 327680, 2, 589812, 131072, 3, 589798, 262144, 3, 393180, 262144, 3, -65572, 262144, 2, -36, 196608, 3, -720930, 262144, 2, -720919, 327680, 2, -655383, 131072, 3, -589847, 131072, 3, -524311, 131072, 3, -655394, 196608, 3, -589858, 196608, 3, -524322, 196608, 3, -458786, 262144, 3, -458775, 327680, 3, -458785, 196608, 2, -458784, 196608, 2, -458783, 196608, 2, -458782, 65536, 4, -458779, 0, 4, -458778, 196608, 2, -458777, 196608, 2, -458776, 196608, 2, -393246, 196608, 3, -327710, 196608, 3, -262174, 196608, 3, -196638, 196608, 3, -131102, 196608, 3, -393243, 131072, 3, -327707, 131072, 3, -262171, 131072, 3, -196635, 131072, 3, -131099, 131072, 3, -1572891, 65536, 0, -1507355, 65536, 1, -1441819, 0, 4, -1572890, 0, 0, -1507354, 0, 1, -1441818, 196608, 2, -1572889, 65536, 0, -1507353, 0, 0, -1441817, 196608, 2, -1572888, 0, 0, -1507352, 65536, 1, -1441816, 196608, 2, -1572887, 65536, 0, -1507351, 65536, 0, -1441815, 196608, 2, -1572886, 65536, 1, -1507350, 0, 0, -1441814, 65536, 4, -1310747, 131072, 3, -1245211, 131072, 3, -1179675, 131072, 3, -1376283, 131072, 3, -1376278, 196608, 3, -1310742, 196608, 3, -1245206, 196608, 3, -1179670, 262144, 3, -1507358, 196608, 3, -1572893, 0, 0, -1507357, 0, 0, -1572892, 65536, 1, -1507356, 0, 0, -1703932, 327680, 2, -1638396, 131072, 3, -1703965, 131072, 2, -1638430, 196608, 3, -1703966, 262144, 2, -1572894, 196608, 3, -1638429, 196608, 1, -1638428, 196608, 1, -589833, 262144, 2, -589832, 131072, 2, -589831, 131072, 2, -589830, 131072, 2, -589829, 131072, 2, -589828, 131072, 2, -589827, 131072, 2, -589826, 65536, 5, -655359, 0, 5, -655358, 131072, 2, -655357, 131072, 2, -655356, 131072, 2, -655355, 131072, 2, -655354, 131072, 2, -655353, 131072, 2, -655352, 327680, 2, -655362, 196608, 3, -720895, 131072, 3, 262126, 131072, 2, 262124, 131072, 2, 262125, 131072, 2, 655344, 65536, 1, 720880, 65536, 0, 786416, 65536, 0, 851952, 0, 1, 655345, 65536, 0, 720881, 65536, 1, 786417, 0, 1, 851953, 0, 1, 655346, 0, 1, 720882, 65536, 0, 786418, 0, 0, 851954, 0, 1, 655347, 0, 0, 720883, 0, 1, 786419, 0, 0, 851955, 65536, 1, 917488, 0, 0, 983024, 0, 0, 1048560, 0, 1, 917489, 65536, 0, 983025, 65536, 0, 1048561, 65536, 1, 917490, 0, 1, 983026, 0, 0, 1048562, 65536, 0, 917491, 0, 0, 983027, 65536, 1, 1048563, 65536, 0, 851945, 0, 0, 917481, 65536, 1, 983017, 0, 1, 1048553, 0, 1, 851946, 65536, 0, 917482, 65536, 1, 983018, 0, 1, 1048554, 0, 0, 851947, 0, 0, 917483, 0, 1, 983019, 65536, 1, 1048555, 0, 1, 851948, 65536, 0, 917484, 0, 0, 983020, 0, 1, 1048556, 0, 0, 851949, 0, 0, 917485, 65536, 0, 983021, 65536, 0, 1048557, 0, 0, 851950, 65536, 0, 917486, 65536, 1, 983022, 65536, 1, 1048558, 0, 0, 851951, 0, 0, 917487, 0, 0, 983023, 0, 1, 1048559, 0, 1, 851935, 65536, 1, 917471, 0, 0, 983007, 0, 0, 1048543, 65536, 0, 1114079, 65536, 0, 1179615, 65536, 1, 1245151, 65536, 1, 1310687, 0, 1, 851936, 0, 0, 917472, 0, 1, 983008, 65536, 1, 1048544, 0, 1, 1114080, 65536, 0, 1179616, 0, 0, 1245152, 65536, 1, 1310688, 65536, 0, 851937, 0, 0, 917473, 65536, 1, 983009, 0, 1, 1048545, 65536, 1, 1114081, 0, 0, 1179617, 0, 1, 1245153, 65536, 1, 1310689, 65536, 1, 851938, 0, 0, 917474, 65536, 1, 983010, 65536, 0, 1048546, 65536, 1, 1114082, 0, 1, 1179618, 0, 1, 1245154, 0, 0, 1310690, 0, 1, 851939, 0, 0, 917475, 65536, 1, 983011, 0, 0, 1048547, 65536, 1, 1114083, 65536, 1, 1179619, 0, 1, 1245155, 0, 1, 1310691, 65536, 0, 851940, 0, 0, 917476, 0, 1, 983012, 0, 0, 1048548, 65536, 1, 1114084, 65536, 0, 1179620, 65536, 0, 1245156, 0, 1, 1310692, 0, 0, 851941, 65536, 0, 917477, 65536, 0, 983013, 65536, 1, 1048549, 0, 0, 1114085, 0, 1, 1179621, 0, 0, 1245157, 0, 0, 1310693, 65536, 0, 851942, 0, 0, 917478, 0, 1, 983014, 65536, 0, 1048550, 0, 0, 1114086, 0, 1, 1179622, 65536, 0, 1245158, 65536, 0, 1310694, 65536, 1, 851943, 0, 1, 917479, 0, 0, 983015, 65536, 1, 1048551, 65536, 1, 1114087, 65536, 1, 1179623, 65536, 1, 1245159, 65536, 1, 1310695, 65536, 0, 851944, 65536, 0, 917480, 65536, 0, 983016, 65536, 1, 1048552, 65536, 1, 1114088, 65536, 0, 1179624, 65536, 0, 1245160, 0, 0, 1310696, 65536, 0, 1638362, 65536, 1, 1703898, 0, 1, 1769434, 0, 0, 1834970, 0, 1, 1900506, 65536, 1, 1638363, 65536, 0, 1703899, 0, 1, 1769435, 0, 1, 1834971, 65536, 1, 1900507, 65536, 0, 1638364, 0, 1, 1703900, 65536, 1, 1769436, 0, 1, 1834972, 65536, 0, 1900508, 0, 0, 1638365, 0, 1, 1703901, 0, 1, 1769437, 65536, 1, 1834973, 65536, 0, 1900509, 65536, 0, 1638366, 65536, 1, 1703902, 0, 1, 1769438, 0, 1, 1834974, 65536, 0, 1900510, 0, 1, 1638367, 65536, 1, 1703903, 0, 1, 1769439, 65536, 1, 1834975, 65536, 0, 1900511, 65536, 0, 1966047, 65536, 0, 2031583, 65536, 1, 2097119, 0, 0, 2162655, 65536, 1, 1376224, 65536, 0, 1441760, 0, 1, 1507296, 0, 1, 1572832, 0, 0, 1638368, 65536, 0, 1703904, 0, 0, 1769440, 65536, 1, 1834976, 65536, 1, 1900512, 65536, 1, 1966048, 0, 0, 2031584, 0, 0, 2097120, 0, 0, 2162656, 0, 1, 1376225, 0, 1, 1441761, 65536, 1, 1507297, 65536, 1, 1572833, 0, 0, 1638369, 65536, 0, 1703905, 65536, 1, 1769441, 65536, 0, 1834977, 65536, 0, 1900513, 0, 0, 1966049, 65536, 1, 2031585, 65536, 1, 2097121, 65536, 1, 2162657, 0, 1, 1638370, 0, 0, 1703906, 65536, 1, 1769442, 65536, 1, 1834978, 65536, 1, 1900514, 0, 0, 1966050, 0, 1, 2031586, 0, 1, 2097122, 65536, 0, 2162658, 65536, 0, 1966051, 65536, 1, 2031587, 0, 0, 2097123, 0, 1, 2162659, 0, 0, 1966052, 0, 0, 2031588, 0, 1, 2097124, 0, 1, 2162660, 65536, 1, 1966053, 65536, 1, 2031589, 65536, 0, 2097125, 65536, 1, 2162661, 65536, 0, 1966054, 65536, 1, 2031590, 0, 1, 2097126, 0, 1, 2162662, 0, 0, 1966055, 0, 0, 2031591, 0, 1, 2097127, 65536, 1, 2162663, 65536, 0, 1966056, 0, 1, 2031592, 65536, 0, 2097128, 0, 0, 2162664, 65536, 0, 1966057, 0, 0, 2031593, 65536, 1, 2097129, 0, 1, 2162665, 65536, 0, 1572842, 0, 1, 1638378, 0, 0, 1703914, 0, 0, 1769450, 65536, 0, 1834986, 0, 0, 1900522, 65536, 0, 1966058, 0, 0, 2031594, 0, 0, 2097130, 65536, 1, 2162666, 65536, 1, 2228202, 65536, 1, 3276778, 0, 0, 3342314, 65536, 0, 3407850, 65536, 0, 3473386, 0, 1, 1572843, 65536, 1, 1638379, 65536, 1, 1703915, 0, 1, 1769451, 65536, 1, 1834987, 0, 1, 1900523, 65536, 1, 1966059, 65536, 0, 2031595, 0, 0, 2097131, 65536, 0, 2162667, 0, 0, 2228203, 0, 0, 3276779, 0, 0, 3342315, 65536, 1, 3407851, 0, 1, 3473387, 65536, 0, 1572844, 65536, 1, 1638380, 65536, 0, 1703916, 0, 0, 1769452, 65536, 1, 1834988, 65536, 1, 1900524, 0, 0, 1966060, 65536, 1, 2031596, 0, 1, 2097132, 0, 0, 2162668, 65536, 1, 2228204, 65536, 1, 3276780, 0, 1, 3342316, 65536, 1, 3407852, 0, 0, 3473388, 0, 0, 1572845, 65536, 0, 1638381, 0, 0, 1703917, 0, 1, 1769453, 0, 1, 1834989, 0, 1, 1900525, 65536, 0, 1966061, 0, 0, 2031597, 65536, 0, 2097133, 65536, 0, 2162669, 65536, 0, 2228205, 65536, 1, 3276781, 65536, 1, 3342317, 65536, 0, 3407853, 65536, 1, 3473389, 65536, 1, 1572846, 0, 0, 1638382, 65536, 1, 1703918, 65536, 0, 1769454, 65536, 1, 1834990, 65536, 1, 1900526, 65536, 0, 3407854, 0, 0, 3473390, 0, 1, 1572847, 0, 1, 1638383, 0, 1, 1703919, 65536, 1, 1769455, 0, 0, 1834991, 65536, 1, 1900527, 0, 1, 3407855, 0, 0, 3473391, 0, 1, 1114096, 65536, 1, 1179632, 0, 1, 1245168, 65536, 1, 1310704, 0, 1, 1376240, 0, 1, 1441776, 0, 1, 1507312, 65536, 0, 1572848, 0, 0, 1638384, 0, 0, 1703920, 0, 1, 1769456, 0, 0, 1834992, 65536, 0, 1900528, 65536, 1, 3407856, 0, 0, 3473392, 0, 1, 1114097, 0, 0, 1179633, 0, 0, 1245169, 0, 0, 1310705, 65536, 0, 1376241, 65536, 0, 1441777, 0, 0, 1507313, 0, 1, 1572849, 0, 0, 1638385, 65536, 0, 1703921, 65536, 0, 1769457, 0, 0, 1834993, 65536, 1, 1900529, 65536, 1, 2162673, 65536, 0, 2228209, 0, 1, 2293745, 0, 1, 2359281, 65536, 0, 2424817, 0, 0, 2490353, 65536, 1, 2555889, 65536, 1, 2621425, 0, 0, 2686961, 65536, 1, 2752497, 65536, 0, 2818033, 0, 0, 2883569, 0, 0, 2949105, 0, 1, 3014641, 65536, 1, 3407857, 65536, 0, 3473393, 0, 1, 2162674, 0, 1, 2228210, 131072, 0, 2293746, 131072, 0, 2359282, 0, 1, 2424818, 0, 0, 2490354, 65536, 0, 2555890, 65536, 1, 2621426, 0, 1, 2686962, 0, 1, 2752498, 65536, 1, 2818034, 65536, 1, 2883570, 0, 1, 2949106, 65536, 1, 3014642, 0, 0, 3407858, 0, 1, 3473394, 65536, 0, 2162675, 0, 1, 2228211, 131072, 0, 2293747, 131072, 0, 2359283, 65536, 0, 2424819, 65536, 1, 2490355, 65536, 0, 2555891, 65536, 1, 2621427, 65536, 1, 2686963, 65536, 0, 2752499, 0, 0, 2818035, 65536, 0, 2883571, 65536, 0, 2949107, 0, 1, 3014643, 0, 1, 3080179, 0, 1, 3145715, 65536, 0, 3211251, 65536, 1, 3276787, 0, 0, 3342323, 65536, 1, 3407859, 65536, 1, 3473395, 65536, 1, 2162676, 65536, 0, 2228212, 196608, 0, 2293748, 131072, 0, 2359284, 65536, 0, 2424820, 0, 0, 2490356, 0, 1, 2555892, 65536, 0, 2621428, 0, 1, 2686964, 65536, 1, 2752500, 0, 1, 2818036, 0, 1, 2883572, 0, 1, 2949108, 0, 1, 3014644, 0, 1, 3080180, 0, 1, 3145716, 0, 0, 3211252, 0, 1, 3276788, 65536, 1, 3342324, 0, 0, 3407860, 0, 1, 3473396, 65536, 0, 2162677, 0, 0, 2228213, 131072, 0, 2293749, 196608, 0, 2359285, 65536, 0, 2424821, 0, 0, 2490357, 0, 0, 2555893, 65536, 0, 2621429, 65536, 0, 2686965, 0, 1, 2752501, 65536, 0, 2818037, 0, 0, 2883573, 65536, 1, 2949109, 65536, 0, 3014645, 65536, 1, 3407861, 0, 0, 3473397, 0, 0, 2162678, 0, 0, 2228214, 196608, 0, 2293750, 131072, 0, 2359286, 65536, 0, 2424822, 0, 0, 2490358, 65536, 1, 2555894, 0, 1, 2621430, 0, 0, 2686966, 0, 1, 2752502, 65536, 0, 2818038, 0, 0, 2883574, 65536, 1, 2949110, 0, 1, 3014646, 65536, 0, 3407862, 0, 1, 3473398, 65536, 0, 2162679, 65536, 1, 2228215, 196608, 0, 2293751, 196608, 0, 2359287, 0, 0, 3407863, 65536, 0, 3473399, 65536, 0, 2162680, 65536, 1, 2228216, 196608, 0, 2293752, 196608, 0, 2359288, 65536, 0, 3276792, 65536, 0, 3342328, 0, 0, 3407864, 65536, 1, 3473400, 65536, 0, 3538936, 65536, 0, 3604472, 0, 0, 2162681, 65536, 1, 2228217, 196608, 0, 2293753, 131072, 0, 2359289, 65536, 0, 3276793, 0, 0, 3342329, 65536, 1, 3407865, 65536, 1, 3473401, 0, 0, 3538937, 0, 0, 3604473, 65536, 0, 2162682, 0, 0, 2228218, 131072, 0, 2293754, 131072, 0, 2359290, 65536, 1, 3276794, 0, 1, 3342330, 65536, 1, 3407866, 0, 1, 3473402, 65536, 0, 3538938, 65536, 1, 3604474, 0, 0, 2162683, 0, 0, 2228219, 65536, 1, 2293755, 65536, 1, 2359291, 0, 1, 3276795, 65536, 1, 3342331, 0, 0, 3407867, 65536, 1, 3473403, 0, 0, 3538939, 65536, 1, 3604475, 0, 0, 1900540, 65536, 1, 1966076, 65536, 1, 2031612, 65536, 0, 2097148, 65536, 0, 2162684, 65536, 1, 2228220, 0, 1, 2293756, 65536, 0, 2359292, 65536, 0, 2424828, 65536, 1, 2490364, 0, 0, 2555900, 0, 1, 3276796, 0, 0, 3342332, 65536, 1, 3407868, 65536, 1, 3473404, 65536, 0, 3538940, 65536, 0, 3604476, 0, 1, 1900541, 65536, 0, 1966077, 196608, 0, 2031613, 196608, 0, 2097149, 196608, 0, 2162685, 131072, 0, 2228221, 196608, 0, 2293757, 196608, 0, 2424829, 131072, 0, 2490365, 131072, 0, 2555901, 196608, 0, 3276797, 0, 0, 3342333, 0, 0, 3407869, 0, 1, 3473405, 65536, 0, 3538941, 65536, 1, 3604477, 65536, 1, 1900542, 65536, 0, 1966078, 131072, 0, 2031614, 131072, 0, 3276798, 0, 0, 3342334, 65536, 0, 3407870, 0, 1, 3473406, 0, 1, 3538942, 0, 1, 3604478, 0, 1, 655359, 65536, 1, 720895, 0, 0, 786431, 65536, 1, 851967, 65536, 1, 917503, 65536, 1, 983039, 65536, 1, 1048575, 0, 1, 1114111, 65536, 0, 1179647, 65536, 0, 1245183, 65536, 1, 1900543, 0, 0, 1966079, 131072, 0, 2031615, 196608, 0, 2097151, 65536, 1, 3276799, 65536, 0, 3342335, 0, 1, 3407871, 0, 1, 3473407, 65536, 0, 3538943, 65536, 1, 3604479, 65536, 0, 589824, 65536, 0, 655360, 0, 0, 720896, 0, 0, 786432, 65536, 1, 851968, 65536, 0, 917504, 65536, 1, 983040, 0, 1, 1048576, 65536, 0, 1114112, 0, 0, 1179648, 0, 0, 1835008, 65536, 1, 1900544, 196608, 0, 1966080, 196608, 0, 2031616, 0, 1, 3211264, 65536, 0, 3276800, 0, 1, 3342336, 65536, 0, 3407872, 0, 0, 3473408, 0, 1, 3538944, 65536, 0, 1835009, 65536, 1, 1900545, 196608, 0, 1966081, 196608, 0, 2031617, 0, 1, 3211265, 65536, 1, 3276801, 0, 0, 3342337, 0, 1, 3407873, 0, 1, 3473409, 65536, 0, 3538945, 65536, 0, 1835010, 65536, 0, 1900546, 196608, 0, 1966082, 196608, 0, 2031618, 0, 1, 3211266, 65536, 1, 3276802, 0, 1, 3342338, 0, 0, 3407874, 0, 1, 3473410, 0, 0, 3538946, 65536, 0, 1835011, 65536, 0, 1900547, 196608, 0, 1966083, 131072, 0, 2031619, 0, 1, 3342339, 0, 1, 3407875, 0, 0, 1835012, 0, 1, 1900548, 196608, 0, 1966084, 196608, 0, 2031620, 65536, 0, 3342340, 65536, 0, 3407876, 0, 0, 1835013, 65536, 0, 1900549, 131072, 0, 3342341, 65536, 1, 3407877, 65536, 1, 1835014, 0, 1, 1900550, 131072, 0, 3342342, 65536, 0, 3407878, 0, 1, 1835015, 0, 0, 1900551, 131072, 0, 1966087, 131072, 0, 2031623, 65536, 1, 3342343, 65536, 0, 3407879, 0, 0, 1835016, 0, 1, 1900552, 131072, 0, 1966088, 196608, 0, 2031624, 65536, 1, 3342344, 65536, 0, 3407880, 0, 1, 1835017, 65536, 1, 1900553, 131072, 0, 1966089, 196608, 0, 2031625, 0, 1, 3342345, 0, 1, 3407881, 0, 0, 1835018, 0, 1, 1900554, 196608, 0, 1966090, 196608, 0, 2031626, 0, 0, 3080202, 0, 1, 3145738, 65536, 1, 3211274, 65536, 0, 3276810, 0, 0, 3342346, 65536, 0, 3407882, 0, 0, 1835019, 0, 0, 1900555, 131072, 0, 1966091, 196608, 0, 2031627, 65536, 1, 3080203, 0, 0, 3145739, 0, 1, 3211275, 65536, 1, 3276811, 65536, 1, 3342347, 65536, 0, 3407883, 65536, 0, 1835020, 65536, 1, 1900556, 131072, 0, 1966092, 131072, 0, 2031628, 65536, 1, 1835021, 0, 1, 1966093, 131072, 0, 2031629, 0, 1, 1835022, 0, 1, 2031630, 65536, 0, 1835023, 65536, 1, 2031631, 0, 0, 1835024, 65536, 1, 1900560, 196608, 0, 2031632, 131072, 0, 1835025, 0, 1, 1900561, 196608, 0, 1966097, 196608, 0, 2031633, 196608, 0, 1835026, 0, 1, 1900562, 65536, 1, 1966098, 0, 0, 2031634, 65536, 1, 1310719, 65536, 1, 1376255, 0, 1, 1441791, 65536, 1, 1507327, 0, 1, 1572863, 0, 1, 1638399, 65536, 1, 1703935, 65536, 1, 1769471, 65536, 1, 1835007, 65536, 1, 1245184, 0, 0, 1310720, 65536, 0, 1376256, 0, 0, 1441792, 65536, 1, 1507328, 65536, 1, 1572864, 65536, 1, 1638400, 0, 0, 1703936, 65536, 0, 1769472, 0, 1, 2490403, 131072, 0, 2555939, 131072, 0, 2621475, 131072, 0, 2555940, 196608, 0, 2621476, 196608, 0, 2359331, 131072, 0, 2424867, 131072, 0, 2359332, 196608, 0, 1835043, 196608, 0, 1900579, 196608, 0, 1966115, 131072, 0, 2031651, 196608, 0, 2097187, 196608, 0, 2162723, 131072, 0, 2228259, 196608, 0, 2293795, 131072, 0, 1835044, 131072, 0, 1900580, 131072, 0, 1966116, 196608, 0, 2031652, 196608, 0, 2097188, 131072, 0, 2162724, 131072, 0, 2228260, 131072, 0, 2293796, 196608, 0, 1703971, 131072, 0, 1769507, 131072, 0, 1703972, 196608, 0, 1769508, 196608, 0, 1769474, 393216, 1, 1769475, 327680, 1, 1769473, 196608, 1, 1769476, 262144, 0, 1769477, 262144, 1, 1769478, 393216, 1, 1769479, 327680, 0, 1769480, 327680, 1, 1769481, 262144, 1, 1769482, 262144, 1, 1769483, 262144, 1, 1769484, 393216, 1, 1769485, 393216, 1, 1769486, 327680, 0, 1769488, 262144, 1, 1769489, 327680, 1, 1769490, 196608, 1, 3276803, 196608, 1, 3276804, 262144, 0, 3276805, 131072, 1, 3276806, 131072, 1, 3276807, 327680, 0, 3276808, 65536, 0, 3276809, 65536, 0, 3211256, 262144, 0, 3211257, 327680, 0, 3211258, 262144, 0, 3211259, 196608, 1, 3211260, 327680, 0, 3211261, 196608, 1, 3211262, 196608, 1, 3211263, 131072, 1, 3145728, 262144, 0, 3145729, 327680, 0, 3145730, 327680, 0, 3342325, 327680, 0, 3342326, 327680, 0, 3342327, 196608, 1, 3342318, 131072, 1, 3342319, 131072, 1, 3342320, 196608, 1, 3342321, 196608, 1, 3342322, 131072, 1, 2097137, 262144, 0, 2097138, 327680, 1, 2097139, 262144, 1, 2097140, 327680, 1, 2097141, 327680, 1, 2097142, 327680, 0, 2097143, 327680, 1, 2097144, 196608, 1, 2097145, 393216, 1, 2097146, 262144, 0, 2097147, 196608, 1, 1835004, 131072, 1, 1835005, 196608, 1, 1835006, 131072, 1, 3276783, 131072, 2, 3276784, 131072, 2, 3276785, 131072, 2, 3276790, 131072, 2, 3145720, 131072, 2, 3145721, 131072, 2, 3145722, 131072, 2, 3145723, 131072, 2, 3145724, 131072, 2, 3145725, 131072, 2, 3145726, 131072, 2, 3145727, 131072, 2, 3080192, 131072, 2, 3080193, 131072, 2, 3080194, 131072, 2, 3211268, 131072, 2, 3211269, 131072, 2, 3211270, 131072, 2, 3211271, 65536, 5, 3211272, 0, 1, 3211273, 0, 0, 3211267, 0, 5, 3145731, 131072, 3, 3080195, 327680, 2, 3145719, 262144, 2, 3276791, 65536, 5, 3211255, 196608, 3, 3276789, 0, 5, 3145717, 131072, 3, 3211253, 131072, 3, 3080181, 0, 4, 3080183, 327680, 3, 3080182, 196608, 2, 3014647, 131072, 3, 2949111, 131072, 3, 2883575, 131072, 3, 2818039, 131072, 3, 2490359, 131072, 3, 2555895, 131072, 3, 2621431, 131072, 3, 2686967, 131072, 3, 2752503, 131072, 3, 2031598, 131072, 3, 2097134, 131072, 3, 2162670, 131072, 3, 2228206, 131072, 3, 1179634, 131072, 3, 1245170, 131072, 3, 1310706, 131072, 3, 1376242, 131072, 3, 1441778, 131072, 3, 1507314, 131072, 3, 1572850, 131072, 3, 1638386, 131072, 3, 1703922, 131072, 3, 1769458, 131072, 3, 1834994, 131072, 3, 1900530, 131072, 3, 655348, 131072, 3, 720884, 131072, 3, 786420, 131072, 3, 851956, 131072, 3, 917492, 131072, 3, 983028, 131072, 3, 1048564, 131072, 3, 1179625, 131072, 3, 1245161, 131072, 3, 1310697, 131072, 3, 1441762, 131072, 3, 1507298, 0, 5, 1638371, 131072, 3, 1703907, 131072, 3, 1769443, 131072, 3, 1834979, 0, 5, 1572834, 196608, 1, 1572831, 196608, 1, 1572830, 131072, 1, 1572829, 196608, 1, 1572828, 131072, 1, 1572827, 131072, 1, 1572826, 131072, 1, 1507306, 131072, 1, 1507307, 327680, 1, 1507308, 393216, 1, 1507309, 327680, 0, 1507310, 131072, 1, 1507311, 196608, 1, 1900515, 196608, 1, 1900516, 131072, 1, 1900517, 131072, 1, 1900518, 196608, 1, 1900519, 131072, 1, 1900520, 131072, 1, 1900521, 131072, 1, 786399, 131072, 1, 786400, 131072, 1, 786401, 196608, 1, 786402, 196608, 1, 786403, 131072, 1, 786404, 196608, 1, 786405, 131072, 1, 786406, 131072, 1, 786407, 131072, 1, 786408, 196608, 1, 786409, 131072, 1, 786410, 131072, 1, 786411, 196608, 1, 786412, 131072, 1, 786413, 196608, 1, 786414, 196608, 1, 786415, 196608, 1, 1572835, 131072, 3, 3080204, 131072, 3, 3145740, 131072, 3, 3211276, 131072, 3, 3276812, 131072, 3, 3342348, 131072, 3, 3407884, 131072, 3, 2424869, 0, 4, 2490405, 131072, 3, 2555941, 131072, 3, 2621477, 131072, 3, 2424866, 65536, 4, 2490402, 196608, 3, 2555938, 196608, 3, 2621474, 65536, 5, 1835003, 196608, 3, 1900539, 196608, 3, 1966075, 196608, 3, 2097136, 196608, 3, 2162672, 196608, 3, 2228208, 196608, 3, 2293744, 196608, 3, 2359280, 196608, 3, 2424816, 196608, 3, 2490352, 196608, 3, 2555888, 196608, 3, 2621424, 196608, 3, 2686960, 196608, 3, 2752496, 196608, 3, 2818032, 196608, 3, 2883568, 196608, 3, 2949104, 196608, 3, 3014640, 196608, 3, 3145714, 196608, 3, 3211250, 196608, 3, 3276777, 196608, 3, 3342313, 196608, 3, 3407849, 196608, 3, 3473385, 196608, 3, 2031582, 196608, 3, 2097118, 196608, 3, 2162654, 196608, 3, 1572825, 196608, 3, 1638361, 196608, 3, 1703897, 196608, 3, 1769433, 196608, 3, 1834969, 196608, 3, 1900505, 196608, 3, 1966042, 196608, 2, 1966043, 196608, 2, 1966044, 196608, 2, 1966045, 196608, 2, 2228191, 196608, 2, 2228192, 196608, 2, 2228193, 196608, 2, 2228194, 196608, 2, 2228195, 196608, 2, 2228196, 196608, 2, 2228197, 196608, 2, 2228198, 196608, 2, 2228199, 196608, 2, 2228200, 196608, 2, 1966063, 196608, 2, 1966064, 196608, 2, 1966065, 196608, 2, 1114090, 196608, 2, 1114091, 196608, 2, 1114092, 196608, 2, 1114093, 196608, 2, 1114094, 196608, 2, 786398, 196608, 3, 851934, 196608, 3, 917470, 196608, 3, 983006, 196608, 3, 1048542, 196608, 3, 1114078, 196608, 3, 1179614, 196608, 3, 1245150, 196608, 3, 1310686, 196608, 3, 1441759, 196608, 3, 720894, 196608, 3, 786430, 196608, 3, 851966, 196608, 3, 917502, 196608, 3, 983038, 196608, 3, 1048574, 196608, 3, 1114110, 196608, 3, 1179646, 196608, 3, 1245182, 196608, 3, 1310718, 196608, 3, 1376254, 196608, 3, 1441790, 196608, 3, 1507326, 196608, 3, 1572862, 196608, 3, 1638398, 196608, 3, 1703934, 196608, 3, 1048577, 131072, 3, 1114113, 131072, 3, 1179649, 131072, 3, 1245185, 0, 5, 655361, 131072, 3, 720897, 131072, 3, 786433, 131072, 3, 851969, 131072, 3, 917505, 131072, 3, 983041, 131072, 3, 589825, 131072, 3, 655358, 196608, 3, 1114099, 196608, 2, 1376227, 196608, 2, 1376228, 196608, 2, 1376229, 196608, 2, 1376230, 196608, 2, 1376231, 196608, 2, 1376232, 196608, 2, 2424824, 196608, 2, 2424825, 196608, 2, 2424826, 196608, 2, 3080201, 65536, 1, 3145737, 65536, 0, 3538922, 196608, 2, 3538923, 196608, 2, 3538924, 196608, 2, 3538925, 196608, 2, 3538926, 196608, 2, 3538927, 196608, 2, 3538928, 196608, 2, 3538929, 196608, 2, 3538930, 196608, 2, 3538931, 196608, 2, 3538932, 196608, 2, 3538933, 196608, 2, 3538934, 196608, 2, 3670008, 196608, 2, 3670009, 196608, 2, 3670010, 196608, 2, 3670011, 196608, 2, 3670012, 196608, 2, 3670013, 196608, 2, 3670014, 196608, 2, 3670015, 196608, 2, 3604480, 196608, 2, 3604481, 196608, 2, 3604482, 196608, 2, 3473412, 196608, 2, 3473413, 196608, 2, 3473414, 196608, 2, 3473415, 196608, 2, 3473416, 196608, 2, 3473417, 196608, 2, 3473418, 196608, 2, 3473419, 196608, 2, 2490363, 196608, 3, 2424827, 65536, 4, 2555899, 196608, 3, 3473411, 0, 4, 3538947, 131072, 3, 3670007, 262144, 3, 3604471, 196608, 3, 3604483, 327680, 3, 3538935, 65536, 4, 3538921, 262144, 3, 3276782, 0, 5, 3276786, 65536, 5, 2228201, 65536, 4, 2228190, 262144, 3, 1966046, 65536, 4, 1966041, 262144, 3, 1966062, 0, 4, 1966066, 327680, 3, 2031611, 65536, 5, 2031610, 131072, 2, 2031609, 131072, 2, 2031607, 131072, 2, 2031608, 131072, 2, 2031606, 131072, 2, 2031601, 131072, 2, 2031602, 131072, 2, 2031603, 131072, 2, 2031604, 131072, 2, 2031605, 131072, 2, 1376257, 65536, 0, 1441793, 65536, 0, 1507329, 0, 4, 1572865, 131072, 3, 1638401, 131072, 3, 1376258, 0, 1, 1441794, 0, 0, 1507330, 65536, 4, 1572866, 196608, 3, 1638402, 262144, 3, 1376259, 65536, 1, 1441795, 65536, 1, 1507331, 0, 0, 1572867, 65536, 0, 1638403, 196608, 2, 1376260, 65536, 0, 1441796, 0, 1, 1507332, 0, 1, 1572868, 65536, 0, 1638404, 196608, 2, 1376261, 0, 1, 1441797, 65536, 0, 1507333, 65536, 0, 1572869, 65536, 1, 1638405, 196608, 2, 1376262, 65536, 0, 1441798, 0, 1, 1507334, 0, 1, 1572870, 0, 0, 1638406, 196608, 2, 1376263, 0, 0, 1441799, 65536, 1, 1507335, 0, 4, 1572871, 131072, 3, 1638407, 327680, 3, 1376264, 65536, 0, 1441800, 65536, 1, 1507336, 196608, 2, 1376265, 131072, 3, 1441801, 131072, 3, 1507337, 327680, 3, 1310721, 262144, 1, 1310722, 327680, 1, 1310723, 262144, 1, 1310724, 393216, 1, 1310725, 327680, 1, 1310726, 327680, 1, 1310727, 393216, 1, 1310728, 262144, 1, 1310729, 131072, 3, 1245186, 131072, 2, 1245187, 131072, 2, 1245188, 131072, 2, 1245189, 131072, 2, 1245190, 131072, 2, 1245191, 131072, 2, 1245192, 131072, 2, 1245193, 327680, 2, 2031600, 262144, 2, 3080178, 65536, 4, 3080177, 196608, 2, 3080176, 262144, 3, 1769468, 131072, 2, 1769469, 131072, 2, 1769470, 65536, 5, 1769467, 262144, 2, 1703939, 131072, 2, 1703938, 131072, 2, 1703937, 0, 5, 1703940, 131072, 2, 1703941, 131072, 2, 1703942, 131072, 2, 1703943, 131072, 2, 1703944, 131072, 2, 1703945, 131072, 2, 1703946, 131072, 2, 1703947, 131072, 2, 1703948, 131072, 2, 1703949, 131072, 2, 1703950, 131072, 2, 1703951, 131072, 2, 1703952, 131072, 2, 1703953, 131072, 2, 1703954, 131072, 2, 3473420, 327680, 3, 1507290, 131072, 2, 1507291, 131072, 2, 1507292, 131072, 2, 1507293, 131072, 2, 1507294, 131072, 2, 1507295, 65536, 5, 1507299, 327680, 2, 1507289, 262144, 2, 1834984, 131072, 2, 1834983, 131072, 2, 1834982, 131072, 2, 1834981, 131072, 2, 1834980, 131072, 2, 1834985, 65536, 5, 1638377, 196608, 3, 1572841, 196608, 3, 1703913, 196608, 3, 1769449, 196608, 3, 1441775, 65536, 5, 1376239, 196608, 3, 1179631, 196608, 3, 1114095, 65536, 4, 1245167, 196608, 3, 1310703, 196608, 3, 1114098, 0, 4, 1114100, 327680, 3, 720863, 131072, 2, 720864, 131072, 2, 720865, 131072, 2, 720866, 131072, 2, 720867, 131072, 2, 720868, 131072, 2, 720869, 131072, 2, 720870, 131072, 2, 720871, 131072, 2, 720872, 131072, 2, 720873, 131072, 2, 720874, 131072, 2, 720875, 131072, 2, 720876, 131072, 2, 720877, 131072, 2, 720878, 131072, 2, 720879, 65536, 5, 720862, 262144, 2, 655343, 196608, 3, 1376223, 65536, 4, 1376222, 262144, 3, 1376226, 0, 4, 1114089, 0, 4, 1376233, 327680, 3, 1507305, 196608, 3, 1441770, 131072, 2, 1441771, 131072, 2, 1441772, 131072, 2, 1441773, 131072, 2, 1441774, 131072, 2, 1441769, 262144, 2, 2424823, 0, 4, 13, 65536, 1, -65523, 0, 1, 12, 65536, 0, -65524, 65536, 1, 11, 0, 0, -65525, 0, 0, 10, 65536, 1, -65526, 0, 0, 9, 0, 0, -65527, 65536, 1, 65546, 196608, 2, 65545, 196608, 2, 65547, 196608, 2, 65548, 196608, 2, 65549, 196608, 2, -65522, 65536, 1, 14, 65536, 1, -131058, 65536, 0, 65550, 196608, 2, 17, 65536, 0, -65519, 0, 0, -131055, 65536, 1, -196591, 65536, 0, -262127, 0, 0, 16, 0, 0, -65520, 65536, 0, -131056, 0, 1, -196592, 65536, 0, -262128, 65536, 1, 15, 0, 1, -65521, 65536, 0, -131057, 0, 1, -196593, 65536, 0, -262129, 0, 0, -196594, 65536, 0, -262130, 0, 0, -196595, 65536, 5, -262131, 196608, 3, -131059, 196608, 1, 65551, 196608, 2, 65552, 196608, 2, 65553, 196608, 2, -262126, 131072, 3, -196590, 131072, 3, -327662, 131072, 3, -131054, 131072, 3, -65518, 131072, 3, 18, 131072, 3, 65554, 327680, 3, -327663, 0, 1, -393199, 0, 1, -458735, 65536, 1, -327664, 0, 1, -393200, 65536, 0, -458736, 65536, 1, -327665, 0, 1, -393201, 0, 0, -458737, 65536, 0, -327666, 65536, 0, -393202, 65536, 0, -458738, 0, 1, -393203, 196608, 3, -458739, 196608, 3, -327667, 196608, 3, -458734, 131072, 3, -393198, 131072, 3, -524270, 131072, 3, -524271, 196608, 1, -524272, 131072, 1, -524273, 196608, 1, -524274, 131072, 1, -524275, 196608, 3, -589810, 131072, 2, -589809, 131072, 2, -589808, 131072, 2, -589807, 131072, 2, -589806, 327680, 2, -131060, 196608, 1, -131061, 196608, 1, -131062, 131072, 1, -131063, 196608, 1, -196599, 131072, 2, -196598, 131072, 2, -196597, 131072, 2, -196596, 131072, 2, -589811, 262144, 2, 2293737, 196608, 3, 2359273, 196608, 3, 2424809, 196608, 3, 2490345, 196608, 3, 2555881, 196608, 3, 2621417, 196608, 3, 2686953, 196608, 3, 2752489, 196608, 3, 2818025, 196608, 3, 2883561, 196608, 3, 2949097, 196608, 3, 3014633, 196608, 3, 3080169, 196608, 3, 3145705, 196608, 3, 3211241, 196608, 3, 2293738, 65536, 0, 2359274, 65536, 0, 2424810, 0, 0, 2490346, 65536, 1, 2555882, 65536, 1, 2621418, 65536, 1, 2686954, 65536, 1, 2752490, 65536, 1, 2818026, 0, 1, 2883562, 65536, 0, 2949098, 65536, 1, 3014634, 0, 1, 3080170, 0, 0, 3145706, 65536, 1, 3211242, 0, 1, 2293739, 0, 0, 2359275, 65536, 0, 2424811, 0, 1, 2490347, 65536, 1, 2555883, 65536, 0, 2621419, 65536, 1, 2686955, 0, 1, 2752491, 0, 0, 2818027, 0, 0, 2883563, 65536, 1, 2949099, 65536, 1, 3014635, 65536, 0, 3080171, 0, 1, 3145707, 65536, 1, 3211243, 65536, 1, 2293740, 65536, 0, 2359276, 0, 1, 2424812, 65536, 1, 2490348, 0, 1, 2555884, 0, 1, 2621420, 65536, 0, 2686956, 65536, 0, 2752492, 0, 1, 2818028, 0, 0, 2883564, 0, 1, 2949100, 65536, 0, 3014636, 65536, 1, 3080172, 0, 1, 3145708, 65536, 0, 3211244, 0, 0, 2293741, 0, 0, 2359277, 0, 0, 2424813, 65536, 0, 2490349, 65536, 1, 2555885, 65536, 1, 2621421, 65536, 0, 2686957, 0, 0, 2752493, 0, 0, 2818029, 0, 1, 2883565, 65536, 1, 2949101, 65536, 0, 3014637, 65536, 1, 3080173, 0, 1, 3145709, 65536, 0, 3211245, 65536, 0, 2293742, 131072, 3, 2359278, 131072, 3, 2424814, 131072, 3, 2490350, 131072, 3, 2555886, 131072, 3, 2621422, 131072, 3, 2686958, 131072, 3, 2752494, 131072, 3, 2818030, 131072, 3, 2883566, 131072, 3, 2949102, 131072, 3, 3014638, 131072, 3, 3080174, 131072, 3, 3145710, 131072, 3, 3211246, 131072, 3, 2162686, 196608, 0, 2228222, 131072, 0, 2293758, 131072, 0, 2490366, 131072, 0, 2555902, 196608, 0, 2162687, 0, 1, 2228223, 0, 1, 2293759, 196608, 0, 2359295, 196608, 0, 2424831, 196608, 0, 2490367, 0, 0, 2555903, 0, 1, 2097152, 0, 1, 2162688, 65536, 0, 2228224, 196608, 0, 2293760, 131072, 0, 2359296, 196608, 0, 2424832, 0, 0, 2490368, 65536, 0, 2097153, 0, 1, 2162689, 65536, 1, 2228225, 131072, 0, 2293761, 131072, 0, 2359297, 196608, 0, 2424833, 65536, 0, 2490369, 0, 1, 2097154, 65536, 0, 2162690, 65536, 0, 2228226, 131072, 0, 2293762, 196608, 0, 2359298, 131072, 0, 2424834, 0, 1, 2490370, 65536, 1, 2097155, 0, 0, 2162691, 0, 1, 2228227, 131072, 0, 2293763, 196608, 0, 2359299, 131072, 0, 2424835, 65536, 0, 2490371, 0, 0, 2097156, 0, 0, 2162692, 0, 0, 2228228, 196608, 0, 2293764, 131072, 0, 2359300, 131072, 0, 2424836, 0, 0, 2490372, 0, 0, 2097157, 0, 0, 2162693, 0, 0, 2228229, 196608, 0, 2293765, 196608, 0, 2359301, 131072, 0, 2424837, 65536, 1, 2490373, 65536, 0, 2097158, 0, 1, 2162694, 65536, 1, 2293766, 196608, 0, 2359302, 131072, 0, 2424838, 0, 1, 2490374, 65536, 0, 2097159, 65536, 0, 2162695, 65536, 0, 2228231, 131072, 0, 2293767, 196608, 0, 2359303, 196608, 0, 2424839, 65536, 0, 2490375, 65536, 1, 2097160, 65536, 1, 2162696, 65536, 0, 2293768, 196608, 0, 2359304, 196608, 0, 2424840, 65536, 1, 2490376, 0, 1, 2097161, 65536, 0, 2162697, 0, 0, 2228233, 196608, 0, 2293769, 131072, 0, 2359305, 196608, 0, 2424841, 0, 1, 2490377, 65536, 1, 2097162, 0, 0, 2162698, 65536, 1, 2228234, 196608, 0, 2293770, 131072, 0, 2359306, 131072, 0, 2424842, 65536, 1, 2490378, 65536, 0, 2097163, 65536, 0, 2162699, 0, 0, 2228235, 131072, 0, 2293771, 196608, 0, 2359307, 131072, 0, 2424843, 65536, 1, 2490379, 65536, 0, 2097164, 0, 1, 2162700, 0, 1, 2228236, 131072, 0, 2293772, 196608, 0, 2359308, 196608, 0, 2424844, 0, 0, 2490380, 65536, 0, 2097165, 0, 0, 2162701, 65536, 1, 2228237, 0, 1, 2293773, 65536, 0, 2359309, 65536, 0, 2424845, 65536, 1, 2490381, 0, 0, 2097166, 65536, 0, 2162702, 0, 0, 2228238, 0, 1, 2293774, 0, 0, 2359310, 65536, 1, 2424846, 65536, 1, 2490382, 0, 0, 2097167, 0, 0, 2162703, 0, 0, 2228239, 65536, 1, 2293775, 0, 0, 2359311, 65536, 0, 2424847, 0, 0, 2490383, 0, 0, 2097168, 131072, 0, 2162704, 131072, 0, 2228240, 196608, 0, 2293776, 131072, 0, 2359312, 196608, 0, 2424848, 196608, 0, 2490384, 196608, 0, 2097169, 131072, 0, 2162705, 196608, 0, 2228241, 196608, 0, 2293777, 196608, 0, 2359313, 131072, 0, 2424849, 131072, 0, 2490385, 196608, 0, 2097170, 0, 1, 2162706, 65536, 0, 2228242, 0, 0, 2293778, 65536, 1, 2359314, 0, 1, 2490386, 0, 0, 3080200, 65536, 1, 3145736, 65536, 1, 3145735, 196608, 3, 3080199, 196608, 3, 1703955, 327680, 2, 1769491, 131072, 3, 1835027, 131072, 3, 1900563, 131072, 3, 1966099, 131072, 3, 2031635, 131072, 3, 2097171, 131072, 3, 2162707, 131072, 3, 2228243, 131072, 3, 2293779, 131072, 3, 2359315, 131072, 3, 2424851, 131072, 3, 2621435, 196608, 3, 2686971, 196608, 3, 2752507, 196608, 3, 2818043, 196608, 3, 2883579, 262144, 3, 2621436, 65536, 0, 2686972, 0, 0, 2752508, 0, 0, 2818044, 0, 1, 2883580, 196608, 2, 2621437, 196608, 0, 2686973, 131072, 0, 2752509, 131072, 0, 2818045, 65536, 1, 2883581, 196608, 2, 2621438, 131072, 0, 2686974, 131072, 0, 2752510, 196608, 0, 2818046, 65536, 0, 2883582, 196608, 2, 2621439, 0, 0, 2686975, 196608, 0, 2752511, 196608, 0, 2818047, 65536, 0, 2883583, 196608, 2, 2555904, 65536, 0, 2621440, 196608, 0, 2686976, 196608, 0, 2752512, 0, 1, 2818048, 196608, 2, 2555905, 65536, 1, 2621441, 131072, 0, 2686977, 131072, 0, 2752513, 0, 0, 2818049, 196608, 2, 2555906, 0, 0, 2621442, 196608, 0, 2686978, 196608, 0, 2752514, 0, 0, 2818050, 196608, 2, 2555907, 0, 1, 2621443, 196608, 0, 2686979, 131072, 0, 2752515, 0, 1, 2818051, 196608, 2, 2555908, 0, 1, 2621444, 196608, 0, 2686980, 196608, 0, 2752516, 65536, 0, 2818052, 196608, 2, 2621445, 196608, 0, 2686981, 196608, 0, 2752517, 0, 0, 2818053, 196608, 2, 2555910, 65536, 1, 2621446, 196608, 0, 2686982, 131072, 0, 2752518, 65536, 1, 2818054, 196608, 2, 2555911, 65536, 1, 2621447, 196608, 0, 2686983, 131072, 0, 2752519, 65536, 0, 2818055, 65536, 4, 2555912, 0, 1, 2621448, 131072, 0, 2686984, 196608, 0, 2752520, 0, 1, 2818056, 0, 0, 2555913, 0, 0, 2621449, 196608, 0, 2686985, 131072, 0, 2752521, 65536, 1, 2818057, 0, 1, 2555914, 0, 1, 2621450, 196608, 0, 2686986, 131072, 0, 2752522, 65536, 0, 2818058, 65536, 0, 2555915, 65536, 0, 2621451, 131072, 0, 2686987, 196608, 0, 2752523, 65536, 1, 2818059, 0, 1, 2555916, 65536, 0, 2621452, 131072, 0, 2686988, 196608, 0, 2752524, 0, 0, 2818060, 0, 4, 2752525, 65536, 1, 2818061, 196608, 2, 2752526, 65536, 0, 2818062, 196608, 2, 2752527, 0, 1, 2818063, 196608, 2, 2555920, 196608, 0, 2621456, 131072, 0, 2686992, 196608, 0, 2752528, 65536, 1, 2818064, 196608, 2, 2555921, 131072, 0, 2621457, 196608, 0, 2686993, 196608, 0, 2752529, 0, 0, 2818065, 65536, 4, 2555922, 0, 0, 2621458, 65536, 0, 2686994, 0, 1, 2752530, 0, 0, 2818066, 0, 0, 2621459, 0, 5, 2686995, 196608, 1, 2752531, 0, 0, 2818067, 0, 0, 2818068, 0, 0, 2818069, 0, 1, 2818071, 65536, 1, 2818073, 0, 1, 2686996, 131072, 1, 2752532, 0, 1, 2686997, 131072, 1, 2686998, 131072, 1, 2686999, 131072, 1, 2752535, 0, 0, 2687000, 131072, 1, 2687001, 393216, 1, 2752537, 65536, 0, 2687002, 327680, 1, 2752538, 65536, 0, 2687003, 327680, 0, 2752539, 0, 1, 2687004, 327680, 0, 2687005, 393216, 1, 2752541, 0, 0, 2883604, 0, 1, 2883605, 0, 1, 2883608, 65536, 1, 2883609, 0, 4, 2883610, 196608, 2, 2883611, 196608, 2, 2883612, 196608, 2, 2818077, 0, 1, 2883613, 196608, 2, 2621470, 131072, 2, 2883614, 196608, 2, 2621471, 131072, 2, 2883615, 196608, 2, 2621472, 131072, 2, 2883616, 196608, 2, 2621473, 131072, 2, 2883617, 196608, 2, 2883618, 196608, 2, 2883619, 196608, 2, 2883620, 196608, 2, 2883621, 327680, 3, 2687006, 131072, 1, 2687007, 196608, 1, 2687008, 196608, 1, 2687009, 196608, 1, 2687010, 131072, 1, 2818078, 65536, 1, 2818079, 65536, 1, 2752544, 65536, 0, 2818080, 0, 0, 2818081, 0, 0, 2818082, 65536, 1, 2818083, 65536, 1, 2818085, 131072, 3, 2752549, 131072, 3, 2752548, 65536, 1, 2752547, 0, 0, 2687011, 196608, 0, 2687013, 131072, 3, 2687012, 131072, 0, 2883603, 65536, 4, 2883602, 196608, 2, 2883601, 262144, 3, 2621460, 131072, 2, 2621461, 131072, 2, 2621462, 131072, 2, 2621463, 131072, 2, 2621464, 131072, 2, 2621465, 131072, 2, 2621466, 131072, 2, 2621467, 131072, 2, 2621468, 131072, 2, 2621469, 131072, 2, 2490387, 131072, 3, 2555923, 131072, 3, 2949141, 196608, 2, 2949140, 196608, 2, 2949139, 262144, 3, 2949142, 196608, 2, 2949143, 196608, 2, 2949144, 196608, 2, 2949145, 327680, 3, 2883593, 0, 0, 2883592, 65536, 1, 2883591, 196608, 3, 2883594, 0, 1, 2949130, 65536, 1, 2949129, 65536, 0, 2949128, 65536, 1, 2949127, 196608, 3, 3014665, 65536, 0, 3014664, 0, 0, 3014663, 196608, 3, 3014666, 65536, 1, 3014667, 65536, 1, 2949131, 0, 0, 2883595, 0, 0, 2883596, 131072, 3, 2949132, 131072, 3, 3014668, 131072, 3, 2228230, 131072, 0, 2228232, 196608, 0, 1769487, 262144, 7, 2686989, 196608, 0, 2686990, 196608, 0, 2555919, 0, 1, 2621455, 196608, 0, 2686991, 131072, 0, 2424868, 131072, 0, 2490404, 131072, 0, 1966085, 524288, 1, 2555917, 524288, 1, 2555918, 589824, 1, 2621454, 589824, 2, 2621453, 524288, 2, 2883607, 589824, 1, 2752540, 589824, 1, 2818084, 589824, 2, 2752545, 524288, 2, 2752546, 589824, 2, 1966096, 589824, 2, 1638433, 262144, 0, 1572897, 327680, 0, 1572898, 196608, 1, 1638434, 327680, 0, 1638435, 196608, 1, 1572899, 196608, 1, 1572900, 196608, 1, 1638436, 196608, 1, 1638437, 196608, 1, 1572901, 196608, 1, 1638438, 196608, 1, 1572902, 262144, 0, 1572903, 327680, 0, 1638439, 196608, 1, 1638432, 196608, 1, 1572896, 262144, 0, 1507360, 262144, 1, 1507361, 327680, 1, 1507362, 262144, 1, 1507363, 327680, 1, 1507365, 327680, 1, 1507364, 327680, 1, 1507366, 262144, 1, 1507367, 262144, 1, 1703968, 65537, 3, 1769504, 65537, 4, 1835040, 196609, 0, 1900576, 262145, 1, 1703969, 131073, 3, 1769505, 131073, 4, 1835041, 196609, 0, 1900577, 196609, 0, 1703970, 196609, 0, 1769506, 196609, 0, 1835042, 196609, 0, 1900578, 196609, 0, 1703973, 196609, 0, 1769509, 196609, 0, 1835045, 196609, 0, 1900581, 196609, 0, 1703974, 327681, 2, 1769510, 327681, 3, 1835046, 196609, 0, 1900582, 196609, 0, 1703975, 393217, 2, 1769511, 393217, 3, 1835047, 196609, 0, 1900583, 196609, 0, 1900584, 458753, 0, 1900575, 196609, 0, 1900574, 196609, 0, 1835038, 196609, 0, 1835039, 196609, 0, 1769503, 1, 4, 1769502, 196609, 0, 1769512, 458753, 3, 1835048, 196609, 0, 1769513, 196609, 0, 1835049, 196609, 0, 1900585, 196609, 0, 1703976, 458753, 2, 1703977, 262145, 2, 1703967, 1, 3, 1703966, 196609, 0, 1638429, 196608, 3, 1703965, 196608, 3, 1769501, 196608, 3, 1835037, 196608, 3, 1966109, 196608, 3, 2031645, 196608, 3, 2162717, 196608, 3, 2228253, 196608, 3, 2293789, 196608, 3, 2359325, 196608, 3, 2424861, 262144, 3, 2424862, 196608, 2, 2424863, 196608, 2, 2424864, 196608, 2, 2424865, 196608, 2, 2424870, 196608, 2, 2424871, 196608, 2, 2424872, 196608, 2, 2424873, 196608, 2, 1507370, 131072, 3, 1572906, 131072, 3, 1638442, 131072, 3, 1703978, 131072, 3, 1769514, 131072, 3, 1835050, 131072, 3, 1900586, 131072, 3, 1966122, 131072, 3, 2031658, 131072, 3, 2097194, 131072, 3, 2162730, 131072, 3, 2228266, 131072, 3, 2293802, 131072, 3, 2359338, 131072, 3, 2424874, 327680, 3, 1638430, 196609, 0, 1638431, 196609, 0, 1638440, 196609, 0, 1638441, 262145, 1, 1572894, 131072, 1, 1572895, 196608, 1, 1507358, 131072, 1, 1507359, 196608, 1, 1441822, 131072, 1, 1441823, 196608, 1, 1572904, 131072, 1, 1572905, 196608, 1, 1507368, 131072, 1, 1507369, 196608, 1, 1441832, 131072, 1, 1441833, 196608, 1, 1441824, 0, 5, 1441825, 131072, 2, 1441826, 131072, 2, 1441827, 131072, 2, 1441828, 131072, 2, 1441829, 131072, 2, 1441830, 131072, 2, 1441831, 65536, 5, 1376288, 327680, 2, 1376287, 131072, 2, 1376286, 0, 5, 1376296, 131072, 2, 1376297, 65536, 5, 1376295, 262144, 2, 1572893, 196608, 3, 1507357, 196608, 3, 1441821, 262144, 2, 1310750, 131072, 3, 1245214, 131072, 3, 1310761, 196608, 3, 1245225, 196608, 3, 1179689, 196608, 3, 1179678, 131072, 3, 1441834, 327680, 2, 851998, 131072, 3, 917534, 131072, 3, 983070, 131072, 3, 1048606, 131072, 3, 1114142, 131072, 3, 852009, 196608, 3, 917545, 196608, 3, 983081, 196608, 3, 1048617, 196608, 3, 1114153, 196608, 3, 2097181, 196608, 3, 1900573, 196608, 3, 1966110, 0, 1, 1966111, 65536, 1, 1966112, 65536, 1, 1966113, 65536, 0, 1966114, 0, 1, 2031650, 0, 0, 2097186, 65536, 1, 2162722, 65536, 0, 2228258, 0, 0, 2293794, 65536, 1, 2359333, 0, 1, 2293797, 0, 1, 2228261, 65536, 1, 2162725, 65536, 1, 2097189, 0, 0, 2031653, 65536, 0, 1966117, 65536, 0, 1966118, 0, 0, 1966119, 0, 1, 1966120, 0, 0, 1966121, 65536, 0, 2359330, 0, 1, 262127, 131072, 2, 327663, 131072, 1, 327668, 327680, 2, 131060, 196608, 2) layer_4/tile_data = PackedInt32Array(2097150, 655360, 2, 2359293, 655360, 1, 2359294, 720896, 2, 2424830, 655360, 1, 1966085, 720896, 2, 2031621, 655360, 1, 2031622, 720896, 2, 1966086, 655360, 1, 2555909, 655360, 2, 2555917, 655360, 2, 2621453, 720896, 2, 2621454, 720896, 2, 2555918, 655360, 1, 2424850, 655360, 2, 2752533, 655360, 1, 2752534, 720896, 2, 2818070, 720896, 2, 2883606, 655360, 2, 2883607, 720896, 2, 2752536, 720896, 2, 2818072, 655360, 2, 2818074, 720896, 1, 2818075, 720896, 2, 2818076, 720896, 1, 2752540, 720896, 1, 2752543, 655360, 2, 2752542, 655360, 2, 2752546, 720896, 1, 2752545, 655360, 1, 2818084, 655360, 2, 1900558, 655360, 1, 1966094, 655360, 2, 1900559, 720896, 1, 1966095, 720896, 2, 1966096, 655360, 1, 1900557, 720896, 2, 1376286, 131072, 0, 2031646, 65537, 6, 2031647, 65537, 6, 2031648, 65537, 6, 2031649, 65537, 6, 2031654, 65537, 6, 2031655, 65537, 6, 2031656, 65537, 6, 2031657, 65537, 6) -CameraLowerBound = Vector2(0, 0) -CameraUpperBound = Vector2(0, 0) ClearColor = Color(0.105882, 0.0470588, 0.117647, 1) AreaName = "The Arena" MapName = "Depths of the Arena" @@ -685,49 +683,52 @@ position = Vector2(256, -9) position = Vector2(80, 373) [node name="Centurion" parent="Entities" index="7" instance=ExtResource("30_qfl2k")] -material = SubResource("ShaderMaterial_xq8mc") +material = SubResource("ShaderMaterial_ctg4t") position = Vector2(-360, 31) [node name="Centurion2" parent="Entities" index="8" instance=ExtResource("30_qfl2k")] -material = SubResource("ShaderMaterial_w21tu") +material = SubResource("ShaderMaterial_h8que") position = Vector2(-224, 131) [node name="Legionary" parent="Entities" index="9" instance=ExtResource("27_84gw4")] -material = SubResource("ShaderMaterial_bgnx0") +material = SubResource("ShaderMaterial_o5ihe") position = Vector2(-214, 72) [node name="Legionary2" parent="Entities" index="10" instance=ExtResource("27_84gw4")] -material = SubResource("ShaderMaterial_wpwa5") +material = SubResource("ShaderMaterial_6hrf6") position = Vector2(-496, 15) [node name="Legionary3" parent="Entities" index="11" instance=ExtResource("27_84gw4")] -material = SubResource("ShaderMaterial_nayll") +material = SubResource("ShaderMaterial_wipup") position = Vector2(-240, 152) [node name="Legionary4" parent="Entities" index="12" instance=ExtResource("27_84gw4")] -material = SubResource("ShaderMaterial_ng6wy") +material = SubResource("ShaderMaterial_4w0mf") position = Vector2(-300, 384) [node name="Legionary5" parent="Entities" index="13" instance=ExtResource("27_84gw4")] -material = SubResource("ShaderMaterial_vxxuo") +material = SubResource("ShaderMaterial_76uvw") position = Vector2(-300, 401) [node name="Legionary6" parent="Entities" index="14" instance=ExtResource("27_84gw4")] -material = SubResource("ShaderMaterial_xq55r") +material = SubResource("ShaderMaterial_w515t") position = Vector2(-316, 425) [node name="Legionary7" parent="Entities" index="15" instance=ExtResource("27_84gw4")] -material = SubResource("ShaderMaterial_1c5jm") +material = SubResource("ShaderMaterial_1jw68") position = Vector2(-300, 449) [node name="Legionary8" parent="Entities" index="16" instance=ExtResource("27_84gw4")] -material = SubResource("ShaderMaterial_r6iyg") +material = SubResource("ShaderMaterial_88cs5") position = Vector2(-404, 505) [node name="Cultist" parent="Entities" index="17" instance=ExtResource("30_xj4yo")] -material = SubResource("ShaderMaterial_3ca81") +material = SubResource("ShaderMaterial_f3see") position = Vector2(191, 567) +[node name="ArenaEntrance" type="Marker2D" parent="Markers" index="0"] +position = Vector2(576, 431) + [editable path="Props/StaticBookshelf"] [editable path="Props/StaticBookshelf/InteractionTrigger"] [editable path="Props/StaticBookshelf2"] diff --git a/UI/LocationDisplay.cs b/UI/LocationDisplay.cs index eb3ab8a..7d7409e 100644 --- a/UI/LocationDisplay.cs +++ b/UI/LocationDisplay.cs @@ -27,6 +27,7 @@ public partial class LocationDisplay : CenterContainer _subtitle.Visible = map.AreaName != map.MapName; _mapName.Text = map.MapName; _subtitle.Text = map.AreaName; + _animPlayer.Stop(); _animPlayer.Play("show"); } } diff --git a/Utils/World.cs b/Utils/World.cs index f0b0519..db1e751 100644 --- a/Utils/World.cs +++ b/Utils/World.cs @@ -97,7 +97,7 @@ public partial class World : Node EventBus = this.GetEventBus(); EventBus.RequestMoveToArea += (Events.RequestAreaArgs args) => { - MoveToArea(args.Area, args.Connector); + CallDeferred(MethodName.MoveToArea, args.Area, args.Connector); }; EventBus.RegisteredBoss += RegisterBoss; EventBus.DeregisteredBoss += DeregisterBoss; @@ -138,14 +138,17 @@ public partial class World : Node { GD.Print("Loading map " + map.Name); + var root = GetTree().Root; + if (CurrentMap is not null) { + _maps.Update(CurrentMap.SceneFilePath); CurrentMap.Entities.RemoveChild(CurrentPlayer); - GetTree().Root.RemoveChild(CurrentMap); + root.RemoveChild(CurrentMap); CurrentMap.Active = false; } - GetTree().Root.AddChild(map); + root.AddChild(map); InitTilemap(map); CurrentMap = map; @@ -168,11 +171,6 @@ public partial class World : Node public void LoadScene(PackedScene scene) { - if (CurrentMap is not null) - { - _maps.Update(CurrentMap.SceneFilePath); - } - Map map; string path = scene.ResourcePath; @@ -251,19 +249,8 @@ public partial class World : Node private void MovePlayerToConnector(string name) { - // find the first connector with the specified name - // TODO: replace this with event buses - //var connector = CurrentMap.Areas.GetChildren().First((child) => - //{ - // if (child is BoundingBoxes.ConnectorBox connector) - // { - // return connector.Identifier == name; - // } - // return false; - //}) as BoundingBoxes.ConnectorBox; - - //CurrentPlayer.GlobalPosition = connector.GlobalPosition; - CurrentPlayer.GlobalPosition = Vector2.Zero; + var marker = CurrentMap.Markers.GetNode(name); + CurrentPlayer.GlobalPosition = marker?.GlobalPosition ?? Vector2.Zero; } public void MoveToArea(string path, string connector)