From 661f983e1d3e2361738bfe7deb19d1c521169549 Mon Sep 17 00:00:00 2001 From: fate6 Date: Sun, 29 Dec 2024 15:39:10 -0800 Subject: [PATCH] Tsuchinoko Real?! --- .../Slightys Midnight Adventure.gbsproj | 8 + .../Slightys Midnight Adventure.gbsproj.bak | 8 + gb_studio_project/assets/avatars/README.md | 3 + .../assets/backgrounds/Fate6Housef2.png | Bin 0 -> 1580 bytes .../assets/backgrounds/Housef2.png | Bin 0 -> 1615 bytes gb_studio_project/assets/backgrounds/Lab1.png | Bin 0 -> 3382 bytes .../assets/backgrounds/LogoScreen.png | Bin 0 -> 1032 bytes .../assets/backgrounds/Overworld_-_Test_1.png | Bin 0 -> 32688 bytes .../assets/backgrounds/Overworld_-_Test_2.png | Bin 0 -> 17861 bytes .../assets/backgrounds/QuestScreen.png | Bin 0 -> 997 bytes .../assets/backgrounds/README.md | 3 + .../assets/backgrounds/RightField.png | Bin 0 -> 2910 bytes .../assets/backgrounds/SlighHousef2.png | Bin 0 -> 1610 bytes .../assets/backgrounds/Sprite-0003.png | Bin 0 -> 1260 bytes gb_studio_project/assets/backgrounds/cave.png | Bin 0 -> 2352 bytes .../assets/backgrounds/endScreen.png | Bin 0 -> 1322 bytes .../assets/backgrounds/house-wide.png | Bin 0 -> 1365 bytes .../assets/backgrounds/house.png | Bin 0 -> 1273 bytes gb_studio_project/assets/backgrounds/logo.png | Bin 0 -> 500 bytes .../assets/backgrounds/numbars.png | Bin 0 -> 813 bytes .../assets/backgrounds/placeholder.png | Bin 0 -> 2002 bytes .../assets/backgrounds/titlescreen.png | Bin 0 -> 8812 bytes gb_studio_project/assets/emotes/README.md | 3 + gb_studio_project/assets/emotes/anger.png | Bin 0 -> 193 bytes gb_studio_project/assets/emotes/love.png | Bin 0 -> 190 bytes gb_studio_project/assets/emotes/music.png | Bin 0 -> 187 bytes gb_studio_project/assets/emotes/pause.png | Bin 0 -> 180 bytes gb_studio_project/assets/emotes/question.png | Bin 0 -> 187 bytes gb_studio_project/assets/emotes/shock.png | Bin 0 -> 179 bytes gb_studio_project/assets/emotes/sleep.png | Bin 0 -> 190 bytes gb_studio_project/assets/emotes/sweat.png | Bin 0 -> 189 bytes gb_studio_project/assets/fonts/README.md | 3 + .../assets/fonts/Sprite-0003.png | Bin 0 -> 1468 bytes gb_studio_project/assets/fonts/gbs-mono.json | 4 + gb_studio_project/assets/fonts/gbs-mono.png | Bin 0 -> 3508 bytes gb_studio_project/assets/fonts/gbs-var.json | 4 + gb_studio_project/assets/fonts/gbs-var.png | Bin 0 -> 1873 bytes gb_studio_project/assets/fonts/housef2.png | Bin 0 -> 1468 bytes gb_studio_project/assets/music/README.md | 3 + .../assets/music/Rulz_LightMood.uge | Bin 0 -> 98790 bytes .../assets/music/Rulz_Outside.uge | Bin 0 -> 68102 bytes .../assets/music/Rulz_SpaceEmergency.mod | Bin 0 -> 49162 bytes .../assets/music/Rulz_SpaceEmergency.uge | Bin 0 -> 68102 bytes .../assets/music/Rulz_UndergroundCave.uge | Bin 0 -> 72486 bytes gb_studio_project/assets/music/template.mod | Bin 0 -> 52234 bytes gb_studio_project/assets/sounds/README.md | 3 + .../assets/sprites/CharAnimatedSprite.png | Bin 0 -> 1700 bytes gb_studio_project/assets/sprites/README.md | 3 + gb_studio_project/assets/sprites/actor.png | Bin 0 -> 5780 bytes .../assets/sprites/actor_animated.png | Bin 0 -> 2076 bytes gb_studio_project/assets/sprites/bullet.png | Bin 0 -> 2159 bytes gb_studio_project/assets/sprites/cat.png | Bin 0 -> 5641 bytes gb_studio_project/assets/sprites/checkbox.png | Bin 0 -> 2461 bytes gb_studio_project/assets/sprites/dog.png | Bin 0 -> 1732 bytes .../assets/sprites/endScreen.png | Bin 0 -> 1322 bytes .../assets/sprites/hidden_stairs.png | Bin 0 -> 1035 bytes gb_studio_project/assets/sprites/machine.png | Bin 0 -> 1125 bytes gb_studio_project/assets/sprites/moped01.png | Bin 0 -> 491 bytes gb_studio_project/assets/sprites/npc001.png | Bin 0 -> 1807 bytes gb_studio_project/assets/sprites/npc002.png | Bin 0 -> 1843 bytes gb_studio_project/assets/sprites/npc005.png | Bin 0 -> 2116 bytes gb_studio_project/assets/sprites/player.png | Bin 0 -> 1858 bytes gb_studio_project/assets/sprites/sign.png | Bin 0 -> 189 bytes gb_studio_project/assets/sprites/static.png | Bin 0 -> 5757 bytes gb_studio_project/assets/tilesets/README.md | 3 + gb_studio_project/assets/ui/README.md | 3 + gb_studio_project/assets/ui/cursor.png | Bin 0 -> 1876 bytes gb_studio_project/assets/ui/frame.png | Bin 0 -> 5160 bytes gb_studio_project/build/rom/game.ihx | 4970 +++++++++++++++++ gb_studio_project/build/rom/game.map | 3095 ++++++++++ gb_studio_project/build/rom/game.noi | 1953 +++++++ gb_studio_project/build/rom/game.sav | 1 + gb_studio_project/build/rom/game.sym | 1953 +++++++ gb_studio_project/build/src/.gitignore | 29 + gb_studio_project/build/src/Makefile | 35 + gb_studio_project/build/src/Makefile.build | 1 + gb_studio_project/build/src/Makefile.common | 174 + gb_studio_project/build/src/engine.json | 249 + gb_studio_project/build/src/include/actor.h | 81 + .../build/src/include/bankdata.h | 147 + gb_studio_project/build/src/include/camera.h | 32 + .../build/src/include/collision.h | 71 + gb_studio_project/build/src/include/compat.h | 47 + gb_studio_project/build/src/include/core.h | 9 + .../build/src/include/data/actor_0_interact.h | 11 + .../src/include/data/actor_10_interact.h | 11 + .../src/include/data/actor_11_interact.h | 11 + .../src/include/data/actor_12_interact.h | 11 + .../src/include/data/actor_13_interact.h | 11 + .../src/include/data/actor_14_interact.h | 11 + .../src/include/data/actor_15_interact.h | 11 + .../build/src/include/data/actor_1_interact.h | 11 + .../build/src/include/data/actor_2_interact.h | 11 + .../build/src/include/data/actor_3_interact.h | 11 + .../build/src/include/data/actor_4_interact.h | 11 + .../build/src/include/data/actor_5_interact.h | 11 + .../build/src/include/data/actor_6_interact.h | 11 + .../build/src/include/data/actor_7_interact.h | 11 + .../build/src/include/data/actor_8_interact.h | 11 + .../build/src/include/data/actor_9_interact.h | 11 + .../build/src/include/data/bg_cave.h | 11 + .../build/src/include/data/bg_cave_tilemap.h | 11 + .../src/include/data/bg_cave_tilemap_attr.h | 11 + .../build/src/include/data/bg_cave_tileset.h | 11 + .../build/src/include/data/bg_endscreen.h | 11 + .../include/data/bg_endscreen_cgb_tileset.h | 11 + .../src/include/data/bg_endscreen_tilemap.h | 11 + .../include/data/bg_endscreen_tilemap_attr.h | 11 + .../src/include/data/bg_endscreen_tileset.h | 11 + .../build/src/include/data/bg_fate6housef2.h | 11 + .../include/data/bg_fate6housef2_tilemap.h | 11 + .../data/bg_fate6housef2_tilemap_attr.h | 11 + .../include/data/bg_fate6housef2_tileset.h | 11 + .../build/src/include/data/bg_house.h | 11 + .../build/src/include/data/bg_house_tilemap.h | 11 + .../src/include/data/bg_house_tilemap_attr.h | 11 + .../build/src/include/data/bg_house_tileset.h | 11 + .../build/src/include/data/bg_house_wide.h | 11 + .../src/include/data/bg_house_wide_tilemap.h | 11 + .../include/data/bg_house_wide_tilemap_attr.h | 11 + .../src/include/data/bg_house_wide_tileset.h | 11 + .../build/src/include/data/bg_housef2.h | 11 + .../src/include/data/bg_housef2_tilemap.h | 11 + .../include/data/bg_housef2_tilemap_attr.h | 11 + .../src/include/data/bg_housef2_tileset.h | 11 + .../build/src/include/data/bg_lab1.h | 11 + .../build/src/include/data/bg_lab1_tilemap.h | 11 + .../src/include/data/bg_lab1_tilemap_attr.h | 11 + .../build/src/include/data/bg_lab1_tileset.h | 11 + .../build/src/include/data/bg_logoscreen.h | 11 + .../src/include/data/bg_logoscreen_tilemap.h | 11 + .../include/data/bg_logoscreen_tilemap_attr.h | 11 + .../src/include/data/bg_logoscreen_tileset.h | 11 + .../build/src/include/data/bg_outside.h | 11 + .../src/include/data/bg_outside_cgb_tileset.h | 11 + .../src/include/data/bg_outside_tilemap.h | 11 + .../include/data/bg_outside_tilemap_attr.h | 11 + .../src/include/data/bg_outside_tileset.h | 11 + .../src/include/data/bg_overworld_test_1.h | 11 + .../data/bg_overworld_test_1_tilemap.h | 11 + .../data/bg_overworld_test_1_tilemap_attr.h | 11 + .../data/bg_overworld_test_1_tileset.h | 11 + .../build/src/include/data/bg_questscreen.h | 11 + .../src/include/data/bg_questscreen_tilemap.h | 11 + .../data/bg_questscreen_tilemap_attr.h | 11 + .../src/include/data/bg_questscreen_tileset.h | 11 + .../build/src/include/data/bg_slighhousef2.h | 11 + .../include/data/bg_slighhousef2_tilemap.h | 11 + .../data/bg_slighhousef2_tilemap_attr.h | 11 + .../include/data/bg_slighhousef2_tileset.h | 11 + .../build/src/include/data/bg_titlescreen.h | 11 + .../src/include/data/bg_titlescreen_tilemap.h | 11 + .../data/bg_titlescreen_tilemap_attr.h | 11 + .../src/include/data/bg_titlescreen_tileset.h | 11 + .../build/src/include/data/border.h | 16 + .../build/src/include/data/cursor_image.h | 11 + .../build/src/include/data/data_bootstrap.h | 18 + .../build/src/include/data/emote_love.h | 11 + .../build/src/include/data/font_gbs_mono.h | 11 + .../build/src/include/data/frame_image.h | 11 + .../build/src/include/data/game_globals.h | 17 + .../build/src/include/data/game_globals.i | 13 + .../build/src/include/data/music_data.h | 13 + .../build/src/include/data/palette_0.h | 11 + .../build/src/include/data/palette_1.h | 11 + .../build/src/include/data/palette_10.h | 11 + .../build/src/include/data/palette_11.h | 11 + .../build/src/include/data/palette_12.h | 11 + .../build/src/include/data/palette_13.h | 11 + .../build/src/include/data/palette_2.h | 11 + .../build/src/include/data/palette_3.h | 11 + .../build/src/include/data/palette_4.h | 11 + .../build/src/include/data/palette_5.h | 11 + .../build/src/include/data/palette_6.h | 11 + .../build/src/include/data/palette_7.h | 11 + .../build/src/include/data/palette_8.h | 11 + .../build/src/include/data/palette_9.h | 11 + .../build/src/include/data/scene_1.h | 11 + .../build/src/include/data/scene_10.h | 11 + .../src/include/data/scene_10_collisions.h | 12 + .../build/src/include/data/scene_10_init.h | 11 + .../build/src/include/data/scene_11.h | 11 + .../src/include/data/scene_11_collisions.h | 12 + .../build/src/include/data/scene_11_init.h | 11 + .../src/include/data/scene_11_triggers.h | 12 + .../build/src/include/data/scene_12.h | 11 + .../src/include/data/scene_12_collisions.h | 12 + .../build/src/include/data/scene_12_init.h | 11 + .../build/src/include/data/scene_13.h | 11 + .../src/include/data/scene_13_collisions.h | 12 + .../build/src/include/data/scene_13_init.h | 11 + .../build/src/include/data/scene_14.h | 11 + .../build/src/include/data/scene_14_actors.h | 12 + .../src/include/data/scene_14_collisions.h | 12 + .../build/src/include/data/scene_14_init.h | 11 + .../build/src/include/data/scene_14_sprites.h | 12 + .../src/include/data/scene_14_triggers.h | 12 + .../build/src/include/data/scene_15.h | 11 + .../build/src/include/data/scene_15_actors.h | 12 + .../src/include/data/scene_15_collisions.h | 12 + .../build/src/include/data/scene_15_init.h | 11 + .../build/src/include/data/scene_15_sprites.h | 12 + .../build/src/include/data/scene_16.h | 11 + .../src/include/data/scene_16_collisions.h | 12 + .../build/src/include/data/scene_16_init.h | 11 + .../build/src/include/data/scene_17.h | 11 + .../build/src/include/data/scene_17_actors.h | 12 + .../src/include/data/scene_17_collisions.h | 12 + .../build/src/include/data/scene_17_init.h | 11 + .../build/src/include/data/scene_17_sprites.h | 12 + .../src/include/data/scene_17_triggers.h | 12 + .../build/src/include/data/scene_1_actors.h | 12 + .../src/include/data/scene_1_collisions.h | 12 + .../build/src/include/data/scene_1_init.h | 11 + .../build/src/include/data/scene_1_sprites.h | 12 + .../build/src/include/data/scene_1_triggers.h | 12 + .../build/src/include/data/scene_2.h | 11 + .../build/src/include/data/scene_2_actors.h | 12 + .../src/include/data/scene_2_collisions.h | 12 + .../build/src/include/data/scene_2_init.h | 11 + .../build/src/include/data/scene_2_sprites.h | 12 + .../build/src/include/data/scene_2_triggers.h | 12 + .../build/src/include/data/scene_3.h | 11 + .../build/src/include/data/scene_3_actors.h | 12 + .../src/include/data/scene_3_collisions.h | 12 + .../build/src/include/data/scene_3_init.h | 11 + .../build/src/include/data/scene_3_sprites.h | 12 + .../build/src/include/data/scene_3_triggers.h | 12 + .../build/src/include/data/scene_4.h | 11 + .../src/include/data/scene_4_collisions.h | 12 + .../build/src/include/data/scene_4_init.h | 11 + .../build/src/include/data/scene_4_triggers.h | 12 + .../build/src/include/data/scene_5.h | 11 + .../build/src/include/data/scene_5_actors.h | 12 + .../src/include/data/scene_5_collisions.h | 12 + .../build/src/include/data/scene_5_init.h | 11 + .../build/src/include/data/scene_5_sprites.h | 12 + .../build/src/include/data/scene_5_triggers.h | 12 + .../build/src/include/data/scene_6.h | 11 + .../build/src/include/data/scene_6_actors.h | 12 + .../src/include/data/scene_6_collisions.h | 12 + .../build/src/include/data/scene_6_init.h | 11 + .../build/src/include/data/scene_6_sprites.h | 12 + .../build/src/include/data/scene_6_triggers.h | 12 + .../build/src/include/data/scene_7.h | 11 + .../build/src/include/data/scene_7_actors.h | 12 + .../src/include/data/scene_7_collisions.h | 12 + .../build/src/include/data/scene_7_init.h | 11 + .../build/src/include/data/scene_7_sprites.h | 12 + .../build/src/include/data/scene_7_triggers.h | 12 + .../build/src/include/data/scene_8.h | 11 + .../build/src/include/data/scene_8_actors.h | 12 + .../src/include/data/scene_8_collisions.h | 12 + .../build/src/include/data/scene_8_init.h | 11 + .../build/src/include/data/scene_8_sprites.h | 12 + .../build/src/include/data/scene_8_triggers.h | 12 + .../build/src/include/data/scene_9.h | 11 + .../src/include/data/scene_9_collisions.h | 12 + .../build/src/include/data/scene_9_init.h | 11 + .../build/src/include/data/scene_9_triggers.h | 12 + .../build/src/include/data/scene_types.h | 8 + .../build/src/include/data/script_1.h | 11 + .../build/src/include/data/script_input.h | 11 + .../build/src/include/data/script_input_4.h | 11 + .../build/src/include/data/script_input_5.h | 11 + .../build/src/include/data/script_input_6.h | 11 + .../src/include/data/sprite_actor_animated.h | 11 + .../sprite_actor_animated_bank2_tileset.h | 11 + .../data/sprite_actor_animated_tileset.h | 11 + .../build/src/include/data/sprite_cat.h | 11 + .../include/data/sprite_cat_bank2_tileset.h | 11 + .../src/include/data/sprite_cat_tileset.h | 11 + .../include/data/sprite_charanimatedsprite.h | 11 + .../sprite_charanimatedsprite_bank2_tileset.h | 11 + .../data/sprite_charanimatedsprite_tileset.h | 11 + .../build/src/include/data/sprite_checkbox.h | 11 + .../data/sprite_checkbox_bank2_tileset.h | 11 + .../include/data/sprite_checkbox_tileset.h | 11 + .../build/src/include/data/sprite_dog.h | 11 + .../include/data/sprite_dog_bank2_tileset.h | 11 + .../src/include/data/sprite_dog_tileset.h | 11 + .../build/src/include/data/sprite_npc001.h | 11 + .../data/sprite_npc001_bank2_tileset.h | 11 + .../src/include/data/sprite_npc001_tileset.h | 11 + .../build/src/include/data/sprite_npc002.h | 11 + .../data/sprite_npc002_bank2_tileset.h | 11 + .../src/include/data/sprite_npc002_tileset.h | 11 + .../build/src/include/data/sprite_npc005.h | 11 + .../data/sprite_npc005_bank2_tileset.h | 11 + .../src/include/data/sprite_npc005_tileset.h | 11 + .../build/src/include/data/sprite_player.h | 11 + .../data/sprite_player_bank2_tileset.h | 11 + .../src/include/data/sprite_player_tileset.h | 11 + .../build/src/include/data/sprite_sign.h | 11 + .../include/data/sprite_sign_bank2_tileset.h | 11 + .../src/include/data/sprite_sign_tileset.h | 11 + .../build/src/include/data/spritesheet_none.h | 11 + .../build/src/include/data/states_defines.h | 6 + .../src/include/data/trigger_0_interact.h | 11 + .../src/include/data/trigger_10_interact.h | 11 + .../src/include/data/trigger_11_interact.h | 11 + .../src/include/data/trigger_12_interact.h | 11 + .../src/include/data/trigger_13_interact.h | 11 + .../src/include/data/trigger_14_interact.h | 11 + .../src/include/data/trigger_15_interact.h | 11 + .../src/include/data/trigger_16_interact.h | 11 + .../src/include/data/trigger_17_interact.h | 11 + .../src/include/data/trigger_18_interact.h | 11 + .../src/include/data/trigger_19_interact.h | 11 + .../src/include/data/trigger_1_interact.h | 11 + .../src/include/data/trigger_20_interact.h | 11 + .../src/include/data/trigger_21_interact.h | 11 + .../src/include/data/trigger_22_interact.h | 11 + .../src/include/data/trigger_23_interact.h | 11 + .../src/include/data/trigger_24_interact.h | 11 + .../src/include/data/trigger_2_interact.h | 11 + .../src/include/data/trigger_3_interact.h | 11 + .../src/include/data/trigger_4_interact.h | 11 + .../src/include/data/trigger_5_interact.h | 11 + .../src/include/data/trigger_6_interact.h | 11 + .../src/include/data/trigger_7_interact.h | 11 + .../src/include/data/trigger_8_interact.h | 11 + .../src/include/data/trigger_9_interact.h | 11 + .../build/src/include/data_manager.h | 40 + gb_studio_project/build/src/include/events.h | 30 + .../build/src/include/fade_manager.h | 73 + gb_studio_project/build/src/include/flasher.h | 11 + .../build/src/include/game_time.h | 19 + .../build/src/include/gbprinter.h | 136 + .../build/src/include/gbs_types.h | 191 + .../build/src/include/gbt_player.h | 51 + .../build/src/include/hUGEDriver.h | 142 + .../build/src/include/hUGEDriverRoutines.h | 15 + gb_studio_project/build/src/include/input.h | 104 + .../build/src/include/interrupts.h | 14 + .../build/src/include/linked_list.h | 94 + .../build/src/include/load_save.h | 26 + gb_studio_project/build/src/include/macro.h | 10 + gb_studio_project/build/src/include/macro.i | 17 + gb_studio_project/build/src/include/math.h | 121 + .../build/src/include/music_manager.h | 126 + gb_studio_project/build/src/include/palette.h | 26 + .../build/src/include/parallax.h | 26 + .../build/src/include/projectiles.h | 24 + gb_studio_project/build/src/include/rtc.h | 51 + gb_studio_project/build/src/include/scroll.h | 80 + .../build/src/include/sfx_player.h | 51 + .../build/src/include/sgb_border.h | 14 + gb_studio_project/build/src/include/shadow.h | 21 + gb_studio_project/build/src/include/sio.h | 48 + .../build/src/include/states/logo.h | 9 + .../build/src/include/states/topdown.h | 11 + .../build/src/include/states_caller.h | 9 + gb_studio_project/build/src/include/system.h | 18 + gb_studio_project/build/src/include/trigger.h | 51 + gb_studio_project/build/src/include/ui.h | 116 + gb_studio_project/build/src/include/vm.h | 183 + gb_studio_project/build/src/include/vm.i | 1667 ++++++ .../build/src/include/vm_actor.h | 47 + .../build/src/include/vm_camera.h | 16 + .../build/src/include/vm_exceptions.h | 10 + .../build/src/include/vm_gameboy.h | 45 + .../build/src/include/vm_gbprinter.h | 13 + .../build/src/include/vm_load_save.h | 17 + gb_studio_project/build/src/include/vm_math.h | 13 + .../build/src/include/vm_music.h | 21 + .../build/src/include/vm_palette.h | 17 + .../build/src/include/vm_projectiles.h | 12 + gb_studio_project/build/src/include/vm_rtc.h | 15 + .../build/src/include/vm_scene.h | 15 + gb_studio_project/build/src/include/vm_sgb.h | 12 + gb_studio_project/build/src/include/vm_sio.h | 13 + gb_studio_project/build/src/include/vm_ui.h | 32 + .../build/src/lib/gbt_player.lib | Bin 0 -> 28026 bytes .../build/src/lib/hUGEDriver.lib | Bin 0 -> 52616 bytes gb_studio_project/build/src/ph/gbz80.rul | 10 + gb_studio_project/build/src/readme.md | 15 + .../build/src/src/core/absolute.c | 21 + gb_studio_project/build/src/src/core/actor.c | 459 ++ .../build/src/src/core/bankdata.c | 179 + .../build/src/src/core/bootstrap.s | 16 + gb_studio_project/build/src/src/core/camera.c | 45 + gb_studio_project/build/src/src/core/core.c | 237 + .../build/src/src/core/crash_handler.s | 548 ++ .../build/src/src/core/data_manager.c | 355 ++ gb_studio_project/build/src/src/core/events.c | 66 + .../build/src/src/core/fade_manager.c | 349 ++ .../build/src/src/core/flasher.c | 31 + .../build/src/src/core/flasher_s.s | 223 + .../build/src/src/core/game_time.c | 3 + .../build/src/src/core/gbprinter.c | 139 + gb_studio_project/build/src/src/core/input.c | 33 + .../build/src/src/core/interrupt_sio.s | 151 + .../build/src/src/core/interrupt_timer.s | 30 + .../build/src/src/core/interrupts.c | 70 + .../build/src/src/core/load_save.c | 145 + gb_studio_project/build/src/src/core/math.c | 50 + .../build/src/src/core/math_atan2.c | 41 + .../build/src/src/core/music_manager.c | 115 + .../build/src/src/core/palette.c | 77 + .../build/src/src/core/parallax.c | 66 + .../build/src/src/core/projectiles.c | 201 + gb_studio_project/build/src/src/core/scroll.c | 307 + .../build/src/src/core/scroll_a.s | 87 + .../build/src/src/core/set_tile_submap.s | 189 + .../build/src/src/core/sfx_player.c | 147 + .../build/src/src/core/sgb_border.c | 71 + gb_studio_project/build/src/src/core/sio.c | 73 + .../build/src/src/core/states_caller.s | 41 + gb_studio_project/build/src/src/core/system.c | 5 + .../build/src/src/core/trigger.c | 123 + gb_studio_project/build/src/src/core/ui.c | 574 ++ gb_studio_project/build/src/src/core/ui_a.s | 229 + gb_studio_project/build/src/src/core/vm.c | 757 +++ .../build/src/src/core/vm_actor.c | 443 ++ .../build/src/src/core/vm_camera.c | 103 + .../build/src/src/core/vm_gameboy.c | 202 + .../build/src/src/core/vm_gbprinter.c | 25 + .../build/src/src/core/vm_instructions.c | 192 + .../build/src/src/core/vm_load_save.c | 19 + .../build/src/src/core/vm_math.c | 21 + .../build/src/src/core/vm_music.c | 45 + .../build/src/src/core/vm_palette.c | 71 + .../build/src/src/core/vm_projectiles.c | 30 + gb_studio_project/build/src/src/core/vm_rtc.c | 28 + .../build/src/src/core/vm_scene.c | 42 + gb_studio_project/build/src/src/core/vm_sgb.c | 16 + gb_studio_project/build/src/src/core/vm_sio.c | 92 + gb_studio_project/build/src/src/core/vm_ui.c | 296 + .../build/src/src/core/vm_ui_a.s | 208 + .../build/src/src/data/actor_0_interact.s | 148 + .../build/src/src/data/actor_10_interact.s | 30 + .../build/src/src/data/actor_11_interact.s | 30 + .../build/src/src/data/actor_12_interact.s | 30 + .../build/src/src/data/actor_13_interact.s | 30 + .../build/src/src/data/actor_14_interact.s | 30 + .../build/src/src/data/actor_15_interact.s | 35 + .../build/src/src/data/actor_1_interact.s | 44 + .../build/src/src/data/actor_2_interact.s | 75 + .../build/src/src/data/actor_3_interact.s | 39 + .../build/src/src/data/actor_4_interact.s | 30 + .../build/src/src/data/actor_5_interact.s | 65 + .../build/src/src/data/actor_6_interact.s | 30 + .../build/src/src/data/actor_7_interact.s | 44 + .../build/src/src/data/actor_8_interact.s | 35 + .../build/src/src/data/actor_9_interact.s | 30 + .../build/src/src/data/bg_cave.c | 19 + .../build/src/src/data/bg_cave_tilemap.c | 33 + .../build/src/src/data/bg_cave_tilemap_attr.c | 33 + .../build/src/src/data/bg_cave_tileset.c | 37 + .../build/src/src/data/bg_endscreen.c | 20 + .../src/src/data/bg_endscreen_cgb_tileset.c | 41 + .../build/src/src/data/bg_endscreen_tilemap.c | 33 + .../src/src/data/bg_endscreen_tilemap_attr.c | 33 + .../build/src/src/data/bg_endscreen_tileset.c | 141 + .../build/src/src/data/bg_fate6housef2.c | 19 + .../src/src/data/bg_fate6housef2_tilemap.c | 33 + .../src/data/bg_fate6housef2_tilemap_attr.c | 33 + .../src/src/data/bg_fate6housef2_tileset.c | 77 + .../build/src/src/data/bg_house.c | 19 + .../build/src/src/data/bg_house_tilemap.c | 33 + .../src/src/data/bg_house_tilemap_attr.c | 33 + .../build/src/src/data/bg_house_tileset.c | 58 + .../build/src/src/data/bg_house_wide.c | 19 + .../src/src/data/bg_house_wide_tilemap.c | 46 + .../src/src/data/bg_house_wide_tilemap_attr.c | 46 + .../src/src/data/bg_house_wide_tileset.c | 66 + .../build/src/src/data/bg_housef2.c | 19 + .../build/src/src/data/bg_housef2_tilemap.c | 33 + .../src/src/data/bg_housef2_tilemap_attr.c | 33 + .../build/src/src/data/bg_housef2_tileset.c | 77 + .../build/src/src/data/bg_lab1.c | 19 + .../build/src/src/data/bg_lab1_tilemap.c | 40 + .../build/src/src/data/bg_lab1_tilemap_attr.c | 40 + .../build/src/src/data/bg_lab1_tileset.c | 86 + .../build/src/src/data/bg_logoscreen.c | 19 + .../src/src/data/bg_logoscreen_tilemap.c | 33 + .../src/src/data/bg_logoscreen_tilemap_attr.c | 33 + .../src/src/data/bg_logoscreen_tileset.c | 373 ++ .../build/src/src/data/bg_outside.c | 20 + .../src/src/data/bg_outside_cgb_tileset.c | 262 + .../build/src/src/data/bg_outside_tilemap.c | 74 + .../src/src/data/bg_outside_tilemap_attr.c | 74 + .../build/src/src/data/bg_outside_tileset.c | 262 + .../build/src/src/data/bg_overworld_test_1.c | 19 + .../src/data/bg_overworld_test_1_tilemap.c | 370 ++ .../data/bg_overworld_test_1_tilemap_attr.c | 370 ++ .../src/data/bg_overworld_test_1_tileset.c | 124 + .../build/src/src/data/bg_questscreen.c | 19 + .../src/src/data/bg_questscreen_tilemap.c | 33 + .../src/data/bg_questscreen_tilemap_attr.c | 33 + .../src/src/data/bg_questscreen_tileset.c | 133 + .../build/src/src/data/bg_slighhousef2.c | 19 + .../src/src/data/bg_slighhousef2_tilemap.c | 33 + .../src/data/bg_slighhousef2_tilemap_attr.c | 33 + .../src/src/data/bg_slighhousef2_tileset.c | 77 + .../build/src/src/data/bg_titlescreen.c | 19 + .../src/src/data/bg_titlescreen_tilemap.c | 33 + .../src/data/bg_titlescreen_tilemap_attr.c | 33 + .../src/src/data/bg_titlescreen_tileset.c | 373 ++ .../build/src/src/data/cursor_image.c | 11 + .../build/src/src/data/emote_love.c | 14 + .../build/src/src/data/font_gbs_mono.c | 239 + .../build/src/src/data/frame_image.c | 19 + .../build/src/src/data/game_signature.c | 1 + .../build/src/src/data/music/.gitkeep | 0 .../src/data/music/song_rulz_lightmood_Data.c | 1524 +++++ .../src/data/music/song_rulz_outside_0_Data.c | 864 +++ .../music/song_rulz_spaceemergency_0_Data.c | 864 +++ .../music/song_rulz_undergroundcave_Data.c | 996 ++++ .../build/src/src/data/palette_0.c | 24 + .../build/src/src/data/palette_1.c | 24 + .../build/src/src/data/palette_10.c | 24 + .../build/src/src/data/palette_11.c | 24 + .../build/src/src/data/palette_12.c | 24 + .../build/src/src/data/palette_13.c | 25 + .../build/src/src/data/palette_2.c | 24 + .../build/src/src/data/palette_3.c | 24 + .../build/src/src/data/palette_4.c | 24 + .../build/src/src/data/palette_5.c | 24 + .../build/src/src/data/palette_6.c | 24 + .../build/src/src/data/palette_7.c | 24 + .../build/src/src/data/palette_8.c | 24 + .../build/src/src/data/palette_9.c | 24 + .../build/src/src/data/scene_1.c | 39 + .../build/src/src/data/scene_10.c | 33 + .../build/src/src/data/scene_10_collisions.c | 29 + .../build/src/src/data/scene_10_init.s | 27 + .../build/src/src/data/scene_11.c | 35 + .../build/src/src/data/scene_11_collisions.c | 29 + .../build/src/src/data/scene_11_init.s | 37 + .../build/src/src/data/scene_11_triggers.c | 21 + .../build/src/src/data/scene_12.c | 33 + .../build/src/src/data/scene_12_collisions.c | 29 + .../build/src/src/data/scene_12_init.s | 35 + .../build/src/src/data/scene_13.c | 33 + .../build/src/src/data/scene_13_collisions.c | 29 + .../build/src/src/data/scene_13_init.s | 35 + .../build/src/src/data/scene_14.c | 39 + .../build/src/src/data/scene_14_actors.c | 36 + .../build/src/src/data/scene_14_collisions.c | 29 + .../build/src/src/data/scene_14_init.s | 37 + .../build/src/src/data/scene_14_sprites.c | 13 + .../build/src/src/data/scene_14_triggers.c | 21 + .../build/src/src/data/scene_15.c | 37 + .../build/src/src/data/scene_15_actors.c | 126 + .../build/src/src/data/scene_15_collisions.c | 29 + .../build/src/src/data/scene_15_init.s | 161 + .../build/src/src/data/scene_15_sprites.c | 13 + .../build/src/src/data/scene_16.c | 33 + .../build/src/src/data/scene_16_collisions.c | 29 + .../build/src/src/data/scene_16_init.s | 41 + .../build/src/src/data/scene_17.c | 39 + .../build/src/src/data/scene_17_actors.c | 34 + .../build/src/src/data/scene_17_collisions.c | 43 + .../build/src/src/data/scene_17_init.s | 35 + .../build/src/src/data/scene_17_sprites.c | 13 + .../build/src/src/data/scene_17_triggers.c | 21 + .../build/src/src/data/scene_1_actors.c | 211 + .../build/src/src/data/scene_1_collisions.c | 83 + .../build/src/src/data/scene_1_init.s | 37 + .../build/src/src/data/scene_1_sprites.c | 15 + .../build/src/src/data/scene_1_triggers.c | 111 + .../build/src/src/data/scene_2.c | 39 + .../build/src/src/data/scene_2_actors.c | 36 + .../build/src/src/data/scene_2_collisions.c | 29 + .../build/src/src/data/scene_2_init.s | 37 + .../build/src/src/data/scene_2_sprites.c | 13 + .../build/src/src/data/scene_2_triggers.c | 31 + .../build/src/src/data/scene_3.c | 39 + .../build/src/src/data/scene_3_actors.c | 36 + .../build/src/src/data/scene_3_collisions.c | 29 + .../build/src/src/data/scene_3_init.s | 37 + .../build/src/src/data/scene_3_sprites.c | 13 + .../build/src/src/data/scene_3_triggers.c | 21 + .../build/src/src/data/scene_4.c | 35 + .../build/src/src/data/scene_4_collisions.c | 29 + .../build/src/src/data/scene_4_init.s | 37 + .../build/src/src/data/scene_4_triggers.c | 41 + .../build/src/src/data/scene_5.c | 39 + .../build/src/src/data/scene_5_actors.c | 36 + .../build/src/src/data/scene_5_collisions.c | 29 + .../build/src/src/data/scene_5_init.s | 37 + .../build/src/src/data/scene_5_sprites.c | 13 + .../build/src/src/data/scene_5_triggers.c | 21 + .../build/src/src/data/scene_6.c | 39 + .../build/src/src/data/scene_6_actors.c | 36 + .../build/src/src/data/scene_6_collisions.c | 35 + .../build/src/src/data/scene_6_init.s | 37 + .../build/src/src/data/scene_6_sprites.c | 13 + .../build/src/src/data/scene_6_triggers.c | 21 + .../build/src/src/data/scene_7.c | 39 + .../build/src/src/data/scene_7_actors.c | 36 + .../build/src/src/data/scene_7_collisions.c | 29 + .../build/src/src/data/scene_7_init.s | 37 + .../build/src/src/data/scene_7_sprites.c | 13 + .../build/src/src/data/scene_7_triggers.c | 21 + .../build/src/src/data/scene_8.c | 39 + .../build/src/src/data/scene_8_actors.c | 61 + .../build/src/src/data/scene_8_collisions.c | 29 + .../build/src/src/data/scene_8_init.s | 37 + .../build/src/src/data/scene_8_sprites.c | 15 + .../build/src/src/data/scene_8_triggers.c | 31 + .../build/src/src/data/scene_9.c | 35 + .../build/src/src/data/scene_9_collisions.c | 29 + .../build/src/src/data/scene_9_init.s | 37 + .../build/src/src/data/scene_9_triggers.c | 21 + .../build/src/src/data/script_1.s | 21 + .../build/src/src/data/script_engine_init.s | 38 + .../build/src/src/data/script_input.s | 44 + .../build/src/src/data/script_input_4.s | 47 + .../build/src/src/data/script_input_5.s | 14 + .../build/src/src/data/script_input_6.s | 39 + .../build/src/src/data/sounds/.gitkeep | 0 .../src/src/data/sprite_actor_animated.c | 123 + .../sprite_actor_animated_bank2_tileset.c | 23 + .../src/data/sprite_actor_animated_tileset.c | 23 + .../build/src/src/data/sprite_cat.c | 77 + .../src/src/data/sprite_cat_bank2_tileset.c | 15 + .../build/src/src/data/sprite_cat_tileset.c | 15 + .../src/src/data/sprite_charanimatedsprite.c | 123 + .../sprite_charanimatedsprite_bank2_tileset.c | 25 + .../data/sprite_charanimatedsprite_tileset.c | 25 + .../build/src/src/data/sprite_checkbox.c | 83 + .../src/data/sprite_checkbox_bank2_tileset.c | 15 + .../src/src/data/sprite_checkbox_tileset.c | 15 + .../build/src/src/data/sprite_dog.c | 77 + .../src/src/data/sprite_dog_bank2_tileset.c | 15 + .../build/src/src/data/sprite_dog_tileset.c | 15 + .../build/src/src/data/sprite_npc001.c | 95 + .../src/data/sprite_npc001_bank2_tileset.c | 19 + .../src/src/data/sprite_npc001_tileset.c | 19 + .../build/src/src/data/sprite_npc002.c | 95 + .../src/data/sprite_npc002_bank2_tileset.c | 19 + .../src/src/data/sprite_npc002_tileset.c | 19 + .../build/src/src/data/sprite_npc005.c | 123 + .../src/data/sprite_npc005_bank2_tileset.c | 25 + .../src/src/data/sprite_npc005_tileset.c | 25 + .../build/src/src/data/sprite_player.c | 123 + .../src/data/sprite_player_bank2_tileset.c | 25 + .../src/src/data/sprite_player_tileset.c | 25 + .../build/src/src/data/sprite_sign.c | 77 + .../src/src/data/sprite_sign_bank2_tileset.c | 15 + .../build/src/src/data/sprite_sign_tileset.c | 15 + .../build/src/src/data/spritesheet_none.c | 20 + .../src/src/data/tileset_default_frame.c | 22 + .../build/src/src/data/trigger_0_interact.s | 41 + .../build/src/src/data/trigger_10_interact.s | 41 + .../build/src/src/data/trigger_11_interact.s | 41 + .../build/src/src/data/trigger_12_interact.s | 41 + .../build/src/src/data/trigger_13_interact.s | 41 + .../build/src/src/data/trigger_14_interact.s | 41 + .../build/src/src/data/trigger_15_interact.s | 41 + .../build/src/src/data/trigger_16_interact.s | 81 + .../build/src/src/data/trigger_17_interact.s | 41 + .../build/src/src/data/trigger_18_interact.s | 41 + .../build/src/src/data/trigger_19_interact.s | 41 + .../build/src/src/data/trigger_1_interact.s | 41 + .../build/src/src/data/trigger_20_interact.s | 41 + .../build/src/src/data/trigger_21_interact.s | 41 + .../build/src/src/data/trigger_22_interact.s | 41 + .../build/src/src/data/trigger_23_interact.s | 56 + .../build/src/src/data/trigger_24_interact.s | 41 + .../build/src/src/data/trigger_2_interact.s | 41 + .../build/src/src/data/trigger_3_interact.s | 41 + .../build/src/src/data/trigger_4_interact.s | 41 + .../build/src/src/data/trigger_5_interact.s | 41 + .../build/src/src/data/trigger_6_interact.s | 41 + .../build/src/src/data/trigger_7_interact.s | 41 + .../build/src/src/data/trigger_8_interact.s | 41 + .../build/src/src/data/trigger_9_interact.s | 120 + gb_studio_project/build/src/src/main.c | 9 + gb_studio_project/build/src/src/states/logo.c | 18 + .../build/src/src/states/states_ptrs.s | 11 + .../build/src/src/states/topdown.c | 157 + gb_studio_project/build/web/README.md | 25 + gb_studio_project/build/web/binjgb.js | 21 + gb_studio_project/build/web/binjgb.wasm | Bin 0 -> 100722 bytes gb_studio_project/build/web/css/style.css | 367 ++ gb_studio_project/build/web/index.html | 35 + gb_studio_project/build/web/js/debugger.js | 567 ++ gb_studio_project/build/web/js/script.js | 1386 +++++ gb_studio_project/build/web/rom/README.md | 1 + gb_studio_project/build/web/rom/game.gbc | Bin 0 -> 262144 bytes gb_studio_project/plugins/README.md | 3 + .../project/backgrounds/cave.gbsres | 13 + .../project/backgrounds/cave.gbsres.bak | 13 + .../project/backgrounds/endscreen.gbsres | 13 + .../project/backgrounds/endscreen.gbsres.bak | 13 + .../project/backgrounds/fate6housef2.gbsres | 13 + .../backgrounds/fate6housef2.gbsres.bak | 13 + .../project/backgrounds/house-wide.gbsres | 13 + .../project/backgrounds/house-wide.gbsres.bak | 13 + .../project/backgrounds/house.gbsres | 13 + .../project/backgrounds/house.gbsres.bak | 13 + .../project/backgrounds/housef2.gbsres | 13 + .../project/backgrounds/housef2.gbsres.bak | 13 + .../project/backgrounds/lab1.gbsres | 13 + .../project/backgrounds/lab1.gbsres.bak | 13 + .../project/backgrounds/logo.gbsres | 13 + .../project/backgrounds/logo.gbsres.bak | 13 + .../project/backgrounds/logoscreen.gbsres | 13 + .../project/backgrounds/logoscreen.gbsres.bak | 13 + .../project/backgrounds/numbars.gbsres | 12 + .../project/backgrounds/outside.gbsres.bak | 13 + .../backgrounds/overworld_-_test_1.gbsres | 13 + .../backgrounds/overworld_-_test_1.gbsres.bak | 13 + .../backgrounds/overworld_-_test_2.gbsres | 13 + .../backgrounds/overworld_-_test_2.gbsres.bak | 13 + .../project/backgrounds/placeholder.gbsres | 13 + .../project/backgrounds/questscreen.gbsres | 13 + .../backgrounds/questscreen.gbsres.bak | 13 + .../project/backgrounds/rightfield.gbsres | 13 + .../project/backgrounds/slighhousef2.gbsres | 13 + .../backgrounds/slighhousef2.gbsres.bak | 13 + .../project/backgrounds/sprite-0003.gbsres | 13 + .../backgrounds/sprite-0003.gbsres.bak | 13 + .../project/backgrounds/titlescreen.gbsres | 13 + .../backgrounds/titlescreen.gbsres.bak | 13 + gb_studio_project/project/emotes/anger.gbsres | 9 + gb_studio_project/project/emotes/love.gbsres | 9 + gb_studio_project/project/emotes/music.gbsres | 9 + gb_studio_project/project/emotes/pause.gbsres | 9 + .../project/emotes/question.gbsres | 9 + gb_studio_project/project/emotes/shock.gbsres | 9 + gb_studio_project/project/emotes/sleep.gbsres | 9 + gb_studio_project/project/emotes/sweat.gbsres | 9 + .../project/engine_field_values.gbsres | 9 + .../project/fonts/gbs_mono.gbsres | 10 + .../project/fonts/gbs_variable_width.gbsres | 10 + .../project/fonts/housef2.gbsres | 10 + .../project/fonts/sprite-0003.gbsres | 10 + .../project/music/rulz_lightmood.gbsres | 9 + .../project/music/rulz_outside.gbsres | 9 + .../project/music/rulz_outside.gbsres.bak | 9 + .../project/music/rulz_spaceemergency.gbsres | 9 + .../music/rulz_spaceemergency_2.gbsres | 9 + .../project/music/rulz_undergroundcave.gbsres | 9 + .../project/music/template.gbsres | 9 + .../project/palettes/default_bg_1.gbsres | 18 + .../project/palettes/default_bg_2.gbsres | 18 + .../project/palettes/default_bg_3.gbsres | 18 + .../project/palettes/default_bg_4.gbsres | 18 + .../project/palettes/default_bg_5.gbsres | 18 + .../project/palettes/default_bg_6.gbsres | 18 + .../project/palettes/default_sprites.gbsres | 18 + .../project/palettes/default_ui.gbsres | 18 + .../scenes/basement/actors/actor.gbsres.bak | 27 + .../scenes/basement/actors/fate6.gbsres | 81 + .../scenes/basement/actors/fate6.gbsres.bak | 64 + .../project/scenes/basement/scene.gbsres | 38 + .../project/scenes/basement/scene.gbsres.bak | 38 + .../scenes/basement/triggers/trigger.gbsres | 33 + .../basement/triggers/trigger.gbsres.bak | 33 + .../project/scenes/endscreen/scene.gbsres | 38 + .../project/scenes/endscreen/scene.gbsres.bak | 38 + .../scenes/fate6house/actors/actor.gbsres.bak | 53 + .../scenes/fate6house/actors/eevee.gbsres | 117 + .../scenes/fate6house/actors/eevee.gbsres.bak | 107 + .../project/scenes/fate6house/scene.gbsres | 38 + .../scenes/fate6house/scene.gbsres.bak | 38 + .../scenes/fate6house/triggers/trigger.gbsres | 33 + .../fate6house/triggers/trigger.gbsres.bak | 33 + .../fate6house/triggers/trigger_2.gbsres | 33 + .../project/scenes/fate6housef2/scene.gbsres | 38 + .../scenes/fate6housef2/scene.gbsres.bak | 38 + .../fate6housef2/triggers/trigger.gbsres | 33 + .../scenes/field/actors/mob1.gbsres.bak | 27 + .../project/scenes/field/scene.gbsres.bak | 67 + .../scenes/field/triggers/trigger.gbsres.bak | 33 + .../scenes/gunfield/actors/mob1.gbsres | 62 + .../scenes/gunfield/actors/mob1.gbsres.bak | 42 + .../project/scenes/gunfield/scene.gbsres | 81 + .../scenes/gunfield/triggers/trigger.gbsres | 33 + .../project/scenes/lab/scene.gbsres.bak | 23 + .../scenes/mamamidnighthouse/scene.gbsres.bak | 23 + .../triggers/trigger.gbsres.bak | 33 + .../scenes/melonhouse/actors/actor.gbsres.bak | 27 + .../scenes/melonhouse/actors/muttmelon.gbsres | 53 + .../melonhouse/actors/muttmelon.gbsres.bak | 53 + .../project/scenes/melonhouse/scene.gbsres | 38 + .../scenes/melonhouse/scene.gbsres.bak | 38 + .../scenes/melonhouse/triggers/trigger.gbsres | 33 + .../melonhouse/triggers/trigger.gbsres.bak | 33 + .../actors/goober.gbsres.bak | 53 + .../midnightclubhouse/actors/hoseoak.gbsres | 53 + .../actors/hoseoak.gbsres.bak | 53 + .../midnightclubhouse/actors/mousecop.gbsres | 54 + .../actors/mousecop.gbsres.bak | 53 + .../scenes/midnightclubhouse/scene.gbsres | 38 + .../scenes/midnightclubhouse/scene.gbsres.bak | 38 + .../midnightclubhouse/triggers/trigger.gbsres | 33 + .../triggers/trigger_2.gbsres | 33 + .../midnightclubhousef2/actors/manoj.gbsres | 65 + .../actors/manoj.gbsres.bak | 65 + .../scenes/midnightclubhousef2/scene.gbsres | 38 + .../midnightclubhousef2/scene.gbsres.bak | 38 + .../triggers/trigger.gbsres | 33 + .../midnightlibrary/actors/ulora.gbsres | 64 + .../midnightlibrary/actors/ulora.gbsres.bak | 64 + .../scenes/midnightlibrary/scene.gbsres | 38 + .../scenes/midnightlibrary/scene.gbsres.bak | 38 + .../midnightlibrary/triggers/trigger.gbsres | 33 + .../scenes/npcjail/actors/ulora.gbsres.bak | 27 + .../project/scenes/npcjail/scene.gbsres | 23 + .../project/scenes/npcjail/scene.gbsres.bak | 23 + .../project/scenes/nyaalogo/scene.gbsres | 79 + .../project/scenes/nyaalogo/scene.gbsres.bak | 79 + .../scenes/overworld/actors/actor.gbsres | 54 + .../scenes/overworld/actors/actor.gbsres.bak | 54 + .../scenes/overworld/actors/actor_2.gbsres | 54 + .../overworld/actors/actor_2.gbsres.bak | 54 + .../scenes/overworld/actors/actor_3.gbsres | 53 + .../overworld/actors/actor_3.gbsres.bak | 53 + .../scenes/overworld/actors/actor_4.gbsres | 53 + .../overworld/actors/actor_4.gbsres.bak | 53 + .../scenes/overworld/actors/actor_5.gbsres | 53 + .../overworld/actors/actor_5.gbsres.bak | 53 + .../scenes/overworld/actors/actor_6.gbsres | 53 + .../overworld/actors/actor_6.gbsres.bak | 53 + .../scenes/overworld/actors/actor_7.gbsres | 53 + .../overworld/actors/actor_7.gbsres.bak | 53 + .../overworld/actors/actor_8.gbsres.bak | 53 + .../scenes/overworld/actors/kuma.gbsres | 214 + .../scenes/overworld/actors/kuma.gbsres.bak | 125 + .../project/scenes/overworld/scene.gbsres | 40 + .../project/scenes/overworld/scene.gbsres.bak | 40 + .../overworld/triggers/basemententry.gbsres | 87 + .../triggers/basemententry.gbsres.bak | 87 + .../scenes/overworld/triggers/trigger.gbsres | 33 + .../overworld/triggers/trigger.gbsres.bak | 33 + .../overworld/triggers/trigger_10.gbsres.bak | 75 + .../overworld/triggers/trigger_2.gbsres | 33 + .../overworld/triggers/trigger_2.gbsres.bak | 33 + .../overworld/triggers/trigger_3.gbsres | 33 + .../overworld/triggers/trigger_3.gbsres.bak | 33 + .../overworld/triggers/trigger_4.gbsres | 33 + .../overworld/triggers/trigger_4.gbsres.bak | 33 + .../overworld/triggers/trigger_5.gbsres | 169 + .../overworld/triggers/trigger_5.gbsres.bak | 33 + .../overworld/triggers/trigger_6.gbsres | 33 + .../overworld/triggers/trigger_6.gbsres.bak | 169 + .../overworld/triggers/trigger_7.gbsres | 33 + .../overworld/triggers/trigger_7.gbsres.bak | 33 + .../overworld/triggers/trigger_8.gbsres | 33 + .../overworld/triggers/trigger_8.gbsres.bak | 33 + .../overworld/triggers/trigger_9.gbsres.bak | 33 + .../scenes/quest_menu/actors/quest1.gbsres | 58 + .../quest_menu/actors/quest1.gbsres.bak | 58 + .../scenes/quest_menu/actors/quest2.gbsres | 56 + .../quest_menu/actors/quest2.gbsres.bak | 56 + .../scenes/quest_menu/actors/quest3.gbsres | 56 + .../quest_menu/actors/quest3.gbsres.bak | 56 + .../scenes/quest_menu/actors/quest4.gbsres | 56 + .../quest_menu/actors/quest4.gbsres.bak | 56 + .../scenes/quest_menu/actors/quest5.gbsres | 55 + .../project/scenes/quest_menu/scene.gbsres | 51 + .../scenes/quest_menu/scene.gbsres.bak | 51 + .../scenes/scene_15/actors/actor.gbsres.bak | 27 + .../scenes/scene_15/actors/actor_2.gbsres.bak | 27 + .../scenes/scene_15/actors/quest2.gbsres.bak | 44 + .../project/scenes/scene_3/scene.gbsres.bak | 22 + .../project/scenes/slighhousef2/scene.gbsres | 38 + .../scenes/slighhousef2/scene.gbsres.bak | 38 + .../slighhousef2/triggers/trigger.gbsres | 33 + .../slighshouse/actors/actor.gbsres.bak | 97 + .../project/scenes/slighshouse/scene.gbsres | 39 + .../scenes/slighshouse/scene.gbsres.bak | 38 + .../slighshouse/triggers/starttext.gbsres | 79 + .../slighshouse/triggers/starttext.gbsres.bak | 69 + .../slighshouse/triggers/trigger.gbsres | 33 + .../slighshouse/triggers/trigger.gbsres.bak | 33 + .../slighshouse/triggers/trigger_2.gbsres | 33 + .../slighshouse/triggers/trigger_3.gbsres.bak | 68 + .../project/scenes/startscreen/scene.gbsres | 58 + .../scenes/startscreen/scene.gbsres.bak | 58 + .../scenes/tappyhouse/actors/actor.gbsres | 65 + .../scenes/tappyhouse/actors/actor.gbsres.bak | 65 + .../project/scenes/tappyhouse/scene.gbsres | 38 + .../scenes/tappyhouse/scene.gbsres.bak | 38 + .../scenes/tappyhouse/triggers/trigger.gbsres | 33 + .../tappyhouse/triggers/trigger.gbsres.bak | 33 + .../project/scripts/questmenu.gbsres | 48 + gb_studio_project/project/settings.gbsres | 89 + gb_studio_project/project/settings.gbsres.bak | 89 + .../project/sprites/actor.gbsres | 182 + .../project/sprites/actor_animated.gbsres | 356 ++ .../project/sprites/bullet.gbsres | 128 + gb_studio_project/project/sprites/cat.gbsres | 128 + .../project/sprites/charanimatedsprite.gbsres | 356 ++ .../project/sprites/checkbox.gbsres | 159 + gb_studio_project/project/sprites/dog.gbsres | 128 + .../project/sprites/endscreen.gbsres | 101 + .../project/sprites/hidden_stairs.gbsres | 128 + .../project/sprites/machine.gbsres | 159 + .../project/sprites/moped01.gbsres | 182 + .../project/sprites/npc001.gbsres | 182 + .../project/sprites/npc002.gbsres | 182 + .../project/sprites/npc005.gbsres | 356 ++ .../project/sprites/player.gbsres | 356 ++ gb_studio_project/project/sprites/sign.gbsres | 128 + .../project/sprites/static.gbsres | 128 + .../project/user_settings.gbsres | 31 + .../project/user_settings.gbsres.bak | 31 + gb_studio_project/project/variables.gbsres | 85 + .../project/variables.gbsres.bak | 85 + 906 files changed, 57143 insertions(+) create mode 100644 gb_studio_project/Slightys Midnight Adventure.gbsproj create mode 100644 gb_studio_project/Slightys Midnight Adventure.gbsproj.bak create mode 100644 gb_studio_project/assets/avatars/README.md create mode 100644 gb_studio_project/assets/backgrounds/Fate6Housef2.png create mode 100644 gb_studio_project/assets/backgrounds/Housef2.png create mode 100644 gb_studio_project/assets/backgrounds/Lab1.png create mode 100644 gb_studio_project/assets/backgrounds/LogoScreen.png create mode 100644 gb_studio_project/assets/backgrounds/Overworld_-_Test_1.png create mode 100644 gb_studio_project/assets/backgrounds/Overworld_-_Test_2.png create mode 100644 gb_studio_project/assets/backgrounds/QuestScreen.png create mode 100644 gb_studio_project/assets/backgrounds/README.md create mode 100644 gb_studio_project/assets/backgrounds/RightField.png create mode 100644 gb_studio_project/assets/backgrounds/SlighHousef2.png create mode 100644 gb_studio_project/assets/backgrounds/Sprite-0003.png create mode 100644 gb_studio_project/assets/backgrounds/cave.png create mode 100644 gb_studio_project/assets/backgrounds/endScreen.png create mode 100644 gb_studio_project/assets/backgrounds/house-wide.png create mode 100644 gb_studio_project/assets/backgrounds/house.png create mode 100644 gb_studio_project/assets/backgrounds/logo.png create mode 100644 gb_studio_project/assets/backgrounds/numbars.png create mode 100644 gb_studio_project/assets/backgrounds/placeholder.png create mode 100644 gb_studio_project/assets/backgrounds/titlescreen.png create mode 100644 gb_studio_project/assets/emotes/README.md create mode 100644 gb_studio_project/assets/emotes/anger.png create mode 100644 gb_studio_project/assets/emotes/love.png create mode 100644 gb_studio_project/assets/emotes/music.png create mode 100644 gb_studio_project/assets/emotes/pause.png create mode 100644 gb_studio_project/assets/emotes/question.png create mode 100644 gb_studio_project/assets/emotes/shock.png create mode 100644 gb_studio_project/assets/emotes/sleep.png create mode 100644 gb_studio_project/assets/emotes/sweat.png create mode 100644 gb_studio_project/assets/fonts/README.md create mode 100644 gb_studio_project/assets/fonts/Sprite-0003.png create mode 100644 gb_studio_project/assets/fonts/gbs-mono.json create mode 100644 gb_studio_project/assets/fonts/gbs-mono.png create mode 100644 gb_studio_project/assets/fonts/gbs-var.json create mode 100644 gb_studio_project/assets/fonts/gbs-var.png create mode 100644 gb_studio_project/assets/fonts/housef2.png create mode 100644 gb_studio_project/assets/music/README.md create mode 100644 gb_studio_project/assets/music/Rulz_LightMood.uge create mode 100644 gb_studio_project/assets/music/Rulz_Outside.uge create mode 100644 gb_studio_project/assets/music/Rulz_SpaceEmergency.mod create mode 100644 gb_studio_project/assets/music/Rulz_SpaceEmergency.uge create mode 100644 gb_studio_project/assets/music/Rulz_UndergroundCave.uge create mode 100644 gb_studio_project/assets/music/template.mod create mode 100644 gb_studio_project/assets/sounds/README.md create mode 100644 gb_studio_project/assets/sprites/CharAnimatedSprite.png create mode 100644 gb_studio_project/assets/sprites/README.md create mode 100644 gb_studio_project/assets/sprites/actor.png create mode 100644 gb_studio_project/assets/sprites/actor_animated.png create mode 100644 gb_studio_project/assets/sprites/bullet.png create mode 100644 gb_studio_project/assets/sprites/cat.png create mode 100644 gb_studio_project/assets/sprites/checkbox.png create mode 100644 gb_studio_project/assets/sprites/dog.png create mode 100644 gb_studio_project/assets/sprites/endScreen.png create mode 100644 gb_studio_project/assets/sprites/hidden_stairs.png create mode 100644 gb_studio_project/assets/sprites/machine.png create mode 100644 gb_studio_project/assets/sprites/moped01.png create mode 100644 gb_studio_project/assets/sprites/npc001.png create mode 100644 gb_studio_project/assets/sprites/npc002.png create mode 100644 gb_studio_project/assets/sprites/npc005.png create mode 100644 gb_studio_project/assets/sprites/player.png create mode 100644 gb_studio_project/assets/sprites/sign.png create mode 100644 gb_studio_project/assets/sprites/static.png create mode 100644 gb_studio_project/assets/tilesets/README.md create mode 100644 gb_studio_project/assets/ui/README.md create mode 100644 gb_studio_project/assets/ui/cursor.png create mode 100644 gb_studio_project/assets/ui/frame.png create mode 100644 gb_studio_project/build/rom/game.ihx create mode 100644 gb_studio_project/build/rom/game.map create mode 100644 gb_studio_project/build/rom/game.noi create mode 100644 gb_studio_project/build/rom/game.sav create mode 100644 gb_studio_project/build/rom/game.sym create mode 100644 gb_studio_project/build/src/.gitignore create mode 100644 gb_studio_project/build/src/Makefile create mode 100644 gb_studio_project/build/src/Makefile.build create mode 100644 gb_studio_project/build/src/Makefile.common create mode 100644 gb_studio_project/build/src/engine.json create mode 100644 gb_studio_project/build/src/include/actor.h create mode 100644 gb_studio_project/build/src/include/bankdata.h create mode 100644 gb_studio_project/build/src/include/camera.h create mode 100644 gb_studio_project/build/src/include/collision.h create mode 100644 gb_studio_project/build/src/include/compat.h create mode 100644 gb_studio_project/build/src/include/core.h create mode 100644 gb_studio_project/build/src/include/data/actor_0_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_10_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_11_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_12_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_13_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_14_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_15_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_1_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_2_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_3_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_4_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_5_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_6_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_7_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_8_interact.h create mode 100644 gb_studio_project/build/src/include/data/actor_9_interact.h create mode 100644 gb_studio_project/build/src/include/data/bg_cave.h create mode 100644 gb_studio_project/build/src/include/data/bg_cave_tilemap.h create mode 100644 gb_studio_project/build/src/include/data/bg_cave_tilemap_attr.h create mode 100644 gb_studio_project/build/src/include/data/bg_cave_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_endscreen.h create mode 100644 gb_studio_project/build/src/include/data/bg_endscreen_cgb_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_endscreen_tilemap.h create mode 100644 gb_studio_project/build/src/include/data/bg_endscreen_tilemap_attr.h create mode 100644 gb_studio_project/build/src/include/data/bg_endscreen_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_fate6housef2.h create mode 100644 gb_studio_project/build/src/include/data/bg_fate6housef2_tilemap.h create mode 100644 gb_studio_project/build/src/include/data/bg_fate6housef2_tilemap_attr.h create mode 100644 gb_studio_project/build/src/include/data/bg_fate6housef2_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_house.h create mode 100644 gb_studio_project/build/src/include/data/bg_house_tilemap.h create mode 100644 gb_studio_project/build/src/include/data/bg_house_tilemap_attr.h create mode 100644 gb_studio_project/build/src/include/data/bg_house_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_house_wide.h create mode 100644 gb_studio_project/build/src/include/data/bg_house_wide_tilemap.h create mode 100644 gb_studio_project/build/src/include/data/bg_house_wide_tilemap_attr.h create mode 100644 gb_studio_project/build/src/include/data/bg_house_wide_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_housef2.h create mode 100644 gb_studio_project/build/src/include/data/bg_housef2_tilemap.h create mode 100644 gb_studio_project/build/src/include/data/bg_housef2_tilemap_attr.h create mode 100644 gb_studio_project/build/src/include/data/bg_housef2_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_lab1.h create mode 100644 gb_studio_project/build/src/include/data/bg_lab1_tilemap.h create mode 100644 gb_studio_project/build/src/include/data/bg_lab1_tilemap_attr.h create mode 100644 gb_studio_project/build/src/include/data/bg_lab1_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_logoscreen.h create mode 100644 gb_studio_project/build/src/include/data/bg_logoscreen_tilemap.h create mode 100644 gb_studio_project/build/src/include/data/bg_logoscreen_tilemap_attr.h create mode 100644 gb_studio_project/build/src/include/data/bg_logoscreen_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_outside.h create mode 100644 gb_studio_project/build/src/include/data/bg_outside_cgb_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_outside_tilemap.h create mode 100644 gb_studio_project/build/src/include/data/bg_outside_tilemap_attr.h create mode 100644 gb_studio_project/build/src/include/data/bg_outside_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_overworld_test_1.h create mode 100644 gb_studio_project/build/src/include/data/bg_overworld_test_1_tilemap.h create mode 100644 gb_studio_project/build/src/include/data/bg_overworld_test_1_tilemap_attr.h create mode 100644 gb_studio_project/build/src/include/data/bg_overworld_test_1_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_questscreen.h create mode 100644 gb_studio_project/build/src/include/data/bg_questscreen_tilemap.h create mode 100644 gb_studio_project/build/src/include/data/bg_questscreen_tilemap_attr.h create mode 100644 gb_studio_project/build/src/include/data/bg_questscreen_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_slighhousef2.h create mode 100644 gb_studio_project/build/src/include/data/bg_slighhousef2_tilemap.h create mode 100644 gb_studio_project/build/src/include/data/bg_slighhousef2_tilemap_attr.h create mode 100644 gb_studio_project/build/src/include/data/bg_slighhousef2_tileset.h create mode 100644 gb_studio_project/build/src/include/data/bg_titlescreen.h create mode 100644 gb_studio_project/build/src/include/data/bg_titlescreen_tilemap.h create mode 100644 gb_studio_project/build/src/include/data/bg_titlescreen_tilemap_attr.h create mode 100644 gb_studio_project/build/src/include/data/bg_titlescreen_tileset.h create mode 100644 gb_studio_project/build/src/include/data/border.h create mode 100644 gb_studio_project/build/src/include/data/cursor_image.h create mode 100644 gb_studio_project/build/src/include/data/data_bootstrap.h create mode 100644 gb_studio_project/build/src/include/data/emote_love.h create mode 100644 gb_studio_project/build/src/include/data/font_gbs_mono.h create mode 100644 gb_studio_project/build/src/include/data/frame_image.h create mode 100644 gb_studio_project/build/src/include/data/game_globals.h create mode 100644 gb_studio_project/build/src/include/data/game_globals.i create mode 100644 gb_studio_project/build/src/include/data/music_data.h create mode 100644 gb_studio_project/build/src/include/data/palette_0.h create mode 100644 gb_studio_project/build/src/include/data/palette_1.h create mode 100644 gb_studio_project/build/src/include/data/palette_10.h create mode 100644 gb_studio_project/build/src/include/data/palette_11.h create mode 100644 gb_studio_project/build/src/include/data/palette_12.h create mode 100644 gb_studio_project/build/src/include/data/palette_13.h create mode 100644 gb_studio_project/build/src/include/data/palette_2.h create mode 100644 gb_studio_project/build/src/include/data/palette_3.h create mode 100644 gb_studio_project/build/src/include/data/palette_4.h create mode 100644 gb_studio_project/build/src/include/data/palette_5.h create mode 100644 gb_studio_project/build/src/include/data/palette_6.h create mode 100644 gb_studio_project/build/src/include/data/palette_7.h create mode 100644 gb_studio_project/build/src/include/data/palette_8.h create mode 100644 gb_studio_project/build/src/include/data/palette_9.h create mode 100644 gb_studio_project/build/src/include/data/scene_1.h create mode 100644 gb_studio_project/build/src/include/data/scene_10.h create mode 100644 gb_studio_project/build/src/include/data/scene_10_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_10_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_11.h create mode 100644 gb_studio_project/build/src/include/data/scene_11_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_11_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_11_triggers.h create mode 100644 gb_studio_project/build/src/include/data/scene_12.h create mode 100644 gb_studio_project/build/src/include/data/scene_12_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_12_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_13.h create mode 100644 gb_studio_project/build/src/include/data/scene_13_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_13_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_14.h create mode 100644 gb_studio_project/build/src/include/data/scene_14_actors.h create mode 100644 gb_studio_project/build/src/include/data/scene_14_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_14_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_14_sprites.h create mode 100644 gb_studio_project/build/src/include/data/scene_14_triggers.h create mode 100644 gb_studio_project/build/src/include/data/scene_15.h create mode 100644 gb_studio_project/build/src/include/data/scene_15_actors.h create mode 100644 gb_studio_project/build/src/include/data/scene_15_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_15_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_15_sprites.h create mode 100644 gb_studio_project/build/src/include/data/scene_16.h create mode 100644 gb_studio_project/build/src/include/data/scene_16_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_16_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_17.h create mode 100644 gb_studio_project/build/src/include/data/scene_17_actors.h create mode 100644 gb_studio_project/build/src/include/data/scene_17_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_17_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_17_sprites.h create mode 100644 gb_studio_project/build/src/include/data/scene_17_triggers.h create mode 100644 gb_studio_project/build/src/include/data/scene_1_actors.h create mode 100644 gb_studio_project/build/src/include/data/scene_1_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_1_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_1_sprites.h create mode 100644 gb_studio_project/build/src/include/data/scene_1_triggers.h create mode 100644 gb_studio_project/build/src/include/data/scene_2.h create mode 100644 gb_studio_project/build/src/include/data/scene_2_actors.h create mode 100644 gb_studio_project/build/src/include/data/scene_2_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_2_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_2_sprites.h create mode 100644 gb_studio_project/build/src/include/data/scene_2_triggers.h create mode 100644 gb_studio_project/build/src/include/data/scene_3.h create mode 100644 gb_studio_project/build/src/include/data/scene_3_actors.h create mode 100644 gb_studio_project/build/src/include/data/scene_3_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_3_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_3_sprites.h create mode 100644 gb_studio_project/build/src/include/data/scene_3_triggers.h create mode 100644 gb_studio_project/build/src/include/data/scene_4.h create mode 100644 gb_studio_project/build/src/include/data/scene_4_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_4_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_4_triggers.h create mode 100644 gb_studio_project/build/src/include/data/scene_5.h create mode 100644 gb_studio_project/build/src/include/data/scene_5_actors.h create mode 100644 gb_studio_project/build/src/include/data/scene_5_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_5_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_5_sprites.h create mode 100644 gb_studio_project/build/src/include/data/scene_5_triggers.h create mode 100644 gb_studio_project/build/src/include/data/scene_6.h create mode 100644 gb_studio_project/build/src/include/data/scene_6_actors.h create mode 100644 gb_studio_project/build/src/include/data/scene_6_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_6_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_6_sprites.h create mode 100644 gb_studio_project/build/src/include/data/scene_6_triggers.h create mode 100644 gb_studio_project/build/src/include/data/scene_7.h create mode 100644 gb_studio_project/build/src/include/data/scene_7_actors.h create mode 100644 gb_studio_project/build/src/include/data/scene_7_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_7_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_7_sprites.h create mode 100644 gb_studio_project/build/src/include/data/scene_7_triggers.h create mode 100644 gb_studio_project/build/src/include/data/scene_8.h create mode 100644 gb_studio_project/build/src/include/data/scene_8_actors.h create mode 100644 gb_studio_project/build/src/include/data/scene_8_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_8_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_8_sprites.h create mode 100644 gb_studio_project/build/src/include/data/scene_8_triggers.h create mode 100644 gb_studio_project/build/src/include/data/scene_9.h create mode 100644 gb_studio_project/build/src/include/data/scene_9_collisions.h create mode 100644 gb_studio_project/build/src/include/data/scene_9_init.h create mode 100644 gb_studio_project/build/src/include/data/scene_9_triggers.h create mode 100644 gb_studio_project/build/src/include/data/scene_types.h create mode 100644 gb_studio_project/build/src/include/data/script_1.h create mode 100644 gb_studio_project/build/src/include/data/script_input.h create mode 100644 gb_studio_project/build/src/include/data/script_input_4.h create mode 100644 gb_studio_project/build/src/include/data/script_input_5.h create mode 100644 gb_studio_project/build/src/include/data/script_input_6.h create mode 100644 gb_studio_project/build/src/include/data/sprite_actor_animated.h create mode 100644 gb_studio_project/build/src/include/data/sprite_actor_animated_bank2_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_actor_animated_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_cat.h create mode 100644 gb_studio_project/build/src/include/data/sprite_cat_bank2_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_cat_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_charanimatedsprite.h create mode 100644 gb_studio_project/build/src/include/data/sprite_charanimatedsprite_bank2_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_charanimatedsprite_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_checkbox.h create mode 100644 gb_studio_project/build/src/include/data/sprite_checkbox_bank2_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_checkbox_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_dog.h create mode 100644 gb_studio_project/build/src/include/data/sprite_dog_bank2_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_dog_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_npc001.h create mode 100644 gb_studio_project/build/src/include/data/sprite_npc001_bank2_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_npc001_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_npc002.h create mode 100644 gb_studio_project/build/src/include/data/sprite_npc002_bank2_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_npc002_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_npc005.h create mode 100644 gb_studio_project/build/src/include/data/sprite_npc005_bank2_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_npc005_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_player.h create mode 100644 gb_studio_project/build/src/include/data/sprite_player_bank2_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_player_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_sign.h create mode 100644 gb_studio_project/build/src/include/data/sprite_sign_bank2_tileset.h create mode 100644 gb_studio_project/build/src/include/data/sprite_sign_tileset.h create mode 100644 gb_studio_project/build/src/include/data/spritesheet_none.h create mode 100644 gb_studio_project/build/src/include/data/states_defines.h create mode 100644 gb_studio_project/build/src/include/data/trigger_0_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_10_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_11_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_12_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_13_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_14_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_15_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_16_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_17_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_18_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_19_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_1_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_20_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_21_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_22_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_23_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_24_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_2_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_3_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_4_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_5_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_6_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_7_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_8_interact.h create mode 100644 gb_studio_project/build/src/include/data/trigger_9_interact.h create mode 100644 gb_studio_project/build/src/include/data_manager.h create mode 100644 gb_studio_project/build/src/include/events.h create mode 100644 gb_studio_project/build/src/include/fade_manager.h create mode 100644 gb_studio_project/build/src/include/flasher.h create mode 100644 gb_studio_project/build/src/include/game_time.h create mode 100644 gb_studio_project/build/src/include/gbprinter.h create mode 100644 gb_studio_project/build/src/include/gbs_types.h create mode 100644 gb_studio_project/build/src/include/gbt_player.h create mode 100644 gb_studio_project/build/src/include/hUGEDriver.h create mode 100644 gb_studio_project/build/src/include/hUGEDriverRoutines.h create mode 100644 gb_studio_project/build/src/include/input.h create mode 100644 gb_studio_project/build/src/include/interrupts.h create mode 100644 gb_studio_project/build/src/include/linked_list.h create mode 100644 gb_studio_project/build/src/include/load_save.h create mode 100644 gb_studio_project/build/src/include/macro.h create mode 100644 gb_studio_project/build/src/include/macro.i create mode 100644 gb_studio_project/build/src/include/math.h create mode 100644 gb_studio_project/build/src/include/music_manager.h create mode 100644 gb_studio_project/build/src/include/palette.h create mode 100644 gb_studio_project/build/src/include/parallax.h create mode 100644 gb_studio_project/build/src/include/projectiles.h create mode 100644 gb_studio_project/build/src/include/rtc.h create mode 100644 gb_studio_project/build/src/include/scroll.h create mode 100644 gb_studio_project/build/src/include/sfx_player.h create mode 100644 gb_studio_project/build/src/include/sgb_border.h create mode 100644 gb_studio_project/build/src/include/shadow.h create mode 100644 gb_studio_project/build/src/include/sio.h create mode 100644 gb_studio_project/build/src/include/states/logo.h create mode 100644 gb_studio_project/build/src/include/states/topdown.h create mode 100644 gb_studio_project/build/src/include/states_caller.h create mode 100644 gb_studio_project/build/src/include/system.h create mode 100644 gb_studio_project/build/src/include/trigger.h create mode 100644 gb_studio_project/build/src/include/ui.h create mode 100644 gb_studio_project/build/src/include/vm.h create mode 100644 gb_studio_project/build/src/include/vm.i create mode 100644 gb_studio_project/build/src/include/vm_actor.h create mode 100644 gb_studio_project/build/src/include/vm_camera.h create mode 100644 gb_studio_project/build/src/include/vm_exceptions.h create mode 100644 gb_studio_project/build/src/include/vm_gameboy.h create mode 100644 gb_studio_project/build/src/include/vm_gbprinter.h create mode 100644 gb_studio_project/build/src/include/vm_load_save.h create mode 100644 gb_studio_project/build/src/include/vm_math.h create mode 100644 gb_studio_project/build/src/include/vm_music.h create mode 100644 gb_studio_project/build/src/include/vm_palette.h create mode 100644 gb_studio_project/build/src/include/vm_projectiles.h create mode 100644 gb_studio_project/build/src/include/vm_rtc.h create mode 100644 gb_studio_project/build/src/include/vm_scene.h create mode 100644 gb_studio_project/build/src/include/vm_sgb.h create mode 100644 gb_studio_project/build/src/include/vm_sio.h create mode 100644 gb_studio_project/build/src/include/vm_ui.h create mode 100644 gb_studio_project/build/src/lib/gbt_player.lib create mode 100644 gb_studio_project/build/src/lib/hUGEDriver.lib create mode 100644 gb_studio_project/build/src/ph/gbz80.rul create mode 100644 gb_studio_project/build/src/readme.md create mode 100644 gb_studio_project/build/src/src/core/absolute.c create mode 100644 gb_studio_project/build/src/src/core/actor.c create mode 100644 gb_studio_project/build/src/src/core/bankdata.c create mode 100644 gb_studio_project/build/src/src/core/bootstrap.s create mode 100644 gb_studio_project/build/src/src/core/camera.c create mode 100644 gb_studio_project/build/src/src/core/core.c create mode 100644 gb_studio_project/build/src/src/core/crash_handler.s create mode 100644 gb_studio_project/build/src/src/core/data_manager.c create mode 100644 gb_studio_project/build/src/src/core/events.c create mode 100644 gb_studio_project/build/src/src/core/fade_manager.c create mode 100644 gb_studio_project/build/src/src/core/flasher.c create mode 100644 gb_studio_project/build/src/src/core/flasher_s.s create mode 100644 gb_studio_project/build/src/src/core/game_time.c create mode 100644 gb_studio_project/build/src/src/core/gbprinter.c create mode 100644 gb_studio_project/build/src/src/core/input.c create mode 100644 gb_studio_project/build/src/src/core/interrupt_sio.s create mode 100644 gb_studio_project/build/src/src/core/interrupt_timer.s create mode 100644 gb_studio_project/build/src/src/core/interrupts.c create mode 100644 gb_studio_project/build/src/src/core/load_save.c create mode 100644 gb_studio_project/build/src/src/core/math.c create mode 100644 gb_studio_project/build/src/src/core/math_atan2.c create mode 100644 gb_studio_project/build/src/src/core/music_manager.c create mode 100644 gb_studio_project/build/src/src/core/palette.c create mode 100644 gb_studio_project/build/src/src/core/parallax.c create mode 100644 gb_studio_project/build/src/src/core/projectiles.c create mode 100644 gb_studio_project/build/src/src/core/scroll.c create mode 100644 gb_studio_project/build/src/src/core/scroll_a.s create mode 100644 gb_studio_project/build/src/src/core/set_tile_submap.s create mode 100644 gb_studio_project/build/src/src/core/sfx_player.c create mode 100644 gb_studio_project/build/src/src/core/sgb_border.c create mode 100644 gb_studio_project/build/src/src/core/sio.c create mode 100644 gb_studio_project/build/src/src/core/states_caller.s create mode 100644 gb_studio_project/build/src/src/core/system.c create mode 100644 gb_studio_project/build/src/src/core/trigger.c create mode 100644 gb_studio_project/build/src/src/core/ui.c create mode 100644 gb_studio_project/build/src/src/core/ui_a.s create mode 100644 gb_studio_project/build/src/src/core/vm.c create mode 100644 gb_studio_project/build/src/src/core/vm_actor.c create mode 100644 gb_studio_project/build/src/src/core/vm_camera.c create mode 100644 gb_studio_project/build/src/src/core/vm_gameboy.c create mode 100644 gb_studio_project/build/src/src/core/vm_gbprinter.c create mode 100644 gb_studio_project/build/src/src/core/vm_instructions.c create mode 100644 gb_studio_project/build/src/src/core/vm_load_save.c create mode 100644 gb_studio_project/build/src/src/core/vm_math.c create mode 100644 gb_studio_project/build/src/src/core/vm_music.c create mode 100644 gb_studio_project/build/src/src/core/vm_palette.c create mode 100644 gb_studio_project/build/src/src/core/vm_projectiles.c create mode 100644 gb_studio_project/build/src/src/core/vm_rtc.c create mode 100644 gb_studio_project/build/src/src/core/vm_scene.c create mode 100644 gb_studio_project/build/src/src/core/vm_sgb.c create mode 100644 gb_studio_project/build/src/src/core/vm_sio.c create mode 100644 gb_studio_project/build/src/src/core/vm_ui.c create mode 100644 gb_studio_project/build/src/src/core/vm_ui_a.s create mode 100644 gb_studio_project/build/src/src/data/actor_0_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_10_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_11_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_12_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_13_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_14_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_15_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_1_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_2_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_3_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_4_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_5_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_6_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_7_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_8_interact.s create mode 100644 gb_studio_project/build/src/src/data/actor_9_interact.s create mode 100644 gb_studio_project/build/src/src/data/bg_cave.c create mode 100644 gb_studio_project/build/src/src/data/bg_cave_tilemap.c create mode 100644 gb_studio_project/build/src/src/data/bg_cave_tilemap_attr.c create mode 100644 gb_studio_project/build/src/src/data/bg_cave_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_endscreen.c create mode 100644 gb_studio_project/build/src/src/data/bg_endscreen_cgb_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_endscreen_tilemap.c create mode 100644 gb_studio_project/build/src/src/data/bg_endscreen_tilemap_attr.c create mode 100644 gb_studio_project/build/src/src/data/bg_endscreen_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_fate6housef2.c create mode 100644 gb_studio_project/build/src/src/data/bg_fate6housef2_tilemap.c create mode 100644 gb_studio_project/build/src/src/data/bg_fate6housef2_tilemap_attr.c create mode 100644 gb_studio_project/build/src/src/data/bg_fate6housef2_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_house.c create mode 100644 gb_studio_project/build/src/src/data/bg_house_tilemap.c create mode 100644 gb_studio_project/build/src/src/data/bg_house_tilemap_attr.c create mode 100644 gb_studio_project/build/src/src/data/bg_house_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_house_wide.c create mode 100644 gb_studio_project/build/src/src/data/bg_house_wide_tilemap.c create mode 100644 gb_studio_project/build/src/src/data/bg_house_wide_tilemap_attr.c create mode 100644 gb_studio_project/build/src/src/data/bg_house_wide_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_housef2.c create mode 100644 gb_studio_project/build/src/src/data/bg_housef2_tilemap.c create mode 100644 gb_studio_project/build/src/src/data/bg_housef2_tilemap_attr.c create mode 100644 gb_studio_project/build/src/src/data/bg_housef2_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_lab1.c create mode 100644 gb_studio_project/build/src/src/data/bg_lab1_tilemap.c create mode 100644 gb_studio_project/build/src/src/data/bg_lab1_tilemap_attr.c create mode 100644 gb_studio_project/build/src/src/data/bg_lab1_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_logoscreen.c create mode 100644 gb_studio_project/build/src/src/data/bg_logoscreen_tilemap.c create mode 100644 gb_studio_project/build/src/src/data/bg_logoscreen_tilemap_attr.c create mode 100644 gb_studio_project/build/src/src/data/bg_logoscreen_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_outside.c create mode 100644 gb_studio_project/build/src/src/data/bg_outside_cgb_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_outside_tilemap.c create mode 100644 gb_studio_project/build/src/src/data/bg_outside_tilemap_attr.c create mode 100644 gb_studio_project/build/src/src/data/bg_outside_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_overworld_test_1.c create mode 100644 gb_studio_project/build/src/src/data/bg_overworld_test_1_tilemap.c create mode 100644 gb_studio_project/build/src/src/data/bg_overworld_test_1_tilemap_attr.c create mode 100644 gb_studio_project/build/src/src/data/bg_overworld_test_1_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_questscreen.c create mode 100644 gb_studio_project/build/src/src/data/bg_questscreen_tilemap.c create mode 100644 gb_studio_project/build/src/src/data/bg_questscreen_tilemap_attr.c create mode 100644 gb_studio_project/build/src/src/data/bg_questscreen_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_slighhousef2.c create mode 100644 gb_studio_project/build/src/src/data/bg_slighhousef2_tilemap.c create mode 100644 gb_studio_project/build/src/src/data/bg_slighhousef2_tilemap_attr.c create mode 100644 gb_studio_project/build/src/src/data/bg_slighhousef2_tileset.c create mode 100644 gb_studio_project/build/src/src/data/bg_titlescreen.c create mode 100644 gb_studio_project/build/src/src/data/bg_titlescreen_tilemap.c create mode 100644 gb_studio_project/build/src/src/data/bg_titlescreen_tilemap_attr.c create mode 100644 gb_studio_project/build/src/src/data/bg_titlescreen_tileset.c create mode 100644 gb_studio_project/build/src/src/data/cursor_image.c create mode 100644 gb_studio_project/build/src/src/data/emote_love.c create mode 100644 gb_studio_project/build/src/src/data/font_gbs_mono.c create mode 100644 gb_studio_project/build/src/src/data/frame_image.c create mode 100644 gb_studio_project/build/src/src/data/game_signature.c create mode 100644 gb_studio_project/build/src/src/data/music/.gitkeep create mode 100644 gb_studio_project/build/src/src/data/music/song_rulz_lightmood_Data.c create mode 100644 gb_studio_project/build/src/src/data/music/song_rulz_outside_0_Data.c create mode 100644 gb_studio_project/build/src/src/data/music/song_rulz_spaceemergency_0_Data.c create mode 100644 gb_studio_project/build/src/src/data/music/song_rulz_undergroundcave_Data.c create mode 100644 gb_studio_project/build/src/src/data/palette_0.c create mode 100644 gb_studio_project/build/src/src/data/palette_1.c create mode 100644 gb_studio_project/build/src/src/data/palette_10.c create mode 100644 gb_studio_project/build/src/src/data/palette_11.c create mode 100644 gb_studio_project/build/src/src/data/palette_12.c create mode 100644 gb_studio_project/build/src/src/data/palette_13.c create mode 100644 gb_studio_project/build/src/src/data/palette_2.c create mode 100644 gb_studio_project/build/src/src/data/palette_3.c create mode 100644 gb_studio_project/build/src/src/data/palette_4.c create mode 100644 gb_studio_project/build/src/src/data/palette_5.c create mode 100644 gb_studio_project/build/src/src/data/palette_6.c create mode 100644 gb_studio_project/build/src/src/data/palette_7.c create mode 100644 gb_studio_project/build/src/src/data/palette_8.c create mode 100644 gb_studio_project/build/src/src/data/palette_9.c create mode 100644 gb_studio_project/build/src/src/data/scene_1.c create mode 100644 gb_studio_project/build/src/src/data/scene_10.c create mode 100644 gb_studio_project/build/src/src/data/scene_10_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_10_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_11.c create mode 100644 gb_studio_project/build/src/src/data/scene_11_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_11_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_11_triggers.c create mode 100644 gb_studio_project/build/src/src/data/scene_12.c create mode 100644 gb_studio_project/build/src/src/data/scene_12_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_12_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_13.c create mode 100644 gb_studio_project/build/src/src/data/scene_13_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_13_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_14.c create mode 100644 gb_studio_project/build/src/src/data/scene_14_actors.c create mode 100644 gb_studio_project/build/src/src/data/scene_14_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_14_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_14_sprites.c create mode 100644 gb_studio_project/build/src/src/data/scene_14_triggers.c create mode 100644 gb_studio_project/build/src/src/data/scene_15.c create mode 100644 gb_studio_project/build/src/src/data/scene_15_actors.c create mode 100644 gb_studio_project/build/src/src/data/scene_15_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_15_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_15_sprites.c create mode 100644 gb_studio_project/build/src/src/data/scene_16.c create mode 100644 gb_studio_project/build/src/src/data/scene_16_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_16_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_17.c create mode 100644 gb_studio_project/build/src/src/data/scene_17_actors.c create mode 100644 gb_studio_project/build/src/src/data/scene_17_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_17_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_17_sprites.c create mode 100644 gb_studio_project/build/src/src/data/scene_17_triggers.c create mode 100644 gb_studio_project/build/src/src/data/scene_1_actors.c create mode 100644 gb_studio_project/build/src/src/data/scene_1_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_1_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_1_sprites.c create mode 100644 gb_studio_project/build/src/src/data/scene_1_triggers.c create mode 100644 gb_studio_project/build/src/src/data/scene_2.c create mode 100644 gb_studio_project/build/src/src/data/scene_2_actors.c create mode 100644 gb_studio_project/build/src/src/data/scene_2_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_2_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_2_sprites.c create mode 100644 gb_studio_project/build/src/src/data/scene_2_triggers.c create mode 100644 gb_studio_project/build/src/src/data/scene_3.c create mode 100644 gb_studio_project/build/src/src/data/scene_3_actors.c create mode 100644 gb_studio_project/build/src/src/data/scene_3_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_3_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_3_sprites.c create mode 100644 gb_studio_project/build/src/src/data/scene_3_triggers.c create mode 100644 gb_studio_project/build/src/src/data/scene_4.c create mode 100644 gb_studio_project/build/src/src/data/scene_4_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_4_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_4_triggers.c create mode 100644 gb_studio_project/build/src/src/data/scene_5.c create mode 100644 gb_studio_project/build/src/src/data/scene_5_actors.c create mode 100644 gb_studio_project/build/src/src/data/scene_5_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_5_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_5_sprites.c create mode 100644 gb_studio_project/build/src/src/data/scene_5_triggers.c create mode 100644 gb_studio_project/build/src/src/data/scene_6.c create mode 100644 gb_studio_project/build/src/src/data/scene_6_actors.c create mode 100644 gb_studio_project/build/src/src/data/scene_6_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_6_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_6_sprites.c create mode 100644 gb_studio_project/build/src/src/data/scene_6_triggers.c create mode 100644 gb_studio_project/build/src/src/data/scene_7.c create mode 100644 gb_studio_project/build/src/src/data/scene_7_actors.c create mode 100644 gb_studio_project/build/src/src/data/scene_7_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_7_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_7_sprites.c create mode 100644 gb_studio_project/build/src/src/data/scene_7_triggers.c create mode 100644 gb_studio_project/build/src/src/data/scene_8.c create mode 100644 gb_studio_project/build/src/src/data/scene_8_actors.c create mode 100644 gb_studio_project/build/src/src/data/scene_8_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_8_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_8_sprites.c create mode 100644 gb_studio_project/build/src/src/data/scene_8_triggers.c create mode 100644 gb_studio_project/build/src/src/data/scene_9.c create mode 100644 gb_studio_project/build/src/src/data/scene_9_collisions.c create mode 100644 gb_studio_project/build/src/src/data/scene_9_init.s create mode 100644 gb_studio_project/build/src/src/data/scene_9_triggers.c create mode 100644 gb_studio_project/build/src/src/data/script_1.s create mode 100644 gb_studio_project/build/src/src/data/script_engine_init.s create mode 100644 gb_studio_project/build/src/src/data/script_input.s create mode 100644 gb_studio_project/build/src/src/data/script_input_4.s create mode 100644 gb_studio_project/build/src/src/data/script_input_5.s create mode 100644 gb_studio_project/build/src/src/data/script_input_6.s create mode 100644 gb_studio_project/build/src/src/data/sounds/.gitkeep create mode 100644 gb_studio_project/build/src/src/data/sprite_actor_animated.c create mode 100644 gb_studio_project/build/src/src/data/sprite_actor_animated_bank2_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_actor_animated_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_cat.c create mode 100644 gb_studio_project/build/src/src/data/sprite_cat_bank2_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_cat_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_charanimatedsprite.c create mode 100644 gb_studio_project/build/src/src/data/sprite_charanimatedsprite_bank2_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_charanimatedsprite_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_checkbox.c create mode 100644 gb_studio_project/build/src/src/data/sprite_checkbox_bank2_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_checkbox_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_dog.c create mode 100644 gb_studio_project/build/src/src/data/sprite_dog_bank2_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_dog_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_npc001.c create mode 100644 gb_studio_project/build/src/src/data/sprite_npc001_bank2_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_npc001_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_npc002.c create mode 100644 gb_studio_project/build/src/src/data/sprite_npc002_bank2_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_npc002_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_npc005.c create mode 100644 gb_studio_project/build/src/src/data/sprite_npc005_bank2_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_npc005_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_player.c create mode 100644 gb_studio_project/build/src/src/data/sprite_player_bank2_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_player_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_sign.c create mode 100644 gb_studio_project/build/src/src/data/sprite_sign_bank2_tileset.c create mode 100644 gb_studio_project/build/src/src/data/sprite_sign_tileset.c create mode 100644 gb_studio_project/build/src/src/data/spritesheet_none.c create mode 100644 gb_studio_project/build/src/src/data/tileset_default_frame.c create mode 100644 gb_studio_project/build/src/src/data/trigger_0_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_10_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_11_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_12_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_13_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_14_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_15_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_16_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_17_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_18_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_19_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_1_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_20_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_21_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_22_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_23_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_24_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_2_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_3_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_4_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_5_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_6_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_7_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_8_interact.s create mode 100644 gb_studio_project/build/src/src/data/trigger_9_interact.s create mode 100644 gb_studio_project/build/src/src/main.c create mode 100644 gb_studio_project/build/src/src/states/logo.c create mode 100644 gb_studio_project/build/src/src/states/states_ptrs.s create mode 100644 gb_studio_project/build/src/src/states/topdown.c create mode 100644 gb_studio_project/build/web/README.md create mode 100644 gb_studio_project/build/web/binjgb.js create mode 100644 gb_studio_project/build/web/binjgb.wasm create mode 100644 gb_studio_project/build/web/css/style.css create mode 100644 gb_studio_project/build/web/index.html create mode 100644 gb_studio_project/build/web/js/debugger.js create mode 100644 gb_studio_project/build/web/js/script.js create mode 100644 gb_studio_project/build/web/rom/README.md create mode 100644 gb_studio_project/build/web/rom/game.gbc create mode 100644 gb_studio_project/plugins/README.md create mode 100644 gb_studio_project/project/backgrounds/cave.gbsres create mode 100644 gb_studio_project/project/backgrounds/cave.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/endscreen.gbsres create mode 100644 gb_studio_project/project/backgrounds/endscreen.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/fate6housef2.gbsres create mode 100644 gb_studio_project/project/backgrounds/fate6housef2.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/house-wide.gbsres create mode 100644 gb_studio_project/project/backgrounds/house-wide.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/house.gbsres create mode 100644 gb_studio_project/project/backgrounds/house.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/housef2.gbsres create mode 100644 gb_studio_project/project/backgrounds/housef2.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/lab1.gbsres create mode 100644 gb_studio_project/project/backgrounds/lab1.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/logo.gbsres create mode 100644 gb_studio_project/project/backgrounds/logo.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/logoscreen.gbsres create mode 100644 gb_studio_project/project/backgrounds/logoscreen.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/numbars.gbsres create mode 100644 gb_studio_project/project/backgrounds/outside.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/overworld_-_test_1.gbsres create mode 100644 gb_studio_project/project/backgrounds/overworld_-_test_1.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/overworld_-_test_2.gbsres create mode 100644 gb_studio_project/project/backgrounds/overworld_-_test_2.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/placeholder.gbsres create mode 100644 gb_studio_project/project/backgrounds/questscreen.gbsres create mode 100644 gb_studio_project/project/backgrounds/questscreen.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/rightfield.gbsres create mode 100644 gb_studio_project/project/backgrounds/slighhousef2.gbsres create mode 100644 gb_studio_project/project/backgrounds/slighhousef2.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/sprite-0003.gbsres create mode 100644 gb_studio_project/project/backgrounds/sprite-0003.gbsres.bak create mode 100644 gb_studio_project/project/backgrounds/titlescreen.gbsres create mode 100644 gb_studio_project/project/backgrounds/titlescreen.gbsres.bak create mode 100644 gb_studio_project/project/emotes/anger.gbsres create mode 100644 gb_studio_project/project/emotes/love.gbsres create mode 100644 gb_studio_project/project/emotes/music.gbsres create mode 100644 gb_studio_project/project/emotes/pause.gbsres create mode 100644 gb_studio_project/project/emotes/question.gbsres create mode 100644 gb_studio_project/project/emotes/shock.gbsres create mode 100644 gb_studio_project/project/emotes/sleep.gbsres create mode 100644 gb_studio_project/project/emotes/sweat.gbsres create mode 100644 gb_studio_project/project/engine_field_values.gbsres create mode 100644 gb_studio_project/project/fonts/gbs_mono.gbsres create mode 100644 gb_studio_project/project/fonts/gbs_variable_width.gbsres create mode 100644 gb_studio_project/project/fonts/housef2.gbsres create mode 100644 gb_studio_project/project/fonts/sprite-0003.gbsres create mode 100644 gb_studio_project/project/music/rulz_lightmood.gbsres create mode 100644 gb_studio_project/project/music/rulz_outside.gbsres create mode 100644 gb_studio_project/project/music/rulz_outside.gbsres.bak create mode 100644 gb_studio_project/project/music/rulz_spaceemergency.gbsres create mode 100644 gb_studio_project/project/music/rulz_spaceemergency_2.gbsres create mode 100644 gb_studio_project/project/music/rulz_undergroundcave.gbsres create mode 100644 gb_studio_project/project/music/template.gbsres create mode 100644 gb_studio_project/project/palettes/default_bg_1.gbsres create mode 100644 gb_studio_project/project/palettes/default_bg_2.gbsres create mode 100644 gb_studio_project/project/palettes/default_bg_3.gbsres create mode 100644 gb_studio_project/project/palettes/default_bg_4.gbsres create mode 100644 gb_studio_project/project/palettes/default_bg_5.gbsres create mode 100644 gb_studio_project/project/palettes/default_bg_6.gbsres create mode 100644 gb_studio_project/project/palettes/default_sprites.gbsres create mode 100644 gb_studio_project/project/palettes/default_ui.gbsres create mode 100644 gb_studio_project/project/scenes/basement/actors/actor.gbsres.bak create mode 100644 gb_studio_project/project/scenes/basement/actors/fate6.gbsres create mode 100644 gb_studio_project/project/scenes/basement/actors/fate6.gbsres.bak create mode 100644 gb_studio_project/project/scenes/basement/scene.gbsres create mode 100644 gb_studio_project/project/scenes/basement/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/basement/triggers/trigger.gbsres create mode 100644 gb_studio_project/project/scenes/basement/triggers/trigger.gbsres.bak create mode 100644 gb_studio_project/project/scenes/endscreen/scene.gbsres create mode 100644 gb_studio_project/project/scenes/endscreen/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/fate6house/actors/actor.gbsres.bak create mode 100644 gb_studio_project/project/scenes/fate6house/actors/eevee.gbsres create mode 100644 gb_studio_project/project/scenes/fate6house/actors/eevee.gbsres.bak create mode 100644 gb_studio_project/project/scenes/fate6house/scene.gbsres create mode 100644 gb_studio_project/project/scenes/fate6house/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/fate6house/triggers/trigger.gbsres create mode 100644 gb_studio_project/project/scenes/fate6house/triggers/trigger.gbsres.bak create mode 100644 gb_studio_project/project/scenes/fate6house/triggers/trigger_2.gbsres create mode 100644 gb_studio_project/project/scenes/fate6housef2/scene.gbsres create mode 100644 gb_studio_project/project/scenes/fate6housef2/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/fate6housef2/triggers/trigger.gbsres create mode 100644 gb_studio_project/project/scenes/field/actors/mob1.gbsres.bak create mode 100644 gb_studio_project/project/scenes/field/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/field/triggers/trigger.gbsres.bak create mode 100644 gb_studio_project/project/scenes/gunfield/actors/mob1.gbsres create mode 100644 gb_studio_project/project/scenes/gunfield/actors/mob1.gbsres.bak create mode 100644 gb_studio_project/project/scenes/gunfield/scene.gbsres create mode 100644 gb_studio_project/project/scenes/gunfield/triggers/trigger.gbsres create mode 100644 gb_studio_project/project/scenes/lab/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/mamamidnighthouse/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/mamamidnighthouse/triggers/trigger.gbsres.bak create mode 100644 gb_studio_project/project/scenes/melonhouse/actors/actor.gbsres.bak create mode 100644 gb_studio_project/project/scenes/melonhouse/actors/muttmelon.gbsres create mode 100644 gb_studio_project/project/scenes/melonhouse/actors/muttmelon.gbsres.bak create mode 100644 gb_studio_project/project/scenes/melonhouse/scene.gbsres create mode 100644 gb_studio_project/project/scenes/melonhouse/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/melonhouse/triggers/trigger.gbsres create mode 100644 gb_studio_project/project/scenes/melonhouse/triggers/trigger.gbsres.bak create mode 100644 gb_studio_project/project/scenes/midnightclubhouse/actors/goober.gbsres.bak create mode 100644 gb_studio_project/project/scenes/midnightclubhouse/actors/hoseoak.gbsres create mode 100644 gb_studio_project/project/scenes/midnightclubhouse/actors/hoseoak.gbsres.bak create mode 100644 gb_studio_project/project/scenes/midnightclubhouse/actors/mousecop.gbsres create mode 100644 gb_studio_project/project/scenes/midnightclubhouse/actors/mousecop.gbsres.bak create mode 100644 gb_studio_project/project/scenes/midnightclubhouse/scene.gbsres create mode 100644 gb_studio_project/project/scenes/midnightclubhouse/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/midnightclubhouse/triggers/trigger.gbsres create mode 100644 gb_studio_project/project/scenes/midnightclubhouse/triggers/trigger_2.gbsres create mode 100644 gb_studio_project/project/scenes/midnightclubhousef2/actors/manoj.gbsres create mode 100644 gb_studio_project/project/scenes/midnightclubhousef2/actors/manoj.gbsres.bak create mode 100644 gb_studio_project/project/scenes/midnightclubhousef2/scene.gbsres create mode 100644 gb_studio_project/project/scenes/midnightclubhousef2/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/midnightclubhousef2/triggers/trigger.gbsres create mode 100644 gb_studio_project/project/scenes/midnightlibrary/actors/ulora.gbsres create mode 100644 gb_studio_project/project/scenes/midnightlibrary/actors/ulora.gbsres.bak create mode 100644 gb_studio_project/project/scenes/midnightlibrary/scene.gbsres create mode 100644 gb_studio_project/project/scenes/midnightlibrary/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/midnightlibrary/triggers/trigger.gbsres create mode 100644 gb_studio_project/project/scenes/npcjail/actors/ulora.gbsres.bak create mode 100644 gb_studio_project/project/scenes/npcjail/scene.gbsres create mode 100644 gb_studio_project/project/scenes/npcjail/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/nyaalogo/scene.gbsres create mode 100644 gb_studio_project/project/scenes/nyaalogo/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor_2.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor_2.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor_3.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor_3.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor_4.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor_4.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor_5.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor_5.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor_6.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor_6.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor_7.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor_7.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/actors/actor_8.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/actors/kuma.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/actors/kuma.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/scene.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/triggers/basemententry.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/triggers/basemententry.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_10.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_2.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_2.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_3.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_3.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_4.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_4.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_5.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_5.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_6.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_6.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_7.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_7.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_8.gbsres create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_8.gbsres.bak create mode 100644 gb_studio_project/project/scenes/overworld/triggers/trigger_9.gbsres.bak create mode 100644 gb_studio_project/project/scenes/quest_menu/actors/quest1.gbsres create mode 100644 gb_studio_project/project/scenes/quest_menu/actors/quest1.gbsres.bak create mode 100644 gb_studio_project/project/scenes/quest_menu/actors/quest2.gbsres create mode 100644 gb_studio_project/project/scenes/quest_menu/actors/quest2.gbsres.bak create mode 100644 gb_studio_project/project/scenes/quest_menu/actors/quest3.gbsres create mode 100644 gb_studio_project/project/scenes/quest_menu/actors/quest3.gbsres.bak create mode 100644 gb_studio_project/project/scenes/quest_menu/actors/quest4.gbsres create mode 100644 gb_studio_project/project/scenes/quest_menu/actors/quest4.gbsres.bak create mode 100644 gb_studio_project/project/scenes/quest_menu/actors/quest5.gbsres create mode 100644 gb_studio_project/project/scenes/quest_menu/scene.gbsres create mode 100644 gb_studio_project/project/scenes/quest_menu/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/scene_15/actors/actor.gbsres.bak create mode 100644 gb_studio_project/project/scenes/scene_15/actors/actor_2.gbsres.bak create mode 100644 gb_studio_project/project/scenes/scene_15/actors/quest2.gbsres.bak create mode 100644 gb_studio_project/project/scenes/scene_3/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/slighhousef2/scene.gbsres create mode 100644 gb_studio_project/project/scenes/slighhousef2/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/slighhousef2/triggers/trigger.gbsres create mode 100644 gb_studio_project/project/scenes/slighshouse/actors/actor.gbsres.bak create mode 100644 gb_studio_project/project/scenes/slighshouse/scene.gbsres create mode 100644 gb_studio_project/project/scenes/slighshouse/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/slighshouse/triggers/starttext.gbsres create mode 100644 gb_studio_project/project/scenes/slighshouse/triggers/starttext.gbsres.bak create mode 100644 gb_studio_project/project/scenes/slighshouse/triggers/trigger.gbsres create mode 100644 gb_studio_project/project/scenes/slighshouse/triggers/trigger.gbsres.bak create mode 100644 gb_studio_project/project/scenes/slighshouse/triggers/trigger_2.gbsres create mode 100644 gb_studio_project/project/scenes/slighshouse/triggers/trigger_3.gbsres.bak create mode 100644 gb_studio_project/project/scenes/startscreen/scene.gbsres create mode 100644 gb_studio_project/project/scenes/startscreen/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/tappyhouse/actors/actor.gbsres create mode 100644 gb_studio_project/project/scenes/tappyhouse/actors/actor.gbsres.bak create mode 100644 gb_studio_project/project/scenes/tappyhouse/scene.gbsres create mode 100644 gb_studio_project/project/scenes/tappyhouse/scene.gbsres.bak create mode 100644 gb_studio_project/project/scenes/tappyhouse/triggers/trigger.gbsres create mode 100644 gb_studio_project/project/scenes/tappyhouse/triggers/trigger.gbsres.bak create mode 100644 gb_studio_project/project/scripts/questmenu.gbsres create mode 100644 gb_studio_project/project/settings.gbsres create mode 100644 gb_studio_project/project/settings.gbsres.bak create mode 100644 gb_studio_project/project/sprites/actor.gbsres create mode 100644 gb_studio_project/project/sprites/actor_animated.gbsres create mode 100644 gb_studio_project/project/sprites/bullet.gbsres create mode 100644 gb_studio_project/project/sprites/cat.gbsres create mode 100644 gb_studio_project/project/sprites/charanimatedsprite.gbsres create mode 100644 gb_studio_project/project/sprites/checkbox.gbsres create mode 100644 gb_studio_project/project/sprites/dog.gbsres create mode 100644 gb_studio_project/project/sprites/endscreen.gbsres create mode 100644 gb_studio_project/project/sprites/hidden_stairs.gbsres create mode 100644 gb_studio_project/project/sprites/machine.gbsres create mode 100644 gb_studio_project/project/sprites/moped01.gbsres create mode 100644 gb_studio_project/project/sprites/npc001.gbsres create mode 100644 gb_studio_project/project/sprites/npc002.gbsres create mode 100644 gb_studio_project/project/sprites/npc005.gbsres create mode 100644 gb_studio_project/project/sprites/player.gbsres create mode 100644 gb_studio_project/project/sprites/sign.gbsres create mode 100644 gb_studio_project/project/sprites/static.gbsres create mode 100644 gb_studio_project/project/user_settings.gbsres create mode 100644 gb_studio_project/project/user_settings.gbsres.bak create mode 100644 gb_studio_project/project/variables.gbsres create mode 100644 gb_studio_project/project/variables.gbsres.bak diff --git a/gb_studio_project/Slightys Midnight Adventure.gbsproj b/gb_studio_project/Slightys Midnight Adventure.gbsproj new file mode 100644 index 0000000..7c066b2 --- /dev/null +++ b/gb_studio_project/Slightys Midnight Adventure.gbsproj @@ -0,0 +1,8 @@ +{ + "_resourceType": "project", + "name": "Slightys Midnight Adventure", + "author": "fate6", + "notes": "", + "_version": "4.1.0", + "_release": "1" +} \ No newline at end of file diff --git a/gb_studio_project/Slightys Midnight Adventure.gbsproj.bak b/gb_studio_project/Slightys Midnight Adventure.gbsproj.bak new file mode 100644 index 0000000..7c066b2 --- /dev/null +++ b/gb_studio_project/Slightys Midnight Adventure.gbsproj.bak @@ -0,0 +1,8 @@ +{ + "_resourceType": "project", + "name": "Slightys Midnight Adventure", + "author": "fate6", + "notes": "", + "_version": "4.1.0", + "_release": "1" +} \ No newline at end of file diff --git a/gb_studio_project/assets/avatars/README.md b/gb_studio_project/assets/avatars/README.md new file mode 100644 index 0000000..5a8a0dc --- /dev/null +++ b/gb_studio_project/assets/avatars/README.md @@ -0,0 +1,3 @@ +Place 16x16 .png files in this folder to use them as avatars in your dialogues + +Docs: https://www.gbstudio.dev/docs/assets/ui-elements#avatars diff --git a/gb_studio_project/assets/backgrounds/Fate6Housef2.png b/gb_studio_project/assets/backgrounds/Fate6Housef2.png new file mode 100644 index 0000000000000000000000000000000000000000..78b6fdc46f8ec4737f4505b364a31acb014c4b54 GIT binary patch literal 1580 zcmah}Sx{346n)97By0%^eX>e~C^Bs{Vx^=w5ER8kmKZ^humq6Ju%*GJMrf)LjK-0& z2@(ueL0bhWo46o}m?#keK?#e50Ad0Nf<{AC`kL{h)9FWhXYM(7=A4-`b3U$s7U*Yg zVrv2bfH`HmFWtZuhRs8R25e^K)ftFM^AFx?;E<3I7>46I(Ty;jL?WqRRi9i~EhO<- z)_P5!D+j2AIpHm?Tt3WVu|y&fl?uZmxt_jWUP!9sTEj32=A)~tt66byOAE}cL>J1b zR2IPD!$J|fBIx#_Ap@6558P!)`OjfT>6iepghBE32|gs6DH|@niZeUTZF{4M&D8b0 zUyOc>M_3_K8y-5<_YE|KoC$AjUyZn`d4k1rlp@w%>H!N~vqRpzFd?!ye!rV5bGhpt zKZ&YbUHk*GxrR7o+=z5?ib1Na0uq7g@H;i8YiagB<-aXQz8W^3ElC7IQRpkt+vavl zTzi)K_!q@fhSV0Wds;`vNXvk=?!^}EOAvyO{b?Vzx8Fj01oh4<@6`qC=XhIyq(6vT ziybmBh&J9zrgqL%QV~*WukL!i@(W>7q+NsS7(#<4K5q@`lerZjgpa7pe7py2w&m6F z&oQga-)GltI3&H%W7_pSs9vztDv`0MIxv>K$H5WUM)6`uFjZi!qxM;EtLS$RB0i37 z;xQ;#L#VjO1^WjCYm$dsFp{8n5P{WKHC(#{G3=5f$ULYsk&Ur9zLAK$Z$&~Rb-CT- zlx2QQM?OqS)n2*G@W;^n^Skz^nmK#CRCJ6IXYMP^cAdl1OJfGrB^pZ=QL2H!&UU@C z+9QX@<}c_uY#ip3w&Xk?mAS57>W8!ru4PxL&VzF3?Q6|4LLd-5WI1M3X!kQ++JE5y z`CgkDl_38!C#p9SL;Q`KZ1)06PZ)|K8;h;{mE5t}0#xQ9&I$|55y*ujA8Vc+sO!xF zzPY~Ky~W%@T-N9z#3c)lyx?8rmM;-bsW4jiDrievn|7%~#Rqg?r(5ogP=T)}F3l^R z9jt%hp5$(ZD^0=e@(;6l`J|P@%lqme-uTg&P*yu`dPJ4M9(Ueb6MZ*4JfUP6nLkJj z$g?y#9W(A@DfUieH#i|p6k#dn3!S?GY2x!l(R1JV`agC!tc{<4yc&l)*Y9@?hr*my!>d1^jHohACXB)*&w5p3gpLBV*|Ti*sGU5Ne3p} zlgb+hg{Aj~v+hTHIv|n6Ry~5mDaYKi7ZQ{={R>zZ(ppJ2k00{V`d{WU=ype9LpQH) z5P!XzbFHu>M6t6WjD|$#n$516k`5Gko$Z%Xi^9x&4vxwYSv5_5Q@!J_LyRnpJ@?tv zfInKg+`jM~bGBnPJhkHKx5J*2&gFu03J}wB8b<&g0%q^Xm zu_ZOPKD8U$EI6Z}7mt6I!-{m^Zv7S72Lyw$hT_d+nXZ~drKDcKFY>Ahg_j&_8;|Gf zz@{czezv3!qV{0>2RBpxZN3ysooY8W*oPp|8o^5$pkL~8@0ijYu~RB>`h{RRav7>alL&v+RKoq<@W zh(^XWhm6RgVw*VeK5-&U6A1=1C*_SzBQYfNB;uGVF9xM literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/backgrounds/Housef2.png b/gb_studio_project/assets/backgrounds/Housef2.png new file mode 100644 index 0000000000000000000000000000000000000000..6235c75f381890af0265b2ffabeef06058c6de8d GIT binary patch literal 1615 zcmai!eNfT|7{`A<@dXoKn&nHPQksTETJCCUn`G1!9hz^;vb4~&K#@$BLi!6yGp&rk zv`8T(XA`HDNS79dSY|V`d|^6#SvhrDl%>L?-`F3!+uiQA=k9sF&)xI6`~LC0dkVuy zUz;ymwG03N^PoUNxLyVNEEQ1YGC=@=QPb9)HzhfbMQwP^a#IS>5ADE34i^UW&+}a8= zL`ZH2kw^j3*>Eu*b_%_x(|cf!hm#`oF8^8d10Ui6z$hn(us!kwfA(ru=`CNY)7KI} z`=uUhJHcD{O3g;oS2s@Q*S#F2T2+IZx@$M_c^Bww%I{6oMpFiOZl$V32W0lJMY2nI zpBEZ&1)X+=i*p&Bv`FjPhH&*=h2>5IawGQVhtKD)hrYo{h9ti4oIkrC3|0Bb9Ot&N z+*kYRA`EFpe3wl$d|6W)HeAAdpa^!A+oK}RSH1R3tKUklrp6e?PH2`S>H{|!QhBYS zuPx)30NGkY6e1rI$}a4nZ8sKiq`hhwNQRBHWPG3sp$@c4%i8zr!(>}ybo>|Kqr#4hpN=WUWhE?y zkKpyGb!1r+@(VSdduOJ@S{jQRB)t9`gD+x#R*Jwdv5W^wn{Y%yum<86Dlu2 z{rM1`-TN$*XCRVYSpEEx8hVqMS(X58H@a>1aUL5_rE4{{gd%U*z$dm8d`+s3^s@LK zQKI(BJ66>AKuE9n5!{vGNz1EM+*2;thCSr6rm{nane&hZ4U0H5o=)HV?S}KeJ6*mu zh7e@6HcZVzi^IxsFP5u=rp#dP)&oYx(<*Q>dctOhTt2znQJ_V3cW*BEF0wGh1XF)M zfgZW=YD;n^3R6zSM1<_IxA{G8E&egjkK@`o&QdgtnK4!GW-BUI*Jy)nDP1AgQC7mt z5bIa$05WH8yS4L!1o|C}!7`6M)C#Uk573r0+|ivXSfqanF9?olkv`5oG@z|--dU8f&!902xXbm-ezXn{s}^W@L9^&+Q2**Isb+CKIjzl+K=MOfXu@{4(BtkC8 z9m4o^{d}%m{?p0!*d+^@Y@86ckJ)H`Y)Q?F{mt#lezS}roKjhgnj{S^O_jbht{mir zp|Y;DClvCm-FdxdZOonk2QPQd?)>t^F;OLvN^W|xAzyG$J#KokR`T_#Io;bR(8|>0 zsC_*m*V_HSb9BS;gzv;#c28d&a~vHlA_Vimnu{)hG>GgmtIbr1Jz`K!mlS2rE-l_P zue6<%f})h3$~0?do@mXZp_R=y6B<3HOsH>mi#{OcC1IQ#naYOPYdJU+5Tpee`_={d z$J5N#PMOT42winhD~?<3+|YcQ^Dnp$>h;I`08(&^OL57X+?Skbupo3K_ohi*6W*Xs z$J9a7xM<5glr}getW`0s2a{9jDI-cJFD3_}`r)>na4F(Pe=w)TF90A+ zs$|sR7n@AZy>&;7?lnE5J*u#TW<0xp_Gha_Ry|i+utvk(Nwc|)(nh`_-_0t72ZhC= zNL$!5DMvi+41Oe{pQ!M)fRz$mNh-Q{PS>|g`tI#+OhhrU=wzWV^ZVsJbHV`++*jF$ znlii=6DxKVnfv$M-@w!<9o9vC%%D@E;%u9v|6cm#@WWytSGqA(JZ-kn-#cQ=Km_*Y z`boAzt~#3qqw*1fFLdIjX5Uhfua?3oobf;9}F^@H~llO cT9YM9>Z_jm^qQD#{nrM9c9ID70r9Lq0R|)-9{>OV literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/backgrounds/Lab1.png b/gb_studio_project/assets/backgrounds/Lab1.png new file mode 100644 index 0000000000000000000000000000000000000000..325dc5b265d1403a0813d5757c74c382d93226ce GIT binary patch literal 3382 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 A#{d8T literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/backgrounds/LogoScreen.png b/gb_studio_project/assets/backgrounds/LogoScreen.png new file mode 100644 index 0000000000000000000000000000000000000000..bbab494718d737159f8a1d652668b7602969f72c GIT binary patch literal 1032 zcmeAS@N?(olHy`uVBq!ia0vp^3xIe62OE&=-q!^2X+?^QKos)UVz`%US)5S5Q zV$Rz;zJ8A#L>L~XnFxg^aB9Ch?6{NPI`5Fq1XcB9>$`9JUfV9W%M|mOb3<|IH~x1v zw)^+|72*8UeviS{j9KIqL#vU)LY@GP0bqKGKe+xq{pYWLdv1TS3R}hST=A;Q)m?k~ zrmG!T+OTa=R%~343FE6dJOL|282j#A-6h?p>e^tX&n)sve=pFg4t&w?Do5ih5|n(m!=CbmePaf7+Y(_S|*3 zcx&$crmN;XwL4zI=w@v7ZdUfB^j&$G4a{qg8n{;d{c-F3=fK_RGkq?AtX_QW{l)}) z_X7vB+#UbN{W;CRUioE0l`SaXFGv^KX36|b+_t7Z`^l=xxzXj9??^djPd}-2grnm9 z>r(f%^+&c{&*A?2TT1f?#}4;x7Y`)w_fE|7$h~N#euLk7oxtt~Vz$@!EQ(Pt{_;D1 z6~p%y5ml#HFX0Cr4JSBc|4v)VQIKNM*Rrw2o_k-oL7$7^5(&oAxP|Tqs^9B93u*Ym>6Gi>oxWw>({G%@3bOZ?d|PeFliMSpt{C`8TlLzu zHIcLUCzbYb$R!+!zx5*bl+4& zvYvgv_p9>l|8F+eepk609*|vj_nzQo+L&wAbGDg? z?|5$M-Ol?Zy`jJ1i++OVk=$MCpZ-2#oF?>|dHqfSUwQLhgSj3T->bSbEIrb(;i>fY zZTpOryEDao+$5g)7Z#`QmRy*s_wm;2t96eLT`SI#w+@;iSg`KfgNiz_U0?FAR9&05 z`|IZy*I&-$-t%>iMsc@uUqh9QqPv4F-vA_fq}=w4eO~6~vSsr$OMqFM!PC{xWt~$( F699>|!+8Jz literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/backgrounds/Overworld_-_Test_1.png b/gb_studio_project/assets/backgrounds/Overworld_-_Test_1.png new file mode 100644 index 0000000000000000000000000000000000000000..33f4ec394702c5a2b58401f0a60785d7475a7c44 GIT binary patch literal 32688 zcmdSBc{r5s`!_z4v{*_DSyM#HRv3y=5mA;1Ax4C(L-uV(RI*outVy=)WFN*7ikLKH zHZ)Qr|J*ft@RG^FMs#^(kV-gufEq^#7t@#d!bJB%)hefF4arNToo4}q8Gu3_hs%}?kiP&)3pay?X%nmt&1lWJF}FB zpRpRdgAXJJr3X(h;IP(xM^tmIcAIZ!5co(Rbpzw9@tfbu5g`_kp)fs2{zM6T%3Dm= zg+JFIn)J>Vo%^wZJR0zk#$*ujBUCfI>(sfwUw_qGv>ikwR!Bk~g;;d!rd&wikWG|X zpLdsB8h`ow0gN~7Hr5VH6nEa5u)x~!1_*fBAHvjCUrPM_{OHBL#mb=rOgdQNOx`PP zQ9`KW-)}NE69(;E1`(zjJyW``64&FtWEM`8h`m;!u8g`o{A+x<=d32GJUP2-IeD*h ztli&r->Sa&R?Vt{4ZUWdUaD$jv6vR7F~Hs?_IGl_W0bN~0!vTq zhzxv`{&F+OiR#sE%+tA(*L3t>lkPEwz7;VR!ZqyAR4b**pDGND-1evahx+W?VOHpM zS?9ot?mxRjk|N;_ONhKldxM*IzwycQgW=!%XKv zk3fv8JRF*`k|-N<(e*qON-2u6+Jul7kM zn+0GW&WuKZ3(L|jHn6G%)C;7S579J#a;{61`$QGFcS#&_w=d-eVw;@(iUg~mG{2Ph zeb6=KcQYnrz%hg8&}#G?x^qme*?$p+WZiacI`6yY25h7K5`9!#gt6R5^kiu}&+7Az zE#1B|kb7!G7d979m4%d>a6eg4!mGx+Em~N^n zpG@E9+xTc)s83+HszOVFuiI5B>X*Ii8&}c&BxYfhLw3~y?rfOhFj6}Sscc8 z;*x_(a$Rd;9cznTjp6ao*5aAD*u78I?~QCoE_Fz~Kyt{rdK4@if^=_*coI2)L`0p? zH_;9&;F0Hc#(i1PDyT`G_Sio8!FcvO*?Rl-YUWz-Ad>565vF77rzrQlC&xS(hWpQ9 zbyRPse#}gxTs&4XGFtfzqjBEJy77xgzIT?2?xPp8g)DH z>YMd)RLfOWR%efHaxtV;m3dEXwFru`i1t%=qtc-$eX(J=GQq-&X?+Fh#0;qz^b`(P zNUpwAOm7_@;dwi^D-<;VGcLL3^L(mnE&2}ksb!sv(~z20pdBUAPU+p49x+*$ zw{egm=d2F%eTeB8!j)O~l~?|?pSz^^x`-oiM{Z}yIm-qooMjBs2z7Go8lP_2W{c}! zWYRLr?i8h?4MLkys-s_jlqcJ?#h>V;A!!^_W5DV$@VDdQSbbg}$Eqbg*m5D8M>3D! zR6I`I#;zim{IG?_aPZi9OXCk>p_8!xpRUPNf-2mqdvOS$F};rcW#<( zfA-EM>6J~0#Vzw1c0=1WrE2jXD#lBB6|&HsA$m;zDf}-Bi510{CXm&GqM53kiKo;` z8+lK;IDf*~jtcP_`4r35RG)%q+8krwjt!eg!wQkPSb@StqG%FWQeMAD9@zG4iHoEk z)>X#n)h|BR~xt7h{X~kBI+84yvG1G`i3yU^?4@Or|_L$4~@*49gv26i4 zS-)C7g>Ke+RKaF-f&asua1f+Qb^I=jn5K-tT}I7aM*SUQxKSUz-yz#(cD3f^4uE^d z;uq29s;Fw`?V5N_X;-%#-6X7-LMpOYWs@1H&AUEuw|vF45^ZmAaX zQiZv@YyCzocmAD!&zNWFgWQ$5yl|a?r%g(x|Lw^{)*9z=**=Z#&+T2&bcoi)hd;kO zrT5Ln(V3aHU3BkQV|B+gd|Ns#UiTennr<*vcGdaPLxNQX_tZYq)7Erzr4t#XRA7Ym z<^S3%))TuAFB{;MB4>glyplGlR2+d7joFDJw78$@ZT=BM(|p;CGcz+Y%@Bd`6UxK6 zrn7u&-o&H>#xT17hUwE}VC^|4fCtPXi6js8&z1|bCay(yo+;@|F8X+K8jod9F!p-v z-epxHP^6UJwa>TG*h1D7g+L%W<#htLgogQRWtN>?AHf-be6JzyU4g;;{H?u!OQ&@% zCZ*2ckNpoN)5}n36 zt3`tObU_`}4o%8`n{h{KX}9{MhZ z4}JZB)4|)jC>Qf>sRZ-(%cotJHWnHu_e?a3iga#Ans6gFPn3V(Y-*S$uBLlyL z*ohJ^@pLyPXVi=4!UTqje=XVNx36=6gPdgHltr@TW~s%=+NsvuN8@)&bmM)OdeiH`mu|gPg@+;?NiG3LQ{AZGDD= zA7uCQ{Q4)1=O(V$nwza!wpI1g4pw(%H9JUu6H?!TJYNeAF!8=LZ;~-4nnFS&*5l)? zYI&7m)EHESR`ED&JeK5HQ>}Y2vXG^7{%ku>&EaE9Iak{pENh;cZb{y&ka-{VM%PHE z?@V!e+~>C4m_J;faR?$X3V^42!q2xvvFZ8srZE|8_2874vQlkQB z*->%eTz*vTOqu`eoiNlk6Y)0f}B13 zBlX7ld(ebha!A(P5rT6>w|*DAXL%uZWm@Y_(V(`?-ykblPQ9pHleJ%P!s3)f% z4CRGf9)2kG)(8&IT5NB>Q-u4B;1v}gfXo~WmCa&YTr=mwgq8yRzBrNceD4&@+mkPC z?T#EbDJl>+0%0M9Xrb)Tqv>ug!!C$68{2s=-Lr$0%oF6ZIfoPF@wYd=l{eYc#N8vT zm6@#;ea)V6RxpG^%Brgq)hq;f)E^o1TI<}^^^DBLrLsyVc}uI14-Be7<*Hv<+WIVr zib8vVfS+#&)~55d24%*wW`?s+gIqYvIp&65{E1-;><(Ok+!s@msFK-f2cL;s z+v{tn;rH`E+iQ#5fQbdaMkNWC8L&>pD#MD^mwY`~=>%Y}$pjjNVw>9svzHreAKkcgmuXnVGJ?B*#nTOKplXc#+@ zX`1GgbbFR{#+65&$70_g+xwcN?)mg7kw>2R3VKZgKbEBU-gBR*PToN%FfM^3)b%D6 zi4{zU5TXmxXPvX8&2Ec^pVhw%wN!6m{raKg;2lpEcFNkh&cFw=f|q8~V{tR{mhp9P zrOog0*KecOr0=7c8k+1sDi5rN6Nja#vj!OIzkT**S@Q+i?ub1hdnm$Z-fjQ_nRg#c zSx3upUY|HKx>ilXp1rho)H>xIx1^|6o(=XG@RACj%5t}lrc8(-(yg6wJp5Gc`n4o z&NpGKSrQ9St73@+kiy#LIu4(Zg`bRc*dAazu* zCcmNajJ4lPe#g4;zO{u|r()9P&x;vqqQ6+^zp26JLW*Yt<fSgyLMsE;o|}; z)Vo}00!F95Hym9>X24eYO(mG4F_ed#iES~f0o9xPMTdcN+00lz;e7h0hgf5ui1%!{ z*YwY}c;cof=7W%|XelvR=jE znj&ZQ;!HB;sy>s6U-%Raz3|~P3|=(`EV$7JW8ks&fWMdhTKwngniHudj{AXz*V#o0 zsT_v*n2iq2Dulerk)%g+#6wS{rS3KoTLclFsGpaehsg|s&zN~PZkIPYZ^RvW_*(tN z;P#t0z$9H-;_Np8)FWVViC6T(xnd0vf<&ne%{{NbX@6wzWxiMSfQd-yecvQA^o#IW z$MqM}%^}eg^b}ct=DSP$spBGSewhv0-@g#5QZoh+_rSgxm!hYlc+N4KZp+TSRpu1S zDl@d-isqtcIN4fXj7ji9kMcyL&xC{Ps@CW zpx#x1pL)}4vq|Z4D`B)s!(xOMMfgYQp}Q-W8~cV{Y{xy}o((5H{2~yY-5efC|3*W^ zbUT#fxu3l$+p#JNmou_u^?u0{e^{}uOlJr>-J%x${y2SnKRj(ShLeteI@;>G4_8Gp z55#w!x1@6nfGMFJS1?)}ilpuss2;6l31(_%6QX^t`&i>A1(D|+Yo-*TOl&h(AET0E zMpKMK@_qPtLPZ}OyGDvTJjg8!yWb^FW8nRKD#T;$6c6xHGf~i&%P-G~60lKu-!rZ| zT)5)?gUxCIe&`zkKbF>2oSuuhy>gg0+3C``Fu`CV9Rw|B@D$lbi*bus=}Ft&M&={0 zb^hqk48Y4b$=V~no1bZHHd_RlgMQ^(1YtHpcG5TTwDEJI*|MJ>hNg>^Zj1CDYsy}l zX?!HLAYVNAVQ)redj<=Ad?4%wr`RO1g>yT1(>91#h0izY^LFBZaiPzPy$g+0^jR^c zR!X|*ahRwOM(C$Qyemsam#2uwmYX?Lbe0n(W)HJ-6fJ!bTMl>weAK(CJkE`GLoc+? z7Usow*|_A`L@b^>E2+BUV+6(3JA~!6xTTh_9U-QVpSNyCH{h;5x0gkw(BI^A_~~in z^)XstNzb0tm-1{rOx$3Z@Tj0HoMel&g+b@i@H|+51o`|rGP9@aaaVxiDkbC{2u=_JETF~Zh zE&+VcOWkX6Wggc(ygt2yZxPAjIggdqhIemKF{a$?-z~4Bp^O}3~w#(6X5?z(W`8Lj9DQlAnQdDUZ;MHzHqP*#8e?KjCDg{~U zuA`=Dvh+;zr>0g0Q2yKXN^+ zkT^()DO7m=dCr+{fyF1A##dH~OyZU&r{KIvMZ^tDR*l)UXe0F0a=kF7 z-@O1;LMp;As}BK`W&Cd1fBUPF-0@&O9v;pM;(arv*l4PbiuO^gXNckI5$gYQXj`Y5 z^4t}iz3K+{t@x{i^;lXTyI=sEed;oipX=NzThz6_(PViVf&GA^$;>7<&tS8xlGJlW zXH@3vTj4*K(ptjvWRE4n?a|%xhSe9B1|6jrpi@SD(^^&?qmn~v7l=v~!apJyOrMF_ z6KT>3(N@)bggh=Dz1^Z$Ct<%Kp4f70hGc$D!!(2B&>{*=RGdvZ0Ix0bzyyjGe5S)G zW)Y=6H>LN!PtTUT(mF%^v5~cMjoqkqI(|r4?nVPm`U;p)D>k#s(N(fO z=DYJ5&n5}OX%IRRQeD<%uNUN^HjGV2ru5Ac5`X=w58RpnK-c8${x`OGmA4{rYLJTl zOxb}~5R;k8$vFg?89h>0sSj>O14O^fFmNRWMhRxi+vkolR2muxQ&RT$C zzzj08B`ys9DJe-K)@BV|3l{ zQt!tr(VhQRSDjt^sE+iKrm;*ZS%p%XgNXpqn)oe2k#4ScP2h;4JWz zy=1prKL^7;B|XSgZ~6>K`soG{;tJk(JziYaqATg3 zRE%9>3rxx(-}=HKEZ;xPssMC{7jpTST^%a!83GuHMu3{>GeJR?E($@fbNwRaGdwF2L`e zgN{$h>$)B32BgWW%KI1=4N#KNp4g#`D-O%MV$Mevj5JVsmNgWG_3L(OA|22gMa&upQ-|HkP{<{E%0|2=*4Q4-_XA{sg{cIy5coG z?LyTqtNpRmj7vNFz;_{LiM`EyyM71l$|+Xr4mYZ@_q@G;%A{Pp`G`l?(YBwkK6chT z*yd9eIuJABL3L1|sUe#rM@Zg_wrT6!&$u|KDnG~QIC$ucc*fZGF)PZqm#`aK{+JHU z2oRKD20(W(Hf{cfDMQ#_*{f-D2nn*phkdft3TXvQ_llYBjs%Ow+&oJ=!wPjHF1NY+ z$(b+4+AMm$JjQdt*uAk2cg31_pZ`~f?&NX_VPm=2?=xx2YuH}Q zoF!diLhJqhHp??)YC~KYEt6DDPa2Qf=Oz$=(`L+iMl@ZhD+eN4bg^p?8q{0Qh)eAJ zU?aiO*tI?o!~NVbb;1ZlH^@-E3)hf-L|{rGBK*XLz#aqil(dPhZ)++~OaoVM+k__f zy|HMH9SGvPUU8wqJ@Ymz(X+MMi@%3iCmNd5r4~LV-EoZ2L9MEe)w}r2hAlD9uAZzM zU74@oT2{FZgAzGZ140W-Mlz%qiS2n z(6r5hD^dpBpWy%zZzky4$Z<0o6FEN}J2)@^y&Qz!r|biN4htxQ=By53vwl&oi#LT2 zEY)WOXQk#}1I3D7A={TP6{}7peF-ys(Y`v$B22C2U?1E`)b-SCt`8;`jh$aTd*=O= zQteS|pMjk9nc^GFM~J!>sX%Vj$XG4Kg6&KZ>QLpMaGA@@f+irTxf*@_*b_tGSMIpB zsA7dNX`5@vnmaGICagY^;dWgL*NE+nlho38y6(h-Pu!tZGA@%EvQ3ipf)!{hVw}1> z)zABHZhfJ8PpbY?Jsz5sbHt6U{+CTv=PS#Oy~@h)53qn6^yhwLf`$aCa-0*wtz=~D z;?Np-nJ*aLY2#AtpV1O`!f8r*dl|G>WTT)?rztGNiLW~iGF68*G~U+z!R-wSlR+!p z121gVMheiJ0ry9X`x=je_>)Ju8fbL|)TG|Q4j??~;_W@1H?OeeFN3zn)Ry4ROnM#P za9tfe)`E!DcQ)QR*I`SQH>T8@s;1IFc#&C@V5`LQn1wHnckuG7R_SUqO&oT6BtiZt zwghx3(Q%U#L_=1hWlJ8OPEEu0zVN_e$&tpeOS!3Ol`l6uEkw1F`VKqSt$sg(>75kC zkuV|inXDNin#+xZeQpJHdB6sU+k+Wlp3lr+03&Teb* zmRWC;2c0<`f@DmnjS9TvL`CiO3iQ;SM=4WHypq)2W*!Ko=g;~pZ109HQ@2<x%Trhi&m*AsUQ!!r9}zrXBp}eS)YFT9EljmChPn=xS}AvsbCoT+(Sdfzg-! zH)^Sg1oQaJnJm)d(V{}9$V5Y=+6p{@JY4zJb~;Q?9%C@%7Tp9-swfr>kiXB3B0Fxr zU8OHZOwNxDqjYAlXXkXMtNw5Sih8f93G-)sRore#Ii5wbFipzEktxIl)OsbJJSK`d z$*?a>z<+S4%+0nVF>TF%@M`O;nTi!e~WgF%_~sAVLPW1yGgSEG{$A&jZoPI%%5yW$qoife8u87B)mQTBbdPc~l{}vqH=~ zTjQ)958vmxHfAr!)xoT3K@*Nn;VKg|v%hLm|KOl$urwP(VWCqS*5DNT z+W3@7oYH$wRofhE4w#!&-(1;4Y6*?r5+qF6@)%L9j+`jzTlD_n zzTh#*;!@C3KXK`osR%jEV@)U0Fosug`6Nn7JlegF{O>XQ*`rl)%~oA~SG(Ol7)C#Z z${kcy5V^fvnd;*wte?*{@En?hl_i%DL9AZ8GmGtkRRG!rVu*iUI5E6X<5AK@ta^@2 zdvol6Ea38>Yps_trkg9zdo{7I4k0ke%>?#lwrUtS3=nwUcGJ7@eLh|{egB-4kZOu!5mCn)mi4H&J`d%GzLS0Rsm)wxkD;jF@MXjo zx(L4h4lCqw=s?zF0|)nCPnj+~bj?J5C}ZHIpVHz1Q<)|jo7C3y0~T+4O?E}Gquf!^ z(k6jkErT#|trD{DleYjV{c%n^-}L>Y-h=d?_wc5p&vyLAeka|qVGXBf7F^|Q4=RR* zONUDgnE8*&m6Fo(H6n*9KCqoiW-H!~DlF(3rG=GmknpvV#f6cGDCAm zB<}8o_Xj#(de z*qBjcvHm1H7q5sBe~_%*YkgSEC0K=8k3n*5MHASl-3AKJ`0+9ZYkxc1e!@pJG(p8SK~$vSfM|MJ0k z6TX@4u1#5TrJZc8_Yp)sNR3WM2Rb?k`(T|J*t;E15A(g_s^~x7(g~>G-?%+J&{7ZZ zdnlpQ;mb1(Wa+2yS^C-0-G?zN*r^kY*c4o8l|llV$kOL^yB>EjG$FtcT#4=G8V!)B zW(<43G4yO|wmcQ4;@M&J+K+Y1WCxc~CE5riin&azcZ=xh;L1ZHi)$7{!Z9!x8#oiH zOqQ}Wx_oJh*&6>HJjM3MpGj&K#s0Ads+tjjlxXGix|^+^VP$8A7m(|f7}A)ie{Idu z!|xoN>tUh2xKGIM92qi?jaZ$w2J)(jU8v2j=!t*Dw;AqyT#jq(T&>BECC?_okBRff zLfqdLP+x^Gecj3gTBZT!7;4@4U!j${RU2HC(7eLE=Frr}M`;F0ANahPM0qUVz>SOv zw1Z_lVu=7y&HWQZzuE?^qVXTxX0mRj-U;vWg%;fBMxJp0Cxik6SKw!>Kg!c-)=T+l z47GzLw+ig@r%_|3x&(B`ZXofd!;X{BR-Zh?di!W-OIq}AGR@JvXb{I%w+!v6lGw3g zP&{z`Cs^!|@60hD?q3L5Xl+vae}B=BKY*Vd?p1(}~+U2iJlqo)yqEOHnCoF661cNf*$z^I8@Q~2J(n0)p8VI07 z$>Jp|?wa}JN5nrNo~pF)|D{{R zXc=>>!GE(1N)2pDns?mzNP|Zq(w8q^#`8Hx02HDkb#``g@=J6=OcJ|jJur0KZn{9N zytpuzCC~o2dbB~pKus0xlDWZof-Aq7>VU*=4n14+`yria6Uh?$%!xBUmaCX1EiR+I z=HF3+O0v`PYW6Z-h*7NK)=+I26%^ddmvx-pD7{4pfU;hyo{e*% zaaSlB%`Pu)GL*;M!dL;_WI7Ha;=g0XUvgq@>6840o24Qku{aj_{C>vpOGnS zeY~=;kP0F>ee^3^Tcxk^4}l4_yqX_s;Ub929n48p=ALC1`U{Q-!=+$iL;a-H=d}kN zHyDdmR*zddd*BEloiqWF%;QfW;AgrwGFURQZSKs|d*;I}hr6z3%ol^Yq%zVb)0Cr2 z{~a@SFD+&k%wbY{VOr$uH0@oMi;+9{Rza<8VsY@i)6{=l4hX0x1Xt=?u9mSJDDF!g zQ4^)BJ6`0yoYj)z(Qo4Por^hxPmfVfxP%Uw}|_7gA?f>c1g%+FoUd?o(UL3$Iiw?nGXNs{*fw%e(<+$j_=gZSQFoffq}N@%Km=rn~8 zEZF4y7a;MbGs{{^XGFHMwdSwsayaZ=oKGF;^kb3qFAD|FR9X;jCH??~+hN*#w4>^= z-NbG{T#}1|_~sRUkk^@s41%kDQ>xo354w2F(u_V8{2DNG8S?NwmUsU9qb21|*ccA-joJ3B5^8Y(4#oeC}Rl09Y`a#C4?^&xRZ-{y(QS_PJ zE!?v;{`^P#XgR~R;1|@NW2fGjVAyW_{U#0bg2ZDPP&*W$mo!8aTsc7|csj8dz^`vB zCibl;x)1C8Z#?{_Nixv*pS=C`dcSFTPvgnl($W=c9Ke$)~s%7 zu?(&rp5$Wa_`R-N?1TLkJ4C%D5`hqAj7BlCrh-_=IWEzZiL<;;s*!!sl2lL z?Cdion9`bH!BNR2?s*J`1&0L$sBE}|^|)?r*9x5vfWGwjBVaa$JQO;P6=Uk&kaOo&6pH1__e!(c_!junhr@oHRq|CC|NWV`U#Rr zTe2P}V$GNAo79H^FJt-95L!G}R4yesj znTG!9B2Gsk@%C>jzCnDuk}4!G^rwzIfpg|t5hv4{G6p}9mwu7vWRQ!p0g3%BFEuM2 zgJ~_+cC~5Fy+E}(^@scQh{jtJ)q9MIA@|KB425WawoGJY z+|d^rTt&XD7QcrVGtfl*o#(P%w8Ci2H0Wj3*Vh9n+qyh5y|?<2(Z}`Doag|LL(S~2 z(op&G@Az#?YrU*aG!L$P=jVJa{O|qh%MvW`Vx9dJ__P_!rCBK+@>epT0wQ6AcD8>s z_UVf8ksR)+pZvp3^WBf`r`X@4V{~L|7A>yjG=M{-eUqokw5)F~Voem@6E+n!wgfB3 zwBe`pk6bi@KLtm1jCay{dbBv$PP#^#0M)ZZsNsk30u--f4Inz+K=6bYkD5U;N|XVa zJp_JFPU9)7@fa0Y_>$4~o*_ULc=oXHV4GWEbiMEvd;O`-pQXLrI(;dfpWqmG!Tjp| zqTbd!cRA%)6ZgaHE-+K~*RqLk;(QK%!bA-e{>aK%uM!X8i#ygB&f{$pV95QK%LgtVWA`vt zBRW6!(PvhZ7uz*@Ku&&K#pOR-zEdaKs5LQhrqgto7oyw@R%I9~6+ajlBD7c*>#Vl$ z^oi5k?$G*9wD|czK(r=`H&ZG=;a`a{L(3Ot zIcAacem2jh^c$HDBE8oK<)PwKv)RQ8P6|DzRx@Y`D?q(IiV88gj~B_i>};*ivjVFsT6F55cq|%`iZg zbloqs5=i^ASYS6$kS;SxAJp2uI~w0yPun7Gl0rB@##AgtpBs@>03IP+ps$IB)tm>n zC3xlC#ck=KV}yshi-Thh9IEu(aQR!oxUA33eXPfV2PY_(MlTobjlYj09H7A2dsb9* zy(3}guQbhshlNeXdp=HHo4%%5+9`d1SwF&6-wkduOBp>l)Aeh+FlD#1aoOwz{_{N5hT{(~o?0n_h zT+us(z4dE1z#**R^Y8Xo-(W{4h2F&Nz_`Q*ocZmfvzwR$qoT!N@NaR#nwcI}#E<%d ze$TXwEY&8=tG5~utO*vx`QbAVwC4)wn#+@y`apG`L`H0rro!>a`$*#|%F-HU?uSu+ ze{=wf4s*bu#8vZ9vHL+X>&DErISz<)hL67$akF#JwoAsKGctv;P>WqCKok&L<50+W zt-UwzZnm-3@{BFO?{ z`P-S6dwRzzC-b}poR;q?`s6u%7Qhm26Jm;y7@s}rIY+}#JR%C_CiSw=-;eaUJyQ-S z5&802JJHGeS#I*e;tUAF0@a9?M*pwH@`t6;=^&PEa*af#;_C6`zG^nkntUH|_pW#z zE>T!K*Sm3Yw)h+)K5@_pFg!?1`*4Gr(af!gNUn>YoIah5b0r4BfTe>SB>so=H z>Gueq_qpo>S`UI=g`U)yy)~z2iQ2Hg7*{cRJk-IM8|5?ovzn9Q;6Ykz8ngU?i_ys3 zfOl>cefs1$o&mrrnnl4W0D(t(JBMMH}F){=0A85FR@0?=<-ZlgLel+H9 zsYiK|6q8z7ZmnT&gR&c-(yRk`jdG3+N4ajdTm4X3giW~{0UZO^byyc~B@THoV0V`{ zm-=(ZD^NjFHmbfYEg^rPlD)a|Kqowff7oe|IYt3lOfc*m^O@?&m?+^9do-_X(+i%f zpFlgVyW_0^H)i}UsK~Tk@heScNl21e=R*9du=Tcg486VFBAocfkW-9mDMg{Q7FxR_ z{47Cn1a8^`N^s^xK5vhvALTMm^PTRsAWQ!&x%@RRR+ecgyMM&@w>4CCYym{mw>ZQ5 z$T}+;>&9R#6vt}1i)b$GZ56=G1wZ+T%&I`guJd^UHqOj{JtUGso^@@}46pmJ<6lYY3nf7h z>cIKMN_s4@)!gJvyt>sPZsYa~5 zGBfZJ2+1XMV5wPopvG$Qw6Unza8bm;E>+q-Y)$}11@03^1CV|oS zv0&of0JkSrN*$89na=y@zL47a^ns3xQ0Ij9GA!xN+`^}5(+v~%q z!sdlvo7D!Z&LXM+9zbStR>QoSnyN;>Hhj>{dH@xP+{VqWXU}TCBNxv`y-75r;siVQ zKw1zg<>d=_nIsjeH29dLlXt&s|gsdhe$ZZSlAj3Mgv+$Xmu-j2VsIGW_m0Fn_u+6!r zp(-B_wCRJT+0MbisKqSc6qCa8e4*bvK-FUSMB>oii&HxV2(HwpFWOsFo+;+3!p;_N(Zlw2Adu{B8QAd-RH1*CpL6=f&ZuX{o3$rWp;&3 z_Q}z$KLe4r6Nud2gEBV&>YP zib-!0%vK=|;JC_c*tw6LrLlU)?Fr|;Qw*pCkzJfj$tsffhQ3t;Wo_knkUotqbx{vx zFQ*my{ow)(GXvTH>OS&pRR!G5+0{H5Z`S5`w506I&TI@O6!x zKZ=;Q1dIwPrXjlw#R&i&jA@(i-%)YLIfnKx-%=LhZ2DG=Hz^RJn{5$=w-X3drF35|D3V?D2 zGz(({ITI;Mt}Q>QVXE}igc(4!*|UVg-Dd;LF&&1ZAW`m>bDyu0HF)#?8=_|E?`J21 zAoE8}?&1EI@Px*kEB#k^I!&YzC_rhx#r_@EMWm_MjxIj{`SWstPBK$Vy@CiaZuzTd z6fcF?ZjnI`T55Po!#w@BkGt^<9GvnmQ2lf__H2;Vr`SmM8LcIm3w5S%;HoiO_jQlP z7lG7_DhWX4+Kru8a&)tnWVP55gFWREBZGJt_NBS)F?oY;6y*DnRx@h-L$c~U{lvur zj({u=GuLDL+h{PeW|7n_)1rz6QLp#Aqh15Vztd5lI2_OnqIJ3$R{Cxrt;kQx!wS+m zt%c5xPXN_SM&n9GV_azA?rRLjhF4DdNkvnR$p#`M3J>p^7&Vsd#@VFj?;JBFa^iv5 z-*=uFsNf@Yb8&F#r0`0f-At8=smJkvw&nYOdC%VoZV3KFDmIq-8nDHBvHLxrC~AU5`l=Th2?0dRP2vv&ShBM%Mh9s{VLqefx8f%=qt=I#=G+63})lhGDdf6-0d4vja z^tN8Kw!QGbfeOUGK-!XfL51=OARndTkloB&_CUa$M<@N%rS~$j(A(DU)C#NpXn#su zgl6m>izsL?24}C@e0tnp%nO*mw~T=wW6D812VE`BuZrafZ{80R9BnM~eH)T;dlK~kMzWR#kPfm_v)#a!Qmt36CVHFGwgX+|~b`tw+@7jryjX zTGNnh%aoP<#nSaf0JA|72I*Pq&Nw4AVwM$;Mq#16P;k($cEKd!wU?h8$&o6=V;{`q zNDb}ROt`?z9Hc0hSK98>BD#F<_4E3$kLMJDzbv^GIq>M03~y2!1yuQ*)#ZlRkX~|F zYP6i%IOyKWpw4A>uIXs}<+E}FRd>Ca&ieu%2R%E*5&8`-dOm-IzuCTfoenZfG+hU; zCb)PW2Ji`kiaX*$7fC{B`X(gag_6UPuhzKzMWh!0kHN?*Xv)|&?=t% zxd%7zEcn5EACN~LNY4FJ-e`{CD@E}VX)a|`V^l2QKyA74(=Hfsr(@j$7%AZw7iDJY zzX@TUEsBFif;uZbr@6+!hKapnO~u+6mOJ$tvmBK&}luq-sA4h9iE{iXz?B;KU3I@pm?J}y_3-`KQuU3&Ig>X&ktjUp>f6X zkPJuVWXGCkU94L_D~>SvR%vdZFhs#i(>TrB6_}Y<<*qG zT{jd93TE|QLJN(Lumc*FB{Bs}ZpUimHQh*`#llV>LZtEkK^rz)+J(?Y0e0D1muukH zg~ZKm*aFmtkbN7yf$_koER5(ytEO;kGpM3Xen;Xs4h>B8D8Q_oq7{UWQ0DOyVEu!( ztkfBLV&J%uBFog25P#aMW)j+^8d~dinxk~oEYIdw6yDo?P0+EX??tX$r%l9Xdc-F~ zK%lA^6LvpZ`P7iydakdL4~9wOe}p~gUiFwH1F9rmM-ZF3K+YJ1I8m zo!t3|o?`;<3k1}^UJpaEU#J@B1r?5A%863ac#T50HjJ8*P~Af>t3NGUiReCXTsmd6 zA)tu112iSms)qY;l`}1u6Y;esy&P%z@{o9M>64XaLH&z4egqZXwT9h$#gN7qfuh`B zcn*$zP6_y4G2YZFq88Xcz8xE`U8JP-FUQd?#HELHS(;CjYlR;eJJG$Wsg)P37GWvN;z_{qo|=7D}2om;wKa>{}EeSXnho_Pv%) zF%a&bMhtFZ4MtXM4EzZFpuf}2zb-7-6p`wr&=oH;Blq-HL)Q4EV_kq}EVBqwn;w(k!3a&S6yu@n*(NRQf|(KV!!Nv)_#6uzhO?z$xK z`_Yxs6lyiKj|VbX!BpMQcskINRf0P_jCHy)7Xr~UqQgInYoiQR9b&J3~XiIqcho#6dYQEiNE>e_{e>&~15UD6#ak+wOc zJs9c}zEr9HrSkNpa9YYx*+#DP3}3T7I86~!A;40-;^9Ta$w*bX&(F|gc|TdBvjs>r z3nO~fbotQpVAb!5l>k_OD^JQ>zx9zNKmeSckluSo3MP0mEGNNL)e`0MsR+CV1ShYQ z6qs;kP2qf{GGuW)gIw##TW8-%fK2$*&JdLvh-szU`M!WLz4ds!-*66YkG1UUy57|7 zgtdEnUTCrv*sbGLPRKZU{71QCg-*I59shNGxkMQag%hA&Zy$xh`)?KY$Xjn4ynZ*h znvs?|kitCl5w$g20uF;cIM&a+k;~eqJV5_`PKgB+|8?Nm1kw5l|4tS&4Ke+@-{Y=% z%>#~gV5eUywVhPLjW-xB7HK??R2G#i-F~Q zeForVugGZCLH@pBV3Dk5HoLipK>ITXqeM0g5J4x^R_+Dw_reYttyt`>pqT5Ru;?5o z;RM>oF}?05GbC3(rKx&la>e4G9AgjF}>36_D!FMf5(le z+e0e>3u86dsneOWn^bPyh!?n9)`^e#V8F|<;w4Esh88Lh9<2&26mYEh>S1!CYh%ww zm=1UoiR4GYDh=nkOb#A~0#`2@$C|er4L+CpHdNeENx(Q%etgq^{R?_mt4vz(nwKh- zwIRt9P}ay=;}1r6Xg_$r9+)c!uR+%IH0D^0vCa-D16;cLZnLhZ<1je{=yE0Uu7tve)^H6CcHzPLE7j z8Wn^UV2aTI^lX3Wh0d9|GL{a(N8fBk;%b*^(Y^}f&hEcbms_jBK$`}4XlFtr}^ zN$)j8yUcBND;ZzrNHhQmDhz$;aaGhd{kUSd<5i5BouRn+j_4;K#=yUPahneQ;$+0Z zVE!weZsd%m*ODbUGoS!Z&P~@&kIJDxeT;3mW}b)YPBad58{{tm~RmGw-EKyQ9A3ymbh1#(ol;7wbHHnx6!!`pXM7 z{wMmCgUlctw*ms&`T35fO`AL>JtiI|#KqO0vYRV#$|_v1QoZf&A_IY>wwp{@{XTKkMpSE8mwR&;NdqtXOiMsLCpY? zWz2MJxLrR#W&zl z!qYYFp6Z&_*pWgj~ZQ;+M%PrM^4%KuKKj*n9d&vceabCAXlU6xE&-bmOpi~ zgX_4pdKr8~+wjx7Einxo>L9LfNB%0L(Ys(5O7`4Xsw?Bp_nqJDyVMX!Cj zxE#OeS5W=jU>ohBOBs=1XxIzLa^9lxE(8`3xf6s$M8if2(?cM2y^d zfuM2gWRcksadeI&j?3)xDmX=NFc$tmj zmV2eb4SMawERgew8T#7GG*2`Rc=R?$t+(fdi>P~@)A-&DXX2-6>$(8o8V0|z${#tR zRN|s1t7^A4q&BIc5(8G(NhRVAtJDuY+PX#$Ps7$odcG4_^z8sR>g7HtSu&S|kZ<0$ ze2aFG6?q#yr9@m>tlhcgt{C}kXvQXYJK(gI=|y|ssOxQ^eH&Ywe9>oYZLhU z1yJ{9I~{GY>&7mHcy(%`0Mu`QtyOgaL@bW*MCe9xi%XZ>-exorYbvK_<%xGPdT zIdRGh^oNI0GHURR0N|sxMKy~)m0o1&WfeY z(X;Hv7ZJJoZk+;E2)mZ0eC2P~VIymi^@m!#1kERcVjivCDd?4HHHVdMSJP@wU4#c7j#S5HqtxD4zX@G%_{{nm8DN+z@yA-j zlovF#W4_`}U5T6M!8^`V88}d}d{*Uq#q!m2Q}YLD#|m3&gVwCCf@%v9Ec>_U_DfZ= zr)5xaZ6YGaohEv|JS%`kdr9|g-h`Uv`Zp}7%~S%=fQ8IT&Z(wDCS?YiIL3>0UtwwU z_(vV|qqv2nwlwNl8_}GGv0gFk@sAPSZmN%NO|5QVU7yxV6V_-`?S-m?es$Sf4P$23 zO|IuwHA;O1d^qlLS-YyDo0_dv8x!#Bq93>|qcjHT?8Ykhw1K70X+@8xJu4wt`g>F9 zjx3A?>gtO6&EQ(RTMXmw();Hh2^(3UFs?bTt|f1|>2o8#z7R&d(?QklgA{n_ab2C= ze6T0WO@3Q@w=~Yn?>h$4cZ0i@mIc*bB`650s5H53Js1;@S=L@J2Z|e<*9pN_ycX>YahgWUOe;1&X$QkVf5x6)|9l?qS8frX1w4lJSki(%-X)V5T5X)t+zf0ZQifHA~dZ2s^V@1a;mrZ2NcJM_sw^-@&om-ba7$a`oU3@ zZD6%;IdG??J=M_uC2hUw6ElX%4G;b2y@ibxVb?&>6ClTVx9?TWs|!mFBPWkEhlLOA zT2dP@EylO&f2O20BDd-p4w!W{?nUOlh@wWWk#5C+5L(LyeapIK2W{E*W1@Zfw1$A? z$HRYscq+&OK$E2FzSHSChAiy}F-|DYGLmQ-!6ycvX3Q!`d(_;#<~f4u@_)^kBqw7t zVMqU%93w3=tUzw1p?hTARjdN>BwpsGb*HqWC1)1I;*;e-e6Hl-K_BVt{T5Y4H<6An z&W8|Qgw!6+2m5#4&T9*bPeoUFt{v9_mSi7=N89CDSIA+9Dnqn(72gk%GW=YL%8pUp zCo9{sC9O)nfXd`IQ<-wn&%JDB*gZC?{AMJ=k7(p4U&;h5KqQNp&U;cKCgrOY#cL$+ zz%0gPR$Bv{36mDV|Kv6J&6YBV`oy+JeLBqlqKn;Aq50|=!>4MiUZh3F`^OvLo*J1Sn_3D_ z^j+6$*DgLS7?cn*p&PFF3TyICr!?LxM=OVgy#uoX`Ss!;$!7#XSwO=%APop2qWJyF zOo#j!yWB4&;N1Y0q$dX9O~>JXpKp)> z;Ne=maC)7;5sNCosXa8?2y=@jzqof03Z|_=r+$g7y~so*U>xY`uMRs-zn7a8s+LtX z?wN}QkfBR2P?d=1oz7l;yul5)GrO+{A63Gr+O)j`#6FMVf2n0-xw&$pbg_QpB4QEOo{NhB)ck%_ z5`79II%VrL@C6K0FdX8A!z{&F5XDn-7gjUj~gy}-x~x)zvpEfRwK%L4{X@UiBicA zXKg}Q!tD|8R5t%_eN&mUi?sS_OzQP#jFmjzH-4LV3Q?7~F934*=&Jxo2Jj8pE`8zI zZ>T*LVX0or$nScYEa&#Wspw@a&H+sF=z%s+R0&jfGYJC(c3v&5U z79@x@7ZhJIEp(m)yOD|&t5rBt#R=JNk>g;I7A!FOJ|5;eTJQrw62_MuW&*|flz?wD zbl4Hp{)C!FgH#0Ln_t?f`RegBi?tz>fo`p~PLq7*(HRX2e%JTPAH^N^3E(^kVw5m( zZ5NNsr80p#VRkaAl7APd^TF!LR%rc1T#m{eC7t31M;+@qU-@WY{18=hC(J>W(Kk?p zGFB^fAB7rQ2%BihyEJ5y792ec`erif0#L8@3U_?)A5}cLYJSwo@*PRK0s=*lY@el7 zx7)8PUvXo~J3fDq^^{)k^kXJyy1-$}EBFO-^*ar6eyqiC3viB;0@Z929a9Gq8~}rf zjY)tffVC9^>Jq$|h&x0pbtCZrKF`*R^Y;QRTWSs3$E%M3?K8-CFatds+L$$$e<$9i zUVKly{n#k3d^~GI4t;yEC|b4wKU=S0PO~#omynEyzsZ-;({4L-v}TCnuAWJ8JNPxA1t3yb^*OiP#whk3evZUXAxbts@(xkloQJ1 zfgrDXg7o)4H{EFDZV`1a13>xjFHilL`J0(#-7Do=oo25IW3BVj_dmixE?AF+)ypDG z@40d}4^hgkeAqH4KVE#V|JtCa0?7S!T}1ISPdR5vU7=J9pY&sHAchIv$Q@iDhu2Py zt{})^Q_?b)vRTHEcwm|9-^wUwyd7G5axM_~{>T>DVsJ3iya#bhVlMU#fYUiA3w%Cu zAswK~vZbzI%d)$cb9==LvRRCJEfc&f=8mu;(L}$e zvBye9Lwj;@UI+)2%Y;ZQTElG`s4=uv%nY^wK>ly9Oy{fsIQ+OG_#zY-*xB~;eDQ_TTBq1V~{w1^4 zd?NLljrgft9B^@}Wcg1}tgXKMHM@+LWr%`OLe)5jp%LGCH+4>zd_d)dBH2d(#y!}T z!s~-)K)}

qB#B<~RhM8Ch5adWhw?B+fpe7pMa@jO=cy^P+P~8E9xr72pCS6tq7` z!(?LS(v<5>$pf>v#VzdD@oC3d5ENCu@;emuu5-o2%%y(oM3TM%D3f3_Ab=K_Ul9yu zm?9hitltRrT+kN?Yih)5wGgyQtyS1PxB;E{5k3J!S%t`SdH-t7>MjYGSAZymygH2H z;Jj!LXhJkK>j|g+8+j^mtRVwf+&$u?13L4&mKCGFh@3tb=IZyqNzT~UQ?rYYqxjjw z*6iRMH!qeySFKO$8uyO*&6>78SI3uRH}!#HH?-Gs=-jbS%hq}4Psjh zAAUc%xB>(X;Lbs<3bBN#42r(Lyq`EWBxeg5GcU~I2<{E!}%h<`#Ztf%TKJhr@Xc40ECm0oO2_- z0P?UW5!U39pht_)i;>4M68ysVcF8>TXu-+>R<*M!ETQ-FHVDIQpg?q_E7Q^=t76hn zUS;=Oe#@hd@ez5~QR~&?a4%8!;tqT@bT!1<=Y+x3r2zGX*BbaZM?Oo)e17fe2cTbS z;@T()hb$CDj)V%lg!dT$fOPnQkfIUrA1<#e%RnI02yyz^)d-6cRt7AeU)G+mo`AsFcbsntVh9YR-YA z+KW|q6p}M6AQSwjIA%~^jJa%davS#G=eCr$pa6dhvY`+^9*sh$AyvcH zb~Qlj|C0nwQGaiTqtc1{4VCKa0HC9mz7eL>|B#srpr=6=Q$Qpls@;KBfktR2LSFI) zeQ+;dldikge=r}=n*4zLd`&difT2c5%p+rlPR9B6JZAnxt;Eik`7yNb$Lj5A7dM1sKkzd@ zvg!-g`CzqR+Xs(={NcRbOT%5x=yIqIp8eBV@xe>n()d!K_pveh=>vJiR}GS&;<@xg zNZLZ#G-w35e$O9uLIi+V$$(p9FS(`Gl*6_L+5NG66#;-I>?+UdqQU^Ca5IE-1<6X3FN4}#aG+E?CO z$2y^;k9R(K-6;G0*r5Nxz^a>Fq`uNqs*MQ(J3D%41cS+jc!s7x6*2y7ROH3sK&`c? zQI9O04r^t|*qN|{K@pg$_E|fKF5pMK&+|*$qIB#tz&WjQ1NYhtCUr0Uxp9Ek_X=iF zcXi62sy1iGCgcIaC;~Vq-38GOkHzL@ilToMzldA~>j^=Tno|m+p;2v=#JIJ@<|;|b z0NfTi3j#2qhz4!Xf3>^;SWuqtbpwA z#na0?4WuN1QJ4Dxj@6l5DuO9Y{f|H+!%5Pp%e*ORa#IelSn62v<91oh*Zyy@)|S;5 zG=%?!pba&42WE`2?NdkK4T~~T{+L8kJmB>$Rr)vfXxIhX+~wCB#&g;ke}A{Ozv^Cs zB*r#)gn*8!7j`-_ia`<6%{PXZdehmbWlJfjJHC5PeBetlqKcU;lDB-mn&UWM{t zyLr`n_nA7WfsS?Ajr_U58a>)N=}III%hL_`fq_TBLse~{(fywgN(!9OAuS)R3xLfk zr)Lf#?BNXz>QzD1InTRHnon*3ct5!lQsrr;pnm!anzraa-7*`nIEI1cd`$+QU-`b! zi8J)92Y6TCHdzcLdl0Py66J6m)HL~Zz9yW%@{#)a&P4MDmB|*EpKMbCKnxu_*C{XV zuAF$QgHc~wqVnk}Q6V+^yHVk+D_X*!&S2Y=mc;%=Dk5s~L6(rNURWS73dHWe03cU4 zJyJ%56^cLGxtgN~Y8c|61ZKwoZDz6`5YH3mY=Bc!JS@8)#9>INqf$N+b{#kUSu=zD ztvq z%cwHw|S^)s>1GRE^^vly8`8KPhV5!}?ny3>VR6Ak+7O6?* zxrWr0##H%gSiTzmQ-spBGw%|xfNlHO$bkbDm}^@J_q&iaz64?$zICC!0C=c(l@*!s+6@(qdMv@w_fr>M}&JHJfa zePHg4B4&jVaYEjCg>PLVpj6KB90`_;o<2<~oH9f&kG9VaCRG-yA+K8me?TgUukK|d zRuj<)u_ctHVFils>7|!wt^#+B^K?AL!7(5hAO54Iw1w6|=g{$;rP~^V!Ynipad`FK zXnWDBXFjDUOEI`7-zw=&%gyS^0quT^Zu&jkJ&i$^cE00KH;~JVMhh3ansJ3bpK~eR z`XdO1r1TVzSN{E}CSq1&+RLAw+?KU*Uh_5@LB3A(LiMzftd*()7X)oLo{a@>&Y^O* zSjN7Wl}NR!RZ2Q~Ky8_H?hU{E8tGIk^VmtFwW+!5S>1^{{aD5w-`}}@5QFJ1)Ks)S zS2^?Av`IhSo2R}I*BjIuHHr{l4empNx;?pa$a_t8!DG_7uW1*Ub@LmvxDzQcQmRsBW~5do}c_%c(m179hcz7 z$h-9n?fD!4OlW1)^cKBmK!keKM^jo2DqkMW!yV15P)c4Y&?^kH6bq2GbUHwAkDRT! zSewQiFe|jWzkybd81n#mX=Oi%nHdBaNcnu@{k5|*!qwLDhn$uEW~bt9BOuD4o#-y62z;wLW`x9m{`i(0#6|_nb%7fP@e0W95w;X zB%tyAF3170Z-A`CyiLZR5%!`=@VT(RTiKPa%$GOTHLK>-@ycC)XU$CqD8^$&h-Zr6 zu3gg|SU5ih&tkwoQ}@6W@Wc_G&tvo4<1}u~ zx)BQ#7%kfqtU%TXPsj?S`Hj5K1P}>6Lz;I~z~2qXiNO@saq61+Ce=_+d@HXnfF{Wj zu(uIUyna5XInV8|Sb98p`I6oZ%^bpsou+Q4;nsI{sLsjXE~K_^ZOmy5^m3~py%SEQ zgH8%qT6Kf9egL0aEOr{T@R1e2RJkWh<(5?K>-iY8nF`6Trh8!~yJ4-)zjr^D$VxMP z>o5DIV6<|^Z(?J1u(b78NHI-1xBQcJ7z$(Lg-8h^qwODea`i9Y(Yo*oi zzUGzIgJ)K?N6RncyjkgMy*)0b7q5l7rMl^ATs>2Yqnt56!5&|}9JBRQd6w;;-U~CI zskTe<)iz=se z5s|=Iqjz<*%;z)>bPcRT_nR*Tc#kY9fg`#AgKTtRDtrEJFd)Ecg49Mp6@?-MD%mdR_gg*DuGr{F{1!qEdI+kPE zR#@mQb5wUhZ88bxFj*!x@KC6PkCCzM$)SW0@AKq5>kErMZXdsx+GSabYs}(FBMyx6 z8CtiW;g{$ALM}6mc5taM*Gr5Dn@9h(F@3F4?-j7DIZq~eBZ6dYdMh`d-z8Irtxd>d z996U?`GHPWR;YLlmq>d-mwfu#WXjvV z2lor|&sBxEuChoVjCZEeZv;=-^qIVL5t?#bCN<^lbSJnK(vABn#=SfDGWCRC=Qh3= z-sycFOec7GuxQe2Fd8pY)5;Hb(0vH|-$)+g5lZm>==8^6O`@tTD@vixCDt8#a~r6L zj~THf*;ujO4Nu$*I4{LevK7Mlpn(oKN9}zJk+rSN?xUo-vf7R<`nxt8MzzT~o-+DA zrM(UXjya^ZwT>up|GBxh4G~pVd%+TUF75Mlrt3M1!xYZ%+I&ZX#_g6AePxVwRO$Bg z8Lf?RcyH_Uez5$Xl!gFlv zlS5ZG!v|#-4a5H9rS35Iz5ODvWpc}zp(z)m^+Vz(H-UTqkPWxWkxBr9gS510h0h2a zBt9s)7SfGKT1o75e@EN_4ZJ^lL!c>ZfuroF_j%vX9Kgix27>^kXMSfr$9eXPfI(Gz zdy~6r|8mo1VjZ03x|`mT;qGpXx3!!;@hrVKphaIR%Ktp_?k1QaY7D;3Ff^*)b$5HZ zZ4T1`SDV8;rPu~Z5>8LZ7HVwPq0sI5{@ohSB}-Q_+?qEL=HYubX0UXE9lig%oSVtG z><;6NwHGbD7E+PE)1jcklI|Mb$a{5THBQ-_+i1wIkUoA5n_gPtnj6|Q;{{&!U#r0` z+%g?~m?|k}+22NTU<>deC-%Q(Mtr(lO@pq{!O`h5f5ZS{Ayza^#q(Ua1a64R&JknR z&V&M{SY$bCkYjXDwxSdX2u6m6T0T&iYfT0Zy~%U|8hwdl_t=1xIfUKd|*qmd?B(d#~QDcscWp4}3;Xz?z@^PBPuHE0bNdPh>r4L#@*R07v$F zHw0;=wTlh8lU6D(I!!H^EXRiDYDrh;x2y*0kN#)_T6V9Q(F7H1=ij`3S21^P z+RAz4ALsi1b>E8roJ2!v2P*Y)fvf6HA?>3jrD%XlLfd@_Dhe&YOf}xcQdql&-0;`0UI;# zwBTdere@sR`d3u!mZuKz{=7(95MmctuZowEzb36+fYASpF_St@N*pn$cDrBXqtsI= zxO=7NS!Uw=Y%BYm(R!3R8C4{+cvqGIV-kK%fjWHfs2bd6<5jz$AOFY<@PY(a12+Un ziv}E&iU0WVYdxa{5W0grA<*Iqd;rg60B`5}4=^W!Zb-y*X`(|$QYSfk^}M>-<~K+E zQmugF5(wQBN*ts1IxXM#$ym~%+BrrF5tY7Oh%cS^)%Y(zBv#C7`#d+f>F3H>QWadT zOw9t7K5%K|vp->z=^$9kgYs6N#Cljd{kMMViL(RFl5kLjPOgv_zp7Rh!Zg$(x`t!^ zT7IJTT<+W7H-Fwo9S$ZJNC`eqSka00G#lijar0LFT!83m=DaNqoP%@N<0Ml9`9=)zf&D3(-VW_1Wn#ep%{pT}!nh0^-CxTO&TASS-f83_ZwHln zqUBCqTiFV*k^LG@zu3s~n!MvdTY&_pD!AmSA&kp&H0R2S_w9On3?+d{) zG2W{JIM@K*cX4Prh-2{YDMQbVOKCRsxR5k!NFAKmEpW@|Yz`{I^@j>Qq?Hzv3zb8G z<~bh-$0gqYo64>3;o#lXf%U?_`deMdYR{>~0k102W7lr<>yoL$@!o@&0Q9SdihooB zI>}PH6V1x5g}lQdW2*7CeZJ_vH9>)6IZa!O#o#3ZUw>JMEZ??V41&9cvzwZi}wcI)~p|B>pz_r%D@G z)X2KU|E6+%+AlvfH%GZ%NMRc|#r`nB;0U-Td#`^c6peR%F%0~tC!cGky!^6%nmOyl zS4q?S;{LVu+t-Y7O4Wh%f9w<6RWPBO{1Dw%?n|lomi%>NB5Ex))xm{STC0?EOqHIo zzXlG|nJfbzrz2ov+)U>Ne|_X<@6k)OZYr4p{^M)((bd>Fi{xob{pG@obtvVLiF=`Ct74>KYa$APkv(_-5$GKY{^teDl9e!T;GVlpYVS6M>2Q z&x|HH9;26?2-qdCpW8XiDkqWZr#QG_Ns8Ah%92sNsmH6@)ehVmseiQd{q=uuR0gP; zh(nx9lySSz#0$t8?_bkNQoEWGQ&H)4`awf``QiY!W}m89b!kI{(4$M<1Vdbc{Kn*+ zT?M`t3EQBAh{Ft`}RKjoPE!E?*HG*^C0g#vu4ej)n?6F^BQs5$Y9NC zsnrk&WXkq`(cxWByU*&b|f)4~DxQHc>*|Cg<#+zs*eJl=3OBLyni7j|E+|4EN;|Nezt+>t~gxMJ$v}* zpUJ?R{!cdQ~;xtlvR~fRTTh)f=_^luN_gr!)Nu|p0>_um3L;B_x~UU9brGH`acb8=Mj@^IQF_qSwq4|%$IUI7yesavAr)G6KL z9zMQy9(c#&hxNCCB`7*OJLq0g*U_|7(Z(z2XscXOP*qb`QP8$mQ&Z5=w$rfJ(s9sH zQ`Y!v{9#W#L8xrP@xKkv!4nT~{9{&aH9H-=gN~|#nudeAf}^tfB?UWmdre?oj+#0u z4wvw%>W+V5Grr;sY~Rl9pRo$5asU|BRP7wq)m7CLw1voYE&;0S9DsSLI5=pl+Ue+M z>!{mrlM_l?7oY(o*$M4Sf1ApmMsuOoxe{M0p znvPmpm$WWv{oS9IrV4lMejzEPsYG}IK-?A5gu?A0B06jU@-G{OD>yu1C9Mhmfd{(p7rLLFLS!#_n% ze>H({O!)YBAP8Rm4kaBufZbjJfugVIg?$i+F5&p$1E$2s<0SXQeBH0(tDmh*Y+`@r z3k2Rxo3?DcSU(TptiOHav#5Rg;~?5AkC?s7*4QOn%+rrGRPEP3v1^Om_9$&Rqxi8M zvGcE+^y+swd|Y?qV}!%15@pD-Z`Y4+_Wrn4r2$$$B_;dm(eV|BWxR2ZkJW91uZA3H z+OaK4dxuf{{-_K+$fm5)*mVXn>*a0hzC74;BIWRhrA}y@{_cJE#e_X?NN4<4oi>F~ zrgjUbyc8hbHXOLJZGYcQSl?mfnN-}_XNRwEkJRqFtL+$I1=&r>I(!ZZAb0Z%kKR~c zF}Y!B?i5@^@v_tG<{E%-qAIko&lg>);>j*9}iJE(%6(ZWoW( z5Fm44)qR8CJlHClqPX`yu5kw-k)nP5@SSBE>)R*}ON)k_ZnMQ%-8QKLqpokLrxfqo zaVuw;q>u%d-aFjIoq^ew1)c|-t&$>D*z)6(T9<7*g(71tY<|U6rAM?Wqb%IsV=JfM zRqv0p`rzPw|HuR7`W>-Wr^%S~>kx_gs^<3KnIejpZ;t-!My$5fAU-mC)+sdD-Fxqa z4~o)2QjXg%L|4uGTwEz$*>xlN<@~S;WlhUYYd(SEj4Al$Lf%|Q+bl0;=rMKC@7z|c zn9xuW_Q<5$%%qP-vc$K-1b~qCFjpZY4N>QSvsvl2l}MWN*-p~w-F#8W(|ta$1@4ef zW36F8Dbw6w-ur~|$Lw|6_rJC7>6~IeMbvTid?b~M)@C%1bT>E73Q7IWhDaHDMtvl(w!t&tkE10yd7^3UWp!xvBjs&f9rcU;2N1us2t;y#I?vq zqLuIIx^AQI#@8@UxFaMTpE4c5l6b}Rgy3!ye$zuitXLZ1MFISFehVSrwSg93<<;2V z+I-$?<)m)AZEJK6$>XBaXn^>!8vi>ALzK#Cf|UgNbM5odP=j)#>NIPbb>oeXVyor4=)P29naM%(s7?*M4gx}STs`N_4YyF)hp zP_qZQJ|tXB`u2qqG`&v#3cgII*{6ce4S48NfoK(^P98?(B}X49XUh9j{HjcGjZ11h zxH3euJ?^TLXm(s-L2x${R{p-+xB<2ckv0I$4Sx2t{BdOL*n{gG4Hg#V$QkIk3wkOD znfLg%@s+l>JOw%Jq37hL*C)fC{bIj)ey8W8iZwLdjLKh~;as>u21iO7oR;E+h+%|A z;yx$uTV4=9p0K<)|JSG0tGIh^HtKV%kY4>8Om?D<(-+832DSz{)??q<0V`R;9+}Ri zC=ODZb3-a#>d@ckA~f6g?cXm>lhOMdVMqK|_<~4FGxK9?_Y^;rZwvR@a}53cDhBfEfr_=6EnFu0MT#~YwiTGKA zfcr|DD@}|qdf)fFOgeZLwRV%lqQW_fsA&czKk(;!&X=2L6;{=?;xZVi;)_v~KExJE zs_>tyJzl=@mGQAr*s}FI@wZ=369xUs=*-D$JmnJ*}HMNB&h}+fh)Iu z{P}%8VC})1BePzq2;wL<$Sh>ce-EkR#gv9_S5kZs33q>!BqV(FMmbL^sFq9lH5A$~ z3JY(hb%-%`LPm=PSBgfP->x#gQN^b2Bq20sj7P7w2k#E{#0-W43${;O^p+LKs@*c^ z5D`py6j?tIdzHADqC#_HLk)TiU*ujqggoW0bkthG>&ciUvc;_YDKnqGWmkSIM?-nQy!!gMh`v71kAkY5)~s7&jnpx=ow!zAkGj?mtG2HxR(Xez8ivbg-A zc!e0|Qd(gtJ5fj@dR?G`r?^J%KZ_^2kT;8wcGUZ<$lQ#Vr5zhb`Xa1vH)Oxp#g<7PL0mXGA z*T0X#_~jU=Q{t~%`D-lYc|78>70on1{b$ZrS02%JXYDv(cHZ&a`2mNrq-ocrzV>P3 zdie5ke(2cT;v4$#jpU}XWiFl4L-@!CSkB};AGS~Jj`1|bZ~pG!EqGhw1HZ%utGA6J ztBo?)1kq`V3%`7NjcoEj0M>IkB|lg6JPo!?JOCR5H=W+9{4T^}F7Nzu`Q1e?I%r#f zF|{wAnVx&%Im}T<49Cw+*8-1|->VlC9>FF=PE+gvCh}&)aLk-Z*&*aKSIg@6iH_W2n<{)VW|-tw0KSnuaBaxDnQ1uK^O5XnBjFa}0hq7!z^(^vlwj z{eD;N)WovF2;-D$HZ*x~Lan!jb(~bug0{`+hb=Sl!A<)4ujz0&Sl#JI%PsgYI*`fR zp!*x<=ZSONDVI`z_KeXZgxnXgj$RD%b-9)2$r0G-)Y4?nF}6hH>3XN|B;@>aR?;|h z|1$(-S^^S#HZjOB=KvxHp?zxKL5{O_OwVx9yyok|Ez?Akw{ zsd44)khxO{OQ{z`46l9}4+meZ0X#c2P5FA-=9fRB&ajtC+>hFDD>!b733rwBQf=S& zwtAGGG0$sSqH&Totxr@H%6Bp$US*;MBe&c9TJj_>(3(h5B2E^o})}idg&~8_G;PT>9Ws) zuD)0@7o;HYQxsWS*B}A}*V}Xpx$+-f#w*J2BC2%htX_HE!RI_R*(* zvu=bhKhGAEZ-@{BT#J(iswb}=7NaD{=WIZ>+!wU6LK(Ad-28f8*eUkdO}@JV*iApo zUyH(ifur|LOq^4BhxGcIME|*KLR7Q;4Kw+B&5KzR<7)X%I1T=s*q{`N{RurakCjDf z7v>PZQnyBb>?&~YddNg?N_Ig#{udB48?Ubdi$Fg;+w``OA3x1lnX@N{Vdeb_RE6?S zu%tChcsz_pL^pq$ttqwGckcj%ewkuey%A9tG20V>6^R9+TsT#}xR|c5rI)hzWw*Fh z?AC_S>4Ie1>pNjvezuPr=gy_y|1@i{6Lp#sW~h#CP_4`tJ-Z2YlXLsBagG1&`e5pQ z{x!JzfWS1@!x$s-axrnV!SS+G52Ws5!qd>OObHK%!#u^e7`c17o=9cig$PUvm)|2l zF-;ng?}|G#D3$Bs`ASK?W%8j)O{eUku8jCw#_xbDIo8i}2ksANfqm07Q;;OwEH?9= zNLq{4c0Ku)Y-;!s{w2gIK3XBILy6n5PfQjV+go;(O_Ua?VsTYbY=&Ouzalc8I`NQ8 zk+(%SeA|9?d5ZmBOgp9sBUfKVG6OEKr6V@B^SIt2eZ8@rQe(!vR_pu?%9Z!aJW!UX zyE3^-k;x|^NA4(&uCAyDp8mT57~U=2G?~d9=UzlU~i09J8u^9YB~thB-_C{p6cI*rCPQStZFlf_lK-#gd)qL)CG)t zDMlgW>$E4ttGV`l)ie=T!q*v+aN{0{LjQd1lQd(Enj4%b99jiQ>7vJY{n|z~md-Vf z6j-8KwkB1>I@!&7I~c3t(Y_%z_8DqDd)y&ni#tD1kv79D?psdt4D?Cgm1CAeZt3lo!0*PBLTi86&TElGZ19ssX>5ObSE-=IU&+h$IX4d&5(OjKRM9uI zH!w=WAj?q3y~*D@tGoMaS+p^S#m(TDkSZRuC-A2{wCyxyDgAt@f`s|CSNw}#Kd-VP zN8BV-hA@mr!)WK70tc(MsFgPI4wyeXsq3ykIXqt``H9W!Z6IQJIaOB0ivA;ikVVNi zt&p%(j2n@;+XsF68LAW~nv?!Up!?$m^GaM4wjFMH;mIDzj$uv7U#Zd0lQ6%^dU5X> zF179)mg%2!X0W|k?ZxzW?FoLH3~qEq%yD+atc^;_c95Mf(ByLEe!MGg^QGFrB&k#kLWjYXCAyo5N%ns;D z51=#cup-wFTx(5+LU#$W_bWH}WNq>&EXUB(W5Hso5ZN-p*`M89=(`}#r7*uH>P?HU zDqb$(ra1bw+dbjqO{%RlJ;=8RB%?~E`!yQ#fwN>Z)-j8GoH#aSlwJf2`v&Y)U6fp}8z zV-}vjEYBB}|GYA0R(+rR1v3f@j6$)Yn@ni1KxFcgwx?oJ`cg5r-#BMb%A>HOq>2oL zq=(Q#+u*@pSK!*cc}bgdIq9sl*7ywjp9;X zMgeiJ#gR9aP&+f@RY|-$8265_338)|FR?d`hHDg9+fUYo(OjTHxi+Y~6Zvkn#@|?01&nyxZNTM^g5@;N z?nfbwPe0H;s9Qs&gdDYiW;zN2L?Pb}FhtfRZy0xNW^4!qtmluip^;nU>HAWRD)4~o zQe-xlQh0>ZtiL7sG7ulo z9wC)3J8IFk4I#Ps3^PUfqBP1-(Ehh$%__hg{m@jKHiO?|MGXGkShwaKv0^$=G4%%y zwCqgVsCDk-5IdKh#)4q#GQy{8GFcMx;#8 zYbm#0-#T}$dN0IRV5pio=R!6O-YS09@8GqmU$yvdZIMG!Ij>Hi-+fPcsHpJ7kPf8^ zLGhkCG}pW%=x00sCI<_lBtyA#@Hxh7m&f+RL-rB*2kYrF%|&pAa&TZOm#hPSJY(>Y zN*)xm2MF8a$0LhRa)VSsQdyR<1+jH%bv#|8U7+0BI&V1=9kOyABo00)etQ*X`j8Bb z@%qYR)r}c9GQC$Fqs8}?wZU++#w<$KnNn#8eezJ!7NfCAA1{66zS;=%v!kKU4@ayv z7?es~c0vqIQ?u#w(zq|ja{`I+OtuTzA$Vb7LGI(c)<qMBvFO& zt6QHXl22BCe{WH(RxNkdpf+y*=S`EFYe$H$WCa$f(uxaB22h#e|Pf(@%&`4&-|Oh^p;WY4B;&pYK80XxFrvOg2~fz+&aI$fbjJ zvnR+i`1D}zSYN03A(_1>2FqOMlAvRE*7D&`S+722UBmAmoV50@iQq>qM`-K(tPe_Z zz>)12Ap8Z%S{7J?QWGp~Z?aQ8EGx+pl`-iP8@zupcUM$X(}<3O+*em5s;29G&8kCZ z?E4*09HSBAy+)Y_9pw|Ql?G;!2|*uBSiGtb&X+;_2*KMIqo00#?E*RoeLhNJ2r3_( zv=gEIQ)Fn0QXIU$Ofjk{xfP@WIb(oC>&NiNlK~IW^bOWtnh1_M>SS(YYJO&%%po52kgagMO3iG!ER-WO_9MB0i+~7q-!lmYglBsj*b&??XAX@G4*;O9x>4` z1nnQcd`}RjeyyiD$~{dQMpMO#x;u_jk*S}o7_50?X8UyXX!8s@g)!&4Ok>_W$V%pp zvB(fxN55G%`W=2&DN9fM?Q$8si+<9ll7Yiyc3$_HpADwy**Qgob|Lvw;uOUN{cE1H z|4!`omfl33pgo5*8K<8Jf6kRIG?~v|MZQ!IYZ@mjBFy)CXRst0^BBxY#$lwv>16}= z-q#GG<-Q2=o_vY}$JCQZFAsrFK!wXLgm%P`5ak8&3lPGYr^{V-CE$Z=T)T`0jZ6hq z{^cUeZ_uey=vjl_FufJKLVh6+-sYw+1IYclvXr(_ja^6@H5cUNVho*nwJ3_WB!A(JIz`ORMVXWrs7j*Oa8F1@HQ$6RRWFF3>j6 z^=TWLdF(p*tyhWAY|=5}zJ~W_Ni<>-SQ1f~7g*FY32C|yH>EMk8U&~M5?K^fYVVM= z{9^D5-4X=(>!(aGSkBrb0rHTdq1+!o14?NN ze8YJi6J*OK!Q8JvTyHI-b+V63v1sLs37gkOaj3_GHy|gk&hUa6hYxPnIStu;W!FzB z#2hkPYdm)?{ov%q**6iZ&g*ZY%HIkR->x~HJXNfn12mWDO~SSEA!t5{a@-p}I>NE_|5il)Hw%N5leC%+(6zM;WF%)5Wh3Ht>Dgvv)HNt;e_CLeK;}537$*SwnapQ?Jn> z66eDV!@lyE;|cNK*n-F}D7FI4Q z2{PrD1PyS^GaGH2`O#Yg7QVliakgn3T5IEDWis2T^O&d{lHX-?sbd!rN-RwU94sUMq5{I$$-$baM%}HY$@% zIY}Dzvj z0L@%u{V0W4RR=4t+20%*Xs&IuOvC5)jZI%1U$E{t3-V8f&$sV4t~RdwIxkT$53haC zdJid*d>QlOPVFb}erRaprK%nt4GMz%Dau21$`cT;O;MCULZNP}CN8d&oy&thFc#L- zIJ)I88t+6e=~TjZYiP6&1H@+_(O6d27%6NfRiv}5K0`zCfkvV?O$S6$F?3fzqk{YG z*rftjffb_Yt+fp}IOHHMJK-OL5^IwPh>I_Anwcr=m#JqO0tb(9ppY-_ctb$(^i`yda7yiaVi_d|pAGL75ENH+Xw^e8Tfy;#m2`a9mMbzS&OWDjOT@5z zh!@i9cKTFk4HMeV@_A$J&1bEaQ5vUZZ!)-G>d*Z4y9=B^Xi>YK_PkLlj!%)2LtAfUWP@YdG3?!2o~|yX z2PvYJu4Y_{_>`IywS{#)193SGC3y=jqd!>(@2O6xhGp^a$;sb2*P{x-VN7iix3`>q z6I+uw8A{Xk1R0*8xhB@?%}UjI_KrsY>$#!j)JT)Q7te-Zg)YIR*@(-oX$%SV9`0z^ z8fG}H01zGhLlaxY5|#BNaVg>4P}AViYbl@EffewQ7x$MM_;m9!4V`zW$HxVZ3IySz+)NYK*{m1o!`B(pddA32v|n_>3R zPjDS$#+OhIYlxAtpLiE?;ik3Gb)JRqf4u9lT(3bz3_(r8m$B;_AYV0h(O|_`IAw3-=Z_%0 zG|+Uu!yr^L8~%0xN(lI&7@9t=POXE@Mv(R*hA)W|c^Sbe3W(hq!m5u1{$?xxc@y+b zt(G#P2)M@8)DmQi1KXCLykLfj@$Mrt@zo{2ct2(9eue&-##iV)?3DKD_8CcOuRj}W;{WSP}5 zb9zsV(p#UPKC^jY@(llmi4pkS%PU+b3Zxr3#0#BsOqkRtyqE#)+Uy=Q6yzf)w{={Y zBvQ5V^dXWcrIS3^lAf+WY*h-thPb?TtyCd;2dxZv>@(U&1=ZiB5>Z}IUn6_f^?E}~ z_tKDzCETVXY%Z?1!V}nxBbJ|b*Whc6e>H4$j`m+~v)ijb6L&&dR zFvH||S_`I5kct&S-zK|R)oD!K(z%H{#66Uk)?M0AuZTT8FTG_Z_(2zTm0Y_;p0k?V z-(#!+Mq?nmLQyXI^jOyA{4QBR!pQDNR#n5SNA|pd14nCJn|HK4Aefy$Rv`zDRHNob z3}^_kLZXl!H)m@iw5(ozIkm;vFju=OO6&-yGY9($=&>>2@Tkn~;#vJ9N@oE54s+Oj zR%Vhbo9IA1gqk!&hmN(ltP{d-&U=$O!g@9XB|{z7s5-2HImB)W+-qm0C$2s=QxHP$ zLZ^6;p8P7Yr636KYeNua3)Ed}8&2^eFEGlZ!=Ndu_R2x(`0cXKkeiF*mml#j+R|^N z(@lqL3Z2rkUtr|e<@6H)t9$gVy^XSeWoai-7K125{6xU=I6+>yGK$r_2z!mrV9L6) zH#e(YfOZq(k-4V%*Q_)lck>#Ks&1N-UnZ4u0J}+rec!oD<3b1J(}YfWfGO_68g!Q$ z`HeTJyF0qTA4@JrwtQZJoIHZbj1lN4farOgvI#jfH2Jn{gxEdli|#Q;Ij>cco#|{j z=SWKL^{c*%i+#5xw(ikwXn4qH#dc0v0V!7FLXG0#5aZX~fw*pNaXJ&~`RtI-!fiI? zBllo9FI~JcsX$9Mm&eeTMNG5rtzaD^RqQ_$s}XZNe3vW4gp5h{{xzOSD{Q{2arfyA z)HAqO#6FLg%p_Lwed)nz@&RW~c&^3yzZ)9Qp4rsSif6Jefh>LAfmn?#v4)p$EAWU9 zZ^!))-W0pAn}l;AJ&BUo*eB;G|IyNTAaxLd&QV%^TIKxftSs~EdzxKd<{lf@D#Lu; zZyng``VvH)9SpI{`MX>lIvgsRzNNSHhL}K#{q#bU+P6&wg(Y0a(2u{c$f;$#M|tE; zdse}>C6AkWuC@Fkjb5N1bvEuwjG}E%D(vM3q}Y{iycS{+E~fBEtnT75NnRTH$El~R zgq%hG+Z%4Gd#UoAd(qpeuz)-goF2HoCp)*bG3Yk6EPXnlPH?bUdc8B~(q+C!r}&YcGmGiF0FsWG&nu4rI_#x*C#4xHgNM26~_U7rs zY#;eaD?)mtXz$8RB!2W*Wl4t=a*tm+C~!BT(l;#S7JT&CVyYb*m@_M;72luY5#url zv;snh>6%Xj@r(j5Vsj}c0N2XCm&U4}yQW^^=bv3-Uo}u)LA`j>3zKX!v(K?ZJ$r8MT5v*P zNN$6zS-EEk^-Xq?#7E+8S*mve>1V)a^wD^*qI|C#40`;I03_UKuRll}!_u_$W z?y**4;>-e~bG>_nRY{j@f~oRJE%y!w&6CPdxe;~ix#v@fFPyKAkyqX8U9MK67*Wd2 z5&5)PfqzpAsU+gRM|13P&$riOS46}z`Fedb`Ms82ns-3?&Ew%9l*9yte;-xI3cPl4 z@j!cjP~f$<7~899HvYcZRFx@HtGt{i^kvJm@6BHr1q=W#Z51+bD;u7?YE$_-EYu^= z9gji~osoAx8CQ~%;Mcwr^(+0D+t)DeaVaOK!I93dqIVDqJoY*LgG)jLS32y?5u9Ev zxI-&;*o6jj8KNi{ZMnOJ*_i25QJs6-PN)Z22FHdGS(jcJXn%p5vLQmhFz)f5O*s*A z1!=8-xcqWrNa`hHNSFFNS!tkF7e!PXdvkmGmGhf!Bh9sXucea@ZoYuX=+{Ez#=(O< z$%}Tq^E(%dbs&-*&Ex)C9vz+8d#}QJ(vb$+JKtEPMV;ZI8SG%s@m%bf9`+$DWv%@CsN7feBb{9) zxt<8zRP3W(vClm%@C6yqa%#xyp@sDjg4ME}pR$%63g7Sg#bHZ+f%~KV4f$!%M=v^H zS@Vq*2*9+7%$nX8TPAXC#&oF1t@7Mu^L&t#(d{B#9qi&7P?+}?#1`9jvB_EBw$!Db zf*hL0?33Q-ir*G)al#CI4=;t|_+N?rA||N|kh= zo-@P7X#yP($6mC`BUt6)!J5Iu<6JC_xzy%vmFtQw6Db)dpOtX4f{(?+7hDOI1%$Gk z*Aok+(-gIdsz?@PG)Ox*NHrN-1ItIlU1pBN>^$umJ{Pti;dO<(ctg_5>aif@KnKO@ z{(|K7HN6tA%9Ck@^3y8aHqGXZG(yN$Vue85%;bp;$N?43je{fOP5Fscp#wn&OnFND z*cqD66SBwCo(<1DCc0wh&C7?XG-i{MJ&|iU&4Mby;@owchj7#0s-L_=0~-P=02NtX zyxDtjvCput1^W>ha$?mCZJQe<<{N2 zpi}w}qJ^@5RUZ9~5CX130zUN4+08)P#|@H~PNN+^{r|uKUM*$(UZk@ro*ZceCmt0c z3z)$RBuq>YnqgAEa-DwbP&P7UpXdufN#uBE4u!sU!R%`L_)wrON{@u4ae%NJ&-cyw z^LYDW-4{ib{f;NTI<7<|z7cD>Cm2|E%1_7r{sPW6Gx*klQ|WCShp*2BV@DoFgwrBc zPx(dFR?d99YRW1(3Y&*$%*)N~W@F8E{GDOkp$(G)tvjpmWAy3u12=cRKja&W!@uCnuQvtNwYTsLr-T>(gG<3Xt`>^_o>k7 zsd-BhZedc77aByWFlIp4up#aNxLblZ1F)fiL*t&>uLkFQ*82N#ymJu4#fls&wXg8E zechiqSPP8Tc?=3%az;6P62V@a1r^S>B&D1CJW~*L{h~JFPex0NNn0zf)7h48qfY(P zU$~SaBUnj}&)tc`zyT0(Ci=K`kOr=BvN#B zS<>gBDrOiIU7G79La3aWe^01%kCm|N&FJ0U^pEra`X#Ps5FtwUIAoI&mrsEkx zGN9u9e6Th`dy7&7U#n}}Z%%K2?0$dFcp#}_X8C@uyJeJG{@~Z+JF#i@_C4+Fc6G;> ztT@Uv^@5Onk}v0tY8vtd!W>hJA?kE@?$VR|uG)Q5l&JyvDT+q`j!-(a3EV0g7#f9% zPp`|I{>TD3vv4kDl>Z7ROky4VJ^#{BWe{!tYEGsJ_pEahk?>$Mtk<{@bl~A)t~I!+ z%ce|ph?>mr&xRix0jZM>Af?s^?ah`*3&7cv<2pc*gyOeI4#m)!IAHutoy77diS&gBu)~UQK;~cqf3qew52xz#K(QTIu6% zk$oCroulxkx}j7y)M`$k!lg`%LYL*vYthgtQqdm<=YtC{DNH{07-}ui0CBg!H_)dB zc99AHy41non*`s+(1QXg&#h6FC8rAHOW%daJ!wt{xxsM(el+Y9lVX)k1$ohMpzu6F ze6ek-uI=O2gX#-KcL^wkkn&P*&;+#4WBFQMT zxW`;#tVr>jw*X}-;dUPWc_ueQ2fnIX#Ix-P~;!boYkc?Ah~Dy^^zq zI|~Y%ZgdJNgj>t0z@CoXo&CuLZe88?Uih+06L3QP#|o3SLTj6IURBj{aB;SkH%>1OTZ7Xef{nw~xkEB*@m{9x|;Su>eiG!szz z?i!pP;Zky@d2%G2K_DgTK^0j8REAo0?OTH%cEFy`03G`KUc|O~FS3Z(C24W>y2Dxh z+vUyk8`7xd=;`-Ung*c~YWytfvPUy!8@jrLi#1QI5g`@Vq3``26L&KU^apXpR~ zAsbZbqy%7+!4^{>*tlNfmUZr$yJHt)H^##^TH?GO7r0Pr$PK0^%aCS@UZ zukpUTF7zscBsYrsDEeH|Ztlcv=D_?j`-d=wo)(k& zqZ(3cG1;4+4chuZq?;XLInz5{#st<_dqmLP^B!pz6>KhT{s7l#dy}ES@%-K~6@12f zSxU~yl*1R!>9a0}$Cb+;28YQcrPWEo=#AD@+J6qzC?(clQ2gz66Je2+n z!EkSmTh;TX^yrzLN6ww!9lfZQ4~;_8d#8RAG{iog8c{CZw)P(c?Z`dDKKZ<1wc~@t zz86CuzuaIK3`O1o9~(U+q<$e6&Vf|Dg_hKKNn;S$=(;ceru-;UxpN;VPk~D$U~#lEfu#WBwdE&=5k+IBH2 zI|%pMj(?DRzQ=kYX)WorXHdCeo+pSc1Fx(jOUwejvNTrg%l+_=Z~iXbIs@H#dZg4{ z0KOs;0$c1)5LxvEuaHD%{6dUlaN+T1Y_+jsHA z{Y{^&sf{a5e!LeV(U`TC7%Pra2S`A*N6HEj`e;kv&r`a>VvnP65~Kcg8mo8gJYlM> zYGMc~I*SGi-Ai8qO1fw?r0!W^tse?00F48jUMbnYuQ@guE;sf1wp_EAMX~(x6To#b zk8S5Gj+H5XBgi^`?7dz_0~_1+JD>^$ia=3l+mB=kQ1POqH*Z=kEzx4VL zK9l{Q)~S83cHMnkfJ0jRAatA?%_(^e^!qp4jDBBn(^#>nxdGkNOz0^P+@wke(co{# zv3(OY5e~TSP3w=CLB-OD%HxIJLfX6I2VxE^JF;@Ojj+X8Q5yCof3GJpp@xOc`RIaNnrVD%jdQuiXDMjF|ygt5G)b683 z3ZFoY3_J-xgnTCa2vWFi>}}y|%wMldz20r`+nk9$a9s|-{XMKYr=dDac;%yb}Bhf4-W;3jZ8GVstp?pl#Uy0(-Hma{vGU literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/backgrounds/QuestScreen.png b/gb_studio_project/assets/backgrounds/QuestScreen.png new file mode 100644 index 0000000000000000000000000000000000000000..afd39962a983066e4b80b50ccbf4645bc20c6d65 GIT binary patch literal 997 zcmV0058(0{{R3xNDHI0000LP)t-s2N)qR zXi$d0Y~c9MW&Z#O7$D&I(9RL;H2?qr2Xsy2ofH(xic+_h-Z^U?`AvQl=>_zr8f217S=~?pG_^SFWwh$ zc9_y~fa}H(@YV(VBN6;#fMyXr0MuXYjd8!Uh7Q-lE)FNBX_Fqu28dv^B_MR`sy{WZ zA0UlP0bptzC!oHHU_hS(OpN0M#Gg}&3jkB&*Z}tw8CVo1S|kyYA;<6D3VeWLRSl?_ z#SS=HqX5-I*)sz`W-tMK17LD$0ptXHE&&uk0lc4G%tDJ!fU|*Ol>=IPshnX~&S%<2 z+kiVWuiT*H_i^knrqCGsp)2U~@8cFg`xyd35KtQm=mz0XjfbMw6!dik)FutMhY=!Z zuEz@?}$3_`$=%1y4M8)Eu>S(j4A#7$Duy z#MY5&IsjTYcolO1ElvQa>88aS4G8Jf5U>DH2Y|-=`dJaQ_AixU+Kd7ObD3Qv$9Eue z0Pl2n`QCs%wLD->0@x}6Y?T1E>P3KQKe(TU-B{yLt{#F#!0o%UnY)Kd3n1MH{GdAx zp2koZa)8>Oxb2L?0I44&fLIYa0HISm!oGk>KS%)gk|2qoH;E$v=|idn!X&+mo@xXSiaH$ z6(st{qQpQ(1*Kq*3(yx_G}dW+SG11}d4~I%A^1r+$_N-(K93L>iLk)xJ6+8X_qqXk z%SX7vi29;e6iB+Ky8u?FI1T92{1h-&@gliMabl4WH=9x^VChYU{bp1V!Ls>SsOW_M z4Uk>MfT~skD1egznfP85!TS2(agI^cANuDZosI{PZk)a^z9=3Ud>QU=&O`76()u9f z*6}xt_!o1Li;j#12OwM*LUjd5%%TBDlaFAp6x+FTDaIqCQ=C{N6p-ZD<~+Md_y8wK z09z%1tttboeh~A$P5~4^0b~K3C;@Dh0Jcg1TU87=>sBa$0ytX&*s2pC>l=tc0@$iI z0M5Dt3gG_({800000NkvXXu0mjfkgTyS literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/backgrounds/README.md b/gb_studio_project/assets/backgrounds/README.md new file mode 100644 index 0000000..765306c --- /dev/null +++ b/gb_studio_project/assets/backgrounds/README.md @@ -0,0 +1,3 @@ +Place .png files in this folder to use them as backgrounds for your scenes + +Docs: https://www.gbstudio.dev/docs/assets/backgrounds diff --git a/gb_studio_project/assets/backgrounds/RightField.png b/gb_studio_project/assets/backgrounds/RightField.png new file mode 100644 index 0000000000000000000000000000000000000000..a883339699868737eea8b7142463ac4702ca3f93 GIT binary patch literal 2910 zcmaJ@YgiL!7M@|ifFcQ%3Zf(+wxz8~A_{^qiHHTQciDm>5KLQ8xr!i21_q^ID-yg^ z=z@Soix#;k3amhgqNH*SAVdfSL=Be!frKOwNU{^U&$I3R*!gkZGv}Q5opZkVzIo=y z1N%IeFST3>0KoEHULJ=40K{AnFoZBT^}yE~1M-1A-a8qshEKGIoSmINj|Q~44gK1F zLF&x?zTPn|l|aNYTCf`wM=tW7bTot+KFU;lt{31<%NI}B+5esK?6+5rGd zTXuPD_m0b*@K26qTNAuj9G?6|p`|MIZ?)S*U8v?Bzwobp0`@xY#&q(Ao1+t5`1Mb#vk04nm|U1a7A1&M{oPP>D(gyEYI)Dr4Y6DIzRoKw7q<57 zcw|EkEi`J5bgWiRPqO=^K<=kHW#PeAR%(T_hywh&m<-%M?|>VL{3jQC#AT~#(QcuA zIrU8YW^h$&h>%vbmF%cb??thv-CTBTvb8J~?BV(pT`f)e)II(O! zA)6gSmGm(xBNIxV3j|rtiimJ{J*(ZxBX@@(d8Ob z8Bkx{$E)pch`b;Ke2MIc=N40g2I>{W$TyX)y?AEzWkIChZLs?TWxkLnXJzBajKMLL z*dKx2|VOG32F(vCLeX1Gp7T9tOM0w(=B-Cs08+@oKFXkzBBE$X_T*u&H$Z36 znX}Zb$Kw|ea5sq_=QI0h^8g1-ycULfev&q=*|fKlVVvown<@=yVvy?>+C0Uz6K^mgJC-tN8m69-`uxiyq*Nu4cb(psJI+o0lYbx^Ym^LvI zD>QHQf0zN=Ra`2yG2xEXsT6;4Jc*+M?=KXKq1*Cg&*5!uN3>?>mCoSINBhU`3une+eaF}E15tnX6+WA3`-RAULgfDlic zRPJcTys0CG@0oRm(HNKc9BS;QR>J7>URUdC3{hTO>ZiU|GLSD->JfZ=^dY zdx)89^zQP20iL}aJVwmym@lFfy!p-!0kUxGx&v>)=qo5Ag|>T+xo$?6->jFh6f3Ny zJ;JTK(Y6yi#a+wp4TINVw8-3RDsjWS-s`BC&)$KLVYJYk--;bzz{ft*SF4)WOLfWH z*v?xN3tfk;Phkew7>`!L*8k%DC_T-tf@$+LEV~lC*OcN58GIW{IO{LvF;hBJz=RAA z7*e4xROb0g)0cA4)16*gGj3Om=fe_Dc~&=WT>@}0AlyuVd(4AU$o!cO04!H3PnKGoc2qc3Xq-9VNCy=R7xIUBrGY zgNO8t5!z|P*BNsb@hVgyQcrwWrR&27>!U{}gu=e&zo<}=NNtG0w|F$a^l~UdlewZr zm_*`TSM)yK%OrV>!eUq-Ch=YHbTRaixHJP-wm60O!p~QV@F6#G9`kzl-F7RgrX_`D zw!}=A(n_q6uUzT81pKW8djpyJ%k(&|snfvMPZ+r#@4>6J)C`pfsaZ?3K9&?CgO9&} z6jm;7UCJoEE4YgpC|g4rY?Gm0q$y<_FoM19xd*QFBK+1NQNsP$^iD$+TGs%rMbJof zm#(Tz!XMq0%#z&Rj&K9tfs;?Vab*d8v(nYu@py#WGmN}2_(lbk2&x}_+$@m{>3xX+ z+w@QJ&bWlj!Qp&mW!82CDA$Z(bzY>*$r<6DXN8@F8L%*4X{(O_LMYw7($s9g+-_Cf zM|K?h!NzaMb#<4p&y1Ym5@T%EZ$1?!Z2kmGH2uSLKvFQvp&|MEJVue^Uiq$)q*0l{ zXFgR+%Oa3bp!!a-x3F?Qm&8a1k*$S@*h{;y_? zqQq`X$8~(n+~f7>JQh62#?OvGunPVEu4a&fB6mlim4f)%0RGdxQs885K}^nj&{5ET zZo62q%@sXrAJY42JZjUu>}cgKBCXi`ad_P`=$`z1#e`EF@Faj=v3Cse%Hvo47eex| oAokV#Gl;=cEVl@M3#v&kwoeCX!jw_iPcN`*=RS`Tcl!B%1D0d0yZ`_I literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/backgrounds/SlighHousef2.png b/gb_studio_project/assets/backgrounds/SlighHousef2.png new file mode 100644 index 0000000000000000000000000000000000000000..81566b4dfe52e0c214aef1f9fb4781782fc29fb2 GIT binary patch literal 1610 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 LUx;tLcXZZ2hLvjO literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/backgrounds/house.png b/gb_studio_project/assets/backgrounds/house.png new file mode 100644 index 0000000000000000000000000000000000000000..c2a1545b3d2b73da69f8a370e638881fc0f5e6f0 GIT binary patch literal 1273 zcmcJPTTs$@6vuyv65cO0=$IN#UN_Km(gxei3^!pE6K{FhARV?`B6UqIHKTG(!`rTo zWs*5AXsr@jt0)AbuIz?|8*3)swZkDdaF#ZVp>SuG6}+@^8;t%^>JVl#Y{^95 zzlyYK`rSa?wKNEyztUiz?grz#mvnwK8*`$$1$-jZ_A>wCkVZ@auZ-FK*3QF70dC0T z;LjBs)@#fPyi1@1RxibSrM5^f%3X{bh@4CuRHWA*MFd4}`UhD)p{0kX*s|J5uvfwy zYJ1tMwDFzkwfh1n5Ut9kZXonImh^6&&4)J9ep5#in-_a!auZE>FHa%)bo#NgQabmn z&m~1xVVE!0isBvSkr;sx-gnNg|HrUDI^R?&Pjmva{bVq(MQ~g~ zs=a-=%=a!TN;}Ox8ZGQa)wh7W>5| zR+0a*i2QK)qbI_BBIp51>I^J^XSlr7^j4kkc!|e@)3tIZQ&N}Xb54>fBT2vU^jajk z?x`FPCa%G{u^g9w<%Qjq2~__bPwLhdBNWR=;%p6q&wo;-YYUFwmBqnpIPn!$_Hku# z%+!1y5om?Vs}W~Im>!Z?BUD9!>o*gg44-m-=WUA@8lx;@bU7cvscQX+Cj2$ofzo0l z^)dUkJb_JcB4-L}Y%)fRWE^9xc6U33sj0o3&$|iA z%EOIk0wuAosQ!i=Z;O;3Y4R=#Lo?}KJ;@qh*#53%=F|jv4K|RNRIF{?F|^*gqXpY^ ztX@0At=CdNI}hcq5{Giz#^yv3p^(OP>)>rfnBD4mdC#_XoFQ#7%pOgXFnoUKo6k$# z1MXCPsa2&(AV+Oy4?AaFf3mzNn#4`}R)x$ao8;SxjR?W|1JFvZv=Kwu5PZwhp< xR-;`<5T9k&L3CEjUYIBmQ_voS5!`=$|k2q0=0s{0=EvswH=*aVx5L;E5mhuZr=GjM0;Axk0n8dtOq0aaGyH; zY;UgW9PMd2b?b9yhxs@bh%Ilr{o$>!Py5&Mo4vR69N%8l37s3{s{hVe{+&R```gFu zXJlSk-nB8I`if#jl6L?X=eB!{y89o=WxP?!J$OugKl8y~3r{vD{JRlZ85jFu@_GN} z2RiRq+oji+EtZpyy|($sV~~)^;`twbZ7*EhuJHHwnTyFwzHKx<|2ww0Aa#mDc^Ply zk(p2G=4JYAjdOam{AS3lC9juTR^EQ{_s^0!XRimITKe_#q@uIuoli}zsa?|ZK<2CX zg+Hbund{D%p_7GsBnSx#+L`G#ki@ z->>*%a#MG?X!7t8=ujSozk zwYH3bfhoq*#WAE}&fA;ORf`-1*a9M1-qf!wR?G^HWo?=1q4a!@%B}D^?>GMWhmYPp zckjT>XAH~2-fa4oW1hlwt1XGU(8KcnKEizK1i6QD>glv{~xCv-^Ud zhnw3-g)y%<)^}Ci{l0Ph(~lPGjP5?S6LZ+YieJ)d;c-pqsq@Wds{5@`~2(VOH-3IGE1Mw+J(P8o)dClPfYBZ zSO!NUl{&t)`@~+dhtw|XsE&?_vP*d^XTZN^{j&mwla4Ry*#+)v{G92=sYo7sU89I^nh4hZkG)8)Tzr?-mW;{J81ZzpcJy8~+zZ{0n9D@%-P*Fi-wfyrjb( z_L{|96}}A9*Ei(X@LOm%^gF-W$M8)isC^mJyt&7JbDGP4T*>fAXEoy%>$*J*+fA0H z1h0O5<}=`pMHTNf0~&Lx57`u#XJd{ znd*`l{-&;KFlq=7KX5U={r&U96^}in=bg9xr}lR?bGr3ok$nedTbPrAU7{`;g;SsHm&9u9XKc4g zdjbwfJ0SJKW%SS!mm!2EA&@xG3nvccIDwERxPrKHm{fjF9Irwx6oiQ6`1!rxzwdkB z@4Y*n<(n7Izj$5{gbVG()(X7$;MsY44*tJf-?`>9Kp)j{X|{o%vk57?pb z!odfZVCh`E_+}~y&pekuXN0@EF!|)Ypu3u_I!nakVTJnKWtDLlgS8-ByD^Tbx6U%r zW&I#(NWXpcwIl|9Lwdt-R42CBAXwZ^*sbm5uD8AJVPCp&UA#6X5Flh3702N)O3An( zP2v(5=hKQLPE4}(hSbaximOgXw0OcqqhiV)s;XiQSCFYz4fLw0si>x?hN7CXiilb# z8WM}21lbb5M^;)3MK1ViNP{ekiK2`~qsmCH@T9LGjIp9>il)h6A*WkWM#plLUYSK` zvD8a~I16|r<`JpOH?oEVl};gqaTzvB3z~p1WlUoQRn#2P%+PWE+B6JH>oi+okLx`) zaN6C9nX$;cRcRC@bB4uk?*KlHr6V-&5F-gG}T5?^+x7esl~S8_mw18dQYH6++_EUUV# znO$TO!yvl$*3`=3e$d-GYGr^bx=1I6Ml|DUt`M~_1*!Qoqo*-;9MX=`j7A=7w;B@E zQwai})R19lx(=GeRadUoYp#q9za}%+#Z{{LhTiig$-uwGy^Wl?nZFPI+PsDAdabH! zmWhy!n;03kg^|5rTXjvHpZUI?1khh}`0rx)9_jHUq#%YMq zi9I^swyaLVd%+ME(v_R@V%vr?v1!U$1?7zaG~~co5^OSmA>pAo5iALgp{jt2PKG-5 z^-rcrJJDAui&+d(P}Nq^_qW*F#b_8nZO{*ddU+26APO~0#pH1XV?yFER`kIAcRT?ZI)2D zLt?U&eTgJnw(Q&cP`7*gy!ZXQ?|nb-``?}Uoag+`Iltfc`Tf4QZSfIWOlxy3!0oT~44xvExj$nm$Mx&3iYzG>ECMyRED_qTZ~NBY5Rf*J|ELYnn3Iw)IVeO9t_;{iUmBt0o)XQDfSg~g8^bY0D`N>i-nj9Di3C})G@z_m0~hn}98n^5G* z1FhV-s3cpBw1@*}FE2q`9^PPCOL1Gex3{Md$1A?wE?kH8gk`2f&}n*6T#Pk8-$}0p z-rctmS=MShG+RjUI3uIt)kwi}di&US@6j{FB|?wY6BlFh12`7X2@hMZ53h@@T}rPB z4b`PPgcAkw1x(1D+lGT2uUo{kO(UmYpoOJ^Kb4G5iw+movoQr5+?`{rq!QoQJ@SF( zB#BH5dOf;35-OP_}@pRBB~V%RA+m*XQGSXg+`L~|>e6~-8a zCzIrGPGm=doFB<^bG}$qHT*nrcsBw~(vjdo^iTs$mR5iyiB4*uQwR(M)vkCubB^SN{hD&{6}r(rBJ2d3j%7UpZg69GT)G4@Dx8 z@(`Fj3wK|Qz$@f|~#K*dvto-`uaLvj-n=ScRZsewSixa1%HkvuV& zpYR^kA1nZT$ot_u<)LyAc@jzfuNG9Ao(}->!=b;mpql%866CQ2D%qQYC+PVQJZJ}h zg}@U2jOl*>0jU21;DrC_fTuUbeTxq#ygb33KmzVX1>A=I;`8Q?{b{kup$n1Zxn%{+ z)-RegqVs>@+2+U=AAgMmF#n1Bw{dJK16mjiN|%iH-gFPGs|EskSt*Bv7cp^4-MT%C}o1n^S=T zf&s|HZ7yyAV5=Ws6{SNV;AmuuIhpLP2Kt$)e-2}SJ?Mm^;dF5{0s#6mcbor_yTK48 z6y&@6n{XJi6VciKzti5_agwUvr`eE51@7;^)%ATFni0Idx4t*siCgX)` zAy9EX1g9-O0j%#scvqZ<3js(uKbGhp{lvdn3Ir!-Wt5GMa4VEN5N^GC$0^8cBWA2jI_C`2G&eF~YhMF*7zY;u&--|P{n4icgS1s1rX zwj!`ckXqXMiaN>=Ek&pfLRS%@@ZHbv_J7L^&Jm7)IXQtLicm+ef+7+LMk?Zg3yh$I za6~8}aLP`gE%#Nooc~MK1Y-K$2V`R)xy%2|?my;pGmrj1{(h{J|HnH3(Er}#AMyJy zUH{Vcj~Mtz%Kxsef9d*14E!VIe^=N48C~3eo(~Bgz#Ez`aQdr$)szmL9Je_hH_&C- z*!l8?C>b&QNlwM9(wXt{Z`dZ&3f`ID(l_{k48tb=cnK&b9R}1FuR~v5ANbIY`Cf;k*kwwIk0~QrqG`?L=k56 zJ;+GwL~3x3yML8f@}C{%@gEuy_(nVD@=~*d^W4{UXPIqgpK75AC(yQ(oo&EZRkQT{!U&#|Iek+wNrL*TXrfVi5qAiXt z%B(W!F>*OBkqiz}IOXd#@4yw-IK{IRAuo)F=nX6^BhU0|)&xY;e0LU19pX_UH5@Fe zMG>N+K*z$^J=ELnFb%g(Y+F&2wZ>=qQRPYucjag#Xn^_~g>%}M94!os`i~pjdF*@# z{YDYr5LpIOFaI3&R5@v~ggT*oIe-7gkS|}fD79){)p1~M@nvx1{JJ`M|gpv`Z|w zR9be@x=ikTbyR=*Y-_JbZ(zY$sfnpBu&wHc##13B*RR~KbLpwlv9}Kz-R>=%&nxQg z{qzXpsHI24;YJY*jh-0H@U)tFIcd`Hs68?E)xNsX+*@Vy<29xuInQk(6b%MuSCG>u z8lE`b=1*sF%^UqR=OP~^mQUMh=KnA@jErDTqPJ_lzonkCGOzyTOoirYlJM78Il{)d zrnm-3!4OYP;MdaQRWrfG^v;BV=O5tjC`(g(R>bjz|=!AdOK%s7^hAgBq}%v;o?e(tpdi)GFl z{ldrrL%VCCi25jOreui!(dVQ|9)D>KMLFf(kul0guVsc>_RGARHDiZjTUwy&dU?5G z)e_t9njd**aR0T9$>rYr1XCia>5y6u+2pqop-0x&t%}~V(2u1C=U5bEr*sq0NpX&g z3>S~I-15uw%l4y8AI}kU=IWX7Tb^aqhnMXtaz8FHVy1d0nf(i#T%e_6Se*@p2Vpf{ zDu=&{1dQj&3@)mc%P@BwsXFaFzgOwmZ8?_654O2i5nY8R-OP8=N{^&!J-7DGiuFD7 z@NQ8tU#|Ue=d?=}gr)9EM_Y>=}`dXMc+Q}9B7H!7gcg?(EsHt zOB1EKeaxhNNSD%#mK9OMGx1lXTXZRj`%m{s-nt5Y^#PL-K)U6p|kkPwDn(zp+O} zg>%OdZCyA4T zjRmBiONEorBPCxhXc(U@KYy{c{kqrbTK1(#hhuww%f;8bP=B`*tp}r15(*c~UP()1 zoLo~!>JQuG%W_J`&}woKc25*bUMIE1k-3t|ToCU#mEp(D=K$%|mfo zhaC;E0Pp{HBT*DHk3Gg&AJ?SMQRJDX`i*ctZbik~;seGpJYoQY1oAk&yT`BspTwCn zU|kH3H4O8xd^0xgC2(^macNrCPM9$i*&F+$v3MiaTaf&=+966;LX@@g7CW50w*GP2 zf@78Sww%wqUWL%yJiarPCXHFx5 z#R*voHAN3u4JcpeQKIl@fQuRE=5?Q;kT7TeK zcg3|&bmb@8z^t*U_Lr|7HxL~;D=t~|PP=lFf#XRHz1&CCk)U4J%Q1_9j+wfd-(7Vb zd@WGwR(CpuO%tQnWe`~~RvagoXL1<9G>(VzC)|KoaZF{?O>LP%j0#p-cCOMrT5S0o8M2|dfqk|-YMW1b;`^$li;PW z(AW_uXDePd+k|}&%^$iWP!IWd$OX6aw1kyW&xqyihXJm|?Z+>gR=rNxo9JF!Hgi`y zR3Jd~vu*F-4TO7HcIaa3KDJaktJ6LgJUX*PSZdGgqBWzKLNxPV_k_|l1dtp_JzstQpVPg7e0#+27n zf;^miB^+uI#JA;YxuKFxo+0;`=L6q+s3p(OuCP;UQP!(I{j_NAVfz2zp`%4YzJ~f36K@r>-MhOQ&_e;8V3X3N(@hlF;hZ5R7I0+f_Ur)eg<#<(IX2gmjL1=^eqD z(`;R)j*kyDOPI~e2RnXzsIb2FQ7vPCOXsw%4Dcr6QW0?F2)KLwDX1{=k!yy+&N)7_ zpmaj3BJ;uM*>o6bIdBg~SjBJX7WH63`EvEyGW$NmAWl4Anq|%vldG9bXzkU$E)7D; z`XPK}37q64TV8@cMz-ePC9IMa*pqzb*daNY+ZC$|#NZ8GWN<9s@!MW+{T~#2J^3&{ z)y&5`wJy3AIk|2$Ih8_518~#&3LkGWewe-EGjI%XcPYLWPmQ zclU{`K;PrkATk1L*JMPo@4l}l1jP2~D@s8`dh_9fbS}_$Kr1zQK2x*GBFjn#;XqvL ze&<~(W`$!W%HF<4jC8Nplv&HP_}%*?{jRsQem1t8!K^3_>GWT|Z}PdCo(!Iw~5{kUs`MBxSIIwf^OsfN5fyfT8cbOUY%r~81#vL`O1SlI@BO6*VOrC zU`kFDcq6iE#&6Bufn3QHDp%g`K@)u^V4rq^zXG2(G3g^W#A92S*OlCMu;ggmLQYT= zElVGFE!SEnDp1^OCPo&6g5UJzG4|yj3PAGivr*R811uF*)&V zutp?$esMIT_1HgfudA7fG4bd@Jfiwt@%i7;W-)ul1 z*U`A6aXR$t?Z_k<-aD7G-kga1KzP^GY~mIdhe?%@1fBit#TC#~Ev0)sDZQ$9V1Hcs zdW^yo8==Ds(LsSdmJ^cM?MBSX4&u$C&*q|IlVB;3(be2eXrXs2ZuVqAN%VyqPH)OT zeXcG)Wb7=?<6)$o-8M60maTI%F5_uzYnfkUoAkSmR%S^64NaUoD>CIX-t)GN5GpQL23T+_n`9u_!bqsZTe8xvp3xJbzj6Kk>m}lp`Dhfsi_K03`gIiUAgMe9F^nfcR2suFX3pet+W37DevS>v3u?8w3E|tDJ`56_L^GTaC#UTXiX>cUR+()YLD1#N*K^K^d-XgE z-LV%;P)T%XP|U!}?EB*5HJ*Hyce1d~LWq?Uw>J^T@sE$vzaG4QZT)Xf=QwPul4DxP zBBdh*HUz4Y7j^tLy@87)Uw?^+UW zscPb6n(reDWpdI@ufi>aWeX!hsn3KGk<{{TRRPw)T$ literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/emotes/README.md b/gb_studio_project/assets/emotes/README.md new file mode 100644 index 0000000..0495e2e --- /dev/null +++ b/gb_studio_project/assets/emotes/README.md @@ -0,0 +1,3 @@ +Place 16x16 .png files in this folder to use them as emotes in your game + +Docs: https://www.gbstudio.dev/docs/assets/ui-elements#emotes diff --git a/gb_studio_project/assets/emotes/anger.png b/gb_studio_project/assets/emotes/anger.png new file mode 100644 index 0000000000000000000000000000000000000000..ccd930848ed4d798076d1d3a1a355f730afa5532 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~p#Yx{SBC!# z>=KG?2XY?#IB$><0OY1Tx4H_HWh)8t3ugEa0#%g{{sBe2JzX3_B&PPB59DG{=KG?2XY?#IB$><0OY1Tx4H_HWh)8t3ugEa0#%g{{sBciJY5_^B&JS1|Bw%8D$4`C z*MH+91Kt1aTpKxGG0Fc3_Zc=GHr5qhD}?1I6vbMV)gP>CUa;!oPbR-ti{_X#ZOvxq f*}(U9yRPs&DQ5p|jSiMTGZ{Qx{an^LB{Ts5?%_ao literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/emotes/music.png b/gb_studio_project/assets/emotes/music.png new file mode 100644 index 0000000000000000000000000000000000000000..ef3bd562d6c78e754bbb84c6d4249f7d82182d71 GIT binary patch literal 187 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~p#Yx{SBC!# z>=KG?2XY?#IB$><0OY1Tx4H_HWh)8t3ugEa0#%g{{sBc?JzX3_B&MdGXXIi~;9xm; z?Zf|gKkju~m^;-}WbYX*3g9ykm22S7_^>tP1~31Ghkq0eHt#vwsK#sPJ1cSjFIM*T c0o!yV_j57VH|n#T02;{P>FVdQ&MBb@0IN=KG?2XY?#IB$><0OY1Tx4H_HWh)8t3ugEa0#%g{{sBeoJY5_^B&M$IzsSX)z`=Ys z>Hq)JnFkLo*v{u_BWO}0IMX0HL83;aV9$}gPMdb=d{~=KG?2XY?#IB$><0OY1Tx4H_HWh)8t3ugEa0#%g{{sBc?JzX3_B&L@3GjcH~a4^q( z_<#Q#Fp00i_>zopr0RMwPkpKVy literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/emotes/shock.png b/gb_studio_project/assets/emotes/shock.png new file mode 100644 index 0000000000000000000000000000000000000000..75987a88955a08f9ebf0df9c63156b14c7d4e543 GIT binary patch literal 179 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~p#Yx{SBC!# z>=KG?2XY?#IB$><0OY1Tx4H_HWh)8t3ugEa0#%g{{sBd7JzX3_B&IIycjRJF;9!}} z`~UybEe;!_O%xt+Y~tH35vSsAAnbKue}#>frdobVkol=4jMdqyJZrkY=KG?2XY?#IB$><0OY1Tx4H_HWh)8t3ugEa0#%g{{sBciJY5_^B&NppGx9MQurObJ z^gmusZP_dxi&=`>RQ_G4Vp!hFbW!Djq`%AD;GBb7rerg1dXpb&s>T1pcWy?$lvCMT fX67EoSnpjsl$gs+KW~u)n#thl>gTe~DWM4ff|EY= literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/emotes/sweat.png b/gb_studio_project/assets/emotes/sweat.png new file mode 100644 index 0000000000000000000000000000000000000000..c5451c5e734d6f476fb7810986bfd0d35ddd5254 GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~p#Yx{SBC!# z>=KG?2XY?#IB$><0OY1Tx4H_HWh)8t3ugEa0#%g{{sBeYJzX3_B&N3ZM{^x8;9xP{ zUGZPr+$?h>P*TTQQpgt5l71FX>p`cE*1Z!D8J^hK;bN@eNH&RrqfUR`S0E)~t< eBL4RFG3JdAnA3~B`PTxCWbkzLb6Mw<&;$TUmp|43 literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/fonts/README.md b/gb_studio_project/assets/fonts/README.md new file mode 100644 index 0000000..f1fcc63 --- /dev/null +++ b/gb_studio_project/assets/fonts/README.md @@ -0,0 +1,3 @@ +Place .png and .json mapping files in this folder to use them as fonts in your dialogues + +Docs: https://www.gbstudio.dev/docs/settings/#ui-elements--fonts diff --git a/gb_studio_project/assets/fonts/Sprite-0003.png b/gb_studio_project/assets/fonts/Sprite-0003.png new file mode 100644 index 0000000000000000000000000000000000000000..9ecc1c0f57ea6681f1ae67c054729952fc62b002 GIT binary patch literal 1468 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 literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/fonts/gbs-var.json b/gb_studio_project/assets/fonts/gbs-var.json new file mode 100644 index 0000000..fe22002 --- /dev/null +++ b/gb_studio_project/assets/fonts/gbs-var.json @@ -0,0 +1,4 @@ +{ + "name": "GBS Variable Width", + "mapping": {} +} diff --git a/gb_studio_project/assets/fonts/gbs-var.png b/gb_studio_project/assets/fonts/gbs-var.png new file mode 100644 index 0000000000000000000000000000000000000000..28095f21fde02939a00e20c39e6caec2ca1a385c GIT binary patch literal 1873 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 literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/music/Rulz_Outside.uge b/gb_studio_project/assets/music/Rulz_Outside.uge new file mode 100644 index 0000000000000000000000000000000000000000..d4462c73647cc9e5d45efc1e764a8c9eee11e6c7 GIT binary patch literal 68102 zcmeI*-)`JQ6vuJ@_xL}&K_#d_TtF$RxaEQeKuWK;%S8ndRSH!~)%W6ocob&Vp7b1_ zrIt||)cU(s<(ct#ZGU|BmyOeGtAqyv2(&-Gx_R^9+s9u&d3aomZsXK{Uax0Bi{OEW z5TG0c#?o}BpnZJgm`#$&xTI=?!ciOv9(V`=%0XcGrtt`?=b(M^=)mu1&joF!=!_f# z%Ey)#KmZAWgO@{)n1l9v-qDJ(@XcIx4_+snzN!YktY{8Awmic6Pu||6eenD9tLxuZ z8y%uMg*yfMZh<;)l16dx%F-No;2{M}T!fWlyhnT7nDw^~Owj7oHF6Bd!a8$T3Lt=l zz`@HQNX$X&@6i&pqA(Kf(F%=&zf3rNQ479_$6k*xe-2uIkCvd7eB7fI8oaUuhHv75 zhY;8<2Qm5BP5aNgctn#r3 zCurrRCupSx!J;+r*zd94;;?;!R$h97R%#F|S_6;$9^u!YKE3$k)#b})4_;sX`RwSQ zmM8_)uZ9sll7^R>*1!V~C1Bzrgvlg>_TZnED7AvkZP*$)2BZ~9qc!lrLkXCmJ@}_3 zN}OPG`&$d-s-z)Dv<4n{C;<}}CTI`-X^B!R*xddeu90IvT9Gtb0}niuKnRoJ;_~&) zix)S)p6=4B)ral`n<5I3t5ITJ;(><{pd18-ZyJwN&^~>6b$R{E^ZCbNdV?ePf=w9# zj2r`zW?tffhY+9~1cq;hFljEXt_fM~5_-X=io+C6l$e)z;2{Jk2Z7<6#^V$wPs4qK zH+m+$Q_$AY!N@TXY33y!cnAT?L16f12-@lP)&Yqtb%KqH0~Ah_n3s6qAp|G~f#I9R zc!V(Fab6(Uba9oDV<6JZOFZxp0+fTm@J)hNd&pj}>Ei%}6D8&) z9(V`=%0XcGrtu(XHIVEDn;{MuIR+xlyu<{ zpd18-ZyJx=4^7eYj@N76eafkk`+U8@T@LWicV}Ir&VVjEJU$Q)f_Ax3_JhCG6(ndC z$C)qLyyUeI9(V`=f_A|mXhl`n?|g_2$-~zft%1j;2SK|K5wx;a$W^I9j%W=$_InVt ziy1*Hi-(|<8U%~hz+=A$LA#g{w6b^zTB$*>Xbn8}dl0mX89^(HhoF@j1dGXbn8}dl0mX89^(HhoF@j1dG`)uCB@=&-^E_rdeK; zRqdL#>xc0+ex`qUtoOK{wq76mah~s|X_n=AQIus>)wOd?)3#mL_roxb)B5;Uhd0%& zpV!r8mZo{-x?$*>x=53>sGG3DCDXhAOykr~?c}CvDyGa&&iu0S{nn5B-TVCyecyF$ z+ceJk!)v=?O0%LowZ_pEXn2YdH@d2H_1LFL-Bm@Cm1Egt`B)@lS=LQC=KbjRkhD$Z@@DWy zwmgbu`7m6Or5!$uH#eEPJ;Q9mz#_UVK46dStG_+t13rBYeWQ{?c6{akzB5Dq+ML11 zT50Ex%47TLZ_fCe7oskZkI5r^_b)5pbf)G6<&5wjVbx~F7k)J6(D~>1a@UOWdy&U+ zelO<0%z%83?Y)E<_I;Urj`PPMXS~0?n3FRD_j4TEd%2(b*xri)G6V8C&R@Cp3|k-T z89%(2y?nO$iZZ)31M)e}pY3{vJ=@$L$0Knp;d`0P>}h+(cX#j{--zc3=TrPo$62E)WnQ=cJX1D)gVEgp9XBbm+9QWg~eH`Y%%)s_@+=YkPtr=J!hkgBTo0=yz W1M;U3p&j2#gmzpPmLY5I;_(kbjFle% literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/music/Rulz_SpaceEmergency.mod b/gb_studio_project/assets/music/Rulz_SpaceEmergency.mod new file mode 100644 index 0000000000000000000000000000000000000000..3af60bbd4ac131fe48bc04ebff761b010f351ad2 GIT binary patch literal 49162 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 z%0A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 J=c`!0`bPo`4p;yH literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/music/Rulz_SpaceEmergency.uge b/gb_studio_project/assets/music/Rulz_SpaceEmergency.uge new file mode 100644 index 0000000000000000000000000000000000000000..8232dc0f815bbcd7ea948c687b227847deebd46d GIT binary patch literal 68102 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 literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/music/template.mod b/gb_studio_project/assets/music/template.mod new file mode 100644 index 0000000000000000000000000000000000000000..f210e4394c6fa2830b67c6977be86d6eb1221909 GIT binary patch literal 52234 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 literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/sounds/README.md b/gb_studio_project/assets/sounds/README.md new file mode 100644 index 0000000..6d33297 --- /dev/null +++ b/gb_studio_project/assets/sounds/README.md @@ -0,0 +1,3 @@ +Place .wav, .sav or .vgm files in this folder to use them as sound effects in your game + +Docs: https://www.gbstudio.dev/docs/assets/sound-effects diff --git a/gb_studio_project/assets/sprites/CharAnimatedSprite.png b/gb_studio_project/assets/sprites/CharAnimatedSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..2a1f82bb8398e8741c5a1922d3f177915e98200e GIT binary patch literal 1700 zcmaJ>c~BE)6kk9PX+u*L9Z;O@QY#)gHX(#WPy*pd$3zTKV?oN2EF^>34Z8~oND(}$ z)hGg$($CsB$B zhMSig000bGq*O`Y@$_c8I?`ui+rtC&EW zxq<`$_XhiRIF0Ys(n?P%Oie}OiIfQ;P(Y%^6HriQK$1`;ifGeQ&Z2<;;N+`UsVTL5 zkywKp*ofVRZ8jKbGynuHG#e33GD?97Xp$Zaf*${L90K*)AZWQj&XpTOQJp?AgFvG* z6e>+dvPPtZ7A^n-&0?CsfKmu(Hmt%(u{j7D;uX_xyP5-mLnc&m5cDc2wLA(8#R(J? zu>DyYm>&QNMQm6g3gG$819@E7pTiY#U_TZY7IQ^nE({JYi1tQk6U9nt_^>Zp3W9VL zWfXHbCXm4d-IN{f-hWugnlF(XC}%;wrt8Zng1|KHSL7_}xTCHgwv|0E_==|+^JL`giA z(9n%b^s&1#ibDw$p>RTlKlOuADuDlFP+1jHD1u zgUX~q5Y5BZ>$PGS7K8`DLcV|>%7@{w01-DlBwWb%7x6-1iBQNN!AfyWssY8Q5v=w# z)^AL#eIN`*+OrfT^l7LzoWKp>P~u|!*s;K4@(p9PW5>c96U(84;n>^zuXc~9=ozv< zM~9adM#mq;=$R+z;fBW*Z3O_wCYe;CQb+t!2ybiUGQ-#CemvCwl*xkX|+k@6fVzYPX{&Z74`Qbu;TGp(p{NVc1czF}v#6MWQ&=fbgAT?u6%C+*A zuDg9pt6Td%w0bOCe?Qi;^0rgw-Oh#z+z2OVj@kwSbFCit;|@Jlz;S~E`Lh(e8Zy@x zc-17!s4orsy`JQhPJ8!x&!sKRw#5^fby@v+=N5cq%f5MR#*N#Two7FtDVF8S!pkk?Z=;$cvyt=XYqu)e0=JulOC;SRyfZ;VKPbE5^BoQtSv6qD$hzY?~!ltv72>AOLGc*h(g#! zVTp&+tmY%T#XcYqDtd9HgBKkwYVGV@5|MZ7GaZ~7k(w#HuxPP`GPoqLs?)$gI1 z3C1wI8*^`d+twV-OkSNMn4@uF%q?S3nV&^m&!}X4s#SG7q6uuLGMAjH49u<1EXXRX z_q+A@#oq7kYW;c&*P8vF{W@_;-2Ceu64@s8-n6pH+575tmi4l=H=s4Pzrj+Lj_B~+ zaI2iL+O^%gIIz$6%mww?IVDHP(3K5K*&Q3MOnJuK1&x1+B>evK&U(YT%ayW8C-QfC zG_^a%mh|k)IU6mUd^jRfJz-DdfY*3)S+AfwERj*;)c1Ee=ju*9zlSLcf zeBr*$g<<-jIaitA-P#>8<>|CXf1T^ZnC~wlx>l6Ch-?q~Hn&(K-YYg{a~GXpJN zoGUZSt5{E{ekWn&y-jb+-16wJ-W^rT66JDW4*hnu|NZp399>|)WMK;FfspvM{{ZW9 Bl;{8e literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/sprites/README.md b/gb_studio_project/assets/sprites/README.md new file mode 100644 index 0000000..936e5c0 --- /dev/null +++ b/gb_studio_project/assets/sprites/README.md @@ -0,0 +1,3 @@ +Place .png files in this folder to use them as sprites for your game's actors + +Docs: https://www.gbstudio.dev/docs/assets/sprites diff --git a/gb_studio_project/assets/sprites/actor.png b/gb_studio_project/assets/sprites/actor.png new file mode 100644 index 0000000000000000000000000000000000000000..48a2c03242df039607a10e2284c8737ca65a4426 GIT binary patch literal 5780 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 Qs+Ys7-Fu1`+Yf){U-v%dlmGw# literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/sprites/actor_animated.png b/gb_studio_project/assets/sprites/actor_animated.png new file mode 100644 index 0000000000000000000000000000000000000000..b870e58e1859b35d17d924828bb377a53a181764 GIT binary patch literal 2076 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 literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/sprites/cat.png b/gb_studio_project/assets/sprites/cat.png new file mode 100644 index 0000000000000000000000000000000000000000..7dd8b5e2992334886c1d5468e4f33ed5c010f5e1 GIT binary patch literal 5641 zcmbVQONeAw8E%shO*BLlW7LIZjbK7NUFZEMrzh0oR;D4H43h>Yg5r7I?jqe)ZB@-o zPu#iivCu^z3q^M>T=*b@M5CZ97lKYCD_2H>3*ER8HAv9!R&`ZRNOe*4z|2%vpZ~xA zU12+n2jn@&Eg)zwfyl|2{$TeES|Ih9Gzm11(fAeAd>b|4P&yF`X-uuDo@4Gg>^Id%TA=cl$Ho3O*WHSyAH+>q0 zym@?hgwq=v7au=9^6|MmsfE1PA8ghC@ylP=YyGrU|E$`fJ4c>9?!jXanv%u`(09$gfSA_lIW`Ve#ul zDUO<*QTCJJXm>a~n0NWg+)J&~nRd1I$c~TwLFM|ZRY%_~p^7lK%V|@& zCKZoW0HCv@JHym3Z!M0x>L_KqOf(g53iY<50A2DEzs}*Eo#ysnJn@5=x4T<)1hv`k zr>3UC^K26-y^ch3k%?u@5NW(iI$0T*oW=$F?l4}jYB;w~uotr1rA{#=I)bsnI@)XZ zjL?p^S<4tPw|#ol$E5j#^Z7`zSq?{s9>uD4WzknwJCI){UxQEr7DZFQ=QqS zGs`4aOx<<=f>uqOUzmT}(? z_A)58QLl2Xxab@it%cUv0~Z;cH9_lU^tNGMnoOh0X4a|33{j^|JO$|-`YnuL)#C9< z8QOktQIJcrL$#KgcUU2dLP{oNuV@QHSz&acmo%2yP+F2%l(V=jjc}MOwOVlH z%k_PgIWZ;`3Cx`MI(NMkWos!gttAmd3~E;uZtgvDfpC`-M5TxC{RSe36ljmwd9`*JC=ltTno zbDY)d+_m?DQ)*Zy#;|f$uXE$eD=r;(nj{y*EG`?N5hA6TJ4=1EeBC~Jn@h^PAtuw4 z8S*p);$zM!Wa~{_!XL}$F{n~;Zc1VTJ(=wQWkIqQ$w|v;l78K|Le31-M={$0LaE}3 zbI*3fAO{vw#S?sOUzI+p^bO@w`VxXIQXonuZ869?6Dm;aU~+Jty)&y*>+G`u!HJ|O zk!6{PE8#~+;dSYi*LDeaF08es$X$ZcsfH@EJy0#9;OkyjTfKxu7M8%lot7=m!1hK# z`Sd!i_6kcTLMfIJmFp`%S)b6e;tI)X?1pwd&czcWB~|8YI_BEWwlnm&rr~q#iF7qcW_(mPdVr=ALK; zK_<~D;yEu7ilx|lL4r)q&e`WOh!Sj{6G%+jg#E1)CrXQ8Jf>Xd6_JO?tYj8923x|K zaRusvoKQLVARIFxtw2gOG#MI}U#9 zr4@Ulq@~Cp0gygcp7aXZz*>kFY!7UGDvVfiUz^vw40y+aSs*1?3HueFya$IGZ7uFp z+(UQV(eLTKZ+2B|oL;Dw-6^Lh?|AQrtK#%4yiBY~`@~_s8uoe&zp5ZLb0V literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/sprites/checkbox.png b/gb_studio_project/assets/sprites/checkbox.png new file mode 100644 index 0000000000000000000000000000000000000000..c068efd1a28b0ebabea86ae1b49ba5b5d2fba125 GIT binary patch literal 2461 zcmeHI&yU+g6gE_dva6z%dRdi=>k3gQj%Vz|u}2Lhv6F73dYh)9EC-~W*ptLc>~U@H zCc6g?NFZ?l32{UG0SHn40g$LTa6l>?;R5QVXIi)v32AxG54VLZT5+Y8oQyr+`{sS$ zym@}FwR!Qx%BdAW5Kc5V>^A(1aIYOd2EVWV^8Qc|jtQ+xo%+-3r_rGG?#Hz+3lT@*+6VG=}B zbIxCwMARL!RP3_8A6BGazx-MfeXk~ zp&&!Snv8W)L_}4^`6a<>vDYJQyD?u2o+{EHO(UWx_mu@Dr%7y?FDPon{b3 zA!lj+a#_Mh+uIrGc))-%FU^0}+YFZQUOJ{RtM;J|4y%9j(fXf7x&s>a8MIhM%Cst3 zGn$E0W}EOp_jK-|#^AeKnf(P5X=5_S=5}vPc#i literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/sprites/dog.png b/gb_studio_project/assets/sprites/dog.png new file mode 100644 index 0000000000000000000000000000000000000000..e5e7089df0c2e7a822ffc2ef5e71283a9649e95e GIT binary patch literal 1732 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 Wx-M?sGAVl8haZb{2v=GU_WuG`b#3?n literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/sprites/moped01.png b/gb_studio_project/assets/sprites/moped01.png new file mode 100644 index 0000000000000000000000000000000000000000..57c8db563ecd3641383745549b532e02287367c1 GIT binary patch literal 491 zcmVPx$rAb6VR7i={mZ6TqKoExiCQW#S+XMlsL6LL!4wwc(HYaK>`12>473X;Y45Dce zq^9qHyPycF2$DVnswaBW?6$kmrd@HrBG8%n=i8Yr&bmMW06R7X00eo4|0EYE&0nqu z0D#AqR+_K{$dOMVj28d^!Bgd-zC{&4lVJf>4NxI!0s!9MJ_ajl3y`q^xd;`YG0>@v z2^)Z1U2?(GMnZWEbn3c0f~OEDA@u>IEV2J7u;Sx~g`?y4skyKF557mQ%6CHpq8hF- zqNX6v;IXAL0w(iy*#Jb+HW0=O2-c(&jDMMr{JmfmXIYMvHZMlu4U!NQr0u zT$yQ86E*==JFt&$NH!sSh^lK{Bl7!U#mCskx9YP_GWnT5S4=%xSOP>cjh!o-CnF*` z8RxNnXD6Ew(Q#Wfq7(hr2ari_kZ0I2AmU9LZC*@7@%-1cF2|0QW~1Y_Gax!y(+D~B hzte4vca5=?{}=JCNfDqubn^fJ002ovPDHLkV1m1_(T4y4 literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/sprites/npc001.png b/gb_studio_project/assets/sprites/npc001.png new file mode 100644 index 0000000000000000000000000000000000000000..4764a8b0c444cca0880e5273eae3b8612be319b8 GIT binary patch literal 1807 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 literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/sprites/sign.png b/gb_studio_project/assets/sprites/sign.png new file mode 100644 index 0000000000000000000000000000000000000000..12928838a1ecd5bb9e344d84ecdc9ff3755ec030 GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbL!bbwEYE4zfEK}JB^ft&|F&Zquo zSi5#@c6Ro?|Mx5{E$3^^SqfCfSrX(I{2vDDe5cO`3VL|DIEF|}%{}ADcR+!|B~a`s z|9AVst&YZ~bz%D&KFYNAIZbJ8`p*>jiT7&D9a9by{fkT&Hz!^_@Q&}L`p?Fx-+6y0 eGklXf#NBhA?QomU>8n6989ZJ6T-G@yGywp}ze$Jy literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/sprites/static.png b/gb_studio_project/assets/sprites/static.png new file mode 100644 index 0000000000000000000000000000000000000000..838458443b376c770945ca5722157369514e8fce GIT binary patch literal 5757 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 X?K^+`@UQDz;NAXn#V@9Ca%tP literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/tilesets/README.md b/gb_studio_project/assets/tilesets/README.md new file mode 100644 index 0000000..9658fa9 --- /dev/null +++ b/gb_studio_project/assets/tilesets/README.md @@ -0,0 +1,3 @@ +Place .png files in this folder to use them as tilesets for your game + +Docs: https://www.gbstudio.dev/docs/assets/tilesets diff --git a/gb_studio_project/assets/ui/README.md b/gb_studio_project/assets/ui/README.md new file mode 100644 index 0000000..3fb5c2f --- /dev/null +++ b/gb_studio_project/assets/ui/README.md @@ -0,0 +1,3 @@ +Place .png files in this folder to use them as UI elements of your game + +Docs: https://www.gbstudio.dev/docs/assets/ui-elements diff --git a/gb_studio_project/assets/ui/cursor.png b/gb_studio_project/assets/ui/cursor.png new file mode 100644 index 0000000000000000000000000000000000000000..db177ee6f9aba8000a05238edbdcf3a1c3074397 GIT binary patch literal 1876 zcmbVN&yU+g6gFA}+tP{y5?XOG?ga{tJ^mHXsG&-nq={57Q5uOYCuZ$QVr}d(ws(`= zBS@71!4-ixaNvx@fdk?|C5{{_j@?pvYa`O%O#)5!@m=#oB#IqzPi-xlFOJFRf zHAP-Rilc_o6anP}e;|82W3pXy)Bst!T*o!!=$4IMmkk}&HQm;9N7WJ0U1A`){3#GE z3&&*G?v}COtD#JbA|;wOpU-P^v&OTDhA_sOZfJ&~0z%DClY%bPB)_)y&}Mm%MQIW7 zL>3G1B z&X2Qz0sPuJR9`Y>>tXnZ!1TX}%_8qL)z6TSyDK4cPZdKgkQ41gzg~D3DJrib8T| zo0KBR#j>!jT9~=2Yt?nt)pf(DTNv9mT?PaDHV=+P`PTL!*te{%<9Ke%bWj(e4sN!( z@ToT)yBUw=rD{pEp;RSR_hPCm+wkHt;R|iG zDw$rCgS1Y|=D)+C0?phCkTToS7CELF6K02%?U_gOVzI|gDFiW3=URJ5j4dK^!Q}9 z6Y479c`_TDXIn=9Y2l4zG{I)IN!m(GkM?i5cJAy2?#n4S(8aL2N#LWpi&z46%HXEC zlKXIzN!R=B=4kgb`=@U%N&1zi(Jv4Gt~+1#vM+zTp8VMQ@ct*`zW33+v)w=b-1&5G UM?vpnTU>7a&VKvr);sV03mDNt8~^|S literal 0 HcmV?d00001 diff --git a/gb_studio_project/assets/ui/frame.png b/gb_studio_project/assets/ui/frame.png new file mode 100644 index 0000000000000000000000000000000000000000..47997ed980bdf459d783dabf3e1648248fde57de GIT binary patch literal 5160 zcmbtYON^UW6&_ltlvV|aAV@1DjI&9BJHGFS$t3*GWKbszlaUBWRk^Q!#>$L6*iJIZ zl0`)qEQ(kFf(;8K1cH5eGz&H$p-KqE3W+tFvO!{l%K818LHX^Pb|jDO-}jt*&Ue1^ zxc9Z)o7bOv=7ncAHa4EyzLD?2`^Eb8^po)auRs0cAK>jHyD#k*AH4W!e7O7Sqocq7 z`>puS#>e0KcD?RHCpW%2+SqvZLjC%{#t(i74==pZ+rK@&z4KDn4~{o&7`V83dVB(_ zH#V+ZJ3X=fP8_#fJm~ee+He2r&33C7w%T72J9y_Li-)}%4~OyA!<+m5;T>;6``Xpk zmD4ULIF4i6Iz2w>kGiK@?TOwle6AmN+O5fw@tv)9Qg7J0y|dfO2E*7An-Y1#aZ8y^ zA~6@_b1jOA>R{2q5@FKCx=TrG_Sc5phN0^2<>hQI__ozP9FI@BozDIH_c!me&B5@X zLyR#UOgoe!Sb;_l`eS>F`lCy84S5{-Vee$z8}wVXM(YN5$6IZ%bn3$K$le@#C2~5Fv;!!*XeIxLREF3yH9E=B}!@&~Oi=QVz)EfX=-7gJ$ zKpK0L5B%L)<#xW+hF>;AFLWg_s)|e@r?o)bF@dZg9Qj~)h)OA9-CR$Td}2&qa9kS0 z86kx<6q`bpl#xVZRnocac7HUseIMt0_h9czFhjH=$XQV#F04XYIf)1n7&C>Hir<)hI_iOKkU?GR z>tqIpEZE$hJ!~@AQ^zY|6beQu#FZvUODmAjL`qCzaG{#Z-#?6?auHRvPfQofF2NAh z>9(UmHNJ0$F*yLrugRLJq(8L%g9yd7)2`jDtI+@N%zEUWZn$t}8Tr=r=zmh6(V0%| z%``}zDVfgVcgD|orYDfGb#zBF7*cz%0OTsqu#{ZVj1;^mI46vkMGARK3MC7{uT1tj z>YYgxT!{>)I)|6ZRaT~@;sTRWmq{wJv_ZmXmLx@?3{OO6u%ZPwI1y>WD3^*oE>Vgy zQAwF-RT`{woiI}vPKW}TloHt>QG&_2Fj>x|DGQ~jDxjcE+|rVo$0eps6!Hd&*coU9 zQ_UD*$T5eZ)+mE4kqSk{g0qS`*JN+AE~+czJT=I3N~XGuuPAaM8p|n`G5B@u;#CZU zaDg0A{C(Obti@g_k1SSUs>=};k&m7@%}A80TGuXVuvD=|iTjx@<4izRuoN(3RVCNg zRYlIG`3#Tb+LDt7^}HLDq4)B;tn~5F#^ zlTrfOewiid3Q59T#jp}6TIOMZ3K$s$+yKuRb1=PGAD8b-B4)xmizpBq{8bfX575hM zDK&@b&yp3=R0xPW431DVDdIE=7~Uj9U^d8`pp|W?&U2rs;ow;!GGAF*rnNT{tY9KnoFfT+3F0d)f?5W^(a5~Bl_zQix0DoE>l)v35}|Z$i=lyn z(L`yM)7oNPltd@IkPPPiMCj!ftBQCZVdC@7Lu@M|kl|o^1%&p}lB&`T9bt~Kk%BT& zL2ptV{52S2tGq-S#s(&WwyLTBE~KLghDC;OB?ICXK3Q)W3WQU`lodgW<(9wOF=)AD z3JiinQ(?4foV1rqX1u^K-b=zn%_*a4iqpJE6w5L!(iJ%boGnxepr`^SBjEAcu`QJ< z&(|s#&#*2FIK^R{mrWDg9AAqK%s<3HC!`P^4J}_|38kyj(m5BclMUT#AB{AWQ==2tY4k z)=L(~N5yi#azX8GQMP?$}yMuJ1Bg02QboTynDfvirjpjYuKKr8YLn5>|e zKt>qIVW`jbR~U4(4%Dou(Gei?*1`bkK?SeR)?hPWt_g;ufL=vbR6FQ~7?>3i^8zBq z6+=eXDd_?Tx=2M>!Ldr|SXBnLWfcL;;nGM;fKFLQ;f_E;_c))+le5C~c+oiFU)>I=K=;%5Gf^y}aJ EFLE^uwg3PC literal 0 HcmV?d00001 diff --git a/gb_studio_project/build/rom/game.ihx b/gb_studio_project/build/rom/game.ihx new file mode 100644 index 0000000..eadfd4f --- /dev/null +++ b/gb_studio_project/build/rom/game.ihx @@ -0,0 +1,4970 @@ +:01002000E9F6 +:05002800220D20FCC9BF +:070030001A22130D20FAC98A +:08004000F5E521A5C0C3800015 +:20008000C5D52AB6280BE53A6E67E7E12318F3E804D1C1E1F041E60220FAF1D921A3C034B5 +:2000A000200223343E01E091C380FFF041E60220FA3EC0C384FFAF01711921A0C0CDB9100D +:2000C0003EC0E09267AF6F0EA0C32800F3E0FFAFFBE00FC9F092B7C8E0463E283D20FDC9AE +:0100F000C946 +:02010000185590 +:20010400CEED6666CC0D000B03730083000C000D0008111F8889000EDCCC6EE6DDDDD999DF +:16012400BBBB67636E0EECCCDDDC999FBBB9333E5469746C650079 +:20014400000000000000000001000000FAA1C047FAA0C0F357583100DFD5CDDF10CDB600D8 +:20016400D17AEAA0C0FE112007AFCB3B17EAA1C0AFE042E043E041E04A3E07E04B11D40005 +:200184002180FF0E0CF7CD80FF119C00CDED013EE4E047E0483E1BE0493EC0E0403E01E0C6 +:2001A400FFAFE00F21A3C02277E0263CE090CD243EFBCD7905760018FCF040E680C8AFE0E3 +:2001C400917600F091B728F9C921A5C02A4F2A47B1C87BB920F67AB820F2444D0B0B2A02A8 +:1701E40003572A0203B220F6C921A5C02AB628032318F97A3273C93D +:0C3E2400011800210C3E1111DACDC21073 +:013E4B00C9AD +:2010B9005F78B1C8730B545D1378B1C8CB38CB1930032A1213040C18062A12132A12130D52 +:1E10D90020F70520F4C9F040E680C8F044FE9230FAF044FE9138FAF040E67FE040C941 +:2010F700E8F4F090F8017721D2C72A4F46CB28CB19CB28CB19CB28CB19CB28CB1979C640B9 +:20111700EA0AC521D4C72A4F46CB28CB19CB28CB19CB28CB19CB28CB1979C640EA0BC521CE +:2011370004C53AB6CAFC112A4F46212200095D541AE0901AEA0020212300095D541AF80A84 +:2011570022131A776960232A666FCB2CCB1DCB2CCB1DCB2CCB1DCB2CCB1D7D21CEC75E9327 +:20117700C608F80A5E23666B235E83EAFBC469602323232A4F46CB28CB19CB28CB19CB28F7 +:20119700CB19CB28CB197921D0C74E91C608F80A5E23666B23234E81EAFCC43E03E09021BA +:2011B700002036032105C57ED60F30103E3A864F3E40CE00470A21FCC44E817721FCC446F9 +:2011D70021FBC45E2107C54EFA06C5EA0FDA210DDA36492336402110DA36005079CD410FA0 +:2011F7002107C58677FA18C8B72014FA47CA07380EFA22DAB72008F04B473E07903803AFBB +:2012170018023E01EA0EC5FAF7C4EA08C5FAF8C4EA09C52109C53AB6CA51157EF80277FACF +:2012370009C5F803322A4F4669607E0FE601F80077F8022A5F566B6223E57DF80677E17C34 +:20125700F805322B2B2A5F5621030019E57DF80877E17CF80777F8022A5F5621320019E500 +:201277007DF80A77E17CF80977F8042A5F561AF80A22131A77F8007EB7284DF80BCB2E2B06 +:20129700CB1E23CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E2A777EC608EAFBC4F8062A5FA1 +:2012B700561AF80A22131A77CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E7EC4 +:2012D700C608EAFCC4C3F513F80B7EC643EA0CC5F8062A5F561AF80A22131A777EC643EA3F +:2012F7000DC5FA0CC5210AC5963839FA0CC50E00C6F04779CEFF4F210AC55E16007B907AEF +:20131700993821FA0DC5210BC5963818FA0DC50E00C6F14779CEFF4F210BC55E16007B9044 +:201337007A99305AF8022A4F4669607E07E601F807222A5F2A571A22131A77F8077EB728A4 +:201357000FF80A7EEA08C5F80B7EEA09C5C32A12F80A2A4F46FA8BCBD6013E0017EE015F6D +:20137700B72012C52108C55E2356D51E03217B40CDDE3DE1C12108C5792270C32A12F80493 +:201397002A5F561AF80A22131A77CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E23CB2E2BCBF6 +:2013B7001E2A777EC60821D2C74E91EAFBC4F8062A5F561AF80A22131A77CB2E2BCB1E23DA +:2013D700CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E2A777EC60821D4C74E91EAFCC4F8025D +:2013F7002A4E6F617E0F0FE6012810F8082A5F561A2108C522131A77C32A12210EC5CB4622 +:20141700286721FBC44E060021080009F04B4F06005C507995789CCB7B2807CB7A2008BFC1 +:201437001805CB7A2801373040FAFCC40600C6F84F78CEFF47F04A6F260058547D917C986D +:20145700CB7B2807CB7A2008BF1805CB7A28013730172108C52A4F46213200095D541A21D6 +:2014770008C522131A77C32A122108C52A4F46210E00097EFEFF28402112DAA6203A210BC2 +:201497000009347E2108C52A5F56210B00194D440AF80A77210D00197EF80B77F80A2A9653 +:2014B70020166B627ECB37E6012807F80A7E3D021806210C00197E022108C52A4F462122E9 +:2014D70000095D541AE0901AEA0020212300092A6E5F55FAFCC4F80977FAFBC4F80A77FA96 +:2014F70007C5F80B77210A00097EEA0FDA6B622323232A666F79C60B4F3001040A4F0600A8 +:20151700CB21CB10092A4F46210DDA7922702110DA3600F8092A472A5F507ECD410F2107C3 +:20153700C586772108C52A4F46213200095D541A2108C522131A77C32A12F8017EE0907EE6 +:06155700EA0020E80CC9C7 +:20C00000AF21F9C42277AF21F5C42277AF21F7C4227721FFC436002100C53600AF2101C5E8 +:20C020002277AF2103C52277114404D5110000D511B1C0D5CD4F3DE806C9020100FFFEFDBE +:20C04000FCFBFAFBFCFDFEFF0000000007000802078000000001B1C05950C5D51E03210669 +:20C0600046CDDE3DE1C16960CB966960CB9E6960CBA66960CB8E0AF62002C9E8F8F80E7EE9 +:20C08000F80077F80F7EF80177C1C569607EE601F80777B7CAD941F8007ED6B12007237EB2 +:20C0A000D6C0CAD941F8007EF80677F8017EF807322A666FCB86D1D521300019E57DF804B5 +:20C0C00077E17CF803322A5F561AF80622131A77D1D521320019E57DF80677E17CF805223D +:20C0E000233AB6283C2B2B2A5F561A4F131A47B1282F213000094D44F8062A02037E02F81F +:20C10000022A5F561A4F131A47213200094D44F8042A5F2A571A22131A322A02037E02180C +:20C120003EF8073AB6281C2A5F56213200194D44AF020302F8022A5F561A21F5C422131AE0 +:20C1400077181CF8042A5F561A4F131A47B1280921300009AF22771806AF21F5C42277F8C0 +:20C16000042A666FAF2277F8022A5F5621F9C42A12137E123AB628102A4F46213200094D4E +:20C1800044F8002A02037E02F8007EEAF9C4F8017EEAFAC4D1D5212B00192A4FCB7E200C7F +:20C1A00079F5331E04215163CDDE3D33D1D5212D0019E57DF80877E17CF807322A5F3A573E +:20C1C0001A22131A77E5CB7EE1200EF8067EF5331E0421B663CDDE3D33E808C9E8F8F80E88 +:20C1E0002A4F4669607EE601C2184369607ECB3707DA18436960CBC6C5C51E03210646CD71 +:20C20000DE3DE1C12130000933335D54D51AF80622131A7721320009E57DF80477E17CF8B7 +:20C220000377F8073AB6284BF8022A5F561A6F131A67B5283E113000195D54F8062A1213B9 +:20C240003A12D1D51A22131A322A5F5621320019E57DF80677E17CF805322B2B2A5F561A54 +:20C26000F80622131A322B2B2A5F2A572A12137E12183BF8073AB628192A5F562132001932 +:20C280005D54AF121312D1D51A21F9C422131A77181CF8022A5F561A6F131A67B528091182 +:20C2A000300019AF22771806AF21F9C42277F8022A666FAF2277D1D521F5C42A12137E1209 +:20C2C0003AB6280A2A5F562132001979227021F5C4792270212B00095D54AF22368021282B +:20C2E00000097EF80577B72827237B2272212900092A6E5F55C5AFF533F8092A666FE5D516 +:20C30000F80C7EF5331E0421EB61CDDE3DE806C1212D0009AF223680E808C9E8FAFAF9C41D +:20C32000EA0FC5FAFAC4EA10C52110C53AB6CA0F442A4F4669602323232A665F54CB2ACBD1 +:20C340001BCB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1BF8057321300009D6 +:20C360005D541AF80022131A77F80D7EF80596C200446960232A4F46CB28CB19CB28CB19BF +:20C38000CB28CB19CB28CB19CB28CB19CB28CB19CB28CB19F8027922AF324E060003F80C99 +:20C3A0007EF80422AF322A917E985678CB7F2807CB7A2008BF1805CB7A2801373042F8048C +:20C3C0002A5F56211700194D44F8022A917E985678CB7F2807CB7A2008BF1805CB7A2801D3 +:20C3E00037301DC1C5C5210FC52A5F56D51E0321DC41CDDE3DE1C1210FC5792270C32943AD +:20C40000F8007EEA0FC5F8017EEA10C5C32943E806C9E8F9FAF9C4EA11C5FAFAC4EA12C5FB +:20C420002112C53AB6CA60452A4F466960235D541AF80522131A77F8052A5F3A2B57CB2A35 +:20C44000CB1BCB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1B7369602323232F +:20C460005D541AF80022131A77D1D5CB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1BCB7B +:20C480002ACB1BCB2ACB1BF80273F8052A5F56CB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1B21DB +:20C4A0000700097E6F079F67195CCB2BCB1DCB2BCB1DCB2BCB1D7DF80577D1D5CB2ACB1BF1 +:20C4C000CB2ACB1BCB2ACB1BCB2ACB1B210800097E6F079F67195D54CB2ACB1BCB2ACB1B1F +:20C4E000CB2ACB1BF80673213000092A4F46F80D7EF804963861237EF80D96385A235E16C4 +:20C500000021150019E57DF80577E17CF80422233A223600F8035D54F8051A1396231A9E7F +:20C520001A57CB7E2807CB7A2008BF1805CB7A2801373823F8027EF80E96381BC52111C5A6 +:20C540002A5F56D51E0321DC41CDDE3DE1C12111C5792270C320442111C5792270C32044EC +:20C56000E807C9E8FBF80B7EF80077F80C7EF80177D1D5210C0019E57DF80477E17CF80325 +:20C58000322A5F2A571A77D1D5210D00194D44F80D7EF8049620080A5FF80E7E932817D183 +:20C5A000D5210B00195D54F80D7E12F8022A5F56F80D2A127E02E805C9E8FDF8092A4F4626 +:20C5C000210B00093333E5210C00097EF80277210D00094E0600F8025E160079934F789A50 +:20C5E00047F80B5E1600CD0B10F8027E814FE1E571E803C9F8062A4F46210B00095E210CE5 +:20C6000000094E7B91C9F8062A4F46210500095E211000097321120009CB231600195D54ED +:20C62000131A3C56F533D533C51E03216345CDDE3DE804C9F8062A4F46210500097EC6048B +:20C640005F211000097321120009CB231600195D54131A3C56F533D533C51E03216345CD59 +:20C66000DE3DE804C9F8062A4F46210500095D54F8082A127EB728292B7EC6045F21100088 +:20C68000097321120009CB231600195D54131A3C56F533D533C51E03216345CDDE3DE804A2 +:20C6A000C9F8085E21100009732112000955CB236A1600195D54131A3C56F533D533C51E0B +:20C6C00003216345CDDE3DE804C9E8FCFAF5C4F80077FAF6C4F80177F8013AB6CA9847F83D +:20C6E0000C7EB7200FF8002A4E6F617ECB370FE601CA8447C1C50369602A665F54CB2ACB2A +:20C700001BCB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1BF80373696023235F +:20C720002A4F46CB28CB19CB28CB19CB28CB19CB28CB19CB28CB19CB28CB19CB28CB19F861 +:20C740000B7E912810AF4703F80B5E16007B9120337A90202FF80A7EF803962823F8034EBA +:20C760000600595013F80A7EF80222AF327E932004AF92280B0BF8027E912008AF90200432 +:20C78000C1C51817D1D5213000194D4459501AF80022131A77C3D846010000E804C9E8F64D +:20C7A00021B2C02A4F463333C521B4C02A4F46F802792270F8104E06007987CB1087CB100A +:20C7C00087CB1087CB10F804227021B6C04EF8007EF80877F8017EF80977AF47CB21CB1089 +:20C7E00021AB1C09E57DF80877E17CF807322A5F561A5F079F57F8042A4F46CDED0DF8080A +:20C800002A666F094D443333C5F8027EF80877F8037EF80977F8062A4F46030A5F079F574E +:20C82000F8042A4F46CDED0DF8082A666F094D44F802792270F8117EF53311B1C0D52103AE +:20C840000039E511B7C0D51E0321614ACDDE3DE811C9E8F211E3C01AF80022131A77F80167 +:20C860003AB6CA5B4AD1D521320019E57DF80477E17CF80377F8147EB72025F8007EF80CA3 +:20C8800077F8017EF80D322A5F561ACB370FE601200EF8022A5F561AF80022131A7718BECD +:20C8A000D1D56B6223E57DF80677E17CF80577D1D521060019E57DF80877E17CF807322BC2 +:20C8C0002B2A5F2A571A4F131A47CB28CB19CB28CB19CB28CB19CB28CB192A5F2A571A5F67 +:20C8E000079F57792278322A666F19E57DF80E77E17CF80D7721B2C02A4F46CB28CB19CB32 +:20C9000028CB19CB28CB19CB28CB19FAB8C05F079F57F80A792278322A666F194D44F80C9B +:20C92000799623789E7857CB7E2807CB7A2008BF1805CB7A2801373843F8062A4F2A470314 +:20C940000A4F079F472A666F09E57DF80E77E17CF80D77FAB7C04F079F47F80A2A666F091A +:20C960004D44F80C2A917E985678CB7F2807CB7A2008BF1805CB7A2801373004AFC3454AE7 +:20C98000F8042A666F23232A4F46CB28CB19CB28CB19CB28CB19CB28CB19F8062A5F2A5733 +:20C9A00013131A5F079F57792278322A666F19E57DF80C77E17CF80B7721B4C02A4F46CBAB +:20C9C00028CB19CB28CB19CB28CB19CB28CB19FABAC05F079F57F80C792278322A666F1995 +:20C9E0004D44F80A799623789E7857CB7E2807CB7A2008BF1805CB7A2801373843F8062A84 +:20CA00004F2A470303030A4F079F472A666F09E57DF80C77E17CF80B22FAB9C04F079F47F1 +:20CA20002A666F094D44F80A2A917E985678CB7F2807CB7A2008BF1805CB7A280137300322 +:20CA4000AF18023E01B72804C1C51812F8022A5F561AF80022131A77C35E48010000E80E2A +:20CA6000C9E8E7F80036B12336C0F8217EF80277F8227EF80377F81F7EF80477F8207EF87E +:20CA800005322A5F566B6223E57DF80877E17CF80777F8022A5F5621020019E57DF80A77F4 +:20CAA000E17CF80977F8042A5F5621030019E57DF80C77E17CF80B77F8042A4F4603030A0A +:20CAC000F80C77F8013AB6CAD94CD1D521320019E57DF80F77E17CF80E77F8237EF8009610 +:20CAE0002008F8247EF801962814F8257EB7201CF8002A4E6F617ECB370FE601200EF80D32 +:20CB00002A5F561AF80022131A7718B7D1D56B6223E57DF81177E17CF81077D1D52106006E +:20CB200019E57DF81377E17CF812322B2B2A5F2A571A4F131A47CB28CB19CB28CB19CB2881 +:20CB4000CB19CB28CB192A5F2A571A5F079F57792278322A666F19E57DF81977E17CF818E6 +:20CB600077F8022A5F561A4F131A47CB28CB19CB28CB19CB28CB19CB28CB19F8062A5F564F +:20CB80001A5F079F57F815792278322A666F194D44F817799623789E7857CB7E2807CB7A41 +:20CBA0002008BF1805CB7A2801373846F8112A4F2A47030A4F079F472A666F09E57DF81997 +:20CBC00077E17CF81877F8042A5F561A4F079F47F8152A666F094D44F8172A917E98567875 +:20CBE000CB7F2807CB7A2008BF1805CB7A2801373004AFC3C34CF80F2A666F23232A4F460E +:20CC0000CB28CB19CB28CB19CB28CB19CB28CB19F8112A5F2A5713131A5F079F57792278F6 +:20CC2000322A666F19E57DF81777E17CF81677F8082A5F2A571A4F131A47CB28CB19CB282F +:20CC4000CB19CB28CB19CB28CB192A5F561A5F079F57F817792278322A666F194D44F815E3 +:20CC6000799623789E7857CB7E2807CB7A2008BF1805CB7A2801373845F8112A4F2A4703C4 +:20CC800003030A4F079F472A666F09E57DF81777E17CF81677F80C7E4F079F47F8172A6619 +:20CCA0006F094D44F8152A917E985678CB7F2807CB7A2008BF1805CB7A2801373003AF185E +:20CCC000023E01B72804C1C51812F80D2A5F561AF80022131A77C3C34A010000E819C93BEE +:20CCE000FA00C5B720752102C53AB6286E2A4F46212F00094E79B7286A11D6C01AF8007763 +:20CD0000B72822060021D7C02A665F54C53E01F533010000C5D5F8077EF5331E0421EB6116 +:20CD2000CDDE3DE8082101C52A5F56212500194678B72820212600192A666F110000D53EB6 +:20CD400001F533110000D5E5C5331E0421EB61CDDE3DE8082100C5361418082100C57EB715 +:20CD6000280135AF2101C5227733C9E8EDF8197EF80D77F81A7EF80E77CB3E2BCB1E23CB32 +:20CD80003E2BCB1E23CB3E2BCB1E23CB3E2BCB1EF81D7EF80177F81E7EF80277F81F7EF82C +:20CDA0000777F8207EF80877CB3E2BCB1E23CB3E2BCB1E23CB3E2BCB1E23CB3E2BCB1EF813 +:20CDC0001B7EF80F77F81C7EF81077CB3E2BCB1E23CB3E2BCB1E23CB3E2BCB1E23CB3E2B37 +:20CDE000CB1EF8012A5F5621020019E57DF80B77E17CF80A77F8012A5F5621030019E57D0D +:20CE0000F80D77E17CF80C77F8217E3D282DF8012A5F566B6223E57DF81377E17CF812770B +:20CE2000F8217ED602CA4B50F8217ED603CA7852F8217ED604CAE553C38155F8017EF8118E +:20CE400077F8027EF81277F8012A5F561AF806773A22079F323A2B77F8063A2B77F80D2AE2 +:20CE60005F56F8032A666F19E57DF80777E17CF806327EF80D77F8067EF80E77CB3E2BCB93 +:20CE80001E23CB3E2BCB1E23CB3E2BCB1EF8032A5F56F8072A666F19E57DF80777E17CF8D6 +:20CEA0000677CB3E2BCB1E23CB3E2BCB1E23CB3E2BCB1E2A5F562101007B955F7A9CF808D2 +:20CEC0003273F8092A5F561A773A22079F327EF80577F80A7EF806322A5F56F80F2A666F81 +:20CEE00019E57DF80B77E17CF80A77CB3E2BCB1E23CB3E2BCB1E23CB3E2BCB1EF80B2A5F3E +:20CF0000561A773A22079F322A5F56F80F2A666F19E57DF80777E17CF806327EF80F77F89F +:20CF2000067EF81077CB3E2BCB1E23CB3E2BCB1E23CB3E2BCB1E2A5F566B6223E57DF80424 +:20CF400077E17CF80377F80D3A2B77F80E3A2B77F8077EF80B962009F8087EF80C96CA4364 +:20CF600050F8097EF80F77F80A7EF81077F8027EF80F962009F8037EF81096CA2F50F80FC0 +:20CF80007EF80477F80B7EF80577212CC596303AF8047E212DC5963031FA29C5F806772197 +:20CFA0002CC54E0600F8045E1600CDED0D79212AC586234F788E47F8056E2600095D54F8E4 +:20CFC000067ECDEF15F806711804F806360FE5F808CB5EE1284EF80D2A5F566B6223E57D93 +:20CFE000F81177E17CF810773E07F80FCB2623CB163D20F6232A5F561A773A22079F773EF7 +:20D0000004F811CB2623CB163D20F62B2B2B2A5F2A572A666F7B955F7A9CF80E32734E2390 +:20D0200046C38655F80F34C26D4F2334C36D4FF80B2A5F3A571B7B227A322A23322A2377B9 +:20D04000C3504FF81F4E2346C38655F8117EF80277F8127EF80377F8112A5F561A773A223B +:20D06000079F327EF80077F8127EF80177F80D2A5F56E1E519E57DF81377E17CF812327E35 +:20D08000F80477F8127EF80577CB3E2BCB1E23CB3E2BCB1E23CB3E2BCB1ED1D5F8072A664F +:20D0A0006F19E57DF81377E17CF81277CB3E2BCB1E23CB3E2BCB1E23CB3E2BCB1E2A5F56AA +:20D0C0006B6223E57DF80877E17CF80777F8092A5F561AF812773A22079F327EF80D77F813 +:20D0E000127EF80E322A5F2A572A666F19E57DF81377E17CF812327EF80877F8127EF8094B +:20D1000077CB3E2BCB1E23CB3E2BCB1E23CB3E2BCB1EF80B2A5F561AF812773A22079F324A +:20D120002A5F56F80F2A666F19E57DF80F77E17CF80E327EF81177F80E7EF81277CB3E2B45 +:20D14000CB1E23CB3E2BCB1E23CB3E2BCB1E2A5F566B6223E57DF80C77E17CF80B77F804E7 +:20D160007EF80F77F8057EF81077F8067EF80F962009F8077EF81096CA7052F8087EF81149 +:20D1800077F8097EF81277F80A7EF811962009F80B7EF81296CA5A52F8117EF80C77F80F30 +:20D1A0003A2B77212CC596303AF80C7E212DC5963031FA29C5F80E77212CC54E0600F80C26 +:20D1C0005E1600CDED0D79212AC586234F788E47F80D6E2600095D54F80E7ECDEF15F80E98 +:20D1E000711804F80E360FE5F810CB56E12860F8047EF81177F8057EF812773E07F811CBD1 +:20D200002623CB163D20F6F8022A5F561AF810773A22079F322A5F566B6223E57DF80F773C +:20D22000E17CF80E322A23322A23773E04F80FCB2623CB163D20F6232A5F56F80F2A666F7D +:20D240007B955F7A9CF80E32734E2346C38655F81134C287512334C38751F80F3420022300 +:20D2600034F80F7EF80477F8107EF80577C36A51F81F4E2346C38655F8097EF80377F80AAB +:20D280007EF80477F8092A5F561A4F079F47F80F2A666F095D54F8057B2272CB3E2BCB1E7E +:20D2A00023CB3E2BCB1E23CB3E2BCB1E23232A666F094D44CB38CB19CB38CB19CB38CB195A +:20D2C00011010079935F789AF8083273F8012A5F561A4F079F47F80D2A666F094D44F8094D +:20D2E000792270CB3E2BCB1E23CB3E2BCB1E23CB3E2BCB1EF8112A5F561A4F079F47F80D43 +:20D300002A666F094D44CB38CB19CB38CB19CB38CB1903F80B792270F8057EF81177F806B5 +:20D320007EF81277F8077EF811962009F8087EF81296CADD53F8092A5F56F80B7E93200677 +:20D34000237E92CAC553F8113A77F80D737E212CC5963041F8107E212DC5963038FA29C570 +:20D36000F80E77212CC54E0600F8103A22AF32D55E1600CDED0DD179212AC586234F788E1D +:20D3800047F80D6E2600094D44D5F8107E5950CDEF15D118020E0FCB492826F8052A4F3A24 +:20D3A0002B2B4703AFCB1841CB181F4F2A5F561A6F079F672929292979954F789C47C3868F +:20D3C0005513C33A53F8112A5F3A571B7B227A327EF80577F8127EF80677C32453F81F4E80 +:20D3E0002346C38655F80B3A2B77F80C3A2B222A5F561A4F079F47F80F2A666F095D54F8CF +:20D400000F7B2272CB3E2BCB1E23CB3E2BCB1E23CB3E2BCB1EF8072A666F094D44CB38CBEB +:20D4200019CB38CB19CB38CB1903F80B792270F8012A5F561A4F079F47F80D2A666F094D6C +:20D4400044F807792270CB3E2BCB1E23CB3E2BCB1E23CB3E2BCB1EF8112A5F561A4F079FEA +:20D4600047F80D2A666F09E57DF81377E17CF812322A4F46CB38CB19CB38CB19CB38CB1967 +:20D4800003F803792270F80F3A2B77F8103A2B77F80B2A239620072B2A2396CA7A55F80709 +:20D4A0007EF81177F8087EF81277F8037EF811962009F8047EF81296CA6855F80D5EF81121 +:20D4C0007EF80577212CC59630327B212DC596302BFA29C5F80677212CC54E060050CDED04 +:20D4E0000D79212AC586234F788E47F8056E2600095D54F8067ECDEF157918023E0F0F309A +:20D500005CF80F2A23322A23773E07F811CB2623CB163D20F6F8092A5F561AF80D22079F08 +:20D52000322A5F566B6223E57DF81177E17CF810323A2B77F8103A2B773E04F80DCB262356 +:20D54000CB163D20F6F8112A5F56F80D2A666F7B955F7A9CF81032734E23461829F8113444 +:20D56000C2AA542334C3AA54F80D3420022334F80D2A23322A2377C39054F81F4E2346184C +:09D5800005F81F4E2346E813C90B +:20155D00F090EA13C5F8067EE090EA0020C1CDDB3BFA13C5E090EA00206069E9F090EA1317 +:20157D00C5F8067EE090EA0020C1CDE33BFA13C5E090EA00206069E9F090EA13C5F8087E29 +:20159D00E090EA0020C1CDF83DFA13C5E090EA00206069E9F090EA13C5F8087EE090EA00D9 +:2015BD0020C1CDC23BFA13C5E090EA00206069E9F090EA13C5F8027EE090EA002060692A3E +:2015DD0012132A12137E12FA13C5E090EA0020E133E94FF090EA13C579E090EA0020626B50 +:2015FD002A4F46FA13C5E090EA0020C9F090EA13C5F8047EE090EA0020F8022A666FE5CD19 +:20161D007E0FFA13C5E090EA0020E1E803E93B3BF090EA13C5F8067EE090EA0020F8047EF7 +:20163D00F80077F8057EF80177E1E5E5CDF30EFA13C5E090EA00203333E1E803E9E8F6F87D +:20165D00077323722B2B77F8033600F80D7EF80477F80E7EF80577F8093600F80C7EF809B8 +:20167D00962856F8072A4F3A2B477EF533210100395D54CDCD15F8004EF8042A5F561A4732 +:20169D0079902019F8012A4F2A23472A666F232A669120097C902005F8037E181FF8093463 +:2016BD007EF80377F8072A5F5621030019E57DF80977E17CF8087718A2F80C7EE80AE1E85D +:0216DD0003E91F +:020000040002F8 +:0B400000250A49C4096157012700018F +:020000040000FA +:2016DF00E8F9FA1CC5F80077E5CB46E1CA7A1721B2C02A4F4621800009E57DF80377E17C61 +:2016FF00F80277E5FA1AC5E16F079F67292929294D44F803792278322B2B2A5F2A572A66DA +:20171F006F7B955F7A9C474BFA18C55F079F576B62292929295D5479934F789A47FA14C548 +:20173F00F80577FA15C5F806322A917E9830082114C57922701824D5F8052A5F56F8032AF2 +:20175F00666F19D14D4479934F789A47F805799623789E30062114C5792270E5F802CB4EEE +:20177F00E1CA0F1821B4C02A4F4621800009E57DF80377E17CF80277E5FA1BC5E16F079F23 +:20179F0067292929294D44F803792278322B2B2A5F2A572A666F7B955F7A9C474BFA19C500 +:2017BF005F079F576B62292929295D5479934F789A47FA16C5F80577FA17C5F806322A91CE +:2017DF007E9830082116C57922701824D5F8052A5F56F8032A666F19D14D4479934F789AC6 +:1317FF0047F805799623789E30062116C5792270E807C956 +:020000040002F8 +:20400B00211CC53603AF2116C52277AF2114C522772119C536002118C53600211BC5360034 +:06402B00211AC53600C990 +:020000040001F9 +:208000001E09219240CDDE3D1E09213140CDDE3D1E05210040CDDE3D1E0821FE41CDDE3DE3 +:208020001E09217240CDDE3D1E0621CF43CDDE3D1E0721BA44CDDE3D1E09210B40CDDE3D78 +:208040001E03210040CDDE3D1E01218240CDDE3DAFF5331E08210040CDDE3D33AFF5331E5E +:2080600008214040CDDE3D33AFF5331E08215A42CDDE3D33C9E8FCCD8839B7280FFE012817 +:208080000BFE0228F2D603CA2F4118EBCDC719FA15C6D6F020283E01F5331E04213461CD09 +:2080A000DE3D331100400609AFF533210000E5D5C5331E0421EB61CDDE3DE80618B9218B86 +:2080C000CB7ED6013E0017EE012019FA15C6B72803CD6B18CD4902FA12DAE60F2003CD3EDB +:2080E00019CDDE1C0EC0F0929120072127DA36DF18052127DA36C02107C53600CDDF161E29 +:2081000006211944CDDE3DCDF710CD3E1ECD55281E0321DF4CCDDE3D2112DA341E28FA07CF +:20812000C5CDAA0DFA27DAE092CDBD01C37740FA8DCB3D281AFA8DCBD6022858FA8DCBD6E1 +:2081400003CA0142FA8DCBD604CA1E42C377401E09215740CDDE3DCD7105AFF5331E04211B +:208160003461CDDE3D3321690546216A052A666F3E01F533C533E51E05213143CDDE3DE81F +:2081800004D6013E0017F803771E05219149CDDE3DC36A421E09215740CDDE3DAFF5331E0C +:2081A00004213461CDDE3D33AFF5331E08214040CDDE3D33AFF5331E08210040CDDE3D33B8 +:2081C000AFF5331E08215A42CDDE3D332190CB2A4F46FA8FCBF533210100395D54CDCD1558 +:2081E000F8002A472A4F7E260168E547C51E05213143CDDE3DE804D6013E0017F80377185D +:2082000069218FCB4E2190CB2A5F5679CDEF1579F5331E07212E4ACDDE3D33C377401E076E +:2082200021DB45CDDE3D1E09215740CDDE3D218FCB4E2190CB2A5F5679CDEF1579F5331E21 +:208240000721EF4ACDDE3D33EA8CCB2120C54E2121C52A666FAFF53379F533E51E05213135 +:2082600043CDDE3DE804F8033600F3FA37C53D2809FA37C5D602280A181011011ECD9A3C64 +:20828000180E11D81ACD9A3C180611591ACD9A3CAFE045FBFA21DAB72006F040F602E040E4 +:2082A0001E03215540CDDE3DCD44020EC0F0929120072127DA36DF18052127DA36C0210750 +:2082C000C53600CDDF161E0621E949CDDE3DCDF7101E28FA07C5CDAA0DFA27DAE092F803B6 +:2082E0007EB7CA77401E0721C145CDDE3DC37740E804C92119C83600FAA0C0D6112006FACC +:208300004301073803AF18023E01EA18C8FAA1C0B72806FA18C8B72003AF18023E01EAA17E +:20832000C0FA18C8B72803CDCB0FAFA7F5110000D51100DFD5CD4F3DE8061E07210B49CD76 +:20834000DE3DCDDF101E0821E042CDDE3D3E67E0403E07E04B3E90E04AF00406004FC5CDED +:208360002A3BE1CD71053E01F5331E04213461CDDE3D33F32197C636852336C6AFE04511EA +:20838000041BCDED01F041F640E041FAA0C0D611200CFA430107E6014FB73E8020023EC0FE +:2083A000E0063E07E007F0FFF60EE0FFFBF040F680E0400609AFF533110000D5110040D526 +:0F83C000C5331E0421EB61CDDE3DE806C37540D9 +:020000040000FA +:050000000000C3380000 +:04003800F3C300020C +:0A020000E52100203607E1C30040AD +:020000040001F9 +:20C00000EA1DC5F0FFEA1EC5F040EA1FC53E80E0403E01EAFF003E00EA0F0076003E00E0C9 +:20C0200040089E9D319E9DE5D5C5FA1DC5F5F04F5FCB47281121969D0E0A46AFE04F702CAC +:20C040003CE04F0D20F4AFE026E04F7BEABB9D3E01E04F21CB9D0612AF0E15EF7DC60B6F26 +:20C060000520F5AFE04F3E03E0473E80E068AF0E69E2E23DE2E2E2E2E2E23E70E0423E5C7D +:20C08000E043CD8A4121B79D119C9D0E04F721CB9D11EB4206033E20220E13F73E20227DB8 +:20C0A000C60B6F0520F03E200E15EF2E6B0E04F7C1CD3B410E08F7FAA0C0CD3F413E2022DB +:20C0C00022222E8B0E04F7C1CD3B410E06F7C1CD3B413E202222227DC60B6F0E04F7C1C52B +:20C0E000CD3B41113E430E07F7D1CD5B41114543CB7D28E31149432EAB0E06F7FA1FC5CD07 +:20C100003F410E04F7F04DCD3F410E04F7FA1EC5CD3F4136202ECB0E07F73E20221A1322AF +:20C12000FE20280C1A134F1A13470ACD3F4118EA3E89E040AFE00F760018F9CD404179474A +:20C1400078E6F0CB37C630FE3A3802C6072278E60FC630FE3A3802C60722C9424BCD3B41D5 +:20C160003E2022227BD6085F7ADE00577DC60B6F3E20221A13CD3F411A13CD3F413E202205 +:20C18000CB6520EF7DE67F20E3C921B1412A5F2A57B3C84E23CB79280A2A121312130C2093 +:20C1A000F918F00C0D28E62A121312130D20F818E20090F8FF000092F8FF00D09208FFFF4C +:20C1C000FFFFC3FFFFFF00009350FFCFA733333397CFFFCF8F0FCFCFCF03FF8733E7CF9F60 +:20C1E0003F03FF8773F3C7F37387FFC7A76703E7E7E7FF033F3F87F33387FF87333F0733EB +:20C200003387FF03F3F3E7E7CFCFFF87333387333387FF87333383F3338700A09308FFFF5B +:20C220009F9FFF9F9FFF00109442FFCFB77B7B037B7BFF077B7B077B7B07FFC3BF7F7F7F2C +:20C24000BFC3FF0F777B7B7B770FFF037F7F037F7F03FF037F7F037F7F7FFF837F7F437B1E +:20C260007B87FF7B7B7B037B7B7BFF83FBEF0283FFFAFB0A07FF7B776F5F1F6F73FFFA7FAA +:20C280001303FF7B334B7B7B7B7BFF7B3B5B6B737B7BFF87FB7B2387FF077B7B077F7F7F9A +:20C2A000FF877B7B7B5B6793FF077B7B076F777BFF837F7F87FB7B87FF01FAEF01FFFA7B6C +:20C2C0000287FFFB7B22B7CFFF7B7B7B7B4B337BFF7B7BB7CFB77B7BFFBBBBBBD7EFEFEFD8 +:20C2E000FF03FBF7EFDFBF030000004B45524E454C2050414E494320504C454153455345FC +:20C300004E44204120434C45415220504943204F46544849532053435245454E20544F20F7 +:20C32000444556532041463A20204D4F44454C3A2042433A20202044453A20484C3A2020CF +:20C34000564945573A2053503A204C4344433A204B313A2049453A202042414E4B3A5290C5 +:08C36000FF56BB9D5770FF2042 +:020000040000FA +:20181200E8FD4B425FF090F800777BE09021002073210500095D541AF80122131A77210776 +:2018320000092A4F46F8052A5E87CB136F63092A4F46CB21CB10F8012A666F094D44F807F2 +:191852002A5F56211000E5CD7E0FF8007EE0907EEA0020E803E1E804E91F +:020000040001F9 +:204000002133C536002135C536002178C536382336C5C909684C3BF8097EB7CAF1402B3ABF +:20402000B6CAF140F8072A5F2A574B42D57E5950CDEF15D1131379D68078DE00301879B7D8 +:20404000CAF140F80966E533D5F533AFF533CD5D15E805C3F140C5D5F80D7EF533D52100B7 +:2040600080E5CD5D15E805D1C179C6804F78CEFF47210008195D5479D68078DE003043F800 +:20408000007977D64178DE00301C7EB728634E3EC091F80966E533D5F80366E533F533CD18 +:2040A0005D15E805184BF8007EB72845F8097EF533D5F8037EF5333E80F533CD5D15E80575 +:2040C000182FC5D5F80D7EF533D5218080E5CD5D15E805D1C179C6804F7AC6085779B728B6 +:2040E00010F80966E533D5F533AFF533CD7915E80533C9E8F2F8142A4F2A477EF533110E84 +:2041000000D5210300395D54CD0916F8087EEA23C5F8092A4F7E2124C5712377F80B7EEA08 +:2041200026C5F80C2A4F7E2127C5712377F8007EEA2CC5F8017EEA2DC5212CC56E2600290E +:2041400029295D54212EC57B2272FA2EC5C660EAD6C7FA2FC5CEFFEAD7C7212DC56E2600B5 +:204160002929295D542130C57B2272FA30C5C670EAD8C7FA31C5CEFFEAD9C7F8022A472A64 +:204180004F7EC53347C51E05211640CDDE3DE803FA18C8B72820F8062A4F4678B128172BB8 +:2041A0002B3E01E04F7EF533C51E05211640CDDE3DE803AFE04FE80EC9E8F6F8117EF8088C +:2041C00077F8127EF809322A5F56210D00194D44F8137EF533210100395D54CDCD15F80092 +:2041E0002A472A4F7E5957F8107EF803776B62C5D5785D54CDEF1569D1C17D4FB728131382 +:2042000013C5C533D5F533F8097EF533CD7915E805C1F80471FA18C8B7286EF8082A5F56AE +:20422000211000194D44F8137EF533210100395D54CDCD15F8012A4F4678B1284C2B2B3E4E +:2042400001E04F7EF805775950C57ECDEF155950C1F806732A327EB72821232303037922E3 +:2042600070F8057EF533F8092A5F56D5F8097EF533F8077EF533CD7915E805AFE04FF80408 +:204280007EF8079630037E1803F8047EE80AC9F8062A4F46210900094D44F8092A5F3A2B9A +:2042A000577EF533210400E5CD0916C9E8F9F8117EF80077F80F2A5F564B42D5F8027E5952 +:2042C00050CDEF15D1F80179221313137B227A2271F80D7EF80577F80E7EF80677F8047E0B +:2042E000B72848E5CB46E12829F8022A4F2A23472A5F56F8007EF533210800E5CD0916F8F9 +:20430000022A5F5621080019E57DF80477E17CF80377F8047ECB3F222A5F5621080019E52A +:204320007DF80777E17CF8067718B2F8017EE807C9E8B6F8502A5F2A57D57EF533013B0018 +:20434000C54B42210700395D54CD0916D10120C5F8527E020121C57B02037A02F8047EEA45 +:2043600036C5F8054E69AF67237DD6157C173F1FDE8030050C790718020E152133C571F81E +:20438000067EFE1F38023E1FEA25DAF8077EFE0538023E05EA34C5F8087EFE4038023E40A8 +:2043A000EA32C5F8107EEA29C5F8112A4F7E212AC57123771E01215341CDDE3DF80D2A4771 +:2043C0002A4F7EC53347C51E0521F340CDDE3DE803F8132A472A4F7E5957C5D5C533D521ED +:2043E000A0DFE51E0521AC42CDDE3DE805D1C11378CDEF152142C671F8162A472A4F7E59FB +:2044000057C5D5C533D52145C6E51E0521AC42CDDE3DE805D1C11378CDEF1579EA43C6214B +:2044200044C670111200D5212D00394D441185C6CD7E0FF82C7EB7200F2136C5CB463E0247 +:204440002001AFEA37C518052137C536012136C5CB46206A110300D5210C00394D4411D3BA +:20446000C0CD7E0FF80A2A472A4F7E595721BBC03600C533D5AFF5331E0521B941CDDE3D6C +:20448000E8044FF8094678913801482106C571F80A2A472A4F5621C3C0E5210000E5785911 +:2044A000CD1218F80A2A472A4F7E11B7C0D5C53347C51E05218F42CDDE3DE805182821BB34 +:2044C000C03E68EA06C53668110300D501134011D3C0CD7E0F111000D5110000D511C3C078 +:2044E000D5CD4F3DE806FA32C5B72872F8202A4F7EF8477123223600FA32C5F84996285ED6 +:20450000F8497ED6402857F81F7EF8474E2346F533213E00395D54CDCD15117AC5F8496E9D +:204520002600194D44FA06C502F83D2A472A4F7EC53347C5FA06C5F5331E0521B941CDDE6D +:204540003DE8042106C58677F8472A5F5621030019E57DF84977E17CF8482234189AF853E4 +:204560007EB7CADA47211BC53600211AC511030072D5211E00394D4411D6C0CD7E0F21FF5F +:20458000C43600AF21F5C42277AF21F9C4227721B1C0CB8621F7C43EB1223EC0322A4F461A +:2045A00021320009AF227721F7C42A4F46213000094D4421F9C42A02037E023AB628112AF1 +:2045C0004F46213200094D4421F7C42A02037E02FAF7C4EAF9C4FAF8C4EAFAC411B1C0D5BD +:2045E0001E0321DC41CDDE3DE1FA33C5B7CA4948F8227EF847772133C54E06000B696029D7 +:204600000929290929294D44F8237EF84877F8247EF849322B2AF533C52A4F4611E5C0CD72 +:204620000916FA33C53DF8472236E52336C0F8477EB7CA4948232A5F5621110019E57DF821 +:204640004777E17CF846322A5F3A2B571A77F8482A5F56210A00193333E5F8482A5F56210B +:20466000220019E57DF84277E17CF841322A5F566B6223E57DF84477E17CF843227EB72829 +:204680004DD1D5FA06C512F8402A5F561AF844322B2A5F561AF80022131A77C1C5F8447E8F +:2046A000F533C5FA06C5F5331E0521B941CDDE3DE804F84477F8452A5F561A773A2B963083 +:2046C000032A2377F8467E2106C58677182CF81F2A4F2A665F54F8402A666FE5FA32C5F555 +:2046E0003379CD5A164F2132C5963009217AC50600094E18020E00E1E571F8482A5F56213F +:20470000120019E57DF84677E17CF84577F8402A5F561AF84677F8422A5F3A571A22131AA3 +:20472000222A5F2A57D5110000D57EF8465E2356CD1218F8482A4F3A470AE6FE022A5F56FF +:20474000213200194D44AF020302F8482A5F56213000194D4421F9C42A02037E023AB628E7 +:20476000257EF84377FAFAC4F844322A5F5621320019E57DF84777E17CF846322A5F2A23B8 +:20478000572A12137E12F8487EEAF9C4F8497EEAFAC4F8482A4E6F617E0FE6012015F848A6 +:2047A0007EF84577F8497EF846322A5F561A07E601280FF8485E2356D51E0321DC41CDDE84 +:2047C0003DE1F84735232A5F5621340019E57DF84A77E17CF84977C32E462133C57EB728FA +:2047E0004901E5C07E3DF84977F8497EB7283B211100097EB72828212200097EE5F84A7756 +:20480000E1232A6E5F55210A00097EC5F84A66E533D5F5331E0521B941CDDE3DE804C1F849 +:204820004935213400094D4418BF21F5C42A4F4678B12815C5C51E03210646CDDE3DE1C193 +:20484000213000092A4F4618E71E03218955CDDE3DFA34C5B7CA1549F8287EF847772134BD +:20486000C54E06006960292909290929094D44F8297EF84877F82A7EF849322B2AF533C55B +:204880002A4F461152C7CD0916FA34C5F847223E522236C7F8477EB7287B232A5F56210402 +:2048A00000194D44F81F7EF84677F8202A665F54C5FA32C5F533F8497ECD5A16F84677F822 +:2048C000482A5F5621080019E57DF84577E17CF84422237E2132C596301BF8465E16002131 +:2048E0007AC519E57DF84777E17CF846322A5F561A774E18020E00F8432A666F71F8473576 +:20490000232A5F5621170019E57DF84A77E17CF84977C39448FA25DAB7282BF8257EF84798 +:20492000772125DA6E26002929294D44F8267EF84877F8277EF849322B111BC82AF533C5A7 +:204940004E2346CD09161E0621F943CDDE3D1E0721BC51CDDE3DAF2103C52277F8537EB75F +:20496000282BF81A2A4F4678B128222B2B66AFF533110000D5C5E5331E0421EB61CDDE3DD3 +:20498000E80678B1D6013E0017EE011801AFE84AC92164052A4F4621B2C0792270216605AF +:2049A0002A4F4621B4C0792270FA6805EAB6C0FA6C05EAC0C0FA6D05EABFC021BCC0360054 +:2049C00021BDC0360021BEC0360221B1C0CB8E21E0C0360121B1C0CBEEC9F8083A2BF533A8 +:1349E0002A5F56D53E04F533FA06C5F533CD7915E805C9A8 +:020000040000FA +:20186B00E8F8F8053EE22236C5FA15C6F80777F8003601F8077EB7CA3119E5CB46E1CA1BC5 +:20188B0019F8052A5F3A2B571A77B7CA1B19E60F3D4F079F47696029290911BAC5194D44D0 +:2018AB0021030009E57DF80377E17CF802322A5F561A6F131AB52858E5F806CB7EE128098B +:2018CB00FA15C6F800AEEA15C6FA16C6F800A6203F69602A666FB42803293034F8007EF848 +:2018EB0003223E00322B2B2A5F561A6F131A5D57696023237EF5F8057E26006FF1E526011A +:20190B00E533C5D5F5331E0421EB61CDDE3DE808F8077ECB3F77F8007E8777F80534C27E98 +:20192B00182334C37E18FA17C62115C6A6EA17C6E808C9E8FB01FEC5F8043600F8047ED6B2 +:20194B000428760AB7286B5950131A3D12B720620A12F8045E16006B622929197DC6EA5FD8 +:20196B007CCEC5F800732377E1E52323235D541AF80222131A77F8033AB62838D1D51A6F14 +:20198B00131A67B52803293029F8022A5F56E1E523237EC5210000E52600E533F5F8072ABC +:1C19AB00666FF1E5D5F5331E0421EB61CDDE3DE808C10303F804341883E805C9C9 +:020000040002F8 +:20000000F8067EB728170E0079D608D00600696029290911BAC519AF22770C18EB110800F6 +:20002000D5110000D511E2C5D5CD4F3DE806112800D5110000D511BAC5D5CD4F3DE806C9C8 +:20004000F8067EB728170E0079D604C80600696029290911EAC519AF22770C18EB11080092 +:20006000D5110000D511FEC5D5CD4F3DE806111400D5110000D511EAC5D5CD4F3DE806C950 +:020000040001F9 +:20C36800F8053A473A4F3E80E20C3A6E6711000078B7280DCB23CB12CBC3CBEBCBD20520AD +:20C38800F30620F041CB4F20FA2AB3E2F041CB4F20FA2AB2E20520EBC9F8053A473A4F3E17 +:20C3A80080E20C3A6E6711FF7F78B7280FCBA3CB8ACB3ACB1BCBA3CB8A0520F10620F04125 +:20C3C800CB4F20FA2AA3E2F041CB4F20FA2AA2E20520EBC947FA11DAB7281BC50E68C5114F +:20C3E800A0DFD5CDA143E804C10E6AC51145C6D5CDA143E804C9C50E68C511A0DFD5CD6855 +:20C4080043E804C10E6AC51145C6D5CD6843E804C9000103070F1F3FB7281C5726047BE674 +:20C428000328013DCB3FCB1DCB3FCB1DCB3BCB3B2520EB5D1520E57BC9B7281E5726047BB7 +:20C44800E603FE0328013CCB3FCB1DCB3FCB1DCB3BCB3B2520E95D1520E37BC94F3E04918C +:20C4680030020E04FA11DAB720242142C646C55879CD2044C1E0472143C65EC579CD20447B +:20C48800C1E0482144C65E79CD2044E049C92142C646C55879CD4144C1E0472143C65EC5FA +:20C4A80079CD4144C1E0482144C65E79CD4144E049C9011B440AEA07C62108C63605210608 +:20C4C800C63600FA18C8B728053E05C3DC433E05C36444FA08C6B7200EFA18C8B72804AFAE +:20C4E800C3DC43AFC364442109C63600210AC636002106C636012108C63605FA18C8B728E4 +:20C50800053E05C3DC433E05C36444FA08C6D6052010FA18C8B728053E05C3DC433E05C37F +:20C5280064442109C63600210AC636012106C636012108C63600FA18C8B72804AFC3DC4366 +:20C54800AFC36444FA06C6B7C82109C64E34792107C6A6C0210AC6CB4620152108C67EB7DA +:20C56800280135FA08C6B7201C2106C6360018152108C67ED605300134FA08C6D6052005D5 +:20C588002106C63600FA18C8B72806FA08C6C3DC43FA08C6C36444FA18C8B72806FA08C64D +:20C5A800C3DC43FA08C6C36444011944F8066E2600094D440AEA07C6C91E0721DB44CDDE3A +:20C5C8003DFA06C6B7C8CDBD011E07214C45CDDE3D18EE1E07211345CDDE3DFA06C6B7C8B6 +:0DC5E800CDBD011E07214C45CDDE3D18EEF6 +:020000040000FA +:013E0C0000B5 +:020000040002F8 +:20008000C5F3F090F5F8067E4FCB3FC60CEA00202640CB412802CBECAF6F16A05F3E0AEACA +:2000A000000079EA00401A473E00EA00003EA9EAAA0A3E56EA55053EA0EAAA0A7877060046 +:2000C000BE280BE5E1E5E10520F61E00180913233EC0BA20C81E013EF0EA00403E0AEA00CA +:2000E00000F1EA0020FBC1C9F80646F800545D2198FF39F9D5E50E68118040F778C11E005A +:20010000D6013813E603F5606933E73B7BB72806F1D60130F1F5F1E1F9C9F3F090F53E0049 +:20012000EA00003E0CEA00203EF0EA00403EA9EAAA0A3E56EA55053E80EAAA0A3EA9EAAAF5 +:200140000A3E56EA55053E30EA0040110000FA0040FEFF280EE5E1E5E11D20F21520EF1EAA +:200160000018021E013E0AEA0000F1EA0020FBC9F800545D21AAFF39F9D5E50E56111A4126 +:20018000F7E1E7E1F9C9F8064E211AC87EE6F04779E60FB077210040771E0C69CB3D197979 +:2001A000E601CB3707E6E0470E0078C640477DF533110020D51100A0CD0916C9060078D60A +:2001C00004D0C5C5331E08218641CDDE3D33C10418EC211AC84EC51E08217041CDDE3D7B2B +:1E01E000C1B7C8C5F8087EF5331E0821E840CDDE3D33C1211AC87E71210040717BC903 +:020000040000FA +:013E0D0000B4 +:020000040001F9 +:20C5F500E0013E81E002F0020738FBF001C98833010000000100000088330F0000000F0028 +:20C61500000088330400000004000000883308000000010000005F210BC6460E00C57BCDCC +:20C63500F545C1210BC62270C94F06007891300E041A6F13C5D57DCD2B46D1C118EE210C47 +:20C65500C67ED68120032B7EC93EF0C93B3B43FA0DC6B7202021EC460E0679B7280F2A5FCA +:20C67500E5C5D57BCDF545D1C1E10D18ED210EC63E8622AF770E10F80078227279B728277D +:20C69500D1D51A210EC65E23562B0600835F788A732377D1D51A47C578CDF545C10DF800C6 +:20C6B5003420D9233418D5210DC6347ED6282023FA0EC6CDF545FA0FC6CDF545AFCDF545AC +:20C6D500AFCDF545210DC63600AF210EC622773E011801AF3333C98833040080023BF8007E +:20C6F50077D53E0A110D46CD3E46D14FF800A647F8037E9028147B421BB020043EF0180B95 +:20C7150079E6F02005CDBD0118D77933E133E9210DC636003E0A110346CD3E46F8065EAF45 +:20C7350057F5333EFFCDF246C9E8E9F8103600F81E4ECB394179B7CA0849CD2E02F81D7EC7 +:20C755000E0087CB1187CB1187CB1187CB1187CB116F6119E57DF81377E17CF81277210DEE +:20C77500C636007887F81377F8137EB7CAA448233600F8117EF81577F8127EF81677F814B4 +:20C795007ED614CA8B48F8155E2356CD280D472118C87EB7281E3E01E04F7EB72813F815EB +:20C7B5005E2356CD280D0F0F0FE6014FB73E012001AFE04F21000039E53E01F533C533CDC8 +:20C7D500353BE804AFE04F210000395D54CD6146B72803F81034F8107ED609C27E48F81078 +:20C7F50036003E0A111746CD3E46F81E4EAF470BF8135E16007B9120097A902005F81F4E3A +:20C8150018020E00211ADA710600211BDA36E4211CDA367F216A01094D44211DDA7922700A +:20C835003E0E1113DACD3E463E02F5333E02117800CDF2464FE6F0280479C30849AFF5335D +:20C855003E0211B004CDF2464FE6F0280479C308493E0A110346CD3E46AFF5333EFF110AB9 +:20C8750000CDF2464FB7C20849F814342334C293472334C39347F813352B2B2A5F562120A8 +:20C895000019E57DF81377E17CF81277C37D47F8107EB728563E0A111746CD3E46F81F4EFA +:20C8B500211ADA710600211BDA36E4211CDA367F216A01094D44211DDA7922703E0E111322 +:20C8D500DACD3E463E02F5333E02117800CDF2464FE6F0280379181BAFF5333E0211B0040A +:16C8F500CDF2464FE6F028037918083E0A110D46CD3E46E817C97A +:020000040000FA +:0E3E0E008833020004000100E47F0000000081 +:2019C7000111C60AEA16C6CD1E3DEA15C6022116C6AEE60FC8FA16C62F2115C6A6E60FEA7B +:0319E70017C6C957 +:020000040002F8 +:20403100110500D5110000D51110C6D5CD4F3DE8062116C636002115C636002117C6360002 +:064051002110C63601C972 +:020000040000FA +:04005800FBC3EA19E3 +:163E3000AF2118C60E03EF3E00EA18C6E0023E66E0013E80E002C1 +:2019EA00F5E5C5D50E01AFE0022118C67EFE022012F2F53336003E66E23E80E002CDAD2703 +:201A0A0033182CFE012028F2FE55360028043604180CFA1AC6FE022005773E5518023E6632 +:1A1A2A00E23E80E0023E00EA1AC63E01EA19C6D1C1E1F041E60220FAF1D9A0 +:20020A003E01EA18C63E01E002F8027EE0013E81E002C93E02EA18C6AFE0023E55E0013E9E +:04022A0080E002C9A5 +:04005000FBC3441A90 +:151A4400F5E5C5D5CD601DCDEE27D1C1E1F041E60220FAF1D97D +:201A5900F045D6962033FAD2C7E043FAD4C7E042FA4AFFB7280BF04AD690D0F04A3DE045D3 +:201A7900C9F04BD607200CFA22DAB72006F040E6FDE040FA23DAE045C9F0452123DA96303C +:201A99001EF04BD6072012FA22DAB7200CF041CB4F20FAF040E6FDE040FA23DAE045C9F07F +:201AB90041CB4F20FAAFE04BF040E6DFE040FA21DAB72006F040F602E0403E96E045C9F0DD +:201AD90045D6962015F040E6EFE040FAD2C7E043FAD4C7E0423E47E045C9F041CB4F20FA9D +:201AF900F040F610E0403E96E045C92118C97EE04A7ED690300FFA16C9C607E04BF040F6F1 +:201B190020E0401809AFE04BF040E6DFE040FA21DAB72808F040E6FDE0401806F040F60207 +:151B3900E040FA8AC6EA85C6FA90C6EA8BC6FA96C6EA91C6C90D +:020000040002F8 +:1B405700F311011ECDA03C11591ACDA03C11D81ACDA03CF040E6EFE040FBC9C0 +:020000040000FA +:033E1C000000960D +:020000040001F9 +:20C90B003B3B210000360A211AC87EE6F077EA0040211BC63E0422AF770156496960233AEB +:20C92B006EB52824696023235D541AF80022131A77211BC62A5F56E1E5195D54211BC67BF7 +:20C94B0022720303030318D43333C994CB000E53CA300183CB020085CB020087CB020089D7 +:20C96B00CB02008BCB0100BAC52800E2C50800EAC51400FEC5080037C601003CC60200237F +:20C98B00C6140020C5030078C5020038C54000B1C04404F5C40200F9C40200FFC401000156 +:20C9AB00C502009BD9020000000000E8F9F80222AF2222AF4F223600F8067EF80296304865 +:20C9CB0023D52A5F56211BC62A666F19D1E57DF80577E17CF80432D52A5F56211BC62A66E3 +:20C9EB006F19D13333E5F800AF96233E209E3013F805347E4FD60338050100001822AFF8F3 +:20CA0B00032277F8063418B07912F8032A5F562100A019E57DF80777E17CF806322A4F4612 +:20CA2B00E807C9E8F7F8005D54F80F7ECDB64978B1CAEC4AF8005E211AC87EE6F0577BE6CC +:20CA4B000FB277EA00405950FA6005F80577FA6105F80677FA6205F80777FA6305F8087768 +:20CA6B00F8052A12132A12132A12137E1221040009E57DF80777E17CF80622365623364980 +:20CA8B00F8072A5F561A4F131A47B128542B2A5F5621020019E57DF80377E17CF802322AD6 +:20CAAB005F2A571A22131A222A5F56F8032A666FE5CD7E0FF8012A5F561A4F131A47F80536 +:20CACB002A666F09E57DF80777E17CF806222A5F5621040019E57DF80977E17CF80877180B +:20CAEB009FE809C9E8F7F8005D54F80F7ECDB649F807792270F8083AB6CA004CF80046218A +:20CB0B001AC87EE6F04F78E60FB177EA0040F8072A4F4659501AF80322131A22131A221377 +:20CB2B001A772160052A4F2A472A5F56F8037E91200F237E90200A237E932005237E9228C2 +:20CB4B0004AFC3004CF8072A5F5621040019E57DF80777E17CF806223656233649F8072A40 +:20CB6B005F561AF80122131A773AB62856F8072A5F5621020019E57DF80577E17CF8043233 +:20CB8B002A5F2A571A4F131A5E23466967E54BF8032A5F56CD7E0FF8032A5F2A571A4F136E +:20CBAB001A472A666F09E57DF80777E17CF806222A5F5621040019E57DF80977E17CF80858 +:20CBCB0077189AFA37C63C280EFA3CC6EA3AC6FA3DC6EA3BC6181CAFE021AFE01CAFE017B5 +:20CBEB00AFE0123EC0E0233EC0E0193EC0E0143EFFE0253E01E809C93BF8005D54F8077E03 +:20CC0B00CDB649597857B1281AF80046211AC87EE6F04F78E60FB177EA0040AF1213121386 +:20CC2B0012131233C9E8F7F8005D54F80F7ECDB64978B1CACE4CF80056211AC87EE6F05FCC +:20CC4B007AE60FB377EA004069605D541AF80122131A22131A22131A77216005545DF805E1 +:20CC6B001A22131A22131A22131A77F8017EF805962018F8027EF806962010F8037EF80735 +:20CC8B00962008F8047EF808962803AF1835F8133AB6282D7EF80777F8137EF80832CB26A4 +:20CCAB0023CB1603030303F8102A5E87CB13814F7B8847F8142A5F56F8072A666FE5CD7E31 +:20CCCB000F3E01E809C9E8F5F8132AD6ED7EDEFF563EFFCB7F2807CB7A2008BF1805CB7A77 +:20CCEB00280137300501EDFF182AF8132A4F465816003E13B93E0098CB7B2807CB7A20086B +:20CD0B00BF1805CB7A28013730050113001805F8132A4F46F8112AD6EF7EDEFF563EFFCBA6 +:20CD2B007F2807CB7A2008BF1805CB7A2801373009F8003EEF2236FF1837F8117EF8097749 +:20CD4B00F8127EF80A323E1196233E009E3E0057CB7E2807CB7A2008BF1805CB7A2801372D +:20CD6B0030051E11AF1805F8112A5F7EF800732377F8027922702A07E60177F8007EF8055C +:20CD8B0077F8017EF8067769602929290929E57DF80977E17CF80877F8005EAF93F80977F1 +:20CDAB00F804CB46203723AF96233E009E3E0057CB7E2807CB7A2008BF1805CB7A280137A2 +:20CDCB00381B016A4EF8072A666F094D44F8096E2600094D440A4F3E4091C3674EF8067E19 +:20CDEB0007E601F80A77F804CB46201BF80ACB462015016A4EF8072A666F094D44E1E50911 +:20CE0B004D440AC6401855AF914F9F9047696029292909294D44F802AF96233E009E3E0071 +:20CE2B0057CB7E2807CB7A2008BF1805CB7A2801373818F80ACB462012216A4E094D44E141 +:20CE4B00E5094D440A4F3EC0911811216A4E094D44F8096E2600094D440AC6C0E80BC94009 +:20CE6B00404040404040404040404040404040404000202D333638393A3B3B3C3C3D3D3D61 +:20CE8B003D3D3E001320282D30333536373839393A3A3B3B3B000D1820262A2D30313334E9 +:20CEAB0035363737383839000A131A2025282B2D2F3032333435353637000810161B20248D +:20CECB0027292B2D2F30313233343400070D13181C202326282A2C2D2E3030313200060BD1 +:20CEEB001015191D20232527292A2C2D2E2F3000050A0F13171A1D20222526282A2B2C2D22 +:20CF0B002E0005090D1115181B1E2022242627292A2B2C0004080C101316191B1E202224E0 +:20CF2B00252728292A0004070B0E1114171A1C1E202223252627290003070A0D10131618F9 +:20CF4B001A1C1E202223252627000306090C0F121416191B1D1E2022232425000306090BF8 +:20CF6B000E10131517191B1D1E20212324000305080B0D10121416181A1B1D1F20212300F1 +:20CF8B000305080A0C0F11131517191A1C1D1F202100020507090C0E1012141617191B1C51 +:20CFAB001D1F2000020507090B0D0F1113151618191B1C1E1F00020406080A0C0E1012146A +:07CFCB001517181A1B1D1EAB +:020000040000FA +:201B4E00E8FAF8027B227A22010040AF227778B12845F8047EB1F80077F8057EB0F801770E +:201B6E00F805CB3E2BCB1EF8025D54F8001A1396231A9E3818F8022A5F56E1E57B955F7A24 +:201B8E009CF803327B22237EB1227EB077CB38CB19CB38CB1918B7F8047EE806C9000306E1 +:201BAE00090C101316191C1F2225282B2E313336393C3F414447494C4E515355585A5C5E4B +:201BCE0060626466686A6B6D6F70717374757678797A7A7B7C7D7D7E7E7E7F7F7F7F7F7F55 +:201BEE007F7E7E7E7D7D7C7B7A7A79787675747371706F6D6B6A68666462605E5C5A5855EF +:201C0E0053514E4C494744413F3C393633312E2B2825221F1C191613100C09060300FDFAAB +:201C2E00F7F4F0EDEAE7E4E1DEDBD8D5D2CFCDCAC7C4C1BFBCB9B7B4B2AFADABA8A6A4A262 +:201C4E00A09E9C9A9896959391908F8D8C8B8A888786868584838382828281818181818118 +:201C6E008182828283838485868687888A8B8C8D8F9091939596989A9C9EA0A2A4A6A8AB3E +:201C8E00ADAFB2B4B7B9BCBFC1C4C7CACDCFD2D5D8DBDEE1E4E7EAEDF0F4F7FAFD00010148 +:091CAE000000FFFF00804000C0AF +:201CB700B7C02121C6347EE603772122C69620082122C6347EE603773E1D2121C6864F3E24 +:201CD700C6CE00477B02C9E8FDFA21C62122C6962874F32122C6347EE60377C61D4F3EC687 +:201CF700CE00470AF80077FB7EE6034F060069602929097DC6234F7CCEC6F8017123322AB6 +:201D1700666F2323232A4F4678B1283AF8012A5F561A6F131A67B528032930ADF8002ACB5C +:201D370037E60F5F16002A666F23237ED52601E533F8045E2356D5C5F5331E0421EB61CD23 +:201D5700DE3DE8081883E803C9FAEBC73C2839FA40C62138C6B64FFA39C691280821BAD937 +:201D7700712139C671CDD426B7201DFA40C6EABAD9EA39C621B9D936642138C63600214125 +:201D9700C6360021EBC736FFFA3FC6B7C0FA37C63CC8213EC6347EE603C0F0904F2137C64A +:201DB7007EE0907EEA0020213BC63AB6282FAFE021AFE01CAFE017AFE0123EC0E0233EC08C +:201DD700E0193EC0E0143EFFE0252A5F56FA37C6C5CD8D05C1AF213AC622771805C5CDFCF0 +:0A1DF70009C179E09021002071C9B4 +:020000040002F8 +:2001FE002137C636FF21EBC736FFAF21ECC722773E80E0263EFFE0253E77E024AFE021AF4C +:20021E00E01CAFE017AFE0123EC0E0233EC0E0193EC0E0143EFFE025213EC63600213FC6D0 +:20023E0036002138C636002140C636002139C6360021BAD936002141C63600C9F8067EB71E +:20025E0028180E0079D6043022060069602929091123C619AF22770C18EA111400D51100EF +:20027E0000D51123C6D5CD4F3DE806F32122C636002121C63600FBC9FA21C62122C6962899 +:20029E001DF32122C6347EE60377C61D4F3EC6CE00470A4FFB79E6044779E6F0B0C9AFC98C +:2002BE00EA3FC6B7C8AFE021AFE01CAFE017AFE0123EC0E0233EC0E0193EC0E0143EFFE009 +:0202DE0025C930 +:2002E000FA18C8B72823114000D5110000D511A0DFD5CD4F3DE806114000D5110000D5114D +:2003000045C6D5CD4F3DE806C92144C6361B2142C63E1B223687C9F8064E3E80E20C064009 +:0C032000F041CB4F20FAAFE20520F5C9F8 +:020000040000FA +:201E01002197C62A666F2A5F2AE045B7280416001804FAD4C757F041CB4F20FA7BEA43FF5F +:1D1E21007AE042F045B7280C11040019547D2197C62272C92197C63E852236C6C9E6 +:020000040002F8 +:20407200111200D50180401185C6CD7E0FC9000F02000200001F01020200000000041000AB +:020000040000FA +:201E3E00E8F7FAC5C7EACAC7FAC6C7EACBC7AF21CCC72277F090EAC9C721CBC73AB6CAB48A +:201E5E00227EF80577FACBC7F806322A5F5621130019E57DF80977E17CF808322A5F561A06 +:201E7E00B7205A2B2B2B2A5F56212300192A4F46F80779227021CDC73AB6280C2A5F5621B4 +:201E9E00230019792270180621C5C779227021CAC72A4F46212300094D4421C7C72A0203DA +:201EBE007E02FACAC7EAC7C7FACBC7EAC8C7F8077EEACAC7F8087EEACBC7C3571E4F0DF8FE +:201EDE00072A666F7121CAC72A4F46211D00097E2112DAA6203821090009347E21CAC72A6B +:201EFE005F56210900194D440AF80777210B00197EF80877F8072A9620146B627EE601203C +:201F1E0008210A00197E021805F8077E3D0221CAC72A4F46696023E57DF80777E17CF8066E +:201F3E00322A5F2A571A22131A77210500092A4F46F8072A666F094D44F8052A666F79224A +:201F5E007021CAC72A4F4621030009E57DF80777E17CF806322A5F2A571A22131A772107DE +:201F7E0000092A4F46F8072A5F567B915F7A98474BF8052A666F7922702112DA4EFACAC7A1 +:201F9E00F80077FACBC7F80177CB41C2F520D1D56B6223E57DF80777E17CF80677D1D521CE +:201FBE000C0019E57DF80977E17CF80877AFF533110000D5F8085E235623D55E2356D51EDA +:201FDE000321614ACDDE3DE807F806792270FACAC7F80077FACBC7F80177F8073AB6CAF590 +:201FFE00202A5F56212F00194D440A4FD1D5212200195D541AA1CAF520F8062A5F56212501 +:20201E0000194D440AF808777EB7285F2B2B2A5F56212D00194D442A666F29304ED1D52121 +:20203E002100195D541AF80022AF22792270F8062A5F5621260019E57DF80677E17CF80519 +:20205E00322A5F2A571A22131A77D1D5D53E01F533F8052A5F56D5F80B2A5F2A57D57EF55E +:20207E00331E0421EB61CDDE3DE808FACAC7F80077FACBC7F801322A4E6F617E0FE601201B +:20209E0056D1D5212300192A4F46F80779227021CDC73AB6280C2A5F5621230019792270E0 +:2020BE00180621C5C779227021CAC72A4F46212300094D4421C7C72A02037E02FACAC7EA0A +:2020DE00C7C7FACBC7EAC8C7F8077EEACAC7F8087EEACBC7C3571ED1D56B6223E57DF8092C +:2020FE0077E17CF808322A5F3A571A22131A77CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E55 +:20211E0023CB2E2BCB1E2A7721D2C74EF8087E91C608F80277D1D521030019E57DF80977BD +:20213E00E17CF808322A5F3A571A22131A77CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E2368 +:20215E00CB2E2BCB1E2A7721D4C74EF8087E91C608F803323EA0963807233E9096D21B2256 +:20217E00D1D521230019E57DF80977E17CF808322A5F561AF80122131A322A23322A23771F +:20219E0021CDC73AB628277EF80577FACDC7F806322A5F5621230019E57DF80977E17CF812 +:2021BE0008322A5F56F8012A12137E12180CF8017EEAC5C7F8027EEAC6C7FACAC7F8057711 +:2021DE00FACBC7F806322A5F5621230019E57DF80977E17CF808322A5F5621C7C72A1213A3 +:2021FE007E12FACAC7EAC7C7FACBC7EAC8C7F8037EEACAC7F8047EEACBC7C3571ED1D52140 +:20221E001000194D440AE0900AEA0020D1D5211100192A4F46FA07C5F80477D1D521140094 +:20223E00195D541AEA0FDA030303F807792278322A5F561AF80522131A77D1D521090019D7 +:20225E00E57DF80977E17CF808322A5F561A6F2600294D44F8052A666F092A4F46210DDAE3 +:20227E007922702110DA3600F8033A472A235F507ECD410F2107C5867721CAC72A4F462165 +:20229E00CCC7792270212300095D541A21CAC722131A77C3571EFAC9C7E090EA0020E809C5 +:2022BE00C9E8FDFAC5C7EACAC7FAC6C7EACBC7AF21CCC72277F090EAC9C721CBC73AB6CAEB +:2022DE0009242A4F466960232A666FCB2CCB1DCB2CCB1DCB2CCB1DCB2CCB1D7DC60821D24F +:2022FE00C75E93F8007769602323232A666FCB2CCB1DCB2CCB1DCB2CCB1DCB2CCB1D7DC6A9 +:20231E000821D4C75E93F801323EA0963806233E90963060212300095D541AF80122131A96 +:20233E0077F8012A4F4621CDC73AB628122A5F56212300195D54F8012A12137E12180CF890 +:20235E00017EEAC5C7F8027EEAC6C721CAC72A5F56212300195D5421C7C72A12137E12FA54 +:20237E00CAC7EAC7C7FACBC7EAC8C721CAC7792270C3D822211000095D541AE0901AEA003E +:20239E0020211100092A6E5F55FA07C5F80277211400097EEA0FDA6B622323232A666F7904 +:2023BE00C6094F3001040A4F0600CB21CB10092A4F46210DDA7922702110DA3600F8013A37 +:2023DE00472A235F507ECD410F2107C5867721CAC72A4F4621CCC7792270212300095D54E9 +:1623FE001A21CAC722131A77C3D822FAC9C7E090EA0020E803C9C2 +:20D58900AF21C7C72277AF21C5C722770199C679D65278DEC7D0212300095D5421C7C72AD1 +:20D5A90012133A12792270212500094D4418E0E8EEFAC7C7F80277FAC8C7F803773AB6CA8A +:20D5C900AF59F8184E0600696029290929092909E57DF81277E17CF811771152C73A6E6755 +:20D5E900194D44F8022A5F56210C0019E57DF81177E17CF810322A5F56211700E5CD7E0F8A +:20D60900F81136023EE0F81B9638237ED6A03806F811360318183E60F81B963006F811363E +:20D6290000180BF81B7ED6203804F8113601F8022A4F46F81C7EE6016F0AE6FEB502F8027B +:20D649002A4F46F81C7E0FE60107E6026F0AE6FDB502F8022A5F56210900195D54F80F7E26 +:20D66900F80477F8107EF80577D5F8112A5F5621090019D14D44F8117E87814F3E008847E7 +:20D689000A12F8022A5F56210A00195D540A12F8022A5F56210B00195D54030A3C12F80F4A +:20D6A9002A5F56211300192A4F7EF810712377F8022A4F4603F8197EF80E77F81A7EF80FCC +:20D6C900322A5F561AF80C22131A3259502A12137E12F806792278220303792270F80E2A95 +:20D6E900666F23232A4F46F8082A666F79227011AB1BF81B6E2600194D440AF80A77F81B7F +:20D709007EC6405F21AB1B1600197EF80B77F80A4E79079F4769602909290929092909299F +:20D7290009290929094D44CB28CB19CB28CB19CB28CB19CB28CB19CB28CB19CB28CB19CB0D +:20D7490028CB19F80B5E7B079F576B622919291929192919291929192919E57DF81077E17E +:20D769007CF80F323A2B77F80F3A2B77CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E23CB2EA3 +:20D789002BCB1E23CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1EF8103EFF96233E009E306171 +:20D7A900F8062A5F561A6F131A67095D7CF80E732377F8062A5F56F80E2A12137E12F808AF +:20D7C9002A5F561AF80E22131A327EF80077F80F7EF80177D1D5F80C2A666F7B955F7A9CB0 +:20D7E900F80F3273F8082A5F56F80E2A12132A122A5F5621FF007B955F7A9CF811327318BA +:20D8090094AFF810B6CAE458F8062A5F561AF80E22131A222A775EF80A7ECDDC0DF80C79D8 +:20D829002270F80DCB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB99 +:20D849001E23CB2E2BCB1E23CB2E2BCB1E23237EF80077F80F7EF80177D1D5F80C2A666F70 +:20D86900194D44F8062A666F792270F8082A5F561AF80F22131A225EF80B7ECDDC0DF80DE2 +:20D88900792270F80D7EF80A77F80E7EF80B77CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E0D +:20D8A90023CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1EF80F7EF80C77F81097 +:20D8C9007EF80D322A5F56F80A2A666F7B955F7A9C4B47F8082A666F792270F8042A5F56AE +:20D8E900211200194D440AF81077F81B7EF81177F8022A5F56210500194D4411AB1BF8111F +:20D909006E2600195D541A57C5F8125E7ACDDC0D5950C1CB2ACB1BCB2ACB1BCB2ACB1BCB0C +:20D929002ACB1BCB2ACB1BCB2ACB1BCB2ACB1B69607B22720303F8117EC6405F21AB1B1676 +:20D94900001956C5F8125E7ACDDC0D5950C1CB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1BCB2A27 +:20D96900CB1BCB2ACB1BCB2ACB1B7B02037A0221C8C73AB628112A4F46212300095D541A56 +:20D9890021C7C722131A77F8022A5F56212300194D4421C5C72A02037E02F8027EEAC5C7F8 +:09D9A900F8037EEAC6C7E812C9C2 +:16022E00F040CB772808180AF040CB5F2004110098C911009CC990 +:020000040002F8 +:20032C00F8093AB7C8573A5F3A6E67C515281C444D3E20856F8C9567E5D5F041E60220FA82 +:1D034C002A02031D20F4D1E11520E4E5F80E56E1F041E60220FA7A221D20F5C1C9BC +:020000040000FA +:20241400F0904F21E1C77ED60730034618020607FA18C8B72832FA26C5E090EA00203E018C +:20243400E04FC5FA2CC5F5332127C52A5F56D53E01F533C533FAE0C767FADFC76FE5CD0098 +:2024540026E807C13E00E04FFA23C5E090EA0020C5FA2CC5F5332124C52A5F56D53E01F5FF +:2024740033C533FAE0C767FADFC76FE5CD0026E807C121DFC77E807721E1C77E907779E09B +:202494009021002071C947F0904FFA18C8B7282F3E01E04FFA26C5E090EA0020C5D5FA2C92 +:2024B400C5F5332127C56EFA28C567E53E01F5331617D5C533CD0026E807D1C1AFE04FFAC0 +:2024D40023C5E090EA00203E17212CC596300416171804212CC556C5FA2CC5F5332124C5C2 +:2024F4006EFA25C567E53E01F533D5C533CD0026E807C179E09021002071C94753F0904F86 +:20251400FA18C8B7282FFA26C5E090EA00203E01E04FC5D5FA2CC5F5332127C56EFA28C5E3 +:2025340067E5F809662E01E558D5CD0026E807D1C13E00E04FFA23C5E090EA0020C5FA2C6B +:20255400C5F5332124C56EFA25C567E5F807662E01E558D5CD0026E807C179E0902100205F +:2025740071E133E9F0904F21DEC77ED60730034618020607FA23C5E090EA0020FA18C8B75C +:20259400282FFA26C5E090EA00203E01E04FC5FA2CC5F5332127C52A5F56D50E01C5FADDBF +:2025B400C767FADCC76FE5CD0026E807C13E00E04FFA23C5E090EA0020C5FA2CC5F5332183 +:2025D40024C52A5F56D50E01C5FADDC767FADCC76FE5CD0026E807C121DDC77E807721DEA4 +:0C25F400C77E907779E09021002071C92B +:020000040001F9 +:2083CF00AF21D2C72277AF21D4C72277AF21D6C72277AF21D8C7227721DAC7360021DBC7BF +:2083EF0036001E0621F943C3DE3D21E1C7360021DEC7360021CEC73EFF22367F21D0C73E1E +:20840F00FF22367F2112DA3600C93B3B2114C52A4F46CB28CB19CB28CB19CB28CB19CB28C4 +:20842F00CB1979C6B04F78CEFF472116C52A5F56CB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1B38 +:20844F007BC6B85F7ACEFF57CB78280501000018183333C5D511D6C7F8021A1396231A9E30 +:20846F00D1300621D6C72A4F46CB7A280511000018183333D5D511D8C7F8021A1396231AFC +:20848F009ED1300621D8C72A5F56FACEC7EAE6C7FACFC721E7C777CB2E2BCB1E23CB2E2B39 +:2084AF00CB1E23CB2E2BCB1EFAD0C7EAE2C7FAD1C721E3C777CB2E2BCB1E23CB2E2BCB1E5F +:2084CF0023CB2E2BCB1E21E8C7792270CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E21E4C749 +:2084EF007B2272CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1E21CEC779227021D0C77B227269 +:20850F00FADAC7F80022079F77E1E5097DEAD2C77CEAD3C7FADBC74F079F47798321D4C71B +:20852F0022788A771185C6CD5045B72011118BC6CD5045B720081191C63333C350453333BC +:20854F00C9E8F1F80D7B227A322A4F46030AF80A77F80D2A5F5621050019E57DF80D77E1F5 +:20856F007CF80C222A5F56210300193333E5F80A7EB7CABF46F80D2A4F4603030A4FD67F65 +:20858F002007AFF80522771830CB792817AF914721D2C72A4E04180387CB110520FAF8053E +:2085AF002271181521D2C72A475E0C1804CB2BCB180D20F9F805782273F8054EF80B2A6654 +:2085CF006F71F8052A4F2A47CB38CB19CB38CB19CB38CB197121E8C72A4F460BF8072A7765 +:2085EF00F80D2A5F5621040019E57DF80B77E17CF80A7721E6C77E91201E237E902019F81B +:20860F00082AC6154F2A5F561A47D1D51A6FC55D3379CD0F25C3BB4621E8C72A5F566B6271 +:20862F0023E57DF80D77E17CF80C77FAE6C7F80B96204EFAE7C7F80C962046F8077EF80B7C +:20864F0022AF322A5F562101007B955F7A9CF807327B22CB7E2807AFF80B2277180CF808CD +:20866F007E3DF80C773A22079F77F80B3A2B4F2A5F561A47D1D51A6FC55D3379CD0F25182F +:20868F002BFAE6C721E8C7962009FAE7C721E9C7962819F8092A5F561A47D1D51AC533F52C +:2086AF0033010000F8072A5F56CDF949AFC3E64921D2C74EF80B2A666F7121E8C72A5F56BF +:2086CF002101007B955F7A9CF80B3273FAE8C7F80C7721E4C72A5F562101007B955F7A9CC6 +:2086EF00F8033273FAE4C73DF804322A2307E601322A2322079F77FAE6C7F80A96C2B247C8 +:20870F00FAE7C7F80B96C2B247F80C7EC615F80822D1D51A772A23223600F80B5D54F80245 +:20872F001A1396231A9E1A57CB7E2807CB7A2008BF1805CB7A2801373E0017F80A77B72808 +:20874F000CF8027EF80B77F8037EF80C77F80CCB7E28062BAF2277181BF80A7EB72808F898 +:20876F00047EF80C771806F8097EF80C77F80C3A22079F77F80B4EF8057EB7280511000097 +:20878F001804F8062A5F43C559F80A7ECDB14AC1C533F8097EF5331E03211244CDDE3DE1BD +:2087AF00C3B54821E8C72A4F460321E6C77E91C27B48237E90C27B48F80BCB7E28040E00BA +:2087CF001806F80C7E3D4F07F8087922D1D51A772A23223600F80B5D54F8021A1396231A32 +:2087EF009E1A57CB7E2807CB7A2008BF1805CB7A2801373E0017F80A77B7280CF8027EF8CC +:20880F000B77F8037EF80C77F80CCB7E28062BAF2277181BF80A7EB72808F8047EF80C7756 +:20882F001806F8097EF80C77F80C3A22079F77F80B2A77F8057EB72807AFF80A2277180C21 +:20884F00F8067EF80A77F8077EF80B77F80A2A225EF8087ECDB14AF80B7EF533F8097EF50E +:20886F00331E03211244CDDE3DE1183AFAE6C721E8C7962009FAE7C721E9C7962828213716 +:20888F00C57E3D2005D1D51A18023EFF2615E533F53321D4C72A4F4621D2C72A5F56CDF9B8 +:2088AF00493E01C3E64921E4C72A5F562101007B955F7A9CF808327321E8C72A4F3A470B63 +:2088CF005EFAE4C7F809777B3DF80C322B7807E60122233A22079F77FAE2C7F80796203742 +:2088EF00FAE3C7F80896202FF80A7EB7280423AF2277F80B2A77F8092A23C613772A5F7EC9 +:20890F00CD8F4AF80B2AF5337EF5331E03211B43CDDE3DE1C3CC4921E4C72A4F460321E2D5 +:20892F00C77E91205F237E90205AF80A7EB7280423AF2277F80B2A32D1D51A77F80522366F +:20894F0000F8075D54F8051A1396231A9E1A57CB7E2807CB7A2008BF1805CB7A28013738AE +:20896F0006F8092A233D77F80B2A47C5587ECD8F4AC1C533F80D7EF5331E03211B43CDDE7C +:20898F003DE11839FAE2C721E4C7962009FAE3C721E5C79628272137C57E3D2005D1D51A18 +:2089AF0018023EFF2615E533F53321D4C72A4F4621D2C72A5F56CDF9493E01181AFA12DA5C +:2089CF000F3812FADEC7B72803CD7825FAE1C7B72803CD14243E01E80FC91E0621F943CD6E +:2089EF00DE3D1E06211944C3DE3DE8FCF80279227021E1C7360021DEC736003333D5F801B5 +:208A0F00CB2E2BCB1E23CB2E2BCB1E23CB2E2BCB1EC1C50BCB7828040E001806F8007E3DFB +:208A2F004F07F80179222A4F46CB28CB19CB28CB19CB28CB19F8067E5F079F576B6209CB80 +:208A4F007C28040E00180679F806864F07410E00F8077E912825FA2DC590281FC558F8035B +:208A6F007ECD9A24C1C5C533F8047EF5331E03211B43CDDE3DE1C10C0418D5E804E1F1E9F0 +:208A8F0057FAE1C7B72807D5CD1424D118F37B212DC596D021DFC77221E0C77321E1C736CB +:208AAF0017C9474BFADEC7B72807C5CD7825C118F321DCC77021DDC771FA2DC506005916EA +:208ACF0000936F789A475816003E15BD3E0098CB7B2807CB7A2008BF1805CB7A2801373045 +:0D8AEF00043E151804FA2DC591EADEC7C932 +:020000040000FA +:013E1F0000A2 +:20260000F8022A474EF8087EF80496EAEAC78616005F79210000CB3F300119CB23CB12B7EB +:2026200020F478856F8C9567545DF8062A666F19444DF8022AE61F577EE61F5FF8053A663B +:202640006F1836F8022A4F2A47F090F52AE090EA00202A232396EAEAC72B2B2AE61F572A19 +:20266000E61F5F2A6E67CD7026F1E090EA0020C9E5F040CB772809180CE5F040CB5F200550 +:20268000210098180321009CC5CB33CB037BE60384473EE0A3824FE1D1D5C5FA24DA865F2E +:2026A000F041E60220FA7B022379E6E05F793CE61FB34F1520E5FAEAC7856F8C9567C1D11A +:1426C0001DC8D578E6FC5F3E20814F8891E603B347C518C7C5 +:2026D40021ECC72A5FB6C85621EEC7AFB6280235C9626BF0905FFAEBC73CC83DE090EA005F +:2026F40020160F7ECB37A2EAEEC72AA257CA9C272A47E607FE053862FE072858F0254FE646 +:20271400BBE025AFEA1AFF2AE0302AE0312AE0322AE0332AE0342AE0352AE0362AE0372A1D +:20273400E0382AE0392AE03A2AE03B2AE03C2AE03D2AE03E2AE03F78FE0620133E80E01A1C +:202754003EFEE01B3E20E01CAFE01D3EC7E01E79E025183021000055182F4F878781C610EE +:202774004FCB2030022AE20CCB2030022AE20CCB2030022AE20CCB2030022AE20CCB203007 +:19279400022AE20C15C20427147DEAECC77CEAEDC77BE090EA00207AC990 +:020000040001F9 +:20CFD200E8EAF8004D445950211400E56CE5D5CD4F3DE8063EB902F8013601C5CDA70EE163 +:20CFF2003EE4E0493EE4E0483EE4E047AFE042AFE043F040F81477F040E6FDE040F040E6A2 +:20D01200DFE040F040F601E040F040F680E0401100007AD60E282721000039AFFE142806EB +:20D0320073231C3C18F6D521020039E5211401E5D533AFF533CDF83DE806D11418D4595068 +:20D05200211400E56CE5D5CD4F3DE806F81EAF96233E209E30051100001819F81E2A5F5651 +:20D07200CB3ACB1BCB3ACB1BCB3ACB1BCB3ACB1BCB3ACB1BF815737EB728053E809630663B +:20D09200C5F8227EF533F81F2A5F56D5AF0FF5CD5D15E805C13E9902F8013600C5CDA70E3F +:20D0B200E1F8157EB728047EC68077F81C2A5F5621001019E57DF81E77E17CF81D77F815B2 +:20D0D2007E87C5F82266E533F81F5E2356D5672E00E5CD5D15E805C13E9902F8013601C5E4 +:20D0F200CDA70EE11826F8157E87C5F82266E533F81F5E2356D5672E00E5CD5D15E805C1E4 +:20D112003E9902F8013600C5CDA70EE1F8232A5F2A57CB3ACB1BCB3ACB1BCB3ACB1BCB3AE2 +:20D13200CB1B7BC566E533F8245E2356D5672E00E5CD5D15E805C1F8282A5F2A57CB3ACB10 +:20D152001BCB3ACB1BCB3ACB1BCB3ACB1B7BC566E533F8295E2356D5672E80E5CD5D15E835 +:20D1720005C13EA102F8013600C5CDA70EE1F8147EE0405950211000E56CE5D5CD4F3DE8CF +:20D1920006C5AF3CF5CDDB3BE804AF672E12E53E14F533AF0FF5CDFC3CE8053EB902F801B7 +:0AD1B2003600C5CDA70EE1E816C94E +:020000040000FA +:2027AD002110C87EB72829352111C82A4F46F8027E022111C834200223342110C87EB7C28E +:2027CD001D022111C836F02336C72113C83601C9F8027EEA10C82111C836F02336C7C31D37 +:2027ED0002FA18C6D604201F21EFC736002114C836002110C836002111C836F02336C72109 +:20280D0018C636001E00C9FA19C6B72838FA14C8B7282D2119C63600FA14C83D2005211A35 +:20282D00C636022115C86EFA16C867462115C83420022334C533CD0A02332114C83518059E +:08284D002117C836011E01C964 +:020000040002F8 +:2040920021EFC736002110C8360001F0C72111C87922702113C836002114C836002115C8B2 +:0940B2007922702117C83600C9FB +:020000040000FA +:200244002181051803218705FA36C55F8783856F8C9567F090F52AE090EA00202A666FE752 +:07026400F1E090EA0020C95F +:020000040001F9 +:20D1BC002113C936002114C936002115C936FFC9011BC8F8065EAF6B67292929095D5421D8 +:20D1DC000700197E0FD0210400194D44210500192A666F0A47110100D53E01F533110000F9 +:20D1FC00D5E5C5331E0421EB61CDDE3DE808C9F8087EB720142B2B7E2113C996200BF80737 +:20D21C007E2114C9962002AFC9F8073A577E5FD51E0721BE54CDDE3DE147F8067EEA13C95A +:20D23C00F8077EEA14C9783C280EC5331E0721CC51CDDE3D333E01C9AFC9E8F6F8127EF850 +:20D25C000877F8137EF809322A5F561A4F131A475950CB2ACB1BCB2ACB1BCB2ACB1BCB2A8C +:20D27C00CB1BF8102A4F460A6F079F6719CB2CCB1DCB2CCB1DCB2CCB1DE57DF80277E1698C +:20D29C0060237E6F079F67195D54CB2ACB1BCB2ACB1BCB2ACB1BF80173F8082A666F2323E9 +:20D2BC002A665F54CB2ACB1BCB2ACB1BCB2ACB1BCB2ACB1B696023237E6F079F6719CB2C8A +:20D2DC00CB1DCB2CCB1DCB2CCB1DE57DF80477E10303030A6F079F67194D44CB28CB19CBFB +:20D2FC0028CB19CB28CB19F803792236000E00FA25DA9128676926002929295D54211BC87D +:20D31C0019E57DF80777E17CF806322A5F2A571A47322B2A5F2A2357131A5F73F8052A66F2 +:20D33C006F23237E803DF80977F8052A666F2323237E834705F8097EF800963819237EF8C0 +:20D35C000796381278F80296380C237EF808963805F8047E18080CF8047118933EFFE80A1D +:20D37C00C9E8FCF80C5E2356D5F80C5E2356D51E07215652CDDE3DE804F800770E00FA1536 +:20D39C00C9F800963E012801AFF80177F80E7EB7200AF8017EB72804AFC3BB54F8007E3CA1 +:20D3BC003E012801AF5FF8002A2347AFCB208FCB208FCB208F702377FA15C93CCA71547B0A +:20D3DC00B72007F801CB46C27154CB43203D111BC8F8022A666F195D54210700197E0F30A2 +:20D3FC002A210400194D44210500192A6E5F550A010100C52601E533010000C5D5F5331E9C +:20D41C000421EB61CDDE3DE8080E01111BC82115C96EAF67292929195D5421070019CB4E82 +:20D43C00282A210400194D44210500192A666F0A47110200D53E01F533110000D5E5C5330E +:20D45C001E0421EB61CDDE3DE8080E01F8007EEA15C979184AF8007EEA15C9CB43203F1165 +:20D47C001BC8F8022A666F195D54210700197E0F302C210400194D44210500192A666F0AA9 +:20D49C0047110100D53E01F533110000D5E5C5331E0421EB61CDDE3DE8083E011801AFE8C2 +:20D4BC0004C9E8F8F80036000E00FA25DA91CA4A5569AF672929297DC61B5F7CCEC8571A3A +:20D4DC00476B62237EF801776B6223237E803DF802321313131A8623233D77F80E5E160044 +:20D4FC0013F8047B227A2278223600F8045D54F8061A1396231A9E1A57CB7E2807CB7A2061 +:20D51C0008BF1805CB7A280137381CF8027EF80E963814237EF80196380D23237EF80F96DC +:13D53C003805F8007E18090CF80071C3C6543EFFE808C9C0 +:020000040000FA +:013E200000A1 +:2040000021E0DF11F0DF1A22131A22131A22131A22131A22131A22131A22131A22131A222C +:20402000131A22131A22131A22131A22131A22131A22131A2213FA23C92222222222222270 +:20404000222222222222222222C9F8022AB711FFFFC85F7ACB3F1D20FB5E1C1804371FCBE1 +:204060001A1D20F95FC9F8022AB711FFFFC85F7ACB271D20FB5E1C18043717CB121D20F91C +:024080005FC916 +:20026B0000000103070F1F3FF806F090F53AE090EA00203A573A5F3A6E673E08F51A4FFAFD +:20028B0030CAA94F131A47FA30CAA84713FA2FCACB272834381ACB3FCB3F3004CB39CB3815 +:2002AB00B72825CB39CB38CB39CB383D20F51818CB3FCB3F3004CB21CB20B7280BCB21CBDF +:2002CB0020CB21CB203D20F5FA2ECAA677FA2ECA2FA1B622FA2ECAA677FA2ECA2FA0B62279 +:2002EB00F13D2098F1E090EA0020C9F8053A4F3A5F3A6E6779B72824F041E60220FA732366 +:1D030B000D28191C4105280CF041E60220FA73230D0520F41CF041E60220FA73C977 +:202855000E00FA18C92119C99628363E6B211AC9864F3E02CE00470A2112DAA62021FA1A9A +:20287500C9B70E0228020E01FA18C92119C99630082118C97E817718062118C97E91770EA2 +:2028950001FA16C92117C99628363E6B211AC9864F3E02CE00470A2112DAA62021FA1AC9A2 +:2028B500B70E0228020E01FA16C92117C99630082116C97E817718062116C97E91770E0132 +:2028D50079B7C0FA1BC9B7C0FA21C9B72818FA16C606002F4F782FFA15C6A1E630280721E6 +:2028F50022C936011808FA12DA211CC9A6C01E01215745CDDE3D4FFA22C9B72006FA20C977 +:20291500B72006FA1BC9B728E579B7C8FA44CA3CC82143CA4E2145CA2A5F562144CA463EE1 +:20293500042141C696D821EBC736FF2141C63604FA38C66F0F3007AFE0123EC0E014CB4D26 +:202955002807AFE0173EC0E019CB552803AFE01CCB5D2807AFE0213EC0E0233EFFE0252135 +:1829750038C67121EBC736FF21EEC7360021ECC77B227221EBC770C9D8 +:204082002131CA3600213BCA3600016E050AEA3ACA216F052A4F46FA3ACAF533110800D59C +:2040A2001132CACD0916211DC93600211EC93600211FC936002121C936012123C93600AF17 +:2040C2002123CA2277212DCA36002129CA36CC212ACA3600212BCA36CC212CCA36002119E9 +:2040E200C936902118C936902117C936002116C93600211AC93601211BC936012120C93643 +:2041020001211CC93600CD2E02213CCA7B2272212100194D7C2127CA7123772125CA712348 +:2041220077CD2E02213ECA7B22722140CA36142141CA36082142CA36C92144CA36FF1E0143 +:20414200215341CDDE3D2147CA36802148CA3607C90608C533111E5CD53E09BFF5CD5D15FF +:20416200E8050606C533112A75D521CB01E5CD5D15E80501E0DF5950211000E56CE5D5CD57 +:204182004F3DE806C521C901E5CDDB3BE8045950211000E52EFFE5D5CD4F3DE806C521CAA2 +:2041A20001E5CDDB3BE804C9F8097EB7C8FA18C8B728233E01E04FFA48CAE6072147CA4EBE +:2041C200B1F533F80A3A573A5FD53A575ED5CDED3AE805AFE04FCD2E02F8074EAF6967298E +:2041E20029292929194D44F8066E2600094D445950C5F80A7EBFF5D5CDF602E804C1F80959 +:20420200357EC83E01F8099630255E1D7BB7281F212000094D447950C5D5F80C66E533261C +:20422200C3E5335FD5CDF602E804D1C11D18DD212000094D44F808662EC6E5C5CDF602E88C +:2042420004C9FA2DCAB72831FA2ACAEA2CCAFA29CAEA2BCA2129CA34201FFA18C8B72814A0 +:20426200212ACA347EE60177B73EC020023ECCEA29CA18052129CA36CC212DCA3600212394 +:20428200C94E0600112000D5C511E0DFD5CD4F3DE806C9F8067EEA29CAEA2BCAF8077EEAE0 +:2042A2002ACAEA2CCA212DCA36002123C94E0600112000D5C511E0DFD5CD4F3DE806C9E811 +:2042C200F84FFA32CA0F3019213ACA462134CA2A666F1133CA1AA1855F3E008C5778CDEFBC +:2042E20015F80279322B1138CA1A22131A227EF8062236003E04F806CB2623CB163D20F6DD +:204302002B2A5F56E1E519E57DF80577E17CF80477FA32CAF80777FA3ACAF80577E5232303 +:20432200CB4EE1CAC144E5F809CB56E12808FA23C9F807771804F8073600F8077EEA30CA8C +:204342001136CA1AF80622131A322A5F56F8026E2600195D54F8057ECDEF1541F8037EF87C +:2043620006322B7EF80777FA31CAB7205BFA2DCAEA2FCAC5FA2DCA47C5CD4A40E1C1212EDF +:20438200CA73C5D5FA3ACAF533F80B2A666FE521E0DFE5CD7302E805D1C1212DCA7E814F4B +:2043A2003E08B9D2334496F680EA2FCA212ECA72C5FA3ACAF533F8092A5F56D511F0DFD5E4 +:2043C200CD7302E805C118693E08212DCA965F799330047B9118047993CBFFEA2FCAC5FA37 +:2043E2002DCAF533C533CD6640E1C1212ECA73C5D5FA3ACAF533F80B2A666FE521E0DFE597 +:20440200CD7302E805D1C1FA2DCA804F3E089130203E1091EA2FCA212ECA72C5FA3ACAF5ED +:2044220033F8092A5F56D511F0DFD5CD7302E805C1212DCA7E8077FA2ACAE04F11E0DFD59E +:204442003E01F533FA29CAF533CDDB3BE804AFE04F3E07212DCA963062CD0040212DCA7E09 +:20446200C6F877FA2ACAEA2CCAFA29CAEA2BCA2129CA347E2020FA18C8B72815212ACA344E +:204482007EE601777EB73EC020023ECCEA29CA18052129CA36CCFA2DCAB7281AFA2ACAE017 +:2044A2004F11E0DFD53E01F533FA29CAF533CDDB3BE804AFE04F3E01C35445AFC35445FA3D +:2044C2002DCAB72833FA2ACAEA2CCAFA29CAEA2BCA2129CA347E2020FA18C8B72815212A18 +:2044E200CA347EE601777EB73EC020023ECCEA29CA18052129CA36CCFA2ACAE04FF8053A1D +:204502002BF5332A5F56D53E01F533FA29CAF533CD5D15E805AFE04FFA2ACAEA2CCAFA291B +:20452200CAEA2BCA2129CA347E2020FA18C8B72815212ACA347EE601777EB73EC020023E44 +:20454200CCEA29CA18052129CA36CC212DCA36003E01E808C9E8FD2124CA3AB6206C3E6B1E +:204562002120C9864F3E02CE00470AEA1CC9FA3BCAEA49CAFA23C9EA4ACAFA31CAEA4BCA58 +:20458200FA21C9EA4CCAFA20C9EA4DCA2123CA36242336C9FA1DC90F382DFA3CCAC621EAA2 +:2045A20027CAFA3DCACE00EA28CAFA31CA3D200B2127CA7EC611227ECE0077FA27CAEA25BA +:2045C200CAFA28CAEA26CACD44422123CA2A4F460AF802773E0D96DA64494E060021E645A6 +:2045E200090909E9C31046C36446C38846C3EA46C33D47C35C49C3C047C33B48C35848C3C6 +:20460200324AC37548C39948C36449C3B048AF2123CA2277211BC93601FA3BCA2149CA9672 +:204622002824213BCA4E060069602909016E05097EE5EA3ACAE1234E2346F533110800D518 +:204642001132CACD0916FA4ACAEA23C9FA4BCAEA31CAFA4CCAEA21C9FA4DCAEA20C9AFC34D +:204662003E4A2123CA34200223342123CA2A4F460A3DE607EA20C9C66B4F3E02CE00470A42 +:20468200EA1CC9C3324A2123CA34200223342123CA2A4F460A3D2149CA774E06006960294A +:2046A20009016E05094D44FA32CAF802770AEA3ACA6960234E2346F533110800D51132CABC +:2046C200CD0916212DCA7EB7CA324AE5F804CB4EE1CA324AFA32CACB4FC2324A2125CA34A6 +:2046E200C2324A2334C3324A2123CA34200223342123CA6EFA24CA674EAF470B79213CCA6F +:2047020086234F788E472123CA34200223342123CA6EFA24CA676EAF672B29292929290947 +:204722004D7C2127CA7123772125CA712377FA2DCAB7CA324ACD4442C3324A2123CA342094 +:204742000223342123CA6EFA24CA674E59AF5791CB7B2807CB7A2008BF1805CB7A28013792 +:2047620030010D2123CA34200223342123CA6EFA24CA676E5DAF5795CB7B2807CB7A20082B +:20478200BF1805CB7A28013730012D79079F477D079F672929292929094D44792125CA86D2 +:2047A200234F788E472127CA7922702125CA792270FA2DCAB7CA324ACD4442C3324A21223D +:2047C200C97EB728083600FA15C6EA16C62121C936002123CA3420022334FA20C9B72846D4 +:2047E200FA16C606002F4F782F47FA15C61E00A14F7BA0472123CA2A5F561A1E00A14F7B9A +:20480200A0B1280EFA4CCAEA21C9FA15C6EA16C618142123CA2A5F3A571B7B2272211CC90C +:204822003600AFC33E4A3E6B2120C9864F3E02CE00470AEA1CC9C3324A2123CA34200223CA +:20484200342123CA2A4F460A0F3003AF18023EFFEA23C9C3324A2123CA34200223342123EF +:20486200CA2A4F460A0F3003AF18023E01EA31CAC3324A2127CA2AC6204F7ECE00472125EB +:20488200CA7922702127CA792270FA2DCAB7CA324ACD4442C3324A2123CA342002233421C8 +:2048A20023CA2A4F460AE607EA48CAC3324A2125CA2AC6204F7ECE0047213ECA2A5F5621ED +:2048C20041CA6EAF672929292929197DE6E06F2B7D917C983060FA42CA67FA41CA6FE5FA12 +:2048E20040CAF533213ECA5E2356D51E08212C43CDDE3DE805FA18C8B7282D3E01E04FFAD6 +:2049020048CAE6072147CA4EB1F533FA41CA67FA40CA6FE5213ECA5E2356D51E08212C43EE +:20492200CDDE3DE805AFE04FFA27CAEA25CAFA28CAEA26CA18172127CA2AC6204F7ECE004C +:20494200472125CA7922702127CA792270FA2DCAB7CA324ACD4442C3324A2123CA342002F2 +:2049620023342123CA6EFA24CA677ECDC142B72864212CCA4E212BCA5E2125CA2A46F80031 +:2049820073232270FA18C8B728273E01E04F79B72809FA48CAE607CBDF1805FA48CAE60785 +:2049A2002147CA4EB14FF8015E2356CD1E0EAFE04FF8002A5E2356CD1E0EFA31CAB7200A06 +:2049C2002125CA34200F2334180B2125CA2A5F3A571B7B2272FA2DCAB72849212ACA4E21F7 +:2049E20029CA5E2125CA2A46F80073232270FA18C8B728273E01E04F79B72809FA48CAE623 +:204A020007CBDF1805FA48CAE6072147CA4EB14FF8015E2356CD1E0EAFE04FF8002A5E2303 +:204A220056CD1E0E2123CA34200223343E01180C2123CA34C2CC452334C3CC45E803C9E82B +:204A4200F4F8157EF80677E5CB56E12805F8177E18023E01F807774EAF470B69602909297D +:204A62004D44F8122A666F094D44F8147EF533110600D5210300395D54CD0916FA18C8B7D7 +:204A8200281D3E01E04FFA48CAE6072147CA4EB1F801462B4EF5335879CD270EAFE04FF8AE +:204AA200013A474E3ECBF5335879CD270EF8062A23E602223600CDC719CD55280EC0F0924E +:204AC2009120072127DA36DF18052127DA36C02107C53600CDDF161E06211944CDDE3DCD74 +:204AE200F710CDBF221E28FA07C5CDAA0DFA27DAE0922112DA34CDBD01FA16C60E002F47DC +:204B0200792F5FFA15C60E00A0F80A2279A377E52BCB56E12805F8047E185EE5F80CCB5E11 +:204B2200E12805F8057E1851E5F80CCB4EE12805F8027E1844E5F80CCB46E12805F8037E1C +:204B42001837E5F80CCB66E1281BF8077EF81696200DF8067EE6014FB72804AFC3154CF818 +:204B6200077EC3154CE5F80CCB6EE1CAB84AAFF808B6CAB84AAFC3154CB7CAB84AF80777BE +:204B8200FA18C8B7281D3E01E04FFA48CAE6072147CA4EB1F801462B4EF5335879CD270EF2 +:204BA200AFE04FF8013A4F463EC4F5335978CD270EF8074E060069602909294D44F8122A14 +:204BC200666F094D4479C6FA4F78CEFF47F8147EF533110600D5210300395D54CD0916FABE +:204BE20018C8B7281D3E01E04FFA48CAE6072147CA4EB1F801462B4EF5335879CD270EAFDD +:204C0200E04FF8013A4F463ECBF5335978CD270EC3B84AE80CC93BF8074E79E601F80077BE +:204C22000600F8007EB72814FA16C92117C9962009FA18C92119C99628020601CB49280881 +:204C4200FA1BC9B7200206012116C65E16002115C66E26007B2F5F7A2F577DA35F7CA2CB22 +:204C6200512806CB6320020601CB592806CB6B20020601CB612805B32002060178B7284ED1 +:204C8200C5CD5528C11EC0F0929320072127DA36DF18052127DA36C02107C53600C5CDDF28 +:204CA200161E06211944CDDE3DCDF710CDBF221E28FA07C5CDAA0DC1FA27DAE0922112DA05 +:104CC20034CDBD01C5CDC719C178B7C2224C33C995 +:053E4600214ECA360008 +:020000040001F9 +:20000000E8E5F8217EF80277F8227EF803322A5F56211000193601F8232A4F46CB21CB1045 +:20002000CB7E281EF8022A5F5621080019E57DF81B77E17CF81A322A5F561A6F131A670984 +:2000400018042194CB097D4CF81922793201B1C02A5F561A5F16006B6229192929192929A8 +:20006000094D7CF8047123322B2B2A5F5621120019E57DF80877E17CF807322A5F3A2B2BEB +:20008000571A4F2A5F566B6223E57DF80A77E17CF80977F8192A5F5621060019E57DF80C8B +:2000A00077E17CF80B77F8192A5F5621020019E57DF80E77E17CF80D77F8042A5F5621060C +:2000C0000019E57DF81077E17CF80F77F8192A5F5621040019E57DF81277E17CF81177F865 +:2000E000082A5F5621020019E57DF81477E17CF8137779B7C26944F8042A4F3A470AE6BFD5 +:20010000025E2356D51E03213446CDDE3DE1F8082A5F561A4F131A4779E6F04F3A6E6779CA +:200120002270F8122A5F561A4F131A4779E6F04F3A6E67792270F80A2A5F561ACB57280D5D +:20014000F8062A5F561AF6034F3A6E6771F80A2A5F561A4FF8062A5F561AF81A77CB4128E2 +:200160000DF81A4ECBC1F8062A666F71180BF81A4ECBC9F8062A666F71F80A2A5F561A4F49 +:20018000CB49CA7343F8122A5F561AF81922131A77F8082A5F561AF80022131A77F8197EAB +:2001A000F81577F81A7EF81677F8007EF81777F8017EF81877CB41CA9B42F80C2A5F561AFC +:2001C0004F131A47F8007EF81977F8017EF81A327E912005237E902847F819799623789E76 +:2001E0007857CB7E2807CB7A2008BF1805CB7A28013730043E0118023E02F533C5F8115EA9 +:200200002356D5F81A5E235623D55E2356D51E03216B4DCDDE3DE809F80C2A666F79227022 +:20022000F8122A5F561AF81922131A77F8102A5F561AF81722131A222A4F46F8177E912066 +:2002400006237E90CA7343F8172A917E985678CB7F2807CB7A2008BF1805CB7A28013730A2 +:2002600004060318020604F80C2A5F561A4F131AC533F8185E2356D5F8115E2356D5F81E55 +:200280005E2356D547C51E03216B4DCDDE3DE809F8102A666F792270C37343F8102A5F5661 +:2002A0001A4F131A47F8197E912005237E902847F819799623789E7857CB7E2807CB7A2077 +:2002C00008BF1805CB7A28013730043E0318023E04F533C5F8115E2356D5F81A5E23562316 +:2002E000D55E2356D51E03216B4DCDDE3DE809F8102A666F792270F8082A5F561AF816226F +:20030000131A77F80C2A5F561AF81822131A77F8162A4F2A477E912005237E902855F8187C +:200320002A917E985678CB7F2807CB7A2008BF1805CB7A28013730043E0118023E02F81AD8 +:2003400077F8102A5F561A4F131A47F8162A5F56F81A3AF5333A6E67E5F8112A666FE5C55B +:20036000D51E03216B4DCDDE3DE809F80C2A666F792270F8082A5F561A4F131A47F80C2ADD +:200380005F561AF81822131A77F8062A5F561AF81A322B7E912005237E90280DF81A4ECB8D +:2003A000F1F8062A666F71180BF81A4ECBC9F8062A666F71F8122A5F3A2B2B571A4F131A49 +:2003C000472A5F561AF81822131A77F8062A5F561AF81A322B7E912005237E90280DF81AF5 +:2003E0004ECBF9F8062A666F71180BF81A4ECBC1F8062A666F71F8082A5F561A4F131A4744 +:20040000F80C2A5F561A6F131A6758547D917C98CB7B2807CB7A2008BF1805CB7A280137AB +:20042000300DF8062A5F561AF6044F3A6E6771F8122A5F3A2B2B571A4F131A472A5F561A6F +:200440006F131A6758547D917C98CB7B2807CB7A2008BF1805CB7A280137300DF8062A5FA4 +:20046000561AF6084F3A6E6771F8042A4E6F617E0707D24C45F8082A5F561AF81522131AB7 +:2004800077F80C2A5F561AF81722131A77F8152A4F4679E680F8192270F817799623789E6E +:2004A0007857CB7E2807CB7A2008BF1805CB7A280137301CF8157EE67F2815F8192A5F569E +:2004C000218000194D44F80C2A666F792270180CF80C2A5F56F8192A12137E12F8122A5F39 +:2004E0002A23571A22131A77F8102A5F561AF81722131A77F8152A4F4679E680F819227054 +:20050000F817799623789E7857CB7E2807CB7A2008BF1805CB7A280137301CF8157EE67F13 +:200520002815F8192A5F56218000194D44F8102A666F792270180CF8102A5F56F8192A12D9 +:20054000137E12F8042A4F460AE6BF02F8062A5F561AF81A77E6414FF8042A5F56210F008B +:2005600019E57DF81677E17CF8157779D641C27047E5F81CCB56E13E0320023E01EA4ECAF2 +:20058000F8142A5F2A571A77FA4ECAF81777F8082A4F46F8172A2259501A22131A77F8176A +:2005A0005EAF6B672911AB1C1956C5F8185E7ACDDC0D5950C1F8192A666F195D5469607B01 +:2005C0002272030359501AF81922131A322B5EAF6B672911AB1C192356C5F8185E7ACDDC39 +:2005E0000D5950C1F8192A666F195D547B02037A02F80A2A5F561ACB4FCAB646AFF533F804 +:20060000055E2356D5F80B5E2356D5F8135E2356D51E0321614ACDDE3DE80778B1CAB64610 +:20062000F8142A5F561AF81A77FA4ECAC602E603F81977F8082A4F46F8197EF815222359E8 +:20064000501A22131A225EAF6B672911AB1C1956C5F81C5E7ACDDC0D5950C1F8172A666F91 +:20066000195D5469607B22720303F816792278322A5F2A571A22131A77F8154EAF69672992 +:2006800011AB1C19234EF81A5E79CDDC0DF8182A666F094D44F8162A666F792270F8062A70 +:2006A000666F3600F8045E2356D51E03210646CDDE3DE1C3434AF8062A5F561ACB67202275 +:2006C000F6104FF8062A666F713E01F533FA4ECAF533F8065E2356D51E03216546CDDE3D37 +:2006E000E804FA4ECAD603202EF8082A5F561A4F131A47F80C2A5F561AF81922131A322A60 +:20070000917E985678CB7F2807CB7A2008BF1805CB7A2801373035FA4ECA3D2053F8082AAC +:200720005F561A4F131A47F80C2A5F561AF81922131A32799623789E7857CB7E2807CB7AC4 +:200740002008BF1805CB7A2801373824F8192A4F46F8082A666F792270F8062A5F561AF6CD +:20076000024F3A6E677977E6BE4FF8062A666F71F8062A5F561A4FE682D682C2084ACB598A +:200780003E022001AFEA4ECAF8142A5F2A571A77FA4ECAF81777F8082A4F46F8172A225995 +:2007A000501A22131A77F8175EAF6B672911AB1C1956C5F8185E7ACDDC0D5950C1F8192AA3 +:2007C000666F195D5469607B2272030359501AF81922131A322B5EAF6B672911AB1C192300 +:2007E00056C5F8185E7ACDDC0D5950C1F8192A666F195D547B02037A02F80A2A5F561ACB3A +:200800004FCA4C49AFF533F8055E2356D5F80B5E2356D5F8135E2356D51E0321614ACDDEAC +:200820003DE80778B1CA4C49F8142A5F561AF81A77FA4ECAC602E6034FF8087EF81877F867 +:20084000097EF81977F81171F8182A5F561AF81222131A77F8167922AF323A2B22AF32CB79 +:200860002623CB162B2A5F5621AB1C19E57DF81877E17CF817322A5F561A77F81A5EF817CD +:200880007ECDDC0DF816792270F8163A2B77F8173A2B322A5F56F8122A666F19E57DF81808 +:2008A00077E17CF817222A5F56F8162A12132A122A5F5621020019E57DF81877E17CF8174B +:2008C000322A5F561AF81422131A77F8117EF81822AF32CB2623CB1611AB1C3A6E6719E5A7 +:2008E0007DF81477E17CF813322A5F566B6223E57DF81A77E17CF819322A5F561A223A5F50 +:200900007ECDDC0DF819792270F8197EF81277F81A7EF813322A5F2A572A666F19E57DF82E +:200920001B77E17CF81A77F8162A5F2A23572A12137E12F8062A666F3600F8045E2356D54A +:200940001E03210646CDDE3DE1C3434AF8062A5F561ACB6F2022F6204FF8062A666F713E6C +:2009600001F533FA4ECAF533F8065E2356D51E03216546CDDE3DE804FA4ECAD602202FF878 +:20098000122A5F3A2B2B571A4F131A472A5F561AF81922131A322A917E985678CB7F280755 +:2009A000CB7A2008BF1805CB7A2801373036FA4ECAB72054F8122A5F3A2B2B571A4F131A96 +:2009C000472A5F561AF81922131A32799623789E7857CB7E2807CB7A2008BF1805CB7A2800 +:2009E00001373824F8192A4F46F8122A666F792270F8062A5F561AF6014F3A6E677977E65D +:200A00007D4FF8062A666F71F8062A5F561AE6C02018F8062A666F3600F8045E2356D51ECE +:200A200003210646CDDE3DE11819F8022A5F3A571A4F131A4779C6FD4F78CEFF472A666F45 +:200A4000712370E81BC9F8082A4F46CB21CB10CB7E280FF8062A5F56210800192A666F0999 +:200A600018042194CB094D440A4F060069602909292909292911B1C019CBF6C9F8082A4F9B +:200A800046CB21CB10CB7E280FF8062A5F56210800192A666F0918042194CB095D5401B19A +:200AA000C01A5F16006B6229192929192929095D5479932009789220051AE6FB12C96B625A +:200AC000CB9ED51E0321DC41CDDE3DE1C9F8082A4F46CB21CB10CB7E280FF8062A5F5621E3 +:200AE0000800192A666F0918042194CB095D5401B1C01A5F16006B622919292919292909A1 +:200B00005D5479932009789220051AF60412C96B62CBDED51E03217B40CDDE3DE1C9E8FB14 +:200B2000F80D2A4F46CB21CB10CB7E280FF80B2A5F56210800192A666F0918042194CB09D9 +:200B40005D5401B1C01A5F16006B6229192929192929094D7CF800712377D1D5212800193A +:200B60004D440AF80277B72839D1D5212B00194D44233A07302CD1D521290019E57DF8058D +:200B800077E17CF804322A5F561A6F131A67AFF533C5E5F8077EF5331E0421EB61CDDE3DBA +:200BA000E806E805C9F8082A4F46CB21CB10CB7E280FF8062A5F56210800192A666F09184C +:200BC000042194CB094D440A4F060069602909292909292911B1C019012B00092ACB7EC0ED +:200BE000F5331E04215163CDDE3D33C9F8082A4F46CB21CB10CB7E280FF8062A5F562108E6 +:200C000000192A666F0918042194CB094D440A4F060069602909292909292911B1C0194D8E +:200C200044AFF533F80B7EF533C51E03216546CDDE3DE804C9E8FCF80A2A5F2A572A4F46F2 +:200C4000CB21CB10210800193333E5F80DCB7E280AD1D51A6F131A670918042194CB097DD2 +:200C60004CF8022271F80E2A4F46CB21CB10CB7E280BD1D51A6F131A67094D18052194CBDD +:200C8000094D6946F8022A5F561A5F16006B622919292919292911B1C0195D542110001985 +:200CA00070211200194D7887446F2600094D44030A3C46F533C533D51E03216345CDDE3D63 +:200CC000E808C9E8FAF80E2A4F46CB21CB10CB7E280FF80C2A5F56210800192A666F091828 +:200CE000042194CB097D4CF800227101B1C0D1D51A5F16006B6229192929192929094D7CCE +:200D0000F8027123322A4F4603E1E523232A6E5F557B02037A02F8022A5F5621030019E502 +:200D20007DF80677E17CF80577D1D5210400192A4F46F8042A666F792270E806C9E8FCF8B4 +:200D40000C2A4F46CB21CB10CB7E280FF80A2A5F56210800192A666F0918042194CB097D34 +:200D60004CF800227101B1C0D1D51A5F16006B6229192929192929094D7CF802712377C191 +:200D8000C503033A6E67232A6E5F557B02037A02D1D5210400194D44F8022A666F23232337 +:200DA0002A6E5F557B02037A02E804C9E8FCF80A2A5F2A572A4F46CB21CB1021080019334B +:200DC00033E5F80DCB7E280AD1D51A6F131A670918042194CB095D5401B1C01A5F16006BED +:200DE0006229192929192929094D7CF802712377F80E2A4F46CB21CB10CB7E280CD1D51AF2 +:200E00006F131A67094D4418062194CB094D44F8022A5F56210500195D541A5F16007B0228 +:200E2000037A02E804C9E8FCF80A2A5F2A572A4F46CB21CB10210800193333E5F80DCB7E2D +:200E4000280AD1D51A6F131A670918042194CB095D5401B1C01A5F16006B622919292919C3 +:200E60002929094D7CF802712377F80E2A4F46CB21CB10CB7E280CD1D51A6F131A67094D27 +:200E80004418062194CB094D44F8022A5F56210500195D541A5F21B31C1600195E16007B86 +:200EA00002037A02E804C9E8FAF80C2A4F462112000933335D54D51AB7C23B4FF80E7EF896 +:200EC0000277F80F7EF80332CB2623CB16F80FCB7E281C210800095D541AF80422131A779F +:200EE000F8042A5F56F8022A666F195D7C180B1194CBF8022A666F195D7CF804732377E1C4 +:200F00003601E5F8042A5F561A5F16006B622919292919292911B1C0195D542103C57B22AD +:200F2000722105C53601C5F8122AF5332A5F56D51E0521DA49CDDE3DE803C1FA05C5D63C77 +:200F4000200CE13600E5AF2103C52277181A2110000936012105C53469602A66C6FA5F7C82 +:200F6000CEFF577B02037A02E806C9F8082A4F46CB21CB10CB7E280FF8062A5F562108008E +:200F8000192A666F0918042194CB094D440A4F060069602909292909292911B1C0194D44C7 +:200FA000210600095D54F80A7E12210700095D54F80B7E12210800095D54F80C7E122109A8 +:200FC00000094D44F80D7E02C93B3BF80A2A4F46CB21CB10CB7E280FF8082A5F56210800A3 +:200FE000192A666F0918042194CB094D440A4F060069602909292909292911B1C0194D4467 +:20100000210A00097EC5F80E66E533F8105E2356D5F5331E0521B941CDDE3DE804C12122E3 +:2010200000095D54F80C7E12212300095D54F80D7EF80077F80E7EF801322A12137E1221C3 +:20104000120009C5E5110000D5F8122A5E2356CD1218C121060009C5E5F8102AF5335E236D +:2010600056D51E05218F42CDDE3DE805C1211200095D54211000097E876F2600195D5413FC +:201080001A3C56F533D533C51E03216345CDDE3DE806C93B3BF80A2A4F46CB21CB10CB7EDF +:2010A000280FF8082A5F56210800192A666F0918042194CB095D5401B1C01A5F16006B62AC +:2010C00029192929192929094D443333C5F80E2A4F2A4703035EAF6B6729292929094D4439 +:2010E000D1D5210A00195D541AF80C862366E533C5F81466E533F533CD7915E807C9F80886 +:201100002A4F46CB21CB10CB7E280FF8062A5F56210800192A666F0918042194CB094D446C +:201120000A4F060069602909292909292911B1C019010E00094D44F80A7E02C9F8082A4FA0 +:2011400046CB21CB10CB7E280FF8062A5F56210800192A666F0918042194CB094D440A4F4C +:20116000060069602909292909292911B1C019010F00094D44F80A7E02C9F8082A4F46CBA7 +:2011800021CB10CB7E280FF8062A5F56210800192A666F0918042194CB094D440A5F1600F7 +:2011A0006B622919292919292911B1C01903030AF533E51E0321B945CDDE3DE803C9F808CF +:2011C0002A4F46CB21CB10CB7E280FF8062A5F56210800192A666F0918042194CB094D44AC +:2011E0000A5F16006B622919292919292911B1C0190303C5E51E0321F445CDDE3DE1C15FF5 +:2012000016007B02037A02C9E8FDF80B2A4F46CB21CB10CB7E280FF8092A5F5621080019E3 +:201220002A666F0918042194CB094D440A4F060069602909292909292911B1C0194D44211C +:201240001200093333E5212200097EF80277212300092A6E5F55C5F8022A666FE5F8112A7E +:20126000666FE5F8087ECD1218C1211200095D54211000097E876F2600195D54131A3C5634 +:20128000F533D533C51E03216345CDDE3DE807C9E8FBF80B2A5F2A572A4F46CB21CB102138 +:2012A0000800193333E5F80ECB7E280AD1D51A6F131A670918042194CB095D5401B1C01A93 +:2012C0005F16006B6229192929192929094D7CF802712377F80F2A4F46CB21CB10CB7E28F8 +:2012E0000AD1D51A6F131A670918042194CB097EE5F80677E123232A4F46F8022A5F5621BB +:201300000A00195D541AC5F80666E533C5F5331E0521B941CDDE3DE804C1F8022A5F5621E4 +:201320002200195D54F8047E126B622379582273F8022A5F56211200195D54C5D51100005E +:20134000D5F80A7E5950CD1218C1F8022A5F56210600195D54D5F8067EF533C51E05218FFC +:2013600042CDDE3DE805F8022A5F56211200194D44F8022A5F56211000195D541A876F2696 +:2013800000094D44030A3C46F533C533F8045E2356D51E03216345CDDE3DE809C93B3BF862 +:2013A0000A2A4F46CB21CB10CB7E280FF8082A5F56210800192A666F0918042194CB094E01 +:2013C00006006960290929290929297DC6B14F7CCEC0F800712377F80D4ECB412810D1D5D2 +:2013E000F80C7EE60107E6026F1AE6FDB512CB492812D1D5F80C7E0FE6010707E6046F1A75 +:20140000E6FBB512CB512811D1D5F80C7E0F0FCB37E6106F1AE6EFB512CB592815D1D5F86D +:201420000C7E0F0F0FE601CB3707E6206F1AE6DFB512CB612812C1C5F80C7ECB37E6010F84 +:0B144000E6806F0AE67FB5023333C977 +:20D54F00E8F7F80F7EF80077F8107EF80177D1D5211000193601F8112A4F46CB21CB10CB72 +:20D56F007E281BD1D521080019E57DF80977E17CF808322A5F561A6F131A670918042194B4 +:20D58F00CB097D4CF8022271211CC57EE6FC77F8022A5F3A571A4F131A472A5F5621020086 +:20D5AF0019E57DF80677E17CF805772114C57E91202E237E902029F8042A5F2A23571A2265 +:20D5CF00131A77FA16C5F807962015FA17C5F80896200DF8147EE603211CC5B677C39F5705 +:20D5EF00F8063600F8137EF8072236002114C5799623789E7857CB7E2807CB7A2008BF183B +:20D60F0005CB7A28013730472114C52A5F56F8072A666F7B955F7A9C2115C53273F8022ABA +:20D62F005F561A4F131A472114C5799623789E7857CB7E2807CB7A2008BF1805CB7A280109 +:20D64F0037386A2114C5792270F8063601185E2114C52A917E985678CB7F2807CB7A2008B3 +:20D66F00BF1805CB7A28013730432114C52A5F56F8072A666F195D542114C57B2272F80203 +:20D68F002A5F561A4F131A472114C52A917E985678CB7F2807CB7A2008BF1805CB7A2801F6 +:20D6AF0037380A2114C5792270F8063601F8042A5F561A4F131A472116C5799623789E7834 +:20D6CF0057CB7E2807CB7A2008BF1805CB7A28013730492116C52A5F56F8072A666F7B951C +:20D6EF005F7A9C2117C53273F8042A5F561A4F131A472116C5799623789E7857CB7E2807C1 +:20D70F00CB7A2008BF1805CB7A280137386E2116C5792270F8067EB7286218742116C52AF0 +:20D72F00917E985678CB7F2807CB7A2008BF1805CB7A28013730452116C52A5F56F8072A85 +:20D74F00666F195D542116C57B2272F8042A5F561A4F131A472116C52A917E985678CB7F73 +:20D76F002807CB7A2008BF1805CB7A280137380C2116C5792270F8067EB72014D1D51A4FBC +:20D78F00131A4779C6FB4F78CEFF47E1E5792270E809C9F8082A4F46CB21CB10CB7E280F60 +:20D7AF00F8062A5F56210800192A666F0918042194CB094D4459501A2114C522131A770377 +:20D7CF000359501A2116C522131A77211CC57EE6FC771E06211944C3DE3DE8F6F8127EB73C +:20D7EF0028172B2B2A4F46210800092A4F4621A3C02A5F567B02037A02FAA3C0F80877FAA8 +:20D80F00A4C0F80977F8107EF80277F8117EF803322A5F56210800192A666F2A4F46F80893 +:20D82F002A5F567B915F7A98474BF8137EF80577F8147EF806322A5F561A6F131A6779952A +:20D84F00789CD20959F8052A5F562102001933335D54D51A4F131AF8052A5F5621040019BD +:20D86F00E57DF80977E17CF80877CB412828CDFF3A4BF8072A5F561AF80522131A322A4658 +:20D88F0087CB106F60235916004D44CDED0D78F8054E91EADAC7D1D51A4F131ACB492849BE +:20D8AF00CDFF3AF80973F8072A5F561AF80422131A327EF80077F8057EF80132CB2623CBF8 +:20D8CF0016D1D56B6223E57DF80877E17CF80722233A223600F8062A4F2A475E1600CDED6B +:20D8EF000D78F8044E91EADBC7F8022A5F56211000194D4436011E00180C21DBC7360021E6 +:09D90F00DAC736001E01E80AC95E +:208AFC00F8087EEA21DAB72807F040F602E040C9F040E6FDE040C9FA15C62116C69628076D +:208B1C00FA15C6F808A6C0F8062A4F4621100009360169602A665F541B1B7B02037A02C9C9 +:208B3C0001BAC5F8087E3D5F077BE6076F26005D54292919094D4459501313F8092A1203B6 +:208B5C0003032A5F567B02037A02C901E2C5F8085E7BB7C8CB432804F8097E02CB3B031873 +:208B7C00F001E2C5F8085E7BB7C8CB432802AF02CB3B0318F2F8082A4F46CB21CB10CB7E1E +:208B9C00280FF8062A5F56210800192A666F0918042194CB094D44F80A5E2111C61600199E +:208BBC005E16007B02037A02C9F8084E79E601CB492813B728081E0721C145C3DE3D1E072D +:208BDC0021DB44C3DE3DB728081E0721DB45C3DE3D1E07211345C3DE3D01EAC5F8087E3D49 +:208BFC005F077BE6036F26005D54292919094D4459501313F8092A120303032A5F567B02D3 +:208C1C00037A02C901FEC5F8087E3D5F077BE6036F260029094D44F8097E02037E02C90181 +:208C3C00FEC5F8087E3D5F077BE6036F260029093600C901FEC5F8087E3D5F077BE6036F52 +:208C5C00260029094D44037E02C9E8FAF80C2A5F2A572A4F46CB21CB10210800193333E5C0 +:208C7C00F80FCB7E280AD1D51A6F131A670918042194CB097D4CF8022271F8102A4F46CBFD +:208C9C0021CB10CB7E280BD1D51A6F131A67094D18052194CB094D44F804792270F8122AB5 +:208CBC004F46CB21CB10CB7E280AD1D51A6F131A670918042194CB095EFA2CC5CD0C0EF828 +:208CDC00042A5F561A6F2600094D44F8047922702123C54EF8042A5F562124C52A666F19F1 +:208CFC005D5479CDEF15FA18C8B728272126C546F8042A5F562127C52A666F195D54C5783D +:208D1C00CDEF1559C1531E0042F8022A666F712370180A0600F8022A666F712370E806C9C0 +:208D3C00E8FCF80A2A5F56F8112A4F46CB21CB1021080019E57DF80477E17CF80377F812D3 +:208D5C00CB7E280DF8022A5F561A6F131A670918042194CB097D4CF8002271F80C2A4F46BE +:208D7C00CB21CB10CB7E280EF8022A5F561A6F131A67094D18052194CB094D7CF802712348 +:208D9C0077FA18C8B72811F8022A5F561A131ACB5F3E012001AFE04FF80F2A4F460303D151 +:208DBC00D51A6F131A6729292929094D44F8022A5F561AF80E66E533C5F81666E533F53377 +:208DDC00CD5D15E805AFE04FE804C9E8F9F80D7EF80277F80E7EF80377F80F2A4F46CB213B +:208DFC00CB10F8022A5F56210800193333E5F810CB7E280AD1D51A6F131A670918042194F6 +:208E1C00CB097D4CF8042271F8112A4F46CB21CB107ECB7F280BD1D51A6F131A67094D184F +:208E3C00052194CB094D44F8135ECB432820FA15C62116C6962817F8042A666F3E012236FF +:208E5C00002115C65E16007B02037A02184CCB4B2825C51E08219642CDDE3DC1F80677B70A +:208E7C0028152B3A6E673E02223600F8065E16007B02037A021823F8022A5F5621100019FB +:208E9C003601F8022A5F561A4F131A4779C6FA4F78CEFF473A6E67792270E807C9F8087E65 +:208EBC00B72807F040F604E040C9F040E6FBE040C9E8F3F8165EFA2CC5CD0C0EF8156E26E9 +:208EDC000009E57DF80B77E17CF80A772123C54EF8092A5F562124C52A666F195D5479CD6B +:208EFC00EF15F80B712A77F8182A4F2A23477E07E601F80077F8132A5F56F81A7EF801775B +:208F1C00F81B7EF80232CB2623CB1623030379227021080019E57DF80777E17CF806772142 +:208F3C0036C5CB46CA3850F80B7ED68030453E09F816963008F807AF2236801806F807AFF6 +:208F5C00223690F80C3A2236003E04F80BCB2623CB163D20F62B3A2B77F80C3A2B322A5FBF +:208F7C0056F8072A666F19E57DF80D77E17CF80C77183CF80B3A2B22AF322A5F5621800073 +:208F9C007B955F7A9CF80C32733E04F80BCB2623CB163D20F62B3A2B77F80C3A2B322A5FCF +:208FBC005621008819E57DF80D77E17CF80C77F8007EB72821F8052A5F561AF80922131A0B +:208FDC00322A5F56F8012A666F19E57DF80977E17CF80877181B1194CBF8012A666F19E50C +:208FFC007DF80B77E17CF80A323A2B77F80A3A2B77F8072A4F4669602A666F292929294D9C +:20901C0044F8032A666F094D44F80B2A5F56F8177EF533211000E5CD2B161872FA18C8B786 +:20903C00281E2126C54E2127C52A5F56F8092A666F195D5479CDEF15CB5928043E01E04FB6 +:20905C00F8007EB72814F8052A5F561A4F131A47F8012A666F094D44180B0194CBF8012A9A +:20907C00666F094D440A6F2600292929294D44F8032A666F094D44F8177EF533C53E01F54F +:20909C0033F8107EF533CD5D15E805AFE04FE80DC9FA1AC8E6F74FF8087EB7280BCBD921D6 +:2090BC001AC87121004071C9211AC87121004071C9E8F9F80F2A4F46CB21CB10CB7E2810A8 +:2090DC00F80D2A5F56210800192A666F094D18052194CB094D440AF80377F8127EF804774B +:2090FC00F8137EF80577FA18C8B72852F8042A5F56210500194D44F8117EF5332101003997 +:20911C005D54CDCD15F8004E79B72832233E01E04F2A477E585779CDEF15F8007EF806779F +:20913C00F8012A665F54131379F80666E533D5F533F8077EF533CD5D15E805AFE04FF80414 +:20915C002A4F460303F8117EF533210100395D54CDCD15F8002A4F2A477E585779CDEF156B +:20917C00F8007EF80677F8012A665F54131379F80666E533D5F533F8077EF533CD5D15E8C8 +:02919C000CC9FC +:20144B003BF8092A4F46CB21CB10CB7E280FF8072A5F56210800192A666F0918042194CB7B +:20146B00094D44F0FFF800777EE6F7CDCC00C5F80D7EF5331E07212447CDDE3D33C15F1603 +:20148B00007B02037A02F8007E33C3CC0033C93BF8092A4F46CB21CB10CB7E280FF8072AA6 +:2014AB005F56210800192A666F0918042194CB094D44F0FFF800777EE6F7CDCC00C5F80FCE +:2014CB003A573A5FD57EF5331E07213E47CDDE3DE803C15F16007B02037A02F8007E33C320 +:0414EB00CC0033C935 +:020000040000FA +:2003280088560402B356040100000000EF540402315504019D380406EE560405302C04045F +:2003480079570402915504031056040100000000F2570406612D0406AE5904085A5C0402AD +:20036800085C0402265D0401545D0404B55D0404852E04001F59040281590402795E0400C0 +:20038800E15D0404F35A0408000000000000000000000000000000000000000000000000B6 +:2003A8000000000000000000855E0402B15E0406F35E0400025F0400155F0402575F040441 +:2003C800D25F04046E5E04014D600402CF5C04020B39040378430809694308010040040215 +:2003E8007C4A0402EC4B0403CD4A0402354C0404C34C0402A74E04056B4F0406C94F04054D +:20040800935004083D4D040200000000AC4D0404FE5004033C5104039D530404DA29060169 +:20042800D85206025B5306020000000075530602055406035455060482540606A255060404 +:200448000000000000000000BD560601B9570602EC560605495406054D570606CD50060595 +:20046800FC4A0601134B0601674B0602914B06033C4B0604BA580609C54B0601F54B060410 +:20048800204C0602664C06063C4D0608E74D0605B94E0601CD4E06077D4B0601FA430803FF +:2004A8004744080069440801D444080100000000A7440804DA440805CE440802104708002D +:2004C80086470800944708009F470800F3490501054A050500000000000000004F55070424 +:2004E800A25707023B4C06014F4C0601A54B04027A5104027D600406B76004062046080085 +:20050800284608038F460803ED46080118590702000000008D290100AD5006014D4508036C +:200528008E45080400000000BE5104020852040441530601264E040490520404464A0402C6 +:180548009E5106053A520605195A06044B5404039A5404051E4B040281 +:020000040002F8 +:20036900F8087EF5331E0721034CCDDE3D33C9E8FCF80A2A5F2A572A4F46CB21CB102108B6 +:2003890000193333E5F80DCB7E280AD1D51A6F131A670918042194CB097D4CF8022271F8B1 +:2003A9000E2A4F46CB21CB10CB7E280BD1D51A6F131A67094D18052194CB094D44F811CB00 +:2003C9007E28042BAF2277C5F8142A5F56D5F8142A5F56D5F81A7EF5331E0721304CCDDE8D +:1103E9003DE8074F0600F8022A666F792270E804C9C9 +:020000040001F9 +:20919E00E8FCF80A2A5F2A572A4F46CB21CB1021080019E57DF80477E17CF80377F80DCB85 +:2091BE007E280DF8022A5F561A6F131A670918042194CB097D4CF8002271F80E2A4F46CB56 +:2091DE0021CB10CB7E280EF8022A5F561A6F131A67094D18052194CB094D44D1D51AF802B9 +:2091FE0022131A770A5F21AB1B1600194EF8105E3E079347041802CB290520FB79079F47A1 +:20921E00D5F8042A5F56CDED0DD11C1804CB28CB191D20F9E1E5792270E804C9E8FCF80A37 +:20923E002A5F2A572A4F46CB21CB1021080019E57DF80477E17CF80377F80DCB7E280DF81F +:20925E00022A5F561A6F131A670918042194CB097D4CF8002271F80E2A4F46CB21CB10CB99 +:20927E007E280EF8022A5F561A6F131A67094D18052194CB094D44D1D51AF80222131A7719 +:20929E000AC6405F21AB1B1600194EF8105E3E079347041802CB290520FB79079F47D5F8F3 +:1A92BE00042A5F56CDED0DD11C1804CB28CB191D20F9E1E5792270E804C950 +:020000040002F8 +:2003FA003B3B2140C63600FA38C6EABAD9EA39C6F80B2A4F3A2B477EF8007759502A77FA59 +:20041A0037C6F80096200C213CC67E912005237E9028172137C636FF213CC67B2272213A64 +:20043A00C67B2272F8017EEA37C63333C92137C636FFAFE021AFE01CAFE017AFE0123EC04D +:20045A00E0233EC0E0193EC0E0143EFFE025C9F8087EEA40C64F0F3007AFE0123EC0E014F5 +:20047A00CB492807AFE0173EC0E019CB512803AFE01CCB592807AFE0213EC0E0233EFFE06F +:20049A0025792138C6B6EABAD9EA39C6C90123C6F8087EE6036F26005D54292919094D4404 +:2004BA0059501313F8092A120303032A5F567B02037A02C9F8087EC33508F8087EE024C9A0 +:2004DA003B3BF80E7EF80077F80D3A2B5E23562B2B4EF801327E2141C696385421EBC736B8 +:2004FA00FFF8007EEA41C6FA38C6470F3007AFE0123EC0E014CB482807AFE0173EC0E01985 +:20051A00CB502803AFE01CCB582807AFE0213EC0E0233EFFE025F8017EEA38C621EBC73623 +:13053A00FF21EEC7360021ECC77B227221EBC7713333C94D +:020000040001F9 +:20D91800E8F0F8167EF80277F8177EF803322A4F2A4703030A77F8197EF80F777EE601F885 +:20D938000577F80F7EE602F80677F80F7EE604F80777F8022A5F561AF80E22131A327EF89C +:20D958000077F80F7EF80177F8067EB7280A11A0DFF80E7B227218081145C6F80E7B2272E8 +:20D97800F80E3A2B77F80F3A2B77F8187EF80E223600F80E7EB7CAB45AE5CB46E1CA975A39 +:20D99800F8007EF80877F8017EF80977F80C3A2B77F80D3A2B77FA18C8B720073E01F80FD4 +:20D9B800963017F8047EF533110800D5F80B2A4F2A472A5F56CD0916185BF8082A5F56F8E0 +:20D9D8000F7EB72808F80F7E3D28311848F8047ECDEF1541F8067EB7280D2142C671F805B5 +:20D9F8007EB7280379E047F8077EB728282143C670F8057EB7281E78E0481819F8077EB774 +:20DA18002813F8047ECDEF152144C671F8057EB7280379E049D1D521080019E57DF80A770A +:20DA3800E17CF80977F8057EB72848FA18C8B72842F8067EB72814F80A2A5F56D53E01F503 +:20DA580033F8127EF533CD640DE804F8077EB72814F80A2A5F56D53E01F533F8127EF53364 +:20DA7800CD5F0DE804F8087EF80077F8097EF80177180CF8087EF80077F8097EF80177F895 +:20DA98000C2A5F5621080019E57DF80E77E17CF80D2223342B7ECB3F77C38A59C1C5F80237 +:09DAB8002A666F712370E810C9A1 +:020000040002F8 +:20054D00F8092A4F46CB21CB10CB7E280FF8062A5F56210800192A666F0918042194CB09BB +:20056D004D442106000956210400097ED533F533C5F80C7EF5331E0321B855CDDE3DE805E8 +:20058D00C9E8FAF80E4E06006960292909290929090152C7094D7CF8037123772120C54683 +:2005AD002121C52A666F111D00195D54C5334B42210100395D54CDCD15F8102A4F46F8032E +:2005CD002A5F56F80F7EF533211700E5CD0916F8032A5F56210400194D44F8007EF80577E6 +:2005ED00F8012A665F54C5FA32C5F533F8087ECD5A164FF8032A5F56210800195D54792163 +:20060D0032C5963009217AC50600097E1801AF12E806C921006036003601C93BF8092A4F1D +:20062D0046CB21CB10CB7E280FF8072A5F56210800192A666F0918042194CB094D44F80BBF +:20064D007EE603C608F80077FA1AC8E6F05FF8007EE60FB3EA1AC8EA00402100A05E16008F +:20066D00F8007ED60B2014211AC87EE6F0F60C77EA0040FA00A00F300216017B02037A02FA +:20068D0033C9F8082A4F46CB21CB10CB7E2810F8062A5F56210800192A666F094D18052198 +:2006AD0094CB094D692A4F46F80A7EE603C6085F211AC87EE6F0577BE60FB277EA00402128 +:2006CD0000A0717BD60BC0211AC87EE6F0F60C77EA00402100A07EE60E5F78E601B377C902 +:2006ED00F8084E211AC87EE6F0F60C77EA004079B728082100A07EE6BF77C92100A07EF6EC +:20070D004077C90120C52178C52A5F56210300E5CD7E0F01B2C02178C52A5F5613131321BC +:20072D000400E5CD7E0F2178C52A4F462107000901B6C00A772178C57EC608227ECE007794 +:20074D00C9218DCB3602218ECB3603218FCB36012178C52A4F4679582190CB2273030303A5 +:20076D00110400D511B2C0CD7E0F2178C52A4F46210700097EEAB6C0C92178C57EC6F822F4 +:1B078D007ECEFF77C34E472178C536382336C5C34E472178C536382336C5C942 +:020000040000FA +:20298D003BF090F80077F8072A4F46595013131AE0901AEA002069602A666FE5CDA70EE1B5 +:2029AD0069602A666F7EE6075F16007B87CB1287CB1287CB1287CB12855F7A8C577B020396 +:0D29CD007A02F8007EE0907EEA002033C917 +:020000040001F9 +:2049F3002126DA360FF8087E21EFC777D602CA1D02C9E8F1FAEFC7B720082126DA360FC357 +:204A1300E44CFA26DAD60F20052126DA3600FA26DAF800773E20F81B963E0017F80177F8CB +:204A3300187E07E601F80277F8157EF80377F8167EF80477F8172A4F46CB21CB10FA26DAE3 +:204A5300F602F80577FA26DAF604F80677F81A7E07E601F80777F8197EF80877F81A7EF8EC +:204A73000932CB2623CB16F8007EE601F80A77F8032A5F5621080019E57DF80D77E17CF8CE +:204A93000C77F8007EE602F80D77F8007EE604F80E77F8007EE6085FFAEFC73D280BFAEFFD +:204AB300C7D602CAA14BC3A34CF80A7EB72069F8017EB72804F81B36202113C836002117EF +:204AD300C83600F8027EB7280EF80B2A5F561A6F131A67094D18052194CB094D44F81B5E63 +:204AF3001600D511F0C7CD7E0F2115C836F02336C7F81B7EEA14C82119C63600F533CD0AC6 +:204B13000233FA14C8B73E012801AFEA17C82126DA7EF60177C3A34CF80D7EB72010FA17A6 +:204B3300C8B7CAA34CF8057EEA26DAC3A34CF80E7EB72010FA13C8B7CAA34CF8067EEA26D7 +:204B5300DAC3A34C7BB7C2A34CF8017EB72804F81B3620F8077EB72814F80B2A5F561A4F55 +:204B7300131A47F8082A666F095D54180B0194CBF8082A666F095D54F81B4E0600C501F09C +:204B9300C7CD7E0F2126DA7EF60877C3A34CF80E7EB720132113C836002117C83600F80647 +:204BB3007EEA26DAC3A34C7BB7206CFA13C8B7CAA34CF8017EB72804F81B3620F8077EB7CE +:204BD3002820F80B2A5F2A571A22131A322A5F56F8082A666F19E57DF80D77E17CF80C7725 +:204BF300181B1194CBF8082A666F19E57DF80F77E17CF80E323A2B77F80E3A2B77F80B2A87 +:204C13005F56F81B4E0600C501F0C7CD7E0F2126DA7EF608771879F80A7EB72061F8017EBA +:204C3300B72804F81B3620F8027EB7280FF80B2A5F561A6F131A67094D4418062194CB096F +:204C53004D44F81B5E160021F0C7D55D54CD7E0F2115C836F02336C7F81B7EEA14C821199C +:204C7300C63600F533CD0A0233FA14C8B73E012801AFEA17C82126DA7EF601771812F80D48 +:204C93007EB7200CFA17C8B72806F8057EEA26DAFA26DAD60F283AF8032A5F561A4F131ACC +:204CB3004711060079935F789AF80E3273F8032A5F56F80D2A12137E12F8032A5F56211092 +:144CD3000019E57DF80F77E17CF80E322A666F3601E80FC949 +:020000040000FA +:013E21000F91 +:020000040002F8 +:2007A800C5F8082A5F2A572A4F46C57A8730131F2F577B2F5F13214FCA7EB72801353E2DA1 +:2007C8000203CDDC476069D17A2F577B2F5F1319545DC1C9C52152CAAF3232770610CB2382 +:2007E800CB127E8F27227E8F27227E8F27322B0520ECC1FA4FCAD605380F280D573E3002D4 +:20080800031520FB3E05EA4FCAFA4FCAB728023E01571E302152CA3AE60F8228119283162D +:20082800010203FA4FCAB72805FE0530010B7ECB37E60F822811928316010203FA4FCAB749 +:200848002805FE0430010B3AE60F822811928316010203FA4FCAB72805FE0330010B7ECB8D +:1E08680037E60F82280F92830203FA4FCAB72805FE0230010B7EE60F830203AF02C9CB +:020000040000FA +:2029DA00E8F0F090F80077F8167EF80177F8177EF802322A4F4603030AE0900AEA0020F816 +:2029FA00012A5F561A4F131A47F80C792270F8187E1E0087CB136F6309E57DF80577E17CD2 +:202A1A00F80477F80E36242336C9F8012A5F5621080019E57DF80777E17CF80677F8032ABE +:202A3A005F561AF80777F8032A5F566B6223E57DF80A77E17CF809322B7EB7CA112CF80E95 +:202A5A002A5F566B6223E57DF80C77E17CF80B77F8077ED625C2D22BF80C2A5F561A6F1323 +:202A7A001A674D44CB21CB10CB7C280DF8052A5F561A6F131A670918042194CB095D541A75 +:202A9A00F80322131A77F8082A4F460A5F696023E57DF80A77E17CF809777BFE25CAAD2B57 +:202ABA00D644281DF8037EF809777BFE63CA652BFE642855FE66CA942BD674CA7A2BC3B27C +:202ADA002BF8082A4F460AC6D0EA4FCAF80E2A5F56D5F8052A5F56D51E0821A847CDDE3DC6 +:202AFA00E804FA31CAB7280CD5F8102A666FE5CD133CE1D11600F80E2A666F19E57DF810C3 +:202B1A0077E17CF80F77C3F52B214FCA3600F80E2A5F56D5F8052A5F56D51E0821A847CD88 +:202B3A00DE3DE804FA31CAB7280CD5F8102A666FE5CD133CE1D11600F80E2A666F19E57D6F +:202B5A00F81077E17CF80F77C3F52BF80E2A5F56F8092A127EF80E77F80B7EF80F77187B6F +:202B7A00F80E2A666F3601F80A2A5F3A2B577E3C3C1213F80E7B22721861F80E2A666F36D4 +:202B9A0002F80A2A5F3A2B577E3C1213F80E7B22721848F8082A4F4659501B1A4F13F80384 +:202BBA007B2272F80E2A666F71F80A7EF80E77F80B7EF80F77C3372AF8072A4F7EF80377EE +:202BDA00F8097EF80477F80E2A666F71F80A7EF80E77F80B7EF80F77C3372A03F8037922BA +:202BFA0070F80C2A5F5621020019E57DF80E77E17CF80D77C3372AF80E2A666F3600F8001D +:162C1A007EE0907EEA0020F8012A5F56F8082A12137E12E810C9B6 +:020000040001F9 +:2092D800FA15C6EA16C6F8087EEA1DC92122C93600211BC93600F8097ED6343E00174F7E65 +:2092F800C6CC47FA18C8B7282EF8097ED674D0CB412015F8097EC68C2601E533F5331E0165 +:20931800219542CDDE3DE1C9AFF533C5331E01219542CDDE3DE1C979B7C8AFF533C5331E4E +:2093380001219542CDDE3DE1C9F8087EB7280ACD2E02213CCA7B2272C9CD3602213CCA7B80 +:209358002272C9F8093A8787874F7E8787872119C9712118C971EA17C9EA16C9C9F8087EA5 +:20937800B7280E237EF5331E0121184CCDDE3D33C90E00F80946CB402814FA16C92117C921 +:20939800962009FA18C92119C99628020E01CB482808FA1BC9B720020E012116C65E1600CF +:2093B8002115C66E26007B2F5F7A2F577DA35F7CA2CB502806CB6320020E01CB582806CB9B +:2093D8006B20020E01CB602805B320020E0179B7C8F8062A4F4621100009360169602A661E +:2093F800C6FD5F7CCEFF577B02037A02C9F80A7E3C2008FA1EC9F80A77180DF80A7ED6FE17 +:209418002006FA1FC9F80A77F80A3A4F3A878787477E8787875F2119C9702117C97379D66A +:20943800FD20092118C9702116C973C9211AC971C9CD2E02F8094EAF696729292929291951 +:209458004D44F8086E2600095D54213ECA7B2272F80A7EEA40CAF80B7EEA41CAF80C7EB7BA +:209478003EC920023ECAEA42CAC93BF80D7EB72803AF18023EFFEA23C9F80E4E79E602F8BB +:209498000077CB41284BF80C3A573A5FD53A575ED51E0121AA41CDDE3DE804F8007EB7CA01 +:2094B8005255F80C3A5715153A4705053A5F1C7E3CF80D66E533D533C53363E533F533F816 +:2094D8000C2A5F56D51E06214954CDDE3DE8071869FA18C8B728233E01E04FFA48CAE60737 +:2094F8002147CA4EB1F533F80D3A573A5FD53A575ED5CDED3AE805AFE04FF80D7EB73EC933 +:2095180020023ECAF533F80D3A573A5FD53A575ED5CDED3AE805F8007EB7281EF80D3A572F +:209538003A5FD53A573A5FD53A2BF5332A5F56D51E06214954CDDE3DE80733C9F8087ED65C +:2095580014302D237ED61230273E12962B473E1496F80B66E533F80B6668E5F533AF0FF550 +:20957800F80C2A5F56D51E06218254CDDE3DE808F8093A8787874F7E8787872119C9712161 +:2095980018C971EA17C9EA16C9C9E8F7F80F7EF80077F8107EF80177F8112A4F46CB21CBBD +:2095B80010CB7E281BD1D521080019E57DF80977E17CF808322A5F561A6F131A6709180485 +:2095D8002194CB097D4CF8072279327EF80277F8087EF80377F8147EB7CA8D56F8072A5F00 +:2095F800561AF80422131A77F8147EF807223600F8075D54F8041A1396231A9E1A57CB7E3C +:209618002807CB7A2008BF1805CB7A2801373E0017F80677B72806234E06001805F8042AAC +:209638004F4679D60178173F1FDE803009F8073E0122AF771811F8067EB7200BF8047EF82A +:2096580007322B7EF80877F8074ED1D513131A47D1D51A6F131A5D5779F533F8153AF533FF +:209678007EF533C533D51E0121414ACDDE3DE8064F06001803010000F8022A666F79227049 +:20969800D1D51AF80722131A77F8144E060069602909294D44F8072A666F094D44E1E57941 +:2096B8002270E809C9F8084E213BCA710600696029093E6E854F3E058C470AEA3ACA696009 +:2096D800232A4F46FA3ACAF533110800D51132CACD0916C9CD2E02F8094EAF696729292974 +:2096F8002929194D44F8086E2600094D44FA18C8B728243E01E04FFA48CAE6072147CA5E54 +:20971800B3F533F80C3A575ED5C51E08212C43CDDE3DE805AFE04FF80C7EB73EC920023EC0 +:20973800CAF533F80C3A575ED5C51E08212C43CDDE3DE805C9212CC55EF80D7ECD0C0EF86C +:209758000C7E1E00814F7B8847FA18C8B7282D3E01E04F792127C586235F788E57C5F80D26 +:209778003A473A4FC53A474EC5FA2CC567FA26C56FE5D5CD4326E808C1AFE04F792124C5C6 +:2097980086234F788E47F80B3A573A5FD53A575ED5FA2CC567FA23C56FE5C5CD4326E80833 +:2097B800C9E8F4F8142A4F46CB21CB10CB7E280FF8122A5F56210800192A666F091804216A +:2097D80094CB094D44210A000956C5212CC55E7ACD0C0E5950C1210800096E2600195D7C36 +:2097F800F80073237721060009E57DF80477E17CF8037721040009E57DF80677E17CF80519 +:209818007721020009E57DF80877E17CF80777FA18C8B7284B3E01E04FF8022A5F561AF884 +:209838000877F8042A5F561AF809322B2B2A5F561AF80A220A772127C52A5F56E1E5195D4D +:2098580054C5F80A2A472A4FC52A474EC5FA2CC567FA26C56FE5D5CD4326E808C1AFE04F7D +:20987800F8022A5F561AF80B77F8042A5F561AF80A77F8062A5F2A23571A770A4F2124C5D6 +:209898002A5F56E1E5195D54F80B3AF5333AF53346C5FA2CC567FA23C56FE5D5CD4326E8F4 +:2098B80014C9E8F0F8162A5F56F81A2A4F46CB21CB1021080019E57DF80577E17CF804776E +:2098D800F81BCB7E280DF8032A5F561A6F131A670918042194CB097EF80577F81C2A4F4675 +:2098F800CB21CB10CB7E280DF8032A5F561A6F131A670918042194CB097EF80677F81E7EDF +:20991800F80777F81F7EF80877F8207EF809322A5F3A2B577ECDEF15F80A712A322B2B2A01 +:209938005F566B6223E57DF81077E17CF80F77F8077EF80E5E2356CDEF15F80E792270F87A +:209958000E3A2B772A77FA18C8B72850F8082A5F56210B0019E57DF81077E17CF80F77F883 +:20997800077EF533F80F2A4F46210100395D54CDCD15F8004678B72823233E01E04F2A4FDF +:209998007EC53347C5F80F3A2BF5337EF533F80B3A575ED5CDB115E807AFE04FF8182A4F43 +:2099B80046CB21CB10CB7E280EF8032A5F561A6F131A67094D18052194CB094D440AEA2863 +:2099D800DAF8082A5F56210800194D44F8077EF533210100395D54CDCD15F8002A472A668A +:2099F8006FC533E5F8103A2BF5337EF533F80B3A577E5FD5CDB115E8072128DA3600E810AF +:1A9A1800C9F8087EEA44CAF8097EEA45CAF80A7EEA46CAF80B7EEA43CAC9C2 +:020000040000FA +:202C3000E8F6F8102A5F2A572A4F46CB21CB1021080019E57DF80A77E17CF80977F813CB46 +:202C50007E2816F8082A5F561A6F131A67095D541AF80022131A77180D2194CB095D541AA1 +:202C7000F80022131A77F8157EB72820F8082A5F561A4F131A47F8155E16006B62297995BB +:202C90004F789C47F8082A666F712370F090F80277F8107EF80377F8117EF804322A4F461A +:202CB00003030AE0900AEA0020F8032A5F2A571A4F131A712377F8147EF80977F8097EB792 +:202CD000286CF8052A5F3A571A4F131A472A5F5621020019E57DF80977E17CF80877F8009B +:202CF0007E912032237E90202DF8072A5F561AF80022131A327EF80877F8017EF80977F898 +:202D1000032A5F56F8082A12137E12F8027EE0907EEA00201838F8072A5F5621020019E523 +:202D30007DF80777E17CF80677F80935188EF8027EE0907EEA0020F8057EF808322B7EF824 +:202D50000977F8032A5F56F8082A12137E12E80AC9E8F0F81B2A4F46CB21CB10CB7E280F7E +:202D7000F8162A5F56210800192A666F0918042194CB09AFF533E5F81C2A5F3A2B57D57EFF +:202D9000F5331E0421EB61CDDE3DE808C5F81D7EB7CA822EF8013AB6CA822E2323F090776B +:202DB000F8167EF80377F8177EF804322A4F4603030AE0900AEA0020F81D7EF80F77F81BD3 +:202DD0007EF80577F81C7EF80632CB2623CB161194CB3A6E6719E57DF80977E17CF80877F4 +:202DF000F8032A5F5621080019E57DF80B77E17CF80A77F80F7EB72870F8032A5F561A6FBE +:202E1000131A672ACB7E2815F8092A5F561A4F131A47F8052A666F092A4F7E1809F8072A5B +:202E30005F561A4F131AF80B712377D1D5210800194D4459501AF80D22131A322A5F561375 +:202E5000137B02037A02F80B2A4F2A472A666F792270F8032A5F561A4F131A4703033A6EF7 +:202E700067792270F80F35188AF8027EE0907EEA0020E810C9E8F3F090F80077F8137EF876 +:202E90000177F8147EF802322A4F4603030AE0900AEA0020F8012A5F5621080019E57DF82D +:202EB0000577E17CF804322A5F2A571A22131A77F8012A5F561AF80B22131A322A4F4603D9 +:202ED000F8012A666F792270F80B2A5F561A2192CB77CB7ECA4E337EEE80D678DA2D335E88 +:202EF0003EFF5796CB7B2807CB7A2008BF1805CB7A280137DA2D33FA92CBC6084F06002160 +:202F1000162F090909E9C32E2FC30530C3B530C35231C3BC31C35832C3C032C3F532F801BD +:202F30002A5F561AF80B22131A322A4F4603F8012A666F792270F80B2A5F561A2192CB774E +:202F50007EFE492869FE692807D6752832C3F02FF8012A5F561A4F131A4759501AF80B2251 +:202F7000131A77F8032A5F561A4F131A470B0B3A6E677922700A4FF80B2A666F711861F879 +:202F9000012A5F561A4F131A4759501AF80B22131A77F8032A5F561A4F131A470B0B3A6E63 +:202FB000677922700A4FF80B2A666F711832F8012A5F561A4F131A4759501AF80B22131AAF +:202FD00077F8032A5F561A4F131A470B0B3A6E6779227069602A4F46F80B2A666F792270EE +:202FF000F8012A5F561A4F131A4703033A6E67792270C3C02EF8012A5F561AF80B22131AF7 +:20301000322A4F4603F8012A666F792270F80B2A5F561A2192CB777EFE492850FE692806E6 +:20303000D6752826186AF8032A5F3A2B2B571A4F131A472A5F561A6F131A672A666F7E5F45 +:20305000079F577B02037A021846F8032A5F3A2B2B571A4F131A472A5F561A6F131A672A9B +:20307000666F5E16007B02037A021824F8032A5F561AF80B22131A77F8012A5F561A6F138E +:203090001A672A666F2A4F46F80B2A666F792270F8012A5F561A4F131A4703033A6E677991 +:2030B0002270C33933F8012A5F561A6F131A672A4F46CB782816CB21CB10F8052A666F093E +:2030D000E57DF80D77E17CF80C77180F7987CB10C6944F78CECBF80B712377F80B2A5F567E +:2030F0001A4F131A47CB782816CB21CB10F8052A666F09E57DF80D77E17CF80C77180F7940 +:2031100087CB10C6944F78CECBF80B712377F8032A5F561A4F131A470B0B3A6E677922708E +:2031300069602A4F46F80B2A666F792270F8012A5F561A4F131A4703033A6E67792270C352 +:20315000C02EF8012A5F561A6F131A672A4F46CB782816CB21CB10F8052A666F09E57DF816 +:203170000D77E17CF80C77180F7987CB10C6944F78CECBF80B712377F8032A5F561A4F13C3 +:203190001A470B0B3A6E6779227069602A4F46F80B2A666F792270F8012A5F561A4F131A8B +:2031B0004703033A6E67792270C3C02EF8012A5F561A6F131A672A4F46CB782816CB21CBFB +:2031D00010F8052A666F09E57DF80D77E17CF80C77180F7987CB10C6944F78CECBF80B71E4 +:2031F0002377F80B2A5F561A4F131A47F8032A5F561AF80922131A77CB782816CB21CB1063 +:20321000F8052A666F09E57DF80D77E17CF80C77180F7987CB10C6944F78CECBF80B712390 +:2032300077F80B2A5F561A4F131A47F8092A666F792270F8012A5F561A4F131A4703033A48 +:203250006E67792270C33933F8012A5F561A6F131A672A4F46F8032A5F561AF80922131A57 +:2032700077CB782816CB21CB10F8052A666F09E57DF80D77E17CF80C77180F7987CB10C6FC +:20329000944F78CECBF80B712377F80B2A5F561A4F131A47F8092A666F792270F8012A5FD0 +:2032B000561A4F131A4703033A6E677922701879F8032A5F561AF80B22131A77F8012A5FDB +:2032D000561A6F131A672A4F46F80B2A666F792270F8012A5F561A4F131A4703033A6E67D5 +:2032F0007922701844F8012A5F561AF80B22131A322A4F4603F8012A666F792270F80B2AEF +:203310005F561AEA92CBF8032A5F561A6F131A67E5FA92CBE14F079F712377180CF8007ED9 +:20333000E0907EEA0020C39A38F8032A5F561A4F131A4703033A6E67792270C3C02EF8036D +:203350002A5F561A4F131A4711040079935F789AF808327B222B2A5F5621020019E57DF8A0 +:203370000B77E17CF80A77FA92CBFE01CABA34FE02CAE634FE03CA2035FE04CA5C35FE0573 +:20339000CA9635FE06CAD235FE07CA0036FE08CA2C36FE09CA6136FE25CA9234FE26CA7CF7 +:2033B00036FE2ACA4234FE2B2843FE2D2860FE2FCA6A34FE40CA0A38FE4CCAE836FE4DCAF2 +:2033D0009037FE51CA3D38FE52CA1037FE54CADC37FE5ECAC436FE6DCA3837FE72CA593869 +:2033F000FE7CCAA036D67ECA2438C37A38F8072A5F2A571A4F131A472A5F561A6F131A67D2 +:20341000094D44F8072A666F792270C38538F8072A5F2A571A4F131A472A5F561A6F131AFE +:203430006779954F789C47F8072A666F792270C38538F8072A5F561AF80B22131A322B2B02 +:203450002A5F2A571A4F131A472A5F56CDED0DF8072A666F792270C38538F8072A5F561A4E +:20347000F80B22131A322B2B2A5F2A571A4F131A472A5F56CD0210F8072A666F792270C3F1 +:203490008538F8072A5F561AF80B22131A322B2B2A5F2A571A4F131A472A5F56CD0B10F8E7 +:2034B000072A666F792270C38538F8072A5F2A571A4F131A472A5F561A6F131A677D91205B +:2034D000067C903E012801AF4F0600F8072A666F792270C38538F8072A5F2A571A4F131A36 +:2034F000472A5F561A6F131A675C507995789CCB7B2807CB7A2008BF1805CB7A2801373E0A +:2035100000174F0600F8072A666F792270C38538F8072A5F2A571A4F131A472A5F561A6F58 +:20353000131A6758547D917C98CB7B2807CB7A2008BF1805CB7A2801373E0017EE014F061D +:2035500000F8072A666F792270C38538F8072A5F2A571A4F131A472A5F561A6F131A675898 +:20357000547D917C98CB7B2807CB7A2008BF1805CB7A2801373E00174F0600F8072A666FBA +:20359000792270C38538F8072A5F2A571A4F131A472A5F561A6F131A675C507995789CCB15 +:2035B0007B2807CB7A2008BF1805CB7A2801373E0017EE014F0600F8072A666F792270C3FE +:2035D0008538F8072A5F2A571A4F131A472A5F561A6F131A677D9120067C903E012801AFE5 +:2035F000EE014F0600F8072A666F792270C38538F8072A4F3A472A5F561A6F131AB5280C77 +:20361000F8092A5F561A6F131AB520041E0018021E0116007B02037A02C38538F8077EF8CD +:203630000B77F8087EF80C77F8072A5F561A4F131AB1200E232A5F561A4F131AB120034FF1 +:2036500018020E010600F80B2A666F792270C38538F8092A5F561A4F131AB1D6013E00174B +:203670004F06003A6E67792270C3C02EF8072A5F2A571A4F131A472A5F561A6F131A677DBB +:20369000A14F7CA047F8072A666F792270C38538F8072A5F2A571A4F131A472A5F561A6FF0 +:2036B000131A6779B54F78B447F8072A666F792270C38538F8072A5F2A571A4F131A472ADD +:2036D0005F561A6F131A6779AD4F78AC47F8072A666F792270C38538F8072A4F4669602AEE +:2036F0004F46F8092A5F561AE60F5F1C1804CB21CB101D20F9F8072A666F792270C3853819 +:20371000F8072A4F4669602A4F46F8092A5F561AE60F5F1C1804CB38CB191D20F9F8072A87 +:20373000666F792270C38538F8077EF80B77F8087EF80C77F8072A5F2A571A4F131A472A19 +:203750005F561A6F131A675C507995789CCB7B2807CB7A2008BF1805CB7A2801373007F827 +:2037700009792270180BF8092A5F3A571A22131A77F80B2A5F56F8092A12137E12C38538C5 +:20379000F8077EF80B77F8087EF80C77F8072A5F2A571A4F131A472A5F561A6F131A6758EF +:2037B000547D917C98CB7B2807CB7A2008BF1805CB7A280137380AF8092A5F561A4F131A68 +:2037D00047F80B2A666F792270C38538F8092A5F3A2B2B571A4F131A472A5F561A6F131A22 +:2037F00067C5E51E0721D14CCDDE3DE8044F0600F8072A666F792270187BF8092A5F561A86 +:203810004F131A475950CDB53BF8092A666F792270C3C02EF8092A5F561A4F131AF5792FA0 +:203830004FF12F473A6E67792270C3C02EF8092A5F561A4F131A5759CD4E1B4F0600F80945 +:203850002A666F792270C3C02ECDFF3A4B42F8092A5F561A6F131A6759504D44CD2C10F8D2 +:20387000092A666F792270C3C02EF8007EE0907EEA00201815F8032A5F561A4F131A470B17 +:203890000B3A6E67792270C3C02EE80DC9E8FDF80B2A4F46CB21CB107ECB7F2811F8092AEA +:2038B0005F56210800192A666F094D4418062194CB094D44F090F80077F80E7EE090EA0063 +:2038D00020F80D7EB7200D23232A5F561AF8012236001815F80F7EF80177F8107EF80232ED +:2038F0002A5F3A571A22131A77F8012A02033A2B027EE0907EEA0020E803C9F8062A666F08 +:20391000E5F80A2A5F2A666FCDDE3DE802C9424B1A6F131A6713F090F51AE090EA00202A9D +:203930005FB7284CC5E526006B29292B112803193A5F3AEA93CB3A474EE153CB3A30032A60 +:20395000F53328092AF5332AF5331520F7C5444DF802192A666F714D7C237047E1C5D5D562 +:20397000FA93CBE090EA0020E7E139F9E8061E01F1E090EA00207BC93B3BFA8BCBB7201101 +:203990002187CB2277FA83CBEA89CBFA84CBEA8ACB2198D936012199D93610218ACB3AB6F5 +:2039B000CAD93A218DCB36002189CB2A4F462110000936002189CB2A4F46210F00097EB725 +:2039D00020132189CB5E2356CD1E392189CB4E2346B7C28D3A211100095E218BCB7E937730 +:2039F000210D00092A4F4678B1280D6960233A5EF680577B02037A022188CB3AB6281C2A44 +:203A10004F460303033333C52189CB6EFA8ACB672323232A4F46E1E57922702189CB2A4F4D +:203A300046030303FA83CB2189CB962013FA84CB218ACB96200A59501A2183CB22131A772A +:203A50002185CB2A02037E02FA89CBEA85CBFA8ACBEA86CB2188CB3AB628132A4F460303C0 +:203A70000359501A2189CB22131A77C3AB39FA83CBEA89CBFA84CBEA8ACBC3AB39FA8DCB87 +:203A9000B728043E031853211000095D541AB72011FA99D9F801772199D935F8017EB7C206 +:203AB000AB39FA8BCBB720211A2198D9A6772187CB79227003030359501A2189CB22131AF3 +:1D3AD000772199D93610C3AB392184CB3AB6280AFA98D9B73E0120023E023333C95E +:020000040001F9 +:2014EF00E8FCF80A7EF80077F80B7EF80177D1D5210800194D4459501AF80222131A322A38 +:20150F005F5613137B02037A02D1D51A4F131A473A6E67792270D1D5F80C2A12137E12E8D7 +:20152F0004C9E8FCF80A7EF80077F80B7EF80177D1D521080019E57DF80477E17CF80332C4 +:20154F002A5F561A4F131A470B0B3A6E6779227069602A4F46E1E5792270F80C7EB7281FB7 +:20156F00F8022A5F561A4F131A47F80C5EAF6B672979954F789C47F8022A666F792270E8F6 +:20158F0004C9E8FAF80C7EF80077F80D7EF80177D1D521080019E57DF80677E17CF805325E +:2015AF002A5F561AF80222131A322A4F2A4703032A666F792270D1D51A4F131A47F8022A07 +:2015CF00666F792270F8042A5F561AF80222131A322A4F2A4703032A666F792270C1C50329 +:2015EF00030AF80422AF322B2B2A5F2A577E1213AF12D1D5F80F2A12133A2B127E02E8062B +:20160F00C9E8FCF80A7EF80077F80B7EF80177D1D521080019E57DF80477E17CF803322ABD +:20162F005F561A4F131A470B0B3A6E67792270D1D513130A12F8022A5F561A4F131A470B30 +:20164F000B3A6E6779227069602A4F46E1E5792270F80C7EB7281FF8022A5F561A4F131A0E +:20166F0047F80C5EAF6B672979954F789C47F8022A666F792270E804C93B3BF8082A4F4662 +:20168F00210800094D4459501AF80022131A77D1D513137B02037A02D1D5F80A2A12137EBA +:2016AF00123333C93B3BF8082A4F46210800093333E5F80A7EB72818D1D51A4F131A475ED0 +:2016CF0016006B622979954F789C47E1E5792270D1D51A6F131A672A4F4659503333C9E824 +:2016EF00FCF80A7EF80077F80B7EF80177F80C2A4F46CB21CB10D1D521080019E57DF8042F +:20170F0077E17CF80377F80DCB7E280FF8022A5F561A6F131A67094D4418062194CB094D6B +:20172F00446960233A6EB52817D1D5F80E2A12137E1269602A665F541B7B02037A021827E1 +:20174F00F8107EB72821F8022A5F561A4F131A47F8105E1600CB23CB1279934F789A47F84B +:20176F00022A666F792270E804C9F8062A4F2A472A02037E02C9E8FAF80C7EF80077F80D61 +:20178F007EF80177D1D521080019E57DF80477E17CF80377F80E7EB7281EF8022A5F2A573B +:2017AF001A22131A77F80F2A4F4669602A4F4603F8042A666F792270F8022A5F561A4F138E +:2017CF001A4769602A665F541B7B02037A027AB3280CD1D52110001936011E0018021E0197 +:2017EF00E806C9E8F3F8137EF80277F8147EF80377F8192A4F46CB21CB10F8022A5F5621C1 +:20180F00080019E57DF80677E17CF80577F81ACB7E280FF8042A5F561A6F131A67094D7C94 +:20182F0018062194CB097C4DF806712377F8022A5F5621050019E57DF80A77E17CF809329D +:20184F002A5F561AF80022131A77F8162A4F46F8022A5F5621070019E57DF80C77E17CF8A9 +:20186F000B77F8007E912015237E902010F80A2A5F2A571A77F8157EF80C962815F8082A11 +:20188F00666F792270F80A2A5F56F8157E121601180216002101DA792270F8157EEA03DA3B +:2018AF0001473CF8132A5F7EF5F8082A666FF1E5D53357D56960CD4E3DE8057BB72836F8EF +:2018CF00187EB7281FF8042A5F561A4F131A47F8185EAF6B672979954F789C47F8042A6651 +:2018EF006F792270F8082A666FAF2277F80A2A666F36001818F8022A5F561A4F131A477982 +:20190F00C6F94F78CEFF473A6E67792270E80DC9E8FCF80A7EF80077F80B7EF80177F80C7E +:20192F002A4F46CB21CB10CB7E281CD1D521080019E57DF80477E17CF803322A5F561A6FD6 +:20194F00131A67094D18052194CB094D692A6EAFB5201CD1D51A4F131A4779C6FD4F78CEA6 +:20196F00FF47E1E5792270D1D5211000193601E804C9F8082A4F46CB21CB10CB7E280FF867 +:20198F00062A5F56210800192A666F0918042194CB097EF5331E04215163CDDE3D33C9E8FB +:2019AF00F7F80F7EF80077F8107EF80177F8122A4F46CB21CB10D1D521080019E57DF80461 +:2019CF0077E17CF80377F813CB7E2816F8022A5F561A6F131A67095D541AF80422131A7794 +:2019EF00180D2194CB095D541AF80422131A77F8142A4F46CB21CB10CB7E2810F8022A5F07 +:201A0F00561A6F131A67092A4F4618072194CB092A4F46F80636003E06F81196DABC5AF816 +:201A2F00047E912007237E903E012801AFF80777F8042A917E985678CB7F2807CB7A20081E +:201A4F00BF1805CB7A2801373E0017F80877F804799623789E7857CB7E2807CB7A2008BF73 +:201A6F001805CB7A2801373E00174FF8115E160021855A1919E91835180A180E1813181968 +:201A8F00181C1823F8073A771823F8083A2B77181C79EE01F806771814F80671180FF8082E +:201AAF003A2BEE01771806F8073AEE0177F8067EB72809D1D5F8162A12137E12F8187EB753 +:201ACF00281FF8022A5F561A4F131A47F8185EAF6B672979954F789C47F8022A666F792296 +:201AEF0070E809C9E8F9F80D7EF80077F80E7EF80177F8102A4F46CB21CB10D1D521080089 +:201B0F0019E57DF80477E17CF80377F811CB7E2810F8022A5F561A6F131A67092A4F461899 +:201B2F00072194CB092A4F46F80436003E06F80F96DAD15BF8127E912007237E903E012856 +:201B4F0001AFF80577F812799623789E7857CB7E2807CB7A2008BF1805CB7A2801373E008D +:201B6F0017F80677F8122A917E985678CB7F2807CB7A2008BF1805CB7A2801373E00174F16 +:201B8F00F80F5E1600219A5B1919E91835180A180E18131819181C1823F8053A771823F849 +:201BAF00063A2B77181C79EE01F804771814F80471180FF8063A2BEE01771806F8053AEE59 +:201BCF000177F8047EB72809D1D5F8142A12137E12F8167EB7281FF8022A5F561A4F131A92 +:201BEF0047F8165EAF6B672979954F789C47F8022A666F792270E807C9E8FCF80A2A4F4660 +:201C0F002108000933335D54D51AF80222131A77F80C2A4F46CB21CB10CB7E280AF8022A94 +:201C2F00666F094D4418062194CB094D4469602A4F46F8022A666F792270D1D51A4F131A26 +:201C4F00470303E1E5792270E804C9E8FCF80A2A5F2A572A4F46CB21CB1021080019333384 +:201C6F005D54D51AF80222131A77F80DCB7E280AF8022A666F094D4418062194CB094D44AA +:201C8F0069602A4F46F80C792270CB21CB10CB7E280AF8022A666F094D4418062194CB0922 +:201CAF004D4469602A4F46F8022A666F792270D1D51A4F131A470303E1E5792270E804C9E9 +:201CCF00E8FCF80A2A4F462108000933335D54D51AF80222131A77F80DCB7E281CF8022AA2 +:201CEF004F4679D6944F78DECB47CB38CB19F80C2A5E814F7B88471805F80C2A4F46F8023F +:201D0F002A666F792270D1D51A4F131A470303E1E5792270E804C93B3BF8082A4F4621083D +:201D2F0000094D4459501AF80022131A77F80A7E5F079F57CB23CB12E1E5195D547B0203C2 +:201D4F007A023333C9E8FCF80A2A5F2A572A4F46CB21CB10210800193333E5F80DCB7E2850 +:201D6F0011D1D51A6F131A67094D7CF802712377180B2194CB094D7CF802712377F80E2AFF +:201D8F004F46CB21CB10CB7E280AD1D51A6F131A670918042194CB092A4F46F8022A666F34 +:201DAF00792270E804C9F8082A4F46CB21CB10CB7E2811F8062A5F56210800192A666F0925 +:201DCF004D4418062194CB094D44F80A2A02037E02C9E8FAF80C7EF80077F80D7EF80177EB +:201DEF00F80E2A4F46CB21CB10D1D521080019E57DF80677E17CF80577F80FCB7E2814F834 +:201E0F00042A5F561A6F131A67094D7CF802712377180B2194CB095D54F8027B2272F8106E +:201E2F002A4F46CB21CB10CB7E280DF8042A5F561A6F131A67091819D1D5210A0019E57D11 +:201E4F00F80677E17CF805322A5F561A6F131A67092A4F46F8022A666F792270E806C9F8FB +:201E6F00087E0F3003CDBD0140C9F8062A4F46211000093601C9F8082A4F46CB21CB10CBAF +:201E8F007E2810F8062A5F56210800192A666F094D18052194CB094D692A4F46C5CD2A3BF7 +:201EAF00E1C9F8082A4F46CB21CB10CB7E2811F8062A5F56210800192A666F095D5418066B +:201ECF002194CB095D54D5CDFF3AD5F8104EF81146D1CD2C10D1F80A2A666F094D44791293 +:201EEF00137812C9F8062A4F462111000934218BCB34C9F8062A4F46211100097EB7C83D9B +:201F0F0077218BCB35C93B3BF80A7EEA8DCBF80B7EEA8ECBF8082A4F46595013131AEA8FA9 +:201F2F00CB69602A665F542190CB7B227259501AF80022131A77D1D5F80B6E2600195D54A8 +:201F4F007B02037A023333C9E8FCF80A2A5F2A572A4F46CB21CB10210800193333E5F80D3F +:201F6F00CB7E280AD1D51A6F131A670918042194CB092A664F44CB21CB10CB7C2811D1D556 +:201F8F001A6F131A67094D7CF802712377180B2194CB094D7CF802712377F80E2A4F46CB34 +:201FAF0021CB10CB7E280AD1D51A6F131A670918042194CB092A4F46F8022A666F79227067 +:201FCF00E804C9E8FCF80A2A5F2A572A4F46CB21CB10210800193333E5F80DCB7E2811D1E2 +:201FEF00D51A6F131A67094D7CF802712377180B2194CB094D7CF802712377F80E2A4F46CA +:20200F00CB21CB10CB7E280AD1D51A6F131A670918042194CB092A664F44CB21CB10CB7CCD +:20202F00280AD1D51A6F131A670918042194CB092A4F46F8022A666F792270E804C9F80876 +:20204F002A4F46CB21CB10CB7E280FF8062A5F56210800192A666F0918042194CB09E52199 +:20206F008CCB4EE1AF712377218CCB3600C9F8082A4F46CB21CB10CB7E280FF8062A5F56B7 +:20208F00210800192A666F0918042194CB095D54010000F80C7E912004237E90C8F80A2A34 +:2020AF0012137E12130318EBE8FAF8127EF80077F8137EF80132CB2623CB16F80C2A5F56DE +:2020CF00F8102A4F46CB21CB1021080019E57DF80477E17CF80377F811CB7E280FF8022AD0 +:2020EF005F561A6F131A67094D7C18062194CB097C4DF804712377F80E2A4F46CB21CB102A +:20210F00CB7E280DF8022A5F561A6F131A670918042194CB095D54C1C5C5F8062A4F46CD08 +:20212F007E0FE806C9E8FBF80B7EB7282211000ED5110000D51194CBD5CD4F3DE806113040 +:20214F0001D5110000D51153CAD5CD4F3DE806F8023E942236D12185CB3E532236CAAF2181 +:20216F0083CB2277AFF80022771170CBF8043610F8047EB728474B42030303F8002A02033E +:20218F007E02210A00194D44F8022A02037E02210C00194D44F8043A2B02D52A5F562180A3 +:2021AF000019D1E57DF80477E17CF803224B427BC6ED5F7ACEFF573333C53518B3218BCB7D +:2021CF003600218CCB3600AF2187CB2277FA83CBEA89CBFA84CBEA8ACBE805C9E8F321860B +:2021EF00CB3AB62006010000C34E632185CB2A4F46F80279227021030009E57DF80B77E15B +:20220F007CF80A322A5F561A2185CB22131A775950F8142A12133A2B12595013137E1221D4 +:20222F00080009E57DF80677E17CF80577210A00095D541AF80B22131A77F8042A5F56F83B +:20224F000B2A12137E12210D00095D54F8162A12137E123AB628122A5F56210C00097EF8FB +:20226F000B22AF327E1213AF12210F00093600211100093600211200093600210700093624 +:20228F0000F8092A666FAF22772184CB3AB628252A4F46030303F80B792278322A5F561A31 +:2022AF004F131A47B120ECF80B2A5F56F8022A12137E1218062183CB792270F8187EB728CF +:2022CF0079E5211A00395D54E16B6223E57DF80877E17CF80777F8187EF80C77F80C7EB7AD +:2022EF002858F8042A5F561AF80822131A322A4F460303F8042A666F792270F8062A5F5631 +:20230F00210200193333E5F8007EF80677F8017EF80777D1D52102007B955F7A9CF80B32CC +:20232F007B222B2A5F3A571A22131A322B2B2A5F2A572A12132A123518A2F8022A4F46E896 +:20234F000DC9FA83CBEA94D9FA84CBEA95D92195D93AB628502A4F46210C00095EF8067E92 +:20236F00932033210D00092A4F4678B1281A6960233A5EF680577B02037A022194D92A4FB3 +:20238F0046210D0009AF22772194D92A4F46210F00093E0177C903030359501A2194D922E8 +:2023AF00131A7718A9AFC9FA83CBEA96D9FA84CBEA97D92197D93AB628272A4F46210C0031 +:2023CF00095EF8067E93200A210D0009AF22773E01C903030359501A2196D922131A77188D +:0323EF00D2AFC9A1 +:20DAC1002512041A005AD00000000606095B0F14000100084000426F726B20426F726B218D +:20DAE100004701010414000045FD120045FF0E004E010512010141FF0044130145FE1200C9 +:20DB0100440301140001FFFC365BDE08FFFC1A005BE300000007061A005BE0000000080672 +:20DB21001A005B2D0000000006095BDD4000492073617720736F6D657468696E67200A737C +:20DB410068696E7920796F75206D69676874200A6C696B652120004701010514000045FDA2 +:20DB6100120045FF0D004E010512010141FF00441301400049206C6F7374206974207768DA +:20DB8100656E20490A776173206C6F6F6B696E6720617420004701010514000041FF0044E5 +:20DBA10013014000636F6F6C20726F636B7320646F776E200A736F757468203A2800470122 +:20DBC100010514000041FF0044130145FE120044030114000100011400010005095BE00978 +:20DBE1005C7D4000492077617320676F696E6720746F207361790A736F6D657468696E67DB +:20DC010020627574004701010514000045FD120045FF0D004E010512010141FF004407019D +:20DC210040004920666F72676F72203A28004701010514000041FF0044070140004920741E +:20DC410068696E6B207265616C20686172640A7768696C6520796F752074616C6B20746F27 +:1DDC61000A45657665652E004701010514000041FF0044070145FE120044030100F9 +:020000040002F8 +:2008860025120440005468616E6B20796F750A62616C6C696E6361743433004701010414E8 +:2008A600000045FD120045FF0E004E010512010141FF0044130140006F68212075682E2EFB +:2008C6000A736B696269646920677961617421004701010414000041FF0044130145FE1284 +:0E08E60000440301140001FFFC3202FFFC007D +:2040BB002540006661746536277320486F75736521004701010414000045FD120045FF0EC4 +:2040DB00004E010512010141FF0044130145FE1200440301002540005461707079277320FB +:2040FB00486F75736521004701010414000045FD120045FF0E004E010512010141FF00448D +:20411B00130145FE1200440301002540004C616220492067756573733F004701010414000F +:20413B000045FD120045FF0E004E010512010141FF0044130145FE120044030100254000BC +:20415B0050657420506574205061726B2E004701010414000045FD120045FF0E004E01059B +:11417B0012010141FF0044130145FE120044030100EA +:2008F40025400047616D65722044656E004701010414000045FD120045FF0E004E010512EF +:20091400010141FF0044130145FE120044030100254000456C6C6F206D617465210047016B +:20093400010414000045FD120045FF0E004E010512010141FF00441301400057616E6E61AF +:2009540020706C617920736F6D65200A5761727A6F6E653F004701010414000041FF0044A5 +:20097400130145FE120044030100251A004A3A0000000506400066617465362069736E273D +:20099400742068657265200A7269676874206D656F772E004701010414000045FD120045C3 +:2009B400FF0E004E010512010141FF0044130140004B756D6120776173206C6F6F6B696E31 +:2009D40067200A666F7220796F75206F766572206279004701010414000041FF00441301DE +:2009F4004000746865207061726B206F6E207468650A776573742073696465206F6620741B +:200A14006F776E2E004701010414000041FF0044130145FE12004403011400010000140081 +:200A3400000007094A6940004D656F77204D656F7721004701010414000045FD120045FF35 +:200A54000E004E010512010141FF0044130145FE1200440301002512044000736868206990 +:200A74006D20747279696E6720746F0A6472617721004701010414000045FD120045FF0E55 +:1E0A9400004E010512010141FF0044130145FE1200440301140001FFFC3200FFFC006A +:20418C0025400053706F6F6B792054656D70205445585421004701010414000045FD120038 +:1841AC0045FF0E004E010512010141FF0044130145FE1200440301000C +:020000040001F9 +:20DC7E0025120440004920676F74206C6F636B656420696E0A6865726500470101041400C0 +:20DC9E000045FD120045FF0E004E010512010141FF0044130140007768696C65206C6F6FFD +:20DCBE006B696E6720666F720A746865207261646F6E203A28004701010414000041FF0094 +:20DCDE0044130145FE1200440301140001000415FF0FF86907C600570115FE0000FBFDFF65 +:20DCFE00FE0000FBFEFF00140000FFFC35FFFC3200FFFC15FF03F8691CC500270302090115 +:02DD1E004500BE +:020000040002F8 +:2041C4002540004D7574744D656C6F6E277320486F75736521004701010414000045FD123D +:1941E4000045FF0E004E010512010141FF0044130145FE120044030100D3 +:020000040000FA +:208000002512044000546865792063616C6C206D65004701010414000045FD120045FF0E96 +:20802000004E010512010141FF004413014000546865204A75696365426F7821004701013C +:1B8040000414000041FF0044130145FE1200440301140001FFFC3202FFFC0099 +:020000040002F8 +:200AB200254000536C696768746C792773004701010414000045FD120045FF0E004E01057A +:200AD20012010141FF004413014000426F782050616C61636521004701010414000041FFC7 +:0C0AF2000044130145FE12004403010003 +:2041FD0025400047554821004701010414000045FD120045FF0E004E010512010141FF0089 +:0B421D0044130145FE120044030100A1 +:020000040001F9 +:20DD20000001010101010101010101010101010101010101010202020202020202020202B9 +:20DD4000020202020202020101020303030303030303030303030303030302010102030375 +:20DD600003030303030303030303030303030201010204040404040404040404040404043B +:20DD8000040402010102010101010101010101010101010101010201010201010101010159 +:20DDA000010101010101010101010201010201010101010101010101010101010101020140 +:20DDC000010201010101010101010101010101010101020101020101010101010101010120 +:20DDE0000101010101010201010201010101010101010101010101010101020101020101FF +:20DE00000101010101010101010101010101020101020101010101010101010101010101E0 +:20DE20000101020101020101010101010101010101010101010102010102010101010101BE +:20DE400001010101010101010101020101020101010101010101010101010101010102019F +:20DE6000010202020202020202040402020202020202020101010101010101010204040264 +:20DE8000010101010101010100000000000000000000000000000000000000000001020275 +:20DEA0000202020202020202020202020202030000040506060605060506050605050605F2 +:20DEC00006050700000408090909080908090809080809080908070000040A0B0C0D0E0A53 +:20DEE0000A0B0C0A0B0C0D0E0A0B070000040000000000000000000000000000000007009E +:20DF00000004000000000000000000000000000000000700000400000000000000000000F2 +:20DF20000000000000000700000400000000000000000000000000000000070000040000CB +:20DF40000000000000000000000000000000070000040000000000000000000000000000B6 +:20DF600000000700000400000000000000000000000000000000070000040000000000008B +:20DF800000000000000000000000070000040000000000000000000000000000000007006F +:20DFA000000400000000000000000000000000000000070000040000000000000000000052 +:20DFC0000000000000000700000F101010101010111213141010101010101500000000000C +:10DFE00000000000041617070000000000000000F9 +:020000040000FA +:204CD200180000000000000000000000000000000000FF00FF00FF00FF00FF00FF00FF00B1 +:204CF200FE00FF00FF00FF00FF00FF00FF000000FF00FF00FF00FF00FF00FF00FF00FF00B2 +:204D12007F00FD00FD00FD00FD00FD00FD00FD00FD0024C3003C30C018200C100618C027AE +:204D320024C824C3003C0618001F827C20CF10251824BF00BF00BF00BF00BF00BF00BF007E +:204D5200BF0010684698830C40B353AC244222412641003CC52806E94087324C16280718C1 +:204D72008324870098006000C0002E00FF00FF008E000900A8005D0047008200FD00FF00AE +:204D9200F5009B008F007F00BF00F7007F00FF00FF00870098006000C000FE00BF00FF0035 +:204DB200FF000900A8005D0047008200FF00FF00FD00FE00FF00FF00FF00FF00FF00FF0018 +:204DD200FF00FF000000FF00FF00FF00FF00FF00FF00FF000100FD00FD00FD00FD00FD00D8 +:204DF200FD00FF00FF00F000C0002E009D0088008E00FF00F9005D00470082001400A8003B +:204E12004500FF008000BF00BF00BF00BF00BF00BF007F00FF00FF00FF00FF00FF00FF00C9 +:204E3200FF000900A8005D00470082001400A8004500870098006000C0002E009D008800F7 +:024E52008E00D0 +:020000040002F8 +:0E422800141201D24C00000007885E07205DD2 +:020000040001F9 +:20DFF0001C0000004343434343434343434343437F7F00007F7F7F7F7F7F60606060606099 +:20E010007F7F0000F0F0F0F0F0F0000000000000C0C000001F1F1F1F1F1F18181818181888 +:20E030001F1F0000F9F9F9F9F9F9010101010101F1F10000808080808080E0E0E0E0E0E094 +:20E0500090900000DFDFDFDFDFDFD8D8D8D8D8D8D8D80000F0F0F0F0F0F00C0C0C0C0C0CAE +:20E070000C0C202020202020202020202020202020207F7F7F7F43434343434343434343DE +:20E0900043437F7F7F7F606060606060606060606060C0C0C0C0000000000000000000006E +:20E0B00000001F1F1F1F181818181818181818181818F1F1F1F101010101010101010101E6 +:20E0D0000101909090908C8C8C8C8C8C838383838383D8D8D8D8D8D8D8D8D8D8D8D8D8D8C4 +:20E0F000D8D80C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C2020202020200000000000000000E0 +:20E110000000434343434343000000000000000000007F7F7F7F7F7F000000000000000063 +:20E130000000F0F0F0F0F0F0000000000000000000001F1F1F1F1F1F000000000000000075 +:20E150000000F9F9F9F9F9F9000000000000000000008080808080800000000000000000D9 +:20E170000000DFDFDFDFDFDF00000000000000000000D070F050D070F050DF7FC07F7F3FFA +:20E190003F000000000000000000FFFF00FFFFFFFF000B0E0F0A0B0E0F0AFBFE03FEFEFCDE +:20E1B000FC0000000000000000000000000000000000000000000000000000000000000053 +:20E1D00000000000000000000000000000000000000000000000000000000000000000002F +:20E1F00000000000000000000000000000000000000000000000000000000000000000000F +:20E210000000000000000000000000000000000000000000000000000000000000000000EE +:20E230000000000000000000000000000000000000000000000000000000000100000000CD +:20E250000000000000000000000000000000000000000000000000000000000000000000AE +:20E2700000000000000000000000000000000000000000000000000000000000000000008E +:20E29000000000000000010100000000000000000000000000000000000002010000000069 +:20E2B00000000000000000000000000000000000000000000000000000000000000000004E +:20E2D0000008080808080808080000000000000000000000080808080808080808000000A6 +:20E2F000000000000000000008080808080808080800000000000808080808080808080876 +:20E31000080808080808080808080001010101010101010101010101010101010102030482 +:20E3300004040506070806090A0B0C0D0E0F04040410030404041112131415161718191A4F +:20E350001B1C04040410031D1E1F202122232425262728292A2B2C2D2E1003040404042F62 +:20E37000303132303030303030330404041003040404043435363738393A3A3A3A3B040406 +:20E39000041003040404043C3D3E3F404142433A3A3B040404100304040404444546470452 +:20E3B00048494A4B4C3B040404100304040404344D4E4F5051525354553B04040410030406 +:20E3D00004040434565758595A5B5C5D5E3B040404100304040404343A5F6061626364653D +:20E3F0006566040404100304040404343A3A6768696A6B65656604040410030404040434CB +:20E410003A6C6D6E6F7071657273040404100304040404747576777578797A7B7C7D040470 +:20E43000041003040404047E7F0001020304050607040404041003040404040408090A0B2F +:20E450000C0D0E0F1004040404100304040404041112131415161718140404040410191A24 +:12E470001A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1BC5 +:204CE70080003F007F3FC040DF5FF050D050F050F050FF00FFFF0000FFFF00000000000017 +:204D07000000FC00FEFC0302FBFA0F0A0B0A0F0A0F0AF050F050F050F050F050F050F0507C +:204D2700F0500000000000000000000000000000000000000000000000000000000000002C +:204D4700111100000000000000000000000000003C3C0000000000000000000000000000B2 +:204D6700848400000000000000000000000000003E3E0000000000000000000000000000A8 +:204D87007C7C0000000000000000000000000000FBFB00000000000000000000000000001E +:204DA700F7F70000000000000000000000000000C0C000000000000000000000000000007E +:204DC700797900000000000000000000000000000B0B0000000000000000000000000000C4 +:204DE700E0E00F0A0F0A0F0A0F0A0F0A0F0A0F0A0F0A0A0A040404040404040400000000F0 +:204E0700000042424242424242423C3C0000000000008484848484848484787800000000F3 +:204E27000000212121213E3E20202020000000000000424242427E7E4242424200000000DF +:204E47000000818178780404858578780000000000000202F3F30A0A0A0AF3F3000000005F +:204E670000000404E4E404040404F7F70000000000002020202020202020C0C000000000DD +:204E87000000858585858585858578780000000000000808080808080808F0F000000000D3 +:204EA700000080808080808080808080000000000000000000003E3E212121212121212167 +:204EC7003E3E00000000424242424242424242423C3C00000000FCFC8080F8F8808080805B +:204EE700FCFC000000003E3E080808080808080808080000000078788484848484848484D7 +:204F07007878000000003E3E212121213E3E21212121000000003C3C424242427E7E42429A +:204F2700424200000000F8F88585858585858585F8F800000000F2F20B0B0A0A0A0A0A0AA8 +:204F4700F2F20000000010101010909050503030101000000000FAFA2323222222222222E0 +:204F6700FAFA00000000141414149797545434341414000000009E9EA1A1A1A1BFBFA1A100 +:204F8700A1A100000000404040404040404040407E7E00000000797984848484FCFC84844A +:204FA700848400000000F7F74141414141414141474700000000CFCF101010101010101040 +:204FC700CFCF000000002121B1B1A9A9A5A5A3A321210000000000001F1F1F1F1F1F1F1F6C +:204FE7001F1F000000000000FFFFFFFFFFFFFFFFFFFF000000000000FFFFFFFFFCFFFFFE82 +:20500700FFFE000000000000DFFFFFFF03FF4D93861900000000000080808080808080802F +:2050270080801F1F1F1F1F1F1F1F1F1F1F1F1F1F1F1FFFFFFFFFFFFFFFFFF9FFFEF9FFFF94 +:20504700FFFFFFFCFEFDFEFDFFFEFDFEFAFCF9E0D1E0031CDB20BFC0FE01FF007F00FF00CD +:20506700FF00EE1FE619FB0705FA817FE11EFA04F9067FFFFFFF7F8F0BF78BF7817F730D93 +:205087005DEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8080808080808080808080808080CD +:2050A70080801F1F1F1F1F1F1F1F1E1F1B1C1C1B1C1BFFFFFFFFFFFFFEFF3DC29F60A7581B +:2050C700DB0CE3C07F80609FD00FBE01FF008F701F7FFF00C43F23FC608002FCE41880701C +:2050E70080E0807F00FF800000000000000000000000E8F700F0408000000000000000003C +:2051070000007FFF0C1F080F08070507010700070007FFFFFFFFFFFFFFFFFFFFFFFF7FFF25 +:205127007FFF181E181F1E1D1F1E1E1F1F1F1F1F1F1FC204020482048B44DB24E31CB3CC70 +:20514700F3CC40204020D020C030E010E810F008F008000000000000000014383C3C1C3CF5 +:205167000418180030103020C04000000000000000000603060306030603060307030B071B +:205187000B077FFF5FFF4FFF47FF07FFC7FFFEFFECFFFFFFFFFFFDFFF7F8FEFCCDFE73FFB4 +:2051A7003BFFFFFFEFFFFDFFB871D039FF197F9FAFDFFBC4E3FCF3FCE3FCEFF0F5FAF5FAA7 +:2051C700FCFBF008EC18E418C438E618F00EF906FE010000000000000000000000000000E3 +:2051E700418000000000000010600371887308F700FF000000000000000000000100830086 +:2052070007801F073F077F04770FDB3BBA7FE77EFE64FFFFFFFFFFFFFFFF7BFF3F7C1E7FAB +:20522700037F3DBFCFFFE7CFF7EFFFFF7FFFFF3FBFDFEFDFFFFFFFFFFFFFFFFFFFFFFFFF65 +:20524700FFFFFEFDFDFEFEFFFFFFFFFFFFFFFFFFFFFF3EC13EC19E610CF38CF3D0FFFAF527 +:20526700F8F708F700FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF03FF44 +:2052870007FF5E817D83FB07ED1BB97FFFFFFFFFFFFFF8F878F868F0A0C7F08F80FFC0FF0A +:2052A700F0FF007F007F00FF00FF00FF00FF00FF00FFE7FF7FFF3FFF0EFF02FF00FF00FF52 +:2052C70000FFFFFFFFFFFFFF7FFF3BFF1FFF01FF00FFE0FFC0FFC0FFFEFFFFFFFFFFFFFFA5 +:2052E700FFFF60FF1FFF1FFF1FFF03FF00FF00FFE0FF0FFFFFFFFFFFFFFFFFFF1BFF3FFCB6 +:20530700FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3FFFF8FFC4FFFEF7FDFBFFFEFFFFFFFFB8 +:20532700FFFF00FF00FF00FF80FFE07FF07FF8FFF0FF00FF00FF00FF00FF00FF00FF00FF3F +:2053470000FF00800080008000800080008000800080F1FFFFFFFFFFFDFFF6F9F9E0ECF0BB +:20536700F2FCAFDFB7CFDDE3F6F97BFC39FE2E1F1F0F1FFFAF9F9FFFFFFFFFFFFFFFFFFF4A +:20538700FFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFCFFE0FFE0FFC0FF80FF80FF00FF00FFA5 +:2053A70000FFFFFFFFFFFFFFFFFEE1F6FFFEFFFEF1F8F9FEFEFFFFFF7FFF1F1F070F4F879C +:2053C7002FDF0F0F970F778FBFCFDFFFFFFFFFFFFFFFF7FFF7FFF7FFF7FFF1FFE5FF84FF59 +:2053E700F6FFFFFFFFFFFFFFFFFFFFFFFFFFFEFF00FF00FF80FFC0FFC0FFE0FFE0FF70FF98 +:2054070038FF00FF00FF00FF00FF00FF00FF00FF01FF0080008000800080008000800080D5 +:2054270080801F1F1F1F1F1F1F1F0000000000000000FFFFFFFFFFFFFFFF00000000000075 +:205447000000F2FCFCFFFFFFFFFF00000000000000009F7FFFFFFFFFFFFF00000000000048 +:205467000000F6FFF3FFFFFFFFFF000000000000000000FF81FFFFFFFFFF000000000000C7 +:20548700000038FFBCFFFDFFFEFF000000000000000000FF00FFCF3FBF7F000000000000D0 +:2054A700000007FF3FFFFFFFFFFF00000000000000008080808080808080000000000000A5 +:2054C7000000000003030303030300000000000000000000FEFEFEFEFEFE202020202020FF +:0254E700202083 +:020000040002F8 +:0E423600141205E74C07F05F071A6307B26128 +:020000040001F9 +:20E48200000000000000000000000101020201010000000000000000010100000303010168 +:20E4A200020201010000000000000404010101010303010100000000000000000000040438 +:20E4C200010101010101010100000000000000000000000000000000000000000000000032 +:20E4E20000000000000000000000000000000000000000000000000000000000000000001A +:20E502000000000000000000000000000000000000000000000000000000000000000000F9 +:20E522000000000000000000000000000000000000000000050500000000000000000000CF +:20E542000000000000000000010100000000000000000000000000000000000002020000B3 +:20E56200000000000000000000000000000000000206000000000000000000000000000091 +:20E5820000000000070700000000000000000000000000000000000000000000000000006B +:20E5A200000000000000000000000000000000000000000000000000000000000000000059 +:20E5C200000000000000000000000000000000000000000000000000000000000000000039 +:20E5E2000000000000000000000000000000000000000102030405060102010200000000FE +:20E6020007080000090A0B0C0D0E0F100B0C111213131415161718191A1B111213131313FA +:20E6220011121C1D13131E1F2021222324252627131313132425282913132A2B2C2D2D2EE8 +:20E64200131313131313131313131313131313131313131313131313131313131313131358 +:20E66200131313131313131313131313131313131313131313131313131313131313131338 +:20E68200131313131313131313131313131313132F30303113131313131313133233131365 +:20E6A2001313131334353536131313131313131337381313131313132C2D2D2E13131313BF +:20E6C20013131313393A1313131313131313131313131313131313133B3C1313131313133A +:20E6E2001313131313131313131313133D3E13131313131313131313131313131313131363 +:20E70200131313131313131313131313131313131313131313131313131313131313131397 +:20E72200131313131313131313131313131313131313131313131313131313133F3F3F3FC7 +:10E742003F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3FD7 +:209A32004000817F817F916F916F817F89778977817FFFFF8080808080808080808080FF57 +:209A5200FF80FFFF0101010101010101010101FFFF0100005C63026100601060007010609B +:209A72002040000002FE00FE88460C82049A76880E70FFFFFFFFFFFFD5FFAAFFD5FFFFFFB7 +:209A920083FCFFFFFFFFFFFF55FFABFF55FFFFFFFF019F7FA060A060A060BF60BF6FF9EB9C +:209AB200BFAFF9FF050705070507FD07FDF7FFF7FDF5FFFFE0DFFFFFBF80BF80FFFFBFFF35 +:209AD200FFE0FFFF03FFFFFFFD03FD03FFFFFFFFFF07C0BFFFBFFFAAFAAAEAAAEFAFFFBF1B +:209AF200C0BF03FDFFFDFF95FF9597959F9DFFFD03FD400100724008700A76096F107F401B +:209B120000003E003E006E10DE20FE008E70168A000087F88FF0FFFF8080808080808080A3 +:209B3200FFFFFF01FF01FFFF0301030103010301FFFFC080FFBFE4BFF6ADEDA4EDA4FFBFE5 +:209B5200C0800301FFFD87FDFF85BF858F85FFFD0301FF0000000000FF00FF000000000056 +:209B7200FF00F3734E4E2642F926CB7926317653DC7F5D5CB5E667476919D502AA165D8F85 +:209B92007BCEBFAFBFAFBFA0A0BFBFA0A0BF9F9F8080FFF5FFF5FF05F7FDFF0507FDFDF9F6 +:209BB2000101FFFFFF00FF01FE06FBF9EEE6DC98FFFFFFFFED67BD9BFD63FFFF070307033A +:209BD200FFFFF3E0F3E0FFE0FFE0FFE0FFFFFFFF7FFFFF07FF07FF07FF07FF07FFFFE7E3D2 +:209BF200FEFFC0BFFFBFFFBFE9A9E9A9FFBFC0BFFFFF03FDFFFDFFFDFFFDFF85FFFD03FD88 +:209C1200FFFFBEE167627D7EA2FCD84F6F5F7D7F131F3DF9D33DF74F4CE6E6FEFFFD99FFDA +:209C3200CFFF9FFFE0EAB0AFA0AABFA0BFFF80FFFF7FF9FF07A705F70517FD07FDFF01FF5B +:209C5200FFFE8080BF99A7ADA7BCBF99FF80FFFFFF0007037D73FF71FD03FB57F30FFEFF57 +:209C7200FC03FFFFC181FF81FD83FD83FF81C1BFFFFFFFFF8381FF81BFC1BFC1FF8183FD93 +:209C9200FFFFFFBFE3A1E7A1EFA1FFA1FFFFC0807F7FFFFD8F859F85BF85FF85FFFF030180 +:209CB200FEFEFFFFC080BC81C0BFFFFFC080BC81FFFFFFFF03017D8301FFFFFF03017D831F +:209CD200FFFFEF372738111CF71FF31C090C0707FF00F7ECE41C08F8EBFC09FE11FEE2FCBD +:209CF200FF0080FFFF7FE75CC75C9B4457387C00FF0000FFFFFFFF00FF00FF00FF0000000E +:209D1200FF0001FFFFFEF32EEF22CD22EA1C3E00FF00FFFFC0C0BF80BF80BF80BF80BF8018 +:209D3200BF80FFFF0000FF00FF00FF00FF00FF00FF00FFFF0303FD03FD03FD03FD03FD03D6 +:209D5200FD0300FFFF00FF0000FFFFFF9F9F9F98FFFF00FFFF00FF0000FFFFFFF9F9F90996 +:209D7200FFFFBF80BF80BF80BF80BF80BF80C0FFFFFFFF00FF00FF00FF00FF00FF0000FFA3 +:209D9200FFFFFD03FD03FD03FD03FD03FD0303FFFFFFD0BF9FFFF8F0C8F0C0FF80E080C087 +:209DB20080C70DFBF9FF1F0F130F03FF0107010701EFA7D89FE0BFC0BFC0BFC0BFC0BFC07F +:209DD200BFC0E11FF907FD03FD03FD03FD03FD03ED13BFC0BFC0BFC0BFC0F1F09F9F9F98A0 +:209DF200FFFF13012301230163010FCFF9F909F9FFFFD0BF90FF9FFFFFFF00000000000009 +:209E120000000DFB09FFF9FFFFFF0000000000000000FF00FF0000000000FF00FF0000002E +:029E320000002E +:020000040002F8 +:0E424400141206325A00000007EA6507826471 +:200AFE000000000001010000000000000000000000000000020200000000000000000000D2 +:200B1E000101000000000000020200000000000000000000010100000000000002020000AB +:200B3E00000000000000000000000000000000000000000000000000000000000000000097 +:200B5E00000000000000000000000000000000000000000000000000000000000000000077 +:200B7E00000000000000000000000000000000000000000000000000000000000000000057 +:200B9E00000000000000000000000000000000000000000000000000000000000000000037 +:200BBE00000000000000000000000000000000000000000000000000000000000000000017 +:200BDE000000000000000000000000000000000000000000000000000000000000000000F7 +:200BFE000000000000000000000000000000000000000000000000000000000000000000D7 +:200C1E000000000000000000000000000000000000000000000000000000000000000000B6 +:200C3E0000000000000000000000000003030303000000000000000000000000000000008A +:200C5E0003030303000000000000000001020000000000000000000003040304050600004E +:200C7E00000000000000000007080000090A0B0C0D0E0F0F0F0F0F0F0F0F0F0F1011030444 +:200C9E000B0C121314150F0F0F0F0F0F0F0F0F0F12131617181916171A1B0F0F0F0F0F0FFC +:200CBE000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F36 +:200CDE000F0F0F0F1C1D1E1F1F201C1D0F0F0F0F0F0F0F0F0F0F0F0F212223242425212202 +:200CFE000F0F0F0F0F0F0F0F0F0F0F0F1C1D232424251C1D0F0F0F0F0F0F0F0F0F0F0F0F6C +:200D1E0021222627272821220F0F0F0F0F0F0F0F0F0F0F0F0F0F1A29291B0F0F0F0F0F0FE0 +:200D3E000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FB5 +:200D5E000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F95 +:200D7E000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F75 +:200D9E000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F2A2A2A2A0F0F0F0F2B2B2B2B79 +:100DBE002B2B2B2B2B2B2B2B2C2C2C2C2B2B2B2B71 +:020000040001F9 +:20E752002D00817F817F916F916F817F89778977817F16012E015E013E817E0100FF03FF96 +:20E77200FFFFFD03FD03FD01F903F50301EF81DFFFFFFFFF8080808080808080808080FFCC +:20E79200FF80FFFF0101010101010101010101FFFF019F7FA060A060A060BF60BF6FF9EB91 +:20E7B200BFAFF9FF050705070507FD07FDF7FFF7FDF5FFFFE0DFFFFFBF80BF80FFFFBFFFE8 +:20E7D200FFE0FFFF03FFFFFFFD03FD03FFFFFFFFFF07C0BFFFBFFFAAFAAAEAAAEFAFFFBFCE +:20E7F200C0BF03FDFFFDFF95FF9597959F9DFFFD03FDC080FFBFE4BFF6ADEDA4EDA4FFBFDC +:20E81200C0800301FFFD87FDFF85BF858F85FFFD0301BFAFBFAFBFA0A0BFBFA0A0BF9F9FB0 +:20E832008080FFF5FFF5FF05F7FDFF0507FDFDF90101FF0000000000FF00FF0000000000E9 +:20E85200FF00F3E0F3E0FFE0FFE0FFE0FFFFFFFF7FFFFF07FF07FF07FF07FF07FFFFE7E304 +:20E87200FEFFC0BFFFBFFFBFE9A9E9A9FFBFC0BFFFFF03FDFFFDFFFDFFFDFF85FFFD03FDBB +:20E89200FFFF9FFFE0EAB0AFA0AABFA0BFFF80FFFF7FF9FF07A705F70517FD07FDFF01FF7F +:20E8B200FFFEFFFFC080BC81C0BFFFFFC080BC81FFFFFFFF03017D8301FFFFFF03017D83D2 +:20E8D200FFFFFFFFC181FF81FD83FD83FF81C1BFFFFFFFFF8381FF81BFC1BFC1FF8183FDE8 +:20E8F200FFFF80FFFF7FE75CC75C9B4457387C00FF0001FFFFFEF32EEF22CD22EA1C3E005A +:20E91200FF00FF0000000303F80CF31007202720F330FF000000C0C01F30CF08E004E404D8 +:20E93200CF0CFFFFC0C0BF80BF80BF80BF80BF80BF80FFFF0000FF00FF00FF00FF00FF00F9 +:20E95200FF00FFFF0303FD03FD03FD03FD03FD03FD03E83C133F181FF71FFF14091C0000A7 +:20E97200FF00173CCAFC1EF8EFF8FF28D0380000FF00BF80BF80BF80BF80BF80BF80BF8089 +:20E99200BF80FF00FF00FF00FF00FF00FF00FF00FF00FD03FD03FD03FD03FD03FD03FD032E +:20E9B200FD03BF80BF80BF80BF80BF80BF80C0FFFFFFFF00FF00FF00FF00FF00FF0000FF15 +:20E9D200FFFFFD03FD03FD03FD03FD03FD0303FFFFFF00FFFFFFFF00FF00FF00FF0000002E +:20E9F200FF00AA0000AAFF0000FF00FF00FF00FF00FFFF00FF0000000000FF00FF000000BC +:20EA1200000000FF00FF00FF00FF00FFFF0000AAAA00000000000000000000000000000096 +:20EA32000000000000000000000000000000000000000000000001010000020200000000BE +:20EA520000000000000000000000000000000000000001010101010100000202000000009A +:20EA7200000000000000000000000000000000000000010100000101000000000000000080 +:20EA9200000000000000000000000000000000000000000000000000000000000000000064 +:20EAB200000000000000000000000000000000000000000000000000000000000000000044 +:20EAD200000000000000000000000000000000000000000000000000000000000000000024 +:20EAF200000000000000000000000000000000000000000000000000000000000000000004 +:20EB12000000000000000000000000000000000000000000000000000000000000000000E3 +:20EB32000000000000000000000000000000000000000000000000000000000000000000C3 +:20EB52000000000000000000000000000000000000000000000000000000000000000000A3 +:20EB7200000000000000000000000000000000000000000000000000000000000000000083 +:20EB9200000000000000000000000000000000000000000000000000000000000000000063 +:20EBB200000000000000000000000000000000000000000000000000000000000000000043 +:20EBD200000000000000000000000000000000000000000000000000000000000000000023 +:20EBF200000000000000000000000000000000000000000000000000000000000000000003 +:20EC12000000000000000000000000000000000000000000000000000000000000000000E2 +:20EC32000000000000000000030404040400000000000000000000000000000000000000AF +:20EC520000000000000000000304040403000000000000010102030304050303030303036B +:20EC720003030303030303030303030607080303030303030303090A04050B0C03030303F5 +:20EC92000303030303030303030303060D0E030303030F1011121314040515161718191916 +:20ECB2001919191919191919191919191919191919191A1B1C1D1E1F040520212223191914 +:20ECD20019191919191919191919191919191919191919191919191904051919191919192B +:20ECF200191919191919191919191919191919191919191919191919000219191919191912 +:20ED120019191919191919191919191919191919191919191919191903032425262727289E +:20ED32002425191919191919191919191919191919191919191919190303292A042B2B059A +:20ED5200292A1919191919191919191919191919191919191919191919192425042B2B054E +:20ED72002425191919191919191919191919191919191919191919191919292A0001010289 +:20ED9200292A19191919191919191919191919191919191919191919191919192C2D2D2ED0 +:20EDB200191919191919191919191919191919191919191919191919191919191919191921 +:20EDD200191919191919191919191919191919191919191919191919191919191919191901 +:20EDF2001919191919191919191919191919191919191919191919191919191919191919E1 +:20EE12001919191919191919191919191919191919191919191919191919191919191919C0 +:20EE32001919191919191919191919191919191919191919191919191919191919191919A0 +:20EE5200191919191919191919191919191919191919191919191919191919191919191980 +:20EE720019191919191919192F3030303119191919191919191919191919191919191919ED +:20EE92001919191919191919323333333419191919193500BF80BF80BF80BF80BF80BF806D +:20EEB200C0FFFFFFFF00FF00FF00FF00FF00FF0000FFFFFFFD03FD03FD03FD03FD03FD038C +:20EED20003FFFFFF817F817F916F916F817F89778977817FBF80BF80BF80BF80BF80BF80A6 +:20EEF200BF80BF80FD03FD03FD03FD03FD03FD03FD03FD03837F837F936F936F837F8B7776 +:20EF12008B77837F0000000000000000FFFF0000000000000307030703070307FFFFFB07B5 +:20EF32007B073B079F7FBF7FFF40FF40FF40C07FBF7FC040FCFFFEFFFF01FF01FF0101FF6D +:20EF5200FFFF0301FFFFE0DFFFFFBF80BF80FFFFBFFFFFE0FFFF03FFFFFFFD03FD03FFFFCD +:20EF7200FFFFFF07FFFF000000000000FFFF00000000FFFFFFFF3B071B070B07FFFF1B07ED +:20EF92000B07FFFFFFFFEB9CDDBEDDBEEB9CFF808080A29CFFFFD739BB7DBB7DD739FF01C2 +:20EFB20001016D01FFFFFE88DCB8DEBEDFBEC1BFBF80FFFFFFFF7F113B1D7B7DFB7D83FDEB +:20EFD200FD01FFFFC040D058D058C040FF40BF7FC040C0400301030103010301FD03FFFF48 +:20EFF20003010301F3E0F3E0FFE0FFE0FFE0FFFFFFFF7FFFFF07FF07FF07FF07FF07FFFF1E +:20F01200E7E3FEFFFFFF8080808080808080808080FFFF80FFFF0101010101010101010113 +:20F0320001FFFF01FF0000000000FF00FF0000000000FF00FF80FFFFFFD0FFD1FFD0FFD008 +:20F05200FFD0FFFFFF01FFFFFF0BFF8BFF0BFF0BFF0BFFFFFFFFC181FF81FD83FD83FF81E3 +:20F07200C1BFFFFFFFFF8381FF81BFC1BFC1FF8183FDFFFF50D8D058D05840C040C0FF40C9 +:20F09200FF3F30FF03010301030103010301FD03FFFE07FEC0BFFFBFFFBFE9A9E9A9FFBFFE +:20F0B200C0BFFFFF03FDFFFDFFFDFFFDFF85FFFD03FDFFFFFFFFC080BC81C0BFFFFFC08017 +:20F0D200BC81FFFFFFFF03017D8301FFFFFF03017D83FFFFFF0000000303F80CF3100720AE +:20F0F2002720F330FF000000C0C01F30CF08E004E404CF0CFFFFC0C0BF80BF80BF80BF80CE +:20F11200BF80BF80FFFF0000FF00FF00FF00FF00FF00FF00FFFF0303FD03FD03FD03FD0363 +:20F13200FD03FD03E83C133F181FF71FFF14091C0000FF00173CCAFC1EF8EFF8FF28D0387E +:20F152000000FF00FF00FF00FF00FF00FF00FF00FF00FF0080FFFF7FE75CC75C9B445738D5 +:20F172007C00FF0000FFFFFFFF00FF00FF00FF000000FF0001FFFFFEF32EEF22CD22EA1CE6 +:20F192003E00FF00FE0101010001FF01FF0101010101FF010055555500FFFFFFFFFFFFFF22 +:20F1B200FFFFFFFF0154545400FEFFFEFFFEFEFEFEFEFFFEFF0101010101FF01FF01000152 +:20F1D2000101FE01FFFFFFFFFFFFFFFFFFFF00FF55550055FFFEFEFEFEFEFFFEFFFE00FE3B +:04F1F20054FE01FEC8 +:020000040002F8 +:1C425200201207A46E00000007646C07246A141207526700000008664C08FE4AA9 +:200DCE000000000000000000000001010202010100000000000000000101000003030101F3 +:200DEE000202010100000000000004040101010103030101000000000000000000000404C3 +:200E0E000101010101010101000000000000000000000000000000000000000000000000BC +:200E2E000000000000000000000000000000000000000000000000000000000000000000A4 +:200E4E00000000000000000000000000000000000000000000000000000000000000000084 +:200E6E0000000000000000000000000000000000000000000505000000000000000000005A +:200E8E0000000000000000000101000000000000000000000000000000000000020200003E +:200EAE0000000000000000000000000000000000020600000000000000000000000000001C +:200ECE000000000007070000000000000000000000000000000000000000000000000000F6 +:200EEE000000000000000000000000000000000000000000000000000000000000000000E4 +:200F0E000000000000000000000000000000000000000000000000000000000000000000C3 +:200F2E00000000000000000000000000000000000000010203040506010201020000000088 +:200F4E0007080000090A0B0C0D0E0F100B0C111213131415161718191A1B11121313131385 +:200F6E0011121C1D13131E1F2021222324252627131313132425282913132A2B2C2D2D2E73 +:200F8E001313131313131313131313131313131313131313131313131313131313131313E3 +:200FAE001313131313131313131313131313131313131313131313131313131313131313C3 +:200FCE00131313131313131313131313131313132F303031131313131313131332331313F0 +:200FEE001313131334353536131313131313131337381313131313132C2D2D2E131313134A +:20100E0013131313393A1313131313131313131313131313131313133B3C131313131313C4 +:20102E001313131313131313131313133D3E131313131313131313131313131313131313ED +:20104E00131313131313131313131313131313131313131313131313131313131313131322 +:20106E00131313131313131313131313131313131313131313131313131313133F3F3F3F52 +:10108E003F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3F62 +:020000040001F9 +:209E34004000817F817F916F916F817F89778977817FFFFF8080808080808080808080FF51 +:209E5400FF80FFFF0101010101010101010101FFFF01630073401B00FF008060C030F8006F +:209E7400300038003A027100F7001F00060003008140FFFFFFFFFFFFD5FFAAFFD5FFFFFF90 +:209E940083FCFFFFFFFFFFFF55FFABFF55FFFFFFFF019F7FA060A060A060BF60BF6FF9EB96 +:209EB400BFAFF9FF050705070507FD07FDF7FFF7FDF5FFFFE0DFFFFFBF80BF80FFFFBFFF2F +:209ED400FFE0FFFF03FFFFFFFD03FD03FFFFFFFFFF07C0BFFFBFFFAAFAAAEAAAEFAFFFBF15 +:209EF400C0BF03FDFFFDFF95FF9597959F9DFFFD03FD6000E004C000800080008002C041C0 +:209F1400FF0001C001020120011C011803000F82FF0087F88FF0FFFF808080808080808084 +:209F3400FFFFFF01FF01FFFF0301030103010301FFFFC080FFBFE4BFF6ADEDA4EDA4FFBFDF +:209F5400C0800301FFFD87FDFF85BF858F85FFFD0301FF0000000000FF00FF000000000050 +:209F7400FF00F3734E4E2642F926CB7926317653DC7F5D5CB5E667476919D502AA165D8F7F +:209F94007BCEBFAFBFAFBFA0A0BFBFA0A0BF9F9F8080FFF5FFF5FF05F7FDFF0507FDFDF9F0 +:209FB4000101FFFFFF00FF01FE06FBF9EEE6DC98FFFFFFFFED67BD9BFD63FFFF0703070334 +:209FD400FFFFF3E0F3E0FFE0FFE0FFE0FFFFFFFF7FFFFF07FF07FF07FF07FF07FFFFE7E3CC +:209FF400FEFFC0BFFFBFFFBFE9A9E9A9FFBFC0BFFFFF03FDFFFDFFFDFFFDFF85FFFD03FD82 +:20A01400FFFFBEE167627D7EA2FCD84F6F5F7D7F131F3DF9D33DF74F4CE6E6FEFFFD99FFD4 +:20A03400CFFF9FFFE0EAB0AFA0AABFA0BFFF80FFFF7FF9FF07A705F70517FD07FDFF01FF55 +:20A05400FFFE8080BF99A7ADA7BCBF99FF80FFFFFF0007037D73FF71FD03FB57F30FFEFF51 +:20A07400FC03FFFFC181FF81FD83FD83FF81C1BFFFFFFFFF8381FF81BFC1BFC1FF8183FD8D +:20A09400FFFFFFBFE3A1E7A1EFA1FFA1FFFFC0807F7FFFFD8F859F85BF85FF85FFFF03017A +:20A0B400FEFEFFFFC080BC81C0BFFFFFC080BC81FFFFFFFF03017D8301FFFFFF03017D8319 +:20A0D400FFFFEF372738111CF71FF31C090C0707FF00F7ECE41C08F8EBFC09FE11FEE2FCB7 +:20A0F400FF0080FFFF7FE75CC75C9B4457387C00FF0000FFFFFFFF00FF00FF00FF00000008 +:20A11400FF0001FFFFFEF32EEF22CD22EA1C3E00FF00FFFFC0C0BF80BF80BF80BF80BF8012 +:20A13400BF80FFFF0000FF00FF00FF00FF00FF00FF00FFFF0303FD03FD03FD03FD03FD03D0 +:20A15400FD0300FFFF00FF0000FFFFFF9F9F9F98FFFF00FFFF00FF0000FFFFFFF9F9F90990 +:20A17400FFFFBF80BF80BF80BF80BF80BF80C0FFFFFFFF00FF00FF00FF00FF00FF0000FF9D +:20A19400FFFFFD03FD03FD03FD03FD03FD0303FFFFFFD0BF9FFFF8F0C8F0C0C08080808060 +:20A1B40080800DFBF9FF1F0F130F030301010101010180D880E282C68EDE9FFFBBFFB3FBBB +:20A1D400A0F3011F0107113B61F3C1E381C30193153780E080C080C080C0FFF0FF9FFF9804 +:20A1F400FFFF7F3DFF591B1113010FCFF9F909F9FFFFD0BF90FF9FFFFFFF0000000000006F +:20A2140000000DFB09FFF9FFFFFF0000000000000000FF00FF0000000000FF00FF00000028 +:02A23400000028 +:020000040002F8 +:0E426E00141206345E00000008364F08CE4DD4 +:020000040001F9 +:20F1F6000000000000000000000000000101010101010101000000000000000000000000F1 +:20F216000101010101010101020202020202020202020202010101010101010102020202A8 +:20F23600020202020202020201010101010101010101010101010101020202020202020288 +:20F25600020202020202020202020202020202020202020202020202020202020202020258 +:20F27600020202020101010101010101020202020202020202020202010101010101010148 +:20F29600020202020202020202020202010101010101010102020202020202020202020220 +:20F2B600010101010101010102020202020202020202020202020202020202020202020200 +:20F2D6000202020202020202020202020202020201010101010101010202020201010101E4 +:20F2F6000101010101010101010101010202020201010101010101010101010101010101D4 +:20F316000202020201010101010101010101010101010101020202020101010101010101AF +:20F33600020202020202020202020202020202020202020202020202020202020202020277 +:20F35600020203030303030301010101010102020202020202020101010101010100000064 +:20F37600000102020202020202020101010101010101010101010202020202020202010148 +:20F39600010101010202020202020202020202020202010101010101020202020202020221 +:20F3B6000404040402020202020202020202020202020202040404040202020202020202E7 +:20F3D6000000000000000000010203040506050605060506070707070707070708090A0B83 +:20F3F6000C0D0C0D0C0D0C0D0E0F101112131415161616160C0D0C0D0C0D0C0D1718191AE9 +:20F416001B1C1D1E161616161F201F201F201F202122232425222226161616161616161647 +:20F436001616161616161616161616161616161616161616161616161616161616161616F6 +:20F456001616161605060506050605061616161616161616161616160C0D0C0D0C0D0C0DA6 +:20F476001616272816162728161616160C0D0C0D0C0D0C0D292A2B2C292A2B2C1616161618 +:20F496001F201F201F201F202D2E2F302D2E2F301616161616161616161616163132333414 +:20F4B6003132333416161616161616161616161605060506050605061616161605060506CA +:20F4D600050605060C0D0C0D0C0D0C0D161616160C0D0C0D0C0D0C0D0C0D0C0D0C0D0C0D7C +:20F4F600161616160C0D0C0D0C0D0C0D1F201F201F201F20161616161F201F201F201F20EA +:20F51600161616161616161616161616161616161616161616161616161616161616161615 +:20F5360016163535353535350536363636061616161616161616373839393A3B3C3D3D3D6F +:20F556003D3E16161616161616163F40393941422522222222261616161616161616373804 +:20F5760039393A3B16161616161616161616161616163F40393941424344161616161616DB +:20F596004545454516161616161616164647161616161616484848481616161616161616B0 +:020000040000FA +:204E540049000000000000000000000000000000000000007F7F4045404B4057406E405D05 +:204E7400407B0000FEFE02DA02B2026202C6028E021A00007F7F4045404B7F7F40404040F3 +:204E940040600000FEFE02DA02B2FEFE020202020206FF7F8080BF80BF80BF80BF80BF800D +:204EB400BF80FFFE0101FD01FD01FD01FD01FD01FD01005500AA005500AA00FF00FF00FFB1 +:204ED400FFFF41777FFF005500AA00FF00FF00FFFFFF82B3FEFE005500AA00FF00FF00FF63 +:204EF400FFFF417F7FFF005500AA00FF00FF00FFFFFF82FFFEFE005500AA00FF00FF00FFEF +:204F1400FFFF80FFBFFFA7FDBDE5A5E5BFFDBFFFBFC001FFFDFFFD2725E72527FDFFFDFF09 +:204F3400FD033F3FC0C040407F407F5F7059705F7058F3F30C0C0C0CFC0CFFEC3FED3CEF82 +:204F54003E6DF0F00F0F08080F08FF08F8EF08FCDD2C0101FDFD0303FB07FB070BF70B1748 +:204F7400CB171F1F6060A0A0BFA0BFAFB8ACB8AFB8ACF9F906060606FE06FFF61FF61EF7D4 +:204F94001F36F8F8070704040704FF04FCF704FE6E960000FEFE0101FD03FD0305FB050B8D +:204FB400E50BFF00FF00FF0000FFFF00FF00FF0000FF7F5F6F503F7F4040407F406560DA7C +:204FD400FFFFFEEDDC2FF3FF1B0C0BFC0B5C08BFFFFFDE2E0BFEF2FE8AAF8FFCFF8870FFBE +:204FF400FFFF0A174A170A170AF7FB07FB0703FFFFFFBFAFB7A89FBFA0A0A0BFA0B2B0ED3E +:20501400FFFFFFF6EE17F9FF0D0605FE05AE045FFFFF6F9705FFF9FFC557C77EFF4438FF85 +:20503400FFFF050BA50B050B05FBFD03FD0301FFFFFFBFFFBFC1BFC1BFC1BFC1FFFFBFC055 +:20505400FF7FFDFFFD83FD83FD83FD83FFFFFD03FFFEFFFF00FFFFFF86FF87FF78FFFF004B +:20507400FF00FFFF00FFFFFF00FFFFFF00FFFF00FF00FFFF00FFFFFF01FFFFFF00FFFF0031 +:20509400FF00FFFF03FFFFFF87FD87FD7FF9FF01FF01FFFF80FFFFFFC37FC37FBC7FFF0046 +:2050B400FF00FFFF01FFFFFFC3FEC3FE3FFCFF00FF00FF00FF00FF001FFFF020EF20EC23DD +:2050D4002CE2FF00FF00FF00F8FF0F04F70C378C340FFF00FF00FF0000FFDF3F8040388705 +:2050F400B788FF00FF00FF0000FFFFFF000007F87BE4EF20F02FEF3F28FFFFFF0B4038877A +:20511400B887F70C0FF4F7FC14FFFFFCE312F50BFD0BB689B789B789B788BF87BF80BF8076 +:20513400BF803F143F14FF54FFE4BFF8BF407E817D83FF80C09AC5A0D08A7F80BF7FFF8037 +:20515400C000FD0B1DAB5D0B3D8BF50BEDF3FD0B1D07BF80BF80BF80FFFF80FFFF7FC37F75 +:2051740043FF9B65E719FF00FFFF00FFFFFF00FFFFFFC0007F80809FFFFF00FFFFFF00FF0A +:20519400FFFF1D07F50F0DFBFFFF01FFFFFEC3FEC2FFFF00FF00FF0000FFFF00FF00FF0057 +:2051B4000000FFFF0000FF00FF00FF00FF00FF00FF00FF0000000303F80CF3100720272069 +:2051D400F330FF000000C0C01F30CF08E004E404CF0CFF0000000000FF00FF00000000004F +:2051F400FF00FF0000000707F018E7200F404F40E760FF00000080803F609F10C008C80876 +:205214009F18BF80BF80BF80BF80BF80BF80BF80BF80FF00FF00FF00FF00FF00FF00FF00D2 +:20523400FF00FD01FD01FD01FD01FD01FD01FD01FD01E83C133F181FF71FFF14091C000070 +:20525400FF00173CCAFC1EF8EFF8FF28D0380000FF00D078277F303FEF3FFF2813380000FA +:20527400FF002F7894F83CF0DFF0FF50A0700000FF00FF00FF07F81F20FFC07FC77FC87F88 +:2052940070FFFF00FF00FFC020FF1FF01FF09FF070FFFF0000FFAA5500AA00DD00FF00FF11 +:2052B40000FFD85FC747C06020F8A067D838E71F00FFDFD01F101F3020FF2F30DFE03FC0D9 +:1252D40000FF00FF00FF00FF00DD00AAAA5500FFFF0048 +:020000040002F8 +:0E427C00141801544E00000007D67307F671A7 +:20109E00000101010101010101010101010101010101010101010101010101010101010113 +:2010BE000101010101010101010101010101010101010101010101010101010101010101F2 +:2010DE000101010101010101010101010101010101010101010101010101010101010101D2 +:2010FE000101010101010101010101010101010101010101010101010101010101020202AF +:20111E00010101010101010101010101010101020202020202020201010101010101010189 +:20113E00010101020201010202020202020202010101010101010101010202020101010263 +:20115E00010101010101010101010102020303020202020201020201010101010101010243 +:20117E00020202020202020202020202020101010101010101010101010101010101010124 +:20119E00010101010101010101010101010101010101010101010101010101010101010111 +:2011BE000101010101010101010101010101010101010101010101010101010101010101F1 +:2011DE000101010101010101010101010101010101010101010101010101010101010101D1 +:2011FE000101010101010101000102030405060708090A0B0C0D0E0F1011121314151617B5 +:20121E0018191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F3031323334353637C0 +:20123E0038393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F5051525354555657A0 +:20125E0058595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767780 +:20127E0078797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969760 +:20129E0098999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B740 +:2012BE00B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7C8C9CACBCCCDCECFD0D1D2D3D4D5D6D720 +:2012DE00D8D9DADBDCDDDEDFE0E1E2E3E4E5E6E7E8E9EAEBECEDEEEFF0F1F2F3F4F5F6F700 +:2012FE00F8F9FAFBFCFDFEFF000102030405060708090A0B0C0D0E0F1011121314151617E0 +:20131E0018191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F3031323334353637BF +:20133E0038393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F50515253545556579F +:10135E0058595A5B5C5D5E5F606162636465666787 +:020000040000FA +:2052E60068010000000000000000000000000000000000000000000000000000000000003F +:20530600000000000000000000000000000000000000000000000000000000000000000087 +:20532600000000000000000000000000000000000000000000000000000000000000000067 +:20534600000000000000000000000000000000000000000000000000000000000000000047 +:20536600000000000000000000000000000000000000000000000000000000000000000027 +:20538600000000000000000000000000000000000000000000000000000000000000000007 +:2053A6000000000000000000000000000000000000000000000000000000000000000000E7 +:2053C6000000000000000000000000000000000000000000000000000000000000000000C7 +:2053E6000000000000000000000000000000000000000000000000000000000000000000A7 +:20540600000000000000000000000000000000000000000000000000000000000000000086 +:20542600000000000000000000000000000000000000000000000000000000000000000066 +:20544600000000000000000000000000000000000000000000000000000000000000000046 +:20546600000000000000000000000000000000000000000000000000000000000000000026 +:20548600000000000000000000000000000000000000000000000000000000000000000006 +:2054A6000000000000000000000000000000000000000000000000000000000000000000E6 +:2054C6000000000000000000000000000000000000000000000000000000000000000000C6 +:2054E6000000000000000000000000000000000000000000000000000000000000000000A6 +:20550600000000000000000000000000000000000000000000000000000000000000000085 +:20552600000000000000000000000000000000000000000000000000000000000000000065 +:20554600000000000000000000000000000000000000000000000000000000000000000045 +:20556600000000000000000000000000000000000000000000000000000000000000000025 +:20558600000000000000000000000000000000000000000000000000000000000000000005 +:2055A6000000000000000000000000000000000000000000000000000000000000000000E5 +:2055C6000000000000000000000000000000000000000000000000000000000000000000C5 +:2055E6000000000000000000000000000000000000000000000000000000000000000000A5 +:20560600000000000000000000000000000000000000000000000000000000000000000084 +:20562600000000000000000000000000000000000000000000000000000000000000000064 +:20564600000000000000000000000000000000000000000000000000000000000000000044 +:20566600000000000000000000000000000000000000000000000000000000000000000024 +:20568600000000000000000000000000000000000000000000000000000000000000000004 +:2056A6000000000000000000000000000000000000000000000000000000000000000000E4 +:2056C6000000000000000000000000000000000000000000000000000000000000000000C4 +:2056E6000000000000000000000000000000000000000000000000000000000000000000A4 +:20570600000000000000000000000000000000000000000000000000000000000000000083 +:20572600000000000000000000000000000000000000000000000000000000000000000063 +:20574600000000000000000000000000000000000000000000000000000000000000000043 +:20576600000000000000000000000000000000000000000000000000000000000000000023 +:20578600000000000000000000000000000000000000000000000000000000000000000003 +:2057A6000000000000000000000000000000000000000000000000000000000000000000E3 +:2057C6000000000000000000000000000000000000000000000000000000000000000000C3 +:2057E6000000000000000000000000000000000000000000000000000000000000000000A3 +:20580600000000000000000000000000000000000000000000000000000000000000000082 +:20582600000000000000000000000000000000000000000000000000000000000000000062 +:20584600000000000000000000000000000000000000000000000000000000000000000042 +:20586600000000000000000000000000000000000000000000000000000000000000000022 +:20588600000000000000000000000000000000000000000000000000000000000000000002 +:2058A6000000000000000000000000000000000000000000000000000000000000000000E2 +:2058C6000000000000000000000000000000000000000000000000000000000000000000C2 +:2058E6000000000000000000000000000000000000000000000000000000000000000000A2 +:20590600000000000000000000000000000000000000000000000000000000000000000081 +:20592600000000000000000000000000000000000000000000000000000000000000000061 +:20594600000000000000000000000000000000000000000000000000000000000000000041 +:20596600000000000000000000000000000000000000000000000000000000000000000021 +:20598600000000000000000000000000000000000000000000000000000000000000000001 +:2059A6000000000000000000000000000000000000000000000000000000000000000000E1 +:2059C6000000000000000000000000000000000000000000000000000000000000000000C1 +:2059E6000000000000000000000000000000000000000000000000000000000000000000A1 +:205A0600000000000000000000000000000000000000000000000000000000000000000080 +:205A2600000000000000000000000000000000000000000000000000000000000000000060 +:205A4600000000000000000000000000000000000000000000000000000000000000000040 +:205A6600000000000000000000000000000000000000000000000000000000000000000020 +:205A8600000000000000000000000000000000000000000000000000000000000000000000 +:205AA600000000000000000000000000000000000000F300E100C000C000C00080008000CC +:205AC6008000FF00FE00FC00FC00FC007800780078003F001F000F000F000F00070007004E +:205AE600070000000000000000000000000000000000000000000000000000000000000099 +:205B060000000000000000000000000000000000000000000000000000000000000000007F +:205B260000000000000000000000000000000000000000000000000000000000000000005F +:205B460000000000000000000000000000000000000000000000000000000000000000003F +:205B660000000000000000000000000000000000000000000000000000000000000000001F +:205B86000000000000000000000000000000000000000000000000000000000000000000FF +:205BA6000000000000000000000000000000000000000000000000000000000000000000DF +:205BC600000000000000000000000000000000000000FF00FF00FF00FF00FF00FE00FE00C8 +:205BE600FE00CF008700030003000300010001000100800080008000C000C000C000E1009E +:205C0600F300780078007800FC00FC00FC00FE00FF000700070007000F000F000E001E00D3 +:205C26003E00CF008700030003000300010001000100F100F100F000F000F000F200F20028 +:205C4600F300F900F900F900F9007900790039003900000000000000000000000000000003 +:205C660000000000000000000000000000000000000000000000000000000000000000001E +:205C86000000000000000000000000000000000000000000000000000000000000000000FE +:205CA6000000000000000000000000000000000000000000000000000000000000000000DE +:205CC6000000000000000000000000000000000000000000000000000000000000000000BE +:205CE60000000000000000000000000000000000000000000000000000000000000000009E +:205D0600000000000000000000000000000000000000FE00FE00FE00FF00FF00FF00FF0087 +:205D2600FF000100010001000300030003008700CF000000000000000000000000000000FC +:205D4600000000000000000000000000000000000000FE00FE00FE00FF00FF00FF00FF0047 +:205D6600FF000100010001000300030003008700CF00F300F300F300F300F300F300F30017 +:205D8600F300190099008900C900C100E100E100F1009F009F00CE00CE00E400E400F100FF +:205DA600F1007900700066006600E600E600F000F900FC00F800730073007300730038008A +:205DC6003C00FF007F003F003F003F003F001F009F00000000000000000000000000000049 +:205DE60000000000000000000000000000000000000000000000000000000000000000009D +:205E060000000000000000000000000000000000000000000000000000000000000000007C +:205E260000000000000000000000000000000000000000000000000000000000000000005C +:205E460000000000000000000000000000000000000000000000000000000000000000003C +:205E6600000000000000000000000000000000000000FF00F800F000E000C0008000000015 +:205E8600000003000000000000000000000000000000FF007F003F001F000F000700030004 +:205EA6000300000000000000000000000000000000000000000000000000000000000000D9 +:205EC600000000000000000000000000000000000000F300F300E700E700CF00CF00FF006B +:205EE600FF000000000000000000000000000000000000000000000000000000000000009D +:205F060000000000000000000000000000000000000000000000000000000000000000007B +:205F260000000000000000000000000000000000000000000000000000000000000000005B +:205F460000000000000000000000000000000000000000000000000000000000000000003B +:205F660000000000000000000000000000000000000000000000000000000000000000001B +:205F8600000000000000000000000000000000000000FF00FF00FF00FF00FF00FF00FE0003 +:205FA600FE00FE00F800E000C00080000000000000000000000000000000000000000000C7 +:205FC6000000000000000000000000000000000000000100000000000000000000000000BA +:205FE6000000FF007F001F000F000700030001000100FE00FC00F900F300F300F300FB001C +:20600600FC003F001F00CF00FF00FF00FF00FF003F00FF00FF00FF00FF00FF009F009F00DD +:206026009F0000000000000000000000000000000000FF00FF00FF00FF00F900F900F900D4 +:20604600F900FF00FF00FF00FF00CF00CF00FF00FF000000000000000000000000000000A9 +:2060660000000000000000000000000000000000000000000000000000000000000000001A +:206086000000000000000000000000000000000000000000000000000000000000000000FA +:2060A6000000000000000000000000000000000000000000000000000000000000000000DA +:2060C600000000000000000000000000000000000000FE00FE00FF00FF00FF00FF00FF00C3 +:2060E600FF000000000000008000C000E000F800FE00000000000000000000000000000085 +:2061060001000000000000000000000000000000FE0000000000000000000000000000007A +:20612600010001000100030007000F001F007F00FF00FE00FF00FF00FF00F300F900FC00BD +:20614600FE001E00CE00E700E700E700CF001F003F00060006009E009E009E009E009F004A +:206166009F0073007300730073007300730001008900E100C1009900990099009900C00078 +:20618600E400CF00CE00CC00CC00CC00CC00CE00CF003E001C00CD00CD00CE00CF001C00FE +:2061A6003E007F003F00BF00FF007F00BF003F007F00000000000000000000000000000023 +:2061C6000000000000000000000000000000000000000000000000000000000000000000B9 +:2061E600000000000000000000000000000000000000000000000000000000000000000099 +:20620600000000000000000000000000000000000000000000000000000000000000000078 +:20622600000000000000000000000000000000000000000000000000000000000000000058 +:20624600000000000000000000000000000000000000000000000000000000000000000038 +:20626600000000000000000000000000000000000000000000000000000000000000000018 +:206286000000000000000000000000000000000000000000000000000000000000000000F8 +:2062A6000000000000000000000000000000000000000000000000000000000000000000D8 +:2062C6000000000000000000000000000000000000000000000000000000000000000000B8 +:2062E600000000000000000000000000000000000000000000000000000000000000000098 +:20630600000000000000000000000000000000000000000000000000000000000000000077 +:20632600000000000000000000000000000000000000000000000000000000000000000057 +:20634600000000000000000000000000000000000000000000000000000000000000000037 +:20636600000000000000000000000000000000000000000000000000000000000000000017 +:206386000000000000000000000000000000000000000000000000000000000000000000F7 +:2063A6000000000000000000000000000000000000000000000000000000000000000000D7 +:2063C6000000000000000000000000000000000000000000000000000000000000000000B7 +:2063E600000000000000000000000000000000000000000000000000000000000000000097 +:20640600000000000000000000000000000000000000000000000000000000000000000076 +:20642600000000000000000000000000000000000000000000000000000000000000000056 +:20644600000000000000000000000000000000000000000000000000000000000000000036 +:20646600000000000000000000000000000000000000000000000000000000000000000016 +:206486000000000000000000000000000000000000000000000000000000000000000000F6 +:2064A6000000000000000000000000000000000000000000000000000000000000000000D6 +:2064C6000000000000000000000000000000000000000000000000000000000000000000B6 +:2064E600000000000000000000000000000000000000000000000000000000000000000096 +:20650600000000000000000000000000000000000000000000000000000000000000000075 +:20652600000000000000000000000000000000000000000000000000000000000000000055 +:20654600000000000000000000000000000000000000000000000000000000000000000035 +:20656600000000000000000000000000000000000000000000000000000000000000000015 +:206586000000000000000000000000000000000000000000000000000000000000000000F5 +:2065A6000000000000000000000000000000000000000000000000000000000000000000D5 +:2065C6000000000000000000000000000000000000000000000000000000000000000000B5 +:2065E600000000000000000000000000000000000000000000000000000000000000000095 +:20660600000000000000000000000000000000000000000000000000000000000000000074 +:20662600000000000000000000000000000000000000000000000000000000000000000054 +:20664600000000000000000000000000000000000000000000000000000000000000000034 +:20666600000000000000000000000000000000000000000000000000000000000000000014 +:206686000000000000000000000000000000000000000000000000000000000000000000F4 +:2066A6000000000000000000000000000000000000000000000000000000000000000000D4 +:2066C6000000000000000000000000000000000000000000000000000000000000000000B4 +:2066E600000000000000000000000000000000000000000000000000000000000000000094 +:20670600000000000000000000000000000000000000000000000000000000000000000073 +:20672600000000000000000000000000000000000000000000000000000000000000000053 +:20674600000000000000000000000000000000000000000000000000000000000000000033 +:20676600000000000000000000000000000000000000000000000000000000000000000013 +:206786000000000000000000000000000000000000000000000000000000000000000000F3 +:2067A6000000000000000000000000000000000000000000000000000000000000000000D3 +:2067C6000000000000000000000000000000000000000000000000000000000000000000B3 +:2067E600000000000000000000000000000000000000000000000000000000000000000093 +:20680600000000000000000000000000000000000000000000000000000000000000000072 +:20682600000000000000000000000000000000000000000000000000000000000000000052 +:20684600000000000000000000000000000000000000000000000000000000000000000032 +:20686600000000000000000000000000000000000000000000000000000000000000000012 +:206886000000000000000000000000000000000000000000000000000000000000000000F2 +:2068A6000000000000000000000000000000000000000000000000000000000000000000D2 +:2068C6000000000000000000000000000000000000000000000000000000000000000000B2 +:2068E600000000000000000000000000000000000000000000000000000000000000000092 +:20690600000000000000000000000000000000000000000000000000000000000000000071 +:20692600000000000000000000000000000000000000000000000000000000000000000051 +:20694600000000000000000000000000000000000000000000000000000000000000000031 +:0269660000002F +:020000040002F8 +:0E428A00141201E652000000080652089E5071 +:020000040000FA +:20D9B200F9003E27EF517C73BD267D5FE79FF5DB7C63E4FC02FE0FFEA4FC9AFEEDFFD7FFED +:20D9D2002EFE010100005DA22AD555AAAF5055AAA25D0101000055AA2AD554ABAA555FA010 +:20D9F200AA550000000045004500AA011540A000550000001414B54ABA4554ABAA555FA074 +:20DA1200AA5500001414BA45BA4554ABAA555FA0AA555400AA104A004500AA011540A00096 +:20DA320055005000AA4044004400AA001440A0005400000080801818010100000000000099 +:20DA5200808000000000282801010000101020200000001F1708352A1A05140B0A153F20A9 +:20DA72000A15FF00A80045004500AA011540A0005500AA00A2004A004500AA011540A000D4 +:20DA920055009400A20045004200A8001240A50050001400B4004A9091244A00B5004A01D2 +:20DAB200250028005400AA1051040A005500AA010500A8005500AA1051040A005400AB0080 +:20DAD2000400AA40451028005500AA0414004800A800AA40451028005500AA041400A9009B +:20DAF200A8005520A2081400AA0055020A00A900A8005520A2081400AA0055020A00480057 +:20DB1200A80003FE0EFEA5FC9AFEEDFFD7FF2EFE55FFF798EF517C73BD267D5FE79FF5DBF0 +:20DB32007C6355FF02FE0FFEA4FC9AFEEDFFD7FF2EFE28005000A20055808A20500045003F +:20DB5200AA0128005000A20055808A2050004200AD002A005000A00055808A215500A000A1 +:20DB72005500AA105000A0004500AA011540A0005500AA105000A0004500AA011540A500C6 +:20DB92005500AA105000A0004500AA0115404A004500AA105000A0004400AA001440440070 +:20DBB2004400080880801818000080801818010100000808000028280000000028280101EB +:20DBD20000000A101000000005000A0115000A000500AA105000A0004500AA0115404500A1 +:20DBF2004500A8105200A5004200A8001240450040004A00B4004A9091244A00B5004A0187 +:20DC120025000A005400AA1051040A005500AA0105000B005400AA1050040B005400AA00DB +:20DC32000400F798C8FF527FB63F3F1D7F047E08BB0655FF03FF4BFEECFC3DF87EA07E90A4 +:20DC52004CF01540A0005500AA105000A0004500AA011040A0005200AD105200A00042005F +:20DC7200AD002A005000AA0054808A205502AA005100AA10500045008A008A0055022A808D +:20DC92004100AA1050004A0094008A0055022A804100AA11550040008D008D0052012D8013 +:20DCB2004000AA011540A0004A004500AA011540A00054AAAA545EA0BA44BA4454AAAA5451 +:20DCD2005EA00000303002020000000000000000101000005050020200002020404000004C +:20DCF20010100A01150000000A0005000A0115000000AA011540A00045004500AA01154079 +:20DD1200A000A8001240A50042004000AA001540A2004A00B4004A9091244A00B5004A01B8 +:20DD3200A2000A005400AA1051040A005500AA0194000B005400AA1050040B005400AB00AD +:20DD520054005520A2081400AA0055020A00480091005520A2081400AA0055020A00A9005F +:20DD720052005520A208A900A8005520A2081400A9005520A2084800A8005520A2081400B1 +:20DD9200480003FF4AFEEDFC3CF87EA07E904DF0F0004F014F01A9015622A20A1704BF1D04 +:20DDB2006D2BF100F100A880D560E24834E03AF815FEA4005400AA1051040A005500AA01E6 +:20DDD200050054005400AA1051040A005500AA010500AA005500A01051000A005502AA005B +:20DDF2000100AA005520A00041008A0055022A804100AD005220A00040008D0052012D80B8 +:20DE120040005500AA105000A0004500AA011540A000AA5444BAAE505EA0BA4454AAAA54DA +:20DE32005EA0000030300000000030300202000000000000505000000000505002020000CA +:20DE520020200A15657A0F101F007A65140B0A151F005500AA105000A2004500A8001040BA +:20DE7200A20055828A205100AA00550828005100A2004A1031844A00B5004A20A5004A0093 +:20DE92009500AB1050040B00540085005A0020844A005100AA40451028005500AA041400D1 +:20DEB2002800F000A980D460E34834E03BF814FE5EFC3A3F3E27EF517C73BD267D5FE79FAB +:20DED200F5DB5EFCE4FC02FE0FFEA4FC9AFEEDFFD7FF0A005500A01051040A005500AA01B1 +:20DEF2000500AA005520A000510454005400AA105104AA005520A0005104A4005400AA107A +:20DF12005104AD005220A000510454005400AA1051045500AA1050005104A4005400AA1069 +:20DF320051045400AA105000500454005400AA1050040000000000008080181801010000E0 +:20DF52000000404000000000000028280101000010106A75051A0F100A153B240B14051AE4 +:20DF72000A155500AA105000140028005520D50054005500AA105000AA0055082800A20007 +:20DF920055005500AA105000AA0055082800A200558055828A205100AA0055082800A10073 +:20DFB2005680A5005A20A5004A0085005A00528428005100AA40451028005500AA041400BF +:20DFD200AA00A8005520A2081400AA0055020A00AA00E4FC03FE0EFEA5FC9AFEEDFFD7FF0D +:20DFF2002EFE7C63F798EF517C73BD267D5FE79FF5DB2EFE55FF02FE0FFEA4FC9AFEEDFF80 +:20E01200D7FFA4004800A8005520A2081400AA0055025400A900A8005520A2081400AA00CE +:20E0320055020A00D400D4002A10D1040A00D5002A010A00A4005400AA1051040A0055003C +:20E05200AA010A0054005400AA1051040A005500AA01F40AAB55AA5445BBAA54F40AAB5540 +:20E0720054AA00008080080880801818000080801818202000000808000028280000000080 +:20E092002828352A1B040B14051A2A35150A0A15342B540054002A10D1040A0055002A0125 +:20E0B20085000A205000AA00550828002800D520240089225200A900560828005500A208B4 +:20E0D20054004A1031844A00B500A8005520A2081500A5005A20A4004A0085005A00208460 +:20E0F2004A0055020A001400A8005520A2081400AA0055020A001400A8005520A208A900E5 +:20E11200A80055020A001400A8005520A2084800A80055FF03FE0EFEA5FC9AFEEDFFD7FFBD +:20E132002EFE7C63F798C8FF527FB63F3F1D7F047E082EFE55FF03FF4BFEEDFC3CF87FA03A +:20E152007E900A001400A8005520A2081400AA00550205000A00D4002A10D1040A00D500D4 +:20E172002A0105000A005400AA1051040A005500AA01FA04F40AAB5544BAAA54F40AAA54F2 +:20E1920054AA01010000000030300202000000000000010100000000505002020000202023 +:20E1B20040400A0054002A10D104540054002A10D1041A002104DA0005001A012500DA2051 +:20E1D2005400A5005A20A9005420A3081400AB00540255020A00A90052005100AA404510F1 +:20E1F20028005520A20814004800A8005520A2081400BB064F014F01A9015622A20A170445 +:20E21200BF1D0A0034004F01A9015622A20A1704BF1D0A004800A8005520A2081400AA00E6 +:20E23200550205004800A8005520A2081400AA0055020500A4005400AA1051040A005500E1 +:20E25200AA01000010100000303000000000303002021A051B040B14657A0A15150A6A75C4 +:20E27200140BAA10AA0094008A0055022A804100AA000B00140044004400AB001440A100B8 +:20E292005400AA0055020A001400A8005520A20814006D2B3A3F3E27EF517C73BD267D5FBA +:20E2B200E79F04000A005400AA1050040A005400AA0000002020404000000000282801013C +:20E2D20000005520200041008A0055022A000A008A005A20A000400085005A012580800058 +:20E2F20085005500AA041400A8005520A2081400AA00AA0055020A00A8005520A2084800D1 +:20E31200A800F5DB7C63F798EF517C73BD267D5FE79F0A001500AA04540182005500AA40AE +:20E3320041000500A0008A0015001500AA0454018200FA0454AA7F81E41AE51B58A6A45AB6 +:20E352007F811010202000000808000028280000000005002A8041008A008A0055022A80E6 +:20E37200410055022A8041008A008A0055022A8041005A0020804A0084008A0055022A805F +:20E3920041002EFE55FF03FE0EFEA5FC9AFEEDFFD7FFD7FF2EFE55FF03FF4BFEECFC3DF8E4 +:20E3B2007EA095000A00A100420095004A04B44142005A00A440400080001A00A4025A0079 +:20E3D200800028280101000000005050020200002020AB005420A00040008B0054022B80EA +:20E3F20040007E08BB064F010000000000000000000082001500AA040000000000000000EF +:20E4120000005500AA404100000000000000000000000000000010100000303000000000EA +:20E432003030756A0A151F0000007070020200006060AB005420A0000000000000000000EA +:20E452000000AA0055020A0000000000000000000000000000004242000042420808000087 +:20E47200848408080000020200000B0B404000000404020200002020404000004242000088 +:20E4920020204040000010100000505002020000202002020000808000008282101000007E +:20E4B200010100000000101000001010424200002020D7FF2EFE55FF03FF4AFEEDFC3CF887 +:20E4D2007EA00101000040400FF056A90BF414EB0BF40101000040401EE1AC5317E828D711 +:20E4F20017E80000000042426E91AE5115EAAA55D7280808000002026E91AE5115EAAA557C +:20E51200D728404000001010AD52AE5115EAAA55D7280202000080806E91AE5115EAAA554F +:20E53200D728020200008080B74857A88A7555AAEB14010100004040B74857A88A7555AA4D +:20E55200EB147E904DF0F000F000A980D460E34834E03BF814FE5EFCE4FC03FE0EFEA5FCB6 +:20E572009AFE77F028FCBCF8C8F807FC1CFC4BF834FC5500AA04140028005100AA40451095 +:20E5920052005400AB04140028005000AB4044105200AA0055020A001400A8005520A20811 +:20E5B2004800EDFFD7FF2EFE55FF03FE0EFEA5FC9AFEDBFEAFFE5DFCABFE07FC1CFC4BF893 +:20E5D20034FC55009000500091005200AA4045102A005500AA04140091002200A200558037 +:20E5F2008A205100AA404510280052005100AA4045105000AB404410290052005100AA4080 +:20E612004510AA0055020A00A90052005100AA404510A8005520A20814004800A8005520BD +:20E63200A208EDFFD7FF2EFE55FF03FF4AFEEDFC3CF8DBFEAEFE5CFCAAFE07FE94FCDBF888 +:20E6520078F05000AA00550828005000A20055808A2028005500AA04140028005100AA40AE +:20E6720045107EA07E904DF0F000F000A980D460E348FD40FC209AE0E100E1005200A9C012 +:20E69200C6905400AA041500C400C600A10056818D205000AA005508280084004A00A50258 +:20E6B2001A405000AA0055082800090095004A0434815000AA005508280013002A00950875 +:20E6D20068025000AB0054082800270054002B11D10528005500AA0414004F01A901562201 +:20E6F200A20A28005500AA0414009F025303AD44451428005500AA0414003F04A6065B89CA +:20E712008B2928005500AA0414007F084D0CB61317521400AA0055020A00FF109A186D266F +:20E732002EA41400AA0055020A00FE203530DA4C5C491400AA0055020A00FC406A60B59816 +:20E75200B8921400AA0055020A00F880D4C06A30712434E03BF814FE5EFCE4FC03FE0EFE63 +:20E77200A5FC68C076F029FCBCF8C8F807FD1DFD4AF8D080EDE053F979F191F10FFA3BFBCB +:20E7920095F1A100DBC1A6F2F3E323E21EF577F72BE24200B7834DE5E7C747C43DEAEFEE38 +:20E7B20057C485016F079BCACE8F8F897BD4DFDCAF890B02DF0E36959D1F1F13F7A8BEB94B +:20E7D2005E137D5FE79FF5DB7C63F798EF517C73BD26FBBFCF3FEBB7F8C7EE31DEA3F8E75C +:20E7F2007B4DF67F9F7FD76FF08FDD63BC47F0CFF69BECFF3FFFAEDFE11FBAC7788FE09F97 +:20E81200ED37D9FF7EFF5DBFC23F758FF01FC03FDA6FB3FFFDFFBA7F857FEA1FE03F817FE2 +:20E83200B4DF66FFFBFF75FF0BFFD53FC07F03FF69BFCDFFF6FFEBFF17FFAA7F81FF07FF69 +:20E85200D27E9AFEEDFFD7FF2EFE55FF03FF4AFEEDFC35FDDBFEAFFF5DFDABFE07FF95FDF5 +:20E87200DAF86BFAB7FC5FFEBBFB57FC0EFF2AFBB5F1D7F56EF9BFFD77F6AFF91CFF55F7F3 +:20E892006BE3AFEBDCF37EFBEFEC5EF339FFAAEFD6C75FD7B9E7FDF6DFD8BDE672FF54DFD5 +:20E8B200AD8FBEAF73CFFAEDBEB17BCCE4FFA9BF5B1F3F1D7F047E08BB064F014F01A90189 +:20E8D20056227E3BFE09FC11760D9F029F025303AD44FC77FD12F922ED1B3F043F04A606FE +:20E8F2005B89F9EFFB25F344DA377F087F084D0CB613F3DFF74AE789B46FFF10FF109A182C +:20E912006D26E7BFEF94CF1269DEFE20FE203530DA4CCF7EDF289F24D3BCFC40FC406A6052 +:12E93200B5989EFCBF503F48A678F880F880D4C06A301A +:020000040001F9 +:20A23600000000000000000000000000000000000000000000000000000000000000000008 +:20A256000000000000000000000000000000000000000000000000000000000000000000E8 +:20A276000000000000000000000000000000000000000000000000000000000000000000C8 +:20A296000000000000000000000000000000000000000000000000000000000000000000A8 +:20A2B600000001020102010203030303030303040000000000000000000000000000000066 +:20A2D600000002020202020203030303030303050000000000000000000000000000000042 +:20A2F60000000202020202020606070706060606000000000000000000000000000000000A +:20A316000000020202020202060606060606060600000000000000000000000000000000EB +:20A3360008080A0A0A080A0A08080A0A0A08080808080808080808080808080808080008FF +:20A35600080808080808080808080A0A080808080808080000000000000000000000000843 +:20A37600080808080808080808090A0A0808080808080808080808080808080808080008CA +:20A39600080808080808080808090A0A0A08080808080808080800000000000000000008E8 +:20A3B600080808080808080808080A0A0A0808080808080808080808080808080808080881 +:20A3D6000808080808080808080A0A0A0A080808080808080808080808080808080808085F +:20A3F6000808080808080808080A0A0A020800080000080008000008000800080008080097 +:20A41600080008000800080008020A020A080800080008000000080808080808080808007E +:20A4360008000800080808080808020A020808080008000808080008000800080008080058 +:20A456000800080008080008000A020A020800080008000008000008000800080008080856 +:20A4760000080008000008000008020A020808080808080000000808080808080808080020 +:20A49600080008000808020808000A020A000000000008000000080808080808080808000E +:20A4B60002020202020A0202020A020A020A0A0A020A0A0A020202020202020202020800FA +:20A4D60002020202020A02020202020A0A0A0A0A020A0A0A020202020202020202020800DA +:20A4F60002020202020A02020202020A0A0A0A0A020A0A0A020202020202020202020008BA +:20A51600020A020A020A020A020A02020A020A020A0A020A020A020A020A020A020A000869 +:20A5360000080008000000000000000000000800080008080808000800080008000800089D +:20A5560000080008000800080008000800000800080008000800000800080008000800086D +:20A57600000800080000080808080808080008080808080808080000000000000000000835 +:20A59600000800080008000800080008000800080008000800080008000800080008000825 +:20A5B60000080008000800080008000800080000080008000800080008000800080000080D +:20A5D6000800080008000800080008000800080800080008000800080008000800080800DD +:20A5F6000008000800080008000800080008000008000800080008000800080008000008CD +:20A6160008000800080008000800080008000808000800080008000800080008000808009C +:20A63600000102030405060708090A0B0C0D0E000102030405060708090A0B0C0D0E000F23 +:20A65600101112131415161718191A1B1C1D1E101112131415161718191A1B1C1D1E101F03 +:20A67600202122232425262728292A2B2C2D2E2F303132333435363738392B3A3B3C3D3EE8 +:20A696003F404141414141414141414141414141414141414141414141414142434344457B +:20A6B60046474849484A484B4C4D4D4D4D4D4D4E4F504F5152535253525352545556000159 +:20A6D60046475757575859595A5B5B5B5B5B5B5C4343435D5E5E5E5E5E5E5E5F60611011F7 +:20A6F600626357575758646465666768666666696A6A6B6C6D6D5E5E5E5E5E6E6F6F2070EE +:20A71600717257575758737475767778767676797A7B7C7D7D7D7E7E7E7E7E7E7E7E3F7FB1 +:20A7360000010202030405060708090A0B0C0D0E0F10111213121415141514151415461631 +:20A756001718191A1B1C1C1D1E1F202122231E242526277E7E7E7E7E7E7E7E7E7E7E4616D4 +:20A7760028292A2B2C2D2E2F30313233343530363738393A3B3A3C3D3C3D3C3D3C3D623EF7 +:20A796003F40414243444445464748494A46464B4C4D4E4F4F4F43434343434343437150A5 +:20A7B60051522626535455565758595A5B5C5D5E5F4D6061616162626262626262620063CC +:20A7D600646566676668696A696B6C6D6E6F41707172737474747576757675767576177705 +:20A7F60078797A7A7A7B7C7C7C7D7E7F8080818141828283838384848484848484842885DE +:20A816008586868787888889898A8A8B8B6A698C8C8D8D8E8E8E8E8E8E8E8E8E8E8E3F8F4A +:20A836008F908F907A7A7A7B7C909191927C7C92939394949494959595959595959551968C +:20A85600969796979797989899999A9A9B9B9C9C9D9D9E8383838484848484848484649ED3 +:20A876009F9F9F9FA0A0A0A1A1A1A2A2A34444444444A38E8E8E8E8E8E8E8E8E8E8E78A46F +:20A89600A4A5A4A5A5A5A6A6A6A7A7A8A8A9A9A9A9A9A9AAAAAAAAAAAAAAAAAAAAAA85ABC2 +:20A8B6005757575757ABACACACACADADAEAEAEAEAFAFAFAF575757575757575757578FB001 +:20A8D6005757575757ABACACACACACB0AEAEAEAEAFAFAFAF5757575757575757575796B1D7 +:20A8F6005757575757ABACACACACACB0AEAEAEAEAFAFAFAF575757575757575757579FB1AE +:20A91600B2B2B3B3B4B4B5B5B5B5B5B6B6B7B6B7B6B7B8B8B9B9B9B9B9B9B9B9B9B9BABA4B +:20A93600BBBBBCBC8E8E8E8E8E8E8E8E8EBDBDBEBDBEBE8E8E8EBFBFBFBFBFBFBFBFBBBB8C +:20A95600C0C0C1C1C2C2C3C3C3C3C3C3C3C4C4C5C4C5C5C6C6C6C7C7C7C7C7C7C7C7C0C061 +:20A97600C8C8C9C98ECACACACACACACACACBCBCBCBCBCBCBCBCB7A7A7A7A7A7A7A7AC8C83E +:20A99600CCCCCDCDCECECFCFD0D0D1D1D2D2D3D3D4D4D5D5D6D6D7D7D8D8D9D9DADACCCC4F +:20A9B600DBDBDCDCDDDDDEDEDFDFE0E0E1E1E2DBDBDCDCDDDDDEDEDFDFE0E0E1E1E2DBDBBF +:20A9D600E2E3E3E4E4E5E5E6E6E7E7E8E8E9E9E2E3E3E4E4E5E5E6E6E7E7E8E8E9E9E2E3B0 +:20A9F600EAEAEBEBECECEDEDEEEEEFEFF0F0F1EAEAEBEBECECEDEDEEEEEFEFF0F0F1EAEA9F +:20AA1600F1F2F2F3F3F4F4F5F5F6F6F7F7F8F8F1F2F2F3F3F4F4F5F5F6F6F7F7F8F8F1F28F +:2023F200F9007C73BD267D5FE79FF5DB7C63F798EF510EFEA5FC9AFEEDFFD7FF2EFE55FF99 +:2024120003FEF8E77B4DFBBFCF3FEBB7F8C7EE31DEA31DFD4AF835FDDBFEAFFF5DFDABFE21 +:2024320007FDF0CFF69BF67F9F7FD76FF08FDD63BC473BFB95F16BFAB7FC5FFEBBFB57FC61 +:202452000FFAE09FED37ECFF3FFFAEDFE11FBAC7788F77F72BE2D7F56EF9BFFD77F6AFF901 +:202472001EF5C03FDA6FD9FF7EFF5DBFC23F758FF01FEFEE57C4AFEBDCF37EFBEFEC5EF364 +:202492003DEA817FB4DFB3FFFDFFBA7F857FEA1FE03FDFDCAF895FD7B9E7FDF6DFD8BDE647 +:2024B2007BD403FF69BF66FFFBFF75FF0BFFD53FC07FBEB95E13BEAF73CFFAEDBEB17BCC2D +:2024D200F7A807FFD27ECDFFF6FFEBFF17FFAA7F81FF0FFEA4FC9AFEEDFFD7FF2EFE55FF04 +:2024F20002FE7C73BD267D5FE79FF5DB7C63F798C8FF0EFEA5FC9AFEEDFFD7FF2EFE55FF0A +:2025120003FFF8E77B4DFBBFCF3FEBB7F8C7EE3190FF1DFD4AF835FDDBFEAFFF5DFDABFE11 +:2025320007FFF0CFF69BF67F9F7FD76FF08FDD6320FF3BFB95F16BFAB7FC5FFEBBFB57FC42 +:202552000EFFE09FED37ECFF3FFFAEDFE11FBAC740FF77F72BE2D7F56EF9BFFD77F6AFF9C4 +:202572001CFFC03FDA6FD9FF7EFF5DBFC23F758F80FFEFEE57C4AFEBDCF37EFBEFEC5EF3EB +:2025920039FF817FB4DFB3FFFDFFBA7F857FEA1F00FFDFDCAF895FD7B9E7FDF6DFD8BDE655 +:2025B20072FF03FF69BF66FFFBFF75FF0BFFD53F00FFBEB95E13BEAF73CFFAEDBEB17BCC4A +:2025D200E4FF07FFD27ECDFFF6FFEBFF17FFAA7F01FF0FFEA4FC9AFEEDFFD7FF2EFE55FF3F +:2025F20003FF527FB63F3F1D7F047E08BB064F014F014AFEEDFC3CF87EA07E904DF0F0007D +:20261200F100A4FF6D7F7E3BFE09FC11760DA400540095FDDAF878F0FD40FD209AE05400EC +:20263200540049FFDBFFFC77FD12F922ED1BA40054002AFBB5F1F1E0FB80FB4035C05400DA +:20265200540092FFB7FFF9EFFB25F344DA37A400540055F76BE3E3C1F700F7806B8054009A +:20267200540024FF6EFFF3DFF74AE789B46FA4005400AAEFD6C7C783EF00EF01D70054003C +:20269200540049FFDDFFE7BFEF94CF1269DEA400540054DFAD8F8F07DF01DF02AE01A4004E +:2026B200540092FFBBFFCF7EDF289F24D3BC54005400A9BF5B1F1F0EBF02BF045D03A40084 +:2026D200540025FF76FE9EFCBF503F48A67854005400527FB63F3F1D7F047E08BB06A40076 +:2026F20054004AFEEDFC3CF87EA07E904DF0A4005400A4FF6D7F7E3BFE09FC11760D54007B +:20271200540095FDDAF878F0FD40FD209AE0A400540049FFDBFFFC77FD12F922ED1B5400A0 +:2027320054002AFBB5F1F1E0FB80FB4035C0A400540092FFB7FFF9EFFB25F344DA37540009 +:20275200540055F76BE3E3C1F700F7806B80A400540024FF6EFFF3DFF74AE789B46F5400FA +:202772005400AAEFD6C7C783EF00EF01D700A400540049FFDDFFE7BFEF94CF1269DE5400FC +:20279200540092FFBBFFCF7EDF289F24D3BC7C404800A9BF5B1F1F0EBF02BF045D032700C4 +:2027B200A90025FF76FE9EFCBF503F48A678F8804800527FB63F3F1D7F047E08BB064F017C +:2027D200A9014BFEECFC3DF87EA07E904CF0F100A980A9015622A20A1704BF1D6D2B3A3F7F +:2027F2003E27A880D560E24834E03AF815FE5EFCE4FCAA1051040A005500AA0105000A0020 +:202812005400A800552022081400AA0055020A001400A8005520A2081400AA0055020A00F2 +:2028320014005622A20A1704BF1D6D2B3A3F3E27EF51D460E34834E03BF814FE5EFCE4FCAF +:2028520003FEEF517C73BD267D5FE79FF5DB7C63F79802FE0FFEA4FC9AFEEDFFD7FF2EFE80 +:2028720055FFB14F00000000000000000000000000000EF1000041410000414108080000DF +:2028920080800EF100004444000044440000000088880EF1000014140000141480800000B8 +:2028B20008087F7FC0C0DDC2DDC2DDC2DDC2DDC2DDC2FFFF0000DD22DD22DD22DD22DD22C5 +:2028D200DD22FEFF0702DB26DB26DA27DB26DB26DB26AA1051040A005500AA010500A40019 +:2028F2004800AA1051040A005500AA0105005400A900AA10510454005400AA1051040A0093 +:20291200D400AA105104A4005400AA1051040A00A400AA10510454005400AA1051040A003D +:202932005400A800552022084800A800552022081400A8005520A208A900A8005520A20810 +:202952001400A8005520A2084800A8005520A2081400010100004040000041410808000053 +:202972008080000000004444000044440000000088881010000004040000141480800000D5 +:202992000808DDC2DDC2DDC2DDC2E0DFFFFFC0BFFFFFDD22DD22DD22DD2200FFFFFF00FF67 +:2029B200FFFF032602260226022603FEFEFE00FCFEFED4002A10D1040A00D5002A0105007F +:2029D2000A005400AA1051040A005500AA0105000A004800A800552022081400AA005502BB +:2029F2000A00A900A8005520A2081400AA0055020A004800A8005520A2081400AA00550208 +:202A12000A00C8FF527FB63F3F1D7F047E08BB064F0103FF4BFEECFC3DF87EA07E904CF0C7 +:202A3200F1001010000004040000141480800000141470127012701270127012701270128D +:202A52007012AA00100000001000AA0001000000010000407F7F407F5F7F5F505F505F5084 +:202A720050500002FEFE02FEFAFAFA0AFA0AFA0A0A0E0E490E490E490E490E490E490E492D +:202A92000E49A8005520A2081400AA0055020A00A208A8005520A2081400AA0055020A0057 +:202AB20054D0D4002A10D1040A00D5002A01050014005400AA1051040A005500AA01050068 +:202AD20014001400A800552022081400AA0055020A001400A8005520A2081400AA00550266 +:202AF2000A004AFEEDFC3CF87EA07E904DF0F000F0004F01A9015622A20A1704BF1D6D2B5F +:202B12003A3FF100A880D560E24834E03AF815FE5EFC0000141400000000080890900000A7 +:202B32000404000014148080000008081010000004047012701278127D127C136C1B770F62 +:202B52007F00AA0000000000FF0000FF00FFFFFFFF007F5F507F507F507F5F70407F7F7F69 +:202B7200FFC0FAFE0AF60AF60AF6FA0602FEFEFEFF030E490E491E49BE493EC936D9EEF17D +:202B9200FE011400AA0055020A001400A8005520A20828009520620814002A0095024A00C4 +:202BB2009400A8005520A2081500AA0054020A001500AA40451028005500AA0414002800CE +:202BD20051005520A2081400AA0055020A001400A800A980D460E34834E03BF814FE5EFC5D +:202BF200E4FC1A05150A0B14657A0A15150A0A15746B0A005400AA105104A4005400AA104C +:202C12005104AA0055020A001400A800552055002A4055020A00480091005100AA40451088 +:202C320028005520A2081400A900A8005520A208140055FF03FF4AFEEDFC3CF87EA07E90BC +:202C52004DF04DF0F000F100A880D560E24834E03AF80A005800F100A880D560E24834E04C +:202C72003AF80500A900A8005520A2081400AA0055020500D400D4002A10D1040A00D500EB +:202C92002A01FB05AA54AB5544BAAA54F50BAA5454AA0000101000005050000000005050A1 +:202CB20002022A4022040A008A0055022A004100AA00AA00D5028A0085005A01258040009E +:202CD200A5005500AA04140028005100AA4045102800F000F000A980D460E34834E03BF897 +:202CF20014FE15FE5EFCE4FC02FE0FFEA4FC9AFEEDFF000000000000000080801818010100 +:202D120000001A05150A6B74051A0A15352A0A15140B5520A00041008A0055022A80940034 +:202D32008A00AB105000A0004400AB001440A0005400AA0055020A00A8005520A208A9009A +:202D5200A8005EFCE4FC03FE0EFEA5FC9AFEEDFFD7FFD7FF2EFE55FF02FE0FFEA4FC9AFEDC +:202D7200EDFF0A000000B400490095004A04B44142000500A000940029001500AA045401BA +:202D92008200000000008080080880801818000080801A05352A1E010B14150A2837150A06 +:202DB2001E0105002A80410094008A0055022A80410055022A80410094008A0055022A8031 +:202DD2004100AB10500045008A008B0054022B804000F5DB7C63F798C8FF527FB63F3F1DD3 +:202DF2007F0482001500AA04540182005500AA4041005500AA40410082001500AA04540188 +:202E1200820018180101000000003030020200000000352A0A151F001E01756A0817150AAF +:202E32001E012EFE55FF03FF4AFEEDFC3CF87EA07E907E904CF0F100000000000000000013 +:202E520000006A95F50A5EA100000A0A4040000004045A00A4404000000000000000000049 +:202E7200000040400000101000005050000000005050AA005520A0000000000000000000A1 +:202E920000005500AA041400000000000000000000004DF0F000F000A980D460E34834E050 +:202EB2003BF808080000020200000A0A404000000404020200000000000000004040000099 +:202ED200040400000000101060601010020200002020404000001010000050500202000050 +:202EF200212114FE5EFCE4FC03FE0EFEA5FC9AFEEDFFD7FF2EFE55FF03FE0EFEA5FC9AFE64 +:202F1200EDFF010100004040B04F56A9897655AAE817010100004040609FAC5312EDAA55B8 +:202F3200D02F010100004040AD52AE5115EAAA55D728080800000202AD52AE5115EAAA55F3 +:202F5200D7280000000010106E91AE5115EAAA55D7284040000010106E91AE5115EAAA55A9 +:202F7200D728020200008080AC53AF5014EBAB54D72801010000404056A957A88A7555AAC3 +:202F9200EB147E08BB064F014F01A9015622A20A1704BF1D6D2B3A3F3E27EF517C73BD26EC +:202FB2007D5F7E3BDA57747F7D4FDEA3F8E77B4DFBBF5500AA04140028005100AA404510C9 +:202FD20029005500AA04140028005100AA4045109100AA0055020A001400A8005520A20870 +:202FF200A900E79FF5DB7C63F798EF517C73BD267D5FCF3FEBB7F8C7EE31DEA3F8E77B4DAE +:20301200FBBF55005200510052005100AA40451028005500AA0414005200A500A20055805D +:203032008A205500AA04150090002300A30054808B205100AA404510280091005100AA4063 +:203052004510AA0055020A00480091005100AA404510A8005520A2081400A900A8005520F4 +:20307200A208E79FF5DB7C63F798C8FF527FB63F3F1DCF3FEBB7F8C7EE3190FFA4FF6D7F3B +:203092007E3B5400AA04150028005000AA4045102A005000AB00540828005000A300548027 +:2030B2008B207F047E08BB064F014F01A9015622A20AFE09FC11760D9F029F025303AD44FB +:2030D20045145500AA0414003F043F04A6065B898B295000AA00550828007F084D0CB6137C +:2030F20017525000AA0055082800FF109A186D262EA45000AA0055082800FE203530DA4C88 +:203112005C495000AA0055082800FC406A60B598B89228005500AA041400F880D4C06A30F7 +:20313200712428005500AA041400F000A980D460E34828005500AA041400E1005200A9C056 +:20315200C69028005500AA041400C200A50052818D201400AA0055020A0084004A00A5024D +:203172001A401400AA0055020A00090095004A0434811400AA0055020A0013002A0095082A +:2031920068021400AA0055020A00270054002B11D1051704BF1D6D2B3A3F3E27EF517C736B +:2031B200BD262E097E3BDA57747F7D4FDEA3F8E77B4D5C13FC77B4AFE9FFFB9FBC47F0CF89 +:2031D200F69BB927F9EF685FD2FFF73F788FE09FED37734EF3DFD1BFA5FFEE7FF01FC03FCA +:2031F200DA6FE69CE7BFA27F4BFFDCFFE03F817FB4DFCD38CE7E45FF97FFB9FFC07F03FF30 +:2032120069BF9A709DFC8AFF2FFE72FE81FF07FFD27E9AFEEDFFD7FF2EFE55FF03FE0EFEEE +:20323200A5FC35FDDBFEAFFF5DFDABFE07FD1DFD4AF86BFAB7FC5FFEBBFB57FC0FFA3BFB02 +:2032520095F1D7F56EF9BFFD77F6AFF91EF577F72BE2AFEBDCF37EFBEFEC5EF33DEAEFEE32 +:2032720057C45FD7B9E7FDF6DFD8BDE67BD4DFDCAF89BEAF73CFFAEDBEB17BCCF7A8BEB95A +:203292005E137D5FE79FF5DB7C63F798C8FF527FB63FFBBFCF3FEBB7F8C7EE3190FFA4FF04 +:2032B2006D7FF67F9F7FD76FF08FDD6320FF49FFDBFFECFF3FFFAEDFE11FBAC740FF92FF30 +:2032D200B7FFD9FF7EFF5DBFC23F758F80FF24FF6EFFB3FFFDFFBA7F857FEA1F00FF49FF66 +:2032F200DDFF66FFFBFF75FF0BFFD53F00FF92FFBBFFCDFFF6FFEBFF17FFAA7F01FF25FF97 +:2033120076FE3CF87EA07E904DF0F000F000A980D46078F0FD40FD209AE0E100E1005200FD +:20333200A9C0F1E0FB80FB4035C0C200C200A5005281E3C1F700F7806B80840084004A004B +:20335200A502C783EF00EF01D7000900090095004A048F07DF01DF02AE01130013002A0069 +:1233720095081F0EBF02BF045D032700270054002B11BD +:020000040002F8 +:0E429800202004F26303B25906366606366231 +:020000040000FA +:20805B00000000000000000000000000000000000000000000000000000000000000000005 +:20807B000000000000000000000000000000000000000000000000000000000000000000E5 +:20809B000000000000000000000000000000000000000000000000000000000000000000C5 +:2080BB000000000000000000000000000000000000000000000000000000000000000000A5 +:2080DB00000000000000000000000000000000000000000000000000000000000000000085 +:2080FB00000000000000000000000000000000000000000000000000000000000000000065 +:20811B00000000000000000000000000000000000000000000000000000000000000000044 +:20813B00000000000000000000000000000000000000000000000000000000000000000024 +:20815B00000000000000000000000000000000000000000000000000000000000000000004 +:20817B000000000000000000000000000000000000000000000000000000000000000000E4 +:20819B000000000000000000000000000000000001000000000000000202020202020202B3 +:2081BB0002020202000000000000000000000000000002020202020202020000000000008C +:2081DB00000000000000000000000000000000000000000000010001000000000000000181 +:2081FB0000000000000000000202020202020202020202020000000000000000000000004C +:20821B00000002020202020202020000000000000000000000000000000000000000000033 +:20823B00000000000000010001000303030300000000000000000000020202020202020205 +:20825B000202020200000000000000000000000000000202020202020202000000000000EB +:20827B000000000000000000000000000000000000000000000000000000030303030000D7 +:20829B000001000000000000020202020202020202020202000000000000000000000000AA +:2082BB00000002020202020202020000000000000000000000000000000000000000000093 +:2082DB0000000000030301010101030303030101010000000000000004040404040404044A +:2082FB00040404040000000000000000000000000000040404040404040400000000000033 +:20831B00000002020202020202020000000000000000000003030101010101010101010122 +:20833B000000000000000000040505040404040404050504000000000000000000000000EE +:20835B000000040404040405050400000000000000000202020202020202000000000000D0 +:20837B000000000001010101010101010101010100000000000000000404040405050505B2 +:20839B00040404040000000000000000000000000000040405050404040400000000000090 +:2083BB00000004040505040404040000000000000000000001010101010101010101010174 +:2083DB00000000000000000004040404040404040404040400000000000000000000000052 +:2083FB00000004040404040404040000000000000000040404040404040400000000000022 +:20841B0000000000000000000000030301010101000000000000000000000303010101012D +:20843B00000001000000000000000000000000000000030301010000000000000000000018 +:20845B000000030301010000000000000000000000000001000100000001030301010101EC +:20847B000001000000000000000003030101010100010000000000000000000000000000D5 +:20849B000000030301010000000000000000000000000303010100000000000000000000B1 +:2084BB00000001000100000000000100010101010100000000000000040404040101010185 +:2084DB0004040404000000000000000000000000000001010101000000000000000000006D +:2084FB00000001010101000000000000000000000000000000000000000000000101010159 +:20851B0000000000000000000404040401010101040404040000000000000000000000001C +:20853B00000001010101000000000000000000000000010101010000000000000000000018 +:20855B000000000000000000000000000101010100000000000000000606030301010101E6 +:20857B000303060600000000000000000000000000000101010100000000000000000000CA +:20859B000000010101010000000000000000000000000000000000000000000001010101B8 +:2085BB0000000000000000000606070601010101060706060000000000000000000000006A +:2085DB00000001010101000000000000000000000000010101010000000000000000000078 +:2085FB00000000000000000000000000010101010000000000000000060603030101010146 +:20861B00030306060000000000000000000000000000010101010000000000000000000029 +:20863B00000001010101000000000000000000000000000000000000000000000101010117 +:20865B000000000000000000060607060101010106070606000000000000000000000000C9 +:20867B000000010101010000000000000000000000000101010100000000000000000000D7 +:20869B000000000000000000000000000101010100000000000000000606030301010101A5 +:2086BB00030306060000000000000000000000000000010101010000000000000000000089 +:2086DB00000001010101000000000000000000000000000000000000000000000101010177 +:2086FB00000000000000000006060706010101010607060600000000000000000000000029 +:20871B00000001010101000000000000000000000000010101010000000000000000000036 +:20873B00000000000000000000000000010101010000000000000000040404040101010106 +:20875B000404040400000000000000000000000000000101010100000000000000000000EA +:20877B000000010101010000000000000000000000000000000000000000000001010101D6 +:20879B0000000000000000000404040401010101040404040000000000000000000000009A +:2087BB00000001010101000000000000000000000000010101010000000000000000000096 +:2087DB0001010101010101010101010101010101010101010101010101010101010101015E +:2087FB0001010101010101010101010101010101010101010101010101010101010101013E +:20881B0001010101010101010101010101010101010101010101010101010101010101011D +:20883B000101010101010101010101010101010101010101010101010101010101010101FD +:20885B000101010101010101010101010101010101010101010101010101010101010101DD +:20887B000101010101010101010101010101010101010101010101010101010101010101BD +:20889B0001010101010101010101010101010101010101010101010101010101010101019D +:2088BB0001010101010101010101010101010101010101010101010101010101010101017D +:2088DB0001010101010101010101010101010101010101010101010101010101010101015D +:2088FB0001010101010101010101010101010101010101010101010101010101010101013D +:20891B00000000000000000000000000010101010000000000000000000000000101010134 +:20893B000303030303030303030303030303010101010000000000000000000000000000EE +:20895B000000000000000000000000000000000000000000000000000000000001010101F8 +:20897B000000000000000000000000000101010103030303030303030303030303030101AC +:20899B000101000000000000000000000000000000000000000000000000000000000000BA +:2089BB00000000000000000000000000010101010000000000000000000000000101010194 +:2089DB0003010000000000000000000001030101010101000000000000000000000000006F +:2089FB00000000000000000000000000000000000000000000000000000000000101010158 +:208A1B00000000000000000100010000010101010301000100010000000000000103010129 +:208A3B00010100010000000000000000000000000000000000000000000000000000000018 +:208A5B000000000000000000000000000101010100000000000001000100000001010101F1 +:208A7B000301010001000000000000000103010101010000000000000000000000000000CD +:208A9B000000000000000000000000000000000000000000000000000000000001010101B7 +:208ABB0000000000000000000000000001010101030100000000000000000000010301018D +:208ADB00010100000000000000000000000000000000000000000000000000000000000079 +:208AFB00000000000000000000000000010101010000000000000000000000000101010153 +:208B1B0003010000000000000000000001030101010100000000000000000000000000002E +:208B3B00000000000000000000000000000000000000000000000000000000000101010116 +:208B5B000000000000000000000000000101010103010000000000000000000001030101EC +:208B7B000101000000000000000000000000000000000000000000000000000000000000D8 +:208B9B000000000000000000000000000101010100000000000000000000000001010101B2 +:208BBB0003010000000000000000000001030101010100000000000000000000000000008E +:208BDB00000000000000000000000000000000000000000000000000000000000101010176 +:208BFB0000000000000000000000000001010101030100000000000000000000010301014C +:208C1B00010100000000000000000000000000000000000000000000000000000000000037 +:208C3B00000000000000000000000000010101010000000000000000000000000101010111 +:208C5B000202020202020202000000000103010101010000000000000000000000000000E1 +:208C7B000000000000000000000000000000000000000000000000000000000001010101D5 +:208C9B0000000000000000000000000001010101020202020202020200010000010301019E +:208CBB00010100000000000000000000000000000000000000000000000000000000000097 +:208CDB00000000000000000000000000010101010000000000000000000000000101010171 +:208CFB00020202020202020200000100010301010101000002020202020202020000000030 +:208D1B0000000202020202020202000002020201000000000000000000000000010101011D +:208D3B000000000000000000000000000101010102020202020202020001000001030101FD +:208D5B000101000002020202020202020000000000000202020202020202000202020200CE +:208D7B000000000000000000000000000101010100000000000000000000000001010101D0 +:208D9B0004040404040404040000010001030101010100000404040405050404000000006D +:208DBB00000002020202020202020003040504030000000000000000000000000101010171 +:208DDB0000000000000000000000000001010101040404040405050400000000010301014C +:208DFB00010100000404040404040404000000000000020202020202020200030404040314 +:208E1B0000000000000000000000000001010101000000000000000000000000010101012F +:208E3B000404050504040404030303030303010101010000010003030101000000000000D6 +:208E5B000000040404040404040401010101000000000000000000000000000001010101CF +:208E7B0000000000000000000000000001010101040404040404040403030303030301019F +:208E9B00010100010000030301010000000000000000040404040405050401010101000086 +:208EBB0000000000000000000000000001010101000000000000000000000000010101018F +:208EDB0001010101010101010101010101010101010101010101010101010000000000005D +:208EFB0000000404050504040404010101010000000000000000000000000000010101012D +:208F1B00000000000000000000000000010101010101010101010101010101010101010122 +:208F3B000101010101010101010100000000000000000404040404040404010101010000E8 +:208F5B000000000000000000000000000101010100000000000000000000000001010101EE +:208F7B000101010101010101010101010101010101010000000000000000000000000000C4 +:208F9B000000000001010101010101010000000000000000000000000000000001010101AA +:208FBB00000000000000000000000000010101010101010101010101010101010101010182 +:208FDB0001010000000000000000000000000000000000000101010101010101000000006C +:208FFB0000000000000000000000000001010101000000000000000000000000010101014E +:20901B00000000000000000000000000000001010101000000000000000000000000000031 +:20903B0000000000010100000000000000000000000000000000000000000000010101010F +:20905B000000000000000000000000000101010100000001000100000000000000000101ED +:20907B000101000000000000000000000000000000000000010100000000000000000000D1 +:20909B000000000000000000000000000101010100000000000000000000000001010101AD +:2090BB0000000100010001000000000000000101010100000000000000000000000000008E +:2090DB00000000000101030300000000000000000000000000000000000000000101010169 +:2090FB0000000000000000000000000001010101000000000000000000000000000001014F +:20911B0001010000000000000000000000000000000000000101030300000000000000002A +:20913B0000000000000000000000000001010101000000000000000000000000010101010C +:20915B000000000000000000000000000000010101010000000000000000000000000000F0 +:20917B000000000001010000000000000000000000000000000000000000000001010101CE +:20919B000000000000000000000000000101010100000000000000010001000000000101AC +:2091BB00010100000000000000000000000000000000000001010000000000000000000090 +:2091DB0000000000000000000000000001010101000000000000000001000000010101016B +:2091FB0000000000000001000100010000000101010100000000000000000000000000004D +:20921B0000000000010100000000000000000000000000000000000000000000010101012D +:20923B0000000000000000010000000001010101000000000000000000000000000001010C +:20925B000101000000000000000000000000000000000000010100000000000000000000EF +:20927B000000000000000000000000000101010100000000000000000000000001010101CB +:20929B000000000000000000000000000000010101010000000000000000000000000000AF +:2092BB0000000000010100000000000000000000000000000000000000000000010101018D +:2092DB0000000000000000000000000001010101000000000000000000000000000001016D +:2092FB0001010000000000000000000000000000000000000101000000000000000000004F +:20931B0000000000000000000101010101010101010101010101010101010101010101011A +:20933B000101010101010101010101010101010101010101010101010101010101010101F2 +:20935B000101010101010000000000000000000000000000000000000101010101010101E4 +:20937B000101010101010101010101010101010101010101010101010101010101010101B2 +:20939B0001010101010101010101010101010101010101010101000000000000000000009C +:2093BB0000000000000000000101010101010101010101010101010101010101010101017A +:2093DB00010101010101010101010101010101010101010101010101010101010101010152 +:2093FB00010101010101000000000000000000000000000000000000010101010101010144 +:20941B00010101010101010101010101010101010101010101010101010101010101010111 +:20943B000101010101010101010101010101010101010101010100000000000000000000FB +:20945B000000000000000000010101010000000000000000000000000000000000000000ED +:20947B000000000000000000000000000000000000000000000000000000000000000000D1 +:20949B000000000000000000000000000000000000000000000000000101010100000000AD +:2094BB00000000000000000000000000000000000000000000000000000000000000000091 +:2094DB00000000000000000000000000000000000000000000000000000000000000000071 +:2094FB0000000000000000000101010100000000000000000000000000000000000000004D +:20951B00000000000000000000000000000000000000000000000000000000000000000030 +:20953B0000000000000000000000000000000000000000000000000001010101000000000C +:20955B000000000000000000000000000000000000000000000000000000000000000000F0 +:20957B000000000000000000000000000000000000000000000000000000000000000000D0 +:20959B000000000000000000010101010000000000000000000000000000000000000000AC +:2095BB00000000000000000000000000000000000000000000000000000000000000000090 +:2095DB0000000000000000000000000000000000000000000000000001010101000000006C +:2095FB00000000000000000000000000000000000000000000000000000000000000000050 +:20961B0000000000000000000000000000000000000000000000000000000000000000002F +:20963B0000000000000000000101010100000000000000000000000000000000000000000B +:20965B000000000000000000000000000000000000000000000000000000000000000000EF +:20967B000000000000000000000000000000000000000000000000000101010100000000CB +:20969B000000000000000000000000000000000000000000000000000000000000000000AF +:2096BB0000000000000000000000000000000000000000000000000000000000000000008F +:2096DB0000010001000100010001000100010001000100010001000100010001000100015F +:2096FB0000010001000100010001000100010001000100010001000100010001000100013F +:20971B000001000100010001000100010001000102030203020302030203020302030203FE +:20973B000203020302030203020302030203020302030203020302030203020302030203BE +:20975B0002030203020302030203020302030203020302030203020302030203020302039E +:20977B0002030203020302030203020302030203020302030203020302030203020302037E +:20979B0002030203020302030203020302030203020302030203020302030203020302035E +:2097BB0002030203020302030203020302030203040504050405040504050405040504051E +:2097DB000405040504050405040504050405040504050405040504050405040504050405DE +:2097FB000405040504050405040504050405040504050405040504050405040504050405BE +:20981B00000106060606060606060606060606060706000100010001080909090909090981 +:20983B000909090A0001000100010001000100010001080909090909090A00010001000196 +:20985B00000100010001000100010001000100010203060606070607060606060606060789 +:20987B0006060203020302030B0C0C0C0C0C0C0C0C0C0C0D02030203020302030203020304 +:20989B0002030B0C0C0C0C0C0C0D0203020302030203020302030203020302030203020311 +:2098BB00020306060606070607060E0F1011060606060203020302030B0C0C0C0C0C0C0C92 +:2098DB000C0C0C0D02030203020302030203020302030B0C0C0C0C0C0C0D020302030203AA +:2098FB00020302030203020302030203020302030405060606060606060612131415060692 +:20991B000607040504050405161717171717171717171718040504050405040504050405BA +:20993B000405161717171717171804050405040504050405040504050405040504050405E8 +:20995B0000010606191A1B1B1B1B1C1D1D1E1B1B07060001000100011F2020202020202087 +:20997B002020202100010001000100010001000100011F2020202020202100010001000141 +:20999B000001080909090909090A0001000100010203060622231B1B1B1B1B1B1B1B1B1BFC +:2099BB0006060203020302031F2424202020202020242421020302030203020302030203C3 +:2099DB0002031F202020202424210203020302030203161717171717171802030203020384 +:2099FB00020306061B1B1B1B1B1B1B1B1B1B1B1B06060203020302031F20202025262526C7 +:209A1B002020202102030203020302030203020302031F202526202020210203020302036D +:209A3B0002031F20252620202021020302030203040506061B1B1B1B1B1B1B1B1B1B1B1B93 +:209A5B00060604050405040527282828292A292A2828282B040504050405040504050405A6 +:209A7B0004052728292A2828282B04050405040504052728292A2828282B040504050405F9 +:209A9B00000106060606060606062C2D1B1B1B1B060600010001000106062C2D1B1B1B1BD5 +:209ABB000606070600010001000100010001000100012C2D1B1B00010001000100010001D7 +:209ADB0000012C2D1B1B00010001000100010001020306070607060606072E2F1B1B1B1BD5 +:209AFB00060702030203020306062E2F1B1B1B1B0607060602030203020302030203020323 +:209B1B0002032E2F1B1B0203020302030203020302032E2F1B1B02030203020302030203C8 +:209B3B000203070607060606060607061B1B1B1B0706020302030203303130311B1B1B1B10 +:209B5B003031303102030203020302030203020302031B1B1B1B0203020302030203020380 +:209B7B0002031B1B1B1B020302030203020302030405060606060606060606061B1B1B1B8F +:209B9B000606040504050405323332331B1B1B1B323332330405040504050405040504054D +:209BBB0004051B1B1B1B0405040504050405040504051B1B1B1B0405040504050405040546 +:209BDB000001000100010001000100011B1B1B1B0001000100010001343536371B1B1B1BB2 +:209BFB0038393A3B00010001000100010001000100011B1B1B1B00010001000100010001EC +:209C1B0000011B1B1B1B000100010001000100010203020302030203020302031B1B1B1B2D +:209C3B0002030203020302033C3D3E3F1B1B1B1B404142430203020302030203020302036F +:209C5B0002031B1B1B1B0203020302030203020302031B1B1B1B02030203020302030203D5 +:209C7B000203020302030203020302031B1B1B1B0203020302030203343536371B1B1B1BE9 +:209C9B0038393A3B02030203020302030203020302031B1B1B1B020302030203020302031B +:209CBB0002031B1B1B1B020302030203020302030405040504050405040504051B1B1B1B5D +:209CDB0004050405040504053C3D3E3F1B1B1B1B40414243040504050405040504050405A7 +:209CFB0004051B1B1B1B0405040504050405040504051B1B1B1B0405040504050405040505 +:209D1B000001000100010001000100011B1B1B1B0001000100010001343536371B1B1B1B70 +:209D3B0038393A3B00010001000100010001000100011B1B1B1B00010001000100010001AA +:209D5B0000011B1B1B1B000100010001000100010203020302030203020302031B1B1B1BEC +:209D7B0002030203020302033C3D3E3F1B1B1B1B404142430203020302030203020302032E +:209D9B0002031B1B1B1B0203020302030203020302031B1B1B1B0203020302030203020394 +:209DBB000203020302030203020302031B1B1B1B0203020302030203444544451B1B1B1B6C +:209DDB004445444502030203020302030203020302031B1B1B1B02030203020302030203AE +:209DFB0002031B1B1B1B020302030203020302030405040504050405040504051B1B1B1B1C +:209E1B000405040504050405464746471B1B1B1B464746470405040504050405040504052D +:209E3B0004051B1B1B1B0405040504050405040504051B1B1B1B04050405040504050405C3 +:209E5B001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B87 +:209E7B001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B67 +:209E9B001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B47 +:209EBB001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B27 +:209EDB001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B07 +:209EFB001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1BE7 +:209F1B001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1BC6 +:209F3B001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1BA6 +:209F5B001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B86 +:209F7B001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B66 +:209F9B000001000100010001000100011B1B1B1B0606000100010606060606061B1B1B1B96 +:209FBB0048484848484848484848484848481B1B1B1B494A00010001000100010001000191 +:209FDB00000100010001000100010001000100010203020302030203020302031B1B1B1BD4 +:209FFB000606020302030606060606061B1B1B1B4B4C4C4C4C4C4C4C4C4C4C4C4C4B1B1B44 +:20A01B001B1B4D4D020302030203020302030203020302030203020302030203020302030F +:20A03B000203020302030203020302031B1B1B1B0606020302030606060606061B1B1B1BD5 +:20A05B004B1B060606060606060606061B4B1B1B1B1B070602030203020302030203020346 +:20A07B00020302030203020302030203020302030405040504050405040504051B1B1B1BFB +:20A09B000606040504050607060706061B1B1B1B4B1B060706070606060606061B4E1B1BB2 +:20A0BB001B1B060704050405040504050405040504050405040504050405040504050405C4 +:20A0DB000001000100010001000100011B1B1B1B0001000100010706070606061B1B1B1B5E +:20A0FB004B1B070607060606060606061B4B1B1B1B1B0001000100010001000100010001C8 +:20A11B00000100010001000100010001000100010203020302030203020302031B1B1B1B92 +:20A13B000203020302030606060606061B1B1B1B4B1B060606060606060606061B4E1B1B24 +:20A15B001B1B02030203020302030203020302030203020302030203020302030203020363 +:20A17B000203020302030203020302031B1B1B1B0203020302030606060606061B1B1B1B9B +:20A19B004B1B060606060606060606061B4B1B1B1B1B02030203020302030203020302030D +:20A1BB00020302030203020302030203020302030405040504050405040504051B1B1B1BBA +:20A1DB000405040504050606060606061B1B1B1B4B1B060606060606060606061B4E1B1B78 +:20A1FB001B1B04050405040504050405040504050405040504050405040504050405040587 +:20A21B000001000100010001000100011B1B1B1B0001000100010606060606061B1B1B1B1E +:20A23B004B1B060606060606060606061B4B1B1B1B1B000100010001000100010001000188 +:20A25B00000100010001000100010001000100010203020302030203020302031B1B1B1B51 +:20A27B000203020302030606060606061B1B1B1B4B1B060606060606060606061B4E1B1BE3 +:20A29B001B1B02030203020302030203020302030203020302030203020302030203020322 +:20A2BB000203020302030203020302031B1B1B1B0203020302030606060606061B1B1B1B5A +:20A2DB00080909090909090A060606061B4B1B1B1B1B02030203020302030203020302030E +:20A2FB00020302030203020302030203020302030405040504050405040504051B1B1B1B79 +:20A31B000405040504050606060606061B1B1B1B0B0C0C0C0C0C0C0D060706061B4E1B1B5F +:20A33B001B1B04050405040504050405040504050405040504050405040504050405040545 +:20A35B000001000100010001000100011B1B1B1B0001000100010001000106061B1B1B1BF3 +:20A37B000B0C0C0C0C0C0C0D060607061B4B1B1B1B1B0001080909090909090A000100012C +:20A39B000001080909090909090A004F505051520203020302030203020302031B1B1B1B3D +:20A3BB000203020302030203020306061B1B1B1B1617171717171718060706061B4E1B1B81 +:20A3DB001B1B020316171717171717180203020302030B0C0C0C0C0C0C0D02535454555658 +:20A3FB000203020302030203020302031B1B1B1B0203020302030203020306061B1B1B1B27 +:20A41B001F20202020202021060607061B4B1B1B1B1B02031F20202025262021020302031C +:20A43B0002030B0C0C0C0C0C0C0D025758595A5B0405040504050405040504051B1B1B1B3B +:20A45B000405040504050405040506061B1B1B1B1F20202020242421060606061B4E1B1B7D +:20A47B001B1B040527282828292A282B0405040504051617171717171718045C5D5E5F6090 +:20A49B00000100010001000100010001616161610001000100010001000106061B1B1B1B9A +:20A4BB001F202526202020214848484848621B1B1B1B060607062C2D1B1B00010001000195 +:20A4DB0000011F202020202020211B1B1B1B00010203020302030203020302036161616151 +:20A4FB000203020302030203020306061B1B1B1B2728292A2828282B4C4C4C4C4C4C1B1B6D +:20A51B001B1B060706062E2F1B1B02030203020302031F202020202424211B1B1B1B0203B1 +:20A53B00020302030203020302030203616161610203020302030203020306061B1B1B1BCD +:20A55B001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B02030203020313 +:20A57B0002031F2025262020202163631B1B020304050405040504050405040561616161F5 +:20A59B000405040504050405040506061B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B4B +:20A5BB001B1B1B1B1B1B1B1B1B1B04050405040504052728292A2828282B63631B1B040504 +:20A5DB00000100010001000100010001646464640001000100010001000106061B1B1B1B4D +:20A5FB001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B000100010001000100010001000153 +:20A61B00000100011B1B1B1B1B1B65650001000102030203020302030203020366666666F9 +:20A63B000203020302030203020306061B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1BBE +:20A65B001B1B0203020302030203020302030203020302031B1B1B1B1B1B1B1B020302039A +:20A67B00020302030203020302030203666666660203020302030203020306061B1B1B1B78 +:20A69B0006060606060606060606060606061B1B1B1B0203020302030203020302030203BC +:20A6BB00020302031B1B000100010001020302030405040504050405040504056666666664 +:20A6DB000405040504050405040506061B1B1B1B06060607060706060606060606061B1B2E +:20A6FB001B1B0405040504050405040504050405040504051B1B6768676867680405040503 +:20A71B00000100010001000100010001696969690001000100010001060606061B1B1B1BEC +:20A73B0006060706070607060606060606061B1B1B1B000100010001000100010001000134 +:20A75B00000100011B1B2C2D00010001000100010203020302030203020302036A6A6A6A83 +:20A77B000203020302030203060606061B1B1B1B06060606060606060606060606061B1B9C +:20A79B001B1B0203020302030203020302030203020302031B1B2E2F020302030203020394 +:20A7BB000203020302030203020302036A6A6A6A0203020302030203060606061B1B1B1B20 +:20A7DB0006060606060606060606060606061B1B1B1B02030203020302030203020302037B +:20A7FB00020302031B1B060602030203020302030405040504050405040504056A6A6A6A00 +:20A81B000405040504050405060606061B1B1B1B06060606060606070607060606061B1BE9 +:20A83B001B1B0405040504050405040504050405040504051B1B0606040504050405040510 +:20A85B000001000100010001000100016A6A6A6A0001000100010606070606061B1B1B1B9B +:20A87B0006060606060607060706070606061B1B1B1B0001000100010001000100010001F3 +:20A89B00000100011B1B000100010001000100010203020302030203020302036B6B6363A6 +:20A8BB000203020302030607060606061B1B1B1B06060606060606060606060606061B1B53 +:20A8DB001B1B0203020302030203020302030203020302031B1B02030203020302030203AB +:20A8FB000203020302030203020302036C6C63630203020302030606060606061B1B1B1BE2 +:20A91B0006060606060606060606060606061B1B1B1B020302030203020302030203020339 +:20A93B00020302031B1B020302030203020302030405040504050405040504056D6D6363CD +:20A95B000405040504050606060606061B1B1B1B06060606060606060606060606061B1BA7 +:20A97B001B1B0405040504050405040504050405040504051B1B04050405040504050405D2 +:20A99B0000010001000100011B1B1B1B1B1B63631B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B80 +:20A9BB001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1C +:20A9DB001B1B1B1B1B1B0001000100010001000102030203020302031B1B1B1B1B1B6E6E23 +:20A9FB001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1BDC +:20AA1B001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B02030203020302030203B0 +:20AA3B0002030203020302031B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B5F +:20AA5B001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B7B +:20AA7B001B1B1B1B1B1B0203020302030203020304050405040504051B1B1B1B1B1B1B1B04 +:20AA9B001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B3B +:20AABB001B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B04050405040504050405FC +:20AADB0000010001000100011B1B1B1B0001000100010001000100010001000100010001E1 +:20AAFB0000010001000100010001000100010001000100010001000100010001000100012B +:20AB1B000001000100010001000100010001000102030203020302031B1B1B1B0203020388 +:20AB3B000203020302030203020302030203020302030203020302030203020302030203AA +:20AB5B0002030203020302030203020302030203020302030203020302030203020302038A +:20AB7B0002030203020302031B1B1B1B020302030203020302030203020302030203020308 +:20AB9B0002030203020302030203020302030203020302030203020302030203020302034A +:20ABBB000203020302030203020302030203020304050405040504051B1B1B1B04050405B0 +:20ABDB000405040504050405040504050405040504050405040504050405040504050405CA +:20ABFB000405040504050405040504050405040504050405040504050405040504050405AA +:20AC1B0000010001000100011B1B1B1B00010001000100010001000100010001000100019F +:20AC3B000001000100010001000100010001000100010001000100010001000100010001E9 +:20AC5B000001000100010001000100010001000102030203020302031B1B1B1B0203020347 +:20AC7B00020302030203020302030203020302030203020302030203020302030203020369 +:20AC9B00020302030203020302030203020302030203020302030203020302030203020349 +:20ACBB0002030203020302031B1B1B1B0203020302030203020302030203020302030203C7 +:20ACDB00020302030203020302030203020302030203020302030203020302030203020309 +:20ACFB000203020302030203020302030203020304050405040504051B1B1B1B040504056F +:20AD1B00040504050405040504050405040504050405040504050405040504050405040588 +:20AD3B00040504050405040504050405040504050405040504050405040504050405040568 +:020000040001F9 +:20AA36006F00A9015622A20A1704BF1D6D2B3A3F3E27A880D560E24834E03AF815FE5EFC1C +:20AA5600E4FCEF517C73BD267D5FE79FF5DB7C63F79802FE0FFEA4FC9AFEEDFFD7FF2EFE1B +:20AA760055FFC8FF527FB63F3F1D7F047E08BB064F0103FF4BFEECFC3DF87EA07E904CF099 +:20AA9600F100A8005520A2081400AA0055020A001400AE0C5F12BF2D7F6DFEB2FDBCFA4807 +:20AAB60075307F7FC0C0DDC2DDC2DDC2DDC2DDC2DDC2FFFF0000DD22DD22DD22DD22DD22AA +:20AAD600DD22FEFE0703DB27DB27DB27DB27DB27DB27DDC2DDC2DDC2DDC2DDC2DDC2DDC2F6 +:20AAF600DDC2DD22DD22DD22DD22DD22DD22DD22DD22DB27DB27DB27DB27DB27DB27DB279B +:20AB1600DB27FFFF8080FFFF8080FFFF8080FFFF4878FFFF0000FFFF0000FFFF0000FFFF6D +:20AB3600243CFFFF0000FFFF0000FFFF0F00FFFF243CFFFF3F01FFFFFF01FFFFFF01FFFF00 +:20AB5600121EFFFF8080FFFF8080FFFF8080FFFF8780FFFF0000FFFF0700FFFF7F00FFFF32 +:20AB7600FF00FFFF7F00FFFFFF00FFFFFF00FFFFFF00FFFFFF01FFFFFF01FFFFFF01FFFF54 +:20AB9600FF01DDC2DDC2DDC2DDC2E0DFFFFFC0BFFFFFDD22DD22DD22DD2200FFFFFF00FFF1 +:20ABB600FFFFDB27DB27DB27DB2703FFFFFF03FDFFFF0707581827200827D04F534F674F10 +:20ABD6006747C0C03130C80820C814E495E4C4ECC6CC00000041000800000080000100009B +:20ABF6000040FFFFFFFF485F485F787C010000004000FFFFFFFF00FF00FF00000100000085 +:20AC16004000FFFFFFFF12F612F61E3E0100000040007012701270127012701270127012A7 +:20AC36007012AA00100000001000AA000100000001000E480E480E480E480E480E480E48AC +:20AC56000E4878407F403F203F209F18070700004000271CE71CEF18CF38BE70F9C0000013 +:20AC76004000FFFF8181B781B781B781B781B781FFFF00407F7F407F5F7F5F505F505F5080 +:20AC960050500002FEFE02FEFAFAFA0AFA0AFA0A0A0E7012701278127D127C136C1B770F2F +:20ACB6007F00AA0000000000FF0000FF00FFFFFFFF007F5F507F507F507F5F70407F7F7F84 +:20ACD600FFC0FAFE0AF60AF60AF6FA0602FEFEFEFF030E480E481E48BE483EC836D8EEF09F +:20ACF600FE0000003F7F0080BFBFBFA0A0ADA0A5A0A00000FCFE0001FDFDFD0505150555E8 +:20AD16000505A0BFA0BFE0A0FFBFE0A0E0BF40FF000005FD05FD0705FFFD070507FD02FF9C +:20AD3600000000007E7EFF81FF83CCBCD3B364F7AF2800007E7EFF81FFC1313FD9CF36EF46 +:20AD5600FE146D28A828382A21180A044201A84040005D141C14943C540802048600F80001 +:20AD76000000FF00BF41FE0EF21E64BCE43CC47CC47CFFFE213F417F417F417F417F417FC5 +:20AD9600213F00004100FFFFFFFFFF0000FF8000800000004100FCFCFEFAFE0A0FFA0E0AA8 +:20ADB6000E0A000041003F3F7F5FFF50705F7050705000004100FFFFFFFFFF0000FF0100EE +:20ADD6000100FF7F84FC82FE82FE82FE82FE82FE84FCFF00BEC177784F78273C263D233E03 +:20ADF600233EC47CC27EC27ECD7F70BFE03FFF1FBF47213F7F7FD1D19191FFFF81FFFFFFC0 +:20AE1600FFE0800000FF8000FFFFFF00FF00FFFF47070B0EFAFF0B0EFBFE03FE02FFFFFCD5 +:20AE3600FFE0D070DF7FD070DF7F40FFC07FFF3FBF47010000FF0100FFFFFF00FF00FFFF24 +:20AE5600E0E084FCFEFE8B8B8989FFFF81FFFFFFBF47233E427F437EB3FE0FFC06FDFFF85D +:20AE7600FFE003030C0C13132434AA286DAAAA283828C0C03030D8C8342CBE145D141E14D1 +:20AE9600943C25187E7EFF81FF81C1BFC1BF7E7E000054087E7EFF81FF81C1BFC1BF7F7F41 +:20AEB6000000383844444444447CC7FF1C0000FFFFFFA900A8005520A2081400AA005502D8 +:20AED6000A004800A8005520A2081400AA0055020A0044464445447E645D445E545F547F66 +:20AEF6005C7F744C744C744C744C386C003E00FF000F1400A8005520A2081400AA00550281 +:20AF16000A004446C445447E645D445ED45F547F5C7FBFBFE060E16061E061E061E061E075 +:20AF3600E1E0FFFF0000EE11EE11EE11EE11EE11EE11FFFF01007689768976897689768948 +:20AF56007689BFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6EE16EE1EEE1EEE1F0EFFFFF60DF14 +:20AF76007FFFEE11EE11EE11EE1100FFFFFF00FFFFFF768976897689768900FFFFFF00FF4F +:20AF9600FFFFC2FECFFEE4FCDAFEEDFFD7FF6E7ED5FFFEF2EEE2EEE2EEE2EEE2EEE2EEE206 +:20AFB600EEE23F403F7F3F603F6F3868386838683F680001FFFF01FFFDFDFD05FD05FD059B +:20AFD600050783120312031203128312431203124312BF3EBE3FBF3CBF3EBF3FBF3FBF3E3C +:20AFF600BF3FEEE2EEE2EFE2EFE2AFE28FE1EFE00FE03F6F287F287FA87FAF78A07FFFFFD5 +:20B01600FF20FDFF05FB05FB05FBFD0301FFFFFFFF01831203120712EF120FF20DF6FBFC42 +:20B03600FF00BF3FBE3FBF3CBA3DA13E913EB33C8E310000004000000041000800000080A9 +:20B0560000017C7E44454446447DC7FF1C0000FFFFFF004000000041000800000080000122 +:20B076000000000000400000000000400000004100080040004100080000008000010000E7 +:20B09600004000000080000100000040000000410008EF517C73B63F3F1D7F047E08BB0606 +:20B0B6004F0102FE0FFEECFC3DF87EA07E904CF0F1000000008000010000004000000040A6 +:20B0D6000000004100080000008000010000004000000040004100080000000100000000C6 +:20B0F6000041000000800001004000000008000000800000004000410008008000010000A6 +:12B116000000004000000008000000800001000000401E +:020000040002F8 +:0E42A600504806366A00000002DB56025B40FC +:20136E00000000000000000000000000000000000000000000000000000101010101000159 +:20138E00010101000000000000000000000101010101010101010100000000000000000032 +:2013AE00000000000000000000000000000000000000000001010101010101010101010113 +:2013CE000000000000000000000000000000000000000000000000000000000001010101FB +:2013EE000101010100000000000000000000000000000000000000000000000000000000DB +:20140E000000000001010101010101010000000000000000000000000000000000000000B6 +:20142E00000000000000000000000000010101010101010101010101000000000000000092 +:20144E00000000000000000000000000000000000000000001010101010101010101010172 +:20146E0000000000000000000000000000000000000000000000000000000000000000005E +:20148E0000000000000000000000000000000000000000000000000000000000000000003E +:2014AE000000000000000000000000000000000000000000020304030303030303030404F8 +:2014CE000404040404030202000101010101010101010101010101010101010203040505BE +:2014EE0005060708090A050B0C090A050505050D030E0505050F0F1011111213141414157B +:20150E001515161703180505050505191A1A1B05050505050505051C030505051D1E1F20FA +:20152E0021222324252627282905050D03050505050505050505052A2B2C2C2D2E05050DE5 +:20154E00030505052F30313233343536370505380404040D0305050505050505050505050B +:20156E00050505393A3A3A0D030505053B3C3D3E3F404142434405050505050D0305454614 +:20158E004715151515484905050505050505050D0305194A4B4C4D4E4F50510852535455F9 +:2015AE001B05050D030505055656565657565805050505050505050D03050505595A5B5CCB +:2015CE005D5E5F60616263640505050D030505656666666666670505050505050505050DCC +:2015EE000305056869696969696A0505050505050505050D030505056B6B6B6B6B6B6C05B2 +:20160E00050505050505050D036D056E66666666666F0505050505050505050D707172733C +:10162E007474747474757272727272727276727776 +:020000040001F9 +:2054E9007800C03FBF7F7FC07FDF5FF07FD05FF05FF000FFFFFFFF00FFFFFF00FF00FF001E +:20550900FF0003FCFDFEFE03FEFBFA0FFE0BFA0FFA0F5FF05FF05FF05FF05FF05FF05FF042 +:205529005FF0FF00FF00FF00FF00FF00FF00FF00FF0000000000000000000000000000001B +:2055490000000000003C00420042004A0044003A0000000000420042004200420042003C34 +:2055690000000000007E0040007C00400040007E00000000003E0040003C00020042003CB0 +:2055890000000000007C001000100010001000100000000000400040004000400040007E78 +:2055A90000000000007C0010001000100010007C0000FA0FFA0FFA0FFA0FFA0FFA0FFA0F6B +:2055C900FA0FFF00FF00FF000000000000000000000000FF000000000000000000000000BD +:2055E900000000FF000000000000000000003F003F0000FF00000000000000000000FF0027 +:20560900FF0000FF000000000000000000008000800000FF0000010001000100010001007F +:20562900010000FF0000FF00FF00FF00FF00FF00FF0000000000FF00FF00FF00FF00FF006C +:20564900FF0000000000FE00FE00FE00FE00FE00FE00FA0FFA0F7A0F7A0F7A0F7A0F7A0F8F +:205669007A0F000000000000000000000000FF00FF003F003F003F003F003F003F00000020 +:205689000000FF00FF00FF00FF00FF00FF0000000000800080008000800080008000000007 +:2056A90000007A0F7A0F7A0F7A0F7A0FFA0FFA0FFA0F0000027C021102110211021100113E +:2056C9000000000004F2040A040A04FA040A040B000000000804080408050807080408F458 +:2056E900000000003E413E813E013E013E813E4100000000040B0408040804680498040B69 +:205709000000000010EF108210821082108210E20000000043A44324433C5B24432443242D +:2057290000000000C03FC020C03EC020C020C03F3F000000007E8140817C81408140817EC8 +:20574900FF000000008B048A048B045204520423FF00000000F7080408E70804080408F7BE +:20576900FF00000003E0030003C00300030003E0E0000000FC00FC00FC00FC00FC00FC00C7 +:20578900FC003F000000000000000000000000000000FF00000000000000000000003F0087 +:2057A9003F00FF0000000000000000000000FF00FF00E00000000000000000000000FF00C5 +:2057C900FF00000000000000000000000000E000E0007F00007E00400040007C0040804008 +:2057E900FF00FF0000FA002300220022002200FAFF00FF0008170814089408540834081799 +:20580900FF00FF0000C1002100210021002100C1FF00FF0000140024004400C40024001306 +:205829008000FF000028002C002B0028002800C80000FF00004F00D00050005F00500050DC +:205849000000FF007F007F807F807F807F807F803F00800080008000800080008000800007 +:2058690080000F000F000F000F000F000F000F000F000F0000000000000000000000000018 +:205889000000FF0000000000000000000000000000000000007E00400040007C0040004006 +:2058A9007F00000000FA002300220022002200FAFF00000008170814089408540834081756 +:2058C900FF0000001EC11E201E201E201E201EC0FF00000000F400440047034400440044BE +:2058E900FF00000040BF40A040BE40A040A040BFFF000000F008F009F00AF00EF009F0082B +:20590900E000000000BF0020003E0020002000BF0000000045442928111011101110111024 +:2059290000000000F000F000F000F000F000F00000000000000000000000000000000000BE +:205949003F000000000000000000000000000000FF00400040007F007F007F007F007F0005 +:205969007F0000000000FF00FF00FF00FF00FF003F0000000000F000F000F000F000F000B5 +:20598900F200FF00FF00FF00FF00FF00FF00000001004000003C0042004000400042003C55 +:2059A900000000000897089408F76894089408970000000000E7000800C80008000800E7BF +:2059C90000000000009100520014001C0052009100000000000F0008000F00080008000F83 +:2059E90001000000008F00500090005F0050009000000000001F00A0009E008100A1009ED2 +:205A090000000000008500CD00B50085008500850000000000FA000300F20002000200FAFA +:205A29000000000000170011009100510031001100000F000FC00F000F000F000F000000F7 +:205A49000000000000000000FF00FF00FF00FF00FF00010001000000FF00FF00FF00FF0044 +:205A6900FF0000000000000080008000800080000000FF00007E00400040007C0040004025 +:205A89000000FF0000FA002300220022002200FA0000FF00081708140894085408340817F4 +:205AA9000000FF001EC100200020002000201EC00000FF0000F40044004703440044004454 +:205AC9000000FF0040BF40A040BE40A040A040BF00008000C007C0080008000900080007F3 +:205AE90000000000208F2050201020D0205020CF00000000001E00A100A100A100A1001E3F +:205B090000000000007C0042007C00420042007C0000000000FD008100F90081008100FDCC +:205B29000000000000F00008000800F0000800080000000000000000000007000700070047 +:205B490007000000000000000000FF00FF00FF00FF000000000000000000FE00FE00FE003F +:205B6900FE0007000700000000000000000000000000FF00FF000000000000000000000012 +:205B89000000FE00FE000000000000000000000000000000FF00FF00FF00FF000000000004 +:205BA90000000000C000C000C000C000000000000000FE00FE00FE00FE00FE00FE00FE00EA +:205BC900FE0000000000000000003F003F003F003F000000000000000000F000F000F000F2 +:205BE900F000D070F050D070F050DF7FC07F7F3F3F00FE00FE00FE00FE00FFFF00FFFFFF1F +:205C090000FF0000000000000000FFFF00FFFFFFFF003F003F0000000000FFFF00FFFFFF09 +:205C290000FFFF00FF0000000000FFFF00FFFFFF00FFF000F00000000000FFFF00FFFFFF89 +:205C490000FF1F001F001F001F00FFFF00FFFFFF00FF0B0E0F0A0B0E0F0AFBFE03FEFEFC6E +:025C6900FC003D +:020000040002F8 +:0E42B400141205E95400000008D654086E5399 +:20163E0000000000000000000000010102020101000000000000000001010000030301017A +:20165E0002020101000000000000040401010101030301010000000000000000000004044A +:20167E00010101010101010100000000000000000000000000000000000000000000000044 +:20169E0000000000000000000000000000000000000000000000000000000000000000002C +:2016BE0000000000000000000000000000000000000000000000000000000000000000000C +:2016DE000000000000000000000000000000000000000000050500000000000000000000E2 +:2016FE000000000000000000010100000000000000000000000000000000000006060000BE +:20171E0000000000000000000000000000000000070600000000000000000000000000009E +:20173E0000000000000000000000000000000000000000000000000000000000000000008B +:20175E0000000000000000000000000000000000000000000000000000000000000000006B +:20177E0000000000000000000000000000000000000000000000000000000000000000004B +:20179E00000000000000000000000000000000000000010203040506010201020000000010 +:2017BE0007080000090A0B0C0D0E0F100B0C111213131415161718191A1B1112131313130D +:2017DE0011121C1D13131E1F2021222324252627131313132425282913132A2B2C2D2D2EFB +:2017FE0013131313131313131313131313131313131313131313131313131313131313136B +:20181E0013131313131313131313131313131313131313131313131313131313131313134A +:20183E00131313131313131313131313131313132F30303113131313131313133233131377 +:20185E001313131334353536131313131313131337381313131313132C2D2D2E13131313D1 +:20187E0013131313393A1313131313131313131313131313131313133B3C1313131313134C +:20189E001313131313131313131313133D3E13131313131313131313131313131313131375 +:2018BE001313131313131313131313131313131313131313131313131313131313131313AA +:2018DE00131313131313131313131313131313131313131313131313131313133F3F3F3FDA +:1018FE003F3F3F3F3F3F3F3F3F3F3F3F3F3F3F3FEA +:020000040001F9 +:20B128004000817F817F916F916F817F89778977817FFFFF8080808080808080808080FF4A +:20B14800FF80FFFF0101010101010101010101FFFF01000064407800700870087408631C59 +:20B16800403F000042020040608080204438827C00D6FFFFFFFFFFFFD5FFAAFFD5FFFFFFAB +:20B1880083FCFFFFFFFFFFFF55FFABFF55FFFFFFFF019F7FA060A060A060BF60BF6FF9EB8F +:20B1A800BFAFF9FF050705070507FD07FDF7FFF7FDF5FFFFE0DFFFFFBF80BF80FFFFBFFF28 +:20B1C800FFE0FFFF03FFFFFFFD03FD03FFFFFFFFFF07C0BFFFBFFFAAFAAAEAAAEFAFFFBF0E +:20B1E800C0BF03FDFFFDFF95FF9597959F9DFFFD03FD0056104E422467183F401F2047584A +:20B208000000104E4224241840800040C000F202000087F88FF0FFFF808080808080808076 +:20B22800FFFFFF01FF01FFFF0301030103010301FFFFC080FFBFE4BFF6ADEDA4EDA4FFBFD8 +:20B24800C0800301FFFD87FDFF85BF858F85FFFD0301FF0000000000FF00FF000000000049 +:20B26800FF00F3734E4E2642F926CB7926317653DC7F5D5CB5E667476919D502AA165D8F78 +:20B288007BCEBFAFBFAFBFA0A0BFBFA0A0BF9F9F8080FFF5FFF5FF05F7FDFF0507FDFDF9E9 +:20B2A8000101FFFFFF00FF01FE06FBF9EEE6DC98FFFFFFFFED67BD9BFD63FFFF070307032D +:20B2C800FFFFF3E0F3E0FFE0FFE0FFE0FFFFFFFF7FFFFF07FF07FF07FF07FF07FFFFE7E3C5 +:20B2E800FEFFC0BFFFBFFFBFE9A9E9A9FFBFC0BFFFFF03FDFFFDFFFDFFFDFF85FFFD03FD7B +:20B30800FFFFBEE167627D7EA2FCD84F6F5F7D7F131F3DF9D33DF74F4CE6E6FEFFFD99FFCD +:20B32800CFFF9FFFE0EAB0AFA0AABFA0BFFF80FFFF7FF9FF07A705F70517FD07FDFF01FF4E +:20B34800FFFE8080BF99A7ADA7BCBF99FF80FFFFFF0007037D73FF71FD03FB57F30FFEFF4A +:20B36800FC03FFFFC181FF81FD83FD83FF81C1BFFFFFFFFF8381FF81BFC1BFC1FF8183FD86 +:20B38800FFFFFFBFE3A1E7A1EFA1FFA1FFFFC0807F7FFFFD8F859F85BF85FF85FFFF030173 +:20B3A800FEFEFFFFC080BC81C0BFFFFFC080BC81FFFFFFFF03017D8301FFFFFF03017D8312 +:20B3C800FFFFEF372738111CF71FF31C090C0707FF00F7ECE41C08F8EBFC09FE11FEE2FCB0 +:20B3E800FF0080FFFF7FE75CC75C9B4457387C00FF0000FFFFFFFF00FF00FF00FF00000001 +:20B40800FF0001FFFFFEF32EEF22CD22EA1C3E00FF00FFFFC0C0BF80BF80BF80BF80BF800B +:20B42800BF80FFFF0000FF00FF00FF00FF00FF00FF00FFFF0303FD03FD03FD03FD03FD03C9 +:20B44800FD0300FFFF00FF0000FFFFFF9F9F9F98FFFF00FFFF00FF0000FFFFFFF9F9F90989 +:20B46800FFFFBF80BF80BF80BF80BF80BF80C0FFFFFFFF00FF00FF00FF00FF00FF0000FF96 +:20B48800FFFFFD03FD03FD03FD03FD03FD0303FFFFFFD0BF9FFFF8F0C8F0DFE0A0C0A0C05A +:20B4A800A7C00DFBF9FF1F0F130FFB0705030503ED0398E0A0C0CC80D28CD28CCC80C1805E +:20B4C800C180110F6907650305030503CD0325C325C380C080D880D980C0F1F09F9F9F90FC +:20B4E800FFFFC5031D031D030503CF0FF9F9F909FFFFBFFFFFFFFFFFFFFFFF0000000000AF +:20B50800FF00FBFFFFFFFFFFFFFFFF0000000000FF00FF00FF0000000000FF00FF00000036 +:02B52800000021 +:020000040002F8 +:0E42C200141206287100000008A657083E5688 +:20190E000000000000000000000000000000000000000000000000000000000000000000B9 +:20192E00000000000000000000000000000000000000000000000000000000000000000198 +:20194E0002030405060700030102030400000000000005060703000102030003040506071D +:20196E00000000000000010203030405060607030001020300000000000405060700010212 +:20198E000304050607000102030405000006070001020304050607000102030405060700CC +:2019AE00000000000000010000000000000000000000000000000000000000000000000018 +:2019CE000000000000000000000000000000000000000000000000000000000000000000F9 +:2019EE000000000000000000000000000000000000000000000000000000000000000000D9 +:201A0E000000000000000000000000000000000000000000000000000000000000000003B5 +:201A2E00030303030300000000000000000000000000000303030303030000000000000077 +:201A4E00000000000000000000000000000000000000000000000000000000000000000078 +:201A6E000000000000000000000102030405060708090A0B0C0D0E0F101112131415161744 +:201A8E0018191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363748 +:201AAE0038393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565728 +:201ACE0058595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767708 +:201AEE0078797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F9091929394959697E8 +:201B0E0098999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7C7 +:201B2E00B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7C8C9CACBCCCDCECFD0D1D2D3D4D5D6D7A7 +:201B4E00D8D9DADBDCDDDEDFE0E1E2E3E4E5E6E7E8E9EAEBECEDEEEFF0F1F2F3F4F5F6F787 +:201B6E00F8F9FAFBFCFDFEFF000102030405060708090A0B0C0D0E0F101112131415161767 +:201B8E0018191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363747 +:201BAE0038393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565727 +:101BCE0058595A5B5C5D5E5F60616263646566670F +:020000040000FA +:206968006801FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:20698800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F +:2069A800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF +:2069C800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF +:2069E800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF +:206A0800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E +:206A2800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E +:206A4800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E +:206A6800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E +:206A8800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E +:206AA800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE +:206AC800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE +:206AE800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE +:206B0800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D +:206B2800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D +:206B4800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D +:206B6800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D +:206B8800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D +:206BA800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED +:206BC800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD +:206BE800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD +:206C0800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C +:206C2800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C +:206C4800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C +:206C6800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C +:206C8800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C +:206CA800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC +:206CC800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC +:206CE800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAC +:206D0800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8B +:206D2800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B +:206D4800FFFFFFFFFFFFFEFFFEFEFEFCFEFCFEFCFEFCFFFF40800000330C7F3F3F7F3F7F19 +:206D68001F3FFFFFBC7C3C3C3C3CFCFCFCFCFCFCFCFCFFFF7CF97CF97CF97FFF7FFF7CF9D9 +:206D88007CF9FFFFFFFFFFFFFFFFFFFFFFFFFAFCF0F8FFFFFFFFFFFFFFFFFFFFFFFF49392E +:206DA8000109FFFFF3E7F3E7F3E7F3E7F3E7F1E6F4E0FFFFFFFFFFFFFFFFFFFFFFFF2F9F14 +:206DC8000F07FFFFFFFFCFC7CFC7CFC7CFC780008000FFFFF3E7F3E7F3E7F3E7F3E7F367A7 +:206DE800F367FFFFFFFFFFFFFFFFFFFFFFFF1F8F8F8FFFFFFFFFFFFFFFFFFFFFFFFFC7E3D3 +:206E0800E7C7FFFF9F3F9F3F9F3F9F3F9F3F9F3F9F3EFFFFFFFFFFFFFFFFFFFFFFFF820136 +:206E28000100FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:206E4800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A +:206E6800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A +:206E8800FFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF130F8100B0C0F2FCFEFFFFFFFFFF03 +:206EA800FFFFFCFEFCFE3C7E1C3E1C3E1CBE1CBE9C3E7CF97CF97CF97CF97CF97CF97CF9A9 +:206EC8007CF9F0F0F3E1E3E3E3E3E3E3E3E3E3E3F3E120C1E0F1F8F1F8F1F0F9F8F1F8F190 +:206EE800E0F1E1E0E1E3E7E3E7E3E7E3E7E3E7E3E7E3C7E3E3F3F3F3F1F3F1F3F1F3F1F382 +:206F0800F1F3CFC7CFC7CFC7CFC7CFC7CFC7CFC7C7C7F3E7F3E7F3E7F3E7F3E7F3E7F3E7E7 +:206F2800F3E7C78FCFC7E7C7C7E3F7E3E1F3F3F0F9F0C7EFCFCF8FDFCF9F3F9F1FBF7F3F07 +:206F48003F7FFCFEFEFCFCFEFEFEFEFFFFFFFFFFFFFF3C7F7FFF7FFF0F7F0187C0F9FCFC0C +:206F6800FCFCFFFFFFFFFFFFFFFFFFFFFFFFFF7FFF7FFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F +:206F8800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:206FA800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:206FC800FFFFFEFCFEFCFDFEFFFFFFFFFFFFFFFFFFFFCA3C00008100FFFFFFFFFFFFFFFF47 +:206FE800FFFF1E3C3E7C7EFCFFFFFFFFFFFFFFFFFFFF7CF97CF97CF9FFFFFFFFFFFFFFFFB0 +:20700800FFFFF1F0F0F8FAFCFFFFFFFFF2F9F0F8FEF8E1F101094939F3F9F9F3C3F30307F0 +:20702800AF1FF3E7F3E7F3E7FFFFFFFFFFFFFFFFFFFFF1F3F1F3F1F3FFFFFFFFFFFFFFFF52 +:20704800FFFFC7EFE0E0E4F8FFFFFFFFFFFFFFFFFFFFF3E7F367F367FFFFFFFFFFFFFFFF5C +:20706800FFFFF8F8F8F8F8FCFCF8F8F8E0F181C183C37F3F7F7FFF7F7FFFFFFFFFFFFFFF47 +:20708800FFFFFCFCFCFCFDFEFFFFFFFFFFFFFFFFFFFF34F80001CD03FFFFFFFFFFFFFFFF14 +:2070A800FFFF7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:2070C800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:2070E800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF1E8C1E1D +:207108009E0CFFFFFFFFFFFFFFFFF3FF337FBF7F33FFFFFFFFFFFFFFFFFFFFF9FFF9FFF9D1 +:20712800DF81FFFFFFFFFFFFFFFFFFFFFFFFFFFF8DF3FFFFFFFFFFFFFFFFCFCFCFCFFFFF43 +:20714800CCCEFFFFFFFFFFFFFFFFFEFEFEFEFEFE0606FFFFFFFFFFFFFFFFFF7FFF7FFF7F23 +:207168000606FFFFFFFFFFFFFFFFFFFFBF7FBF7F070FFFFFFFFFFFFFFFFFFFFFE3F3F1E3D3 +:20718800CBE1FFFFFFFFFFFFFFFFFEFFFEFFFEFFECF3FFFFFFFFFFFFFFFFFF7FFF7FFF7FFB +:2071A800CF6FFFFFFFFFFFFFFFFFFFFFFFFFFFFF30FDFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:2071C800F070FFFFFFFFFFFFFFFFFFFFF9F9F9F91030FFFFFFFFFFFFFFFFFFFFFFFFFFFF3B +:2071E8001E4EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD60FFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:20720800C783FFFFFFFFFFFFFFFFFFFFEFDFEFDFEFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA +:20722800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE2DE12DFB25E533FB33FF3FFF3F5D +:20724800FFFF33FF33FF33FF33FF33FF33FF33FFFFFF21117939793939797939211101811E +:20726800FFFF95889C9CBC9CBC9CBC9CBC9CBC9CFFFFCCCCC9CCC8CDC8CDC9CCCCCCCCCEDF +:20728800FFFF4FE6EFE6FFE6FFE6EFE64FE63F06F7EF47337F73FB73FB73FB73FB73FB734D +:2072A800FFFF3FFF3FFF3FFF3FFF3FFF3FFF8FCFFFFFD9EDECDD8DDE80C0DFBE3EBFFE3FE7 +:2072C800FFFFCCFECFDEDEDFDEDF4FDE4CFE2473FFFF4E67676672667472707078707978B2 +:2072E800FFFF75220F676040EF47CFE7F4E3F8F0FFFF7231B3333733F7F3F7F3F733377397 +:20730800FFFF1DBBFD9BFD9BFD9BFF99FB9DFE9CFFFFDFCEDFCEDFCEDECEDECEE2CC126080 +:20732800FFFF63F767FF67FF67FF67FF67FF67FFFFFF51BB3B7D03013F7F3F7F11BFAFC305 +:20734800FFFFCFFFCFFFCFFFFFFFFFFFEFDFEFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:20736800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:20738800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:2073A800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFCFCFEFFFFFFFFFFFFFFFFFFFFED +:2073C800FFFF27CF1F0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D +:2073E800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:20740800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:20742800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:20744800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:20746800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:20748800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:2074A800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:2074C800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:2074E800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:20750800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:20752800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:20754800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:20756800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:20758800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:2075A800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:2075C800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:2075E800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:20760800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:20762800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:20764800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:20766800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:20768800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:2076A800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:2076C800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:2076E800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:20770800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:20772800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:20774800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:20776800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:20778800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:2077A800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:2077C800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:2077E800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:20780800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 +:20782800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60 +:20784800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40 +:20786800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20 +:20788800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 +:2078A800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 +:2078C800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 +:2078E800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0 +:20790800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F +:20792800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F +:20794800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F +:20796800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F +:20798800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +:2079A800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF +:2079C800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF +:2079E800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F +:207A0800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E +:207A2800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E +:207A4800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E +:207A6800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E +:207A8800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +:207AA800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE +:207AC800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE +:207AE800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E +:207B0800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D +:207B2800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D +:207B4800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8FBFBFBFBF8F8FBFBFBFB79 +:207B6800FFFFFFFF3838DBDBDBDB3838FBFBFBFBFFFFFFFF3838DBDBD8D83B3BDBDBD8D81B +:207B8800FFFFFFFF1C1CFBFB3C3CFFFFFBFB1C1CFFFFFFFF1C1CFBFB3C3CDFDFDBDB3C3C81 +:207BA800FFFFFFFF1F1FFFFF3F3FDFDFDFDF3F3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D +:207BC800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD +:207BE800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D +:207C0800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C +:207C2800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C +:207C4800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C +:207C6800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C +:207C8800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFBFBFCFCFFFFFBFBFCFC1E +:207CA800FFFFFFFF1818FEFE3E3EDEDEDEDE3E3EFFFFFFFF3C3CFBFBFBFBF8F8FBFBFBFBE8 +:207CC800FFFFFFFF3838DBDBDBDB1818DBDBDBDBFFFFFFFF3838DEDEDEDE3E3EDEDEDEDE50 +:207CE800FFFFFFFF3F3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C +:207D0800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B +:207D2800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5B +:207D4800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B +:207D6800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1B +:207D8800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB +:207DA800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB +:207DC800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB +:207DE800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B +:207E0800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A +:207E2800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A +:207E4800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A +:207E6800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A +:207E8800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA +:207EA800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:207EC800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA +:207EE800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A +:207F0800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:207F2800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:207F4800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:207F6800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:207F8800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:207FA800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:207FC800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:027FE800FFFF99 +:020000040002F8 +:0E42D000141201686900000008765A080E59A1 +:020000040001F9 +:10B52A0000003E3EC1C1CE8ECC84C484F8F800002F +:020000040002F8 +:201BDE0000001F1F3F203F263F2F3F2F3F2F3F273F233F21233C1D1E0203010100000000D2 +:201BFE000000F8F8FC04FC64FCF4FCF4FCF4FCE4FCC4FC84C43CB87840C080800000000057 +:020000040001F9 +:205C6B00000000000000000000000000000000000000000000000000000000000000000019 +:205C8B00000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F09 +:205CAB00202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3FE9 +:205CCB00404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5FC9 +:205CEB00605F0C61626364653E666768695F6A5F5F6B6C6D026E6F7071726773745F6A757A +:205D0B005F767778797A7B7C7D7E7F80815F82838485868788898A8B8C8D848E5F5F5F8FD8 +:205D2B00909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A658A7A8A9AAABACADAEBF +:205D4B00AFB0B1B2B3B4B5B6B7B8B9BA9C9D9E9FBBBCBDBEBFC0C1C2C3C4C5C6C7C8C9CA24 +:205D6B00000000000000000000000000000000000000404040404040404000004040000098 +:205D8B0000006C6C242448480000000000000000000024247E7E242424247E7E2424000030 +:205DAB00101038385454505038381414545438380000000024240808101024240000000090 +:205DCB000000303048485050202054544848343400001818080810100000000000000000E8 +:205DEB00000008081010101010101010080800000000101008080808080808081010000078 +:205E0B000000000010105454383854541010000000000000101010107C7C101010100000FF +:205E2B00000000000000000060602020404000000000000000007C7C0000000000000000DF +:205E4B000000000000000000000000004040000000000202040408081010202040400000BB +:205E6B0000003C3C626252524A4A46463C3C00000000181828280808080808083C3C000077 +:205E8B0000003C3C424202023C3C40407E7E000000007C7C02020C0C020202027E7E0000EB +:205EAB0000004040404048487E7E08080808000000007E7E40407C7C020202027C7C0000B7 +:205ECB0000003C3C40407C7C424242423C3C000000007E7E020204040808101020200000CF +:205EEB0000003C3C42423C3C424242423C3C000000003C3C424242423E3E02023C3C00002B +:205F0B000000181818180000000018181818000000001818181800001818181808081010C6 +:205F2B00000000000C0C3030404030300C0C00000000000000007C7C00007C7C00000000F6 +:205F4B000000000060601818040418186060000000003030484808083030000020200000AE +:205F6B0000001C1C22224D4D555555552E2E000000003C3C424242427E7E424242420000CC +:205F8B0000007C7C42427C7C424242427C7C000000003C3C42424040404042423C3C00008A +:205FAB0000007C7C42424242424242427C7C000000007E7E40407C7C404040407E7E000066 +:205FCB0000007E7E404040407C7C40404040000000003C3C424240404E4E42423E3E0000AA +:205FEB0000004242424242427E7E42424242000000007C7C10101010101010107C7C000096 +:20600B0000007C7C101010101010101060600000000044444848505070704848444400008D +:20602B000000404040404040404040407E7E00000000424266665A5A424242424242000049 +:20604B0000004242626252524A4A46464242000000003C3C42424242424242423C3C0000A5 +:20606B0000007C7C424242427C7C40404040000000003C3C424242424A4A44443A3A00000D +:20608B0000007C7C424242427C7C42424242000000003E3E40403C3C020242423C3C000081 +:2060AB0000007C7C1010101010101010101000000000424242424242424242423C3C000031 +:2060CB000000444444444444282828281010000000004242424242425A5A666642420000CD +:2060EB00000042422424181818182424424200000000444428281010101010101010000045 +:20610B0000007C7C04040808101020207C7C0000000018181010101010101010181800002C +:20612B000000404020201010080804040202000000001818080808080808080818180000B8 +:20614B00000010102828000000000000000000000000000000000000000000003C3C00004C +:20616B0000002020101000000000000000000000000000003C3C444444444C4C343400002C +:20618B0000004040787844444444444478780000000000003C3C4040404040403C3C00008C +:2061AB00000004043C3C4444444444443C3C000000000000383844447C7C40403C3C00005C +:2061CB0000003838404040407878404040400000000000003838444444443C3C0404787864 +:2061EB00000040407878444444444444444400000000101000001010101010101010000064 +:20620B00000008080000080808080808080830300000404044444848707048484444000033 +:20622B0000001010101010101010101010100000000000006C6C545444444444444400007B +:20624B000000000058586464444444444444000000000000383844444444444438380000AB +:20626B0000000000787844444444444478784040000000003C3C4444444444443C3C04048B +:20628B0000000000585864644040404040400000000000003C3C404038380404787800009B +:2062AB0000004040404078784040404038380000000000004444444444444C4C34340000DB +:2062CB00000000004444444428282828101000000000000044444444444454546C6C0000CB +:2062EB000000000044442828101028284444000000000000444444444444282810106060FB +:20630B00000000007C7C0808101020207C7C00000000080810101010202010101010080832 +:20632B001010101010101010101010101010101000001010080808080404080808081010CA +:20634B00000000000000000032324C4C000000005555AAAA5555AAAA5555AAAA5555AAAA3E +:20636B0000003838404070707070404038380000000000000C0C10103838101060600000EA +:20638B0000000000000000006C6C242448480000000000000000000000000000545400009A +:2063AB000000000020207070202020200000000000000000202070702020707020200000B2 +:2063CB00000000004848101020204A4A00000000282810103C3C404038380404787800005E +:2063EB000000000008081010202010100808000000003E3E48484E4E484848483E3E0000AE +:20640B00282810107C7C0808101020207C7C00000000060604040202000000000000000089 +:20642B000000606020204040000000000000000000003636242412120000000000000000F9 +:20644B0000000000000018183C3C3C3C181800000000000000000000383800000000000071 +:20646B0000000000000000007C7C00000000000000000000141428280000000000000000A1 +:20648B00000000007A7A2E2E2A2A000000000000000000002020101008081010202000007D +:2064AB000000000000003C3C4A4A4C4C3E3E00000000282800004444282810101010101029 +:2064CB0000004040000040404040404040400000000010103C3C5050505050503C3C101021 +:2064EB000000383844444040F0F040407C7C00000000000044443838282838384444000081 +:20650B004444282810107C7C10107C7C101000001010101010100000000010101010101088 +:20652B001C1C202078784444383808087070000000002424000000000000000000000000B8 +:20654B003C3C42429999A1A1A1A1999942423C3C38384848585868680000000000000000D0 +:20656B000000000014142828505028281414000000000000000000003C3C04040000000000 +:20658B003C3C4242B9B9A5A5B9B9A5A542423C3C0000000000007878000000000000000090 +:2065AB000000303048484848303000000000000000000000101038381010000038380000D0 +:2065CB00303048481010202078780000000000007070080838380808707000000000000020 +:2065EB000404080800000000000000000000000000004040484848484848747440400000E0 +:20660B0000003A3A7A7A7A7A3A3A0A0A0A0A00000000000000001818181800000000000017 +:20662B00000000000000000000000808040408080000606020202020707000000000000007 +:20664B0000000000282814140A0A141428280000000010100000303040404848303000003B +:20666B002020101000003C3C42427E7E424200000404080800003C3C42427E7E424200009F +:20668B001818242400003C3C42427E7E424200001414282800003C3C42427E7E4242000007 +:2066AB000000242400003C3C42427E7E424200001818181800003C3C42427E7E424200002F +:2066CB0000001E1E181828283E3E48484E4E000000003C3C42424040404042423C3C080843 +:2066EB002020101000007E7E40407C7C40407E7E0404080800007E7E40407C7C40407E7E37 +:20670B001414282800007E7E40407C7C40407E7E0000242400007E7E40407C7C40407E7ECE +:20672B0020201010000010101010101010101010080810100000101010101010101010107E +:20674B0010102828000010101010101010101010000028280000101010101010101010102E +:20676B0000007C7C42424242F2F242427C7C0000141428280000626252524A4A46460000AE +:20678B002020101000003C3C424242423C3C00000404080800003C3C424242423C3C000086 +:2067AB001818242400003C3C424242423C3C00001414282800003C3C424242423C3C0000EE +:2067CB000000242400003C3C424242423C3C000000003E3E46464A4A525262627C7C000072 +:2067EB002020101042424242424242423C3C00000404080842424242424242423C3C000006 +:20680B001818242400004242424242423C3C00000000242400004242424242423C3C0000A5 +:20682B0004040808444428281010101010100000000040407070484848487070404000001D +:20684B00000078784444484844444444585800002020101000003C3C44444C4C3434000005 +:20686B000404080800003C3C44444C4C343400001818242400003C3C44444C4C343400007D +:20688B001414282800003C3C44444C4C343400000000242400003C3C44444C4C343400002D +:2068AB001818181800003C3C44444C4C343400000000000000003C3C4A4A5C5C2E2E00004D +:2068CB00000000003C3C4040404040403C3C0808202010100000383844447C7C40403C3CE5 +:2068EB00040408080000383844447C7C40403C3C181824240000383844447C7C40403C3C2D +:20690B00000024240000383844447C7C40403C3C00000A0A04043A3A44444444383800002C +:20692B001414282800005858646444444444000020201010000038384444444438380000FC +:20694B000808101000003838444444443838000010102828000038384444444438380000AC +:20696B00141428280000383844444444383800000000282800003838444444443838000064 +:20698B0000000000101000007C7C000010100000000000003C3C4C4C545464647878000044 +:2069AB00202010100000444444444C4C34340000080810100000444444444C4C343400001C +:2069CB00101028280000444444444C4C34340000000028280000444444444C4C34340000CC +:2069EB0008081010000044444444282810106060000040406060505050506060404000005C +:186A0B000000282800004444444428281010606001FF6B5C00006B5D54 +:020000040002F8 +:201C1E003F007F3FC040DF5FF050D050F050F050FF00FFFF0000FFFF000000000000000090 +:201C3E00FC00FEFC0302FBFA0F0A0B0A0F0A0F0AF050F050F050F050F050F050F050F05036 +:201C5E00000000000000000000000000000000000F0A0F0A0F0A0F0A0F0A0F0A0F0A0F0A9E +:201C7E00D070F050D070F050DF7FC07F7F3F3F000000000000000000FFFF00FFFFFFFF00B2 +:101C9E000B0E0F0A0B0E0F0AFBFE03FEFEFCFC00E2 +:020000040000FA +:040560005838EC0D0E +:20AD5B00B71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CA8 +:20AD7B00105A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005ACA +:20AD9B0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000014 +:20ADBB005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A009A +:20ADDB00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A7A +:20ADFB0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000B4 +:20AE1B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0039 +:20AE3B00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00001C57 +:20AE5B002C011D2C021E2C05202C06212C07232C082510005A00005A00005A00005A000076 +:20AE7B005A00005A00005A00002310005A00005A00005A00005A00005A00005A00005A0000 +:20AE9B00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005AB9 +:20AEBB0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000F3 +:20AEDB005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0079 +:20AEFB00000C10000C1C055A0E005A00000C10000C1C055A0E005A00005A00005A00005A13 +:20AF1B0000005A00000C10000C1C055A0E005A00005A00005A00005A00005A00005A0000EF +:20AF3B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0018 +:20AF5B00000C10000C1C055A0E005A00000C10000C1C055A0E005A00005A00005A00005AB2 +:20AF7B0000005A00000C10000C1C055A0E005A00005A00005A00005A00005A00005A00008F +:20AF9B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00B8 +:20AFBB0000241E015A00005A00005A0000241E015A00005A00005A00003020005A00005AD0 +:20AFDB0000005A0000241E015A00005A00005A00005A00005A00005A00005A00005A0000E9 +:20AFFB005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0058 +:20B01B0000241E015A00005A00005A0000241E015A00005A00005A00003020005A00005A6F +:20B03B0000005A0000241E015A00005A00005A00005A00005A00005A00005A00005A000088 +:20B05B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00F7 +:20B07B00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00001C15 +:20B09B002C011D2C021E2C05202C06212C07232C082510005A00005A00005A00005A000034 +:20B0BB005A00005A00005A00002710005A00005A00005A00005A00005A00005A00005A00BA +:20B0DB00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A77 +:20B0FB0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000B1 +:20B11B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0036 +:20B13B00000C10000C1C055A0E005A00000C10000C1C055A0E005A00005A00005A00005AD0 +:20B15B0000005A00000C10000C1C055A0E005A00005A00005A00005A00005A00005A0000AD +:20B17B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00D6 +:20B19B00000C10000C1C055A0E005A00000C10000C1C055A0E005A00005A00005A00005A70 +:20B1BB0000005A00000C10000C1C055A0E005A00005A00005A00005A00005A00005A00004D +:20B1DB005A00005A00005A00002310005A00005A00005A0000231C085A0000231C045A00C7 +:20B1FB00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00001C94 +:20B21B002C011D2C021E2C05202C06212C07232C082510005A00005A00005A00005A0000B2 +:20B23B005A00005A00005A00002310005A00005A00005A00005A00005A00005A00005A003C +:20B25B0000231C085A00005A00005A00005A00005A00005A00005A00005A00005A00005A08 +:20B27B0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00002F +:20B29B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00B5 +:20B2BB00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00001CD3 +:20B2DB002C011D2C021E2C05202C06212C07232C082510005A00005A00005A00005A0000F2 +:20B2FB005A00005A00005A00002710005A00005A00005A00005A00005A00005A00005A0078 +:20B31B0000271C085A00005A00005A00005A00005A00005A00005A00005A00005A00005A43 +:20B33B0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00006E +:20B35B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00F4 +:20B37B00000C10000C1C055A0E005A00000C10000C1C055A0E005A00005A00005A00005A8E +:20B39B0000005A00000C10000C1C055A0E005A00005A00005A00005A00005A00005A00006B +:20B3BB005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0094 +:20B3DB00000C10000C1C055A0E005A00000C10000C1C055A0E005A00005A00005A00005A2E +:20B3FB0000005A00000C10000C1C055A0E005A00005A00005A00005A00005A00001710003E +:20B41B00171C03171000171C09121000121C09121C09121C030B10000B1C090B1C090B1C15 +:20B43B0000241E015A00005A00005A0000241E015A00005A00005A00003020005A00005A4B +:20B45B0000005A0000241E015A00005A00005A00005A00005A00005A00005A00005A000064 +:20B47B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00D3 +:20B49B0000241E015A00005A00005A0000241E015A00005A00005A00003020005A00005AEB +:20B4BB0000005A0000241E015A00005A00005A00005A00005A00005A00005A0000302C0200 +:20B4DB005A00005A00005A0000302C035A00005A00005A0000302C055A00005A00005A0067 +:20B4FB00001C10001C1C055A0E005A00001C10001C1C055A0E005A00005A00005A00005ACD +:20B51B0000005A00000C10000C1C055A0E005A00005A00005A00005A00005A00005A0000E9 +:20B53B005A00005A00005A00005A00005A00005A00005A00001710005A0000171C055A0067 +:20B55B00001C10001C1C055A0E005A00001C10001C1C055A0E005A00005A00005A00005A6C +:20B57B0000005A00000C10000C1C055A0E005A00005A00005A00005A00005A00005A000089 +:20B59B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00B2 +:20B5BB0000241E015A00005A00005A0000241E015A00005A00005A00003020005A00005ACA +:20B5DB0000005A0000241E015A00005A00005A0000241E015A00005A00005A00005A0000FA +:20B5FB005A00005A00005A00003020005A00005A00005A00005A00005A00005A00005A005C +:20B61B0000241E015A00005A00005A0000241E015A00005A00005A00003020005A00005A69 +:20B63B0000005A0000241E015A00005A00005A00005A00005A00005A00005A00005A000082 +:20B65B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00F1 +:20B67B00001C10001C1C055A0E005A00001C10001C1C055A0E005A00005A00005A00005A4B +:20B69B0000005A00000C10000C1C055A0E005A00005A00005A00005A00005A00005A000068 +:20B6BB005A00005A00005A00005A00005A00005A00005A00001710005A0000171C055A00E6 +:20B6DB00001C10001C1C055A0E005A00001C10001C1C055A0E005A00005A00005A00005AEB +:20B6FB0000005A00000C10000C1C055A0E005A00005A00005A00005A00005A00005A000008 +:20B71B005A00005A00005A00002310005A00005A00005A0000231C075A0000231C035A0083 +:20B73B00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00001C4E +:20B75B002C011D2C021E2C05202C06212C07232C082510005A00005A00005A00005A00006D +:20B77B005A00005A00005A00002710005A00005A00005A00005A00005A00005A00005A00F3 +:20B79B00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005AB0 +:20B7BB0000005A0000232C02232C01232C005A0000232C03232C02232C015A0000232C042A +:20B7DB00232C03232C02232C015A0E005A00005A00005A00005A00005A00005A00005A007D +:20B7FB00005A00002400002400002440002400002400002400005A00005A00005A00005A54 +:20B81B0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000089 +:20B83B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10FF +:20B85B00005A00001F00002800003140002400002400002400005A00005A00005A00005AE7 +:20B87B0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000029 +:20B89B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A109F +:20B8BB00005A00002400002400002440002400002400002400005A00005A00005A00005A93 +:20B8DB0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000C9 +:20B8FB005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A103F +:20B91B00005A00002400002400002440002400002400002400005A00005A00005A00005A32 +:20B93B0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000068 +:20B95B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10DE +:20B97B00005A00002400002400002440002400002400002400005A00005A00005A00005AD2 +:20B99B0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000008 +:20B9BB005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A107E +:20B9DB00005A00002400002400002440002400002400002400005A00005A00005A00005A72 +:20B9FB0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000A8 +:20BA1B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A101D +:20BA3B00005A00002400002400002440002400002400002400005A00005A00005A00005A11 +:20BA5B0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000047 +:20BA7B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10BD +:20BA9B00005A00002400002400002440002400002400002400005A00005A00005A00005AB1 +:20BABB0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000E7 +:20BADB005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A105D +:20BAFB00005A00002400002400002440002400002400002400005A00005A00005A00005A51 +:20BB1B0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000086 +:20BB3B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10FC +:20BB5B00005A00002400002400002440002400002400002400005A00005A00005A00005AF0 +:20BB7B0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000026 +:20BB9B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A109C +:20BBBB00005A00002400002400002440002400002400002400005A00005A00005A00005A90 +:20BBDB0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000C6 +:20BBFB005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A103C +:20BC1B00005A00002400002400002440002400002400002400005A00005A00005A00005A2F +:20BC3B0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000065 +:20BC5B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10DB +:20BC7B00005A00002400002400002440002400002400002400005A00005A00005A00005ACF +:20BC9B0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000005 +:20BCBB005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A107B +:20BCDB00005A00002400002400002440002400002400002400005A00005A00005A00005A6F +:20BCFB0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000A5 +:20BD1B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A101A +:20BD3B00005A00002400002400002440002400002400002400005A00005A00005A00005A0E +:20BD5B0000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000044 +:20BD7B005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10BA +:20BD9B00007C6D7C6D7C6D7C6D7C6D7C6D7C6D7C6D3C6E7C70FC71BC723C6E7C70FC713CD0 +:20BDBB0077FC6E3C71FC6E7C73FC747C76FC747C76BC6FBC6FBC6F3C74BC75BC75BC75BC3D +:20BDDB00750080B10000800080A00000800080F000008000C0F00000800000F100008000F1 +:20BDFB0040F10000800080F100008000C0F10000800080F00000800080F00000800080F005 +:20BE1B000000800080F00000800080F00000800080F00000800080F00000800020000000A7 +:20BE3B00800020010000800020020000800020030000800020040000800020050000800038 +:20BE5B00200600008000200700008000200800008000200900008000200A00008000200B54 +:20BE7B0000008000200C00008000200D00008000200E000080F0FC77000000625C78000087 +:20BE9B0000F0BC78000000F01C79000000F07C79000000F0DC79000000F03C7A000000F01E +:20BEBB009C7A000000F0FC7A000000F05C7B000000F0BC7B000000F01C7C000000F07C7C8D +:20BEDB00000000F0DC7C000000F03C7D0000000123456789ABCDEFFEDCBA9876543210005E +:20BEFB00000000FFFFFFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFF003B +:20BF1B000000000000000000000000FFFFFFFF000112233445566778899AABBCCDDEEFFE04 +:20BF3B00DCBA9876543210123456789ABCDEFF7ACDDB75211368BDDC974101479CDDB80F39 +:20BF5B000F0F0F0F0F0F0F0F0F0F0F0F0F0F0FFEFCFAF8F6F4F2F0F2F4F6F8FAFCFEFFFE68 +:20BF7B00DDCCBBAA9988778ABDF124578ABDEE841161ED57475AADCEA31779DD200347E563 +:20BF9B000A4ED3147C4D5724DB9C8B4759117E378308588795670B16DCE37087B18D7B9510 +:20BFBB006A7E4853D3CD3D94566C846ED59370960B7307C0D8AD02D72B2AB71D269D11AC04 +:20BFDB0044C7A29634E518E3183B539951BE18047B6D9C7DAC7DBC7DCC7DDC7D367E907EBE +:04BFFB005B6DEA7E12 +:020000040001F9 +:206A2300B71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71C23 +:206A430002251E035A0000251E035A00005A00005A00005A00005A00005A00005A00005A7B +:206A630000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00008F +:206A83005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0015 +:206AA30000251E035A0000251E035A00005A00005A00005A00005A00005A00005A00005A1D +:206AC30000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00002F +:206AE3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00B5 +:206B0300002A1E035A00B42A1E035A00005A00005A00005A00005A00005A00005A00005AFE +:206B230000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000CE +:206B43005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0054 +:206B6300002A1E035A00002A1E035A00E05A00005A00005A00005A00005A00005A00005A72 +:206B830000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00006E +:206BA3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00F4 +:206BC300002A10005A00002A1C075A00002710005A00002810005A0000281C075A00002A85 +:206BE30010005A00005A00005A00002A1C075A00002A1C035A00002A10005A00002A1C0749 +:206C03005A00002A1C035A00002A10005A00005A00005A00002A1C075A00002A1C035A00E2 +:206C2300002A10005A00002A1C075A00002710005A00002810005A0000281C075A00002727 +:206C430010005A00005A00005A0000271C075A0000271C035A0000271C405A0000271C07A8 +:206C63005A0000271C035A00002310005A00005A00005A0000231C075A0000231C035A009A +:206C830000301E025A0000301E025A0000331E025A0000301E025A00002F1C045A0000306D +:206CA3001E025A0000331E025A0000301E025A00005A00005A0000301E02331E025A00004F +:206CC3005A0000301E025A00002F1C045A0000301E025A0000331E025A00005A00005A00F9 +:206CE300005A00005A0000331E025A0000331E025A0000301E025A00002F1C045A00003000 +:206D03001E025A0000331E025A0000301E025A00005A00005A0000301E025A0000331E02EE +:206D23005A0000301E025A00005A00005A0000301E035A00002F1C045A00005A00005A0090 +:206D4300005A00002400002400002400002400002400002470005A00005A00005A00005A26 +:206D630000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00008C +:206D83005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1002 +:206DA300005A00002400002400002400002400002400002470005A00005A00005A00005AC6 +:206DC30000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00002C +:206DE3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10A2 +:206E0300005A00002400002400002400002400002400002470005A00005A00005A00005A65 +:206E230000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000CB +:206E43005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1041 +:206E6300005A00002400002400002400002400002400002470005A00005A00005A00005A05 +:206E830000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00006B +:206EA3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10E1 +:206EC300005A00002400002400002400002400002400002470005A00005A00005A00005AA5 +:206EE30000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00000B +:206F03005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1080 +:206F2300005A00002400002400002400002400002400002470005A00005A00005A00005A44 +:206F430000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000AA +:206F63005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1020 +:206F8300005A00002400002400002400002400002400002470005A00005A00005A00005AE4 +:206FA30000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00004A +:206FC3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10C0 +:206FE300005A00002400002400002400002400002400002470005A00005A00005A00005A84 +:2070030000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000E9 +:207023005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A105F +:20704300005A00002400002400002400002400002400002470005A00005A00005A00005A23 +:2070630000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000089 +:207083005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10FF +:2070A300005A00002400002400002400002400002400002470005A00005A00005A00005AC3 +:2070C30000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000029 +:2070E3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A109F +:20710300005A00002400002400002400002400002400002470005A00005A00005A00005A62 +:2071230000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000C8 +:207143005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A103E +:20716300005A00002400002400002400002400002400002470005A00005A00005A00005A02 +:2071830000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000068 +:2071A3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10DE +:2071C300005A00002400002400002400002400002400002470005A00005A00005A00005AA2 +:2071E30000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000008 +:207203005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A107D +:20722300005A00002400002400002400002400002400002470005A00005A00005A00005A41 +:2072430000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000A7 +:207263005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A101D +:20728300005A00002400002400002400002400002400002470005A00005A00005A00005AE1 +:2072A30000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000047 +:2072C3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10BD +:2072E30000446A046BC46B846C0000B00000800040F00000800080F000008000C0F00000CF +:20730300800000F10000800040F10000800080F100008000C0F10000800080F000008000B6 +:2073230080F00000800080F00000800080F00000800080F00000800080F00000800080F02A +:20734300000080002000000080002001000080002002000080002003000080002004000000 +:20736300800020050000800020060000800020070000800020080000800020090000800047 +:20738300200A00008000200B00008000200C00008000200D00008000200E00008090446D4D +:2073A300000000F0A46D000000F0046E000000F0646E000000F0C46E000000F0246F000000 +:2073C30000F0846F000000F0E46F000000F04470000000F0A470000000F00471000000F087 +:2073E3006471000000F0C471000000F02472000000F08472000000FEDCBA987654321001EB +:2074030023456789ABCDEF00000000FFFFFFFFFFFFFFFFFFFFFFFF0000000000000000FFB7 +:20742300FFFFFFFFFFFFFF000000000000000000000000FFFFFFFF00011223344556677870 +:20744300899AABBCCDDEEFFEDCBA9876543210123456789ABCDEFF7ACDDB75211368BDDCBA +:20746300974101479CDDB80F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FFEFCFAF8F6F4F2F0F21E +:20748300F4F6F8FAFCFEFFFEDDCCBBAA9988778ABDF124578ABDEE841161ED57475AADCE32 +:2074A300A31779DD20034720B4AC807A0988D5D0B1BAC88188CA041777329B1DC9622D6B5A +:2074C300C8956A08A075BCA7D1D8248BA1A6A80A5851E13DB776E3A6E01D38C01793198E4E +:2074E30086587EC107B64925E5923E40E55795E3CEC890A96839DC08436AE472E672E8728F +:20750300EA72EC724673A073236AFA73B71CB71CB71CB71CB71CB71CB71CB71CB71CB71CAA +:20752300B71CB71CB71CB71CB71CB71C025A08ED1811025A01025A01025A01025A01025A0C +:2075430001025A01025A01021811025A01025A01025A01025A01025A01025A01025A0102B5 +:207563005A0E005A00005A00005A00005A00005A00005A00005A00005A00005A00005A001C +:20758300005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0A +:2075A30000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000044 +:2075C3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00CA +:2075E300005A00005A00005A00005A00005A00001821025A01025A01025A01025A01025ABD +:2076030001025A01025A01021821025A01025A01025A01025A01025A01025A01025A0102E4 +:207623005A0E005A00005A00005A00005A00005A00005A00005A00005A00005A00005A005B +:20764300005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A49 +:2076630000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000083 +:207683005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0009 +:2076A300005A00005A00005A00005A00005A0000301E025A0000301E025A0000301E023031 +:2076C3001E025A00003010005A0E025A0000301E025A0000301E02301E023010005A0E0235 +:2076E3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00A9 +:20770300005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A88 +:2077230000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000C2 +:207743005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0048 +:20776300005A00005A00005A00005A00005A00003A1C0A391C09381C08371C08361C073541 +:207783001C06341C06331C05321C05311C04301C032F1C032E1C022D1C012C1C012B1C01B2 +:2077A3005A00005A0E005A00005A00005A00005A00005A00005A00005A00005A00005A00DA +:2077C300005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005AC8 +:2077E30000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000002 +:207803005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0087 +:20782300005A00005A00005A00005A00005A000024000024000024000024000024000024AB +:2078430070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000031 +:207863005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0027 +:20788300005A00005A00005A00005A10005A0000240000240000240000240000240000243B +:2078A30070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000D1 +:2078C3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00C7 +:2078E300005A00005A00005A00005A10005A000024000024000024000024000024000024DB +:2079030070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000070 +:207923005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0066 +:20794300005A00005A00005A00005A10005A0000240000240000240000240000240000247A +:2079630070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000010 +:207983005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0006 +:2079A300005A00005A00005A00005A10005A0000240000240000240000240000240000241A +:2079C30070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000B0 +:2079E3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00A6 +:207A0300005A00005A00005A00005A10005A000024000024000024000024000024000024B9 +:207A230070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00004F +:207A43005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0045 +:207A6300005A00005A00005A00005A10005A00002400002400002400002400002400002459 +:207A830070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000EF +:207AA3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00E5 +:207AC300005A00005A00005A00005A10005A000024000024000024000024000024000024F9 +:207AE30070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00008F +:207B03005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0084 +:207B2300005A00005A00005A00005A10005A00002400002400002400002400002400002498 +:207B430070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00002E +:207B63005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0024 +:207B8300005A00005A00005A00005A10005A00002400002400002400002400002400002438 +:207BA30070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000CE +:207BC3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00C4 +:207BE300005A00005A00005A00005A10005A000024000024000024000024000024000024D8 +:207C030070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00006D +:207C23005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0063 +:207C4300005A00005A00005A00005A10005A00002400002400002400002400002400002477 +:207C630070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00000D +:207C83005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0003 +:207CA300005A00005A00005A00005A10005A00002400002400002400002400002400002417 +:207CC30070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000AD +:207CE3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00A3 +:207D0300005A00005A00005A00005A10005A000024000024000024000024000024000024B6 +:207D230070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00004C +:207D43005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0042 +:207D6300005A00005A00005A00005A10005A00002400002400002400002400002400002456 +:207D830070005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000EC +:207DA3005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00E2 +:207DC300005A00005A00005A00005A10003075F075B07670770000F00000800040F0000071 +:207DE300800080F000008000C0F00000800000F10000800040F10000800080F100008000CD +:207E0300C0F10000800080F00000800080F00000800080F00000800080F00000800080F0FE +:207E23000000800080F00000800080F000008000200000008000200100008000200200007C +:207E4300800020030000800020040000800020050000800020060000800020070000800066 +:207E6300200800008000200900008000200A00008000200B00008000200C00008000200D80 +:207E830000008000200E000080B03078000000F09078000000F0F078000000F05079000050 +:207EA30000F0B079000000F0107A000000F0707A000000F0D07A000000F0307B000000F08D +:207EC300907B000000F0F07B000000F0507C000000F0B07C000000F0107D000000F0707D07 +:207EE3000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFFFF96 +:207F0300FFFFFF0000000000000000FFFFFFFFFFFFFFFF000000000000000000000000FF6A +:207F2300FFFFFF000112233445566778899AABBCCDDEEFFEDCBA9876543210123456789A53 +:207F4300BCDEFF7ACDDB75211368BDDC974101479CDDB80F0F0F0F0F0F0F0F0F0F0F0F0FA5 +:207F63000F0F0FFEFCFAF8F6F4F2F0F2F4F6F8FAFCFEFFFEDDCCBBAA9988778ABDF12457FB +:207F83008ABDEE841161ED57475AADCEA31779DD200347448A321B088A4C422EA7834929D4 +:207FA30037ACAD8A3A88284C47002C8522870CDA2E93693AD7BE25684391E8D3B15EB60A03 +:207FC300125B1B0EA03A7EC25BB05C31C2276BC4A73C5477055BE30309C74AA9B77207AEA9 +:187FE30066A100082F75D07DD27DD47DD67DD87D327E8C7E0F75E67E9C +:20338400B71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CB71CF9 +:2033A400040C10005A00005A00005A00005A00005A00005A00005A00005A00005A00005A65 +:2033C40000005A00005A00002C2C062B2C052C2C042B2C032C2C022B2C015A0E005A000051 +:2033E4005A00005A00005A00005A0000282C06272C05282C04272C03282C02272C015A0EEF +:20340400005A00005A0000243C055A0E005A00005A0000243C055A0E005A00005A000024CE +:203424003C055A0E005A00005A0000243C055A0E005A00005A0000243C055A0E005A000083 +:203444005A0000243C055A0E005A00005A0000243C055A0E005A00005A0000243C055A0E3F +:20346400005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A6A +:2034840000005A00005A00005A00002A2C03282C032A2C02282C022A2C015A0E015A0000A2 +:2034A4005A00005A00005A00005A00005A00002A4C03284C032A4C02284C022A4C015A0097 +:2034C40000243C065A00375A00375A0037243C065A00385A00385A0038243C065A00375A62 +:2034E40000375A0037243C065A00355A00355A0035243C065A00375A00375A0037243C066E +:203504005A00385A00385A0038243C065A00375A00375A0037243C065A00355A00355A00FA +:20352400351810005A00005A0C075A0C011B10005A00005A0C075A0C011A10005A00005AC5 +:203544000C075A0C011610005A00005A0C075A0C011810005A00005A0C075A0C011B100018 +:203564005A00005A0C075A0C011A10005A00005A0C075A0C011610005A00005A0C075A0C6E +:20358400011810005A00005A0C075A0C011B10005A00005A0C075A0C011A10005A00005A99 +:2035A4000C075A0C011610005A00005A0C075A0C011810005A00005A0C075A0C011B1000B8 +:2035C4005A00005A0C075A0C011A10005A00005A0C075A0C011610005A00005A0C075A0C0E +:2035E400012310002B1E02311E022B1E025A00002B1E02311E022B1E025A00002B1E023195 +:203604001E022B1E02231C052B1E02311E025A00002310002B1E02311E022B1E025A00008D +:203624002B1E02311E022B1E025A00002B1E02311E022B1E02231C052B1E02311E025A0024 +:20364400002310002B1E02311E022B1E025A00002B1E02311E022B1E025A00002B1E023135 +:203664001E022B1E02231C052B1E02311E025A00002310002B1E02311E022B1E025A00002D +:203684002B1E02311E022B1E025A00002B1E02311E022B1E02231C052B1E02311E025A00C4 +:2036A400000C10005A00005A00005A00005A00005A00005A00005A00005A00005A00005A66 +:2036C40000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000062 +:2036E4005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00E8 +:20370400001840001840371B40001840731D40001840381B40001840831F40001840372067 +:203724004000184073224000184035264000184053244000184037244000184073244000F4 +:203744001840381F40001840832040001840371F40001840731B40001840351D40001840E5 +:20376400535A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A14 +:2037840000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000A1 +:2037A4005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0027 +:2037C40000243C065A0037243C035A0000243C065A0038243C035A0000243C065A00372461 +:2037E4003C035A0000243C065A0035243C035A0000243C065A0037243C035A0000243C0660 +:203804005A0038243C035A0000243C065A0037243C035A0000243C065A0035243C035A00EF +:20382400005A00002400002400002400002400002400002470005A00005A00005A00005A7A +:2038440000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000E0 +:203864005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1056 +:20388400005A00002400002400002400002400002400002470005A00005A00005A00005A1A +:2038A40000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A000080 +:2038C4005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10F6 +:2038E400005A00002400002400002400002400002400002470005A00005A00005A00005ABA +:2039040000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00001F +:203924005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1095 +:20394400005A00002400002400002400002400002400002470005A00005A00005A00005A59 +:2039640000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000BF +:203984005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1035 +:2039A400005A00002400002400002400002400002400002470005A00005A00005A00005AF9 +:2039C40000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005F +:2039E4005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10D5 +:203A0400005A00002400002400002400002400002400002470005A00005A00005A00005A98 +:203A240000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000FE +:203A44005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1074 +:203A6400005A00002400002400002400002400002400002470005A00005A00005A00005A38 +:203A840000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00009E +:203AA4005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1014 +:203AC400005A00002400002400002400002400002400002470005A00005A00005A00005AD8 +:203AE40000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00003E +:203B04005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10B3 +:203B2400005A00002400002400002400002400002400002470005A00005A00005A00005A77 +:203B440000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000DD +:203B64005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1053 +:203B8400005A00002400002400002400002400002400002470005A00005A00005A00005A17 +:203BA40000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00007D +:203BC4005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10F3 +:203BE400005A00002400002400002400002400002400002470005A00005A00005A00005AB7 +:203C040000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00001C +:203C24005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1092 +:203C4400005A00002400002400002400002400002400002470005A00005A00005A00005A56 +:203C640000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000BC +:203C84005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1032 +:203CA400005A00002400002400002400002400002400002470005A00005A00005A00005AF6 +:203CC40000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005C +:203CE4005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A10D2 +:203D0400005A00002400002400002400002400002400002470005A00005A00005A00005A95 +:203D240000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A0000FB +:203D44005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1071 +:203D6400005A00002400002400002400002400002400002470005A00005A00005A00005A35 +:203D840000005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00009B +:203DA4005A00005A00005A00005A00005A00005A00005A00005A00005A00005A00005A1011 +:203DC40000A573A5766574657725752575E575E5750000A70000800000A0000080008070D8 +:203DE40000008000C0700000800000F10000800040F10000800080F100008000C0F10000CB +:203E0400800080F00000800080F00000800080F00000800080F00000800080F0000080006E +:203E240080F00000800080F000008000200000008000200100008000200200008000200398 +:203E4400000080002004000080002005000080002006000080002007000080002008000020 +:203E64008000200900008000200A00008000200B00008000200C00008000200D0000800067 +:203E8400200E000080B02578000000F08578000000F0E578000000F04579000000F0A5792D +:203EA400000000F0057A000000F0657A000000F0C57A000000F0257B000000F0857B000011 +:203EC40000F0E57B000000F0457C000000F0A57C000000F0057D000000F0657D0000000187 +:203EE40023456789ABCDEFFEDCBA987654321000000000FFFFFFFFFFFFFFFFFFFFFFFF00D3 +:203F040000000000000000FFFFFFFFFFFFFFFF000000000000000000000000FFFFFFFF00A9 +:203F24000112233445566778899AABBCCDDEEFFEDCBA9876543210123456789ABCDEFF7A7C +:203F4400CDDB75211368BDDC974101479CDDB80F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FFECC +:203F6400FCFAF8F6F4F2F0F2F4F6F8FAFCFEFFFEDDCCBBAA9988778ABDF124578ABDEE84AC +:203F84001161ED57475AADCEA31779DD200347AAED4AA035CC2E37DDBD7C24BB80C0CB3BAF +:203FA400D0448E276DA677E107A0DED8B27C2A54961ED1A4E3854C5A4B28C99D2B39B3B6E3 +:203FC40067308CB6D4376C7CA9888AE22EB52C383470ED540020659C28262CD75B83810F68 +:143FE400A473C57DC97DCD7DD17DD57D2F7E897E8473E37E34 +:020000040002F8 +:201CAE00FFE400F507EA07A306E71CFB6F5F5ED65AFF05FB6FF323E907E71CFB6FD65AAD85 +:201CCE0035E71CFB6F3B07D706E71CFF07FB6F7F07E71CFF7FFB6FD65AE71CFF7FD65AADC3 +:201CEE0035E71CFFE400BC3717077206E71CDF679452AD35E71CDF670E7D087CE71CBC37D3 +:201D0E0017075F5EFF05DF6717075F5EFF057F5B0F3F2D22EB10FD73D6476A3EA428FF5FE0 +:201D2E003267A93D8124FFE400FC67FC63AF2B4014FC67FC6340140004FC63AF2BC42D401A +:201D4E0014FC67FC63C42D4014FC67AF2BC42D40147F5B0F3F2D22EB10FD73D6476A3EA48D +:201D6E0028FF5F3267A93D8124FFE400FC63AF2BC42D4014E907AF2BC42D4014FC63E907EC +:201D8E00C42D4014576B1B6E10500704FF5F3267A93D81247F5B0F3F2D22EB10FD73D647B9 +:201DAE006A3EA428FF5F3267A93D8124FFE400F507EA07A306E71CFB6FF507EA07E71CFB4E +:201DCE006FF507EA07D65AFB6FF323E907E71CFB6FF323EA07E71CF323EA07E907E71CFB8D +:201DEE006F3B07D706E71CFF07FB6F7F07E71CFFD0E0DF73DF731B3E0004DF73DF731B3E9E +:201E0E000004DF73DF731B3E0004DF73DF731B3E0004DF73DF731B3E0004DF73DF731B3EB0 +:201E2E000004DF73DF731B3E0004DF73DF731B3E0004FFE400BC3717077206E71CDF670ECB +:201E4E007D087CE71CDF679452AD35E71CDF675F5EFF050004FF5F3267A93D81247F5B0FE9 +:201E6E003F2D22EB10FD73D6476A3EA428FF5F3267A93D8124FFE400401400040004000405 +:201E8E004014000400040004AF2B401400040004AF2BC42D40140004C42D4014000400042E +:201EAE007F5B0F3F2D22EB10FD73D6476A3EA428FF5F3267A93D8124FFE400DF6717070ECA +:201ECE007DE71CBC3717077206E71CDF679452AD35E71C17079452AD350004DF675F5EFFEB +:201EEE000500047F5B0F3F2D22EB10FD73D6476A3EA428FF5F3267A93D8124FFE400BC3700 +:201F0E0017077206E71CDF679452AD35E71CDF675F5EFF05E71CDF670E7D087CE71CF20BAA +:201F2E00CF078906E71CDF67BC371707E71C5F5EFF059452E71C17079452AD35E71CFFE45B +:201F4E0000BC3717077206E71CDF679452AD35E71CDF675F5EFF05E71CDF670E7D087CE790 +:201F6E001CF20BCF078906E71CDF67BC371707E71CDF67B17D0D7DE71CDF679452B17DE736 +:201F8E001CFFE40040140004000400044014000400040004FC63401400040004FC63000456 +:201FAE0000040004FF5F3267A93D81247F5B0F3F2D22EB10FD73D6476A3EA428FF5F32671F +:201FCE00A93D8124FFE4002D27A619241540142D276A1EA21440142D274A1E44154014AFE7 +:201FEE002B2D276A1E40146E27AB22C3144014AF2B8F2B2D274014AF2B4E27291E40148F36 +:20200E002B8F2B6E2B4014FFE400BC3717077206E71CDF679452AD35E71CFF07DF677F078E +:20202E00E71CDF670E7D087CE71CF20BCF078906E71CDF67BC371707E71CFF077F07945206 +:0A204E00E71C17079452AD35E71C9C +:020000040001F9 +:20F5B600200002000500000FF807000000000F1000000000000000000000000000000000E1 +:20F5D600000009D84B07C15A00000000000000000000000020001B801600000FF8070000E8 +:20F5F60000000F10000000000000000000000000000000000000094F4C09C4410000000024 +:20F616000000000000000000200023801A00000FF807000000000F100000000000000000CA +:20F6360000000000000000000000094F4C08B24A0000000000000000000000002000198053 +:20F656000600000FF807000000000F10000000000000000000000000000000000000094F09 +:20F676004C09BB40000000000000000000000000200021800600000FF807000000000F1030 +:20F69600000000000000000000000000000000000000094F4C09F040000000000000000077 +:20F6B6000000000020000D800600000FF807000000000F1000000000000000000000000054 +:20F6D600000000000000094F4C092541000000000000000000000000200005800600000F47 +:20F6F600F807000000000F10000000000000000000000000000000000000094F4C09584190 +:20F71600000000000000000000000000208012001700000FF807000000000F1000000000DD +:20F736000000000000000000000000000000094F4C08F448000000000000000000000000CB +:020000040000FA +:20E944000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FD3 +:20E964000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FB3 +:20E984000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F93 +:20E9A4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F73 +:20E9C4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F53 +:20E9E4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F33 +:20EA04000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F12 +:20EA24000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FF2 +:20EA44000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FD2 +:20EA64000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FB2 +:20EA84000F0F000000000000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F82 +:20EAA4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F72 +:20EAC4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000000000000000000000024 +:20EAE40000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F50 +:20EB04000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F11 +:20EB24000F0F00000000000000000F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0FA5 +:20EB44000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FD1 +:20EB64000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000000000000000F0F0F0F000047 +:20EB840000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FAF +:20EBA4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F71 +:20EBC4000F0F00000F0F0000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F23 +:20EBE4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F31 +:20EC04000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F00000000000000000000C4 +:20EC240000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0E +:20EC44000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FD0 +:20EC64000F0F000000000000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0FA0 +:20EC84000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F90 +:20ECA4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000000000000000000000042 +:20ECC40000000F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FAA +:20ECE4000F0F0F0F00000F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F0F0F0F0F0F0F0F0F6C +:20ED04000F0F000000000000000000000000000000000F0F0F0F0F0F000000000000000077 +:20ED2400000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F67 +:20ED44000F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0000000000000000000000000000DD +:20ED640000000F0F0F0F0F0F0000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F81 +:20ED84000F0F000000000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F07 +:20EDA4000F0F000000000000000000000000000000000F0F0F0F0F0F0F0F0F0F000000009B +:20EDC4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F8B +:20EDE4000F0F000000000F0F0F0F0F0F0F0F0F0F0F0F00000000000000000000000000003D +:20EE040000000F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F68 +:20EE24000F0F000000000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F66 +:20EE44000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0000000046 +:20EE64000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0FEA +:20EE84000F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000006 +:20EEA4000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FAA +:20EEC4000F0F000000000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0FC6 +:20EEE4000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F00000000A6 +:20EF04000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F49 +:20EF24000F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000065 +:20EF44000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F09 +:20EF64000F0F000000000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F25 +:20EF84000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0000000005 +:20EFA4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0FA9 +:20EFC4000F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000000C5 +:20EFE4000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F69 +:20F004000F0F000000000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F84 +:20F024000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0000000064 +:20F044000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F08 +:20F064000F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000024 +:20F084000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FC8 +:20F0A4000F0F000000000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0FE4 +:20F0C40000000000000000000000000000000000000000000000000000000000000000002C +:20F0E40000000000000000000000000000000000000000000000000000000000000000000C +:20F104000000000000000000000000000000000000000000000000000000000000000000EB +:20F124000000000000000000000000000000000000000000000000000000000000000000CB +:20F144000000000000000000000000000000000000000000000000000000000000000000AB +:20F1640000000000000000000000000000000000000000000000000000000000000000008B +:20F1840000000000000000000000000000000000000000000000000000000000000000006B +:20F1A40000000000000000000000000000000000000000000000000000000000000000004B +:20F1C40000000000000000000000000000000000000000000000000000000000000000002B +:20F1E40000000000000000000000000000000000000000000000000000000000000000000B +:20F204000F0F0F0F0F0F0F0F0F0F0F0F0000000000000F0F0F0F00000000000000000000FA +:20F224000F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000000000F0F0F0F0F0F0F0F0F0F0F0F44 +:20F244000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000006 +:20F2640000000F0F0F0F000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F00007C +:20F28400000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FC6 +:20F2A4000F0F0F0F0F0F0F0F0F0F0F0F0000000000000F0F0F0F000000000000000000005A +:20F2C4000F0000000000000000000000000F0000000000000F0F0F0F0F0F0F0F0F0F0F0F58 +:20F2E4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000066 +:20F3040000000F0F0F0F000000000000000000000F0000000000000000000000000F00008F +:20F32400000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F25 +:20F344000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F000000000000000000009B +:20F364000F0000000000000000000000000F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F99 +:20F384000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000000C5 +:20F3A4000F0F0F0F0F0F000000000000000000000F0000000000000000000000000F0000D1 +:20F3C40000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F67 +:20F3E4000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F00000000000000000000FB +:20F404000F0000000000000000000000000F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0FF8 +:20F424000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000024 +:20F444000F0F0F0F0F0F000000000000000000000F0000000000000000000000000F000030 +:20F4640000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FC6 +:20F484000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F000000000000000000005A +:20F4A4000F0000000000000000000000000F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F58 +:20F4C4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000084 +:20F4E4000F0F0F0F0F0F000000000000000000000F0000000000000000000000000F000090 +:20F5040000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F25 +:20F524000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F00000000000000000000B9 +:20F544000F0F0F0F0F0F0F0F00000000000F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F4E +:20F564000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000000E3 +:20F584000F0F0F0F0F0F000000000000000000000F0F0F0F0F0F0F0F00000000000F000086 +:20F5A40000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F85 +:20F5C4000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F000000000000DD +:20F5E4000F0F0F0F0F0F0F0F00000000000F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0FAE +:20F604000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000042 +:20F624000F0F0F0F0F0F0F0F0F0F0000000000000F0F0F0F0F0F0F0F00000000000F0000A9 +:20F6440000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FE4 +:20F664000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0000000000003C +:20F684000F0F0F0F0F0F0F0F00000000000F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0D +:20F6A4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000000A2 +:20F6C4000F0F0F0F0F0F0F0F0F0F0000000000000F0F0F0F0F0F0F0F00000000000F000009 +:20F6E40000000F0F0F0F0F0F00000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F80 +:20F704000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0000000000009B +:20F724000F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000000000000000000000F0F0F0F0F0F99 +:20F744000F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F000000003D +:20F764000F0F0F0F0F0F0F0F0F0F0000000000000F0F00000F0F0F0F0F0F0F0F0F0F00003B +:20F78400000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F57 +:20F7A4000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F000000000000FB +:20F7C40000000000000000000000000000000000000000000000000000000F0F0F0F0F0FCB +:20F7E4000F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F000000009D +:20F804000F0F0F0F0F0F0F0F0F0F000000000000000000000000000000000000000000004E +:20F82400000000000000000000000F0F0F0F0F0F0F0F0F0F00000F0F0F0F000000000F0FD4 +:20F844000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0000000000005A +:20F864000000000000000000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0FB2 +:20F884000F0F0F0F00000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000038 +:20F8A4000F0F0F0F0F0F0F0F0F0F00000000000000000000000000000000000000000000AE +:20F8C40000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000000000000000F0F0F0FDA +:20F8E4000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F000000000000BA +:20F904000000000000000000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F11 +:20F924000F0F0F0F00000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000003D +:20F944000F0F0F0F0F0F0F0F0F0F000000000000000000000000000000000000000000000D +:20F9640000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F0F0F0F0F0F0F0F0FDF +:20F984000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F000000000000000037 +:20F9A4000000000000000000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F71 +:20F9C4000F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000000BB +:20F9E4000F0F0F0F0F0F0F0F0000000000000000000000000000000000000000000000008B +:20FA040000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F5C +:20FA24000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F000000000000000096 +:20FA44000000000000000000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0FD0 +:20FA64000F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000001A +:20FA84000F0F0F0F0F0F0F0F000000000000000000000000000000000000000000000000EA +:20FAA40000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0FBC +:20FAC4000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0000000000000000000014 +:20FAE4000000000000000000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F30 +:20FB04000F0F0F0F00000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000005B +:20FB24000F0F0F0F0F0F000000000000000000000000000000000000000000000000000067 +:20FB440000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F0F0F0F0F0F0F0F0FFD +:20FB64000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0000000000000000000073 +:20FB84000000000000000000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F8F +:20FBA4000F0F0F0F00000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000000BB +:20FBC4000F0F0F0F0F0F0000000000000000000000000000000000000000000000000000C7 +:20FBE40000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F0F0F0F0F0F0F0F0F5D +:20FC04000F0F0F0F0F0F0F0F00000000000000000000000000000000000000000000000068 +:20FC24000000000000000000000000000000000000000000000000000000000000000000C0 +:20FC44000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000000000092 +:20FC6400000000000000000000000000000000000000000000000000000000000000000080 +:20FC8400000000000000000000000000000000000000000000000F0F0F0F0F0F0F0F0F0FCA +:20FCA4000F0F0F0F0F0F0F0F000000000000000000000000000000000000000000000000C8 +:20FCC400000000000000000000000000000000000000000000000000000000000000000020 +:20FCE4000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000000000000F2 +:20FD04000000000000000000000000000000000000000000000000000000000000000000DF +:20FD2400000000000000000000000000000000000000000000000F0F0F0F0F0F0F0F0F0F29 +:20FD44000F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FFB +:20FD64000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F9F +:20FD84000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0FBB +:20FDA4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F5F +:20FDC4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F3F +:20FDE4000F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F5B +:20FE04000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FFE +:20FE24000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F1A +:20FE44000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FBE +:20FE64000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F9E +:20FE84000F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FBA +:20FEA4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F5E +:20FEC4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F7A +:20FEE4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F1E +:20FF04000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FFD +:20FF24000F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F19 +:20FF44000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FBD +:20FF64000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0FD9 +:20FF84000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F7D +:20FFA4000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F5D +:157FEA00250A7FF6076074FA051815FF01F86907C6005703004F +:020000040002F8 +:0642DE0009D84B094F4C0A +:20205800340B0201097B4C01440B020109CD4E01442F0201091150014F180104097D5001BA +:202078000847040108A67E011C0B0401091D4D01382B020109534D01222D020109894D01E5 +:102098004C2B0201085D7D010018010409B35001B1 +:020000040000FA +:20FFC400504800080A00020008347609A64203446908AE5C08FD5D01EA7F00000009DE4217 +:1BFFE40007B675085860000000000000001400000000000000000000000000FC +:020000040002F8 +:2020A800000000000000000000000000000000000000000000000000000000000000000018 +:2020C8000000000000000000000000000000000000000000000000000000000000000000F8 +:2020E8000000000000000000000000000000000000000000000000000000000000000000D8 +:202108000000000000000000000000000000000000000000000000000000000000000000B7 +:20212800000000000000000000000000000000000000000000000000000000000000000097 +:20214800000000000000000000000000000000000000000000000000000000000000000077 +:20216800000000000000000000000000000000000000000000000000000000000000000057 +:20218800000000000000000000000000000000000000000000000000000000000000000037 +:2021A800000000000000000000000000000000000000000000000000000000000000000017 +:2021C8000000000000000000000000000000000000000000000000000000000000000000F7 +:2021E8000000000000000000000000000000000000000000000000000000000000000000D7 +:082208000000000000000000CE +:2042E400251815FF01F86907C600570300141200000000000008B87C09284208A860088370 +:204304005E08FD5D09E4420000000000000000000000000000000000000014000000000096 +:08432400000000000000000091 +:202210000F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FEC +:202230000F0F00000F0F0F0F00000F0F0F0F0F0F0F0F0F0F000000000F0F0F0F00000F0F44 +:202250000F0F0F0F0000000000000000000000000000000000000000000000000000000032 +:2022700000000000000000000000000000000000000000000000000000000000000000004E +:2022900000000000000000000000000000000000000000000000000000000000000000002E +:2022B00000000000000000000F0F0F0F00000000000000000F0F0000000000000F0F0F0F78 +:2022D00000000000000000000F0F0000000000000000000000000000000000000F0F0000B2 +:2022F0000000000000000000000000000000000000000000000000000000000000000000CE +:202310000000000000000000000000000000000000000000000000000000000000000000AD +:2023300000000000000000000000000000000000000000000000000000000000000000008D +:2023500000000000000000000000000000000000000000000000000000000000000000006D +:08237000000000000000000065 +:15432C00250A7FF607607FEA021815FF01F86907C60057030051 +:020000040001F9 +:083FF8000E01020109034F0153 +:020000040002F8 +:20434100141200000100000008347609C242081062084C5F08FD5D092C430000000000006F +:1B43610000000004F87F000000000000001400000000000000000000000000B2 +:20237800000000000000000000000000000000000000000000000000000000000000000045 +:20239800000000000000000000000000000000000000000000000000000000000000000025 +:2023B800000000000000000000000000000000000000000000000000000000000000000005 +:2023D8000000000000000000000000000000000000000000000000000000000000000000E5 +:2023F8000000000000000000000000000000000000000000000000000000000000000000C5 +:202418000000000000000000000000000000000000000000000000000000000000000000A4 +:20243800000000000000000000000000000000000000000000000000000000000000000084 +:20245800000000000000000000000000000000000000000000000000000000000000000064 +:20247800000000000000000000000000000000000000000000000000000000000000000044 +:20249800000000000000000000000000000000000000000000000000000000000000000024 +:2024B800000000000000000000000000000000000000000000000000000000000000000004 +:0824D8000000000000000000FC +:20437C00251815FF01F86907C60057035549D80901538190001412010000000000081374AD +:20439C00098A42087863088F5F08FD5D097C43000000000000000000000000000000000029 +:1043BC0000001400000000000000000000000000DD +:2024E0000000000000000000000000000000000000000000000000000000000000000000DC +:202500000000000000000000000000000000000000000000000000000000000000000000BB +:2025200000000000000000000000000000000000000000000000000000000000000000009B +:2025400000000000000000000000000000000000000000000000000000000000000000007B +:2025600000000000000000000000000000000000000000000000000000000000000000005B +:2025800000000000000000000000000000000000000000000000000000000000000000003B +:2025A00000000000000000000000000000000000000000000000000000000000000000001B +:2025C0000000000000000000000000000000000000000000000000000000000000000000FB +:2025E0000000000000000000000000000000000000000000000000000000000000000000DB +:202600000000000000000000000000000000000000000000000000000000000000000000BA +:2026200000000000000000000000000000000000000000000000000000000000000000009A +:08264000000000000000000092 +:2043CC0025554A1509015381901815FF01F86907C60057030014120100000000000813741F +:2043EC0009D04208E06408D25F08FD5D09CC43000000000000000000000000000000000097 +:20440C0000001400000000000000000000000000200002800202000FF807000000000F10A9 +:20442C0000000000000000000000000000000000000008557702004000000000000000005A +:04444C00000000006C +:202648000F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FB0 +:202668000F0F00000F0F0F0F00000F0F0F0F0F0F0F0F0F0F000000000F0F0F0F00000F0F08 +:202688000F0F0F0F00000000000000000000000000000000000000000000000000000000F6 +:2026A800000000000000000000000000000000000000000000000000000000000000000012 +:2026C8000000000000000000000000000000000000000000000000000000000000000000F2 +:2026E80000000000000000000F0F0F0F00000000000000000F0F0000000000000F0F0F0F3C +:2027080000000000000000000F0F0000000000000000000000000000000000000F0F000075 +:20272800000000000000000000000000000000000000000000000000000000000000000091 +:20274800000000000000000000000000000000000000000000000000000000000000000071 +:20276800000000000000000000000000000000000000000000000000000000000000000051 +:20278800000000000000000000000000000000000000000000000000000000000000000031 +:0827A800000000000000000029 +:15445000250A7FF607607FEA021815FF01F86907C6005703002C +:020000040001F9 +:037FFB00085577AF +:020000040002F8 +:204465000E010201096F4F011412000101000100083476096E4208486608156008FD5D092B +:20448500504400000005FB7F091C44096544000000000000001400000000000000000000D5 +:0344A50000000014 +:2027B000200001000200000FF80700000000FF1000000000000000000000000000000000C9 +:2027D000000009614B000000000000000000000000000000200001000300000FF807000002 +:2027F0000000FF1000000000000000000000000000000000000009614B0000000000000005 +:202810000000000000000000200001000400000FF80700000000FF10000000000000000066 +:202830000000000000000000000009614B00000000000000000000000000000020000100B2 +:202850000500000FF80700000000FF100000000000000000000000000000000000000961DC +:202870004B000000000000000000000000000000200001000600000FF80700000000FF10B9 +:2028900000000000000000000000000000000000000009614B000000000000000000000073 +:2028B000000000000000000000000000000000000000000000000000000000000000000008 +:2028D0000000000000000000000000000000000000000000000000000000000000000000E8 +:2028F0000000000000000000000000000000000000000000000000000000000000000000C8 +:202910000000000000000000000000000000000000000000000000000000000000000000A7 +:20293000000000000000000000000000000000000000000000000000000000000000000087 +:20295000000000000000000000000000000000000000000000000000000000000000000067 +:20297000000000000000000000000000000000000000000000000000000000000000000047 +:20299000000000000000000000000000000000000000000000000000000000000000000027 +:2029B000000000000000000000000000000000000000000000000000000000000000000007 +:2029D0000000000000000000000000000000000000000000000000000000000000000000E7 +:2029F0000000000000000000000000000000000000000000000000000000000000000000C7 +:202A10000000000000000000000000002512041A006A2B0000000006096A3B15FE0100FBF9 +:202A3000FDFF00140001FFFC75FFFC1A006A470000000106096A5715FE0100FBFDFF00144F +:202A50000002FFFC75FFFC1A006A630000000206096A7315FE0100FBFDFF00140003FFFC07 +:202A700075FFFC1A006A7F0000000306096A8F15FE0100FBFDFF00140004FFFC75FFFC1A20 +:202A9000006A9B0000000406096AAB15FE0100FBFDFF00140005FFFC75FFFC140000FFFC5B +:202AB00033FFFC1815FF01F86907C600570352F015FF01F86907C600570115FF03F8691CB2 +:052AD000C500690000D3 +:2044A80009614B141200050000010008347609B44208B46808345D08FD5D081C6A000000B5 +:1E44C80009A84408B067000000000000000000001400000000000000000000000000AE +:202AD5000000000000000000000000000000000000000000000000000000000000000000E1 +:202AF5000000000000000000000000000000000000000000000000000000000000000000C1 +:202B15000000000000000000000000000000000000000000000000000000000000000000A0 +:202B3500000000000000000000000000000000000000000000000000000000000000000080 +:202B5500000000000000000000000000000000000000000000000000000000000000000060 +:202B7500000000000000000000000000000000000000000000000000000000000000000040 +:202B9500000000000000000000000000000000000000000000000000000000000000000020 +:202BB500000000000000000000000000000000000000000000000000000000000000000000 +:202BD5000000000000000000000000000000000000000000000000000000000000000000E0 +:202BF5000000000000000000000000000000000000000000000000000000000000000000C0 +:202C150000000000000000000000000000000000000000000000000000000000000000009F +:082C3500000000000000000097 +:2044E600251204140000FFFC33FFFC607FE6051815FF01F86907C600570300141200000099 +:2045060000000008347609364208D56A08775D08FD5D09E6440000000000000000000000AA +:2045260000000000000000001400000000000000000000000000208009000600000FF807A4 +:20454600000000000F10000000000000000000000000000000000000087678000000000040 +:0A456600000000000000000000004B +:020000040001F9 +:20B53A000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F11 +:20B55A000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FF1 +:20B57A000F0F000000000000000000000000000000000000000000000000000000000F0F75 +:20B59A000F0F000000000000000000000000000000000000000000000000000000000F0F55 +:20B5BA000F0F0000000000000F0F0F0F0F0F0F0F00000000000000000000000000000F0FBD +:20B5DA000F0F0000000000000F0F0F0F0F0F0F0F00000000000000000000000000000F0F9D +:20B5FA000F0F0000000000000F0F0F0F0F0F0F0F00000000000000000000000000000F0F7D +:20B61A000F0F0000000000000F0F00000F0F0F0F00000000000000000000000000000F0F7A +:20B63A000F0F000000000000000000000000000000000000000000000000000000000F0FB4 +:20B65A000F0F000000000000000000000000000000000000000000000000000000000F0F94 +:20B67A000F0F000000000000000000000000000000000000000000000000000000000F0F74 +:20B69A000F0F000000000000000000000000000000000000000000000000000000000F0F54 +:20B6BA000F0F000000000000000000000000000000000000000000000000000000000F0F34 +:20B6DA000F0F000000000000000000000000000000000000000000000000000000000F0F14 +:20B6FA000F0F000000000000000000000000000000000000000000000000000000000F0FF4 +:20B71A000F0F0F0F00000000000000000000000000000000000000000000000000000F0FB5 +:20B73A000F0F0F0F00000000000000000000000000000000000000000000000000000F0F95 +:20B75A000F0F0F0F00000000000000000000000000000000000000000000000000000F0F75 +:20B77A000F0F0F0F00000000000000000000000000000000000000000000000000000F0F55 +:20B79A000000000000000000000000000000000000000000000000000000000000000F0F71 +:20B7BA000000000000000000000000000000000000000000000000000000000000000F0F51 +:20B7DA000000000000000000000000000000000000000000000000000000000000000F0F31 +:20B7FA000000000000000000000000000000000000000000000000000000000000000F0F11 +:20B81A000000000000000000000000000000000000000000000000000000000000000F0FF0 +:20B83A000F0F0F0F00000000000000000000000000000000000000000000000000000F0F94 +:20B85A000F0F0F0F00000000000000000000000000000000000000000000000000000F0F74 +:20B87A000F0F0F0F00000000000000000000000000000000000000000000000000000F0F54 +:20B89A000F0F0F0F00000000000000000000000000000000000000000000000000000F0F34 +:20B8BA000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F8E +:20B8DA000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F6E +:20B8FA000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F4E +:20B91A000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F2D +:020000040002F8 +:2045700025557FFF01035383201815FF01F86907C6005703000876780014010309A54F0178 +:204590002020000101000100083476099842063A7508BA5D08FD5D0970450000000985456C +:2045B000093C4509884500000000000000140000000000000000000000000020000700044C +:2045D00000000FF807000000000F1000000000000000000000000000000000000009E44A67 +:0F45F000087E49000000000000000000000000ED +:020000040001F9 +:20F756000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F0F0FD1 +:20F776000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F0F0FB1 +:20F796000F0F0F0F0F0F0F0F0F0F0F0F00000000000000000000000000000000000000009F +:20F7B6000000000000000F0F00000000000000000000000000000000000000000000000015 +:20F7D6000000000000000F0F000000000000000000000000000000000000000000000000F5 +:20F7F6000000000000000F0F000000000000000000000000000000000000000000000000D5 +:20F816000000000000000F0F00000F0F0F0F00000000000000000000000000000000000078 +:20F83600000000000000000000000F0F0F0F00000000000000000000000000000000000076 +:20F85600000000000000000000000F0F0F0F00000000000000000000000000000000000056 +:20F87600000000000000000000000000000000000000000000000000000000000000000072 +:20F89600000000000000000000000000000000000000000000000000000000000000000052 +:20F8B600000000000000000000000000000000000000000000000000000000000000000032 +:20F8D600000000000000000000000000000000000000000000000000000000000000000012 +:20F8F6000000000000000000000000000000000000000000000000000000000000000000F2 +:20F916000000000000000000000000000000000000000000000000000000000000000000D1 +:20F936000000000000000000000000000000000000000000000000000000000000000000B1 +:20F95600000000000000000000000000000000000000000000000000000000000000000091 +:20F97600000000000000000000000000000000000000000000000000000000000000000071 +:020000040002F8 +:2045FF00250A7FF607607FEA021815FF01F86907C60057030009E44A1811020109B14C0107 +:20461F001A010201092B4E01201200010200010008347609524207567708F15C08FD5D09C1 +:20463F00FF4500000009144609CB4509174600000000000000140000000000000000000021 +:20465F00000000200000000202000FF807000000000F1000000000000000000000000000EA +:17467F00000000000008767808864800000000000000000000000058 +:202C3D000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F97 +:202C5D000F0F0F0F0F0F0F0F0F0F000000000000000000000F0F0F0F0F0F0F0F0000000049 +:202C7D00000000000000000000000000000000000000000000000000000000000000000037 +:202C9D000000000000000000000000000000000000000000000000000000000000000F0FF9 +:202CBD000F0F000000000000000000000000000000000F0F0F0F000000000000000000009D +:202CDD000000000000000F0F0F0F000000000000000000000000000000000F0F0F0F00005F +:202CFD000000000000000000000000000000000000000000000000000000000000000000B7 +:202D1D00000000000000000000000000000000000000000000000000000000000000000096 +:202D3D00000000000000000000000000000000000000000000000000000000000000000076 +:202D5D00000000000000000000000000000000000000000000000000000000000000000056 +:202D7D00000000000000000000000000000000000000000000000000000000000000000036 +:082D9D0000000000000000002E +:20469600250A7FF607607FEA021815FF01F86907C6005703000876780C11040109DB4F018D +:2046B6001412000101000100083476096042083D6C08405E08FD5D09964600000009AB46C6 +:1B46D60009624609AE4600000000000000140000000000000000000000000007 +:020000040001F9 +:20F996000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F0F0F8F +:20F9B6000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F0F0F6F +:20F9D6000F0F0F0F0F0F0F0F0F0F0F0F00000000000000000000000000000000000000005D +:20F9F6000000000000000F0F000000000000000000000000000000000000000000000000D3 +:20FA16000000000000000F0F000000000000000000000000000000000000000000000000B2 +:20FA36000000000000000F0F00000000000000000000000000000000000000000000000092 +:20FA56000000000000000F0F00000F0F0F0F00000000000000000000000000000000000036 +:20FA7600000000000000000000000F0F0F0F00000000000000000000000000000000000034 +:20FA9600000000000000000000000F0F0F0F00000000000000000000000000000000000014 +:20FAB600000000000000000000000000000000000000000000000000000000000000000030 +:20FAD600000000000000000000000000000000000000000000000000000000000000000010 +:20FAF6000000000000000000000000000000000000000000000000000000000000000000F0 +:20FB16000000000000000000000000000000000000000000000000000000000000000000CF +:20FB36000000000000000000000000000000000000000000000000000000000000000000AF +:20FB560000000000000000000000000000000000000000000000000000000000000000008F +:20FB760000000000000000000000000000000000000000000000000000000000000000006F +:20FB960000000000000000000000000000000000000000000000000000000000000000004F +:20FBB60000000000000000000000000000000000000000000000000000000000000000002F +:020000040002F8 +:2046F100250A7FF607607FEA021815FF01F86907C60057030018110201094750011A010294 +:204711000109974E010E08020208267E01201200000300000008347609524207967908F13E +:204731005C08FD5D09F1460000000000000000000906470000000000000014000000000000 +:204751000000000000000000208004800300000FF807000000000F100000000000000000F4 +:1C4771000000000000000000000009E44A077E5C00000000000000000000000014 +:202DA5000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F2E +:202DC5000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0E +:202DE5000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000000000000000000000000C0 +:202E050000000F0F0F0F000000000000000000000000000000000F0F0F0F00000000000035 +:202E2500000000000000000000000F0F0F0F000000000000000000000000000000000F0F33 +:202E45000F0F000000000000000000000000000000000F0F0F0F0000000000000000000013 +:202E65000000000000000F0F0F0F000000000000000000000000000000000F0F0F0F0000D5 +:202E850000000000000000000000000000000F0F0F0F0000000000000000000000000000F1 +:202EA50000000F0F0F0F000000000000000000000000000000000F0F0F0F00000000000095 +:202EC500000000000000000000000F0F0F0F000000000000000000000000000000000F0F93 +:202EE5000F0F0F0F0F0F0F0F0F00000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F29 +:082F05000F0F0F0F0F0F0F0F4C +:20478D00250A7FF607607FE3041815FF01F86907C60057030009E44A0911020109E950014F +:2047AD00141200010100010008347609284208A56D08835E08FD5D098D4700000009A2476A +:2047CD0009594709A547000000000000001400000000000000000000000000200000800872 +:2047ED0000000FF807000000000F1000000000000000000000000000000000000008977A66 +:0F480D00086A4A000000000000000000000000E0 +:020000040001F9 +:20FBD6000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F2F +:20FBF6000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F4B +:20FC16000F0F0F0F0000000000000000000000000000000000000000000000000000000092 +:20FC36000000000000000000000000000000000000000000000000000000000000000000AE +:20FC5600000000000F0F0F0F0F0F0F0F0000000000000000000000000F0F0F0F0F0F0F0F9E +:20FC76000000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000000007E +:20FC960000000000000000000F0F0F0F0F0F0F0F0000000000000000000000000F0F0F0F9A +:20FCB6000F0F0F0F0000000000000000000000000F0F0F0F0F0F0F0F000000000F0F0F0F3E +:20FCD6000F0F0F0F0F0F0F0F0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F6A +:20FCF600000000000F0F0F0F0F0F0F0F000000000000000000000000000000000000000076 +:20FD16000000000000000000000000000000000000000000000000000000000000000000CD +:20FD360000000000000000000F0F0F0F0F0F00000000000000000000000000000F0F0F0F17 +:20FD56000F0F0000000000000000000000000000000000000000000000000000000000006F +:20FD76000000000000000000000000000000000000000000000000000F0F0000000000004F +:20FD96000000000000000000000000000F0F0000000000000000000000000000000000002F +:020000040002F8 +:20481C00250A7FF607607FEA021815FF01F86907C60057030008977A0917020109E74C01D8 +:20483C001418000101000100083476097C4207D67B08C65E08FD5D091C48000000093148DF +:20485C0009E847093448000000000000001400000000000000000000000000200005000442 +:20487C0003000FF807000000000F10000000000000000000000000000000000000087678F6 +:0F489C0009FD41000000000000000000000000C6 +:202F0D000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FC4 +:202F2D000F0F0F0F0F0F0F0F0F0F000000000000000000000F0F0F0F0F0F0F0F0F0F000058 +:202F4D00000000000000000000000000000000000000000000000000000000000000000064 +:202F6D000000000000000000000000000000000000000000000000000000000000000F0F26 +:202F8D000F0F000000000000000000000000000000000F0F0F0F00000000000000000000CA +:202FAD000000000000000F0F0F0F00000000000000000000000000000000000000000000C8 +:202FCD000000000000000000000000000000000000000000000000000000000000000000E4 +:202FED000000000000000000000000000000000000000000000000000000000000000000C4 +:20300D000000000000000000000000000000000000000000000000000000000000000000A3 +:20302D00000000000000000000000000000000000000000000000000000000000000000083 +:20304D00000000000000000000000000000000000000000000000000000000000000000063 +:08306D0000000000000000005B +:2048AB00250A7FF607607FEA021815FF01F86907C6005703000876780D11020109BF4D0195 +:2048CB001412000101000100083476096042080D6F08405E08FD5D09AB4800000009C048AE +:1B48EB0009774809C348000000000000001400000000000000000000000000C2 +:20307500200007000400000FF807000000000F1000000000000000000000000000000000E3 +:203095000000085577098C41000000000000000000000000200004000400000FF80700003B +:2030B50000000F100000000000000000000000000000000000000876780824490000000071 +:0830D5000000000000000000F3 +:020000040001F9 +:20FDB6000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F0F0F6B +:20FDD6000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F0F0F4B +:20FDF6000F0F0F0F0F0F0F0F0F0F0F0F000000000000000000000000000000000000000039 +:20FE16000000000000000F0F000000000000000000000000000000000000000000000000AE +:20FE36000000000000000F0F0000000000000000000000000000000000000000000000008E +:20FE56000000000000000F0F0000000000000000000000000000000000000000000000006E +:20FE76000000000000000F0F00000F0F0F0F00000000000000000000000000000000000012 +:20FE9600000000000000000000000F0F0F0F00000000000000000000000000000000000010 +:20FEB600000000000000000000000F0F0F0F000000000000000000000000000000000000F0 +:20FED60000000000000000000000000000000000000000000000000000000000000000000C +:20FEF6000000000000000000000000000000000000000000000000000000000000000000EC +:20FF16000000000000000000000000000000000000000000000000000000000000000000CB +:20FF36000000000000000000000000000000000000000000000000000000000000000000AB +:20FF560000000000000000000000000000000000000000000000000000000000000000008B +:20FF760000000000000000000000000000000000000000000000000000000000000000006B +:20FF960000000000000000000000000000000000000000000000000000000000000000004B +:20FFB60000000000000000000000000000000000000000000000000000000000000000002B +:20FFD60000000000000000000000000000000000000000000000000000000000000000000B +:020000040002F8 +:20490600250A7FF607607FEA021815FF01F86907C600570300085577087678181102010967 +:20492600F54D011A01020109394F01201200020200020008347609524207B67D08F15C0860 +:20494600FD5D090649000000091B49087570092149000000000000001400000000000000BE +:064966000000000000004B +:2030DD000F0F0F0F0F0F0F0F0F0F0F0F0F0F00000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F11 +:2030FD000F0F00000F0F0F0F00000F0F0F0F0F0F0F0F0F0F000000000F0F0F0F00000F0F69 +:20311D000F0F0F0F0000000000000000000000000000000000000000000000000000000056 +:20313D00000000000000000000000000000000000000000000000000000000000000000072 +:20315D00000000000000000000000000000000000000000000000000000000000000000052 +:20317D0000000000000000000F0F0F0F00000000000000000F0F0000000000000F0F0F0F9C +:20319D0000000000000000000F0F0000000000000000000000000000000000000F0F0000D6 +:2031BD000000000000000000000000000000000000000000000000000000000000000000F2 +:2031DD000000000000000000000000000000000000000000000000000000000000000000D2 +:2031FD000000000000000000000000000000000000000000000000000000000000000000B2 +:20321D00000000000000000000000000000000000000000000000000000000000000000091 +:08323D00000000000000000089 +:20496C00250A7FF607607FEA021815FF01F86907C6005703000E01020109614E011412000F +:20498C00000100000008347609444208DD7008095F08FD5D096C49000000000000000000E4 +:1849AC000981490000000000000014000000000000000000000000000C +:020000040001F9 +:0AFFF600554A4A09015381800B00AF +:020000040000FA +:0D0564000000000000099143100F051B6A04 +:020000040002F8 +:2049C40015FE0800F8499AD90015FE0000F84911DA000B00120415FF03F86907C600570107 +:2049E40015FE0000FBFDFFFE0000FBFEFF00140000FFFC35FFFC3200FFFC15FF03F8691CB3 +:114A0400C50027030209E143557FFF0101538180005A +:020000040000FA +:017FFF000081 +:020000040002F8 +:204A1500120415FF03F86907C600570115FE0007FBFDFFFE0004FBFEFF00140000FFFC357F +:204A3500FFFC3203FFFC15FF03F8691CC500270302091E470012046815FF01F86907C60082 +:204A5500570115FE0000FBFDFFFE0000FBFEFF00140000FFFC35FFFC3200FFFC15FF03F86E +:0B4A7500691CC50027030209AB4400C8 +:203245000A0000000000707078587C4CFEC6FF03FF01FF0103FFC6FE4C7C587870700000E3 +:203265000000000000000000000000003F3F3F203F203F20203F3F3F0000000000000000D1 +:203285000000C0C0E060F030F818FC0CFC04FC3CE02020E020E020E020E020E0E0E0000039 +:2032A500000000000000E0E0E020E020E020E020E020E020FC3C04FC0CFC18F830F060E099 +:2032C500C0C00000000007070704070407040704070407043F3C203F303F181F0C0F070770 +:2032E50003030A0000000000E0E0F0B0F898FC8CFE06FE02FE0206FE8CFC98F8B0F0E0E0C1 +:2033050000000000000000000000000000007F7F7F407F407F40407F7F7F000000000000B0 +:20332500000000000000C0C0E060F030F818FC0CFC04FC3CE02020E020E020E020E020E058 +:20334500E0E000000000E0E0E020E020E020E020E020E020FC3C04FC0CFC18F830F0E0E0B8 +:20336500C0C00000000007070704070407040704070407043F3C203F303F181F0C0F0607D0 +:20338500030300000008060000F80800800000000008000000F80200800000000008040006 +:2033A50000F80420800000000000002000080220800000000008060800F808088000000004 +:2033C5000008000800F80208800000000008040800F8042880000000000000280008022844 +:2033E5008000000089739573A173AD73B9738973C5739573D173A173DD73AD7300000101DE +:20340500020203030405060708090A0B00000C00F0E97301741174000F000708E77208454B +:013425007234 +:204A80000200004040E060FB5BFF7FFF3FEE7FEE7BFF3F7F0E3F1F3F1F3F1F3F3F7F3F7FCC +:204AA000377F0200004040E0C0E040E0C0E080E6C6EFCFFF99FF10B918BC8CFEC4EEECFE3A +:204AC000F8FCF0F80008000000F8000880000000C44A000000000000000000000000000064 +:174AE000000000000100F0D04AD24AE24A000FF80709A24A09804A96 +:203426000C00E8E814F488F844FCE8BCD46CE818F848F848D030E0E0E0A070F0FC2CCCF4F6 +:20344600787807070B0F151E161D223F203F203F517E293E5F7E296F141F121F191F1F1F44 +:203466000E0EC0C0EC2E36DA12FE0CFC0CF404FCB65E5CEC6CB67EDABAFE0CFC38F8E8F8C2 +:203486007070030337746C5B487F303F302F203F6D7A3A37366D5E7B7D7F101F1C1F1F1F62 +:2034A6000000C0C024EE1AF6A4FA54FCF42C34CCF42EE83C58BEE4FEA47C3CE458FCE8F8A4 +:2034C600F07003032477586F285F213E2A352D322F74173C1A7D277F3D261C3F161B131F26 +:2034E6000F0C0C00ECEC12F288F844FCE8BCD46CE818F848F848D030E0E060A0B8F8FCFC37 +:203506007CFCC0C007070B0F151E161D223F203F203F517E293E5F7E296F111F1F131D1EB8 +:20352600080F0707C0C0EC2E36DA12FE0CFC04FC04FCB65E5CEC6CB65AFEBEFE08F838F8DC +:20354600F8F80000030337746C5B487F303F203F203F6D7A3A37366D7E5B5D7F303F1C1FAF +:20356600171F0E0EC0C024EE1AF6A4FA54FCF42C34CCF42EE83C58BEE4FEBC6438FC68D871 +:20358600C8F8303003032477586F285F213E2A352D322F74173C1A7D277F253E3C271A3FA7 +:2035A600171F0E0E0008080000F80A00800000000008000000F80200800000000008040093 +:2035C60000F80600800000000000002000080220800000000008080800F80A0880000000FB +:2035E6000008000800F80208800000000008040800F806088000000000000028000802283F +:2036060080000000AA75B675C275CE75DA75AA75E675B675F275C275FE75CE750000010116 +:20362600020203030405060708090A0B00000C00F00A7622763276000FF80708E8740826E2 +:01364600740F +:204AF700020000000000000000000000000000000000FFFFFFFDFFF9FFF3FFA7FF8FFFDFA7 +:204B1700FFFF020000000000000000000000000000000000FFFFFF81FF81FF81FF81FF8100 +:204B3700FF81FFFF000000008000000000000008800000003B4B434B0001000100010001C0 +:204B5700000100010001000100000200F04B4B4F4B5F4B000FF80709194B09F74A020000A7 +:204B7700001C1C372F283F3B3E303F131F1F110E090F0F1F18171C171C171C3F223F3F02E9 +:204B97000000007070D8E828F8B8F818F890F0F010E020E2E2F636DE7ADC74D878F888F89E +:204BB700F80008000000F8000880000000B84B00000000000000000000000000000000005B +:144BD700000100F0C44BC64BD64B000FF80709964B09744BD8 +:20364700060007070F0F1F1F3F373F3B3F3F3F3F3F3F2F3F131F0F0F1F1F1F1F191F0D0BFF +:203667000E0EE0E0F0F0F8F8ECFC5CFC3CFC1CFC54FC44FC08F89070F8F8E43CE4FCF8F897 +:20368700707007070F0F1F1F3F3F343F383F303F223F223F101F090E1F1F1F1F191F0D0B2E +:2036A7000E0E0600FCFCFCFCFEFEFEFEC4FC84FC84FC94FC94FC04FC1CE4F8F8A0E0E0E0E9 +:2036C70060A0E0E00F0F1F1F3F3B3F3D3F3F3F3F3F3F3F3F3C3F1C1F0F0F040704070704E4 +:2036E70007070707E0E0F0F0F8F8FCFCECFCFCFCFCFCFCFCF4FCC8F8F0F0F8F824FCE4FCCF +:20370700F8F870700008020800F80408800000000008000000F802008000000000080400AE +:2037270000F80008800000000000002000080220800000000B77177723772F7700000101E6 +:2037470002020303000001010202030300000400F03B7743775377000FF80708A97608479E +:203767007606000F0F1F1F3F3F7F7F7F7F7F7F7F7F2F3F322F1D1A0F0C1F1F1F1F191F0D12 +:203787000B0E0EF0F0F8F8FCFC5EFEAEFE4EBEFE0EF46CFC04F818F0B0F8F8F8F898F8B0E3 +:2037A700D070702F2F1F1F373F797F767977787F702F363F201F180F0C1F1F3C273F271F3F +:2037C7001F0E0E0600F8F8FCFCFEFEA6FEDFEFFC04FC04FC34FC04FC04FC14F8F8A0E0E0BB +:2037E700E060A0E0E01F1F3F3F7F7FFDFFFEFFFFFEF9FE7F7E273C1F140F0B0407040707B1 +:203807000407070707F4F4F8F8FCFCFEFEFEFEFEFEFEFEF4FC4CF4B858F030F8F83CE4FC55 +:20382700E4F8F870700008020800F80408800000000008000000F8020080000000000804A9 +:203847000000F80008800000000000002000080220800000002C783878447850780000013E +:203867000102020303000001010202030300000400F05C7864787478000FF80708CA77083B +:2038870068770C00F8F804FC1AE607F9F1FF89FFF58FFDB7FD97FE067C84F8F8F050FC3C96 +:2038A700FCFC303011110E0F383F19173729223D342B233F363D2F2C0B0F151E3E3F373F35 +:2038C70017190E0EC0C030F088F874CC0AF6A25E926E16EE06FE94FCB8F8F8F83CE4FCE4FD +:2038E700F8F8707003030D0F1F11352B6857D6E9FAE5E2FDF0FFB0FF547F3F3F1F1F191F9E +:203907000D0B0E0EC0C030F078882CD4D62AEAD6F927F57BF15FF21EEC3CD8F8F8F898F8A4 +:20392700B0D0707003030C0F111F2F33576F487F57785F763F321F181F1C1F1F3C273F2752 +:203947001F1F0E0E0C00F8F804FC1AE607F9F1FF89FFF58FFDB7FE96FE067C84F8F8F010D2 +:20396700F8E87C44383811110E0F383F19173729223D342B233F363D2F2C0B0F0506191F9F +:203987001F130F0F0606C0C030F088F874CC0AF6A25E926E4EB606FE12FEBCFCF0F0F8F8C4 +:2039A70098F8B0D0707003030D0F1F11362B6857D6E9FAE5E1FEF0FFB1FFD4DF1F1F3C272E +:2039C7003F271F1F0E0EC0C030F078882CD4D62AEAD6F927F57BF15FF21EF63EF8F83CE48C +:2039E700FCE4F8F8707003030C0F111F2F33576F487F57785F763F321F181F1C0F0F1F1FED +:203A0700191F0D0B0E0E0008080000F80A00800000000008000000F8020080000000000817 +:203A2700040000F80600800000000000002000080220800000000008080800F80A08800091 +:203A470000000008000800F80208800000000008040800F806088000000000000028000803 +:203A67000228800000000D7A197A257A317A3D7A0D7A497A197A557A257A617A317A0000A9 +:203A87000101020203030405060708090A0B00000C00F06D7A857A957A000FF807084B790C +:203AA7000889780C00F0F00CFC1AE607F9B15FE93FD6EE1EF6FC14FE027C84F8F850F0FCB6 +:203AC7003CFCFC30300707181F223D6C53546F487F517E4F7F467D675C734FD4BF7E7F37B2 +:203AE7003F17190E0EE0E018F814EC629E827E02FE02FE06FA26DA26DA6FB9EDBB9EFEFCFC +:203B0700E4F8F800000707181F28374679417EC0FF407F407F4976C9B6DBB69AF7727F3FDB +:203B27003F0D0B0E0EE0E018F834CC5AA6AAD641FFBF7FDA6EFA4EFB1DF33DF9FFFEFE9CD5 +:203B4700FCB8D870700707181F302F6D53526F4D7E537C5B765F72FFD8CFBC5F7F3C273FAF +:203B6700271F1F0E0E0C00F0F00CFC1AE607F9B15FE93FD7EF1DF5FC14FE027C84F8F83089 +:203B8700D0F8E85C6438380707181F223D6C53546F487F497E5F7F467D675C734FD4BF7958 +:203BA7007F1F130F0F0606E0E018F814EC629E827E02FE02FE06FA26DA26DA33DDB1DF9E15 +:203BC700FEFCFCB0D070700707181F28374679C1FE407F407F407F4976DBB6DBB6B7EA7E29 +:203BE7007D3F271F1F0000E0E018F834CC5BA7A9D746FEBA7EDA6EFA4EFB1DF13FFEFE3CBF +:203C0700E4FCE4F8F870700707181F302F6D53526F4D7E537C5B765F727F58CFBC9FFF7F29 +:203C27007F393F1D1B0E0E0008080000F80A00800000000008000000F8020080000000001E +:203C470008040000F80600800000000000002000080220800000000008080800F80A088067 +:203C67000000000008000800F80208800000000008040800F80608800000000000002800E9 +:203C8700080228800000002E7C3A7C467C527C5E7C2E7C6A7C3A7C767C467C827C527C00DB +:203CA700000101020203030405060708090A0B00000C00F08E7CA67CB67C000FF807086CD9 +:043CC7007B08AA7A52 +:204BEB0002000000FF00FF7FFF80FFBFE0BFFFADFFA5FFA0FFBFFFBFBFE0BFFFBFE0BFFF2A +:204C0B00FFFF02000000FF00FFFEFF01FFFD07FDFF15FF55FF05FFFDFFFDFD07FDFFFD0725 +:204C2B00FDFFFFFF0008000000F80008800000002F4C00000000000000000000000000006C +:204C4B00000000000100F03B4C3D4C4D4C000FF807090D4C09EB4B80000000624C010000D1 +:104C6B00664C000000000000000000000000000087 +:203CCB0009003F007F3FC040DF5FF050D050F050F050FF00FFFF0000FFFF000000000000BA +:203CEB000000FC00FEFC0302FBFA0F0A0B0A0F0A0F0AF050F050F050F050F050F050F050A9 +:203D0B00F050000000000000000000000000000000000F0A0F0A0F0A0F0A0F0A0F0A0F0AA9 +:203D2B000F0AD070F050D070F050DF7FC07F7F3F3F000000000000000000FFFF00FFFFFFCA +:123D4B00FF000B0E0F0A0B0E0F0AFBFE03FEFEFCFC0013 +:204C7B0025120415FF03F86907C600570115FE000CFBFDFFFE8007FBFEFF00140000FFFC9F +:204C9B0035FFFC3202FFFC15FF03F8691CC5002703020927460025120415FF03F86907C61F +:204CBB0000570115FE001AFBFDFFFE8006FBFEFF00140000FFFC35FFFC3200FFFC15FF035E +:204CDB00F8691CC50027030203C47F0025120415FF03F86907C600570115FE800EFBFDFF95 +:204CFB00FE8006FBFEFF00140000FFFC35FFFC3200FFFC15FF03F8691CC50027030203C465 +:204D1B007F0025120415FF03F86907C600570115FE8004FBFDFFFE800AFBFEFF00140000FF +:204D3B00FFFC35FFFC3202FFFC15FF03F8691CC500270302093C480025120415FF03F86939 +:204D5B0007C600570115FE8006FBFDFFFE0008FBFEFF00140000FFFC35FFFC3202FFFC1502 +:204D7B00FF03F8691CC50027030209CB480025120415FF03F86907C600570115FE000CFB9A +:204D9B00FDFFFE0008FBFEFF00140000FFFC35FFFC3202FFFC15FF03F8691CC5002703020B +:204DBB000931490025120415FF03F86907C600570115FE001CFBFDFFFE8016FBFEFF0014B7 +:204DDB000000FFFC35FFFC3200FFFC15FF03F8691CC50027030203C47F0025120415FF0343 +:204DFB00F86907C600570115FE0011FBFDFFFE8017FBFEFF00140000FFFC35FFFC3200FFFA +:104E1B00FC15FF03F8691CC50027030203C47F00C0 +:203D5D002512041A007DEE00000002064000497473206C6F636B65643F00470101041400DC +:203D7D000045FD120045FF0E004E010512010141FF0044130140006661746536206861641D +:203D9D0020746865206B65790A6C61737421004701010414000041FF0044130140004920BB +:203DBD0073686F756C64206865616420746F0A68697320706C6163652E00470101041400A0 +:203DDD000041FF0044130145FE1200440301097E25140001000315FF03F86907C600570130 +:203DFD0015FE8004FBFDFFFE8007FBFEFF00140000FFFC35FFFC3202FFFC15FF03F8691C99 +:093E1D00C50027030209AD4700AE +:204E2B0025120415FF03F86907C600570115FE0007FBFDFFFE8001FBFEFF00140000FFFCF8 +:204E4B0035FFFC3200FFFC15FF03F8691CC5002703020989490025120415FF03F86907C60A +:204E6B0000570115FE000DFBFDFFFE8001FBFEFF00140000FFFC35FFFC3200FFFC15FF03BE +:204E8B00F8691CC5002703020927460025120415FF03F86907C600570115FE0007FBFDFF3A +:204EAB00FE8001FBFEFF00140000FFFC35FFFC3200FFFC15FF03F8691CC500270302094135 +:204ECB00430025120415FF03F86907C600570115FE8006FBFDFFFE0008FBFEFF001400000A +:204EEB00FFFC35FFFC3202FFFC15FF03F8691CC50027030209B6460025120415FF03F86910 +:204F0B0007C600570115FE000DFBFDFFFE8001FBFEFF00140000FFFC35FFFC3200FFFC1552 +:204F2B00FF03F8691CC500270302091E470025120415FF03F86907C600570115FE0007FB9B +:204F4B00FDFFFE8001FBFEFF00140000FFFC35FFFC3200FFFC15FF03F8691CC500270302E2 +:204F6B00096D440025120415FF03F86907C600570115FE000DFBFDFFFE8001FBFEFF0014F2 +:1A4F8B000000FFFC35FFFC3200FFFC15FF03F8691CC50027030209314900AC +:203E2600251A007EA50000000A06400049206E65656420746F20677261620A736F6D6574D4 +:203E460068696E672066726F6D004701010414000045FD120045FF0E004E01051201014132 +:203E6600FF00441301400074686520626173656D656E74206F75740A6261636B2100470179 +:203E8600010414000041FF0044130145FE1200440301140001000A1400010007097EA50067 +:204FA50025120415FF03F86907C600570115FE8002FBFDFFFE800AFBFEFF00140000FFFCF9 +:204FC50035FFFC3203FFFC15FF03F8691CC5002703020990450025120415FF03F86907C689 +:204FE50000570115FE0022FBFDFFFE8006FBFEFF00140000FFFC35FFFC3200FFFC15FF0329 +:20500500F8691CC50027030203C47F0025120415FF03F86907C600570115FE000CFBFDFFE9 +:20502500FE0008FBFEFF00140000FFFC35FFFC3202FFFC15FF03F8691CC500270302091E53 +:20504500470025120415FF03F86907C600570115FE0022FBFDFFFE8018FBFEFF001400005E +:20506500FFFC35FFFC3200FFFC15FF03F8691CC50027030203C47F0025120415FF03F86955 +:2050850007C600570115FE0001FBFDFFFE000DFBFEFF00140000FFFC35FFFC3201FFFC1556 +:2050A500FF03F8691CC50027030203C47F0025120415FF03F86907C600570115FE0026FB29 +:2050C500FDFFFE000DFBFEFF00140000FFFC35FFFC3203FFFC15FF03F8691CC500270302D8 +:2050E50003C47F0025120415FF03F86907C600570115FE0026FBFDFFFE8016FBFEFF0014BD +:1A5105000000FFFC35FFFC3200FFFC15FF03F8691CC50027030203C47F006D +:203EA600251A007FA800000009061A007F12000000010640005365656D7320746F206265AE +:203EC6002061200A706562626C65004701010414000045FD120045FF0E004E010512010158 +:203EE60041FF0044070140006F6E2074686520726F616421004701010414000041FF0044E6 +:203F0600070145FE1200440301097FA540005365656D7320746F2062652061200A706562C0 +:203F2600626C65004701010414000045FD120045FF0E004E010512010141FF004413014001 +:203F4600006F6E2074686520726F616421004701010414000041FF004413014000546865DC +:203F66007265207761732061206B65790A756E64657220697421004701010414000041FF28 +:203F86000044130145FE1200440301140001000214000100091400010006140000000709B2 +:203FA6007FFE40005365656D7320746F2062652061200A706562626C6500470101041400E1 +:203FC6000045FD120045FF0E004E010512010141FF0044070140006F6E2074686520726FC2 +:193FE600616421004701010414000041FF0044070145FE12004403010052 +:020000040000FA +:100571001E06210040C3DE3D1E0621F342C3DE3DBF +:020000040002F8 +:11511F002118C536002119C536002112DA3600C9C941 +:020000040000FA +:0C058100063A79091F5106D679092F515E +:020000040001F9 +:20B93A002118C536002119C53600211AC53600211BC53600FA9AD9D610202421B2C02A467D +:20B95A007807AF21B2C0227021B4C02A4E7907410E00218000094D4421B4C0792270C921D9 +:20B97A00B2C02A4F46CB28CB19CB28CB19CB28CB19CB28CB19CB28CB19CB28CB19CB28CBB4 +:20B99A0019AFCB1841CB181F21B2C0227021B4C02A4F46CB28CB19CB28CB19CB28CB19CBD6 +:20B9BA0028CB19CB28CB19CB28CB19CB28CB19AFCB1841CB181F21B4C02270C9E8F6F80140 +:20B9DA003604FA9AD9D610203D21B2C02A4F46CB28CB19CB28CB19CB28CB19CB28CB19793C +:20B9FA00E60F202221B4C02A4F46CB28CB19CB28CB19CB28CB19CB28CB1979E60F4F060083 +:20BA1A0079D608B02840FA9AD9D608C2967F21B2C02A4F46CB28CB19CB28CB19CB28CB19A4 +:20BA3A00CB28CB1979E607C2967F21B4C02A4F46CB28CB19CB28CB19CB28CB19CB28CB1928 +:20BA5A0079E607C2967F21FFC43600AFF53311B2C0D511B7C0D51E07217D53CDDE3DE805FE +:20BA7A00B7C2FD7FFA17C6F80977E5CB4EE120112115C64E2117C67EB7C2877BCB49CA87B2 +:20BA9A007B21FFC43601F801360321B4C02A4F46CB28CB19CB28CB19CB28CB19CB28CB1914 +:20BABA00FAB9C06F079F67095D54CB2ACB1BCB2ACB1BCB2ACB1BF80973FABAC06F079F67CE +:20BADA0009CB2CCB1DCB2CCB1DCB2CCB1D7D3CF8007721B2C02A4F46CB28CB19CB28CB197E +:20BAFA00CB28CB19CB28CB19FAB7C06F079F67094D44CB28CB19CB28CB19CB28CB19F80278 +:20BB1A0071F8097EF80096CA897EF8022A3D77212CC5963045F8097E212DC596303CFA2910 +:20BB3A00C5F80477FA2CC5F805223600F8093A2B223600F8052A234F06005E1600CDED0DDB +:20BB5A0079212AC586234F788E47F8036E2600095D54F8047ECDEF1518020E0FCB592808DE +:20BB7A0021FFC43600C3897EF809341894E5F80BCB46E1200D2117C67EB7C2887CCB41CA10 +:20BB9A00887C21FFC43601F801360121B4C02A4F46CB28CB19CB28CB19CB28CB19CB28CBA5 +:20BBBA0019FAB9C06F079F67095D54CB2ACB1BCB2ACB1BCB2ACB1BF80973FABAC06F079F1B +:20BBDA006709CB2CCB1DCB2CCB1DCB2CCB1D7D3CF8007721B2C02A4F46CB28CB19CB28CB2F +:20BBFA0019CB28CB19CB28CB19FAB8C06F079F67094D44CB28CB19CB28CB19CB28CB19F85F +:20BC1A000271F8097EF80096CA897EF8022A3C77212CC5963045F8097E212DC596303CFA37 +:20BC3A0029C5F80477FA2CC5F805223600F8093A2B223600F8052A234F06005E1600CDEDBE +:20BC5A000D79212AC586234F788E47F8036E2600095D54F8047ECDEF1518020E0FCB5128E0 +:20BC7A000821FFC43600C3897EF809341894E5F80BCB56E1200D2117C67EB7C28A7DCB51AE +:20BC9A00CA8A7D21FFC43601F801360221B2C02A4F46CB28CB19CB28CB19CB28CB19CB28A3 +:20BCBA00CB19FAB7C06F079F67095D54CB2ACB1BCB2ACB1BCB2ACB1BF80973FAB8C06F07F2 +:20BCDA009F6709CB2CCB1DCB2CCB1DCB2CCB1D7D3CF8027721B4C02A4F46CB28CB19CB2856 +:20BCFA00CB19CB28CB19CB28CB19FAB9C06F079F67094D44CB28CB19CB28CB19CB28CB198A +:20BD1A00F80371F8097EF80296CA897EF8037E3DF808227E212CC5963043F8087E212DC5BB +:20BD3A0096303AFA29C5F80477FA2CC5F80522AF22233A223600F8052A234F06005E1600EB +:20BD5A00CDED0D79212AC586234F788E47F8096E2600095D54F8047ECDEF1518020E0FCB98 +:20BD7A0049280821FFC43600C3897EF809341893E5F80BCB5EE1200CFA17C6B7C2897ECB2C +:20BD9A0059CA897E21FFC43601F801360021B2C02A4F46CB28CB19CB28CB19CB28CB19CB73 +:20BDBA0028CB19FAB7C06F079F67095D54CB2ACB1BCB2ACB1BCB2ACB1BF80973FAB8C06FD0 +:20BDDA00079F6709CB2CCB1DCB2CCB1DCB2CCB1D7D3CF8027721B4C02A4F46CB28CB19CB76 +:20BDFA0028CB19CB28CB19CB28CB19FABAC06F079F67094D44CB28CB19CB28CB19CB28CB79 +:20BE1A0019F80371F8097EF802962863F8037E3CF808227E212CC5963044F8087E212DC5E7 +:20BE3A0096303BFA29C5F80477FA2CC5F80522AF22233A223600F8052A234F06005E1600E9 +:20BE5A00CDED0D79212AC586234F788E47F8096E2600095D54F8047ECDEF157918023E0FB9 +:20BE7A000F300721FFC436001805F809341895F8017ED604281AFAFFC4F533F8027EF53331 +:20BE9A0011B1C0D51E03216546CDDE3DE804180D11B1C0D51E03210646CDDE3DE1FA12DAB7 +:20BEBA00E6013D201EAFF5331E03215248CDDE3D3378B1280E212F00097EB728062101C536 +:20BEDA00792270FAFFC4B7282CAFF533FA9AD9F5331E03219E47CDDE3DE178B1281721018F +:20BEFA00C579227001BCC00AEABDC00A3CEABEC021FFC43600FA16C60E002F5F792F572110 +:20BF1A0015C67E0E00A35F79A2574E060079E6100E00A35F79A257B328623E01F533FA9AAF +:20BF3A00D9F5331E03219E47CDDE3DE178B1284C212F00097EB72044FAB6C0C602E603C581 +:20BF5A002600E533F533C51E03216546CDDE3DE804C121FFC43600212500097EB7281D2314 +:20BF7A004E2346110000D52601E533110000D5C5F5331E0421EB61CDDE3DE808FAFFC4B71D +:20BF9A00286101C0C00AF8057721B6C04E11B2C01AF80622131A7711AB1CAF696729194DD3 +:20BFBA00440A57C5F8075E7ACDDC0D5950C1F8062A666F19E57DF80A77E17CF8093211B2C2 +:20BFDA00C02A12137E1221B4C02A666F030A4FE5E5F8095EE179CDDC0DE1094D4421B4C06F +:06BFFA00712370E80AC982 +:020000040000FA +:123AED00C5F8042A575EF8083A473A666FCDA63CC1C95E +:203AFF00FA9BD96F5FFA9CD957CB2517CB2517CB2517CB2517677B856F7C8A677DC693EA86 +:163B1F009BD9577CCE5CEA9CD95FC9F8022AEA9BD97EEA9CD9C970 +:20058D00626B2AEAB8D92A5F2A571AEA9DD90E12119ED92A12130D20FA0E4721BAD9AF2260 +:2005AD000D20FC3EF0EAC8D9EAD8D93E64EAB9D90E00219ED911B0D9CDD70521A0D9CDD76C +:2005CD000521A2D9CDD70521A4D92A81666F8C95672A12137E1213C9474B1EFE78B7280757 +:2005ED00CB21CB033D20F9FABAD9A3B1EABAD9A1C25A08C9FABFD967848426006F092A46E3 +:20060D00234EC92A4F46CD0106210000FE48D01287C6986FCE0C95672A666F37C9C6C02FD9 +:20062D00FE07D867CB3FCB3F3D6F7CE603C604CB35B5C978CB3782C6C16FCED99567C92678 +:20064D000048FABAD90D28170D28250D2833CB47C07BEAC1D9E0137AEAC2D9B4E014C9CBAB +:20066D004FC07BEAD1D9E0187AEAD2D9B4E019C9CB57C07BEAE1D9E01D7AEAE2D9B4E01E03 +:20068D00C9CB5FC0547BCD2A0621F7D9B6E0227AE023C91806181718281849FABAD9CB4752 +:2006AD00C021C1D92AE013FAC6D9B6E014C9FABAD9CB4FC021D1D92AE018FAD6D9B6E019DD +:2006CD00C9FABAD9CB57C0F025F5E6BBE025AFE01A2FE01A21E1D92AE01DFAE6D9B6E01EE4 +:2006ED00F1E025C9FABAD9CB5FC0FAF1D9E022FAF6D9E023C97E34E5CD0406E1C55778E693 +:20070D00F0CB7A2804CBBACBC7CB3728023D777AFE5A2821D624435F1604CD40067B86236C +:20072D00565F04CB504A2005CD1D06545D61CBBC05CD4E0658C116011802160078E60FB13C +:20074D00C878E60F87C6676FCE0795672A666FCB4228012343FABCD9B7E9E3081609250961 +:20076D003409BB0887078C07DC09A607AB07A00937086D08430849082F08C079E024C900D1 +:20078D0021ACD93E0FA187865F233E008E676B2A666F5059FABCD9B7E9C079E025C9C0FAF3 +:2007AD00BAD905280D05281C05280ECB47C079E011C9CB4FC079E016C9CB5FC0F022CB9F5E +:2007CD00B1E022C9CB57C07921B9D9CDE0070602C3E00977CB3721AED98623666F8C9567F3 +:2007ED00F025F5E6BBE025AFE01A2AE0302AE0312AE0322AE0332AE0342AE0352AE0362ABE +:20080D00E0372AE0382AE0392AE03A2AE03B2AE03C2AE03D2AE03E2AE03F3E80E01AF1E0FF +:20082D0025C9C079EAB8D9C94FAFC021BDD9B6200236012371C9C079EABDD9C9B9C078C626 +:20084D00FECE0387271F57FABAD92FA2C878878780C6126F26FFAF2278FE02C82C36FFC9C5 +:20086D00C0CB31FABAD905281305281D052836CB47C0F012E60FB1E012C3A806CB4FC0F08E +:20088D0017E60FB1E017C3BB06CB57C079FEA0300FFE503007B7280A3E6018063E40180219 +:2008AD003E20E01CC9CB5FC079E021C3F106C81604CD400679E6F0CB375FFABBD9A37E286E +:2008CD0007CD1D06545D180BCD1D0679E60F855F8C9357C34C06001604CD400656FABBD962 +:2008ED003D1802D603FE0330FA87C6FF6FCE089567E9180918037A180879CB37FE79E60F5D +:20090D0082CD1D06545DC34C06C81600CD40062A815F8E9357C34C06C81600CD40062A915E +:20092D005F9F8657C34C0628551600CD4006E52A5F2A572A666F7CBA381A20067DBB3814F4 +:20094D00282A79835F8A93577CBA381E201E7DBB381818187B915F9F8257CB7A200C7ABC5D +:20096D00380820087BBD38021802545DE17B22723E04856F8C95677ECBBE67C34E06160478 +:20098D00CD40063A545DCD1D067C121B7D12E1F1A7F5E9C078C6FECE0387271F57FABAD94F +:2009AD002FA2C879E60F5779E6F05FCB3378878780C6124FF2E6F0CB37923001AF83FE1026 +:2009CD0038023E0FCB37E20C0CF2F680E2180428BDB9C07887C6A06FCE069567E978E6F0E8 +:2009ED00CB37C83D875F8783856F8C956717C9FABCD9B7C2B10B21B0D911C5D9CD1006F5A2 +:200A0D00303F78E60FFE0328087DEAC1D97CEAC2D921A6D92A666FCDEA09FAC6D9CBBF2810 +:200A2D001DFABAD9CB4720192AE0102AE0112AE0122AEAC9D92AEACAD9AFEACBD97EEAC68B +:200A4D00D91E00CD4707F1DCA806FAC9D94FFACAD947B121CBD91E00C4020721B2D911D53A +:200A6D00D9CD1006F5303D78E60FFE0328087DEAD1D97CEAD2D921A6D92A666FCDEA09FA32 +:200A8D00D6D9CBBF281BFABAD9CB4F2017232AE0162AE0172AEAD9D92AEADAD9AFEADBD9B1 +:200AAD007EEAD6D91E01CD4707F1DCBB06FAD9D94FFADAD947B121DBD91E01C4020721B414 +:200ACD00D911E5D9CD1006F5D2200B78E60FFE0328087DEAE1D97CEAE2D921A8D92A666F0B +:200AED00CDEA09FAE6D9CBBF2826FABAD9CB5720222AE01B2AE01C2AE521B9D9BE2803CDE4 +:200B0D00E007E12AEAE9D92AEAEAD9AFEAEBD97EEAE6D91E02CD4707F1DCCE06FAE9D94FE8 +:200B2D00FAEAD947B121EBD91E02C4020721B6D92A4F46CD0106FE48F5304CEAF5D9CD2A78 +:200B4D0006EAF1D921AAD92A666FCDEA09FAF6D9CBBF2830FABAD9CB5F202C2AE0212AEA7E +:200B6D00FAD92AEAFBD9AFEAFCD97EE63FE020FAF1D9577EE680CB37EAF7D9B2EAF1D97EFD +:200B8D00E640F680EAF6D91E03CD4707F1DCF106FAFAD94FFAFBD947B121FCD91E03C40234 +:200BAD0007C3590CFABAD9CB47201221B0D92A4F46CD010679B728051E00CD4707FAC9D9B9 +:200BCD004FFACAD947B121CBD91E00C40207FABAD9CB4F201221B2D92A4F46CD010679B72C +:200BED0028051E01CD4707FAD9D94FFADAD947B121DBD91E01C40207FABAD9CB572012211E +:200C0D00B4D92A4F46CD010679B728051E02CD4707FAE9D94FFAEAD947B121EBD91E02C486 +:200C2D000207FABAD9CB5F201221B6D92A4F46CD010679B728051E03CD4707FAFAD94FFAC3 +:200C4D00FBD947B121FCD91E03C4020721BBD9342334FAB8D996C022B6280D3D47AF22B69E +:200C6D00281036003D871817FABFD93CFE4020170600FA9DD94FFAC0D9C602B92001AFEA30 +:200C8D00C0D94FCDBF0578EABFD9C92C009C0006016B01C90123027702C602120356039B97 +:200CAD0003DA0316044E048304B504E50411053B0563058905AC05CE05ED050A0627064271 +:200CCD00065B06720689069E06B206C406D606E706F7060607140721072D07390744074F4F +:200CED0007590762076B0773077B0783078A07900797079D07A207A707AC07B107B607BA7C +:1B0D0D0007BE07C107C407C807CB07CE07D107D407D607D907DB07DD07DF07DA +:203B3500F040E610C2823BC5F8073A473A4F3A5F6EE5AFB32005110010180926006B292965 +:203B55002929545DE17D079F6729292929C501009009C1CB5C2806CB642802CBA4F041E6EA +:203B75000220FA2A02031B7AB320E8C1C9C5F8053A5F6EE5AFB320051100101809AF676B13 +:203B950029292929444DE1672929292911008019545DF8073A6E62577D6B5FCDED0EC1C99B +:200D2800F041E60220FA1AC9F040E6402808180AF040E608200416981802169CF8033A6E8E +:200D48005ACB370767E60383573EE0A4856F62F041E60220FA5EC9C50E6A1803C50E68F801 +:200D6800042A878787F680E20C2A878787472A666FF041E60220FA2AE20520F5C1C9C50E89 +:200D88006A1803C50E68F8042A8787472A8087F680E20C2A666FF041E60220FA7DE27CE28C +:200DA800C1C9FE28D05787874F7B92D8C82127DA6669110400CB3F30037219C8CB3F300575 +:200DC80072197219C872197219721972193D20F5C94F18024B5F7B179F57AF182A4F179F55 +:200DE800477B179F5778BA38067B594F7A5047B7CA0F0E2E00061029CB111730011905200B +:200E0800F64D44C94FAF576F06087929173001190520F84D44C92141FFCB4E20FC12C95766 +:200E2800F040E6402809180B57F040E608200406981802069C2E1F7AA5577BA548CB3707D9 +:170E48005FE60381473EE0A3824FF802F041E60220FA7E02E133E947 +:203BB5007A474B87D0AF914F3E009847C9C5F8042A575EF8093A473A4F3A666FCD823DC111 +:203BD500C9F80656180A1690F040E61028021680C5F8042A5F2A4F2A666FCB337BE60F8253 +:203BF500577BE6F05FCB5A2802CBA20610F041E60220FA2A12130520F40D20E9C1C9F802A2 +:203C15002A666FC5444D1100002AB728031318F9CB3ACB1B7BB228132B2B141C18077EF58E +:203C35000A32F102031D20F61520F3C1F8025E2356C9F090F5215D3CE52101DA2A666FFA7E +:163C550003DAE090EA0020E9F1E090EA0020C9794B5F784257C9E8 +:200E5F00C5E8F0F8000E10AFEFF8003E89223E0332CDAC0E0E003E30E2F2F21E04F2473E6C +:200E7F0020E2F2F23E10E2F2F23E30E2F2F2F2F2B820071D20E81E00180AF8013E0032CDC7 +:200E9F00AC0E1E01E810C1C9F8022A666FC57EE6072839F50E00E23E30E206101E082A575C +:200EBF00CB3A3E1038023E20E2F2F23E30E2F2F21D20ED0520E63E20E2F2F23E30E211D0A4 +:0E0EDF0020F0001B7AB320F9F13D20C7C1C9F5 +:03004800C36B3C4B +:203C6B00F5E5C5D52105DAE52A666FB42815E72107DA2A666FB4280BE72109DA2A666FB483 +:1B3C8B00C42000E1D1C1E1F041E60220FAF1D92105DAC3F0012105DAC3D001A1 +:203CA600E5F040E6402809180CE5F040E6082005210098180321009CC5CB33CB037BE603C0 +:203CC60084473EE0A3824FE1D1D5C5F041E60220FA7C0279E6E05F793CE61FB34F1520EB0A +:163CE600C1D11DC8D578E6FC5F3E20814F8891E603B347C518D5E7 +:200EED00C579CDFB0EC9F8033A6E60477D69CB381F4F3009F041E60220FA2A1213CB38CBDE +:200F0D0019040C30261812F041E60220FA2A1213F041E60220FA2A1213F041E60220FA2ABA +:140F2D001213F041E60220FA2A12130D20D90520D6E1F1E94D +:203CFC00C5F8042A575EF8083A473A666FCDAF3CC1C9F5D5167FCD1E3DB720F81520F7D1E3 +:203D1C00F1C93E20E000F000F000E60F5F3E10E000F000F000F000F000F000F000E60FCBCD +:123D3C0037B32F5F3E30E0007BC957CD1E3DA228FAC95F +:013E2200C0DF +:200F4100FE283802AFC9F587874F210DDA2A666FFA27DA472AFE80281C8257020C2A835F3E +:1D0F6100020CFA0FDA8623020CFA10DA8623020C79FEA038DF79CB3FCB3FD192C949 +:013D4E00E98B +:200F7E00D5F8053A6E60477D69CB381F4F30032A1213CB38CB19040C300E18062A12132A8D +:120F9E0012132A12132A12130D20F10520EEC1E1F1E9D1 +:203D4F00F8073A573A5FB228242B3AF53A6E67F1CB3ACB1B300122CB3ACB1B300222221420 +:133D6F001C1804222222221D20F91520F6F8022A5F56C97E +:013E2300009E +:203D8200E5F040E6402809180CE5F040E6082005210098180321009CC5CB33CB037BE603E3 +:203DA20084473EE0A3824FE1D1D5C5FA28DA865FF041E60220FA7B022379E6E05F793CE66B +:203DC2001FB34F1520E5C1D11DC8D578E6FC5F3E20814F8891E603B347C518CFF090F57BDB +:163DE200E090EA0020E7E5F803666F7CE090EA00207DE1E802C9AE +:200FB000F04DE680C8F0FFF5AFE0FFE00F3E30E0003E01E04D1000F1E0FFC9F04DE680C08F +:200FD00018E34F0600C33C104F0600CD3C104B42C916004F079F47C3401016004F079F4727 +:200FF000CD40104B42C94FCD3810C94FCD38104B42C97B594F7A5047C340107B594F7A5053 +:2010100047CD40104B42C94FCD7610C94FCD76104B42C97B594F7A5047C379107B594F7A86 +:201030005047CD79104B42C979079F477B079F5778F5AAF5CB7A280697935F9F9257CB78AC +:20105000280697914F9F9047CD79103816F1E680280697914F9F9047F1E680C897935F9F08 +:201070009257C9F1F1C90600507BB22007010000505937C96960010000B73E10F5CB15CB40 +:2010900014CB11CB10C5799B4F789A473F3808C1F13DB720E71808F1F13D3720DF180050EB +:0910B00059CB154DCB1444B7C90E +:143DF800C5F8042A575EF8093A473A4F3A666FCD8B3DC1C9DE +:00000001FF diff --git a/gb_studio_project/build/rom/game.map b/gb_studio_project/build/rom/game.map new file mode 100644 index 0000000..9fd077f --- /dev/null +++ b/gb_studio_project/build/rom/game.map @@ -0,0 +1,3095 @@ + ASxxxx Linker V03.00/V05.40 + sdld, page 1. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000000 .__.ABS. + 00000000 _rRAMG + 00000000 l__BASE + 00000000 l__BSS + 00000000 l__CABS + 00000000 l__CODE_0 + 00000000 l__CRASH_HEADER + 00000000 l__CRASH_SCRATCH + 00000000 l__DABS + 00000000 l__HEADER + 00000000 l__HEADER_LCD + 00000000 l__HEADER_SIO + 00000000 l__HEADER_TIMER + 00000000 l__HEAP + 00000000 l__HEAP_END + 00000000 l__HRAM + 00000000 l__LIT + 00000000 s__CABS + 00000000 s__CRASH_HEADER + 00000000 s__CRASH_HEADER0 + 00000000 s__CRASH_HEADER1 + 00000000 s__CRASH_SCRATCH + 00000000 s__CRASH_SCRATCH2 + 00000000 s__DABS + 00000000 s__HEADER + 00000000 s__HEADER0 + 00000000 s__HEADER1 + 00000000 s__HEADER10 + 00000000 s__HEADER11 + 00000000 s__HEADER2 + 00000000 s__HEADER3 + 00000000 s__HEADER4 + 00000000 s__HEADER5 + 00000000 s__HEADER6 + 00000000 s__HEADER7 + 00000000 s__HEADER8 + 00000000 s__HEADER9 + 00000000 s__HEADER_LCD + 00000000 s__HEADER_LCD0 + 00000000 s__HEADER_SIO + 00000000 s__HEADER_SIO0 + 00000000 s__HEADER_TIMER + 00000000 s__HEADER_TIMER0 + 00000000 s__HEADERa + 00000000 s__HEADERb + 00000000 s__HEADERc + 00000000 s__HEADERd + 00000000 s__HEADERe + 00000000 s__HEADERf + 00000000 s__HRAM + ASxxxx Linker V03.00/V05.40 + sdld, page 2. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000000 s__HRAM12 + 00000001 ___bank_VM_SGB vm_sgb + 00000001 ___bank_bg_cave_tileset bg_cave_tileset + 00000001 ___bank_bg_lab1_tileset bg_lab1_tileset + 00000001 ___bank_bg_logoscreen_tileset bg_logoscreen_tileset + 00000001 ___bank_bg_titlescreen_tileset bg_titlescreen_tileset + 00000001 ___bank_scene_1_init scene_1_init + 00000001 ___bank_script_input_5 script_input_5 + 00000001 b_ui_draw_frame ui + 00000001 b_ui_draw_text_buffer_char ui + 00000001 b_ui_init ui + 00000001 b_ui_load_tiles ui + 00000001 b_ui_run_menu ui + 00000001 b_ui_run_modal ui + 00000001 b_ui_set_start_tile ui + 00000001 l__GSFINAL + 00000001 l__HEADER0 + 00000001 l__HEADER5 + 00000001 l__HEADERa + 00000001 l__HEADERb + 00000001 l__HEADERc + 00000001 l__HEADERe + 00000001 l__HEADERf + 00000002 ___bank_actor_7_interact actor_7_interact + 00000002 ___bank_bg_overworld_test_1_tile bg_overworld_test_1_tilemap + 00000002 ___bank_bg_overworld_test_1_tile bg_overworld_test_1_tilemap_ + 00000002 ___bank_song_rulz_lightmood_Data song_rulz_lightmood_Data + 00000002 l__HEADER10 + 00000002 l__HEADER6 + 00000002 l__HEADERd + 00000003 ___bank_ACTOR actor + 00000003 ___bank_bg_outside_cgb_tileset bg_outside_cgb_tileset + 00000003 ___bank_scene_1 scene_1 + 00000003 ___bank_scene_1_collisions scene_1_collisions + 00000003 b_activate_actor actor + 00000003 b_activate_actors_in_col actor + 00000003 b_activate_actors_in_row actor + 00000003 b_actor_at_tile actor + 00000003 b_actor_get_frame_offset actor + 00000003 b_actor_in_front_of_player actor + 00000003 b_actor_overlapping_bb actor + 00000003 b_actor_overlapping_player actor + 00000003 b_actor_set_anim_idle actor + 00000003 b_actor_set_anim_moving actor + 00000003 b_actor_set_dir actor + 00000003 b_actor_set_frame_offset actor + 00000003 b_actor_set_frames actor + 00000003 b_actors_handle_player_collision actor + 00000003 b_actors_init actor + 00000003 b_check_collision_in_direction actor + 00000003 b_deactivate_actor actor + ASxxxx Linker V03.00/V05.40 + sdld, page 3. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000003 b_player_init actor + 00000003 b_projectile_launch projectiles + 00000003 b_projectiles_init projectiles + 00000003 l__HEADER9 + 00000003 l__HEADER_LCD0 + 00000003 l__HRAM12 + 00000004 ___bank_VM_ACTOR vm_actor + 00000004 ___bank_VM_GBPRINTER vm_gbprinter + 00000004 ___bank_VM_MAIN vm + 00000004 ___bank_bg_outside_tileset bg_outside_tileset + 00000004 ___bank_scene_11_triggers scene_11_triggers + 00000004 ___bank_song_rulz_undergroundcav song_rulz_undergroundcave_Da + 00000004 b_script_detach_hthread vm + 00000004 b_script_execute vm + 00000004 b_script_runner_init vm + 00000004 b_script_terminate vm + 00000004 b_vm_actor_activate vm_actor + 00000004 b_vm_actor_begin_update vm_actor + 00000004 b_vm_actor_deactivate vm_actor + 00000004 b_vm_actor_emote vm_actor + 00000004 b_vm_actor_get_angle vm_actor + 00000004 b_vm_actor_get_anim_frame vm_actor + 00000004 b_vm_actor_get_dir vm_actor + 00000004 b_vm_actor_get_pos vm_actor + 00000004 b_vm_actor_move_cancel vm_actor + 00000004 b_vm_actor_move_to vm_actor + 00000004 b_vm_actor_replace_tile vm_actor + 00000004 b_vm_actor_set_anim vm_actor + 00000004 b_vm_actor_set_anim_frame vm_actor + 00000004 b_vm_actor_set_anim_set vm_actor + 00000004 b_vm_actor_set_anim_tick vm_actor + 00000004 b_vm_actor_set_bounds vm_actor + 00000004 b_vm_actor_set_dir vm_actor + 00000004 b_vm_actor_set_flags vm_actor + 00000004 b_vm_actor_set_move_speed vm_actor + 00000004 b_vm_actor_set_pos vm_actor + 00000004 b_vm_actor_set_spritesheet vm_actor + 00000004 b_vm_actor_set_spritesheet_by_re vm_actor + 00000004 b_vm_actor_terminate_update vm_actor + 00000004 b_vm_call vm + 00000004 b_vm_call_far vm + 00000004 b_vm_get_indirect vm + 00000004 b_vm_get_tlocal vm + 00000004 b_vm_idle vm + 00000004 b_vm_if vm + 00000004 b_vm_if_const vm + 00000004 b_vm_init_rng vm + 00000004 b_vm_invoke vm + 00000004 b_vm_join vm + 00000004 b_vm_jump vm + 00000004 b_vm_lock vm + ASxxxx Linker V03.00/V05.40 + sdld, page 4. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000004 b_vm_loop vm + 00000004 b_vm_memcpy vm + 00000004 b_vm_memset vm + 00000004 b_vm_poll_loaded vm + 00000004 b_vm_pop vm + 00000004 b_vm_print_detect vm_gbprinter + 00000004 b_vm_print_overlay vm_gbprinter + 00000004 b_vm_push vm + 00000004 b_vm_push_reference vm + 00000004 b_vm_push_value vm + 00000004 b_vm_push_value_ind vm + 00000004 b_vm_raise vm + 00000004 b_vm_rand vm + 00000004 b_vm_reserve vm + 00000004 b_vm_ret vm + 00000004 b_vm_ret_far vm + 00000004 b_vm_set vm + 00000004 b_vm_set_const vm + 00000004 b_vm_set_indirect vm + 00000004 b_vm_terminate vm + 00000004 b_vm_test_terminate vm + 00000004 b_vm_unlock vm + 00000004 b_wait_frames vm + 00000004 l__CRASH_HEADER1 + 00000004 l__HEADER_SIO0 + 00000004 l__HEADER_TIMER0 + 00000005 ___bank_VM_SIO vm_sio + 00000005 ___bank_bg_endscreen_tileset bg_endscreen_tileset + 00000005 ___bank_bg_questscreen_tileset bg_questscreen_tileset + 00000005 ___bank_font_gbs_mono font_gbs_mono + 00000005 ___bank_scene_14_sprites scene_14_sprites + 00000005 ___bank_song_rulz_outside_0_Data song_rulz_outside_0_Data + 00000005 ___bank_song_rulz_spaceemergency song_rulz_spaceemergency_0_D + 00000005 b_do_load_palette data_manager + 00000005 b_load_background data_manager + 00000005 b_load_bkg_tileset data_manager + 00000005 b_load_bounds data_manager + 00000005 b_load_emote data_manager + 00000005 b_load_init data_manager + 00000005 b_load_player data_manager + 00000005 b_load_scene data_manager + 00000005 b_load_sprite data_manager + 00000005 b_vm_sio_exchange vm_sio + 00000005 b_vm_sio_set_mode vm_sio + 00000005 l__CRASH_HEADER0 + 00000005 l__HEADER1 + 00000006 ___bank_VM_GAMEBOY vm_gameboy + 00000006 ___bank_VM_MATH vm_math + 00000006 ___bank_VM_UI vm_ui + 00000006 ___bank_bg_fate6housef2_tileset bg_fate6housef2_tileset + 00000006 ___bank_bg_housef2_tileset bg_housef2_tileset + ASxxxx Linker V03.00/V05.40 + sdld, page 5. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000006 ___bank_bg_outside_tilemap bg_outside_tilemap + 00000006 ___bank_bg_outside_tilemap_attr bg_outside_tilemap_attr + 00000006 ___bank_bg_overworld_test_1_tile bg_overworld_test_1_tileset + 00000006 ___bank_bg_slighhousef2_tileset bg_slighhousef2_tileset + 00000006 ___bank_cursor_image cursor_image + 00000006 ___bank_scene_17_collisions scene_17_collisions + 00000006 b_core_reset core + 00000006 b_core_run core + 00000006 b_scroll_init scroll + 00000006 b_scroll_repaint scroll + 00000006 b_scroll_reset scroll + 00000006 b_scroll_update scroll + 00000006 b_topdown_init topdown + 00000006 b_topdown_update topdown + 00000006 b_vm_choice vm_ui + 00000006 b_vm_context_prepare vm_gameboy + 00000006 b_vm_cos_scale vm_math + 00000006 b_vm_display_text vm_ui + 00000006 b_vm_fade vm_gameboy + 00000006 b_vm_get_tile_xy vm_gameboy + 00000006 b_vm_input_attach vm_gameboy + 00000006 b_vm_input_detach vm_gameboy + 00000006 b_vm_input_get vm_gameboy + 00000006 b_vm_input_wait vm_gameboy + 00000006 b_vm_load_tileset vm_gameboy + 00000006 b_vm_overlay_clear vm_ui + 00000006 b_vm_overlay_move_to vm_ui + 00000006 b_vm_overlay_scroll vm_ui + 00000006 b_vm_overlay_set_map vm_ui + 00000006 b_vm_overlay_set_scroll vm_ui + 00000006 b_vm_overlay_set_submap vm_ui + 00000006 b_vm_overlay_set_submap_ex vm_ui + 00000006 b_vm_overlay_setpos vm_ui + 00000006 b_vm_overlay_show vm_ui + 00000006 b_vm_overlay_wait vm_ui + 00000006 b_vm_poll vm_gameboy + 00000006 b_vm_replace_tile vm_gameboy + 00000006 b_vm_replace_tile_xy vm_gameboy + 00000006 b_vm_rumble vm_gameboy + 00000006 b_vm_set_font vm_ui + 00000006 b_vm_set_sprite_mode vm_gameboy + 00000006 b_vm_set_sprites_visible vm_gameboy + 00000006 b_vm_set_text_sound vm_ui + 00000006 b_vm_sin_scale vm_math + 00000006 b_vm_switch_text_layer vm_ui + 00000006 b_vm_timer_prepare vm_gameboy + 00000006 b_vm_timer_reset vm_gameboy + 00000006 b_vm_timer_set vm_gameboy + 00000006 b_vm_timer_stop vm_gameboy + 00000006 l__HEADER8 + 00000007 ___bank_VM_CAMERA vm_camera + ASxxxx Linker V03.00/V05.40 + sdld, page 6. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000007 ___bank_VM_PALETTE vm_palette + 00000007 ___bank_actor_0_interact actor_0_interact + 00000007 ___bank_actor_5_interact actor_5_interact + 00000007 ___bank_bg_cave_tilemap bg_cave_tilemap + 00000007 ___bank_bg_cave_tilemap_attr bg_cave_tilemap_attr + 00000007 ___bank_bg_endscreen_cgb_tileset bg_endscreen_cgb_tileset + 00000007 ___bank_bg_endscreen_tilemap bg_endscreen_tilemap + 00000007 ___bank_bg_endscreen_tilemap_att bg_endscreen_tilemap_attr + 00000007 ___bank_bg_fate6housef2_tilemap bg_fate6housef2_tilemap + 00000007 ___bank_bg_fate6housef2_tilemap_ bg_fate6housef2_tilemap_attr + 00000007 ___bank_bg_house_tileset bg_house_tileset + 00000007 ___bank_bg_house_wide_tilemap bg_house_wide_tilemap + 00000007 ___bank_bg_house_wide_tilemap_at bg_house_wide_tilemap_attr + 00000007 ___bank_bg_house_wide_tileset bg_house_wide_tileset + 00000007 ___bank_bg_lab1_tilemap bg_lab1_tilemap + 00000007 ___bank_bg_lab1_tilemap_attr bg_lab1_tilemap_attr + 00000007 ___bank_scene_1_actors scene_1_actors + 00000007 ___bank_scene_2_collisions scene_2_collisions + 00000007 ___bank_scene_4_collisions scene_4_collisions + 00000007 ___bank_scene_6_collisions scene_6_collisions + 00000007 ___bank_scene_8_collisions scene_8_collisions + 00000007 ___bank_script_1 script_1 + 00000007 b___HandleCrash_banked + 00000007 b_atan2 math_atan2 + 00000007 b_camera_shake_frames vm_camera + 00000007 b_data_clear load_save + 00000007 b_data_init load_save + 00000007 b_data_load load_save + 00000007 b_data_peek load_save + 00000007 b_data_save load_save + 00000007 b_fade_applypalettechange fade_manager + 00000007 b_fade_in fade_manager + 00000007 b_fade_in_modal fade_manager + 00000007 b_fade_init fade_manager + 00000007 b_fade_out fade_manager + 00000007 b_fade_out_modal fade_manager + 00000007 b_fade_setspeed fade_manager + 00000007 b_fade_update fade_manager + 00000007 b_gbprinter_detect gbprinter + 00000007 b_gbprinter_print_overlay gbprinter + 00000007 b_set_sgb_border sgb_border + 00000007 b_trigger_activate_at trigger + 00000007 b_trigger_activate_at_intersecti trigger + 00000007 b_trigger_at_intersection trigger + 00000007 b_trigger_at_tile trigger + 00000007 b_trigger_interact trigger + 00000007 b_trigger_reset trigger + 00000007 b_vm_camera_move_to vm_camera + 00000007 b_vm_camera_set_pos vm_camera + 00000007 b_vm_load_palette vm_palette + 00000007 l__HEADER2 + ASxxxx Linker V03.00/V05.40 + sdld, page 7. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000008 ___bank_VM_LOAD_SAVE vm_load_save + 00000008 ___bank_VM_MUSIC vm_music + 00000008 ___bank_VM_PROJECTILE vm_projectiles + 00000008 ___bank_VM_RTC vm_rtc + 00000008 ___bank_VM_SCENE vm_scene + 00000008 ___bank_actor_14_interact actor_14_interact + 00000008 ___bank_actor_15_interact actor_15_interact + 00000008 ___bank_actor_1_interact actor_1_interact + 00000008 ___bank_actor_2_interact actor_2_interact + 00000008 ___bank_actor_3_interact actor_3_interact + 00000008 ___bank_actor_8_interact actor_8_interact + 00000008 ___bank_bg_house_tilemap bg_house_tilemap + 00000008 ___bank_bg_house_tilemap_attr bg_house_tilemap_attr + 00000008 ___bank_bg_housef2_tilemap bg_housef2_tilemap + 00000008 ___bank_bg_housef2_tilemap_attr bg_housef2_tilemap_attr + 00000008 ___bank_bg_logoscreen_tilemap bg_logoscreen_tilemap + 00000008 ___bank_bg_logoscreen_tilemap_at bg_logoscreen_tilemap_attr + 00000008 ___bank_bg_questscreen_tilemap bg_questscreen_tilemap + 00000008 ___bank_bg_questscreen_tilemap_a bg_questscreen_tilemap_attr + 00000008 ___bank_bg_slighhousef2_tilemap bg_slighhousef2_tilemap + 00000008 ___bank_bg_slighhousef2_tilemap_ bg_slighhousef2_tilemap_attr + 00000008 ___bank_bg_titlescreen_tilemap bg_titlescreen_tilemap + 00000008 ___bank_bg_titlescreen_tilemap_a bg_titlescreen_tilemap_attr + 00000008 ___bank_emote_love emote_love + 00000008 ___bank_frame_image frame_image + 00000008 ___bank_palette_0 palette_0 + 00000008 ___bank_palette_1 palette_1 + 00000008 ___bank_palette_10 palette_10 + 00000008 ___bank_palette_11 palette_11 + 00000008 ___bank_palette_12 palette_12 + 00000008 ___bank_palette_13 palette_13 + 00000008 ___bank_palette_2 palette_2 + 00000008 ___bank_palette_3 palette_3 + 00000008 ___bank_palette_4 palette_4 + 00000008 ___bank_palette_5 palette_5 + 00000008 ___bank_palette_6 palette_6 + 00000008 ___bank_palette_7 palette_7 + 00000008 ___bank_palette_8 palette_8 + 00000008 ___bank_palette_9 palette_9 + 00000008 ___bank_scene_10_collisions scene_10_collisions + 00000008 ___bank_scene_11_collisions scene_11_collisions + 00000008 ___bank_scene_12_collisions scene_12_collisions + 00000008 ___bank_scene_13_collisions scene_13_collisions + 00000008 ___bank_scene_14_collisions scene_14_collisions + 00000008 ___bank_scene_15_actors scene_15_actors + 00000008 ___bank_scene_15_collisions scene_15_collisions + 00000008 ___bank_scene_15_init scene_15_init + 00000008 ___bank_scene_16_collisions scene_16_collisions + 00000008 ___bank_scene_1_triggers scene_1_triggers + 00000008 ___bank_scene_3_collisions scene_3_collisions + 00000008 ___bank_scene_5_collisions scene_5_collisions + ASxxxx Linker V03.00/V05.40 + sdld, page 8. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000008 ___bank_scene_7_collisions scene_7_collisions + 00000008 ___bank_scene_8_actors scene_8_actors + 00000008 ___bank_scene_9_collisions scene_9_collisions + 00000008 ___bank_sprite_actor_animated sprite_actor_animated + 00000008 ___bank_sprite_actor_animated_ba sprite_actor_animated_bank2_ + 00000008 ___bank_sprite_actor_animated_ti sprite_actor_animated_tilese + 00000008 ___bank_sprite_charanimatedsprit sprite_charanimatedsprite + 00000008 ___bank_sprite_charanimatedsprit sprite_charanimatedsprite_ba + 00000008 ___bank_sprite_charanimatedsprit sprite_charanimatedsprite_ti + 00000008 ___bank_sprite_npc001 sprite_npc001 + 00000008 ___bank_sprite_npc001_bank2_tile sprite_npc001_bank2_tileset + 00000008 ___bank_sprite_npc001_tileset sprite_npc001_tileset + 00000008 ___bank_sprite_npc002 sprite_npc002 + 00000008 ___bank_sprite_npc002_bank2_tile sprite_npc002_bank2_tileset + 00000008 ___bank_sprite_npc002_tileset sprite_npc002_tileset + 00000008 ___bank_sprite_npc005 sprite_npc005 + 00000008 ___bank_sprite_npc005_bank2_tile sprite_npc005_bank2_tileset + 00000008 ___bank_sprite_npc005_tileset sprite_npc005_tileset + 00000008 ___bank_sprite_player sprite_player + 00000008 ___bank_sprite_player_bank2_tile sprite_player_bank2_tileset + 00000008 ___bank_sprite_player_tileset sprite_player_tileset + 00000008 ___bank_tileset_default_frame tileset_default_frame + 00000008 ___bank_trigger_16_interact trigger_16_interact + 00000008 ___bank_trigger_23_interact trigger_23_interact + 00000008 ___bank_trigger_9_interact trigger_9_interact + 00000008 b_CGBZeroPalette palette + 00000008 b_erase_flash + 00000008 b_events_init events + 00000008 b_itoa_fmt vm_ui_a + 00000008 b_music_events_poll music_manager + 00000008 b_music_init_driver music_manager + 00000008 b_music_init_events music_manager + 00000008 b_palette_init palette + 00000008 b_restore_sram flasher + 00000008 b_restore_sram_bank flasher + 00000008 b_save_sram flasher + 00000008 b_save_sram_banks + 00000008 b_scroll_rect + 00000008 b_timers_init events + 00000008 b_vm_music_mute vm_music + 00000008 b_vm_music_play vm_music + 00000008 b_vm_music_routine vm_music + 00000008 b_vm_music_setpos vm_music + 00000008 b_vm_music_stop vm_music + 00000008 b_vm_projectile_launch vm_projectiles + 00000008 b_vm_projectile_load_type vm_projectiles + 00000008 b_vm_rtc_get vm_rtc + 00000008 b_vm_rtc_latch vm_rtc + 00000008 b_vm_rtc_set vm_rtc + 00000008 b_vm_rtc_start vm_rtc + 00000008 b_vm_save_clear vm_load_save + ASxxxx Linker V03.00/V05.40 + sdld, page 9. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000008 b_vm_save_peek vm_load_save + 00000008 b_vm_scene_pop vm_scene + 00000008 b_vm_scene_pop_all vm_scene + 00000008 b_vm_scene_push vm_scene + 00000008 b_vm_scene_stack_reset vm_scene + 00000008 b_vm_sfx_play vm_music + 00000008 b_vm_sound_mastervol vm_music + 00000008 l__HEADER3 + 00000009 ___bank_actor_10_interact actor_10_interact + 00000009 ___bank_actor_11_interact actor_11_interact + 00000009 ___bank_actor_12_interact actor_12_interact + 00000009 ___bank_actor_13_interact actor_13_interact + 00000009 ___bank_actor_4_interact actor_4_interact + 00000009 ___bank_actor_6_interact actor_6_interact + 00000009 ___bank_actor_9_interact actor_9_interact + 00000009 ___bank_bg_cave bg_cave + 00000009 ___bank_bg_endscreen bg_endscreen + 00000009 ___bank_bg_fate6housef2 bg_fate6housef2 + 00000009 ___bank_bg_house bg_house + 00000009 ___bank_bg_house_wide bg_house_wide + 00000009 ___bank_bg_housef2 bg_housef2 + 00000009 ___bank_bg_lab1 bg_lab1 + 00000009 ___bank_bg_logoscreen bg_logoscreen + 00000009 ___bank_bg_outside bg_outside + 00000009 ___bank_bg_overworld_test_1 bg_overworld_test_1 + 00000009 ___bank_bg_questscreen bg_questscreen + 00000009 ___bank_bg_slighhousef2 bg_slighhousef2 + 00000009 ___bank_bg_titlescreen bg_titlescreen + 00000009 ___bank_bootstrap_script + 00000009 ___bank_scene_10 scene_10 + 00000009 ___bank_scene_10_init scene_10_init + 00000009 ___bank_scene_11 scene_11 + 00000009 ___bank_scene_11_init scene_11_init + 00000009 ___bank_scene_12 scene_12 + 00000009 ___bank_scene_12_init scene_12_init + 00000009 ___bank_scene_13 scene_13 + 00000009 ___bank_scene_13_init scene_13_init + 00000009 ___bank_scene_14 scene_14 + 00000009 ___bank_scene_14_actors scene_14_actors + 00000009 ___bank_scene_14_init scene_14_init + 00000009 ___bank_scene_14_triggers scene_14_triggers + 00000009 ___bank_scene_15 scene_15 + 00000009 ___bank_scene_15_sprites scene_15_sprites + 00000009 ___bank_scene_16 scene_16 + 00000009 ___bank_scene_16_init scene_16_init + 00000009 ___bank_scene_17 scene_17 + 00000009 ___bank_scene_17_actors scene_17_actors + 00000009 ___bank_scene_17_init scene_17_init + 00000009 ___bank_scene_17_sprites scene_17_sprites + 00000009 ___bank_scene_17_triggers scene_17_triggers + 00000009 ___bank_scene_1_sprites scene_1_sprites + ASxxxx Linker V03.00/V05.40 + sdld, page 10. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000009 ___bank_scene_2 scene_2 + 00000009 ___bank_scene_2_actors scene_2_actors + 00000009 ___bank_scene_2_init scene_2_init + 00000009 ___bank_scene_2_sprites scene_2_sprites + 00000009 ___bank_scene_2_triggers scene_2_triggers + 00000009 ___bank_scene_3 scene_3 + 00000009 ___bank_scene_3_actors scene_3_actors + 00000009 ___bank_scene_3_init scene_3_init + 00000009 ___bank_scene_3_sprites scene_3_sprites + 00000009 ___bank_scene_3_triggers scene_3_triggers + 00000009 ___bank_scene_4 scene_4 + 00000009 ___bank_scene_4_init scene_4_init + 00000009 ___bank_scene_4_triggers scene_4_triggers + 00000009 ___bank_scene_5 scene_5 + 00000009 ___bank_scene_5_actors scene_5_actors + 00000009 ___bank_scene_5_init scene_5_init + 00000009 ___bank_scene_5_sprites scene_5_sprites + 00000009 ___bank_scene_5_triggers scene_5_triggers + 00000009 ___bank_scene_6 scene_6 + 00000009 ___bank_scene_6_actors scene_6_actors + 00000009 ___bank_scene_6_init scene_6_init + 00000009 ___bank_scene_6_sprites scene_6_sprites + 00000009 ___bank_scene_6_triggers scene_6_triggers + 00000009 ___bank_scene_7 scene_7 + 00000009 ___bank_scene_7_actors scene_7_actors + 00000009 ___bank_scene_7_init scene_7_init + 00000009 ___bank_scene_7_sprites scene_7_sprites + 00000009 ___bank_scene_7_triggers scene_7_triggers + 00000009 ___bank_scene_8 scene_8 + 00000009 ___bank_scene_8_init scene_8_init + 00000009 ___bank_scene_8_sprites scene_8_sprites + 00000009 ___bank_scene_8_triggers scene_8_triggers + 00000009 ___bank_scene_9 scene_9 + 00000009 ___bank_scene_9_init scene_9_init + 00000009 ___bank_scene_9_triggers scene_9_triggers + 00000009 ___bank_script_engine_init + 00000009 ___bank_script_input script_input + 00000009 ___bank_script_input_4 script_input_4 + 00000009 ___bank_script_input_6 script_input_6 + 00000009 ___bank_sprite_cat sprite_cat + 00000009 ___bank_sprite_cat_bank2_tileset sprite_cat_bank2_tileset + 00000009 ___bank_sprite_cat_tileset sprite_cat_tileset + 00000009 ___bank_sprite_checkbox sprite_checkbox + 00000009 ___bank_sprite_checkbox_bank2_ti sprite_checkbox_bank2_tilese + 00000009 ___bank_sprite_checkbox_tileset sprite_checkbox_tileset + 00000009 ___bank_sprite_dog sprite_dog + 00000009 ___bank_sprite_dog_bank2_tileset sprite_dog_bank2_tileset + 00000009 ___bank_sprite_dog_tileset sprite_dog_tileset + 00000009 ___bank_sprite_sign sprite_sign + 00000009 ___bank_sprite_sign_bank2_tilese sprite_sign_bank2_tileset + 00000009 ___bank_sprite_sign_tileset sprite_sign_tileset + ASxxxx Linker V03.00/V05.40 + sdld, page 11. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000009 ___bank_spritesheet_none spritesheet_none + 00000009 ___bank_trigger_0_interact trigger_0_interact + 00000009 ___bank_trigger_10_interact trigger_10_interact + 00000009 ___bank_trigger_11_interact trigger_11_interact + 00000009 ___bank_trigger_12_interact trigger_12_interact + 00000009 ___bank_trigger_13_interact trigger_13_interact + 00000009 ___bank_trigger_14_interact trigger_14_interact + 00000009 ___bank_trigger_15_interact trigger_15_interact + 00000009 ___bank_trigger_17_interact trigger_17_interact + 00000009 ___bank_trigger_18_interact trigger_18_interact + 00000009 ___bank_trigger_19_interact trigger_19_interact + 00000009 ___bank_trigger_1_interact trigger_1_interact + 00000009 ___bank_trigger_20_interact trigger_20_interact + 00000009 ___bank_trigger_21_interact trigger_21_interact + 00000009 ___bank_trigger_22_interact trigger_22_interact + 00000009 ___bank_trigger_24_interact trigger_24_interact + 00000009 ___bank_trigger_2_interact trigger_2_interact + 00000009 ___bank_trigger_3_interact trigger_3_interact + 00000009 ___bank_trigger_4_interact trigger_4_interact + 00000009 ___bank_trigger_5_interact trigger_5_interact + 00000009 ___bank_trigger_6_interact trigger_6_interact + 00000009 ___bank_trigger_7_interact trigger_7_interact + 00000009 ___bank_trigger_8_interact trigger_8_interact + 00000009 b_SIO_init sio + 00000009 b_camera_init camera + 00000009 b_input_init input + 00000009 b_logo_init logo + 00000009 b_logo_update logo + 00000009 b_parallax_init parallax + 00000009 b_remove_LCD_ISRs interrupts + 0000000C __start_save + 00000018 l__INITIALIZED + 00000018 l__INITIALIZER + 00000027 l__GSINIT + 00000030 l__HEADER7 + 00000060 l__HEADER4 + 000000AB l__HEADER11 + 000001CB l__CRASH_SCRATCH2 + 00000200 s__CODE + 00000EB9 l__CODE + 000010B9 s__HOME + 00001130 l__CODE_9 + 00001971 l__DATA + 00002000 _rROMB0 + 00002D53 l__HOME + 00003000 _rROMB1 + 00003E0C s__BASE + 00003E0C s__CODE_0 + 00003E0C s__INITIALIZER + 00003E0C s__LIT + 00003E24 s__GSINIT + ASxxxx Linker V03.00/V05.40 + sdld, page 12. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00003E4B s__GSFINAL + 00003FFE l__CODE_5 + 00003FFF l__CODE_2 + 00003FFF l__CODE_3 + 00003FFF l__CODE_8 + 00004000 _RTC_SELECT_REG vm_rtc + 00004000 _rRAMB + 00004000 l__CODE_1 + 00004000 l__CODE_4 + 00004000 l__CODE_6 + 00004000 l__CODE_7 + 00006000 _RTC_LATCH_REG vm_rtc + 00008000 __VRAM + 00008000 __VRAM8000 + 00008800 __VRAM8800 + 00009000 __VRAM9000 + 00009800 __SCRN0 + 00009C00 __SCRN1 + 0000A000 _RTC_VALUE_REG vm_rtc + 0000A000 __SRAM + 0000C000 __RAM + 0000C000 _shadow_OAM + 0000C0A0 s__DATA + 0000D000 __RAMBANK + 0000DA11 s__BSS + 0000DA11 s__INITIALIZED + 0000DA29 s__HEAP + 0000DA29 s__HEAP_END + 0000DF00 .STACK + 0000DF00 _shadow_OAM2 absolute + 0000DFA0 _BkgPalette absolute + 0000DFE0 _vwf_tile_data absolute + 0000FE00 __OAMRAM + 0000FF00 _P1_REG + 0000FF00 __IO + 0000FF01 _SB_REG + 0000FF02 _SC_REG + 0000FF04 _DIV_REG + 0000FF05 _TIMA_REG + 0000FF06 _TMA_REG + 0000FF07 _TAC_REG + 0000FF0F _IF_REG + 0000FF10 _NR10_REG + 0000FF11 _NR11_REG + 0000FF12 _NR12_REG + 0000FF13 _NR13_REG + 0000FF14 _NR14_REG + 0000FF16 _NR21_REG + 0000FF17 _NR22_REG + 0000FF18 _NR23_REG + 0000FF19 _NR24_REG + ASxxxx Linker V03.00/V05.40 + sdld, page 13. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 0000FF1A _NR30_REG + 0000FF1B _NR31_REG + 0000FF1C _NR32_REG + 0000FF1D _NR33_REG + 0000FF1E _NR34_REG + 0000FF20 _NR41_REG + 0000FF21 _NR42_REG + 0000FF22 _NR43_REG + 0000FF23 _NR44_REG + 0000FF24 _NR50_REG + 0000FF25 _NR51_REG + 0000FF26 _NR52_REG + 0000FF30 _AUD3WAVE + 0000FF30 _PCM_SAMPLE + 0000FF30 __AUD3WAVERAM + 0000FF40 _LCDC_REG + 0000FF41 _STAT_REG + 0000FF42 _SCY_REG + 0000FF43 _SCX_REG + 0000FF44 _LY_REG + 0000FF45 _LYC_REG + 0000FF46 _DMA_REG + 0000FF47 _BGP_REG + 0000FF48 _OBP0_REG + 0000FF49 _OBP1_REG + 0000FF4A _WY_REG + 0000FF4B _WX_REG + 0000FF4D _KEY1_REG + 0000FF4F _VBK_REG + 0000FF51 _HDMA1_REG + 0000FF52 _HDMA2_REG + 0000FF53 _HDMA3_REG + 0000FF54 _HDMA4_REG + 0000FF55 _HDMA5_REG + 0000FF56 _RP_REG + 0000FF68 _BCPS_REG + 0000FF69 _BCPD_REG + 0000FF6A _OCPS_REG + 0000FF6B _OCPD_REG + 0000FF70 _SVBK_REG + 0000FF76 _PCM12_REG + 0000FF77 _PCM34_REG + 0000FF80 .refresh_OAM + 0000FF80 __HRAM + 0000FFFF _IE_REG + 00014000 s__CODE_1 + 00024000 s__CODE_2 + 00034000 s__CODE_3 + 00044000 s__CODE_4 + 00054000 s__CODE_5 + 00064000 s__CODE_6 + ASxxxx Linker V03.00/V05.40 + sdld, page 14. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +. .ABS. 00000000 00000000 = 0. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00074000 s__CODE_7 + 00084000 s__CODE_8 + 00094000 s__CODE_9 + + ASxxxx Linker V03.00/V05.40 + sdld, page 15. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE 00000200 00000EB9 = 3769. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000200 ___HandleCrash + 0000020A _SIO_send_byte + 0000021D _SIO_receive + 0000022E _GetWinAddr + 00000236 _GetBkgAddr + 00000244 _state_init + 00000249 _state_update + 0000026B _ui_time_masks + 00000273 _ui_print_shift_char + 000002F6 _ui_draw_frame_row + 000002FF .ui_draw_frame_row + 00000328 _script_cmds vm_instructions + 00000560 _save_signature game_signature + 00000564 _start_scene_x + 00000566 _start_scene_y + 00000568 _start_scene_dir + 00000569 _start_scene + 0000056C _start_player_move_speed + 0000056D _start_player_anim_tick + 0000056E _ui_fonts + 00000571 _core_reset_hook main + 00000579 _main main + 00000581 _state_start_fns + 00000587 _state_update_fns + 0000058D _hUGE_init hUGEDriver_obj + 0000058F hUGE_init hUGEDriver_obj + 000005E5 _hUGE_mute_channel hUGEDriver_obj + 000005E7 hUGE_mute_channel hUGEDriver_obj + 00000835 _hUGE_set_position hUGEDriver_obj + 00000837 hUGE_set_position hUGEDriver_obj + 000009FC _hUGE_dosound hUGEDriver_obj + 000009FC hUGE_dosound hUGEDriver_obj + 00000D28 _get_vram_byte + 00000D30 _get_win_tile_xy + 00000D38 _get_bkg_tile_xy + 00000D5F _set_sprite_palette CGB + 00000D64 _set_bkg_palette CGB + 00000D67 .set_palette CGB + 00000D86 _set_sprite_palette_entry CGB + 00000D8B _set_bkg_palette_entry CGB + 00000D8E .set_palette_entry CGB + 00000DAA _hide_sprites_range Metasprites + 00000DD9 __mulsuchar mul + 00000DDC __muluschar mul + 00000DE5 __mulschar mul + 00000DED __mulint mul + 00000E0C __muluchar mul + 00000E1E _set_vram_byte + 00000E27 _set_win_tile_xy + 00000E30 _set_bkg_tile_xy + ASxxxx Linker V03.00/V05.40 + sdld, page 16. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE 00000200 00000EB9 = 3769. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000E5F .sgb_check + 00000E5F _sgb_check + 00000EA7 _sgb_transfer + 00000EAC .sgb_transfer + 00000EED .copy_vram + 00000EF3 _get_data + 00000EF3 _set_data + 00000EF3 _vmemcpy + 00000F41 ___move_metasprite Metasprites + 00000F7E ___memcpy + 00000F7E _memcpy + 00000FB0 _cpu_slow CGB + 00000FCB _cpu_fast CGB + 00000FD2 __divsuchar divmod + 00000FD8 __modsuchar divmod + 00000FE1 __divuschar divmod + 00000FEA __moduschar divmod + 00000FF6 __divschar divmod + 00000FFB __modschar divmod + 00001002 __divsint divmod + 0000100B __modsint divmod + 00001017 __divuchar divmod + 0000101C __moduchar divmod + 00001023 __divuint divmod + 0000102C __moduint divmod + 00001038 .div8 divmod + 00001038 .mod8 divmod + 00001040 .div16 divmod + 00001040 .mod16 divmod + 00001076 .divu8 divmod + 00001076 .modu8 divmod + 00001079 .divu16 divmod + 00001079 .modu16 divmod + + ASxxxx Linker V03.00/V05.40 + sdld, page 17. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER0 00000000 00000001 = 1. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000020 .call_hl Runtime + + ASxxxx Linker V03.00/V05.40 + sdld, page 18. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER1 00000000 00000005 = 5. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000028 .MemsetSmall Runtime + + ASxxxx Linker V03.00/V05.40 + sdld, page 19. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER2 00000000 00000007 = 7. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000030 .MemcpySmall Runtime + + ASxxxx Linker V03.00/V05.40 + sdld, page 20. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER3 00000000 00000008 = 8. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 21. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER4 00000000 00000060 = 96. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000080 .int Runtime + 0000008F _wait_int_handler Runtime + 0000009C __standard_VBL_handler Runtime + 000000AB _refresh_OAM Runtime + 000000CC _set_interrupts Runtime + + ASxxxx Linker V03.00/V05.40 + sdld, page 22. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER5 00000000 00000001 = 1. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 23. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER6 00000000 00000002 = 2. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 24. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER7 00000000 00000030 = 48. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 25. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER8 00000000 00000006 = 6. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 26. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER9 00000000 00000003 = 3. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 27. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADERa 00000000 00000001 = 1. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 28. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADERb 00000000 00000001 = 1. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 29. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADERc 00000000 00000001 = 1. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 30. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADERd 00000000 00000002 = 2. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 31. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADERe 00000000 00000001 = 1. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 32. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADERf 00000000 00000001 = 1. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 33. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER10 00000000 00000002 = 2. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 34. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER11 00000000 000000AB = 171. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00000150 .reset Runtime + 00000150 _reset Runtime + 00000157 .code_start Runtime + 000001B9 _exit Runtime + 000001BD .wait_vbl_done Runtime + 000001BD _vsync Runtime + 000001BD _wait_vbl_done Runtime + 000001CD .remove_VBL Runtime + 000001CD _remove_VBL Runtime + 000001D0 .remove_int Runtime + 000001ED .add_VBL Runtime + 000001ED _add_VBL Runtime + 000001F0 .add_int Runtime + + ASxxxx Linker V03.00/V05.40 + sdld, page 35. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HOME 000010B9 00002D53 = 11603. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 000010B9 .memset_simple Runtime + 000010C2 .memcpy_simple Runtime + 000010DF .display_off Runtime + 000010DF _display_off Runtime + 000010F7 _actors_update actor + 0000155D _SetBankedBkgData bankdata + 00001579 _SetBankedSpriteData bankdata + 00001595 _SetBankedBkgTiles bankdata + 000015B1 _SetBankedWinTiles bankdata + 000015CD _ReadBankedFarPtr bankdata + 000015EF _ReadBankedUWORD bankdata + 00001609 _MemcpyBanked bankdata + 0000162B _MemcpyVRAMBanked bankdata + 0000165A _IndexOfFarPtr bankdata + 000016DF _camera_update camera + 00001812 _load_animations data_manager + 0000186B _events_update events + 0000193E _timers_update events + 000019C7 _input_update input + 000019EA .sio_ISR + 00001A44 .timer_ISR + 00001A59 _simple_LCD_isr interrupts + 00001AD8 _fullscreen_LCD_isr interrupts + 00001B04 _VBL_isr interrupts + 00001B4E _isqrt math + 00001BAB _sine_wave math + 00001CAB _dir_lookup math + 00001CB3 _dir_angle_lookup math + 00001CB7 _hUGETrackerRoutine music_manager + 00001CDE _music_events_update music_manager + 00001D60 _music_play_isr music_manager + 00001E01 _parallax_LCD_isr parallax + 00001E3E _projectiles_update projectiles + 000022BF _projectiles_render projectiles + 00002414 _scroll_load_pending_row scroll + 0000249A _scroll_load_row scroll + 0000250F _scroll_load_col scroll + 00002578 _scroll_load_pending_col scroll + 00002600 _set_bkg_submap + 00002643 _set_xy_win_submap + 00002670 .set_xy_win_submap + 00002679 .set_xy_bkg_submap + 00002688 .set_xy_submap + 000026D4 _sfx_play_isr sfx_player + 000027AD _on_SIO_receive sio + 000027EE _SIO_update sio + 00002855 _ui_update ui + 0000298D _vm_sgb_transfer vm_sgb + 000029DA _vm_load_text vm_ui + 00002C30 _vm_switch vm + ASxxxx Linker V03.00/V05.40 + sdld, page 36. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HOME 000010B9 00002D53 = 11603. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00002D61 _vm_beginthread vm + 00002E85 _vm_rpn vm + 0000389D _vm_get_far vm + 0000390B _vm_call_native vm + 0000391E _VM_STEP vm + 00003988 _script_runner_update vm + 00003AED _fill_win_rect + 00003AFF _rand + 00003AFF _randw + 00003B2A _initrand + 00003B2C .initrand + 00003B35 _get_bkg_data + 00003B35 _get_win_data + 00003B82 _get_sprite_data + 00003BB5 _abs abs + 00003BC2 _set_win_tiles + 00003BD6 _set_tile_data + 00003BDB _set_bkg_data + 00003BDB _set_win_data + 00003BE3 _set_sprite_data + 00003C13 _reverse reverse + 00003C47 ___call__banked far_ptr + 00003C64 _to_far_ptr far_ptr + 00003C9A .add_LCD + 00003C9A _add_LCD + 00003CA0 .remove_LCD + 00003CA0 _remove_LCD + 00003CA6 .fill_rect_wtt + 00003CAF .fill_rect_btt + 00003CFC _fill_bkg_rect + 00003D0E .padup + 00003D0E _waitpadup + 00003D1E .jpad + 00003D1E _joypad + 00003D46 _waitpad + 00003D47 .wait_pad + 00003D4E ___sdcc_call_hl call_hl + 00003D4F _memset memset + 00003D82 .set_xy_wtt SetTileMap + 00003D8B .set_xy_btt SetTileMap + 00003D9A .set_xy_tt SetTileMap + 00003DDE ___sdcc_bcall_ehl + 00003DF8 _set_bkg_tiles + ASxxxx Linker V03.00/V05.40 + sdld, page 37. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_INITIALIZER 00003E0C 00000018 = 24. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 38. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_GSINIT 00003E24 00000027 = 39. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00003E24 gsinit Runtime + + ASxxxx Linker V03.00/V05.40 + sdld, page 39. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_GSFINAL 00003E4B 00000001 = 1. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 40. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_DATA 0000C0A0 00001971 = 6513. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 0000C0A0 __cpu Runtime + 0000C0A1 __is_GBA Runtime + 0000C0A2 .mode Runtime + 0000C0A3 .sys_time Runtime + 0000C0A3 _sys_time Runtime + 0000C0A5 .int_0x40 Runtime + 0000C0B1 _actors actor + 0000C4F5 _actors_active_head actor + 0000C4F7 _actors_active_tail actor + 0000C4F9 _actors_inactive_head actor + 0000C4FB _screen_x actor + 0000C4FC _screen_y actor + 0000C4FD _invalid actor + 0000C4FF _player_moving actor + 0000C500 _player_iframes actor + 0000C501 _player_collision_actor actor + 0000C503 _emote_actor actor + 0000C505 _emote_timer actor + 0000C506 _allocated_sprite_tiles actor + 0000C507 _allocated_hardware_sprites actor + 0000C514 _camera_x camera + 0000C516 _camera_y camera + 0000C518 _camera_offset_x camera + 0000C519 _camera_offset_y camera + 0000C51A _camera_deadzone_x camera + 0000C51B _camera_deadzone_y camera + 0000C51C _camera_settings camera + 0000C520 _current_scene data_manager + 0000C523 _image_bank data_manager + 0000C524 _image_ptr data_manager + 0000C526 _image_attr_bank data_manager + 0000C527 _image_attr_ptr data_manager + 0000C529 _collision_bank data_manager + 0000C52A _collision_ptr data_manager + 0000C52C _image_tile_width data_manager + 0000C52D _image_tile_height data_manager + 0000C52E _image_width data_manager + 0000C530 _image_height data_manager + 0000C532 _sprites_len data_manager + 0000C533 _actors_len data_manager + 0000C534 _projectiles_len data_manager + 0000C535 _player_sprite_len data_manager + 0000C536 _scene_type data_manager + 0000C537 _scene_LCD_type data_manager + 0000C538 _scene_stack data_manager + 0000C578 _scene_stack_ptr data_manager + 0000C57A _scene_sprites_base_tiles data_manager + 0000C5BA _input_events events + 0000C5E2 _input_slots events + 0000C5EA _timer_events events + ASxxxx Linker V03.00/V05.40 + sdld, page 41. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_DATA 0000C0A0 00001971 = 6513. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 0000C5FE _timer_values events + 0000C606 _fade_running fade_manager + 0000C607 _fade_frames_per_step fade_manager + 0000C608 _fade_timer fade_manager + 0000C610 _joypads input + 0000C615 _frame_joy input + 0000C616 _last_joy input + 0000C617 _recent_joy input + 0000C618 _SIO_status + 0000C619 _link_byte_sent + 0000C61A _link_next_mode + 0000C61B _save_blob_size load_save + 0000C61D _routine_queue music_manager + 0000C621 _routine_queue_head music_manager + 0000C622 _routine_queue_tail music_manager + 0000C623 _music_events music_manager + 0000C637 _music_current_track_bank music_manager + 0000C638 _music_mute_mask music_manager + 0000C639 _music_effective_mute music_manager + 0000C63A _music_next_track music_manager + 0000C63C _music_current_track music_manager + 0000C63E _music_play_isr_counter music_manager + 0000C63F _music_play_isr_pause music_manager + 0000C640 _music_global_mute_mask music_manager + 0000C641 _music_sfx_priority music_manager + 0000C642 _DMG_palette palette + 0000C645 _SprPalette palette + 0000C685 _parallax_rows parallax + 0000C697 _parallax_row parallax + 0000C699 _projectiles projectiles + 0000C752 _projectile_defs projectiles + 0000C7C5 _projectiles_active_head projectiles + 0000C7C7 _projectiles_inactive_head projectiles + 0000C7CE _scroll_x scroll + 0000C7D0 _scroll_y scroll + 0000C7D2 _draw_scroll_x scroll + 0000C7D4 _draw_scroll_y scroll + 0000C7D6 _scroll_x_max scroll + 0000C7D8 _scroll_y_max scroll + 0000C7DA _scroll_offset_x scroll + 0000C7DB _scroll_offset_y scroll + 0000C7DC _pending_h_x scroll + 0000C7DD _pending_h_y scroll + 0000C7DE _pending_h_i scroll + 0000C7DF _pending_w_x scroll + 0000C7E0 _pending_w_y scroll + 0000C7E1 _pending_w_i scroll + 0000C7E2 _current_row scroll + 0000C7E4 _new_row scroll + 0000C7E6 _current_col scroll + 0000C7E8 _new_col scroll + ASxxxx Linker V03.00/V05.40 + sdld, page 42. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_DATA 0000C0A0 00001971 = 6513. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 0000C7EA .image_tile_width + 0000C7EB _sfx_play_bank sfx_player + 0000C7EC _sfx_play_sample sfx_player + 0000C7EE _sfx_frame_skip sfx_player + 0000C7EF _link_operation_mode sio + 0000C7F0 _link_packet sio + 0000C810 _link_packet_len sio + 0000C811 _link_packet_ptr sio + 0000C813 _link_packet_received sio + 0000C814 _link_packet_snd_len sio + 0000C815 _link_packet_snd_ptr sio + 0000C817 _link_packet_sent sio + 0000C818 __is_CGB system + 0000C819 __is_SGB system + 0000C81A __current_ram_bank system + 0000C81B _triggers trigger + 0000C913 _last_trigger_tx trigger + 0000C914 _last_trigger_ty trigger + 0000C915 _last_trigger trigger + 0000C916 _win_pos_x ui + 0000C917 _win_dest_pos_x ui + 0000C918 _win_pos_y ui + 0000C919 _win_dest_pos_y ui + 0000C91A _win_speed ui + 0000C91B _text_drawn ui + 0000C91C _current_text_speed ui + 0000C91D _text_options ui + 0000C91E _text_in_speed ui + 0000C91F _text_out_speed ui + 0000C920 _text_draw_speed ui + 0000C921 _text_ff_joypad ui + 0000C922 _text_ff ui + 0000C923 _text_bkg_fill ui + 0000C924 _ui_text_data ui + 0000CA2E _vwf_current_mask ui + 0000CA2F _vwf_current_rotate ui + 0000CA30 _vwf_inverse_map ui + 0000CA31 _vwf_direction ui + 0000CA32 _vwf_current_font_desc ui + 0000CA3A _vwf_current_font_bank ui + 0000CA3B _vwf_current_font_idx ui + 0000CA3C _text_render_base_addr ui + 0000CA3E _text_scroll_addr ui + 0000CA40 _text_scroll_width ui + 0000CA41 _text_scroll_height ui + 0000CA42 _text_scroll_fill ui + 0000CA43 _text_sound_mask ui + 0000CA44 _text_sound_bank ui + 0000CA45 _text_sound_data ui + 0000CA47 _overlay_priority ui + 0000CA48 _text_palette ui + ASxxxx Linker V03.00/V05.40 + sdld, page 43. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_DATA 0000C0A0 00001971 = 6513. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 0000CA4F __itoa_fmt_len vm_ui_a + 0000CA50 .itoa_fmt_buf vm_ui_a + 0000CA53 _CTXS vm + 0000CB83 _first_ctx vm + 0000CB85 _free_ctxs vm + 0000CB87 _old_executing_ctx vm + 0000CB89 _executing_ctx vm + 0000CB8B _vm_lock_state vm + 0000CB8C _vm_loaded_state vm + 0000CB8D _vm_exception_code vm + 0000CB8E _vm_exception_params_length vm + 0000CB8F _vm_exception_params_bank vm + 0000CB90 _vm_exception_params_offset vm + 0000CB94 _script_memory vm + 0000D99A _topdown_grid topdown + 0000D99B ___rand_seed + 0000D9B9 _hUGE_current_wave hUGEDriver_obj + 0000D9B9 hUGE_current_wave hUGEDriver_obj + 0000D9BA _hUGE_mute_mask hUGEDriver_obj + 0000DA01 ___call_banked_addr far_ptr + 0000DA01 ___call_banked_ptr far_ptr + 0000DA03 ___call_banked_bank far_ptr + 0000DA05 .int_0x48 + 0000DA0D ___current_metasprite Metasprites + 0000DA0F ___current_base_tile Metasprites + 0000DA10 ___current_base_prop Metasprites + + ASxxxx Linker V03.00/V05.40 + sdld, page 44. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_INITIALIZED 0000DA11 00000018 = 24. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 0000DA11 _fade_style fade_manager + 0000DA12 _game_time game_time + 0000DA13 _PRN_PKT_START gbprinter + 0000DA21 _hide_sprites interrupts + 0000DA22 _show_actors_on_overlay interrupts + 0000DA23 _overlay_cut_scanline interrupts + 0000DA24 __submap_tile_offset + 0000DA25 _triggers_len trigger + 0000DA26 _exchange_state vm_sio + 0000DA27 ___render_shadow_OAM Metasprites + 0000DA28 __map_tile_offset SetTileMap + + ASxxxx Linker V03.00/V05.40 + sdld, page 45. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HRAM12 00000000 00000003 = 3. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 0000FF90 __current_bank Runtime + 0000FF92 __shadow_OAM_base Runtime + + ASxxxx Linker V03.00/V05.40 + sdld, page 46. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_3 00034000 00003FFF = 16383. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00034000 ___func_ACTOR actor + 00034000 _actors_init actor + 0003403A _emote_offsets actor + 00034049 _emote_metasprite actor + 00034055 _player_init actor + 0003407B _deactivate_actor actor + 000341DC _activate_actor actor + 0003431B _activate_actors_in_row actor + 00034412 _activate_actors_in_col actor + 00034563 _actor_set_frames actor + 000345B9 _actor_set_frame_offset actor + 000345F4 _actor_get_frame_offset actor + 00034606 _actor_set_anim_idle actor + 00034634 _actor_set_anim_moving actor + 00034665 _actor_set_dir actor + 000346CA _actor_at_tile actor + 0003479E _actor_in_front_of_player actor + 00034852 _actor_overlapping_player actor + 00034A61 _actor_overlapping_bb actor + 00034CDF _actors_handle_player_collision actor + 00034D6B _check_collision_in_direction actor + 00035589 _projectiles_init projectiles + 000355B8 _projectile_launch projectiles + 000359B2 ___func_bg_outside_cgb_tileset bg_outside_cgb_tileset + 000359B2 _bg_outside_cgb_tileset bg_outside_cgb_tileset + 00036944 ___func_scene_1_collisions scene_1_collisions + 00036944 _scene_1_collisions scene_1_collisions + 00037FC4 ___func_scene_1 scene_1 + 00037FC4 _scene_1 scene_1 + + ASxxxx Linker V03.00/V05.40 + sdld, page 47. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_9 00094000 00001130 = 4400. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00094000 _bootstrap_script + 0009400B _camera_init camera + 00094031 _input_init input + 00094057 _remove_LCD_ISRs interrupts + 00094072 _parallax_init parallax + 00094092 _SIO_init sio + 000940BB _actor_10_interact actor_10_interact + 000940BC GBVM$actor_10_interact$40c24373_ actor_10_interact + 000940F0 _actor_11_interact actor_11_interact + 000940F1 GBVM$actor_11_interact$456de86c_ actor_11_interact + 00094125 _actor_12_interact actor_12_interact + 00094126 GBVM$actor_12_interact$fc3d2f59_ actor_12_interact + 00094158 _actor_13_interact actor_13_interact + 00094159 GBVM$actor_13_interact$aea1309f_ actor_13_interact + 0009418C _actor_4_interact actor_4_interact + 0009418D GBVM$actor_4_interact$66ba34f7_d actor_4_interact + 000941C4 _actor_6_interact actor_6_interact + 000941C5 GBVM$actor_6_interact$3a7a7459_d actor_6_interact + 000941FD _actor_9_interact actor_9_interact + 000941FE GBVM$actor_9_interact$a251238e_2 actor_9_interact + 00094228 ___func_bg_cave bg_cave + 00094228 _bg_cave bg_cave + 00094236 ___func_bg_endscreen bg_endscreen + 00094236 _bg_endscreen bg_endscreen + 00094244 ___func_bg_fate6housef2 bg_fate6housef2 + 00094244 _bg_fate6housef2 bg_fate6housef2 + 00094252 ___func_bg_house_wide bg_house_wide + 00094252 _bg_house_wide bg_house_wide + 00094260 ___func_bg_house bg_house + 00094260 _bg_house bg_house + 0009426E ___func_bg_housef2 bg_housef2 + 0009426E _bg_housef2 bg_housef2 + 0009427C ___func_bg_lab1 bg_lab1 + 0009427C _bg_lab1 bg_lab1 + 0009428A ___func_bg_logoscreen bg_logoscreen + 0009428A _bg_logoscreen bg_logoscreen + 00094298 ___func_bg_outside bg_outside + 00094298 _bg_outside bg_outside + 000942A6 ___func_bg_overworld_test_1 bg_overworld_test_1 + 000942A6 _bg_overworld_test_1 bg_overworld_test_1 + 000942B4 ___func_bg_questscreen bg_questscreen + 000942B4 _bg_questscreen bg_questscreen + 000942C2 ___func_bg_slighhousef2 bg_slighhousef2 + 000942C2 _bg_slighhousef2 bg_slighhousef2 + 000942D0 ___func_bg_titlescreen bg_titlescreen + 000942D0 _bg_titlescreen bg_titlescreen + 000942DE ___func_scene_1_sprites scene_1_sprites + 000942DE _scene_1_sprites scene_1_sprites + 000942E4 _scene_10_init scene_10_init + 000942E5 GBVM$scene_10_init$autofade$a2e1 scene_10_init + ASxxxx Linker V03.00/V05.40 + sdld, page 48. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_9 00094000 00001130 = 4400. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 000942F1 ___func_scene_10 scene_10 + 000942F1 _scene_10 scene_10 + 0009432C _scene_11_init scene_11_init + 0009432D GBVM$scene_11_init$18f66311_1d25 scene_11_init + 00094331 GBVM$scene_11_init$55e2f8e8_c3d1 scene_11_init + 00094335 GBVM$scene_11_init$autofade$9df6 scene_11_init + 00094341 ___func_scene_11 scene_11 + 00094341 _scene_11 scene_11 + 0009437C _scene_12_init scene_12_init + 0009437D GBVM$scene_12_init$e54106ac_22c4 scene_12_init + 00094388 GBVM$scene_12_init$00b1d631_23ed scene_12_init + 00094390 GBVM_END$scene_12_init$00b1d631_ scene_12_init + 00094391 ___func_scene_12 scene_12 + 00094391 _scene_12 scene_12 + 000943CC _scene_13_init scene_13_init + 000943CD GBVM$scene_13_init$5629f726_8477 scene_13_init + 000943D5 GBVM$scene_13_init$autofade$80bd scene_13_init + 000943D5 GBVM_END$scene_13_init$5629f726_ scene_13_init + 000943E1 ___func_scene_13 scene_13 + 000943E1 _scene_13 scene_13 + 0009441C ___func_scene_14_actors scene_14_actors + 0009441C _scene_14_actors scene_14_actors + 00094450 _scene_14_init scene_14_init + 00094451 GBVM$scene_14_init$8bc3a7b3_146c scene_14_init + 00094455 GBVM$scene_14_init$8ed90e1e_1d2a scene_14_init + 00094459 GBVM$scene_14_init$autofade$7cb6 scene_14_init + 00094465 ___func_scene_14_triggers scene_14_triggers + 00094465 _scene_14_triggers scene_14_triggers + 0009446D ___func_scene_14 scene_14 + 0009446D _scene_14 scene_14 + 000944A8 ___func_scene_15_sprites scene_15_sprites + 000944A8 _scene_15_sprites scene_15_sprites + 000944AB ___func_scene_15 scene_15 + 000944AB _scene_15 scene_15 + 000944E6 _scene_16_init scene_16_init + 000944E9 GBVM$scene_16_init$044790ae_56ab scene_16_init + 000944F1 GBVM$scene_16_init$278aa91b_0725 scene_16_init + 000944F5 GBVM$scene_16_init$autofade$59d0 scene_16_init + 00094501 ___func_scene_16 scene_16 + 00094501 _scene_16 scene_16 + 0009453C ___func_scene_17_actors scene_17_actors + 0009453C _scene_17_actors scene_17_actors + 00094570 _scene_17_init scene_17_init + 00094571 GBVM$scene_17_init$3410b154_9bf8 scene_17_init + 00094579 GBVM$scene_17_init$autofade$a1bf scene_17_init + 00094579 GBVM_END$scene_17_init$3410b154_ scene_17_init + 00094585 ___func_scene_17_sprites scene_17_sprites + 00094585 _scene_17_sprites scene_17_sprites + 00094588 ___func_scene_17_triggers scene_17_triggers + 00094588 _scene_17_triggers scene_17_triggers + 00094590 ___func_scene_17 scene_17 + ASxxxx Linker V03.00/V05.40 + sdld, page 49. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_9 00094000 00001130 = 4400. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00094590 _scene_17 scene_17 + 000945CB ___func_scene_2_actors scene_2_actors + 000945CB _scene_2_actors scene_2_actors + 000945FF _scene_2_init scene_2_init + 00094600 GBVM$scene_2_init$7f8cfc5c_64c4_ scene_2_init + 00094604 GBVM$scene_2_init$139e6760_d53c_ scene_2_init + 00094608 GBVM$scene_2_init$autofade$921aa scene_2_init + 00094614 ___func_scene_2_sprites scene_2_sprites + 00094614 _scene_2_sprites scene_2_sprites + 00094617 ___func_scene_2_triggers scene_2_triggers + 00094617 _scene_2_triggers scene_2_triggers + 00094627 ___func_scene_2 scene_2 + 00094627 _scene_2 scene_2 + 00094662 ___func_scene_3_actors scene_3_actors + 00094662 _scene_3_actors scene_3_actors + 00094696 _scene_3_init scene_3_init + 00094697 GBVM$scene_3_init$e22d6e45_c2d9_ scene_3_init + 0009469B GBVM$scene_3_init$28dd4168_d4f4_ scene_3_init + 0009469F GBVM$scene_3_init$autofade$7bc00 scene_3_init + 000946AB ___func_scene_3_sprites scene_3_sprites + 000946AB _scene_3_sprites scene_3_sprites + 000946AE ___func_scene_3_triggers scene_3_triggers + 000946AE _scene_3_triggers scene_3_triggers + 000946B6 ___func_scene_3 scene_3 + 000946B6 _scene_3 scene_3 + 000946F1 _scene_4_init scene_4_init + 000946F2 GBVM$scene_4_init$b5a81f5f_a2ad_ scene_4_init + 000946F6 GBVM$scene_4_init$d5d47b9d_feef_ scene_4_init + 000946FA GBVM$scene_4_init$autofade$bae8f scene_4_init + 00094706 ___func_scene_4_triggers scene_4_triggers + 00094706 _scene_4_triggers scene_4_triggers + 0009471E ___func_scene_4 scene_4 + 0009471E _scene_4 scene_4 + 00094759 ___func_scene_5_actors scene_5_actors + 00094759 _scene_5_actors scene_5_actors + 0009478D _scene_5_init scene_5_init + 0009478E GBVM$scene_5_init$94e5b63b_0b3b_ scene_5_init + 00094792 GBVM$scene_5_init$d9181b4d_e7be_ scene_5_init + 00094796 GBVM$scene_5_init$autofade$ad0d9 scene_5_init + 000947A2 ___func_scene_5_sprites scene_5_sprites + 000947A2 _scene_5_sprites scene_5_sprites + 000947A5 ___func_scene_5_triggers scene_5_triggers + 000947A5 _scene_5_triggers scene_5_triggers + 000947AD ___func_scene_5 scene_5 + 000947AD _scene_5 scene_5 + 000947E8 ___func_scene_6_actors scene_6_actors + 000947E8 _scene_6_actors scene_6_actors + 0009481C _scene_6_init scene_6_init + 0009481D GBVM$scene_6_init$b38e576e_e806_ scene_6_init + 00094821 GBVM$scene_6_init$67f7a844_bef6_ scene_6_init + 00094825 GBVM$scene_6_init$autofade$26de2 scene_6_init + ASxxxx Linker V03.00/V05.40 + sdld, page 50. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_9 00094000 00001130 = 4400. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00094831 ___func_scene_6_sprites scene_6_sprites + 00094831 _scene_6_sprites scene_6_sprites + 00094834 ___func_scene_6_triggers scene_6_triggers + 00094834 _scene_6_triggers scene_6_triggers + 0009483C ___func_scene_6 scene_6 + 0009483C _scene_6 scene_6 + 00094877 ___func_scene_7_actors scene_7_actors + 00094877 _scene_7_actors scene_7_actors + 000948AB _scene_7_init scene_7_init + 000948AC GBVM$scene_7_init$e1732ea6_42d6_ scene_7_init + 000948B0 GBVM$scene_7_init$3975b612_ea6a_ scene_7_init + 000948B4 GBVM$scene_7_init$autofade$56904 scene_7_init + 000948C0 ___func_scene_7_sprites scene_7_sprites + 000948C0 _scene_7_sprites scene_7_sprites + 000948C3 ___func_scene_7_triggers scene_7_triggers + 000948C3 _scene_7_triggers scene_7_triggers + 000948CB ___func_scene_7 scene_7 + 000948CB _scene_7 scene_7 + 00094906 _scene_8_init scene_8_init + 00094907 GBVM$scene_8_init$60700987_6934_ scene_8_init + 0009490B GBVM$scene_8_init$329fbc56_4c91_ scene_8_init + 0009490F GBVM$scene_8_init$autofade$d0663 scene_8_init + 0009491B ___func_scene_8_sprites scene_8_sprites + 0009491B _scene_8_sprites scene_8_sprites + 00094921 ___func_scene_8_triggers scene_8_triggers + 00094921 _scene_8_triggers scene_8_triggers + 00094931 ___func_scene_8 scene_8 + 00094931 _scene_8 scene_8 + 0009496C _scene_9_init scene_9_init + 0009496D GBVM$scene_9_init$eb25df35_0d3a_ scene_9_init + 00094971 GBVM$scene_9_init$e1f0c0ed_24f8_ scene_9_init + 00094975 GBVM$scene_9_init$autofade$9722d scene_9_init + 00094981 ___func_scene_9_triggers scene_9_triggers + 00094981 _scene_9_triggers scene_9_triggers + 00094989 ___func_scene_9 scene_9 + 00094989 _scene_9 scene_9 + 000949C4 _script_engine_init + 000949D8 _script_input_4 script_input_4 + 000949DA GBVM$script_input_4$5202b387_b35 script_input_4 + 00094A0C GBVM$script_input_4$987cb2c9_e6d script_input_4 + 00094A14 GBVM_END$script_input_4$987cb2c9 script_input_4 + 00094A15 _script_input_6 script_input_6 + 00094A17 GBVM$script_input_6$9ffc3716_9d9 script_input_6 + 00094A4A _script_input script_input + 00094A4C GBVM$script_input$7521920b_846a_ script_input + 00094A4D GBVM$script_input$0b41a76f_f0b9_ script_input + 00094A80 ___func_sprite_cat_bank2_tileset sprite_cat_bank2_tileset + 00094A80 _sprite_cat_bank2_tileset sprite_cat_bank2_tileset + 00094AA2 ___func_sprite_cat_tileset sprite_cat_tileset + 00094AA2 _sprite_cat_tileset sprite_cat_tileset + 00094AC4 ___func_sprite_cat sprite_cat + ASxxxx Linker V03.00/V05.40 + sdld, page 51. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_9 00094000 00001130 = 4400. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00094AC4 _sprite_cat_metasprite_0 sprite_cat + 00094AD0 _sprite_cat_metasprites sprite_cat + 00094AD2 _sprite_cat_animations sprite_cat + 00094AE2 _sprite_cat_animations_lookup sprite_cat + 00094AE4 _sprite_cat sprite_cat + 00094AF7 ___func_sprite_checkbox_bank2_ti sprite_checkbox_bank2_tilese + 00094AF7 _sprite_checkbox_bank2_tileset sprite_checkbox_bank2_tilese + 00094B19 ___func_sprite_checkbox_tileset sprite_checkbox_tileset + 00094B19 _sprite_checkbox_tileset sprite_checkbox_tileset + 00094B3B ___func_sprite_checkbox sprite_checkbox + 00094B3B _sprite_checkbox_metasprite_0 sprite_checkbox + 00094B43 _sprite_checkbox_metasprite_1 sprite_checkbox + 00094B4B _sprite_checkbox_metasprites sprite_checkbox + 00094B4F _sprite_checkbox_animations sprite_checkbox + 00094B5F _sprite_checkbox_animations_look sprite_checkbox + 00094B61 _sprite_checkbox sprite_checkbox + 00094B74 ___func_sprite_dog_bank2_tileset sprite_dog_bank2_tileset + 00094B74 _sprite_dog_bank2_tileset sprite_dog_bank2_tileset + 00094B96 ___func_sprite_dog_tileset sprite_dog_tileset + 00094B96 _sprite_dog_tileset sprite_dog_tileset + 00094BB8 ___func_sprite_dog sprite_dog + 00094BB8 _sprite_dog_metasprite_0 sprite_dog + 00094BC4 _sprite_dog_metasprites sprite_dog + 00094BC6 _sprite_dog_animations sprite_dog + 00094BD6 _sprite_dog_animations_lookup sprite_dog + 00094BD8 _sprite_dog sprite_dog + 00094BEB ___func_sprite_sign_bank2_tilese sprite_sign_bank2_tileset + 00094BEB _sprite_sign_bank2_tileset sprite_sign_bank2_tileset + 00094C0D ___func_sprite_sign_tileset sprite_sign_tileset + 00094C0D _sprite_sign_tileset sprite_sign_tileset + 00094C2F ___func_sprite_sign sprite_sign + 00094C2F _sprite_sign_metasprite_0 sprite_sign + 00094C3B _sprite_sign_metasprites sprite_sign + 00094C3D _sprite_sign_animations sprite_sign + 00094C4D _sprite_sign_animations_lookup sprite_sign + 00094C4F _sprite_sign sprite_sign + 00094C62 _spritesheet_none_metasprite spritesheet_none + 00094C66 _spritesheet_none_metasprites spritesheet_none + 00094C68 _spritesheet_none spritesheet_none + 00094C7B _trigger_0_interact trigger_0_interact + 00094C7E GBVM$trigger_0_interact$07bf8d63 trigger_0_interact + 00094CB1 _trigger_1_interact trigger_1_interact + 00094CB4 GBVM$trigger_1_interact$0fa8d5be trigger_1_interact + 00094CE7 _trigger_10_interact trigger_10_interact + 00094CEA GBVM$trigger_10_interact$810b278 trigger_10_interact + 00094D1D _trigger_11_interact trigger_11_interact + 00094D20 GBVM$trigger_11_interact$0c48921 trigger_11_interact + 00094D53 _trigger_12_interact trigger_12_interact + 00094D56 GBVM$trigger_12_interact$d992788 trigger_12_interact + 00094D89 _trigger_13_interact trigger_13_interact + 00094D8C GBVM$trigger_13_interact$6044fe8 trigger_13_interact + ASxxxx Linker V03.00/V05.40 + sdld, page 52. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_9 00094000 00001130 = 4400. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00094DBF _trigger_14_interact trigger_14_interact + 00094DC2 GBVM$trigger_14_interact$e2c16bf trigger_14_interact + 00094DF5 _trigger_15_interact trigger_15_interact + 00094DF8 GBVM$trigger_15_interact$fb757d7 trigger_15_interact + 00094E2B _trigger_17_interact trigger_17_interact + 00094E2E GBVM$trigger_17_interact$6ebaa0e trigger_17_interact + 00094E61 _trigger_18_interact trigger_18_interact + 00094E64 GBVM$trigger_18_interact$4466f80 trigger_18_interact + 00094E97 _trigger_19_interact trigger_19_interact + 00094E9A GBVM$trigger_19_interact$75eeb67 trigger_19_interact + 00094ECD _trigger_2_interact trigger_2_interact + 00094ED0 GBVM$trigger_2_interact$0fe0fc32 trigger_2_interact + 00094F03 _trigger_20_interact trigger_20_interact + 00094F06 GBVM$trigger_20_interact$e838ec0 trigger_20_interact + 00094F39 _trigger_21_interact trigger_21_interact + 00094F3C GBVM$trigger_21_interact$46acf31 trigger_21_interact + 00094F6F _trigger_22_interact trigger_22_interact + 00094F72 GBVM$trigger_22_interact$4a9471e trigger_22_interact + 00094FA5 _trigger_24_interact trigger_24_interact + 00094FA8 GBVM$trigger_24_interact$f182511 trigger_24_interact + 00094FDB _trigger_3_interact trigger_3_interact + 00094FDE GBVM$trigger_3_interact$d52daab9 trigger_3_interact + 00095011 _trigger_4_interact trigger_4_interact + 00095014 GBVM$trigger_4_interact$4aaedc54 trigger_4_interact + 00095047 _trigger_5_interact trigger_5_interact + 0009504A GBVM$trigger_5_interact$c420a824 trigger_5_interact + 0009507D _trigger_6_interact trigger_6_interact + 00095080 GBVM$trigger_6_interact$9ed4421d trigger_6_interact + 000950B3 _trigger_7_interact trigger_7_interact + 000950B6 GBVM$trigger_7_interact$d4cd17b2 trigger_7_interact + 000950E9 _trigger_8_interact trigger_8_interact + 000950EC GBVM$trigger_8_interact$f5798465 trigger_8_interact + 0009511F _logo_init logo + 0009512F _logo_update logo + ASxxxx Linker V03.00/V05.40 + sdld, page 53. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_6 00064000 00004000 = 16384. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00064000 _core_reset core + 00064075 _process_VM core + 000642F3 _core_run core + 000643CF _scroll_init scroll + 000643F9 _scroll_reset scroll + 00064419 _scroll_update scroll + 00064550 _scroll_viewport scroll + 000649E9 _scroll_repaint scroll + 000649F9 _scroll_render_rows scroll + 00064A8F _scroll_queue_row scroll + 00064AB1 _scroll_queue_col scroll + 00064AFC ___func_VM_GAMEBOY vm_gameboy + 00064AFC _vm_set_sprites_visible vm_gameboy + 00064B13 _vm_input_wait vm_gameboy + 00064B3C _vm_context_prepare vm_gameboy + 00064B67 _vm_input_attach vm_gameboy + 00064B7D _vm_input_detach vm_gameboy + 00064B91 _vm_input_get vm_gameboy + 00064BC5 _vm_fade vm_gameboy + 00064BF5 _vm_timer_prepare vm_gameboy + 00064C20 _vm_timer_set vm_gameboy + 00064C3B _vm_timer_stop vm_gameboy + 00064C4F _vm_timer_reset vm_gameboy + 00064C66 _vm_get_tile_xy vm_gameboy + 00064D3C _vm_replace_tile vm_gameboy + 00064DE7 _vm_poll vm_gameboy + 00064EB9 _vm_set_sprite_mode vm_gameboy + 00064ECD _vm_replace_tile_xy vm_gameboy + 000650AD _vm_rumble vm_gameboy + 000650CD _vm_load_tileset vm_gameboy + 0006519E ___func_VM_MATH vm_math + 0006519E _vm_sin_scale vm_math + 0006523A _vm_cos_scale vm_math + 000652D8 ___func_VM_UI vm_ui + 000652D8 _vm_display_text vm_ui + 00065341 _vm_switch_text_layer vm_ui + 0006535B _vm_overlay_setpos vm_ui + 00065375 _vm_overlay_wait vm_ui + 00065405 _vm_overlay_move_to vm_ui + 00065449 _vm_overlay_set_scroll vm_ui + 00065482 _vm_overlay_clear vm_ui + 00065554 _vm_overlay_show vm_ui + 000655A2 _vm_choice vm_ui + 000656BD _vm_set_font vm_ui + 000656EC _vm_overlay_scroll vm_ui + 0006574D _vm_overlay_set_submap vm_ui + 000657B9 _vm_overlay_set_submap_ex vm_ui + 000658BA _vm_overlay_set_map vm_ui + 00065A19 _vm_set_text_sound vm_ui + 00065A32 ___func_bg_fate6housef2_tileset bg_fate6housef2_tileset + ASxxxx Linker V03.00/V05.40 + sdld, page 54. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_6 00064000 00004000 = 16384. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00065A32 _bg_fate6housef2_tileset bg_fate6housef2_tileset + 00065E34 ___func_bg_housef2_tileset bg_housef2_tileset + 00065E34 _bg_housef2_tileset bg_housef2_tileset + 00066236 ___func_bg_outside_tilemap_attr bg_outside_tilemap_attr + 00066236 _bg_outside_tilemap_attr bg_outside_tilemap_attr + 00066636 ___func_bg_outside_tilemap bg_outside_tilemap + 00066636 _bg_outside_tilemap bg_outside_tilemap + 00066A36 ___func_bg_overworld_test_1_tile bg_overworld_test_1_tileset + 00066A36 _bg_overworld_test_1_tileset bg_overworld_test_1_tileset + 00067128 ___func_bg_slighhousef2_tileset bg_slighhousef2_tileset + 00067128 _bg_slighhousef2_tileset bg_slighhousef2_tileset + 0006752A ___func_cursor_image cursor_image + 0006752A _cursor_image cursor_image + 0006753A ___func_scene_17_collisions scene_17_collisions + 0006753A _scene_17_collisions scene_17_collisions + 0006793A _topdown_init topdown + 000679D6 _topdown_update topdown + + ASxxxx Linker V03.00/V05.40 + sdld, page 55. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CRASH_HEADER0 00000000 00000005 = 5. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 56. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CRASH_HEADER1 00000000 00000004 = 4. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 57. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_7 00074000 00004000 = 16384. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00074000 ___HandleCrash_banked + 00074368 _CGBFadeToWhiteStep fade_manager + 000743A1 _CGBFadeToBlackStep fade_manager + 000743DC _ApplyPaletteChangeColor fade_manager + 00074419 _fade_speeds fade_manager + 00074420 _DMGFadeToWhiteStep fade_manager + 00074441 _DMGFadeToBlackStep fade_manager + 00074464 _ApplyPaletteChangeDMG fade_manager + 000744BA _fade_init fade_manager + 000744DB _fade_in fade_manager + 00074513 _fade_out fade_manager + 0007454C _fade_update fade_manager + 0007459F _fade_applypalettechange fade_manager + 000745B1 _fade_setspeed fade_manager + 000745C1 _fade_in_modal fade_manager + 000745DB _fade_out_modal fade_manager + 000745F5 _printer_send_receive gbprinter + 0007462B _printer_send_byte gbprinter + 0007463E _printer_send_command gbprinter + 00074661 _printer_print_tile gbprinter + 000746F2 _printer_wait gbprinter + 00074724 _gbprinter_detect gbprinter + 0007473E _gbprinter_print_overlay gbprinter + 0007490B _data_init load_save + 00074956 _save_points load_save + 000749B6 _data_slot_address load_save + 00074A2E _data_save load_save + 00074AEF _data_load load_save + 00074C03 _data_clear load_save + 00074C30 _data_peek load_save + 00074CD1 _atan2 math_atan2 + 00074E6A _atan2_table math_atan2 + 00074FD2 _set_sgb_border sgb_border + 000751BC _trigger_reset trigger + 000751CC _trigger_interact trigger + 0007520B _trigger_activate_at trigger + 00075256 _trigger_at_intersection trigger + 0007537D _trigger_activate_at_intersectio trigger + 000754BE _trigger_at_tile trigger + 0007554F ___func_VM_CAMERA vm_camera + 0007554F _vm_camera_move_to vm_camera + 000757A2 _vm_camera_set_pos vm_camera + 000757E9 _camera_shake_frames vm_camera + 00075918 ___func_VM_PALETTE vm_palette + 00075918 _vm_load_palette vm_palette + 00075AC1 _actor_0_interact actor_0_interact + 00075AC4 GBVM$actor_0_interact$473d560c_7 actor_0_interact + 00075AD0 GBVM$actor_0_interact$1f0f62a7_b actor_0_interact + 00075AD5 GBVM$actor_0_interact$99d2e956_8 actor_0_interact + 00075B04 GBVM$actor_0_interact$9496b732_9 actor_0_interact + ASxxxx Linker V03.00/V05.40 + sdld, page 58. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_7 00074000 00004000 = 16384. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00075B0F GBVM$actor_0_interact$b0d5b211_3 actor_0_interact + 00075B0F GBVM_END$actor_0_interact$473d56 actor_0_interact + 00075B18 GBVM$actor_0_interact$fb76c03c_b actor_0_interact + 00075B21 GBVM$actor_0_interact$1faccab1_7 actor_0_interact + 00075B2D GBVM$actor_0_interact$679f315d_9 actor_0_interact + 00075BD3 GBVM$actor_0_interact$5103d5e5_1 actor_0_interact + 00075BD8 GBVM$actor_0_interact$3a42fdaf_7 actor_0_interact + 00075BDD GBVM_END$actor_0_interact$1facca actor_0_interact + 00075BE0 GBVM_END$actor_0_interact$fb76c0 actor_0_interact + 00075BE3 GBVM$actor_0_interact$e2992086_7 actor_0_interact + 00075C7D GBVM_END$actor_0_interact$b0d5b2 actor_0_interact + 00075C7E _actor_5_interact actor_5_interact + 00075C81 GBVM$actor_5_interact$f32bb834_5 actor_5_interact + 00075CE8 GBVM$actor_5_interact$0b32cb13_5 actor_5_interact + 00075CED GBVM$actor_5_interact$19fb6aa5_c actor_5_interact + 00075D20 ___func_bg_cave_tilemap_attr bg_cave_tilemap_attr + 00075D20 _bg_cave_tilemap_attr bg_cave_tilemap_attr + 00075E88 ___func_bg_cave_tilemap bg_cave_tilemap + 00075E88 _bg_cave_tilemap bg_cave_tilemap + 00075FF0 ___func_bg_endscreen_cgb_tileset bg_endscreen_cgb_tileset + 00075FF0 _bg_endscreen_cgb_tileset bg_endscreen_cgb_tileset + 000761B2 ___func_bg_endscreen_tilemap_att bg_endscreen_tilemap_attr + 000761B2 _bg_endscreen_tilemap_attr bg_endscreen_tilemap_attr + 0007631A ___func_bg_endscreen_tilemap bg_endscreen_tilemap + 0007631A _bg_endscreen_tilemap bg_endscreen_tilemap + 00076482 ___func_bg_fate6housef2_tilemap_ bg_fate6housef2_tilemap_attr + 00076482 _bg_fate6housef2_tilemap_attr bg_fate6housef2_tilemap_attr + 000765EA ___func_bg_fate6housef2_tilemap bg_fate6housef2_tilemap + 000765EA _bg_fate6housef2_tilemap bg_fate6housef2_tilemap + 00076752 ___func_bg_house_tileset bg_house_tileset + 00076752 _bg_house_tileset bg_house_tileset + 00076A24 ___func_bg_house_wide_tilemap_at bg_house_wide_tilemap_attr + 00076A24 _bg_house_wide_tilemap_attr bg_house_wide_tilemap_attr + 00076C64 ___func_bg_house_wide_tilemap bg_house_wide_tilemap + 00076C64 _bg_house_wide_tilemap bg_house_wide_tilemap + 00076EA4 ___func_bg_house_wide_tileset bg_house_wide_tileset + 00076EA4 _bg_house_wide_tileset bg_house_wide_tileset + 000771F6 ___func_bg_lab1_tilemap_attr bg_lab1_tilemap_attr + 000771F6 _bg_lab1_tilemap_attr bg_lab1_tilemap_attr + 000773D6 ___func_bg_lab1_tilemap bg_lab1_tilemap + 000773D6 _bg_lab1_tilemap bg_lab1_tilemap + 000775B6 ___func_scene_1_actors scene_1_actors + 000775B6 _scene_1_actors scene_1_actors + 00077756 ___func_scene_2_collisions scene_2_collisions + 00077756 _scene_2_collisions scene_2_collisions + 00077996 ___func_scene_4_collisions scene_4_collisions + 00077996 _scene_4_collisions scene_4_collisions + 00077BD6 ___func_scene_6_collisions scene_6_collisions + 00077BD6 _scene_6_collisions scene_6_collisions + 00077DB6 ___func_scene_8_collisions scene_8_collisions + 00077DB6 _scene_8_collisions scene_8_collisions + ASxxxx Linker V03.00/V05.40 + sdld, page 59. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_7 00074000 00004000 = 16384. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00077FF6 GBVM$script_1$d7c90f6e_4dc3_41fc script_1 + 00077FF6 _script_1 script_1 + 00077FFE GBVM_END$script_1$d7c90f6e_4dc3_ script_1 + + ASxxxx Linker V03.00/V05.40 + sdld, page 60. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CRASH_SCRATCH2 00000000 000001CB = 459. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 61. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_5 00054000 00003FFE = 16382. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00054000 _load_init data_manager + 00054013 _spritesheet_none_far data_manager + 00054016 _load_bkg_tileset data_manager + 000540F3 _load_background data_manager + 000541B9 _load_sprite data_manager + 0005428F _load_bounds data_manager + 000542AC _do_load_palette data_manager + 00054331 _load_scene data_manager + 00054991 _load_player data_manager + 000549DA _load_emote data_manager + 000549F3 ___func_VM_SIO vm_sio + 000549F3 _vm_sio_set_mode vm_sio + 00054A05 _vm_sio_exchange vm_sio + 00054CE7 ___func_bg_endscreen_tileset bg_endscreen_tileset + 00054CE7 _bg_endscreen_tileset bg_endscreen_tileset + 000554E9 ___func_bg_questscreen_tileset bg_questscreen_tileset + 000554E9 _bg_questscreen_tileset bg_questscreen_tileset + 00055C6B ___func_font_gbs_mono font_gbs_mono + 00056A1B _font_gbs_mono font_gbs_mono + 000574FA _song_rulz_outside_0_Data song_rulz_outside_0_Data + 00057FE6 _song_rulz_spaceemergency_0_Data song_rulz_spaceemergency_0_D + 00057FFB ___func_scene_14_sprites scene_14_sprites + 00057FFB _scene_14_sprites scene_14_sprites + + ASxxxx Linker V03.00/V05.40 + sdld, page 62. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_8 00084000 00003FFF = 16383. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00084000 _events_init events + 00084040 _timers_init events + 000840E8 _save_sram_banks + 00084170 _erase_flash + 00084186 _restore_sram_bank flasher + 000841BC _restore_sram flasher + 000841D2 _save_sram flasher + 000841FE _music_init_driver music_manager + 0008425A _music_init_events music_manager + 00084296 _music_events_poll music_manager + 000842BE _music_pause music_manager + 000842E0 _palette_init palette + 00084317 _CGBZeroPalette palette + 0008432C _scroll_rect + 00084369 ___func_VM_LOAD_SAVE vm_load_save + 00084369 _vm_save_clear vm_load_save + 00084378 _vm_save_peek vm_load_save + 000843FA ___func_VM_MUSIC vm_music + 000843FA _vm_music_play vm_music + 00084447 _vm_music_stop vm_music + 00084469 _vm_music_mute vm_music + 000844A7 _vm_music_routine vm_music + 000844CE _vm_music_setpos vm_music + 000844D4 _vm_sound_mastervol vm_music + 000844DA _vm_sfx_play vm_music + 0008454D ___func_VM_PROJECTILE vm_projectiles + 0008454D _vm_projectile_launch vm_projectiles + 0008458E _vm_projectile_load_type vm_projectiles + 00084620 ___func_VM_RTC vm_rtc + 00084620 _vm_rtc_latch vm_rtc + 00084628 _vm_rtc_get vm_rtc + 0008468F _vm_rtc_set vm_rtc + 000846ED _vm_rtc_start vm_rtc + 00084710 ___func_VM_SCENE vm_scene + 00084710 _vm_scene_push vm_scene + 00084786 _vm_scene_pop vm_scene + 00084794 _vm_scene_pop_all vm_scene + 0008479F _vm_scene_stack_reset vm_scene + 000847A8 _itoa_fmt vm_ui_a + 000847DC .utoa_fmt vm_ui_a + 00084886 _actor_1_interact actor_1_interact + 00084889 GBVM$actor_1_interact$b7eb01cb_8 actor_1_interact + 000848EA GBVM$actor_1_interact$9c774420_a actor_1_interact + 000848F4 _actor_14_interact actor_14_interact + 000848F5 GBVM$actor_14_interact$70022942_ actor_14_interact + 00084924 _actor_15_interact actor_15_interact + 00084925 GBVM$actor_15_interact$31177c6a_ actor_15_interact + 0008497E _actor_2_interact actor_2_interact + 0008497F GBVM$actor_2_interact$049a13b7_6 actor_2_interact + 00084988 GBVM$actor_2_interact$ad1b9670_0 actor_2_interact + ASxxxx Linker V03.00/V05.40 + sdld, page 63. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_8 00084000 00003FFF = 16383. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00084A2D GBVM$actor_2_interact$4783a794_d actor_2_interact + 00084A32 GBVM$actor_2_interact$b4a8e402_8 actor_2_interact + 00084A3A GBVM$actor_2_interact$cc3a5ed3_8 actor_2_interact + 00084A69 GBVM_END$actor_2_interact$049a13 actor_2_interact + 00084A6A _actor_3_interact actor_3_interact + 00084A6D GBVM$actor_3_interact$fc2374b0_d actor_3_interact + 00084AA8 GBVM$actor_3_interact$38029e79_c actor_3_interact + 00084AB2 _actor_8_interact actor_8_interact + 00084AB3 GBVM$actor_8_interact$f5e8edd7_b actor_8_interact + 00084AFE ___func_bg_house_tilemap_attr bg_house_tilemap_attr + 00084AFE _bg_house_tilemap_attr bg_house_tilemap_attr + 00084C66 ___func_bg_house_tilemap bg_house_tilemap + 00084C66 _bg_house_tilemap bg_house_tilemap + 00084DCE ___func_bg_housef2_tilemap_attr bg_housef2_tilemap_attr + 00084DCE _bg_housef2_tilemap_attr bg_housef2_tilemap_attr + 00084F36 ___func_bg_housef2_tilemap bg_housef2_tilemap + 00084F36 _bg_housef2_tilemap bg_housef2_tilemap + 0008509E ___func_bg_logoscreen_tilemap_at bg_logoscreen_tilemap_attr + 0008509E _bg_logoscreen_tilemap_attr bg_logoscreen_tilemap_attr + 00085206 ___func_bg_logoscreen_tilemap bg_logoscreen_tilemap + 00085206 _bg_logoscreen_tilemap bg_logoscreen_tilemap + 0008536E ___func_bg_questscreen_tilemap_a bg_questscreen_tilemap_attr + 0008536E _bg_questscreen_tilemap_attr bg_questscreen_tilemap_attr + 000854D6 ___func_bg_questscreen_tilemap bg_questscreen_tilemap + 000854D6 _bg_questscreen_tilemap bg_questscreen_tilemap + 0008563E ___func_bg_slighhousef2_tilemap_ bg_slighhousef2_tilemap_attr + 0008563E _bg_slighhousef2_tilemap_attr bg_slighhousef2_tilemap_attr + 000857A6 ___func_bg_slighhousef2_tilemap bg_slighhousef2_tilemap + 000857A6 _bg_slighhousef2_tilemap bg_slighhousef2_tilemap + 0008590E ___func_bg_titlescreen_tilemap_a bg_titlescreen_tilemap_attr + 0008590E _bg_titlescreen_tilemap_attr bg_titlescreen_tilemap_attr + 00085A76 ___func_bg_titlescreen_tilemap bg_titlescreen_tilemap + 00085A76 _bg_titlescreen_tilemap bg_titlescreen_tilemap + 00085BDE ___func_emote_love emote_love + 00085BDE _emote_love emote_love + 00085C1E ___func_frame_image frame_image + 00085C1E _frame_image frame_image + 00085CAE ___func_palette_0 palette_0 + 00085CAE _palette_0 palette_0 + 00085CF1 ___func_palette_1 palette_1 + 00085CF1 _palette_1 palette_1 + 00085D34 ___func_palette_10 palette_10 + 00085D34 _palette_10 palette_10 + 00085D77 ___func_palette_11 palette_11 + 00085D77 _palette_11 palette_11 + 00085DBA ___func_palette_12 palette_12 + 00085DBA _palette_12 palette_12 + 00085DFD ___func_palette_13 palette_13 + 00085DFD _palette_13 palette_13 + 00085E40 ___func_palette_2 palette_2 + 00085E40 _palette_2 palette_2 + ASxxxx Linker V03.00/V05.40 + sdld, page 64. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_8 00084000 00003FFF = 16383. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00085E83 ___func_palette_3 palette_3 + 00085E83 _palette_3 palette_3 + 00085EC6 ___func_palette_4 palette_4 + 00085EC6 _palette_4 palette_4 + 00085F09 ___func_palette_5 palette_5 + 00085F09 _palette_5 palette_5 + 00085F4C ___func_palette_6 palette_6 + 00085F4C _palette_6 palette_6 + 00085F8F ___func_palette_7 palette_7 + 00085F8F _palette_7 palette_7 + 00085FD2 ___func_palette_8 palette_8 + 00085FD2 _palette_8 palette_8 + 00086015 ___func_palette_9 palette_9 + 00086015 _palette_9 palette_9 + 00086058 ___func_scene_1_triggers scene_1_triggers + 00086058 _scene_1_triggers scene_1_triggers + 000860A8 ___func_scene_10_collisions scene_10_collisions + 000860A8 _scene_10_collisions scene_10_collisions + 00086210 ___func_scene_11_collisions scene_11_collisions + 00086210 _scene_11_collisions scene_11_collisions + 00086378 ___func_scene_12_collisions scene_12_collisions + 00086378 _scene_12_collisions scene_12_collisions + 000864E0 ___func_scene_13_collisions scene_13_collisions + 000864E0 _scene_13_collisions scene_13_collisions + 00086648 ___func_scene_14_collisions scene_14_collisions + 00086648 _scene_14_collisions scene_14_collisions + 000867B0 ___func_scene_15_actors scene_15_actors + 000867B0 _scene_15_actors scene_15_actors + 000868B4 ___func_scene_15_collisions scene_15_collisions + 000868B4 _scene_15_collisions scene_15_collisions + 00086A1C _scene_15_init scene_15_init + 00086A1F GBVM$scene_15_init$4bfb9fac_2e52 scene_15_init + 00086A2B GBVM$scene_15_init$65d99d36_1d00 scene_15_init + 00086A3B GBVM$scene_15_init$b67ee083_0079 scene_15_init + 00086A3B GBVM_END$scene_15_init$4bfb9fac_ scene_15_init + 00086A47 GBVM$scene_15_init$601f1694_9455 scene_15_init + 00086A57 GBVM$scene_15_init$f9d5db74_72e3 scene_15_init + 00086A57 GBVM_END$scene_15_init$b67ee083_ scene_15_init + 00086A63 GBVM$scene_15_init$df05fefa_c528 scene_15_init + 00086A73 GBVM$scene_15_init$f7e57e29_d7f7 scene_15_init + 00086A73 GBVM_END$scene_15_init$f9d5db74_ scene_15_init + 00086A7F GBVM$scene_15_init$226800ab_9121 scene_15_init + 00086A8F GBVM$scene_15_init$2de5d8ba_b81f scene_15_init + 00086A8F GBVM_END$scene_15_init$f7e57e29_ scene_15_init + 00086A9B GBVM$scene_15_init$20af8478_1fea scene_15_init + 00086AAB GBVM$scene_15_init$2a9f033b_75a6 scene_15_init + 00086AAB GBVM_END$scene_15_init$2de5d8ba_ scene_15_init + 00086AB3 GBVM$scene_15_init$autofade$cdd9 scene_15_init + 00086ABE GBVM$scene_15_init$8b6f5629_ff7c scene_15_init + 00086AC0 GBVM$scene_15_init$52f12785_e595 scene_15_init + 00086AD5 ___func_scene_16_collisions scene_16_collisions + ASxxxx Linker V03.00/V05.40 + sdld, page 65. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_8 00084000 00003FFF = 16383. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00086AD5 _scene_16_collisions scene_16_collisions + 00086C3D ___func_scene_3_collisions scene_3_collisions + 00086C3D _scene_3_collisions scene_3_collisions + 00086DA5 ___func_scene_5_collisions scene_5_collisions + 00086DA5 _scene_5_collisions scene_5_collisions + 00086F0D ___func_scene_7_collisions scene_7_collisions + 00086F0D _scene_7_collisions scene_7_collisions + 00087075 ___func_scene_8_actors scene_8_actors + 00087075 _scene_8_actors scene_8_actors + 000870DD ___func_scene_9_collisions scene_9_collisions + 000870DD _scene_9_collisions scene_9_collisions + 00087245 ___func_sprite_actor_animated_ba sprite_actor_animated_bank2_ + 00087245 _sprite_actor_animated_bank2_til sprite_actor_animated_bank2_ + 000872E7 ___func_sprite_actor_animated_ti sprite_actor_animated_tilese + 000872E7 _sprite_actor_animated_tileset sprite_actor_animated_tilese + 00087389 ___func_sprite_actor_animated sprite_actor_animated + 00087389 _sprite_actor_animated_metasprit sprite_actor_animated + 00087395 _sprite_actor_animated_metasprit sprite_actor_animated + 000873A1 _sprite_actor_animated_metasprit sprite_actor_animated + 000873AD _sprite_actor_animated_metasprit sprite_actor_animated + 000873B9 _sprite_actor_animated_metasprit sprite_actor_animated + 000873C5 _sprite_actor_animated_metasprit sprite_actor_animated + 000873D1 _sprite_actor_animated_metasprit sprite_actor_animated + 000873DD _sprite_actor_animated_metasprit sprite_actor_animated + 000873E9 _sprite_actor_animated_metasprit sprite_actor_animated + 00087401 _sprite_actor_animated_animation sprite_actor_animated + 00087411 _sprite_actor_animated_animation sprite_actor_animated + 00087413 _sprite_actor_animated sprite_actor_animated + 00087426 ___func_sprite_charanimatedsprit sprite_charanimatedsprite_ba + 00087426 _sprite_charanimatedsprite_bank2 sprite_charanimatedsprite_ba + 000874E8 ___func_sprite_charanimatedsprit sprite_charanimatedsprite_ti + 000874E8 _sprite_charanimatedsprite_tiles sprite_charanimatedsprite_ti + 000875AA ___func_sprite_charanimatedsprit sprite_charanimatedsprite + 000875AA _sprite_charanimatedsprite_metas sprite_charanimatedsprite + 000875B6 _sprite_charanimatedsprite_metas sprite_charanimatedsprite + 000875C2 _sprite_charanimatedsprite_metas sprite_charanimatedsprite + 000875CE _sprite_charanimatedsprite_metas sprite_charanimatedsprite + 000875DA _sprite_charanimatedsprite_metas sprite_charanimatedsprite + 000875E6 _sprite_charanimatedsprite_metas sprite_charanimatedsprite + 000875F2 _sprite_charanimatedsprite_metas sprite_charanimatedsprite + 000875FE _sprite_charanimatedsprite_metas sprite_charanimatedsprite + 0008760A _sprite_charanimatedsprite_metas sprite_charanimatedsprite + 00087622 _sprite_charanimatedsprite_anima sprite_charanimatedsprite + 00087632 _sprite_charanimatedsprite_anima sprite_charanimatedsprite + 00087634 _sprite_charanimatedsprite sprite_charanimatedsprite + 00087647 ___func_sprite_npc001_bank2_tile sprite_npc001_bank2_tileset + 00087647 _sprite_npc001_bank2_tileset sprite_npc001_bank2_tileset + 000876A9 ___func_sprite_npc001_tileset sprite_npc001_tileset + 000876A9 _sprite_npc001_tileset sprite_npc001_tileset + 0008770B ___func_sprite_npc001 sprite_npc001 + 0008770B _sprite_npc001_metasprite_0 sprite_npc001 + ASxxxx Linker V03.00/V05.40 + sdld, page 66. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_8 00084000 00003FFF = 16383. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00087717 _sprite_npc001_metasprite_1 sprite_npc001 + 00087723 _sprite_npc001_metasprite_2 sprite_npc001 + 0008772F _sprite_npc001_metasprite_3 sprite_npc001 + 0008773B _sprite_npc001_metasprites sprite_npc001 + 00087743 _sprite_npc001_animations sprite_npc001 + 00087753 _sprite_npc001_animations_lookup sprite_npc001 + 00087755 _sprite_npc001 sprite_npc001 + 00087768 ___func_sprite_npc002_bank2_tile sprite_npc002_bank2_tileset + 00087768 _sprite_npc002_bank2_tileset sprite_npc002_bank2_tileset + 000877CA ___func_sprite_npc002_tileset sprite_npc002_tileset + 000877CA _sprite_npc002_tileset sprite_npc002_tileset + 0008782C ___func_sprite_npc002 sprite_npc002 + 0008782C _sprite_npc002_metasprite_0 sprite_npc002 + 00087838 _sprite_npc002_metasprite_1 sprite_npc002 + 00087844 _sprite_npc002_metasprite_2 sprite_npc002 + 00087850 _sprite_npc002_metasprite_3 sprite_npc002 + 0008785C _sprite_npc002_metasprites sprite_npc002 + 00087864 _sprite_npc002_animations sprite_npc002 + 00087874 _sprite_npc002_animations_lookup sprite_npc002 + 00087876 _sprite_npc002 sprite_npc002 + 00087889 ___func_sprite_npc005_bank2_tile sprite_npc005_bank2_tileset + 00087889 _sprite_npc005_bank2_tileset sprite_npc005_bank2_tileset + 0008794B ___func_sprite_npc005_tileset sprite_npc005_tileset + 0008794B _sprite_npc005_tileset sprite_npc005_tileset + 00087A0D ___func_sprite_npc005 sprite_npc005 + 00087A0D _sprite_npc005_metasprite_0 sprite_npc005 + 00087A19 _sprite_npc005_metasprite_1 sprite_npc005 + 00087A25 _sprite_npc005_metasprite_2 sprite_npc005 + 00087A31 _sprite_npc005_metasprite_3 sprite_npc005 + 00087A3D _sprite_npc005_metasprite_4 sprite_npc005 + 00087A49 _sprite_npc005_metasprite_5 sprite_npc005 + 00087A55 _sprite_npc005_metasprite_6 sprite_npc005 + 00087A61 _sprite_npc005_metasprite_7 sprite_npc005 + 00087A6D _sprite_npc005_metasprites sprite_npc005 + 00087A85 _sprite_npc005_animations sprite_npc005 + 00087A95 _sprite_npc005_animations_lookup sprite_npc005 + 00087A97 _sprite_npc005 sprite_npc005 + 00087AAA ___func_sprite_player_bank2_tile sprite_player_bank2_tileset + 00087AAA _sprite_player_bank2_tileset sprite_player_bank2_tileset + 00087B6C ___func_sprite_player_tileset sprite_player_tileset + 00087B6C _sprite_player_tileset sprite_player_tileset + 00087C2E ___func_sprite_player sprite_player + 00087C2E _sprite_player_metasprite_0 sprite_player + 00087C3A _sprite_player_metasprite_1 sprite_player + 00087C46 _sprite_player_metasprite_2 sprite_player + 00087C52 _sprite_player_metasprite_3 sprite_player + 00087C5E _sprite_player_metasprite_4 sprite_player + 00087C6A _sprite_player_metasprite_5 sprite_player + 00087C76 _sprite_player_metasprite_6 sprite_player + 00087C82 _sprite_player_metasprite_7 sprite_player + 00087C8E _sprite_player_metasprites sprite_player + ASxxxx Linker V03.00/V05.40 + sdld, page 67. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_8 00084000 00003FFF = 16383. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00087CA6 _sprite_player_animations sprite_player + 00087CB6 _sprite_player_animations_lookup sprite_player + 00087CB8 _sprite_player sprite_player + 00087CCB ___func_tileset_default_frame tileset_default_frame + 00087CCB _tileset_default_frame tileset_default_frame + 00087D5D _trigger_16_interact trigger_16_interact + 00087D60 GBVM$trigger_16_interact$541b068 trigger_16_interact + 00087D69 GBVM$trigger_16_interact$ff7f5f3 trigger_16_interact + 00087DEE GBVM$trigger_16_interact$965bcb6 trigger_16_interact + 00087DF3 GBVM$trigger_16_interact$03be24c trigger_16_interact + 00087E25 GBVM_END$trigger_16_interact$541 trigger_16_interact + 00087E26 _trigger_23_interact trigger_23_interact + 00087E27 GBVM$trigger_23_interact$ceeeb0a trigger_23_interact + 00087E30 GBVM$trigger_23_interact$b3fed1c trigger_23_interact + 00087E98 GBVM$trigger_23_interact$21fc8d9 trigger_23_interact + 00087E9D GBVM$trigger_23_interact$ef932da trigger_23_interact + 00087EA5 GBVM_END$trigger_23_interact$cee trigger_23_interact + 00087EA6 _trigger_9_interact trigger_9_interact + 00087EA7 GBVM$trigger_9_interact$2db95ed1 trigger_9_interact + 00087EB0 GBVM$trigger_9_interact$580d2cb3 trigger_9_interact + 00087EB9 GBVM$trigger_9_interact$934ed60c trigger_9_interact + 00087F12 GBVM$trigger_9_interact$36ddffc8 trigger_9_interact + 00087F91 GBVM$trigger_9_interact$e3cc04fe trigger_9_interact + 00087F96 GBVM$trigger_9_interact$03f750d5 trigger_9_interact + 00087F9B GBVM$trigger_9_interact$1d030731 trigger_9_interact + 00087FA0 GBVM$trigger_9_interact$f4d06c0b trigger_9_interact + 00087FA5 GBVM_END$trigger_9_interact$580d trigger_9_interact + 00087FA8 GBVM$trigger_9_interact$f6c48e29 trigger_9_interact + 00087FFE GBVM_END$trigger_9_interact$2db9 trigger_9_interact + + ASxxxx Linker V03.00/V05.40 + sdld, page 68. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER_SIO0 00000000 00000004 = 4. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 69. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER_TIMER0 00000000 00000004 = 4. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 70. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_1 00014000 00004000 = 16384. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00014000 _ui_swap_tiles + 0001404A _ui_print_make_mask_lr + 00014066 _ui_print_make_mask_rl + 00014082 _ui_init ui + 00014153 _ui_load_tiles ui + 000141AA _ui_draw_frame ui + 00014244 _ui_print_reset ui + 00014295 _ui_set_start_tile ui + 000142C1 _ui_print_render ui + 00014557 _ui_draw_text_buffer_char ui + 00014A41 _ui_run_menu ui + 00014C18 _ui_run_modal ui + 00014CD2 ___func_VM_SGB vm_sgb + 00014CD2 ___func_bg_cave_tileset bg_cave_tileset + 00014CD2 _bg_cave_tileset bg_cave_tileset + 00014E54 ___func_bg_lab1_tileset bg_lab1_tileset + 00014E54 _bg_lab1_tileset bg_lab1_tileset + 000152E6 ___func_bg_logoscreen_tileset bg_logoscreen_tileset + 000152E6 _bg_logoscreen_tileset bg_logoscreen_tileset + 00016968 ___func_bg_titlescreen_tileset bg_titlescreen_tileset + 00016968 _bg_titlescreen_tileset bg_titlescreen_tileset + 00017FEA _scene_1_init scene_1_init + 00017FEB GBVM$scene_1_init$38d0cb6d_5eaf_ scene_1_init + 00017FEF GBVM$scene_1_init$32511cd3_b92a_ scene_1_init + 00017FF3 GBVM$scene_1_init$autofade$aae81 scene_1_init + 00017FFF _script_input_5 script_input_5 + + ASxxxx Linker V03.00/V05.40 + sdld, page 71. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_4 00044000 00004000 = 16384. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00044000 ___func_VM_ACTOR vm_actor + 00044000 _vm_actor_move_to vm_actor + 00044A46 _vm_actor_move_cancel vm_actor + 00044A7C _vm_actor_activate vm_actor + 00044ACD _vm_actor_deactivate vm_actor + 00044B1E _vm_actor_begin_update vm_actor + 00044BA5 _vm_actor_terminate_update vm_actor + 00044BEC _vm_actor_set_dir vm_actor + 00044C35 _vm_actor_set_anim vm_actor + 00044CC3 _vm_actor_set_pos vm_actor + 00044D3D _vm_actor_get_pos vm_actor + 00044DAC _vm_actor_get_dir vm_actor + 00044E26 _vm_actor_get_angle vm_actor + 00044EA7 _vm_actor_emote vm_actor + 00044F6B _vm_actor_set_bounds vm_actor + 00044FC9 _vm_actor_set_spritesheet vm_actor + 00045093 _vm_actor_replace_tile vm_actor + 000450FE _vm_actor_set_anim_tick vm_actor + 0004513C _vm_actor_set_move_speed vm_actor + 0004517A _vm_actor_set_anim_frame vm_actor + 000451BE _vm_actor_get_anim_frame vm_actor + 00045208 _vm_actor_set_anim_set vm_actor + 00045290 _vm_actor_set_spritesheet_by_ref vm_actor + 0004539D _vm_actor_set_flags vm_actor + 0004544B ___func_VM_GBPRINTER vm_gbprinter + 0004544B _vm_print_detect vm_gbprinter + 0004549A _vm_print_overlay vm_gbprinter + 000454EF ___func_VM_MAIN vm + 000454EF _vm_call vm + 00045531 _vm_ret vm + 00045591 _vm_call_far vm + 00045610 _vm_ret_far vm + 00045688 _vm_push vm + 000456B3 _vm_pop vm + 000456EE _vm_loop vm + 00045779 _vm_jump vm + 00045785 _wait_frames vm + 000457F2 _vm_invoke vm + 0004591F _vm_join vm + 00045981 _vm_terminate vm + 000459AE _vm_if vm + 00045AF3 _vm_if_const vm + 00045C08 _vm_push_value vm + 00045C5A _vm_push_value_ind vm + 00045CCF _vm_push_reference vm + 00045D26 _vm_reserve vm + 00045D54 _vm_set vm + 00045DB5 _vm_set_const vm + 00045DE1 _vm_get_tlocal vm + 00045E6E _vm_test_terminate vm + ASxxxx Linker V03.00/V05.40 + sdld, page 72. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_4 00044000 00004000 = 16384. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00045E79 _vm_idle vm + 00045E85 _vm_init_rng vm + 00045EB1 _vm_rand vm + 00045EF3 _vm_lock vm + 00045F02 _vm_unlock vm + 00045F15 _vm_raise vm + 00045F57 _vm_set_indirect vm + 00045FD2 _vm_get_indirect vm + 0004604D _vm_poll_loaded vm + 0004607D _vm_memset vm + 000460B7 _vm_memcpy vm + 00046134 _script_runner_init vm + 000461EB _script_execute vm + 00046351 _script_terminate vm + 000463B6 _script_detach_hthread vm + 000463F2 ___func_bg_outside_tileset bg_outside_tileset + 000463F2 _bg_outside_tileset bg_outside_tileset + 00047FE3 _song_rulz_undergroundcave_Data song_rulz_undergroundcave_Da + 00047FF8 ___func_scene_11_triggers scene_11_triggers + 00047FF8 _scene_11_triggers scene_11_triggers + + ASxxxx Linker V03.00/V05.40 + sdld, page 73. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_CODE_2 00024000 00003FFF = 16383. bytes (REL,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + 00024000 _actor_7_interact actor_7_interact + 00024003 GBVM$actor_7_interact$8ecf4253_4 actor_7_interact + 00024051 GBVM$actor_7_interact$9a2c8224_4 actor_7_interact + 0002405B ___func_bg_overworld_test_1_tile bg_overworld_test_1_tilemap_ + 0002405B _bg_overworld_test_1_tilemap_att bg_overworld_test_1_tilemap_ + 000256DB ___func_bg_overworld_test_1_tile bg_overworld_test_1_tilemap + 000256DB _bg_overworld_test_1_tilemap bg_overworld_test_1_tilemap + 00027FEA _song_rulz_lightmood_Data song_rulz_lightmood_Data + + ASxxxx Linker V03.00/V05.40 + sdld, page 74. +Hexadecimal [32-Bits] + +Area Addr Size Decimal Bytes (Attributes) +-------------------------------- ---- ---- ------- ----- ------------ +_HEADER_LCD0 00000000 00000003 = 3. bytes (ABS,CON) + + Value Global Global Defined In Module + ----- -------------------------------- ------------------------ + ASxxxx Linker V03.00/V05.40 + sdld, page 75. + +Files Linked [ module(s) ] + +/tmp/_gbstools/gbdk/lib/gb/crt0.o [ Runtime ] +/tmp/_gbsbuild/obj/absolute.rel [ absolute ] +/tmp/_gbsbuild/obj/actor.rel [ actor ] +/tmp/_gbsbuild/obj/bankdata.rel [ bankdata ] +/tmp/_gbsbuild/obj/bootstrap.rel [ ] +/tmp/_gbsbuild/obj/camera.rel [ camera ] +/tmp/_gbsbuild/obj/core.rel [ core ] +/tmp/_gbsbuild/obj/crash_handler.rel [ ] +/tmp/_gbsbuild/obj/data_manager.rel [ data_manager ] +/tmp/_gbsbuild/obj/events.rel [ events ] +/tmp/_gbsbuild/obj/fade_manager.rel [ fade_manager ] +/tmp/_gbsbuild/obj/flasher_s.rel [ ] +/tmp/_gbsbuild/obj/flasher.rel [ flasher ] +/tmp/_gbsbuild/obj/game_time.rel [ game_time ] +/tmp/_gbsbuild/obj/gbprinter.rel [ gbprinter ] +/tmp/_gbsbuild/obj/input.rel [ input ] +/tmp/_gbsbuild/obj/interrupt_sio.rel [ ] +/tmp/_gbsbuild/obj/interrupt_timer.rel [ ] +/tmp/_gbsbuild/obj/interrupts.rel [ interrupts ] +/tmp/_gbsbuild/obj/load_save.rel [ load_save ] +/tmp/_gbsbuild/obj/math_atan2.rel [ math_atan2 ] +/tmp/_gbsbuild/obj/math.rel [ math ] +/tmp/_gbsbuild/obj/music_manager.rel [ music_manager ] +/tmp/_gbsbuild/obj/palette.rel [ palette ] +/tmp/_gbsbuild/obj/parallax.rel [ parallax ] +/tmp/_gbsbuild/obj/projectiles.rel [ projectiles ] +/tmp/_gbsbuild/obj/scroll_a.rel [ ] +/tmp/_gbsbuild/obj/scroll.rel [ scroll ] +/tmp/_gbsbuild/obj/set_tile_submap.rel [ ] +/tmp/_gbsbuild/obj/sfx_player.rel [ sfx_player ] +/tmp/_gbsbuild/obj/sgb_border.rel [ sgb_border ] +/tmp/_gbsbuild/obj/sio.rel [ sio ] +/tmp/_gbsbuild/obj/states_caller.rel [ ] +/tmp/_gbsbuild/obj/system.rel [ system ] +/tmp/_gbsbuild/obj/trigger.rel [ trigger ] +/tmp/_gbsbuild/obj/ui_a.rel [ ] +/tmp/_gbsbuild/obj/ui.rel [ ui ] +/tmp/_gbsbuild/obj/vm_actor.rel [ vm_actor ] +/tmp/_gbsbuild/obj/vm_camera.rel [ vm_camera ] +/tmp/_gbsbuild/obj/vm_gameboy.rel [ vm_gameboy ] +/tmp/_gbsbuild/obj/vm_gbprinter.rel [ vm_gbprinter ] +/tmp/_gbsbuild/obj/vm_instructions.rel [ vm_instructions ] +/tmp/_gbsbuild/obj/vm_load_save.rel [ vm_load_save ] +/tmp/_gbsbuild/obj/vm_math.rel [ vm_math ] +/tmp/_gbsbuild/obj/vm_music.rel [ vm_music ] +/tmp/_gbsbuild/obj/vm_palette.rel [ vm_palette ] +/tmp/_gbsbuild/obj/vm_projectiles.rel [ vm_projectiles ] +/tmp/_gbsbuild/obj/vm_rtc.rel [ vm_rtc ] +/tmp/_gbsbuild/obj/vm_scene.rel [ vm_scene ] +/tmp/_gbsbuild/obj/vm_sgb.rel [ vm_sgb ] +/tmp/_gbsbuild/obj/vm_sio.rel [ vm_sio ] +/tmp/_gbsbuild/obj/vm_ui_a.rel [ vm_ui_a ] +/tmp/_gbsbuild/obj/vm_ui.rel [ vm_ui ] +/tmp/_gbsbuild/obj/vm.rel [ vm ] +/tmp/_gbsbuild/obj/actor_0_interact.rel [ actor_0_interact ] +/tmp/_gbsbuild/obj/actor_1_interact.rel [ actor_1_interact ] +/tmp/_gbsbuild/obj/actor_10_interact.rel [ actor_10_interact ] +/tmp/_gbsbuild/obj/actor_11_interact.rel [ actor_11_interact ] +/tmp/_gbsbuild/obj/actor_12_interact.rel [ actor_12_interact ] +/tmp/_gbsbuild/obj/actor_13_interact.rel [ actor_13_interact ] +/tmp/_gbsbuild/obj/actor_14_interact.rel [ actor_14_interact ] +/tmp/_gbsbuild/obj/actor_15_interact.rel [ actor_15_interact ] +/tmp/_gbsbuild/obj/actor_2_interact.rel [ actor_2_interact ] +/tmp/_gbsbuild/obj/actor_3_interact.rel [ actor_3_interact ] +/tmp/_gbsbuild/obj/actor_4_interact.rel [ actor_4_interact ] +/tmp/_gbsbuild/obj/actor_5_interact.rel [ actor_5_interact ] +/tmp/_gbsbuild/obj/actor_6_interact.rel [ actor_6_interact ] +/tmp/_gbsbuild/obj/actor_7_interact.rel [ actor_7_interact ] +/tmp/_gbsbuild/obj/actor_8_interact.rel [ actor_8_interact ] +/tmp/_gbsbuild/obj/actor_9_interact.rel [ actor_9_interact ] +/tmp/_gbsbuild/obj/bg_cave_tilemap_attr.rel + [ bg_cave_tilemap_attr ] +/tmp/_gbsbuild/obj/bg_cave_tilemap.rel [ bg_cave_tilemap ] +/tmp/_gbsbuild/obj/bg_cave_tileset.rel [ bg_cave_tileset ] +/tmp/_gbsbuild/obj/bg_cave.rel [ bg_cave ] +/tmp/_gbsbuild/obj/bg_endscreen_cgb_tileset.rel + [ bg_endscreen_cgb_tileset ] +/tmp/_gbsbuild/obj/bg_endscreen_tilemap_attr.rel + [ bg_endscreen_tilemap_attr ] +/tmp/_gbsbuild/obj/bg_endscreen_tilemap.rel + [ bg_endscreen_tilemap ] +/tmp/_gbsbuild/obj/bg_endscreen_tileset.rel + [ bg_endscreen_tileset ] +/tmp/_gbsbuild/obj/bg_endscreen.rel [ bg_endscreen ] +/tmp/_gbsbuild/obj/bg_fate6housef2_tilemap_attr.rel + [ bg_fate6housef2_tilemap_attr ] +/tmp/_gbsbuild/obj/bg_fate6housef2_tilemap.rel + [ bg_fate6housef2_tilemap ] +/tmp/_gbsbuild/obj/bg_fate6housef2_tileset.rel + [ bg_fate6housef2_tileset ] +/tmp/_gbsbuild/obj/bg_fate6housef2.rel [ bg_fate6housef2 ] +/tmp/_gbsbuild/obj/bg_house_tilemap_attr.rel + [ bg_house_tilemap_attr ] +/tmp/_gbsbuild/obj/bg_house_tilemap.rel [ bg_house_tilemap ] +/tmp/_gbsbuild/obj/bg_house_tileset.rel [ bg_house_tileset ] +/tmp/_gbsbuild/obj/bg_house_wide_tilemap_attr.rel + [ bg_house_wide_tilemap_attr ] +/tmp/_gbsbuild/obj/bg_house_wide_tilemap.rel + [ bg_house_wide_tilemap ] +/tmp/_gbsbuild/obj/bg_house_wide_tileset.rel + [ bg_house_wide_tileset ] +/tmp/_gbsbuild/obj/bg_house_wide.rel [ bg_house_wide ] +/tmp/_gbsbuild/obj/bg_house.rel [ bg_house ] +/tmp/_gbsbuild/obj/bg_housef2_tilemap_attr.rel + [ bg_housef2_tilemap_attr ] +/tmp/_gbsbuild/obj/bg_housef2_tilemap.rel + [ bg_housef2_tilemap ] +/tmp/_gbsbuild/obj/bg_housef2_tileset.rel + [ bg_housef2_tileset ] +/tmp/_gbsbuild/obj/bg_housef2.rel [ bg_housef2 ] +/tmp/_gbsbuild/obj/bg_lab1_tilemap_attr.rel + [ bg_lab1_tilemap_attr ] +/tmp/_gbsbuild/obj/bg_lab1_tilemap.rel [ bg_lab1_tilemap ] +/tmp/_gbsbuild/obj/bg_lab1_tileset.rel [ bg_lab1_tileset ] +/tmp/_gbsbuild/obj/bg_lab1.rel [ bg_lab1 ] +/tmp/_gbsbuild/obj/bg_logoscreen_tilemap_attr.rel + [ bg_logoscreen_tilemap_attr ] +/tmp/_gbsbuild/obj/bg_logoscreen_tilemap.rel + [ bg_logoscreen_tilemap ] +/tmp/_gbsbuild/obj/bg_logoscreen_tileset.rel + [ bg_logoscreen_tileset ] +/tmp/_gbsbuild/obj/bg_logoscreen.rel [ bg_logoscreen ] +/tmp/_gbsbuild/obj/bg_outside_cgb_tileset.rel + [ bg_outside_cgb_tileset ] +/tmp/_gbsbuild/obj/bg_outside_tilemap_attr.rel + [ bg_outside_tilemap_attr ] +/tmp/_gbsbuild/obj/bg_outside_tilemap.rel + [ bg_outside_tilemap ] +/tmp/_gbsbuild/obj/bg_outside_tileset.rel + [ bg_outside_tileset ] +/tmp/_gbsbuild/obj/bg_outside.rel [ bg_outside ] +/tmp/_gbsbuild/obj/bg_overworld_test_1_tilemap_attr.rel + [ bg_overworld_test_1_tilemap_attr ] +/tmp/_gbsbuild/obj/bg_overworld_test_1_tilemap.rel + [ bg_overworld_test_1_tilemap ] +/tmp/_gbsbuild/obj/bg_overworld_test_1_tileset.rel + [ bg_overworld_test_1_tileset ] +/tmp/_gbsbuild/obj/bg_overworld_test_1.rel + [ bg_overworld_test_1 ] +/tmp/_gbsbuild/obj/bg_questscreen_tilemap_attr.rel + [ bg_questscreen_tilemap_attr ] +/tmp/_gbsbuild/obj/bg_questscreen_tilemap.rel + [ bg_questscreen_tilemap ] +/tmp/_gbsbuild/obj/bg_questscreen_tileset.rel + [ bg_questscreen_tileset ] +/tmp/_gbsbuild/obj/bg_questscreen.rel [ bg_questscreen ] +/tmp/_gbsbuild/obj/bg_slighhousef2_tilemap_attr.rel + [ bg_slighhousef2_tilemap_attr ] +/tmp/_gbsbuild/obj/bg_slighhousef2_tilemap.rel + [ bg_slighhousef2_tilemap ] +/tmp/_gbsbuild/obj/bg_slighhousef2_tileset.rel + [ bg_slighhousef2_tileset ] +/tmp/_gbsbuild/obj/bg_slighhousef2.rel [ bg_slighhousef2 ] +/tmp/_gbsbuild/obj/bg_titlescreen_tilemap_attr.rel + [ bg_titlescreen_tilemap_attr ] +/tmp/_gbsbuild/obj/bg_titlescreen_tilemap.rel + [ bg_titlescreen_tilemap ] +/tmp/_gbsbuild/obj/bg_titlescreen_tileset.rel + [ bg_titlescreen_tileset ] +/tmp/_gbsbuild/obj/bg_titlescreen.rel [ bg_titlescreen ] +/tmp/_gbsbuild/obj/cursor_image.rel [ cursor_image ] +/tmp/_gbsbuild/obj/emote_love.rel [ emote_love ] +/tmp/_gbsbuild/obj/font_gbs_mono.rel [ font_gbs_mono ] +/tmp/_gbsbuild/obj/frame_image.rel [ frame_image ] +/tmp/_gbsbuild/obj/game_signature.rel [ game_signature ] +/tmp/_gbsbuild/obj/song_rulz_lightmood_Data.rel + [ song_rulz_lightmood_Data ] +/tmp/_gbsbuild/obj/song_rulz_outside_0_Data.rel + [ song_rulz_outside_0_Data ] +/tmp/_gbsbuild/obj/song_rulz_spaceemergency_0_Data.rel + [ song_rulz_spaceemergency_0_Data ] +/tmp/_gbsbuild/obj/song_rulz_undergroundcave_Data.rel + [ song_rulz_undergroundcave_Data ] +/tmp/_gbsbuild/obj/palette_0.rel [ palette_0 ] +/tmp/_gbsbuild/obj/palette_1.rel [ palette_1 ] +/tmp/_gbsbuild/obj/palette_10.rel [ palette_10 ] +/tmp/_gbsbuild/obj/palette_11.rel [ palette_11 ] +/tmp/_gbsbuild/obj/palette_12.rel [ palette_12 ] +/tmp/_gbsbuild/obj/palette_13.rel [ palette_13 ] +/tmp/_gbsbuild/obj/palette_2.rel [ palette_2 ] +/tmp/_gbsbuild/obj/palette_3.rel [ palette_3 ] +/tmp/_gbsbuild/obj/palette_4.rel [ palette_4 ] +/tmp/_gbsbuild/obj/palette_5.rel [ palette_5 ] +/tmp/_gbsbuild/obj/palette_6.rel [ palette_6 ] +/tmp/_gbsbuild/obj/palette_7.rel [ palette_7 ] +/tmp/_gbsbuild/obj/palette_8.rel [ palette_8 ] +/tmp/_gbsbuild/obj/palette_9.rel [ palette_9 ] +/tmp/_gbsbuild/obj/scene_1_actors.rel [ scene_1_actors ] +/tmp/_gbsbuild/obj/scene_1_collisions.rel + [ scene_1_collisions ] +/tmp/_gbsbuild/obj/scene_1_init.rel [ scene_1_init ] +/tmp/_gbsbuild/obj/scene_1_sprites.rel [ scene_1_sprites ] +/tmp/_gbsbuild/obj/scene_1_triggers.rel [ scene_1_triggers ] +/tmp/_gbsbuild/obj/scene_1.rel [ scene_1 ] +/tmp/_gbsbuild/obj/scene_10_collisions.rel + [ scene_10_collisions ] +/tmp/_gbsbuild/obj/scene_10_init.rel [ scene_10_init ] +/tmp/_gbsbuild/obj/scene_10.rel [ scene_10 ] +/tmp/_gbsbuild/obj/scene_11_collisions.rel + [ scene_11_collisions ] +/tmp/_gbsbuild/obj/scene_11_init.rel [ scene_11_init ] +/tmp/_gbsbuild/obj/scene_11_triggers.rel [ scene_11_triggers ] +/tmp/_gbsbuild/obj/scene_11.rel [ scene_11 ] +/tmp/_gbsbuild/obj/scene_12_collisions.rel + [ scene_12_collisions ] +/tmp/_gbsbuild/obj/scene_12_init.rel [ scene_12_init ] +/tmp/_gbsbuild/obj/scene_12.rel [ scene_12 ] +/tmp/_gbsbuild/obj/scene_13_collisions.rel + [ scene_13_collisions ] +/tmp/_gbsbuild/obj/scene_13_init.rel [ scene_13_init ] +/tmp/_gbsbuild/obj/scene_13.rel [ scene_13 ] +/tmp/_gbsbuild/obj/scene_14_actors.rel [ scene_14_actors ] +/tmp/_gbsbuild/obj/scene_14_collisions.rel + [ scene_14_collisions ] +/tmp/_gbsbuild/obj/scene_14_init.rel [ scene_14_init ] +/tmp/_gbsbuild/obj/scene_14_sprites.rel [ scene_14_sprites ] +/tmp/_gbsbuild/obj/scene_14_triggers.rel [ scene_14_triggers ] +/tmp/_gbsbuild/obj/scene_14.rel [ scene_14 ] +/tmp/_gbsbuild/obj/scene_15_actors.rel [ scene_15_actors ] +/tmp/_gbsbuild/obj/scene_15_collisions.rel + [ scene_15_collisions ] +/tmp/_gbsbuild/obj/scene_15_init.rel [ scene_15_init ] +/tmp/_gbsbuild/obj/scene_15_sprites.rel [ scene_15_sprites ] +/tmp/_gbsbuild/obj/scene_15.rel [ scene_15 ] +/tmp/_gbsbuild/obj/scene_16_collisions.rel + [ scene_16_collisions ] +/tmp/_gbsbuild/obj/scene_16_init.rel [ scene_16_init ] +/tmp/_gbsbuild/obj/scene_16.rel [ scene_16 ] +/tmp/_gbsbuild/obj/scene_17_actors.rel [ scene_17_actors ] +/tmp/_gbsbuild/obj/scene_17_collisions.rel + [ scene_17_collisions ] +/tmp/_gbsbuild/obj/scene_17_init.rel [ scene_17_init ] +/tmp/_gbsbuild/obj/scene_17_sprites.rel [ scene_17_sprites ] +/tmp/_gbsbuild/obj/scene_17_triggers.rel [ scene_17_triggers ] +/tmp/_gbsbuild/obj/scene_17.rel [ scene_17 ] +/tmp/_gbsbuild/obj/scene_2_actors.rel [ scene_2_actors ] +/tmp/_gbsbuild/obj/scene_2_collisions.rel + [ scene_2_collisions ] +/tmp/_gbsbuild/obj/scene_2_init.rel [ scene_2_init ] +/tmp/_gbsbuild/obj/scene_2_sprites.rel [ scene_2_sprites ] +/tmp/_gbsbuild/obj/scene_2_triggers.rel [ scene_2_triggers ] +/tmp/_gbsbuild/obj/scene_2.rel [ scene_2 ] +/tmp/_gbsbuild/obj/scene_3_actors.rel [ scene_3_actors ] +/tmp/_gbsbuild/obj/scene_3_collisions.rel + [ scene_3_collisions ] +/tmp/_gbsbuild/obj/scene_3_init.rel [ scene_3_init ] +/tmp/_gbsbuild/obj/scene_3_sprites.rel [ scene_3_sprites ] +/tmp/_gbsbuild/obj/scene_3_triggers.rel [ scene_3_triggers ] +/tmp/_gbsbuild/obj/scene_3.rel [ scene_3 ] +/tmp/_gbsbuild/obj/scene_4_collisions.rel + [ scene_4_collisions ] +/tmp/_gbsbuild/obj/scene_4_init.rel [ scene_4_init ] +/tmp/_gbsbuild/obj/scene_4_triggers.rel [ scene_4_triggers ] +/tmp/_gbsbuild/obj/scene_4.rel [ scene_4 ] +/tmp/_gbsbuild/obj/scene_5_actors.rel [ scene_5_actors ] +/tmp/_gbsbuild/obj/scene_5_collisions.rel + [ scene_5_collisions ] +/tmp/_gbsbuild/obj/scene_5_init.rel [ scene_5_init ] +/tmp/_gbsbuild/obj/scene_5_sprites.rel [ scene_5_sprites ] +/tmp/_gbsbuild/obj/scene_5_triggers.rel [ scene_5_triggers ] +/tmp/_gbsbuild/obj/scene_5.rel [ scene_5 ] +/tmp/_gbsbuild/obj/scene_6_actors.rel [ scene_6_actors ] +/tmp/_gbsbuild/obj/scene_6_collisions.rel + [ scene_6_collisions ] +/tmp/_gbsbuild/obj/scene_6_init.rel [ scene_6_init ] +/tmp/_gbsbuild/obj/scene_6_sprites.rel [ scene_6_sprites ] +/tmp/_gbsbuild/obj/scene_6_triggers.rel [ scene_6_triggers ] +/tmp/_gbsbuild/obj/scene_6.rel [ scene_6 ] +/tmp/_gbsbuild/obj/scene_7_actors.rel [ scene_7_actors ] +/tmp/_gbsbuild/obj/scene_7_collisions.rel + [ scene_7_collisions ] +/tmp/_gbsbuild/obj/scene_7_init.rel [ scene_7_init ] +/tmp/_gbsbuild/obj/scene_7_sprites.rel [ scene_7_sprites ] +/tmp/_gbsbuild/obj/scene_7_triggers.rel [ scene_7_triggers ] +/tmp/_gbsbuild/obj/scene_7.rel [ scene_7 ] +/tmp/_gbsbuild/obj/scene_8_actors.rel [ scene_8_actors ] +/tmp/_gbsbuild/obj/scene_8_collisions.rel + [ scene_8_collisions ] +/tmp/_gbsbuild/obj/scene_8_init.rel [ scene_8_init ] +/tmp/_gbsbuild/obj/scene_8_sprites.rel [ scene_8_sprites ] +/tmp/_gbsbuild/obj/scene_8_triggers.rel [ scene_8_triggers ] +/tmp/_gbsbuild/obj/scene_8.rel [ scene_8 ] +/tmp/_gbsbuild/obj/scene_9_collisions.rel + [ scene_9_collisions ] +/tmp/_gbsbuild/obj/scene_9_init.rel [ scene_9_init ] +/tmp/_gbsbuild/obj/scene_9_triggers.rel [ scene_9_triggers ] +/tmp/_gbsbuild/obj/scene_9.rel [ scene_9 ] +/tmp/_gbsbuild/obj/script_1.rel [ script_1 ] +/tmp/_gbsbuild/obj/script_engine_init.rel + [ ] +/tmp/_gbsbuild/obj/script_input_4.rel [ script_input_4 ] +/tmp/_gbsbuild/obj/script_input_5.rel [ script_input_5 ] +/tmp/_gbsbuild/obj/script_input_6.rel [ script_input_6 ] +/tmp/_gbsbuild/obj/script_input.rel [ script_input ] +/tmp/_gbsbuild/obj/sprite_actor_animated_bank2_tileset.rel + [ sprite_actor_animated_bank2_tile ] +/tmp/_gbsbuild/obj/sprite_actor_animated_tileset.rel + [ sprite_actor_animated_tileset ] +/tmp/_gbsbuild/obj/sprite_actor_animated.rel + [ sprite_actor_animated ] +/tmp/_gbsbuild/obj/sprite_cat_bank2_tileset.rel + [ sprite_cat_bank2_tileset ] +/tmp/_gbsbuild/obj/sprite_cat_tileset.rel + [ sprite_cat_tileset ] +/tmp/_gbsbuild/obj/sprite_cat.rel [ sprite_cat ] +/tmp/_gbsbuild/obj/sprite_charanimatedsprite_bank2_tileset.rel + [ sprite_charanimatedsprite_bank2_ ] +/tmp/_gbsbuild/obj/sprite_charanimatedsprite_tileset.rel + [ sprite_charanimatedsprite_tilese ] +/tmp/_gbsbuild/obj/sprite_charanimatedsprite.rel + [ sprite_charanimatedsprite ] +/tmp/_gbsbuild/obj/sprite_checkbox_bank2_tileset.rel + [ sprite_checkbox_bank2_tileset ] +/tmp/_gbsbuild/obj/sprite_checkbox_tileset.rel + [ sprite_checkbox_tileset ] +/tmp/_gbsbuild/obj/sprite_checkbox.rel [ sprite_checkbox ] +/tmp/_gbsbuild/obj/sprite_dog_bank2_tileset.rel + [ sprite_dog_bank2_tileset ] +/tmp/_gbsbuild/obj/sprite_dog_tileset.rel + [ sprite_dog_tileset ] +/tmp/_gbsbuild/obj/sprite_dog.rel [ sprite_dog ] +/tmp/_gbsbuild/obj/sprite_npc001_bank2_tileset.rel + [ sprite_npc001_bank2_tileset ] +/tmp/_gbsbuild/obj/sprite_npc001_tileset.rel + [ sprite_npc001_tileset ] +/tmp/_gbsbuild/obj/sprite_npc001.rel [ sprite_npc001 ] +/tmp/_gbsbuild/obj/sprite_npc002_bank2_tileset.rel + [ sprite_npc002_bank2_tileset ] +/tmp/_gbsbuild/obj/sprite_npc002_tileset.rel + [ sprite_npc002_tileset ] +/tmp/_gbsbuild/obj/sprite_npc002.rel [ sprite_npc002 ] +/tmp/_gbsbuild/obj/sprite_npc005_bank2_tileset.rel + [ sprite_npc005_bank2_tileset ] +/tmp/_gbsbuild/obj/sprite_npc005_tileset.rel + [ sprite_npc005_tileset ] +/tmp/_gbsbuild/obj/sprite_npc005.rel [ sprite_npc005 ] +/tmp/_gbsbuild/obj/sprite_player_bank2_tileset.rel + [ sprite_player_bank2_tileset ] +/tmp/_gbsbuild/obj/sprite_player_tileset.rel + [ sprite_player_tileset ] +/tmp/_gbsbuild/obj/sprite_player.rel [ sprite_player ] +/tmp/_gbsbuild/obj/sprite_sign_bank2_tileset.rel + [ sprite_sign_bank2_tileset ] +/tmp/_gbsbuild/obj/sprite_sign_tileset.rel + [ sprite_sign_tileset ] +/tmp/_gbsbuild/obj/sprite_sign.rel [ sprite_sign ] +/tmp/_gbsbuild/obj/spritesheet_none.rel [ spritesheet_none ] +/tmp/_gbsbuild/obj/tileset_default_frame.rel + [ tileset_default_frame ] +/tmp/_gbsbuild/obj/trigger_0_interact.rel + [ trigger_0_interact ] +/tmp/_gbsbuild/obj/trigger_1_interact.rel + [ trigger_1_interact ] +/tmp/_gbsbuild/obj/trigger_10_interact.rel + [ trigger_10_interact ] +/tmp/_gbsbuild/obj/trigger_11_interact.rel + [ trigger_11_interact ] +/tmp/_gbsbuild/obj/trigger_12_interact.rel + [ trigger_12_interact ] +/tmp/_gbsbuild/obj/trigger_13_interact.rel + [ trigger_13_interact ] +/tmp/_gbsbuild/obj/trigger_14_interact.rel + [ trigger_14_interact ] +/tmp/_gbsbuild/obj/trigger_15_interact.rel + [ trigger_15_interact ] +/tmp/_gbsbuild/obj/trigger_16_interact.rel + [ trigger_16_interact ] +/tmp/_gbsbuild/obj/trigger_17_interact.rel + [ trigger_17_interact ] +/tmp/_gbsbuild/obj/trigger_18_interact.rel + [ trigger_18_interact ] +/tmp/_gbsbuild/obj/trigger_19_interact.rel + [ trigger_19_interact ] +/tmp/_gbsbuild/obj/trigger_2_interact.rel + [ trigger_2_interact ] +/tmp/_gbsbuild/obj/trigger_20_interact.rel + [ trigger_20_interact ] +/tmp/_gbsbuild/obj/trigger_21_interact.rel + [ trigger_21_interact ] +/tmp/_gbsbuild/obj/trigger_22_interact.rel + [ trigger_22_interact ] +/tmp/_gbsbuild/obj/trigger_23_interact.rel + [ trigger_23_interact ] +/tmp/_gbsbuild/obj/trigger_24_interact.rel + [ trigger_24_interact ] +/tmp/_gbsbuild/obj/trigger_3_interact.rel + [ trigger_3_interact ] +/tmp/_gbsbuild/obj/trigger_4_interact.rel + [ trigger_4_interact ] +/tmp/_gbsbuild/obj/trigger_5_interact.rel + [ trigger_5_interact ] +/tmp/_gbsbuild/obj/trigger_6_interact.rel + [ trigger_6_interact ] +/tmp/_gbsbuild/obj/trigger_7_interact.rel + [ trigger_7_interact ] +/tmp/_gbsbuild/obj/trigger_8_interact.rel + [ trigger_8_interact ] +/tmp/_gbsbuild/obj/trigger_9_interact.rel + [ trigger_9_interact ] +/tmp/_gbsbuild/obj/main.rel [ main ] +/tmp/_gbsbuild/obj/logo.rel [ logo ] +/tmp/_gbsbuild/obj/states_ptrs.rel [ ] +/tmp/_gbsbuild/obj/topdown.rel [ topdown ] + + +Libraries Linked [ object file ] + +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ fill_rect_wi.o ] +/tmp/_gbstools/gbdk/lib/sm83/sm83.lib [ rand.o ] +lib/hUGEDriver.lib [ hUGEDriver.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ sfr.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ get_data.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ get_tile.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ cgb_palettes.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ metasprites_hide_spr.o ] +/tmp/_gbstools/gbdk/lib/sm83/sm83.lib [ mul.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ set_tile.o ] +/tmp/_gbstools/gbdk/lib/sm83/sm83.lib [ abs.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ set_wi_t.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ set_data.o ] +/tmp/_gbstools/gbdk/lib/sm83/sm83.lib [ reverse.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ far_ptr.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ sgb.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ lcd.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ fill_rect.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ cpy_data.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ fill_rect_bk.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ pad.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ metasprites.o ] +/tmp/_gbstools/gbdk/lib/sm83/sm83.lib [ __sdcc_call_hl.o ] +/tmp/_gbstools/gbdk/lib/sm83/sm83.lib [ memcpy.o ] +/tmp/_gbstools/gbdk/lib/sm83/sm83.lib [ _memset.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ set_xy_t.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ ___sdcc_bcall_ehl.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ cgb.o ] +/tmp/_gbstools/gbdk/lib/sm83/sm83.lib [ div.o ] +/tmp/_gbstools/gbdk/lib/gb/gb.lib [ set_bk_t.o ] + + ASxxxx Linker V03.00/V05.40 + sdld, page 76. + +User Base Address Definitions + +_DATA=0xC0A0 +_CODE=0x0200 + ASxxxx Linker V03.00/V05.40 + sdld, page 77. + +User Global Definitions + +.STACK=0xDF00 +_shadow_OAM=0xC000 +.refresh_OAM=0xFF80 +__start_save=12 + + \ No newline at end of file diff --git a/gb_studio_project/build/rom/game.noi b/gb_studio_project/build/rom/game.noi new file mode 100644 index 0000000..22f736d --- /dev/null +++ b/gb_studio_project/build/rom/game.noi @@ -0,0 +1,1953 @@ +DEF .__.ABS. 0x0 +DEF _rRAMG 0x0 +DEF l__BASE 0x0 +DEF l__BSS 0x0 +DEF l__CABS 0x0 +DEF l__CODE_0 0x0 +DEF l__CRASH_HEADER 0x0 +DEF l__CRASH_SCRATCH 0x0 +DEF l__DABS 0x0 +DEF l__HEADER 0x0 +DEF l__HEADER_LCD 0x0 +DEF l__HEADER_SIO 0x0 +DEF l__HEADER_TIMER 0x0 +DEF l__HEAP 0x0 +DEF l__HEAP_END 0x0 +DEF l__HRAM 0x0 +DEF l__LIT 0x0 +DEF s__CABS 0x0 +DEF s__CRASH_HEADER 0x0 +DEF s__CRASH_HEADER0 0x0 +DEF s__CRASH_HEADER1 0x0 +DEF s__CRASH_SCRATCH 0x0 +DEF s__CRASH_SCRATCH2 0x0 +DEF s__DABS 0x0 +DEF s__HEADER 0x0 +DEF s__HEADER0 0x0 +DEF s__HEADER1 0x0 +DEF s__HEADER10 0x0 +DEF s__HEADER11 0x0 +DEF s__HEADER2 0x0 +DEF s__HEADER3 0x0 +DEF s__HEADER4 0x0 +DEF s__HEADER5 0x0 +DEF s__HEADER6 0x0 +DEF s__HEADER7 0x0 +DEF s__HEADER8 0x0 +DEF s__HEADER9 0x0 +DEF s__HEADER_LCD 0x0 +DEF s__HEADER_LCD0 0x0 +DEF s__HEADER_SIO 0x0 +DEF s__HEADER_SIO0 0x0 +DEF s__HEADER_TIMER 0x0 +DEF s__HEADER_TIMER0 0x0 +DEF s__HEADERa 0x0 +DEF s__HEADERb 0x0 +DEF s__HEADERc 0x0 +DEF s__HEADERd 0x0 +DEF s__HEADERe 0x0 +DEF s__HEADERf 0x0 +DEF s__HRAM 0x0 +DEF s__HRAM12 0x0 +DEF ___bank_VM_SGB 0x1 +DEF ___bank_bg_cave_tileset 0x1 +DEF ___bank_bg_lab1_tileset 0x1 +DEF ___bank_bg_logoscreen_tileset 0x1 +DEF ___bank_bg_titlescreen_tileset 0x1 +DEF ___bank_scene_1_init 0x1 +DEF ___bank_script_input_5 0x1 +DEF b_ui_draw_frame 0x1 +DEF b_ui_draw_text_buffer_char 0x1 +DEF b_ui_init 0x1 +DEF b_ui_load_tiles 0x1 +DEF b_ui_run_menu 0x1 +DEF b_ui_run_modal 0x1 +DEF b_ui_set_start_tile 0x1 +DEF l__GSFINAL 0x1 +DEF l__HEADER0 0x1 +DEF l__HEADER5 0x1 +DEF l__HEADERa 0x1 +DEF l__HEADERb 0x1 +DEF l__HEADERc 0x1 +DEF l__HEADERe 0x1 +DEF l__HEADERf 0x1 +DEF ___bank_actor_7_interact 0x2 +DEF ___bank_bg_overworld_test_1_tilemap 0x2 +DEF ___bank_bg_overworld_test_1_tilemap_attr 0x2 +DEF ___bank_song_rulz_lightmood_Data 0x2 +DEF l__HEADER10 0x2 +DEF l__HEADER6 0x2 +DEF l__HEADERd 0x2 +DEF ___bank_ACTOR 0x3 +DEF ___bank_bg_outside_cgb_tileset 0x3 +DEF ___bank_scene_1 0x3 +DEF ___bank_scene_1_collisions 0x3 +DEF b_activate_actor 0x3 +DEF b_activate_actors_in_col 0x3 +DEF b_activate_actors_in_row 0x3 +DEF b_actor_at_tile 0x3 +DEF b_actor_get_frame_offset 0x3 +DEF b_actor_in_front_of_player 0x3 +DEF b_actor_overlapping_bb 0x3 +DEF b_actor_overlapping_player 0x3 +DEF b_actor_set_anim_idle 0x3 +DEF b_actor_set_anim_moving 0x3 +DEF b_actor_set_dir 0x3 +DEF b_actor_set_frame_offset 0x3 +DEF b_actor_set_frames 0x3 +DEF b_actors_handle_player_collision 0x3 +DEF b_actors_init 0x3 +DEF b_check_collision_in_direction 0x3 +DEF b_deactivate_actor 0x3 +DEF b_player_init 0x3 +DEF b_projectile_launch 0x3 +DEF b_projectiles_init 0x3 +DEF l__HEADER9 0x3 +DEF l__HEADER_LCD0 0x3 +DEF l__HRAM12 0x3 +DEF ___bank_VM_ACTOR 0x4 +DEF ___bank_VM_GBPRINTER 0x4 +DEF ___bank_VM_MAIN 0x4 +DEF ___bank_bg_outside_tileset 0x4 +DEF ___bank_scene_11_triggers 0x4 +DEF ___bank_song_rulz_undergroundcave_Data 0x4 +DEF b_script_detach_hthread 0x4 +DEF b_script_execute 0x4 +DEF b_script_runner_init 0x4 +DEF b_script_terminate 0x4 +DEF b_vm_actor_activate 0x4 +DEF b_vm_actor_begin_update 0x4 +DEF b_vm_actor_deactivate 0x4 +DEF b_vm_actor_emote 0x4 +DEF b_vm_actor_get_angle 0x4 +DEF b_vm_actor_get_anim_frame 0x4 +DEF b_vm_actor_get_dir 0x4 +DEF b_vm_actor_get_pos 0x4 +DEF b_vm_actor_move_cancel 0x4 +DEF b_vm_actor_move_to 0x4 +DEF b_vm_actor_replace_tile 0x4 +DEF b_vm_actor_set_anim 0x4 +DEF b_vm_actor_set_anim_frame 0x4 +DEF b_vm_actor_set_anim_set 0x4 +DEF b_vm_actor_set_anim_tick 0x4 +DEF b_vm_actor_set_bounds 0x4 +DEF b_vm_actor_set_dir 0x4 +DEF b_vm_actor_set_flags 0x4 +DEF b_vm_actor_set_move_speed 0x4 +DEF b_vm_actor_set_pos 0x4 +DEF b_vm_actor_set_spritesheet 0x4 +DEF b_vm_actor_set_spritesheet_by_ref 0x4 +DEF b_vm_actor_terminate_update 0x4 +DEF b_vm_call 0x4 +DEF b_vm_call_far 0x4 +DEF b_vm_get_indirect 0x4 +DEF b_vm_get_tlocal 0x4 +DEF b_vm_idle 0x4 +DEF b_vm_if 0x4 +DEF b_vm_if_const 0x4 +DEF b_vm_init_rng 0x4 +DEF b_vm_invoke 0x4 +DEF b_vm_join 0x4 +DEF b_vm_jump 0x4 +DEF b_vm_lock 0x4 +DEF b_vm_loop 0x4 +DEF b_vm_memcpy 0x4 +DEF b_vm_memset 0x4 +DEF b_vm_poll_loaded 0x4 +DEF b_vm_pop 0x4 +DEF b_vm_print_detect 0x4 +DEF b_vm_print_overlay 0x4 +DEF b_vm_push 0x4 +DEF b_vm_push_reference 0x4 +DEF b_vm_push_value 0x4 +DEF b_vm_push_value_ind 0x4 +DEF b_vm_raise 0x4 +DEF b_vm_rand 0x4 +DEF b_vm_reserve 0x4 +DEF b_vm_ret 0x4 +DEF b_vm_ret_far 0x4 +DEF b_vm_set 0x4 +DEF b_vm_set_const 0x4 +DEF b_vm_set_indirect 0x4 +DEF b_vm_terminate 0x4 +DEF b_vm_test_terminate 0x4 +DEF b_vm_unlock 0x4 +DEF b_wait_frames 0x4 +DEF l__CRASH_HEADER1 0x4 +DEF l__HEADER_SIO0 0x4 +DEF l__HEADER_TIMER0 0x4 +DEF ___bank_VM_SIO 0x5 +DEF ___bank_bg_endscreen_tileset 0x5 +DEF ___bank_bg_questscreen_tileset 0x5 +DEF ___bank_font_gbs_mono 0x5 +DEF ___bank_scene_14_sprites 0x5 +DEF ___bank_song_rulz_outside_0_Data 0x5 +DEF ___bank_song_rulz_spaceemergency_0_Data 0x5 +DEF b_do_load_palette 0x5 +DEF b_load_background 0x5 +DEF b_load_bkg_tileset 0x5 +DEF b_load_bounds 0x5 +DEF b_load_emote 0x5 +DEF b_load_init 0x5 +DEF b_load_player 0x5 +DEF b_load_scene 0x5 +DEF b_load_sprite 0x5 +DEF b_vm_sio_exchange 0x5 +DEF b_vm_sio_set_mode 0x5 +DEF l__CRASH_HEADER0 0x5 +DEF l__HEADER1 0x5 +DEF ___bank_VM_GAMEBOY 0x6 +DEF ___bank_VM_MATH 0x6 +DEF ___bank_VM_UI 0x6 +DEF ___bank_bg_fate6housef2_tileset 0x6 +DEF ___bank_bg_housef2_tileset 0x6 +DEF ___bank_bg_outside_tilemap 0x6 +DEF ___bank_bg_outside_tilemap_attr 0x6 +DEF ___bank_bg_overworld_test_1_tileset 0x6 +DEF ___bank_bg_slighhousef2_tileset 0x6 +DEF ___bank_cursor_image 0x6 +DEF ___bank_scene_17_collisions 0x6 +DEF b_core_reset 0x6 +DEF b_core_run 0x6 +DEF b_scroll_init 0x6 +DEF b_scroll_repaint 0x6 +DEF b_scroll_reset 0x6 +DEF b_scroll_update 0x6 +DEF b_topdown_init 0x6 +DEF b_topdown_update 0x6 +DEF b_vm_choice 0x6 +DEF b_vm_context_prepare 0x6 +DEF b_vm_cos_scale 0x6 +DEF b_vm_display_text 0x6 +DEF b_vm_fade 0x6 +DEF b_vm_get_tile_xy 0x6 +DEF b_vm_input_attach 0x6 +DEF b_vm_input_detach 0x6 +DEF b_vm_input_get 0x6 +DEF b_vm_input_wait 0x6 +DEF b_vm_load_tileset 0x6 +DEF b_vm_overlay_clear 0x6 +DEF b_vm_overlay_move_to 0x6 +DEF b_vm_overlay_scroll 0x6 +DEF b_vm_overlay_set_map 0x6 +DEF b_vm_overlay_set_scroll 0x6 +DEF b_vm_overlay_set_submap 0x6 +DEF b_vm_overlay_set_submap_ex 0x6 +DEF b_vm_overlay_setpos 0x6 +DEF b_vm_overlay_show 0x6 +DEF b_vm_overlay_wait 0x6 +DEF b_vm_poll 0x6 +DEF b_vm_replace_tile 0x6 +DEF b_vm_replace_tile_xy 0x6 +DEF b_vm_rumble 0x6 +DEF b_vm_set_font 0x6 +DEF b_vm_set_sprite_mode 0x6 +DEF b_vm_set_sprites_visible 0x6 +DEF b_vm_set_text_sound 0x6 +DEF b_vm_sin_scale 0x6 +DEF b_vm_switch_text_layer 0x6 +DEF b_vm_timer_prepare 0x6 +DEF b_vm_timer_reset 0x6 +DEF b_vm_timer_set 0x6 +DEF b_vm_timer_stop 0x6 +DEF l__HEADER8 0x6 +DEF ___bank_VM_CAMERA 0x7 +DEF ___bank_VM_PALETTE 0x7 +DEF ___bank_actor_0_interact 0x7 +DEF ___bank_actor_5_interact 0x7 +DEF ___bank_bg_cave_tilemap 0x7 +DEF ___bank_bg_cave_tilemap_attr 0x7 +DEF ___bank_bg_endscreen_cgb_tileset 0x7 +DEF ___bank_bg_endscreen_tilemap 0x7 +DEF ___bank_bg_endscreen_tilemap_attr 0x7 +DEF ___bank_bg_fate6housef2_tilemap 0x7 +DEF ___bank_bg_fate6housef2_tilemap_attr 0x7 +DEF ___bank_bg_house_tileset 0x7 +DEF ___bank_bg_house_wide_tilemap 0x7 +DEF ___bank_bg_house_wide_tilemap_attr 0x7 +DEF ___bank_bg_house_wide_tileset 0x7 +DEF ___bank_bg_lab1_tilemap 0x7 +DEF ___bank_bg_lab1_tilemap_attr 0x7 +DEF ___bank_scene_1_actors 0x7 +DEF ___bank_scene_2_collisions 0x7 +DEF ___bank_scene_4_collisions 0x7 +DEF ___bank_scene_6_collisions 0x7 +DEF ___bank_scene_8_collisions 0x7 +DEF ___bank_script_1 0x7 +DEF b___HandleCrash_banked 0x7 +DEF b_atan2 0x7 +DEF b_camera_shake_frames 0x7 +DEF b_data_clear 0x7 +DEF b_data_init 0x7 +DEF b_data_load 0x7 +DEF b_data_peek 0x7 +DEF b_data_save 0x7 +DEF b_fade_applypalettechange 0x7 +DEF b_fade_in 0x7 +DEF b_fade_in_modal 0x7 +DEF b_fade_init 0x7 +DEF b_fade_out 0x7 +DEF b_fade_out_modal 0x7 +DEF b_fade_setspeed 0x7 +DEF b_fade_update 0x7 +DEF b_gbprinter_detect 0x7 +DEF b_gbprinter_print_overlay 0x7 +DEF b_set_sgb_border 0x7 +DEF b_trigger_activate_at 0x7 +DEF b_trigger_activate_at_intersection 0x7 +DEF b_trigger_at_intersection 0x7 +DEF b_trigger_at_tile 0x7 +DEF b_trigger_interact 0x7 +DEF b_trigger_reset 0x7 +DEF b_vm_camera_move_to 0x7 +DEF b_vm_camera_set_pos 0x7 +DEF b_vm_load_palette 0x7 +DEF l__HEADER2 0x7 +DEF ___bank_VM_LOAD_SAVE 0x8 +DEF ___bank_VM_MUSIC 0x8 +DEF ___bank_VM_PROJECTILE 0x8 +DEF ___bank_VM_RTC 0x8 +DEF ___bank_VM_SCENE 0x8 +DEF ___bank_actor_14_interact 0x8 +DEF ___bank_actor_15_interact 0x8 +DEF ___bank_actor_1_interact 0x8 +DEF ___bank_actor_2_interact 0x8 +DEF ___bank_actor_3_interact 0x8 +DEF ___bank_actor_8_interact 0x8 +DEF ___bank_bg_house_tilemap 0x8 +DEF ___bank_bg_house_tilemap_attr 0x8 +DEF ___bank_bg_housef2_tilemap 0x8 +DEF ___bank_bg_housef2_tilemap_attr 0x8 +DEF ___bank_bg_logoscreen_tilemap 0x8 +DEF ___bank_bg_logoscreen_tilemap_attr 0x8 +DEF ___bank_bg_questscreen_tilemap 0x8 +DEF ___bank_bg_questscreen_tilemap_attr 0x8 +DEF ___bank_bg_slighhousef2_tilemap 0x8 +DEF ___bank_bg_slighhousef2_tilemap_attr 0x8 +DEF ___bank_bg_titlescreen_tilemap 0x8 +DEF ___bank_bg_titlescreen_tilemap_attr 0x8 +DEF ___bank_emote_love 0x8 +DEF ___bank_frame_image 0x8 +DEF ___bank_palette_0 0x8 +DEF ___bank_palette_1 0x8 +DEF ___bank_palette_10 0x8 +DEF ___bank_palette_11 0x8 +DEF ___bank_palette_12 0x8 +DEF ___bank_palette_13 0x8 +DEF ___bank_palette_2 0x8 +DEF ___bank_palette_3 0x8 +DEF ___bank_palette_4 0x8 +DEF ___bank_palette_5 0x8 +DEF ___bank_palette_6 0x8 +DEF ___bank_palette_7 0x8 +DEF ___bank_palette_8 0x8 +DEF ___bank_palette_9 0x8 +DEF ___bank_scene_10_collisions 0x8 +DEF ___bank_scene_11_collisions 0x8 +DEF ___bank_scene_12_collisions 0x8 +DEF ___bank_scene_13_collisions 0x8 +DEF ___bank_scene_14_collisions 0x8 +DEF ___bank_scene_15_actors 0x8 +DEF ___bank_scene_15_collisions 0x8 +DEF ___bank_scene_15_init 0x8 +DEF ___bank_scene_16_collisions 0x8 +DEF ___bank_scene_1_triggers 0x8 +DEF ___bank_scene_3_collisions 0x8 +DEF ___bank_scene_5_collisions 0x8 +DEF ___bank_scene_7_collisions 0x8 +DEF ___bank_scene_8_actors 0x8 +DEF ___bank_scene_9_collisions 0x8 +DEF ___bank_sprite_actor_animated 0x8 +DEF ___bank_sprite_actor_animated_bank2_tileset 0x8 +DEF ___bank_sprite_actor_animated_tileset 0x8 +DEF ___bank_sprite_charanimatedsprite 0x8 +DEF ___bank_sprite_charanimatedsprite_bank2_tileset 0x8 +DEF ___bank_sprite_charanimatedsprite_tileset 0x8 +DEF ___bank_sprite_npc001 0x8 +DEF ___bank_sprite_npc001_bank2_tileset 0x8 +DEF ___bank_sprite_npc001_tileset 0x8 +DEF ___bank_sprite_npc002 0x8 +DEF ___bank_sprite_npc002_bank2_tileset 0x8 +DEF ___bank_sprite_npc002_tileset 0x8 +DEF ___bank_sprite_npc005 0x8 +DEF ___bank_sprite_npc005_bank2_tileset 0x8 +DEF ___bank_sprite_npc005_tileset 0x8 +DEF ___bank_sprite_player 0x8 +DEF ___bank_sprite_player_bank2_tileset 0x8 +DEF ___bank_sprite_player_tileset 0x8 +DEF ___bank_tileset_default_frame 0x8 +DEF ___bank_trigger_16_interact 0x8 +DEF ___bank_trigger_23_interact 0x8 +DEF ___bank_trigger_9_interact 0x8 +DEF b_CGBZeroPalette 0x8 +DEF b_erase_flash 0x8 +DEF b_events_init 0x8 +DEF b_itoa_fmt 0x8 +DEF b_music_events_poll 0x8 +DEF b_music_init_driver 0x8 +DEF b_music_init_events 0x8 +DEF b_palette_init 0x8 +DEF b_restore_sram 0x8 +DEF b_restore_sram_bank 0x8 +DEF b_save_sram 0x8 +DEF b_save_sram_banks 0x8 +DEF b_scroll_rect 0x8 +DEF b_timers_init 0x8 +DEF b_vm_music_mute 0x8 +DEF b_vm_music_play 0x8 +DEF b_vm_music_routine 0x8 +DEF b_vm_music_setpos 0x8 +DEF b_vm_music_stop 0x8 +DEF b_vm_projectile_launch 0x8 +DEF b_vm_projectile_load_type 0x8 +DEF b_vm_rtc_get 0x8 +DEF b_vm_rtc_latch 0x8 +DEF b_vm_rtc_set 0x8 +DEF b_vm_rtc_start 0x8 +DEF b_vm_save_clear 0x8 +DEF b_vm_save_peek 0x8 +DEF b_vm_scene_pop 0x8 +DEF b_vm_scene_pop_all 0x8 +DEF b_vm_scene_push 0x8 +DEF b_vm_scene_stack_reset 0x8 +DEF b_vm_sfx_play 0x8 +DEF b_vm_sound_mastervol 0x8 +DEF l__HEADER3 0x8 +DEF ___bank_actor_10_interact 0x9 +DEF ___bank_actor_11_interact 0x9 +DEF ___bank_actor_12_interact 0x9 +DEF ___bank_actor_13_interact 0x9 +DEF ___bank_actor_4_interact 0x9 +DEF ___bank_actor_6_interact 0x9 +DEF ___bank_actor_9_interact 0x9 +DEF ___bank_bg_cave 0x9 +DEF ___bank_bg_endscreen 0x9 +DEF ___bank_bg_fate6housef2 0x9 +DEF ___bank_bg_house 0x9 +DEF ___bank_bg_house_wide 0x9 +DEF ___bank_bg_housef2 0x9 +DEF ___bank_bg_lab1 0x9 +DEF ___bank_bg_logoscreen 0x9 +DEF ___bank_bg_outside 0x9 +DEF ___bank_bg_overworld_test_1 0x9 +DEF ___bank_bg_questscreen 0x9 +DEF ___bank_bg_slighhousef2 0x9 +DEF ___bank_bg_titlescreen 0x9 +DEF ___bank_bootstrap_script 0x9 +DEF ___bank_scene_10 0x9 +DEF ___bank_scene_10_init 0x9 +DEF ___bank_scene_11 0x9 +DEF ___bank_scene_11_init 0x9 +DEF ___bank_scene_12 0x9 +DEF ___bank_scene_12_init 0x9 +DEF ___bank_scene_13 0x9 +DEF ___bank_scene_13_init 0x9 +DEF ___bank_scene_14 0x9 +DEF ___bank_scene_14_actors 0x9 +DEF ___bank_scene_14_init 0x9 +DEF ___bank_scene_14_triggers 0x9 +DEF ___bank_scene_15 0x9 +DEF ___bank_scene_15_sprites 0x9 +DEF ___bank_scene_16 0x9 +DEF ___bank_scene_16_init 0x9 +DEF ___bank_scene_17 0x9 +DEF ___bank_scene_17_actors 0x9 +DEF ___bank_scene_17_init 0x9 +DEF ___bank_scene_17_sprites 0x9 +DEF ___bank_scene_17_triggers 0x9 +DEF ___bank_scene_1_sprites 0x9 +DEF ___bank_scene_2 0x9 +DEF ___bank_scene_2_actors 0x9 +DEF ___bank_scene_2_init 0x9 +DEF ___bank_scene_2_sprites 0x9 +DEF ___bank_scene_2_triggers 0x9 +DEF ___bank_scene_3 0x9 +DEF ___bank_scene_3_actors 0x9 +DEF ___bank_scene_3_init 0x9 +DEF ___bank_scene_3_sprites 0x9 +DEF ___bank_scene_3_triggers 0x9 +DEF ___bank_scene_4 0x9 +DEF ___bank_scene_4_init 0x9 +DEF ___bank_scene_4_triggers 0x9 +DEF ___bank_scene_5 0x9 +DEF ___bank_scene_5_actors 0x9 +DEF ___bank_scene_5_init 0x9 +DEF ___bank_scene_5_sprites 0x9 +DEF ___bank_scene_5_triggers 0x9 +DEF ___bank_scene_6 0x9 +DEF ___bank_scene_6_actors 0x9 +DEF ___bank_scene_6_init 0x9 +DEF ___bank_scene_6_sprites 0x9 +DEF ___bank_scene_6_triggers 0x9 +DEF ___bank_scene_7 0x9 +DEF ___bank_scene_7_actors 0x9 +DEF ___bank_scene_7_init 0x9 +DEF ___bank_scene_7_sprites 0x9 +DEF ___bank_scene_7_triggers 0x9 +DEF ___bank_scene_8 0x9 +DEF ___bank_scene_8_init 0x9 +DEF ___bank_scene_8_sprites 0x9 +DEF ___bank_scene_8_triggers 0x9 +DEF ___bank_scene_9 0x9 +DEF ___bank_scene_9_init 0x9 +DEF ___bank_scene_9_triggers 0x9 +DEF ___bank_script_engine_init 0x9 +DEF ___bank_script_input 0x9 +DEF ___bank_script_input_4 0x9 +DEF ___bank_script_input_6 0x9 +DEF ___bank_sprite_cat 0x9 +DEF ___bank_sprite_cat_bank2_tileset 0x9 +DEF ___bank_sprite_cat_tileset 0x9 +DEF ___bank_sprite_checkbox 0x9 +DEF ___bank_sprite_checkbox_bank2_tileset 0x9 +DEF ___bank_sprite_checkbox_tileset 0x9 +DEF ___bank_sprite_dog 0x9 +DEF ___bank_sprite_dog_bank2_tileset 0x9 +DEF ___bank_sprite_dog_tileset 0x9 +DEF ___bank_sprite_sign 0x9 +DEF ___bank_sprite_sign_bank2_tileset 0x9 +DEF ___bank_sprite_sign_tileset 0x9 +DEF ___bank_spritesheet_none 0x9 +DEF ___bank_trigger_0_interact 0x9 +DEF ___bank_trigger_10_interact 0x9 +DEF ___bank_trigger_11_interact 0x9 +DEF ___bank_trigger_12_interact 0x9 +DEF ___bank_trigger_13_interact 0x9 +DEF ___bank_trigger_14_interact 0x9 +DEF ___bank_trigger_15_interact 0x9 +DEF ___bank_trigger_17_interact 0x9 +DEF ___bank_trigger_18_interact 0x9 +DEF ___bank_trigger_19_interact 0x9 +DEF ___bank_trigger_1_interact 0x9 +DEF ___bank_trigger_20_interact 0x9 +DEF ___bank_trigger_21_interact 0x9 +DEF ___bank_trigger_22_interact 0x9 +DEF ___bank_trigger_24_interact 0x9 +DEF ___bank_trigger_2_interact 0x9 +DEF ___bank_trigger_3_interact 0x9 +DEF ___bank_trigger_4_interact 0x9 +DEF ___bank_trigger_5_interact 0x9 +DEF ___bank_trigger_6_interact 0x9 +DEF ___bank_trigger_7_interact 0x9 +DEF ___bank_trigger_8_interact 0x9 +DEF b_SIO_init 0x9 +DEF b_camera_init 0x9 +DEF b_input_init 0x9 +DEF b_logo_init 0x9 +DEF b_logo_update 0x9 +DEF b_parallax_init 0x9 +DEF b_remove_LCD_ISRs 0x9 +DEF __start_save 0xC +DEF l__INITIALIZED 0x18 +DEF l__INITIALIZER 0x18 +DEF l__GSINIT 0x27 +DEF l__HEADER7 0x30 +DEF l__HEADER4 0x60 +DEF l__HEADER11 0xAB +DEF l__CRASH_SCRATCH2 0x1CB +DEF s__CODE 0x200 +DEF l__CODE 0xEB9 +DEF s__HOME 0x10B9 +DEF l__CODE_9 0x1130 +DEF l__DATA 0x1971 +DEF _rROMB0 0x2000 +DEF l__HOME 0x2D53 +DEF _rROMB1 0x3000 +DEF s__BASE 0x3E0C +DEF s__CODE_0 0x3E0C +DEF s__INITIALIZER 0x3E0C +DEF s__LIT 0x3E0C +DEF s__GSINIT 0x3E24 +DEF s__GSFINAL 0x3E4B +DEF l__CODE_5 0x3FFE +DEF l__CODE_2 0x3FFF +DEF l__CODE_3 0x3FFF +DEF l__CODE_8 0x3FFF +DEF _RTC_SELECT_REG 0x4000 +DEF _rRAMB 0x4000 +DEF l__CODE_1 0x4000 +DEF l__CODE_4 0x4000 +DEF l__CODE_6 0x4000 +DEF l__CODE_7 0x4000 +DEF _RTC_LATCH_REG 0x6000 +DEF __VRAM 0x8000 +DEF __VRAM8000 0x8000 +DEF __VRAM8800 0x8800 +DEF __VRAM9000 0x9000 +DEF __SCRN0 0x9800 +DEF __SCRN1 0x9C00 +DEF _RTC_VALUE_REG 0xA000 +DEF __SRAM 0xA000 +DEF __RAM 0xC000 +DEF _shadow_OAM 0xC000 +DEF s__DATA 0xC0A0 +DEF __RAMBANK 0xD000 +DEF s__BSS 0xDA11 +DEF s__INITIALIZED 0xDA11 +DEF s__HEAP 0xDA29 +DEF s__HEAP_END 0xDA29 +DEF .STACK 0xDF00 +DEF _shadow_OAM2 0xDF00 +DEF _BkgPalette 0xDFA0 +DEF _vwf_tile_data 0xDFE0 +DEF __OAMRAM 0xFE00 +DEF _P1_REG 0xFF00 +DEF __IO 0xFF00 +DEF _SB_REG 0xFF01 +DEF _SC_REG 0xFF02 +DEF _DIV_REG 0xFF04 +DEF _TIMA_REG 0xFF05 +DEF _TMA_REG 0xFF06 +DEF _TAC_REG 0xFF07 +DEF _IF_REG 0xFF0F +DEF _NR10_REG 0xFF10 +DEF _NR11_REG 0xFF11 +DEF _NR12_REG 0xFF12 +DEF _NR13_REG 0xFF13 +DEF _NR14_REG 0xFF14 +DEF _NR21_REG 0xFF16 +DEF _NR22_REG 0xFF17 +DEF _NR23_REG 0xFF18 +DEF _NR24_REG 0xFF19 +DEF _NR30_REG 0xFF1A +DEF _NR31_REG 0xFF1B +DEF _NR32_REG 0xFF1C +DEF _NR33_REG 0xFF1D +DEF _NR34_REG 0xFF1E +DEF _NR41_REG 0xFF20 +DEF _NR42_REG 0xFF21 +DEF _NR43_REG 0xFF22 +DEF _NR44_REG 0xFF23 +DEF _NR50_REG 0xFF24 +DEF _NR51_REG 0xFF25 +DEF _NR52_REG 0xFF26 +DEF _AUD3WAVE 0xFF30 +DEF _PCM_SAMPLE 0xFF30 +DEF __AUD3WAVERAM 0xFF30 +DEF _LCDC_REG 0xFF40 +DEF _STAT_REG 0xFF41 +DEF _SCY_REG 0xFF42 +DEF _SCX_REG 0xFF43 +DEF _LY_REG 0xFF44 +DEF _LYC_REG 0xFF45 +DEF _DMA_REG 0xFF46 +DEF _BGP_REG 0xFF47 +DEF _OBP0_REG 0xFF48 +DEF _OBP1_REG 0xFF49 +DEF _WY_REG 0xFF4A +DEF _WX_REG 0xFF4B +DEF _KEY1_REG 0xFF4D +DEF _VBK_REG 0xFF4F +DEF _HDMA1_REG 0xFF51 +DEF _HDMA2_REG 0xFF52 +DEF _HDMA3_REG 0xFF53 +DEF _HDMA4_REG 0xFF54 +DEF _HDMA5_REG 0xFF55 +DEF _RP_REG 0xFF56 +DEF _BCPS_REG 0xFF68 +DEF _BCPD_REG 0xFF69 +DEF _OCPS_REG 0xFF6A +DEF _OCPD_REG 0xFF6B +DEF _SVBK_REG 0xFF70 +DEF _PCM12_REG 0xFF76 +DEF _PCM34_REG 0xFF77 +DEF .refresh_OAM 0xFF80 +DEF __HRAM 0xFF80 +DEF _IE_REG 0xFFFF +DEF s__CODE_1 0x14000 +DEF s__CODE_2 0x24000 +DEF s__CODE_3 0x34000 +DEF s__CODE_4 0x44000 +DEF s__CODE_5 0x54000 +DEF s__CODE_6 0x64000 +DEF s__CODE_7 0x74000 +DEF s__CODE_8 0x84000 +DEF s__CODE_9 0x94000 +DEF ___HandleCrash 0x200 +DEF _SIO_send_byte 0x20A +DEF _SIO_receive 0x21D +DEF _GetWinAddr 0x22E +DEF _GetBkgAddr 0x236 +DEF _state_init 0x244 +DEF _state_update 0x249 +DEF _ui_time_masks 0x26B +DEF _ui_print_shift_char 0x273 +DEF _ui_draw_frame_row 0x2F6 +DEF .ui_draw_frame_row 0x2FF +DEF _script_cmds 0x328 +DEF _save_signature 0x560 +DEF _start_scene_x 0x564 +DEF _start_scene_y 0x566 +DEF _start_scene_dir 0x568 +DEF _start_scene 0x569 +DEF _start_player_move_speed 0x56C +DEF _start_player_anim_tick 0x56D +DEF _ui_fonts 0x56E +DEF _core_reset_hook 0x571 +DEF _main 0x579 +DEF _state_start_fns 0x581 +DEF _state_update_fns 0x587 +DEF _hUGE_init 0x58D +DEF hUGE_init 0x58F +DEF _hUGE_mute_channel 0x5E5 +DEF hUGE_mute_channel 0x5E7 +DEF _hUGE_set_position 0x835 +DEF hUGE_set_position 0x837 +DEF _hUGE_dosound 0x9FC +DEF hUGE_dosound 0x9FC +DEF _get_vram_byte 0xD28 +DEF _get_win_tile_xy 0xD30 +DEF _get_bkg_tile_xy 0xD38 +DEF _set_sprite_palette 0xD5F +DEF _set_bkg_palette 0xD64 +DEF .set_palette 0xD67 +DEF _set_sprite_palette_entry 0xD86 +DEF _set_bkg_palette_entry 0xD8B +DEF .set_palette_entry 0xD8E +DEF _hide_sprites_range 0xDAA +DEF __mulsuchar 0xDD9 +DEF __muluschar 0xDDC +DEF __mulschar 0xDE5 +DEF __mulint 0xDED +DEF __muluchar 0xE0C +DEF _set_vram_byte 0xE1E +DEF _set_win_tile_xy 0xE27 +DEF _set_bkg_tile_xy 0xE30 +DEF .sgb_check 0xE5F +DEF _sgb_check 0xE5F +DEF _sgb_transfer 0xEA7 +DEF .sgb_transfer 0xEAC +DEF .copy_vram 0xEED +DEF _get_data 0xEF3 +DEF _set_data 0xEF3 +DEF _vmemcpy 0xEF3 +DEF ___move_metasprite 0xF41 +DEF ___memcpy 0xF7E +DEF _memcpy 0xF7E +DEF _cpu_slow 0xFB0 +DEF _cpu_fast 0xFCB +DEF __divsuchar 0xFD2 +DEF __modsuchar 0xFD8 +DEF __divuschar 0xFE1 +DEF __moduschar 0xFEA +DEF __divschar 0xFF6 +DEF __modschar 0xFFB +DEF __divsint 0x1002 +DEF __modsint 0x100B +DEF __divuchar 0x1017 +DEF __moduchar 0x101C +DEF __divuint 0x1023 +DEF __moduint 0x102C +DEF .div8 0x1038 +DEF .mod8 0x1038 +DEF .div16 0x1040 +DEF .mod16 0x1040 +DEF .divu8 0x1076 +DEF .modu8 0x1076 +DEF .divu16 0x1079 +DEF .modu16 0x1079 +DEF .call_hl 0x20 +DEF .MemsetSmall 0x28 +DEF .MemcpySmall 0x30 +DEF .int 0x80 +DEF _wait_int_handler 0x8F +DEF __standard_VBL_handler 0x9C +DEF _refresh_OAM 0xAB +DEF _set_interrupts 0xCC +DEF .reset 0x150 +DEF _reset 0x150 +DEF .code_start 0x157 +DEF _exit 0x1B9 +DEF .wait_vbl_done 0x1BD +DEF _vsync 0x1BD +DEF _wait_vbl_done 0x1BD +DEF .remove_VBL 0x1CD +DEF _remove_VBL 0x1CD +DEF .remove_int 0x1D0 +DEF .add_VBL 0x1ED +DEF _add_VBL 0x1ED +DEF .add_int 0x1F0 +DEF .memset_simple 0x10B9 +DEF .memcpy_simple 0x10C2 +DEF .display_off 0x10DF +DEF _display_off 0x10DF +DEF _actors_update 0x10F7 +DEF _SetBankedBkgData 0x155D +DEF _SetBankedSpriteData 0x1579 +DEF _SetBankedBkgTiles 0x1595 +DEF _SetBankedWinTiles 0x15B1 +DEF _ReadBankedFarPtr 0x15CD +DEF _ReadBankedUWORD 0x15EF +DEF _MemcpyBanked 0x1609 +DEF _MemcpyVRAMBanked 0x162B +DEF _IndexOfFarPtr 0x165A +DEF _camera_update 0x16DF +DEF _load_animations 0x1812 +DEF _events_update 0x186B +DEF _timers_update 0x193E +DEF _input_update 0x19C7 +DEF .sio_ISR 0x19EA +DEF .timer_ISR 0x1A44 +DEF _simple_LCD_isr 0x1A59 +DEF _fullscreen_LCD_isr 0x1AD8 +DEF _VBL_isr 0x1B04 +DEF _isqrt 0x1B4E +DEF _sine_wave 0x1BAB +DEF _dir_lookup 0x1CAB +DEF _dir_angle_lookup 0x1CB3 +DEF _hUGETrackerRoutine 0x1CB7 +DEF _music_events_update 0x1CDE +DEF _music_play_isr 0x1D60 +DEF _parallax_LCD_isr 0x1E01 +DEF _projectiles_update 0x1E3E +DEF _projectiles_render 0x22BF +DEF _scroll_load_pending_row 0x2414 +DEF _scroll_load_row 0x249A +DEF _scroll_load_col 0x250F +DEF _scroll_load_pending_col 0x2578 +DEF _set_bkg_submap 0x2600 +DEF _set_xy_win_submap 0x2643 +DEF .set_xy_win_submap 0x2670 +DEF .set_xy_bkg_submap 0x2679 +DEF .set_xy_submap 0x2688 +DEF _sfx_play_isr 0x26D4 +DEF _on_SIO_receive 0x27AD +DEF _SIO_update 0x27EE +DEF _ui_update 0x2855 +DEF _vm_sgb_transfer 0x298D +DEF _vm_load_text 0x29DA +DEF _vm_switch 0x2C30 +DEF _vm_beginthread 0x2D61 +DEF _vm_rpn 0x2E85 +DEF _vm_get_far 0x389D +DEF _vm_call_native 0x390B +DEF _VM_STEP 0x391E +DEF _script_runner_update 0x3988 +DEF _fill_win_rect 0x3AED +DEF _rand 0x3AFF +DEF _randw 0x3AFF +DEF _initrand 0x3B2A +DEF .initrand 0x3B2C +DEF _get_bkg_data 0x3B35 +DEF _get_win_data 0x3B35 +DEF _get_sprite_data 0x3B82 +DEF _abs 0x3BB5 +DEF _set_win_tiles 0x3BC2 +DEF _set_tile_data 0x3BD6 +DEF _set_bkg_data 0x3BDB +DEF _set_win_data 0x3BDB +DEF _set_sprite_data 0x3BE3 +DEF _reverse 0x3C13 +DEF ___call__banked 0x3C47 +DEF _to_far_ptr 0x3C64 +DEF .add_LCD 0x3C9A +DEF _add_LCD 0x3C9A +DEF .remove_LCD 0x3CA0 +DEF _remove_LCD 0x3CA0 +DEF .fill_rect_wtt 0x3CA6 +DEF .fill_rect_btt 0x3CAF +DEF _fill_bkg_rect 0x3CFC +DEF .padup 0x3D0E +DEF _waitpadup 0x3D0E +DEF .jpad 0x3D1E +DEF _joypad 0x3D1E +DEF _waitpad 0x3D46 +DEF .wait_pad 0x3D47 +DEF ___sdcc_call_hl 0x3D4E +DEF _memset 0x3D4F +DEF .set_xy_wtt 0x3D82 +DEF .set_xy_btt 0x3D8B +DEF .set_xy_tt 0x3D9A +DEF ___sdcc_bcall_ehl 0x3DDE +DEF _set_bkg_tiles 0x3DF8 +DEF gsinit 0x3E24 +DEF __cpu 0xC0A0 +DEF __is_GBA 0xC0A1 +DEF .mode 0xC0A2 +DEF .sys_time 0xC0A3 +DEF _sys_time 0xC0A3 +DEF .int_0x40 0xC0A5 +DEF _actors 0xC0B1 +DEF _actors_active_head 0xC4F5 +DEF _actors_active_tail 0xC4F7 +DEF _actors_inactive_head 0xC4F9 +DEF _screen_x 0xC4FB +DEF _screen_y 0xC4FC +DEF _invalid 0xC4FD +DEF _player_moving 0xC4FF +DEF _player_iframes 0xC500 +DEF _player_collision_actor 0xC501 +DEF _emote_actor 0xC503 +DEF _emote_timer 0xC505 +DEF _allocated_sprite_tiles 0xC506 +DEF _allocated_hardware_sprites 0xC507 +DEF _camera_x 0xC514 +DEF _camera_y 0xC516 +DEF _camera_offset_x 0xC518 +DEF _camera_offset_y 0xC519 +DEF _camera_deadzone_x 0xC51A +DEF _camera_deadzone_y 0xC51B +DEF _camera_settings 0xC51C +DEF _current_scene 0xC520 +DEF _image_bank 0xC523 +DEF _image_ptr 0xC524 +DEF _image_attr_bank 0xC526 +DEF _image_attr_ptr 0xC527 +DEF _collision_bank 0xC529 +DEF _collision_ptr 0xC52A +DEF _image_tile_width 0xC52C +DEF _image_tile_height 0xC52D +DEF _image_width 0xC52E +DEF _image_height 0xC530 +DEF _sprites_len 0xC532 +DEF _actors_len 0xC533 +DEF _projectiles_len 0xC534 +DEF _player_sprite_len 0xC535 +DEF _scene_type 0xC536 +DEF _scene_LCD_type 0xC537 +DEF _scene_stack 0xC538 +DEF _scene_stack_ptr 0xC578 +DEF _scene_sprites_base_tiles 0xC57A +DEF _input_events 0xC5BA +DEF _input_slots 0xC5E2 +DEF _timer_events 0xC5EA +DEF _timer_values 0xC5FE +DEF _fade_running 0xC606 +DEF _fade_frames_per_step 0xC607 +DEF _fade_timer 0xC608 +DEF _joypads 0xC610 +DEF _frame_joy 0xC615 +DEF _last_joy 0xC616 +DEF _recent_joy 0xC617 +DEF _SIO_status 0xC618 +DEF _link_byte_sent 0xC619 +DEF _link_next_mode 0xC61A +DEF _save_blob_size 0xC61B +DEF _routine_queue 0xC61D +DEF _routine_queue_head 0xC621 +DEF _routine_queue_tail 0xC622 +DEF _music_events 0xC623 +DEF _music_current_track_bank 0xC637 +DEF _music_mute_mask 0xC638 +DEF _music_effective_mute 0xC639 +DEF _music_next_track 0xC63A +DEF _music_current_track 0xC63C +DEF _music_play_isr_counter 0xC63E +DEF _music_play_isr_pause 0xC63F +DEF _music_global_mute_mask 0xC640 +DEF _music_sfx_priority 0xC641 +DEF _DMG_palette 0xC642 +DEF _SprPalette 0xC645 +DEF _parallax_rows 0xC685 +DEF _parallax_row 0xC697 +DEF _projectiles 0xC699 +DEF _projectile_defs 0xC752 +DEF _projectiles_active_head 0xC7C5 +DEF _projectiles_inactive_head 0xC7C7 +DEF _scroll_x 0xC7CE +DEF _scroll_y 0xC7D0 +DEF _draw_scroll_x 0xC7D2 +DEF _draw_scroll_y 0xC7D4 +DEF _scroll_x_max 0xC7D6 +DEF _scroll_y_max 0xC7D8 +DEF _scroll_offset_x 0xC7DA +DEF _scroll_offset_y 0xC7DB +DEF _pending_h_x 0xC7DC +DEF _pending_h_y 0xC7DD +DEF _pending_h_i 0xC7DE +DEF _pending_w_x 0xC7DF +DEF _pending_w_y 0xC7E0 +DEF _pending_w_i 0xC7E1 +DEF _current_row 0xC7E2 +DEF _new_row 0xC7E4 +DEF _current_col 0xC7E6 +DEF _new_col 0xC7E8 +DEF .image_tile_width 0xC7EA +DEF _sfx_play_bank 0xC7EB +DEF _sfx_play_sample 0xC7EC +DEF _sfx_frame_skip 0xC7EE +DEF _link_operation_mode 0xC7EF +DEF _link_packet 0xC7F0 +DEF _link_packet_len 0xC810 +DEF _link_packet_ptr 0xC811 +DEF _link_packet_received 0xC813 +DEF _link_packet_snd_len 0xC814 +DEF _link_packet_snd_ptr 0xC815 +DEF _link_packet_sent 0xC817 +DEF __is_CGB 0xC818 +DEF __is_SGB 0xC819 +DEF __current_ram_bank 0xC81A +DEF _triggers 0xC81B +DEF _last_trigger_tx 0xC913 +DEF _last_trigger_ty 0xC914 +DEF _last_trigger 0xC915 +DEF _win_pos_x 0xC916 +DEF _win_dest_pos_x 0xC917 +DEF _win_pos_y 0xC918 +DEF _win_dest_pos_y 0xC919 +DEF _win_speed 0xC91A +DEF _text_drawn 0xC91B +DEF _current_text_speed 0xC91C +DEF _text_options 0xC91D +DEF _text_in_speed 0xC91E +DEF _text_out_speed 0xC91F +DEF _text_draw_speed 0xC920 +DEF _text_ff_joypad 0xC921 +DEF _text_ff 0xC922 +DEF _text_bkg_fill 0xC923 +DEF _ui_text_data 0xC924 +DEF _vwf_current_mask 0xCA2E +DEF _vwf_current_rotate 0xCA2F +DEF _vwf_inverse_map 0xCA30 +DEF _vwf_direction 0xCA31 +DEF _vwf_current_font_desc 0xCA32 +DEF _vwf_current_font_bank 0xCA3A +DEF _vwf_current_font_idx 0xCA3B +DEF _text_render_base_addr 0xCA3C +DEF _text_scroll_addr 0xCA3E +DEF _text_scroll_width 0xCA40 +DEF _text_scroll_height 0xCA41 +DEF _text_scroll_fill 0xCA42 +DEF _text_sound_mask 0xCA43 +DEF _text_sound_bank 0xCA44 +DEF _text_sound_data 0xCA45 +DEF _overlay_priority 0xCA47 +DEF _text_palette 0xCA48 +DEF __itoa_fmt_len 0xCA4F +DEF .itoa_fmt_buf 0xCA50 +DEF _CTXS 0xCA53 +DEF _first_ctx 0xCB83 +DEF _free_ctxs 0xCB85 +DEF _old_executing_ctx 0xCB87 +DEF _executing_ctx 0xCB89 +DEF _vm_lock_state 0xCB8B +DEF _vm_loaded_state 0xCB8C +DEF _vm_exception_code 0xCB8D +DEF _vm_exception_params_length 0xCB8E +DEF _vm_exception_params_bank 0xCB8F +DEF _vm_exception_params_offset 0xCB90 +DEF _script_memory 0xCB94 +DEF _topdown_grid 0xD99A +DEF ___rand_seed 0xD99B +DEF _hUGE_current_wave 0xD9B9 +DEF hUGE_current_wave 0xD9B9 +DEF _hUGE_mute_mask 0xD9BA +DEF ___call_banked_addr 0xDA01 +DEF ___call_banked_ptr 0xDA01 +DEF ___call_banked_bank 0xDA03 +DEF .int_0x48 0xDA05 +DEF ___current_metasprite 0xDA0D +DEF ___current_base_tile 0xDA0F +DEF ___current_base_prop 0xDA10 +DEF _fade_style 0xDA11 +DEF _game_time 0xDA12 +DEF _PRN_PKT_START 0xDA13 +DEF _hide_sprites 0xDA21 +DEF _show_actors_on_overlay 0xDA22 +DEF _overlay_cut_scanline 0xDA23 +DEF __submap_tile_offset 0xDA24 +DEF _triggers_len 0xDA25 +DEF _exchange_state 0xDA26 +DEF ___render_shadow_OAM 0xDA27 +DEF __map_tile_offset 0xDA28 +DEF __current_bank 0xFF90 +DEF __shadow_OAM_base 0xFF92 +DEF ___func_ACTOR 0x34000 +DEF _actors_init 0x34000 +DEF _emote_offsets 0x3403A +DEF _emote_metasprite 0x34049 +DEF _player_init 0x34055 +DEF _deactivate_actor 0x3407B +DEF _activate_actor 0x341DC +DEF _activate_actors_in_row 0x3431B +DEF _activate_actors_in_col 0x34412 +DEF _actor_set_frames 0x34563 +DEF _actor_set_frame_offset 0x345B9 +DEF _actor_get_frame_offset 0x345F4 +DEF _actor_set_anim_idle 0x34606 +DEF _actor_set_anim_moving 0x34634 +DEF _actor_set_dir 0x34665 +DEF _actor_at_tile 0x346CA +DEF _actor_in_front_of_player 0x3479E +DEF _actor_overlapping_player 0x34852 +DEF _actor_overlapping_bb 0x34A61 +DEF _actors_handle_player_collision 0x34CDF +DEF _check_collision_in_direction 0x34D6B +DEF _projectiles_init 0x35589 +DEF _projectile_launch 0x355B8 +DEF ___func_bg_outside_cgb_tileset 0x359B2 +DEF _bg_outside_cgb_tileset 0x359B2 +DEF ___func_scene_1_collisions 0x36944 +DEF _scene_1_collisions 0x36944 +DEF ___func_scene_1 0x37FC4 +DEF _scene_1 0x37FC4 +DEF _bootstrap_script 0x94000 +DEF _camera_init 0x9400B +DEF _input_init 0x94031 +DEF _remove_LCD_ISRs 0x94057 +DEF _parallax_init 0x94072 +DEF _SIO_init 0x94092 +DEF _actor_10_interact 0x940BB +DEF GBVM$actor_10_interact$40c24373_c89b_48b7_8e43_8db8475b9348$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$aee1cb1f_6730_409d_9ee8_5b9dd177047d$script 0x940BC +DEF _actor_11_interact 0x940F0 +DEF GBVM$actor_11_interact$456de86c_7c7f_4560_bdef_290df4586a70$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$ce0e96fc_f3ac_46bd_8ed3_90bc9825dd5f$script 0x940F1 +DEF _actor_12_interact 0x94125 +DEF GBVM$actor_12_interact$fc3d2f59_7199_4b28_95c4_89ac80cf684e$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$dc4cd5c2_1f3f_4b67_851d_fb098c932dc2$script 0x94126 +DEF _actor_13_interact 0x94158 +DEF GBVM$actor_13_interact$aea1309f_00d7_47b2_806f_bb52423d5b0a$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$ba3fc0a2_47fa_4c41_acd8_31b0a38581b7$script 0x94159 +DEF _actor_4_interact 0x9418C +DEF GBVM$actor_4_interact$66ba34f7_d5df_4404_bb51_fb6ab49ab1a0$d066371f_e6a9_47e8_8a59_7047b304183a$actor$b9fd705b_a0d5_4c96_a192_c90150128788$script 0x9418D +DEF _actor_6_interact 0x941C4 +DEF GBVM$actor_6_interact$3a7a7459_dc53_45cc_8ab8_13997be6a5a9$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$fabbe3c3_b3a8_455e_8828_24280cc3ab33$script 0x941C5 +DEF _actor_9_interact 0x941FD +DEF GBVM$actor_9_interact$a251238e_2259_45e5_8e4f_067404a8307f$569043a6_e0fa_49c6_8a7f_c7ad900fac6d$actor$86d3719a_f588_49d1_ba39_8a1fb89358ac$script 0x941FE +DEF ___func_bg_cave 0x94228 +DEF _bg_cave 0x94228 +DEF ___func_bg_endscreen 0x94236 +DEF _bg_endscreen 0x94236 +DEF ___func_bg_fate6housef2 0x94244 +DEF _bg_fate6housef2 0x94244 +DEF ___func_bg_house_wide 0x94252 +DEF _bg_house_wide 0x94252 +DEF ___func_bg_house 0x94260 +DEF _bg_house 0x94260 +DEF ___func_bg_housef2 0x9426E +DEF _bg_housef2 0x9426E +DEF ___func_bg_lab1 0x9427C +DEF _bg_lab1 0x9427C +DEF ___func_bg_logoscreen 0x9428A +DEF _bg_logoscreen 0x9428A +DEF ___func_bg_outside 0x94298 +DEF _bg_outside 0x94298 +DEF ___func_bg_overworld_test_1 0x942A6 +DEF _bg_overworld_test_1 0x942A6 +DEF ___func_bg_questscreen 0x942B4 +DEF _bg_questscreen 0x942B4 +DEF ___func_bg_slighhousef2 0x942C2 +DEF _bg_slighhousef2 0x942C2 +DEF ___func_bg_titlescreen 0x942D0 +DEF _bg_titlescreen 0x942D0 +DEF ___func_scene_1_sprites 0x942DE +DEF _scene_1_sprites 0x942DE +DEF _scene_10_init 0x942E4 +DEF GBVM$scene_10_init$autofade$a2e1f3c3_e2fe_43be_a57c_272747abb3d6$scene$a2e1f3c3_e2fe_43be_a57c_272747abb3d6$script 0x942E5 +DEF ___func_scene_10 0x942F1 +DEF _scene_10 0x942F1 +DEF _scene_11_init 0x9432C +DEF GBVM$scene_11_init$18f66311_1d25_4939_89d0_1a2f8d2b0ede$9df635c6_1e51_4cdf_8f04_367786d748ae$scene$9df635c6_1e51_4cdf_8f04_367786d748ae$script 0x9432D +DEF GBVM$scene_11_init$55e2f8e8_c3d1_4436_a6bd_426fda728eb5$9df635c6_1e51_4cdf_8f04_367786d748ae$scene$9df635c6_1e51_4cdf_8f04_367786d748ae$script 0x94331 +DEF GBVM$scene_11_init$autofade$9df635c6_1e51_4cdf_8f04_367786d748ae$scene$9df635c6_1e51_4cdf_8f04_367786d748ae$script 0x94335 +DEF ___func_scene_11 0x94341 +DEF _scene_11 0x94341 +DEF _scene_12_init 0x9437C +DEF GBVM$scene_12_init$e54106ac_22c4_4e25_8a7a_43ddeb299e0f$961b9a60_e2d2_4dc4_a52b_577e08d087e1$scene$961b9a60_e2d2_4dc4_a52b_577e08d087e1$script 0x9437D +DEF GBVM$scene_12_init$00b1d631_23ed_45ba_9da3_358ec58d202b$961b9a60_e2d2_4dc4_a52b_577e08d087e1$scene$961b9a60_e2d2_4dc4_a52b_577e08d087e1$script 0x94388 +DEF GBVM_END$scene_12_init$00b1d631_23ed_45ba_9da3_358ec58d202b 0x94390 +DEF ___func_scene_12 0x94391 +DEF _scene_12 0x94391 +DEF _scene_13_init 0x943CC +DEF GBVM$scene_13_init$5629f726_8477_4a0e_a96f_6e19decd5959$80bdf4ec_1fcb_48d8_9633_5d55cbbd72b7$scene$80bdf4ec_1fcb_48d8_9633_5d55cbbd72b7$script 0x943CD +DEF GBVM$scene_13_init$autofade$80bdf4ec_1fcb_48d8_9633_5d55cbbd72b7$scene$80bdf4ec_1fcb_48d8_9633_5d55cbbd72b7$script 0x943D5 +DEF GBVM_END$scene_13_init$5629f726_8477_4a0e_a96f_6e19decd5959 0x943D5 +DEF ___func_scene_13 0x943E1 +DEF _scene_13 0x943E1 +DEF ___func_scene_14_actors 0x9441C +DEF _scene_14_actors 0x9441C +DEF _scene_14_init 0x94450 +DEF GBVM$scene_14_init$8bc3a7b3_146c_4705_915d_dc13b8e1dabb$7cb69bbf_989e_4401_9f8b_38ddfae44607$scene$7cb69bbf_989e_4401_9f8b_38ddfae44607$script 0x94451 +DEF GBVM$scene_14_init$8ed90e1e_1d2a_4eba_a2e2_4f3bbf090161$7cb69bbf_989e_4401_9f8b_38ddfae44607$scene$7cb69bbf_989e_4401_9f8b_38ddfae44607$script 0x94455 +DEF GBVM$scene_14_init$autofade$7cb69bbf_989e_4401_9f8b_38ddfae44607$scene$7cb69bbf_989e_4401_9f8b_38ddfae44607$script 0x94459 +DEF ___func_scene_14_triggers 0x94465 +DEF _scene_14_triggers 0x94465 +DEF ___func_scene_14 0x9446D +DEF _scene_14 0x9446D +DEF ___func_scene_15_sprites 0x944A8 +DEF _scene_15_sprites 0x944A8 +DEF ___func_scene_15 0x944AB +DEF _scene_15 0x944AB +DEF _scene_16_init 0x944E6 +DEF GBVM$scene_16_init$044790ae_56ab_4675_9bf6_75abcb3c62a7$59d0b5cf_e06d_4bd5_842d_53db6061f1e9$scene$59d0b5cf_e06d_4bd5_842d_53db6061f1e9$script 0x944E9 +DEF GBVM$scene_16_init$278aa91b_0725_4191_b768_1599d86a7462$59d0b5cf_e06d_4bd5_842d_53db6061f1e9$scene$59d0b5cf_e06d_4bd5_842d_53db6061f1e9$script 0x944F1 +DEF GBVM$scene_16_init$autofade$59d0b5cf_e06d_4bd5_842d_53db6061f1e9$scene$59d0b5cf_e06d_4bd5_842d_53db6061f1e9$script 0x944F5 +DEF ___func_scene_16 0x94501 +DEF _scene_16 0x94501 +DEF ___func_scene_17_actors 0x9453C +DEF _scene_17_actors 0x9453C +DEF _scene_17_init 0x94570 +DEF GBVM$scene_17_init$3410b154_9bf8_4dce_ad64_1a05a50dc2cd$a1bfb5e1_0f44_49f4_8c94_62e2ab871548$scene$a1bfb5e1_0f44_49f4_8c94_62e2ab871548$script 0x94571 +DEF GBVM$scene_17_init$autofade$a1bfb5e1_0f44_49f4_8c94_62e2ab871548$scene$a1bfb5e1_0f44_49f4_8c94_62e2ab871548$script 0x94579 +DEF GBVM_END$scene_17_init$3410b154_9bf8_4dce_ad64_1a05a50dc2cd 0x94579 +DEF ___func_scene_17_sprites 0x94585 +DEF _scene_17_sprites 0x94585 +DEF ___func_scene_17_triggers 0x94588 +DEF _scene_17_triggers 0x94588 +DEF ___func_scene_17 0x94590 +DEF _scene_17 0x94590 +DEF ___func_scene_2_actors 0x945CB +DEF _scene_2_actors 0x945CB +DEF _scene_2_init 0x945FF +DEF GBVM$scene_2_init$7f8cfc5c_64c4_45f9_a36f_d226ab2c3501$921aae93_e5d5_4664_b838_f38008dd14a7$scene$921aae93_e5d5_4664_b838_f38008dd14a7$script 0x94600 +DEF GBVM$scene_2_init$139e6760_d53c_45a4_8b03_8c7feed79266$921aae93_e5d5_4664_b838_f38008dd14a7$scene$921aae93_e5d5_4664_b838_f38008dd14a7$script 0x94604 +DEF GBVM$scene_2_init$autofade$921aae93_e5d5_4664_b838_f38008dd14a7$scene$921aae93_e5d5_4664_b838_f38008dd14a7$script 0x94608 +DEF ___func_scene_2_sprites 0x94614 +DEF _scene_2_sprites 0x94614 +DEF ___func_scene_2_triggers 0x94617 +DEF _scene_2_triggers 0x94617 +DEF ___func_scene_2 0x94627 +DEF _scene_2 0x94627 +DEF ___func_scene_3_actors 0x94662 +DEF _scene_3_actors 0x94662 +DEF _scene_3_init 0x94696 +DEF GBVM$scene_3_init$e22d6e45_c2d9_4258_8593_70aeed1f8f6c$7bc0030f_222d_4ec1_9d1e_e82ce34b52b9$scene$7bc0030f_222d_4ec1_9d1e_e82ce34b52b9$script 0x94697 +DEF GBVM$scene_3_init$28dd4168_d4f4_4b8e_a5d0_ddc791ab2008$7bc0030f_222d_4ec1_9d1e_e82ce34b52b9$scene$7bc0030f_222d_4ec1_9d1e_e82ce34b52b9$script 0x9469B +DEF GBVM$scene_3_init$autofade$7bc0030f_222d_4ec1_9d1e_e82ce34b52b9$scene$7bc0030f_222d_4ec1_9d1e_e82ce34b52b9$script 0x9469F +DEF ___func_scene_3_sprites 0x946AB +DEF _scene_3_sprites 0x946AB +DEF ___func_scene_3_triggers 0x946AE +DEF _scene_3_triggers 0x946AE +DEF ___func_scene_3 0x946B6 +DEF _scene_3 0x946B6 +DEF _scene_4_init 0x946F1 +DEF GBVM$scene_4_init$b5a81f5f_a2ad_46f5_b083_b50d7198386b$bae8f25c_fef2_46c0_ac97_024c3b883b83$scene$bae8f25c_fef2_46c0_ac97_024c3b883b83$script 0x946F2 +DEF GBVM$scene_4_init$d5d47b9d_feef_401d_8bc8_7f9d9e8db649$bae8f25c_fef2_46c0_ac97_024c3b883b83$scene$bae8f25c_fef2_46c0_ac97_024c3b883b83$script 0x946F6 +DEF GBVM$scene_4_init$autofade$bae8f25c_fef2_46c0_ac97_024c3b883b83$scene$bae8f25c_fef2_46c0_ac97_024c3b883b83$script 0x946FA +DEF ___func_scene_4_triggers 0x94706 +DEF _scene_4_triggers 0x94706 +DEF ___func_scene_4 0x9471E +DEF _scene_4 0x9471E +DEF ___func_scene_5_actors 0x94759 +DEF _scene_5_actors 0x94759 +DEF _scene_5_init 0x9478D +DEF GBVM$scene_5_init$94e5b63b_0b3b_4f29_8ce4_098f4936c039$ad0d9790_0584_4c0f_b00b_0028b4fc3de9$scene$ad0d9790_0584_4c0f_b00b_0028b4fc3de9$script 0x9478E +DEF GBVM$scene_5_init$d9181b4d_e7be_4bdc_9a84_06ab08198ebf$ad0d9790_0584_4c0f_b00b_0028b4fc3de9$scene$ad0d9790_0584_4c0f_b00b_0028b4fc3de9$script 0x94792 +DEF GBVM$scene_5_init$autofade$ad0d9790_0584_4c0f_b00b_0028b4fc3de9$scene$ad0d9790_0584_4c0f_b00b_0028b4fc3de9$script 0x94796 +DEF ___func_scene_5_sprites 0x947A2 +DEF _scene_5_sprites 0x947A2 +DEF ___func_scene_5_triggers 0x947A5 +DEF _scene_5_triggers 0x947A5 +DEF ___func_scene_5 0x947AD +DEF _scene_5 0x947AD +DEF ___func_scene_6_actors 0x947E8 +DEF _scene_6_actors 0x947E8 +DEF _scene_6_init 0x9481C +DEF GBVM$scene_6_init$b38e576e_e806_42a6_b06d_5bbc894656fa$26de2c26_0446_4df8_bb8d_e96ec5fa8aa5$scene$26de2c26_0446_4df8_bb8d_e96ec5fa8aa5$script 0x9481D +DEF GBVM$scene_6_init$67f7a844_bef6_4cc7_9d48_328a17b14c24$26de2c26_0446_4df8_bb8d_e96ec5fa8aa5$scene$26de2c26_0446_4df8_bb8d_e96ec5fa8aa5$script 0x94821 +DEF GBVM$scene_6_init$autofade$26de2c26_0446_4df8_bb8d_e96ec5fa8aa5$scene$26de2c26_0446_4df8_bb8d_e96ec5fa8aa5$script 0x94825 +DEF ___func_scene_6_sprites 0x94831 +DEF _scene_6_sprites 0x94831 +DEF ___func_scene_6_triggers 0x94834 +DEF _scene_6_triggers 0x94834 +DEF ___func_scene_6 0x9483C +DEF _scene_6 0x9483C +DEF ___func_scene_7_actors 0x94877 +DEF _scene_7_actors 0x94877 +DEF _scene_7_init 0x948AB +DEF GBVM$scene_7_init$e1732ea6_42d6_44e2_bba5_e0e7bf6f1f80$569043a6_e0fa_49c6_8a7f_c7ad900fac6d$scene$569043a6_e0fa_49c6_8a7f_c7ad900fac6d$script 0x948AC +DEF GBVM$scene_7_init$3975b612_ea6a_4cf2_a8ed_4c6ff23ac87e$569043a6_e0fa_49c6_8a7f_c7ad900fac6d$scene$569043a6_e0fa_49c6_8a7f_c7ad900fac6d$script 0x948B0 +DEF GBVM$scene_7_init$autofade$569043a6_e0fa_49c6_8a7f_c7ad900fac6d$scene$569043a6_e0fa_49c6_8a7f_c7ad900fac6d$script 0x948B4 +DEF ___func_scene_7_sprites 0x948C0 +DEF _scene_7_sprites 0x948C0 +DEF ___func_scene_7_triggers 0x948C3 +DEF _scene_7_triggers 0x948C3 +DEF ___func_scene_7 0x948CB +DEF _scene_7 0x948CB +DEF _scene_8_init 0x94906 +DEF GBVM$scene_8_init$60700987_6934_48c4_ba85_2081f52db1c0$d066371f_e6a9_47e8_8a59_7047b304183a$scene$d066371f_e6a9_47e8_8a59_7047b304183a$script 0x94907 +DEF GBVM$scene_8_init$329fbc56_4c91_4fcc_838d_80096720e2a5$d066371f_e6a9_47e8_8a59_7047b304183a$scene$d066371f_e6a9_47e8_8a59_7047b304183a$script 0x9490B +DEF GBVM$scene_8_init$autofade$d066371f_e6a9_47e8_8a59_7047b304183a$scene$d066371f_e6a9_47e8_8a59_7047b304183a$script 0x9490F +DEF ___func_scene_8_sprites 0x9491B +DEF _scene_8_sprites 0x9491B +DEF ___func_scene_8_triggers 0x94921 +DEF _scene_8_triggers 0x94921 +DEF ___func_scene_8 0x94931 +DEF _scene_8 0x94931 +DEF _scene_9_init 0x9496C +DEF GBVM$scene_9_init$eb25df35_0d3a_4e0a_898c_5972c5ee0d70$9722df94_3365_4fbe_92c2_788910f2c07e$scene$9722df94_3365_4fbe_92c2_788910f2c07e$script 0x9496D +DEF GBVM$scene_9_init$e1f0c0ed_24f8_46f6_9f21_6e0c2cdae7d4$9722df94_3365_4fbe_92c2_788910f2c07e$scene$9722df94_3365_4fbe_92c2_788910f2c07e$script 0x94971 +DEF GBVM$scene_9_init$autofade$9722df94_3365_4fbe_92c2_788910f2c07e$scene$9722df94_3365_4fbe_92c2_788910f2c07e$script 0x94975 +DEF ___func_scene_9_triggers 0x94981 +DEF _scene_9_triggers 0x94981 +DEF ___func_scene_9 0x94989 +DEF _scene_9 0x94989 +DEF _script_engine_init 0x949C4 +DEF _script_input_4 0x949D8 +DEF GBVM$script_input_4$5202b387_b355_4b24_aac6_3909602aa8d3$961b9a60_e2d2_4dc4_a52b_577e08d087e1$scene$961b9a60_e2d2_4dc4_a52b_577e08d087e1$script 0x949DA +DEF GBVM$script_input_4$987cb2c9_e6d2_4db7_a185_ed1a91ff4794$961b9a60_e2d2_4dc4_a52b_577e08d087e1$scene$961b9a60_e2d2_4dc4_a52b_577e08d087e1$script 0x94A0C +DEF GBVM_END$script_input_4$987cb2c9_e6d2_4db7_a185_ed1a91ff4794 0x94A14 +DEF _script_input_6 0x94A15 +DEF GBVM$script_input_6$9ffc3716_9d92_4dbb_99e1_d89dcbc8cfd8$80bdf4ec_1fcb_48d8_9633_5d55cbbd72b7$scene$80bdf4ec_1fcb_48d8_9633_5d55cbbd72b7$script 0x94A17 +DEF _script_input 0x94A4A +DEF GBVM$script_input$7521920b_846a_479e_a0d2_a3465986ec11$aae81f2f_404d_41db_a9fd_32c62d07c37e$scene$aae81f2f_404d_41db_a9fd_32c62d07c37e$script 0x94A4C +DEF GBVM$script_input$0b41a76f_f0b9_4aeb_b340_75b55cf96f27$aae81f2f_404d_41db_a9fd_32c62d07c37e$scene$aae81f2f_404d_41db_a9fd_32c62d07c37e$script 0x94A4D +DEF ___func_sprite_cat_bank2_tileset 0x94A80 +DEF _sprite_cat_bank2_tileset 0x94A80 +DEF ___func_sprite_cat_tileset 0x94AA2 +DEF _sprite_cat_tileset 0x94AA2 +DEF ___func_sprite_cat 0x94AC4 +DEF _sprite_cat_metasprite_0 0x94AC4 +DEF _sprite_cat_metasprites 0x94AD0 +DEF _sprite_cat_animations 0x94AD2 +DEF _sprite_cat_animations_lookup 0x94AE2 +DEF _sprite_cat 0x94AE4 +DEF ___func_sprite_checkbox_bank2_tileset 0x94AF7 +DEF _sprite_checkbox_bank2_tileset 0x94AF7 +DEF ___func_sprite_checkbox_tileset 0x94B19 +DEF _sprite_checkbox_tileset 0x94B19 +DEF ___func_sprite_checkbox 0x94B3B +DEF _sprite_checkbox_metasprite_0 0x94B3B +DEF _sprite_checkbox_metasprite_1 0x94B43 +DEF _sprite_checkbox_metasprites 0x94B4B +DEF _sprite_checkbox_animations 0x94B4F +DEF _sprite_checkbox_animations_lookup 0x94B5F +DEF _sprite_checkbox 0x94B61 +DEF ___func_sprite_dog_bank2_tileset 0x94B74 +DEF _sprite_dog_bank2_tileset 0x94B74 +DEF ___func_sprite_dog_tileset 0x94B96 +DEF _sprite_dog_tileset 0x94B96 +DEF ___func_sprite_dog 0x94BB8 +DEF _sprite_dog_metasprite_0 0x94BB8 +DEF _sprite_dog_metasprites 0x94BC4 +DEF _sprite_dog_animations 0x94BC6 +DEF _sprite_dog_animations_lookup 0x94BD6 +DEF _sprite_dog 0x94BD8 +DEF ___func_sprite_sign_bank2_tileset 0x94BEB +DEF _sprite_sign_bank2_tileset 0x94BEB +DEF ___func_sprite_sign_tileset 0x94C0D +DEF _sprite_sign_tileset 0x94C0D +DEF ___func_sprite_sign 0x94C2F +DEF _sprite_sign_metasprite_0 0x94C2F +DEF _sprite_sign_metasprites 0x94C3B +DEF _sprite_sign_animations 0x94C3D +DEF _sprite_sign_animations_lookup 0x94C4D +DEF _sprite_sign 0x94C4F +DEF _spritesheet_none_metasprite 0x94C62 +DEF _spritesheet_none_metasprites 0x94C66 +DEF _spritesheet_none 0x94C68 +DEF _trigger_0_interact 0x94C7B +DEF GBVM$trigger_0_interact$07bf8d63_d8a0_4783_bc0c_c456b370adf2$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$2c48b235_de84_46f1_904f_9c8a8bc881ef$script 0x94C7E +DEF _trigger_1_interact 0x94CB1 +DEF GBVM$trigger_1_interact$0fa8d5be_cc09_4c6f_b077_61b0f65f0359$921aae93_e5d5_4664_b838_f38008dd14a7$trigger$d52f5d2f_32d9_4942_8b61_95a5354715b5$script 0x94CB4 +DEF _trigger_10_interact 0x94CE7 +DEF GBVM$trigger_10_interact$810b278d_0535_4859_a344_e9939cb30972$26de2c26_0446_4df8_bb8d_e96ec5fa8aa5$trigger$6ada3451_21c5_4292_8984_ebf433cf9690$script 0x94CEA +DEF _trigger_11_interact 0x94D1D +DEF GBVM$trigger_11_interact$0c489219_1f81_4d10_9515_023f509f0916$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$b8cec195_5b07_4bae_8f9c_d0bd352b9612$script 0x94D20 +DEF _trigger_12_interact 0x94D53 +DEF GBVM$trigger_12_interact$d992788e_ed58_4e4b_b79e_9c9aa9370b05$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$fb0247dd_d2b9_4726_8f53_fdc706bc7d30$script 0x94D56 +DEF _trigger_13_interact 0x94D89 +DEF GBVM$trigger_13_interact$6044fe83_789a_477f_8019_d765dacb98f3$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$f8a62862_c092_4523_9e03_531e7d340a59$script 0x94D8C +DEF _trigger_14_interact 0x94DBF +DEF GBVM$trigger_14_interact$e2c16bf7_2e00_4369_825c_955bcc0d5bc7$569043a6_e0fa_49c6_8a7f_c7ad900fac6d$trigger$550722c0_b20f_4b59_aa43_36ca231c1328$script 0x94DC2 +DEF _trigger_15_interact 0x94DF5 +DEF GBVM$trigger_15_interact$fb757d74_9da9_456d_9372_73f1a9fc57df$d066371f_e6a9_47e8_8a59_7047b304183a$trigger$9c8b6746_6f65_4880_ad08_3ef80d2bd493$script 0x94DF8 +DEF _trigger_17_interact 0x94E2B +DEF GBVM$trigger_17_interact$6ebaa0e6_1498_46b4_9391_ff6146b9ffbe$921aae93_e5d5_4664_b838_f38008dd14a7$trigger$3fb2ff62_e326_4610_a5b8_29c96f93c3a7$script 0x94E2E +DEF _trigger_18_interact 0x94E61 +DEF GBVM$trigger_18_interact$4466f80e_05b6_4e01_8b77_6b3abbf8b937$9722df94_3365_4fbe_92c2_788910f2c07e$trigger$9f2f5e6a_98dd_442a_a531_011471d48507$script 0x94E64 +DEF _trigger_19_interact 0x94E97 +DEF GBVM$trigger_19_interact$75eeb67c_39e6_414e_948f_0bdd27a1133c$bae8f25c_fef2_46c0_ac97_024c3b883b83$trigger$83a24d20_c295_4b18_905c_520e61556306$script 0x94E9A +DEF _trigger_2_interact 0x94ECD +DEF GBVM$trigger_2_interact$0fe0fc32_0063_41b0_a0f3_0de75d16cec5$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$6490e16f_1653_4b4b_a314_19828e814f10$script 0x94ED0 +DEF _trigger_20_interact 0x94F03 +DEF GBVM$trigger_20_interact$e838ec0c_772e_4718_b98b_575d4357dbad$9df635c6_1e51_4cdf_8f04_367786d748ae$trigger$3310d491_99c9_4e27_9917_b38424abf721$script 0x94F06 +DEF _trigger_21_interact 0x94F39 +DEF GBVM$trigger_21_interact$46acf315_3668_4cbd_802f_94b646b11390$d066371f_e6a9_47e8_8a59_7047b304183a$trigger$d4be8191_2290_4dc9_8d4f_6c1cd4c3ac52$script 0x94F3C +DEF _trigger_22_interact 0x94F6F +DEF GBVM$trigger_22_interact$4a9471e3_f922_4c45_92b6_1f860e907376$7cb69bbf_989e_4401_9f8b_38ddfae44607$trigger$94b7065d_1858_42f3_a016_e3766346b845$script 0x94F72 +DEF _trigger_24_interact 0x94FA5 +DEF GBVM$trigger_24_interact$f182511b_0cf9_4336_83bf_25036acbd726$a1bfb5e1_0f44_49f4_8c94_62e2ab871548$trigger$e905907d_76a4_456f_ae59_daef84155f98$script 0x94FA8 +DEF _trigger_3_interact 0x94FDB +DEF GBVM$trigger_3_interact$d52daab9_409b_43ed_9905_77008ea7e6c3$7bc0030f_222d_4ec1_9d1e_e82ce34b52b9$trigger$8d094c89_55b9_427a_b486_080d5717cc69$script 0x94FDE +DEF _trigger_4_interact 0x95011 +DEF GBVM$trigger_4_interact$4aaedc54_787c_49c7_9813_5617ce3b4002$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$5969b0d0_380b_4627_9bdf_1a137f18247a$script 0x95014 +DEF _trigger_5_interact 0x95047 +DEF GBVM$trigger_5_interact$c420a824_36f5_49f1_8dfd_a050d4aed13d$bae8f25c_fef2_46c0_ac97_024c3b883b83$trigger$19fadfdb_5c6e_43b0_8825_3275b4f64229$script 0x9504A +DEF _trigger_6_interact 0x9507D +DEF GBVM$trigger_6_interact$9ed4421d_7290_40b8_9764_dd9eadcd37c1$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$d186eaf4_fbae_45f3_9673_dd0ca9f7ec15$script 0x95080 +DEF _trigger_7_interact 0x950B3 +DEF GBVM$trigger_7_interact$d4cd17b2_b104_481f_8378_9ddf4d819cb9$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$aa54237c_f747_46eb_9795_45c824a86c07$script 0x950B6 +DEF _trigger_8_interact 0x950E9 +DEF GBVM$trigger_8_interact$f5798465_77f4_4c17_9c4d_f8bc2505ee7c$ad0d9790_0584_4c0f_b00b_0028b4fc3de9$trigger$f962e327_a798_4886_959b_ee0d77260892$script 0x950EC +DEF _logo_init 0x9511F +DEF _logo_update 0x9512F +DEF _core_reset 0x64000 +DEF _process_VM 0x64075 +DEF _core_run 0x642F3 +DEF _scroll_init 0x643CF +DEF _scroll_reset 0x643F9 +DEF _scroll_update 0x64419 +DEF _scroll_viewport 0x64550 +DEF _scroll_repaint 0x649E9 +DEF _scroll_render_rows 0x649F9 +DEF _scroll_queue_row 0x64A8F +DEF _scroll_queue_col 0x64AB1 +DEF ___func_VM_GAMEBOY 0x64AFC +DEF _vm_set_sprites_visible 0x64AFC +DEF _vm_input_wait 0x64B13 +DEF _vm_context_prepare 0x64B3C +DEF _vm_input_attach 0x64B67 +DEF _vm_input_detach 0x64B7D +DEF _vm_input_get 0x64B91 +DEF _vm_fade 0x64BC5 +DEF _vm_timer_prepare 0x64BF5 +DEF _vm_timer_set 0x64C20 +DEF _vm_timer_stop 0x64C3B +DEF _vm_timer_reset 0x64C4F +DEF _vm_get_tile_xy 0x64C66 +DEF _vm_replace_tile 0x64D3C +DEF _vm_poll 0x64DE7 +DEF _vm_set_sprite_mode 0x64EB9 +DEF _vm_replace_tile_xy 0x64ECD +DEF _vm_rumble 0x650AD +DEF _vm_load_tileset 0x650CD +DEF ___func_VM_MATH 0x6519E +DEF _vm_sin_scale 0x6519E +DEF _vm_cos_scale 0x6523A +DEF ___func_VM_UI 0x652D8 +DEF _vm_display_text 0x652D8 +DEF _vm_switch_text_layer 0x65341 +DEF _vm_overlay_setpos 0x6535B +DEF _vm_overlay_wait 0x65375 +DEF _vm_overlay_move_to 0x65405 +DEF _vm_overlay_set_scroll 0x65449 +DEF _vm_overlay_clear 0x65482 +DEF _vm_overlay_show 0x65554 +DEF _vm_choice 0x655A2 +DEF _vm_set_font 0x656BD +DEF _vm_overlay_scroll 0x656EC +DEF _vm_overlay_set_submap 0x6574D +DEF _vm_overlay_set_submap_ex 0x657B9 +DEF _vm_overlay_set_map 0x658BA +DEF _vm_set_text_sound 0x65A19 +DEF ___func_bg_fate6housef2_tileset 0x65A32 +DEF _bg_fate6housef2_tileset 0x65A32 +DEF ___func_bg_housef2_tileset 0x65E34 +DEF _bg_housef2_tileset 0x65E34 +DEF ___func_bg_outside_tilemap_attr 0x66236 +DEF _bg_outside_tilemap_attr 0x66236 +DEF ___func_bg_outside_tilemap 0x66636 +DEF _bg_outside_tilemap 0x66636 +DEF ___func_bg_overworld_test_1_tileset 0x66A36 +DEF _bg_overworld_test_1_tileset 0x66A36 +DEF ___func_bg_slighhousef2_tileset 0x67128 +DEF _bg_slighhousef2_tileset 0x67128 +DEF ___func_cursor_image 0x6752A +DEF _cursor_image 0x6752A +DEF ___func_scene_17_collisions 0x6753A +DEF _scene_17_collisions 0x6753A +DEF _topdown_init 0x6793A +DEF _topdown_update 0x679D6 +DEF ___HandleCrash_banked 0x74000 +DEF _CGBFadeToWhiteStep 0x74368 +DEF _CGBFadeToBlackStep 0x743A1 +DEF _ApplyPaletteChangeColor 0x743DC +DEF _fade_speeds 0x74419 +DEF _DMGFadeToWhiteStep 0x74420 +DEF _DMGFadeToBlackStep 0x74441 +DEF _ApplyPaletteChangeDMG 0x74464 +DEF _fade_init 0x744BA +DEF _fade_in 0x744DB +DEF _fade_out 0x74513 +DEF _fade_update 0x7454C +DEF _fade_applypalettechange 0x7459F +DEF _fade_setspeed 0x745B1 +DEF _fade_in_modal 0x745C1 +DEF _fade_out_modal 0x745DB +DEF _printer_send_receive 0x745F5 +DEF _printer_send_byte 0x7462B +DEF _printer_send_command 0x7463E +DEF _printer_print_tile 0x74661 +DEF _printer_wait 0x746F2 +DEF _gbprinter_detect 0x74724 +DEF _gbprinter_print_overlay 0x7473E +DEF _data_init 0x7490B +DEF _save_points 0x74956 +DEF _data_slot_address 0x749B6 +DEF _data_save 0x74A2E +DEF _data_load 0x74AEF +DEF _data_clear 0x74C03 +DEF _data_peek 0x74C30 +DEF _atan2 0x74CD1 +DEF _atan2_table 0x74E6A +DEF _set_sgb_border 0x74FD2 +DEF _trigger_reset 0x751BC +DEF _trigger_interact 0x751CC +DEF _trigger_activate_at 0x7520B +DEF _trigger_at_intersection 0x75256 +DEF _trigger_activate_at_intersection 0x7537D +DEF _trigger_at_tile 0x754BE +DEF ___func_VM_CAMERA 0x7554F +DEF _vm_camera_move_to 0x7554F +DEF _vm_camera_set_pos 0x757A2 +DEF _camera_shake_frames 0x757E9 +DEF ___func_VM_PALETTE 0x75918 +DEF _vm_load_palette 0x75918 +DEF _actor_0_interact 0x75AC1 +DEF GBVM$actor_0_interact$473d560c_78f6_47e9_8026_88b8d132453d$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$251f4519_9558_40f5_93d9_a0a2ac1047ab$script 0x75AC4 +DEF GBVM$actor_0_interact$1f0f62a7_ba8b_498d_911e_8dddc9787c9d$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$251f4519_9558_40f5_93d9_a0a2ac1047ab$script 0x75AD0 +DEF GBVM$actor_0_interact$99d2e956_8717_4cd4_a7db_e1493c5109dd$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$251f4519_9558_40f5_93d9_a0a2ac1047ab$script 0x75AD5 +DEF GBVM$actor_0_interact$9496b732_906e_4e96_9e14_52b38bd6547e$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$251f4519_9558_40f5_93d9_a0a2ac1047ab$script 0x75B04 +DEF GBVM$actor_0_interact$b0d5b211_3e4e_419b_9e68_854807ab2edf$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$251f4519_9558_40f5_93d9_a0a2ac1047ab$script 0x75B0F +DEF GBVM_END$actor_0_interact$473d560c_78f6_47e9_8026_88b8d132453d 0x75B0F +DEF GBVM$actor_0_interact$fb76c03c_b526_419e_9dc4_35c784908dde$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$251f4519_9558_40f5_93d9_a0a2ac1047ab$script 0x75B18 +DEF GBVM$actor_0_interact$1faccab1_7c3b_491a_8262_9bcf233a6767$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$251f4519_9558_40f5_93d9_a0a2ac1047ab$script 0x75B21 +DEF GBVM$actor_0_interact$679f315d_92fa_460c_8feb_5617944f7e74$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$251f4519_9558_40f5_93d9_a0a2ac1047ab$script 0x75B2D +DEF GBVM$actor_0_interact$5103d5e5_1cfa_437b_9d28_3c725dae18cd$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$251f4519_9558_40f5_93d9_a0a2ac1047ab$script 0x75BD3 +DEF GBVM$actor_0_interact$3a42fdaf_761f_4775_97ef_ac3774da0167$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$251f4519_9558_40f5_93d9_a0a2ac1047ab$script 0x75BD8 +DEF GBVM_END$actor_0_interact$1faccab1_7c3b_491a_8262_9bcf233a6767 0x75BDD +DEF GBVM_END$actor_0_interact$fb76c03c_b526_419e_9dc4_35c784908dde 0x75BE0 +DEF GBVM$actor_0_interact$e2992086_7ff0_4885_b5b7_58681eb2419c$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$251f4519_9558_40f5_93d9_a0a2ac1047ab$script 0x75BE3 +DEF GBVM_END$actor_0_interact$b0d5b211_3e4e_419b_9e68_854807ab2edf 0x75C7D +DEF _actor_5_interact 0x75C7E +DEF GBVM$actor_5_interact$f32bb834_59fd_4f0d_9df4_f914646f36f7$ad0d9790_0584_4c0f_b00b_0028b4fc3de9$actor$3fe18ce7_545b_4017_918a_f3c1e9bb22be$script 0x75C81 +DEF GBVM$actor_5_interact$0b32cb13_5560_45a7_87a2_007250d8fbd7$ad0d9790_0584_4c0f_b00b_0028b4fc3de9$actor$3fe18ce7_545b_4017_918a_f3c1e9bb22be$script 0x75CE8 +DEF GBVM$actor_5_interact$19fb6aa5_c36d_44fb_b6ca_3d643cb8e15b$ad0d9790_0584_4c0f_b00b_0028b4fc3de9$actor$3fe18ce7_545b_4017_918a_f3c1e9bb22be$script 0x75CED +DEF ___func_bg_cave_tilemap_attr 0x75D20 +DEF _bg_cave_tilemap_attr 0x75D20 +DEF ___func_bg_cave_tilemap 0x75E88 +DEF _bg_cave_tilemap 0x75E88 +DEF ___func_bg_endscreen_cgb_tileset 0x75FF0 +DEF _bg_endscreen_cgb_tileset 0x75FF0 +DEF ___func_bg_endscreen_tilemap_attr 0x761B2 +DEF _bg_endscreen_tilemap_attr 0x761B2 +DEF ___func_bg_endscreen_tilemap 0x7631A +DEF _bg_endscreen_tilemap 0x7631A +DEF ___func_bg_fate6housef2_tilemap_attr 0x76482 +DEF _bg_fate6housef2_tilemap_attr 0x76482 +DEF ___func_bg_fate6housef2_tilemap 0x765EA +DEF _bg_fate6housef2_tilemap 0x765EA +DEF ___func_bg_house_tileset 0x76752 +DEF _bg_house_tileset 0x76752 +DEF ___func_bg_house_wide_tilemap_attr 0x76A24 +DEF _bg_house_wide_tilemap_attr 0x76A24 +DEF ___func_bg_house_wide_tilemap 0x76C64 +DEF _bg_house_wide_tilemap 0x76C64 +DEF ___func_bg_house_wide_tileset 0x76EA4 +DEF _bg_house_wide_tileset 0x76EA4 +DEF ___func_bg_lab1_tilemap_attr 0x771F6 +DEF _bg_lab1_tilemap_attr 0x771F6 +DEF ___func_bg_lab1_tilemap 0x773D6 +DEF _bg_lab1_tilemap 0x773D6 +DEF ___func_scene_1_actors 0x775B6 +DEF _scene_1_actors 0x775B6 +DEF ___func_scene_2_collisions 0x77756 +DEF _scene_2_collisions 0x77756 +DEF ___func_scene_4_collisions 0x77996 +DEF _scene_4_collisions 0x77996 +DEF ___func_scene_6_collisions 0x77BD6 +DEF _scene_6_collisions 0x77BD6 +DEF ___func_scene_8_collisions 0x77DB6 +DEF _scene_8_collisions 0x77DB6 +DEF GBVM$script_1$d7c90f6e_4dc3_41fc_ba4f_a55d9054bb44$aae81f2f_404d_41db_a9fd_32c62d07c37e$scene$aae81f2f_404d_41db_a9fd_32c62d07c37e$script 0x77FF6 +DEF _script_1 0x77FF6 +DEF GBVM_END$script_1$d7c90f6e_4dc3_41fc_ba4f_a55d9054bb44 0x77FFE +DEF _load_init 0x54000 +DEF _spritesheet_none_far 0x54013 +DEF _load_bkg_tileset 0x54016 +DEF _load_background 0x540F3 +DEF _load_sprite 0x541B9 +DEF _load_bounds 0x5428F +DEF _do_load_palette 0x542AC +DEF _load_scene 0x54331 +DEF _load_player 0x54991 +DEF _load_emote 0x549DA +DEF ___func_VM_SIO 0x549F3 +DEF _vm_sio_set_mode 0x549F3 +DEF _vm_sio_exchange 0x54A05 +DEF ___func_bg_endscreen_tileset 0x54CE7 +DEF _bg_endscreen_tileset 0x54CE7 +DEF ___func_bg_questscreen_tileset 0x554E9 +DEF _bg_questscreen_tileset 0x554E9 +DEF ___func_font_gbs_mono 0x55C6B +DEF _font_gbs_mono 0x56A1B +DEF _song_rulz_outside_0_Data 0x574FA +DEF _song_rulz_spaceemergency_0_Data 0x57FE6 +DEF ___func_scene_14_sprites 0x57FFB +DEF _scene_14_sprites 0x57FFB +DEF _events_init 0x84000 +DEF _timers_init 0x84040 +DEF _save_sram_banks 0x840E8 +DEF _erase_flash 0x84170 +DEF _restore_sram_bank 0x84186 +DEF _restore_sram 0x841BC +DEF _save_sram 0x841D2 +DEF _music_init_driver 0x841FE +DEF _music_init_events 0x8425A +DEF _music_events_poll 0x84296 +DEF _music_pause 0x842BE +DEF _palette_init 0x842E0 +DEF _CGBZeroPalette 0x84317 +DEF _scroll_rect 0x8432C +DEF ___func_VM_LOAD_SAVE 0x84369 +DEF _vm_save_clear 0x84369 +DEF _vm_save_peek 0x84378 +DEF ___func_VM_MUSIC 0x843FA +DEF _vm_music_play 0x843FA +DEF _vm_music_stop 0x84447 +DEF _vm_music_mute 0x84469 +DEF _vm_music_routine 0x844A7 +DEF _vm_music_setpos 0x844CE +DEF _vm_sound_mastervol 0x844D4 +DEF _vm_sfx_play 0x844DA +DEF ___func_VM_PROJECTILE 0x8454D +DEF _vm_projectile_launch 0x8454D +DEF _vm_projectile_load_type 0x8458E +DEF ___func_VM_RTC 0x84620 +DEF _vm_rtc_latch 0x84620 +DEF _vm_rtc_get 0x84628 +DEF _vm_rtc_set 0x8468F +DEF _vm_rtc_start 0x846ED +DEF ___func_VM_SCENE 0x84710 +DEF _vm_scene_push 0x84710 +DEF _vm_scene_pop 0x84786 +DEF _vm_scene_pop_all 0x84794 +DEF _vm_scene_stack_reset 0x8479F +DEF _itoa_fmt 0x847A8 +DEF .utoa_fmt 0x847DC +DEF _actor_1_interact 0x84886 +DEF GBVM$actor_1_interact$b7eb01cb_8814_4d65_810a_d563df03e776$7bc0030f_222d_4ec1_9d1e_e82ce34b52b9$actor$0d9583bb_358d_4b3a_b4f7_7d208c443d80$script 0x84889 +DEF GBVM$actor_1_interact$9c774420_ae4f_431b_90d0_ec1a616256c0$7bc0030f_222d_4ec1_9d1e_e82ce34b52b9$actor$0d9583bb_358d_4b3a_b4f7_7d208c443d80$script 0x848EA +DEF _actor_14_interact 0x848F4 +DEF GBVM$actor_14_interact$70022942_fdc2_470c_94b3_ca28dfd7cc6e$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$02eb90b6_5c95_4242_9790_e02930615265$script 0x848F5 +DEF _actor_15_interact 0x84924 +DEF GBVM$actor_15_interact$31177c6a_f679_42d9_92b5_3d2785d713ab$d066371f_e6a9_47e8_8a59_7047b304183a$actor$66669fac_87c0_40a4_a7d1_e9bdfdecd364$script 0x84925 +DEF _actor_2_interact 0x8497E +DEF GBVM$actor_2_interact$049a13b7_6749_46ce_85c9_113f1025d94a$921aae93_e5d5_4664_b838_f38008dd14a7$actor$d00aa658_d2d7_47ff_8c12_ccc2efe4477f$script 0x8497F +DEF GBVM$actor_2_interact$ad1b9670_0b38_41f6_836d_d66428234134$921aae93_e5d5_4664_b838_f38008dd14a7$actor$d00aa658_d2d7_47ff_8c12_ccc2efe4477f$script 0x84988 +DEF GBVM$actor_2_interact$4783a794_d82b_42f1_acba_028785e24292$921aae93_e5d5_4664_b838_f38008dd14a7$actor$d00aa658_d2d7_47ff_8c12_ccc2efe4477f$script 0x84A2D +DEF GBVM$actor_2_interact$b4a8e402_8c4a_41c6_b963_b2e41920e625$921aae93_e5d5_4664_b838_f38008dd14a7$actor$d00aa658_d2d7_47ff_8c12_ccc2efe4477f$script 0x84A32 +DEF GBVM$actor_2_interact$cc3a5ed3_8c94_45cd_923e_22def1450b4a$921aae93_e5d5_4664_b838_f38008dd14a7$actor$d00aa658_d2d7_47ff_8c12_ccc2efe4477f$script 0x84A3A +DEF GBVM_END$actor_2_interact$049a13b7_6749_46ce_85c9_113f1025d94a 0x84A69 +DEF _actor_3_interact 0x84A6A +DEF GBVM$actor_3_interact$fc2374b0_dc83_4b05_b383_618bb3b818cc$26de2c26_0446_4df8_bb8d_e96ec5fa8aa5$actor$74b6298a_418b_4910_bc95_b697840e11b2$script 0x84A6D +DEF GBVM$actor_3_interact$38029e79_c31b_4ab8_87cd_c62873c3ec24$26de2c26_0446_4df8_bb8d_e96ec5fa8aa5$actor$74b6298a_418b_4910_bc95_b697840e11b2$script 0x84AA8 +DEF _actor_8_interact 0x84AB2 +DEF GBVM$actor_8_interact$f5e8edd7_b97a_4e2e_9464_7c4135a13168$aae81f2f_404d_41db_a9fd_32c62d07c37e$actor$88e581ff_b9a8_491b_8b4b_f99fbd53ce4f$script 0x84AB3 +DEF ___func_bg_house_tilemap_attr 0x84AFE +DEF _bg_house_tilemap_attr 0x84AFE +DEF ___func_bg_house_tilemap 0x84C66 +DEF _bg_house_tilemap 0x84C66 +DEF ___func_bg_housef2_tilemap_attr 0x84DCE +DEF _bg_housef2_tilemap_attr 0x84DCE +DEF ___func_bg_housef2_tilemap 0x84F36 +DEF _bg_housef2_tilemap 0x84F36 +DEF ___func_bg_logoscreen_tilemap_attr 0x8509E +DEF _bg_logoscreen_tilemap_attr 0x8509E +DEF ___func_bg_logoscreen_tilemap 0x85206 +DEF _bg_logoscreen_tilemap 0x85206 +DEF ___func_bg_questscreen_tilemap_attr 0x8536E +DEF _bg_questscreen_tilemap_attr 0x8536E +DEF ___func_bg_questscreen_tilemap 0x854D6 +DEF _bg_questscreen_tilemap 0x854D6 +DEF ___func_bg_slighhousef2_tilemap_attr 0x8563E +DEF _bg_slighhousef2_tilemap_attr 0x8563E +DEF ___func_bg_slighhousef2_tilemap 0x857A6 +DEF _bg_slighhousef2_tilemap 0x857A6 +DEF ___func_bg_titlescreen_tilemap_attr 0x8590E +DEF _bg_titlescreen_tilemap_attr 0x8590E +DEF ___func_bg_titlescreen_tilemap 0x85A76 +DEF _bg_titlescreen_tilemap 0x85A76 +DEF ___func_emote_love 0x85BDE +DEF _emote_love 0x85BDE +DEF ___func_frame_image 0x85C1E +DEF _frame_image 0x85C1E +DEF ___func_palette_0 0x85CAE +DEF _palette_0 0x85CAE +DEF ___func_palette_1 0x85CF1 +DEF _palette_1 0x85CF1 +DEF ___func_palette_10 0x85D34 +DEF _palette_10 0x85D34 +DEF ___func_palette_11 0x85D77 +DEF _palette_11 0x85D77 +DEF ___func_palette_12 0x85DBA +DEF _palette_12 0x85DBA +DEF ___func_palette_13 0x85DFD +DEF _palette_13 0x85DFD +DEF ___func_palette_2 0x85E40 +DEF _palette_2 0x85E40 +DEF ___func_palette_3 0x85E83 +DEF _palette_3 0x85E83 +DEF ___func_palette_4 0x85EC6 +DEF _palette_4 0x85EC6 +DEF ___func_palette_5 0x85F09 +DEF _palette_5 0x85F09 +DEF ___func_palette_6 0x85F4C +DEF _palette_6 0x85F4C +DEF ___func_palette_7 0x85F8F +DEF _palette_7 0x85F8F +DEF ___func_palette_8 0x85FD2 +DEF _palette_8 0x85FD2 +DEF ___func_palette_9 0x86015 +DEF _palette_9 0x86015 +DEF ___func_scene_1_triggers 0x86058 +DEF _scene_1_triggers 0x86058 +DEF ___func_scene_10_collisions 0x860A8 +DEF _scene_10_collisions 0x860A8 +DEF ___func_scene_11_collisions 0x86210 +DEF _scene_11_collisions 0x86210 +DEF ___func_scene_12_collisions 0x86378 +DEF _scene_12_collisions 0x86378 +DEF ___func_scene_13_collisions 0x864E0 +DEF _scene_13_collisions 0x864E0 +DEF ___func_scene_14_collisions 0x86648 +DEF _scene_14_collisions 0x86648 +DEF ___func_scene_15_actors 0x867B0 +DEF _scene_15_actors 0x867B0 +DEF ___func_scene_15_collisions 0x868B4 +DEF _scene_15_collisions 0x868B4 +DEF _scene_15_init 0x86A1C +DEF GBVM$scene_15_init$4bfb9fac_2e52_4f31_8693_2041e07cf6c7$cdd90998_b335_4917_9504_469bb19b4649$actor$f9466213_9ba6_4dff_94f7_3165e1b928d5$startScript 0x86A1F +DEF GBVM$scene_15_init$65d99d36_1d00_4929_b2cd_e9160fa28285$cdd90998_b335_4917_9504_469bb19b4649$actor$f9466213_9ba6_4dff_94f7_3165e1b928d5$startScript 0x86A2B +DEF GBVM$scene_15_init$b67ee083_0079_4f82_9802_b651f8686f5f$cdd90998_b335_4917_9504_469bb19b4649$actor$64d8b7fc_8aa3_4045_8453_304c019c6d23$startScript 0x86A3B +DEF GBVM_END$scene_15_init$4bfb9fac_2e52_4f31_8693_2041e07cf6c7 0x86A3B +DEF GBVM$scene_15_init$601f1694_9455_4077_8043_7b3a12e5f415$cdd90998_b335_4917_9504_469bb19b4649$actor$64d8b7fc_8aa3_4045_8453_304c019c6d23$startScript 0x86A47 +DEF GBVM$scene_15_init$f9d5db74_72e3_4a7a_9478_c30416353cfb$cdd90998_b335_4917_9504_469bb19b4649$actor$d4e298c3_d771_44db_a7fe_3eadd83846a3$startScript 0x86A57 +DEF GBVM_END$scene_15_init$b67ee083_0079_4f82_9802_b651f8686f5f 0x86A57 +DEF GBVM$scene_15_init$df05fefa_c528_4846_9cc6_036ac0eefffc$cdd90998_b335_4917_9504_469bb19b4649$actor$d4e298c3_d771_44db_a7fe_3eadd83846a3$startScript 0x86A63 +DEF GBVM$scene_15_init$f7e57e29_d7f7_4c22_b7ff_7c6917025fa9$cdd90998_b335_4917_9504_469bb19b4649$actor$342f356f_4698_4fed_bced_26280a78ddf9$startScript 0x86A73 +DEF GBVM_END$scene_15_init$f9d5db74_72e3_4a7a_9478_c30416353cfb 0x86A73 +DEF GBVM$scene_15_init$226800ab_9121_42fc_a98c_be0f61e6f9bc$cdd90998_b335_4917_9504_469bb19b4649$actor$342f356f_4698_4fed_bced_26280a78ddf9$startScript 0x86A7F +DEF GBVM$scene_15_init$2de5d8ba_b81f_4bdc_a328_d143cbbb7efb$cdd90998_b335_4917_9504_469bb19b4649$actor$4efc2727_730c_4c8e_8fe7_f472b4069433$startScript 0x86A8F +DEF GBVM_END$scene_15_init$f7e57e29_d7f7_4c22_b7ff_7c6917025fa9 0x86A8F +DEF GBVM$scene_15_init$20af8478_1fea_4c2b_8e28_fb29b7efd9ad$cdd90998_b335_4917_9504_469bb19b4649$actor$4efc2727_730c_4c8e_8fe7_f472b4069433$startScript 0x86A9B +DEF GBVM$scene_15_init$2a9f033b_75a6_487e_8e1e_a988a900139e$cdd90998_b335_4917_9504_469bb19b4649$scene$cdd90998_b335_4917_9504_469bb19b4649$script 0x86AAB +DEF GBVM_END$scene_15_init$2de5d8ba_b81f_4bdc_a328_d143cbbb7efb 0x86AAB +DEF GBVM$scene_15_init$autofade$cdd90998_b335_4917_9504_469bb19b4649$scene$cdd90998_b335_4917_9504_469bb19b4649$script 0x86AB3 +DEF GBVM$scene_15_init$8b6f5629_ff7c_4c44_b3ea_d6f6913c43d6$cdd90998_b335_4917_9504_469bb19b4649$scene$cdd90998_b335_4917_9504_469bb19b4649$script 0x86ABE +DEF GBVM$scene_15_init$52f12785_e595_4366_906b_fce55c2b0be0$cdd90998_b335_4917_9504_469bb19b4649$scene$cdd90998_b335_4917_9504_469bb19b4649$script 0x86AC0 +DEF ___func_scene_16_collisions 0x86AD5 +DEF _scene_16_collisions 0x86AD5 +DEF ___func_scene_3_collisions 0x86C3D +DEF _scene_3_collisions 0x86C3D +DEF ___func_scene_5_collisions 0x86DA5 +DEF _scene_5_collisions 0x86DA5 +DEF ___func_scene_7_collisions 0x86F0D +DEF _scene_7_collisions 0x86F0D +DEF ___func_scene_8_actors 0x87075 +DEF _scene_8_actors 0x87075 +DEF ___func_scene_9_collisions 0x870DD +DEF _scene_9_collisions 0x870DD +DEF ___func_sprite_actor_animated_bank2_tileset 0x87245 +DEF _sprite_actor_animated_bank2_tileset 0x87245 +DEF ___func_sprite_actor_animated_tileset 0x872E7 +DEF _sprite_actor_animated_tileset 0x872E7 +DEF ___func_sprite_actor_animated 0x87389 +DEF _sprite_actor_animated_metasprite_0 0x87389 +DEF _sprite_actor_animated_metasprite_1 0x87395 +DEF _sprite_actor_animated_metasprite_2 0x873A1 +DEF _sprite_actor_animated_metasprite_3 0x873AD +DEF _sprite_actor_animated_metasprite_4 0x873B9 +DEF _sprite_actor_animated_metasprite_5 0x873C5 +DEF _sprite_actor_animated_metasprite_6 0x873D1 +DEF _sprite_actor_animated_metasprite_7 0x873DD +DEF _sprite_actor_animated_metasprites 0x873E9 +DEF _sprite_actor_animated_animations 0x87401 +DEF _sprite_actor_animated_animations_lookup 0x87411 +DEF _sprite_actor_animated 0x87413 +DEF ___func_sprite_charanimatedsprite_bank2_tileset 0x87426 +DEF _sprite_charanimatedsprite_bank2_tileset 0x87426 +DEF ___func_sprite_charanimatedsprite_tileset 0x874E8 +DEF _sprite_charanimatedsprite_tileset 0x874E8 +DEF ___func_sprite_charanimatedsprite 0x875AA +DEF _sprite_charanimatedsprite_metasprite_0 0x875AA +DEF _sprite_charanimatedsprite_metasprite_1 0x875B6 +DEF _sprite_charanimatedsprite_metasprite_2 0x875C2 +DEF _sprite_charanimatedsprite_metasprite_3 0x875CE +DEF _sprite_charanimatedsprite_metasprite_4 0x875DA +DEF _sprite_charanimatedsprite_metasprite_5 0x875E6 +DEF _sprite_charanimatedsprite_metasprite_6 0x875F2 +DEF _sprite_charanimatedsprite_metasprite_7 0x875FE +DEF _sprite_charanimatedsprite_metasprites 0x8760A +DEF _sprite_charanimatedsprite_animations 0x87622 +DEF _sprite_charanimatedsprite_animations_lookup 0x87632 +DEF _sprite_charanimatedsprite 0x87634 +DEF ___func_sprite_npc001_bank2_tileset 0x87647 +DEF _sprite_npc001_bank2_tileset 0x87647 +DEF ___func_sprite_npc001_tileset 0x876A9 +DEF _sprite_npc001_tileset 0x876A9 +DEF ___func_sprite_npc001 0x8770B +DEF _sprite_npc001_metasprite_0 0x8770B +DEF _sprite_npc001_metasprite_1 0x87717 +DEF _sprite_npc001_metasprite_2 0x87723 +DEF _sprite_npc001_metasprite_3 0x8772F +DEF _sprite_npc001_metasprites 0x8773B +DEF _sprite_npc001_animations 0x87743 +DEF _sprite_npc001_animations_lookup 0x87753 +DEF _sprite_npc001 0x87755 +DEF ___func_sprite_npc002_bank2_tileset 0x87768 +DEF _sprite_npc002_bank2_tileset 0x87768 +DEF ___func_sprite_npc002_tileset 0x877CA +DEF _sprite_npc002_tileset 0x877CA +DEF ___func_sprite_npc002 0x8782C +DEF _sprite_npc002_metasprite_0 0x8782C +DEF _sprite_npc002_metasprite_1 0x87838 +DEF _sprite_npc002_metasprite_2 0x87844 +DEF _sprite_npc002_metasprite_3 0x87850 +DEF _sprite_npc002_metasprites 0x8785C +DEF _sprite_npc002_animations 0x87864 +DEF _sprite_npc002_animations_lookup 0x87874 +DEF _sprite_npc002 0x87876 +DEF ___func_sprite_npc005_bank2_tileset 0x87889 +DEF _sprite_npc005_bank2_tileset 0x87889 +DEF ___func_sprite_npc005_tileset 0x8794B +DEF _sprite_npc005_tileset 0x8794B +DEF ___func_sprite_npc005 0x87A0D +DEF _sprite_npc005_metasprite_0 0x87A0D +DEF _sprite_npc005_metasprite_1 0x87A19 +DEF _sprite_npc005_metasprite_2 0x87A25 +DEF _sprite_npc005_metasprite_3 0x87A31 +DEF _sprite_npc005_metasprite_4 0x87A3D +DEF _sprite_npc005_metasprite_5 0x87A49 +DEF _sprite_npc005_metasprite_6 0x87A55 +DEF _sprite_npc005_metasprite_7 0x87A61 +DEF _sprite_npc005_metasprites 0x87A6D +DEF _sprite_npc005_animations 0x87A85 +DEF _sprite_npc005_animations_lookup 0x87A95 +DEF _sprite_npc005 0x87A97 +DEF ___func_sprite_player_bank2_tileset 0x87AAA +DEF _sprite_player_bank2_tileset 0x87AAA +DEF ___func_sprite_player_tileset 0x87B6C +DEF _sprite_player_tileset 0x87B6C +DEF ___func_sprite_player 0x87C2E +DEF _sprite_player_metasprite_0 0x87C2E +DEF _sprite_player_metasprite_1 0x87C3A +DEF _sprite_player_metasprite_2 0x87C46 +DEF _sprite_player_metasprite_3 0x87C52 +DEF _sprite_player_metasprite_4 0x87C5E +DEF _sprite_player_metasprite_5 0x87C6A +DEF _sprite_player_metasprite_6 0x87C76 +DEF _sprite_player_metasprite_7 0x87C82 +DEF _sprite_player_metasprites 0x87C8E +DEF _sprite_player_animations 0x87CA6 +DEF _sprite_player_animations_lookup 0x87CB6 +DEF _sprite_player 0x87CB8 +DEF ___func_tileset_default_frame 0x87CCB +DEF _tileset_default_frame 0x87CCB +DEF _trigger_16_interact 0x87D5D +DEF GBVM$trigger_16_interact$541b068c_0227_425c_90a4_e34413beb95b$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$d8fc0432_d96c_4127_b071_aa458082c9cb$script 0x87D60 +DEF GBVM$trigger_16_interact$ff7f5f35_a032_4717_a954_05faa215e9c9$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$d8fc0432_d96c_4127_b071_aa458082c9cb$script 0x87D69 +DEF GBVM$trigger_16_interact$965bcb68_8580_4cc2_99ef_f7c5683dd787$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$d8fc0432_d96c_4127_b071_aa458082c9cb$script 0x87DEE +DEF GBVM$trigger_16_interact$03be24c0_f516_4659_bb08_0fae3748c432$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$d8fc0432_d96c_4127_b071_aa458082c9cb$script 0x87DF3 +DEF GBVM_END$trigger_16_interact$541b068c_0227_425c_90a4_e34413beb95b 0x87E25 +DEF _trigger_23_interact 0x87E26 +DEF GBVM$trigger_23_interact$ceeeb0ab_95cf_4b64_84dd_03be4d2537b8$bae8f25c_fef2_46c0_ac97_024c3b883b83$trigger$1757f733_20e4_4312_a37f_3b71f2c8fa4b$script 0x87E27 +DEF GBVM$trigger_23_interact$b3fed1cb_7071_45be_8994_b3ff04310344$bae8f25c_fef2_46c0_ac97_024c3b883b83$trigger$1757f733_20e4_4312_a37f_3b71f2c8fa4b$script 0x87E30 +DEF GBVM$trigger_23_interact$21fc8d9a_685e_4403_989d_f1154d249cfc$bae8f25c_fef2_46c0_ac97_024c3b883b83$trigger$1757f733_20e4_4312_a37f_3b71f2c8fa4b$script 0x87E98 +DEF GBVM$trigger_23_interact$ef932da7_01ec_4d32_a9a0_e63b687a33f7$bae8f25c_fef2_46c0_ac97_024c3b883b83$trigger$1757f733_20e4_4312_a37f_3b71f2c8fa4b$script 0x87E9D +DEF GBVM_END$trigger_23_interact$ceeeb0ab_95cf_4b64_84dd_03be4d2537b8 0x87EA5 +DEF _trigger_9_interact 0x87EA6 +DEF GBVM$trigger_9_interact$2db95ed1_a488_43bc_8431_1334cac48dd8$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$7ae2b8e3_e89b_46d2_abeb_fffd8daad1e2$script 0x87EA7 +DEF GBVM$trigger_9_interact$580d2cb3_9bc8_48a2_b36e_2f19a9ec22d9$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$7ae2b8e3_e89b_46d2_abeb_fffd8daad1e2$script 0x87EB0 +DEF GBVM$trigger_9_interact$934ed60c_b3c2_4069_a2b5_a6035e6e3341$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$7ae2b8e3_e89b_46d2_abeb_fffd8daad1e2$script 0x87EB9 +DEF GBVM$trigger_9_interact$36ddffc8_a602_46b9_bd77_c28875a3cac1$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$7ae2b8e3_e89b_46d2_abeb_fffd8daad1e2$script 0x87F12 +DEF GBVM$trigger_9_interact$e3cc04fe_ee98_433d_ab4b_204daf28f709$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$7ae2b8e3_e89b_46d2_abeb_fffd8daad1e2$script 0x87F91 +DEF GBVM$trigger_9_interact$03f750d5_0932_4ab7_9be9_97cdde1c9a23$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$7ae2b8e3_e89b_46d2_abeb_fffd8daad1e2$script 0x87F96 +DEF GBVM$trigger_9_interact$1d030731_07aa_4a4e_b398_51b418073f00$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$7ae2b8e3_e89b_46d2_abeb_fffd8daad1e2$script 0x87F9B +DEF GBVM$trigger_9_interact$f4d06c0b_c86d_4994_8574_ce4ea2d89a95$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$7ae2b8e3_e89b_46d2_abeb_fffd8daad1e2$script 0x87FA0 +DEF GBVM_END$trigger_9_interact$580d2cb3_9bc8_48a2_b36e_2f19a9ec22d9 0x87FA5 +DEF GBVM$trigger_9_interact$f6c48e29_7cce_47cb_80d9_5b44b3b46065$aae81f2f_404d_41db_a9fd_32c62d07c37e$trigger$7ae2b8e3_e89b_46d2_abeb_fffd8daad1e2$script 0x87FA8 +DEF GBVM_END$trigger_9_interact$2db95ed1_a488_43bc_8431_1334cac48dd8 0x87FFE +DEF _ui_swap_tiles 0x14000 +DEF _ui_print_make_mask_lr 0x1404A +DEF _ui_print_make_mask_rl 0x14066 +DEF _ui_init 0x14082 +DEF _ui_load_tiles 0x14153 +DEF _ui_draw_frame 0x141AA +DEF _ui_print_reset 0x14244 +DEF _ui_set_start_tile 0x14295 +DEF _ui_print_render 0x142C1 +DEF _ui_draw_text_buffer_char 0x14557 +DEF _ui_run_menu 0x14A41 +DEF _ui_run_modal 0x14C18 +DEF ___func_VM_SGB 0x14CD2 +DEF ___func_bg_cave_tileset 0x14CD2 +DEF _bg_cave_tileset 0x14CD2 +DEF ___func_bg_lab1_tileset 0x14E54 +DEF _bg_lab1_tileset 0x14E54 +DEF ___func_bg_logoscreen_tileset 0x152E6 +DEF _bg_logoscreen_tileset 0x152E6 +DEF ___func_bg_titlescreen_tileset 0x16968 +DEF _bg_titlescreen_tileset 0x16968 +DEF _scene_1_init 0x17FEA +DEF GBVM$scene_1_init$38d0cb6d_5eaf_4d69_b887_35fd24d513ff$aae81f2f_404d_41db_a9fd_32c62d07c37e$scene$aae81f2f_404d_41db_a9fd_32c62d07c37e$script 0x17FEB +DEF GBVM$scene_1_init$32511cd3_b92a_4ab0_b0f1_8d1352eaf8a1$aae81f2f_404d_41db_a9fd_32c62d07c37e$scene$aae81f2f_404d_41db_a9fd_32c62d07c37e$script 0x17FEF +DEF GBVM$scene_1_init$autofade$aae81f2f_404d_41db_a9fd_32c62d07c37e$scene$aae81f2f_404d_41db_a9fd_32c62d07c37e$script 0x17FF3 +DEF _script_input_5 0x17FFF +DEF ___func_VM_ACTOR 0x44000 +DEF _vm_actor_move_to 0x44000 +DEF _vm_actor_move_cancel 0x44A46 +DEF _vm_actor_activate 0x44A7C +DEF _vm_actor_deactivate 0x44ACD +DEF _vm_actor_begin_update 0x44B1E +DEF _vm_actor_terminate_update 0x44BA5 +DEF _vm_actor_set_dir 0x44BEC +DEF _vm_actor_set_anim 0x44C35 +DEF _vm_actor_set_pos 0x44CC3 +DEF _vm_actor_get_pos 0x44D3D +DEF _vm_actor_get_dir 0x44DAC +DEF _vm_actor_get_angle 0x44E26 +DEF _vm_actor_emote 0x44EA7 +DEF _vm_actor_set_bounds 0x44F6B +DEF _vm_actor_set_spritesheet 0x44FC9 +DEF _vm_actor_replace_tile 0x45093 +DEF _vm_actor_set_anim_tick 0x450FE +DEF _vm_actor_set_move_speed 0x4513C +DEF _vm_actor_set_anim_frame 0x4517A +DEF _vm_actor_get_anim_frame 0x451BE +DEF _vm_actor_set_anim_set 0x45208 +DEF _vm_actor_set_spritesheet_by_ref 0x45290 +DEF _vm_actor_set_flags 0x4539D +DEF ___func_VM_GBPRINTER 0x4544B +DEF _vm_print_detect 0x4544B +DEF _vm_print_overlay 0x4549A +DEF ___func_VM_MAIN 0x454EF +DEF _vm_call 0x454EF +DEF _vm_ret 0x45531 +DEF _vm_call_far 0x45591 +DEF _vm_ret_far 0x45610 +DEF _vm_push 0x45688 +DEF _vm_pop 0x456B3 +DEF _vm_loop 0x456EE +DEF _vm_jump 0x45779 +DEF _wait_frames 0x45785 +DEF _vm_invoke 0x457F2 +DEF _vm_join 0x4591F +DEF _vm_terminate 0x45981 +DEF _vm_if 0x459AE +DEF _vm_if_const 0x45AF3 +DEF _vm_push_value 0x45C08 +DEF _vm_push_value_ind 0x45C5A +DEF _vm_push_reference 0x45CCF +DEF _vm_reserve 0x45D26 +DEF _vm_set 0x45D54 +DEF _vm_set_const 0x45DB5 +DEF _vm_get_tlocal 0x45DE1 +DEF _vm_test_terminate 0x45E6E +DEF _vm_idle 0x45E79 +DEF _vm_init_rng 0x45E85 +DEF _vm_rand 0x45EB1 +DEF _vm_lock 0x45EF3 +DEF _vm_unlock 0x45F02 +DEF _vm_raise 0x45F15 +DEF _vm_set_indirect 0x45F57 +DEF _vm_get_indirect 0x45FD2 +DEF _vm_poll_loaded 0x4604D +DEF _vm_memset 0x4607D +DEF _vm_memcpy 0x460B7 +DEF _script_runner_init 0x46134 +DEF _script_execute 0x461EB +DEF _script_terminate 0x46351 +DEF _script_detach_hthread 0x463B6 +DEF ___func_bg_outside_tileset 0x463F2 +DEF _bg_outside_tileset 0x463F2 +DEF _song_rulz_undergroundcave_Data 0x47FE3 +DEF ___func_scene_11_triggers 0x47FF8 +DEF _scene_11_triggers 0x47FF8 +DEF _actor_7_interact 0x24000 +DEF GBVM$actor_7_interact$8ecf4253_4c05_4e5f_8fbf_d12e50f22bca$7cb69bbf_989e_4401_9f8b_38ddfae44607$actor$c4de8807_aba3_4065_b2fb_099baa9ea70b$script 0x24003 +DEF GBVM$actor_7_interact$9a2c8224_4251_4caa_b373_56928968acf6$7cb69bbf_989e_4401_9f8b_38ddfae44607$actor$c4de8807_aba3_4065_b2fb_099baa9ea70b$script 0x24051 +DEF ___func_bg_overworld_test_1_tilemap_attr 0x2405B +DEF _bg_overworld_test_1_tilemap_attr 0x2405B +DEF ___func_bg_overworld_test_1_tilemap 0x256DB +DEF _bg_overworld_test_1_tilemap 0x256DB +DEF _song_rulz_lightmood_Data 0x27FEA +LOAD build/rom/game.ihx diff --git a/gb_studio_project/build/rom/game.sav b/gb_studio_project/build/rom/game.sav new file mode 100644 index 0000000..d13eba3 --- /dev/null +++ b/gb_studio_project/build/rom/game.sav @@ -0,0 +1 @@ +ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ \ No newline at end of file diff --git a/gb_studio_project/build/rom/game.sym b/gb_studio_project/build/rom/game.sym new file mode 100644 index 0000000..5bbabce --- /dev/null +++ b/gb_studio_project/build/rom/game.sym @@ -0,0 +1,1953 @@ +; no$gmb compatible .sym file +; Generated automagically by makebin +00:0000 _rRAMG +00:0000 l__BASE +00:0000 l__BSS +00:0000 l__CABS +00:0000 l__CODE_0 +00:0000 l__CRASH_HEADER +00:0000 l__CRASH_SCRATCH +00:0000 l__DABS +00:0000 l__HEADER +00:0000 l__HEADER_LCD +00:0000 l__HEADER_SIO +00:0000 l__HEADER_TIMER +00:0000 l__HEAP +00:0000 l__HEAP_END +00:0000 l__HRAM +00:0000 l__LIT +00:0000 s__CABS +00:0000 s__CRASH_HEADER +00:0000 s__CRASH_HEADER0 +00:0000 s__CRASH_HEADER1 +00:0000 s__CRASH_SCRATCH +00:0000 s__CRASH_SCRATCH2 +00:0000 s__DABS +00:0000 s__HEADER +00:0000 s__HEADER0 +00:0000 s__HEADER1 +00:0000 s__HEADER10 +00:0000 s__HEADER11 +00:0000 s__HEADER2 +00:0000 s__HEADER3 +00:0000 s__HEADER4 +00:0000 s__HEADER5 +00:0000 s__HEADER6 +00:0000 s__HEADER7 +00:0000 s__HEADER8 +00:0000 s__HEADER9 +00:0000 s__HEADER_LCD +00:0000 s__HEADER_LCD0 +00:0000 s__HEADER_SIO +00:0000 s__HEADER_SIO0 +00:0000 s__HEADER_TIMER +00:0000 s__HEADER_TIMER0 +00:0000 s__HEADERa +00:0000 s__HEADERb +00:0000 s__HEADERc +00:0000 s__HEADERd +00:0000 s__HEADERe +00:0000 s__HEADERf +00:0000 s__HRAM +00:0000 s__HRAM12 +00:0001 ___bank_VM_SGB +00:0001 ___bank_bg_cave_tileset +00:0001 ___bank_bg_lab1_tileset +00:0001 ___bank_bg_logoscreen_tileset +00:0001 ___bank_bg_titlescreen_tileset +00:0001 ___bank_scene_1_init +00:0001 ___bank_script_input_5 +00:0001 b_ui_draw_frame +00:0001 b_ui_draw_text_buffer_char +00:0001 b_ui_init +00:0001 b_ui_load_tiles +00:0001 b_ui_run_menu +00:0001 b_ui_run_modal +00:0001 b_ui_set_start_tile +00:0001 l__GSFINAL +00:0001 l__HEADER0 +00:0001 l__HEADER5 +00:0001 l__HEADERa +00:0001 l__HEADERb +00:0001 l__HEADERc +00:0001 l__HEADERe +00:0001 l__HEADERf +00:0002 ___bank_actor_7_interact +00:0002 ___bank_bg_overworld_test_1_til +00:0002 ___bank_bg_overworld_test_1_til +00:0002 ___bank_song_rulz_lightmood_Dat +00:0002 l__HEADER10 +00:0002 l__HEADER6 +00:0002 l__HEADERd +00:0003 ___bank_ACTOR +00:0003 ___bank_bg_outside_cgb_tileset +00:0003 ___bank_scene_1 +00:0003 ___bank_scene_1_collisions +00:0003 b_activate_actor +00:0003 b_activate_actors_in_col +00:0003 b_activate_actors_in_row +00:0003 b_actor_at_tile +00:0003 b_actor_get_frame_offset +00:0003 b_actor_in_front_of_player +00:0003 b_actor_overlapping_bb +00:0003 b_actor_overlapping_player +00:0003 b_actor_set_anim_idle +00:0003 b_actor_set_anim_moving +00:0003 b_actor_set_dir +00:0003 b_actor_set_frame_offset +00:0003 b_actor_set_frames +00:0003 b_actors_handle_player_collisio +00:0003 b_actors_init +00:0003 b_check_collision_in_direction +00:0003 b_deactivate_actor +00:0003 b_player_init +00:0003 b_projectile_launch +00:0003 b_projectiles_init +00:0003 l__HEADER9 +00:0003 l__HEADER_LCD0 +00:0003 l__HRAM12 +00:0004 ___bank_VM_ACTOR +00:0004 ___bank_VM_GBPRINTER +00:0004 ___bank_VM_MAIN +00:0004 ___bank_bg_outside_tileset +00:0004 ___bank_scene_11_triggers +00:0004 ___bank_song_rulz_undergroundca +00:0004 b_script_detach_hthread +00:0004 b_script_execute +00:0004 b_script_runner_init +00:0004 b_script_terminate +00:0004 b_vm_actor_activate +00:0004 b_vm_actor_begin_update +00:0004 b_vm_actor_deactivate +00:0004 b_vm_actor_emote +00:0004 b_vm_actor_get_angle +00:0004 b_vm_actor_get_anim_frame +00:0004 b_vm_actor_get_dir +00:0004 b_vm_actor_get_pos +00:0004 b_vm_actor_move_cancel +00:0004 b_vm_actor_move_to +00:0004 b_vm_actor_replace_tile +00:0004 b_vm_actor_set_anim +00:0004 b_vm_actor_set_anim_frame +00:0004 b_vm_actor_set_anim_set +00:0004 b_vm_actor_set_anim_tick +00:0004 b_vm_actor_set_bounds +00:0004 b_vm_actor_set_dir +00:0004 b_vm_actor_set_flags +00:0004 b_vm_actor_set_move_speed +00:0004 b_vm_actor_set_pos +00:0004 b_vm_actor_set_spritesheet +00:0004 b_vm_actor_set_spritesheet_by_r +00:0004 b_vm_actor_terminate_update +00:0004 b_vm_call +00:0004 b_vm_call_far +00:0004 b_vm_get_indirect +00:0004 b_vm_get_tlocal +00:0004 b_vm_idle +00:0004 b_vm_if +00:0004 b_vm_if_const +00:0004 b_vm_init_rng +00:0004 b_vm_invoke +00:0004 b_vm_join +00:0004 b_vm_jump +00:0004 b_vm_lock +00:0004 b_vm_loop +00:0004 b_vm_memcpy +00:0004 b_vm_memset +00:0004 b_vm_poll_loaded +00:0004 b_vm_pop +00:0004 b_vm_print_detect +00:0004 b_vm_print_overlay +00:0004 b_vm_push +00:0004 b_vm_push_reference +00:0004 b_vm_push_value +00:0004 b_vm_push_value_ind +00:0004 b_vm_raise +00:0004 b_vm_rand +00:0004 b_vm_reserve +00:0004 b_vm_ret +00:0004 b_vm_ret_far +00:0004 b_vm_set +00:0004 b_vm_set_const +00:0004 b_vm_set_indirect +00:0004 b_vm_terminate +00:0004 b_vm_test_terminate +00:0004 b_vm_unlock +00:0004 b_wait_frames +00:0004 l__CRASH_HEADER1 +00:0004 l__HEADER_SIO0 +00:0004 l__HEADER_TIMER0 +00:0005 ___bank_VM_SIO +00:0005 ___bank_bg_endscreen_tileset +00:0005 ___bank_bg_questscreen_tileset +00:0005 ___bank_font_gbs_mono +00:0005 ___bank_scene_14_sprites +00:0005 ___bank_song_rulz_outside_0_Dat +00:0005 ___bank_song_rulz_spaceemergenc +00:0005 b_do_load_palette +00:0005 b_load_background +00:0005 b_load_bkg_tileset +00:0005 b_load_bounds +00:0005 b_load_emote +00:0005 b_load_init +00:0005 b_load_player +00:0005 b_load_scene +00:0005 b_load_sprite +00:0005 b_vm_sio_exchange +00:0005 b_vm_sio_set_mode +00:0005 l__CRASH_HEADER0 +00:0005 l__HEADER1 +00:0006 ___bank_VM_GAMEBOY +00:0006 ___bank_VM_MATH +00:0006 ___bank_VM_UI +00:0006 ___bank_bg_fate6housef2_tileset +00:0006 ___bank_bg_housef2_tileset +00:0006 ___bank_bg_outside_tilemap +00:0006 ___bank_bg_outside_tilemap_attr +00:0006 ___bank_bg_overworld_test_1_til +00:0006 ___bank_bg_slighhousef2_tileset +00:0006 ___bank_cursor_image +00:0006 ___bank_scene_17_collisions +00:0006 b_core_reset +00:0006 b_core_run +00:0006 b_scroll_init +00:0006 b_scroll_repaint +00:0006 b_scroll_reset +00:0006 b_scroll_update +00:0006 b_topdown_init +00:0006 b_topdown_update +00:0006 b_vm_choice +00:0006 b_vm_context_prepare +00:0006 b_vm_cos_scale +00:0006 b_vm_display_text +00:0006 b_vm_fade +00:0006 b_vm_get_tile_xy +00:0006 b_vm_input_attach +00:0006 b_vm_input_detach +00:0006 b_vm_input_get +00:0006 b_vm_input_wait +00:0006 b_vm_load_tileset +00:0006 b_vm_overlay_clear +00:0006 b_vm_overlay_move_to +00:0006 b_vm_overlay_scroll +00:0006 b_vm_overlay_set_map +00:0006 b_vm_overlay_set_scroll +00:0006 b_vm_overlay_set_submap +00:0006 b_vm_overlay_set_submap_ex +00:0006 b_vm_overlay_setpos +00:0006 b_vm_overlay_show +00:0006 b_vm_overlay_wait +00:0006 b_vm_poll +00:0006 b_vm_replace_tile +00:0006 b_vm_replace_tile_xy +00:0006 b_vm_rumble +00:0006 b_vm_set_font +00:0006 b_vm_set_sprite_mode +00:0006 b_vm_set_sprites_visible +00:0006 b_vm_set_text_sound +00:0006 b_vm_sin_scale +00:0006 b_vm_switch_text_layer +00:0006 b_vm_timer_prepare +00:0006 b_vm_timer_reset +00:0006 b_vm_timer_set +00:0006 b_vm_timer_stop +00:0006 l__HEADER8 +00:0007 ___bank_VM_CAMERA +00:0007 ___bank_VM_PALETTE +00:0007 ___bank_actor_0_interact +00:0007 ___bank_actor_5_interact +00:0007 ___bank_bg_cave_tilemap +00:0007 ___bank_bg_cave_tilemap_attr +00:0007 ___bank_bg_endscreen_cgb_tilese +00:0007 ___bank_bg_endscreen_tilemap +00:0007 ___bank_bg_endscreen_tilemap_at +00:0007 ___bank_bg_fate6housef2_tilemap +00:0007 ___bank_bg_fate6housef2_tilemap +00:0007 ___bank_bg_house_tileset +00:0007 ___bank_bg_house_wide_tilemap +00:0007 ___bank_bg_house_wide_tilemap_a +00:0007 ___bank_bg_house_wide_tileset +00:0007 ___bank_bg_lab1_tilemap +00:0007 ___bank_bg_lab1_tilemap_attr +00:0007 ___bank_scene_1_actors +00:0007 ___bank_scene_2_collisions +00:0007 ___bank_scene_4_collisions +00:0007 ___bank_scene_6_collisions +00:0007 ___bank_scene_8_collisions +00:0007 ___bank_script_1 +00:0007 b___HandleCrash_banked +00:0007 b_atan2 +00:0007 b_camera_shake_frames +00:0007 b_data_clear +00:0007 b_data_init +00:0007 b_data_load +00:0007 b_data_peek +00:0007 b_data_save +00:0007 b_fade_applypalettechange +00:0007 b_fade_in +00:0007 b_fade_in_modal +00:0007 b_fade_init +00:0007 b_fade_out +00:0007 b_fade_out_modal +00:0007 b_fade_setspeed +00:0007 b_fade_update +00:0007 b_gbprinter_detect +00:0007 b_gbprinter_print_overlay +00:0007 b_set_sgb_border +00:0007 b_trigger_activate_at +00:0007 b_trigger_activate_at_intersect +00:0007 b_trigger_at_intersection +00:0007 b_trigger_at_tile +00:0007 b_trigger_interact +00:0007 b_trigger_reset +00:0007 b_vm_camera_move_to +00:0007 b_vm_camera_set_pos +00:0007 b_vm_load_palette +00:0007 l__HEADER2 +00:0008 ___bank_VM_LOAD_SAVE +00:0008 ___bank_VM_MUSIC +00:0008 ___bank_VM_PROJECTILE +00:0008 ___bank_VM_RTC +00:0008 ___bank_VM_SCENE +00:0008 ___bank_actor_14_interact +00:0008 ___bank_actor_15_interact +00:0008 ___bank_actor_1_interact +00:0008 ___bank_actor_2_interact +00:0008 ___bank_actor_3_interact +00:0008 ___bank_actor_8_interact +00:0008 ___bank_bg_house_tilemap +00:0008 ___bank_bg_house_tilemap_attr +00:0008 ___bank_bg_housef2_tilemap +00:0008 ___bank_bg_housef2_tilemap_attr +00:0008 ___bank_bg_logoscreen_tilemap +00:0008 ___bank_bg_logoscreen_tilemap_a +00:0008 ___bank_bg_questscreen_tilemap +00:0008 ___bank_bg_questscreen_tilemap_ +00:0008 ___bank_bg_slighhousef2_tilemap +00:0008 ___bank_bg_slighhousef2_tilemap +00:0008 ___bank_bg_titlescreen_tilemap +00:0008 ___bank_bg_titlescreen_tilemap_ +00:0008 ___bank_emote_love +00:0008 ___bank_frame_image +00:0008 ___bank_palette_0 +00:0008 ___bank_palette_1 +00:0008 ___bank_palette_10 +00:0008 ___bank_palette_11 +00:0008 ___bank_palette_12 +00:0008 ___bank_palette_13 +00:0008 ___bank_palette_2 +00:0008 ___bank_palette_3 +00:0008 ___bank_palette_4 +00:0008 ___bank_palette_5 +00:0008 ___bank_palette_6 +00:0008 ___bank_palette_7 +00:0008 ___bank_palette_8 +00:0008 ___bank_palette_9 +00:0008 ___bank_scene_10_collisions +00:0008 ___bank_scene_11_collisions +00:0008 ___bank_scene_12_collisions +00:0008 ___bank_scene_13_collisions +00:0008 ___bank_scene_14_collisions +00:0008 ___bank_scene_15_actors +00:0008 ___bank_scene_15_collisions +00:0008 ___bank_scene_15_init +00:0008 ___bank_scene_16_collisions +00:0008 ___bank_scene_1_triggers +00:0008 ___bank_scene_3_collisions +00:0008 ___bank_scene_5_collisions +00:0008 ___bank_scene_7_collisions +00:0008 ___bank_scene_8_actors +00:0008 ___bank_scene_9_collisions +00:0008 ___bank_sprite_actor_animated +00:0008 ___bank_sprite_actor_animated_b +00:0008 ___bank_sprite_actor_animated_t +00:0008 ___bank_sprite_charanimatedspri +00:0008 ___bank_sprite_charanimatedspri +00:0008 ___bank_sprite_charanimatedspri +00:0008 ___bank_sprite_npc001 +00:0008 ___bank_sprite_npc001_bank2_til +00:0008 ___bank_sprite_npc001_tileset +00:0008 ___bank_sprite_npc002 +00:0008 ___bank_sprite_npc002_bank2_til +00:0008 ___bank_sprite_npc002_tileset +00:0008 ___bank_sprite_npc005 +00:0008 ___bank_sprite_npc005_bank2_til +00:0008 ___bank_sprite_npc005_tileset +00:0008 ___bank_sprite_player +00:0008 ___bank_sprite_player_bank2_til +00:0008 ___bank_sprite_player_tileset +00:0008 ___bank_tileset_default_frame +00:0008 ___bank_trigger_16_interact +00:0008 ___bank_trigger_23_interact +00:0008 ___bank_trigger_9_interact +00:0008 b_CGBZeroPalette +00:0008 b_erase_flash +00:0008 b_events_init +00:0008 b_itoa_fmt +00:0008 b_music_events_poll +00:0008 b_music_init_driver +00:0008 b_music_init_events +00:0008 b_palette_init +00:0008 b_restore_sram +00:0008 b_restore_sram_bank +00:0008 b_save_sram +00:0008 b_save_sram_banks +00:0008 b_scroll_rect +00:0008 b_timers_init +00:0008 b_vm_music_mute +00:0008 b_vm_music_play +00:0008 b_vm_music_routine +00:0008 b_vm_music_setpos +00:0008 b_vm_music_stop +00:0008 b_vm_projectile_launch +00:0008 b_vm_projectile_load_type +00:0008 b_vm_rtc_get +00:0008 b_vm_rtc_latch +00:0008 b_vm_rtc_set +00:0008 b_vm_rtc_start +00:0008 b_vm_save_clear +00:0008 b_vm_save_peek +00:0008 b_vm_scene_pop +00:0008 b_vm_scene_pop_all +00:0008 b_vm_scene_push +00:0008 b_vm_scene_stack_reset +00:0008 b_vm_sfx_play +00:0008 b_vm_sound_mastervol +00:0008 l__HEADER3 +00:0009 ___bank_actor_10_interact +00:0009 ___bank_actor_11_interact +00:0009 ___bank_actor_12_interact +00:0009 ___bank_actor_13_interact +00:0009 ___bank_actor_4_interact +00:0009 ___bank_actor_6_interact +00:0009 ___bank_actor_9_interact +00:0009 ___bank_bg_cave +00:0009 ___bank_bg_endscreen +00:0009 ___bank_bg_fate6housef2 +00:0009 ___bank_bg_house +00:0009 ___bank_bg_house_wide +00:0009 ___bank_bg_housef2 +00:0009 ___bank_bg_lab1 +00:0009 ___bank_bg_logoscreen +00:0009 ___bank_bg_outside +00:0009 ___bank_bg_overworld_test_1 +00:0009 ___bank_bg_questscreen +00:0009 ___bank_bg_slighhousef2 +00:0009 ___bank_bg_titlescreen +00:0009 ___bank_bootstrap_script +00:0009 ___bank_scene_10 +00:0009 ___bank_scene_10_init +00:0009 ___bank_scene_11 +00:0009 ___bank_scene_11_init +00:0009 ___bank_scene_12 +00:0009 ___bank_scene_12_init +00:0009 ___bank_scene_13 +00:0009 ___bank_scene_13_init +00:0009 ___bank_scene_14 +00:0009 ___bank_scene_14_actors +00:0009 ___bank_scene_14_init +00:0009 ___bank_scene_14_triggers +00:0009 ___bank_scene_15 +00:0009 ___bank_scene_15_sprites +00:0009 ___bank_scene_16 +00:0009 ___bank_scene_16_init +00:0009 ___bank_scene_17 +00:0009 ___bank_scene_17_actors +00:0009 ___bank_scene_17_init +00:0009 ___bank_scene_17_sprites +00:0009 ___bank_scene_17_triggers +00:0009 ___bank_scene_1_sprites +00:0009 ___bank_scene_2 +00:0009 ___bank_scene_2_actors +00:0009 ___bank_scene_2_init +00:0009 ___bank_scene_2_sprites +00:0009 ___bank_scene_2_triggers +00:0009 ___bank_scene_3 +00:0009 ___bank_scene_3_actors +00:0009 ___bank_scene_3_init +00:0009 ___bank_scene_3_sprites +00:0009 ___bank_scene_3_triggers +00:0009 ___bank_scene_4 +00:0009 ___bank_scene_4_init +00:0009 ___bank_scene_4_triggers +00:0009 ___bank_scene_5 +00:0009 ___bank_scene_5_actors +00:0009 ___bank_scene_5_init +00:0009 ___bank_scene_5_sprites +00:0009 ___bank_scene_5_triggers +00:0009 ___bank_scene_6 +00:0009 ___bank_scene_6_actors +00:0009 ___bank_scene_6_init +00:0009 ___bank_scene_6_sprites +00:0009 ___bank_scene_6_triggers +00:0009 ___bank_scene_7 +00:0009 ___bank_scene_7_actors +00:0009 ___bank_scene_7_init +00:0009 ___bank_scene_7_sprites +00:0009 ___bank_scene_7_triggers +00:0009 ___bank_scene_8 +00:0009 ___bank_scene_8_init +00:0009 ___bank_scene_8_sprites +00:0009 ___bank_scene_8_triggers +00:0009 ___bank_scene_9 +00:0009 ___bank_scene_9_init +00:0009 ___bank_scene_9_triggers +00:0009 ___bank_script_engine_init +00:0009 ___bank_script_input +00:0009 ___bank_script_input_4 +00:0009 ___bank_script_input_6 +00:0009 ___bank_sprite_cat +00:0009 ___bank_sprite_cat_bank2_tilese +00:0009 ___bank_sprite_cat_tileset +00:0009 ___bank_sprite_checkbox +00:0009 ___bank_sprite_checkbox_bank2_t +00:0009 ___bank_sprite_checkbox_tileset +00:0009 ___bank_sprite_dog +00:0009 ___bank_sprite_dog_bank2_tilese +00:0009 ___bank_sprite_dog_tileset +00:0009 ___bank_sprite_sign +00:0009 ___bank_sprite_sign_bank2_tiles +00:0009 ___bank_sprite_sign_tileset +00:0009 ___bank_spritesheet_none +00:0009 ___bank_trigger_0_interact +00:0009 ___bank_trigger_10_interact +00:0009 ___bank_trigger_11_interact +00:0009 ___bank_trigger_12_interact +00:0009 ___bank_trigger_13_interact +00:0009 ___bank_trigger_14_interact +00:0009 ___bank_trigger_15_interact +00:0009 ___bank_trigger_17_interact +00:0009 ___bank_trigger_18_interact +00:0009 ___bank_trigger_19_interact +00:0009 ___bank_trigger_1_interact +00:0009 ___bank_trigger_20_interact +00:0009 ___bank_trigger_21_interact +00:0009 ___bank_trigger_22_interact +00:0009 ___bank_trigger_24_interact +00:0009 ___bank_trigger_2_interact +00:0009 ___bank_trigger_3_interact +00:0009 ___bank_trigger_4_interact +00:0009 ___bank_trigger_5_interact +00:0009 ___bank_trigger_6_interact +00:0009 ___bank_trigger_7_interact +00:0009 ___bank_trigger_8_interact +00:0009 b_SIO_init +00:0009 b_camera_init +00:0009 b_input_init +00:0009 b_logo_init +00:0009 b_logo_update +00:0009 b_parallax_init +00:0009 b_remove_LCD_ISRs +00:000C __start_save +00:0018 l__INITIALIZED +00:0018 l__INITIALIZER +00:0027 l__GSINIT +00:0030 l__HEADER7 +00:0060 l__HEADER4 +00:00AB l__HEADER11 +00:01CB l__CRASH_SCRATCH2 +00:0200 s__CODE +00:0EB9 l__CODE +00:10B9 s__HOME +00:1130 l__CODE_9 +00:1971 l__DATA +00:2000 _rROMB0 +00:2D53 l__HOME +00:3000 _rROMB1 +00:3E0C s__BASE +00:3E0C s__CODE_0 +00:3E0C s__INITIALIZER +00:3E0C s__LIT +00:3E24 s__GSINIT +00:3E4B s__GSFINAL +00:3FFE l__CODE_5 +00:3FFF l__CODE_2 +00:3FFF l__CODE_3 +00:3FFF l__CODE_8 +00:4000 _RTC_SELECT_REG +00:4000 _rRAMB +00:4000 l__CODE_1 +00:4000 l__CODE_4 +00:4000 l__CODE_6 +00:4000 l__CODE_7 +00:6000 _RTC_LATCH_REG +00:8000 __VRAM +00:8000 __VRAM8000 +00:8800 __VRAM8800 +00:9000 __VRAM9000 +00:9800 __SCRN0 +00:9C00 __SCRN1 +00:A000 _RTC_VALUE_REG +00:A000 __SRAM +00:C000 __RAM +00:C000 _shadow_OAM +00:C0A0 s__DATA +00:D000 __RAMBANK +00:DA11 s__BSS +00:DA11 s__INITIALIZED +00:DA29 s__HEAP +00:DA29 s__HEAP_END +00:DF00 .STACK +00:DF00 _shadow_OAM2 +00:DFA0 _BkgPalette +00:DFE0 _vwf_tile_data +00:FE00 __OAMRAM +00:FF00 _P1_REG +00:FF00 __IO +00:FF01 _SB_REG +00:FF02 _SC_REG +00:FF04 _DIV_REG +00:FF05 _TIMA_REG +00:FF06 _TMA_REG +00:FF07 _TAC_REG +00:FF0F _IF_REG +00:FF10 _NR10_REG +00:FF11 _NR11_REG +00:FF12 _NR12_REG +00:FF13 _NR13_REG +00:FF14 _NR14_REG +00:FF16 _NR21_REG +00:FF17 _NR22_REG +00:FF18 _NR23_REG +00:FF19 _NR24_REG +00:FF1A _NR30_REG +00:FF1B _NR31_REG +00:FF1C _NR32_REG +00:FF1D _NR33_REG +00:FF1E _NR34_REG +00:FF20 _NR41_REG +00:FF21 _NR42_REG +00:FF22 _NR43_REG +00:FF23 _NR44_REG +00:FF24 _NR50_REG +00:FF25 _NR51_REG +00:FF26 _NR52_REG +00:FF30 _AUD3WAVE +00:FF30 _PCM_SAMPLE +00:FF30 __AUD3WAVERAM +00:FF40 _LCDC_REG +00:FF41 _STAT_REG +00:FF42 _SCY_REG +00:FF43 _SCX_REG +00:FF44 _LY_REG +00:FF45 _LYC_REG +00:FF46 _DMA_REG +00:FF47 _BGP_REG +00:FF48 _OBP0_REG +00:FF49 _OBP1_REG +00:FF4A _WY_REG +00:FF4B _WX_REG +00:FF4D _KEY1_REG +00:FF4F _VBK_REG +00:FF51 _HDMA1_REG +00:FF52 _HDMA2_REG +00:FF53 _HDMA3_REG +00:FF54 _HDMA4_REG +00:FF55 _HDMA5_REG +00:FF56 _RP_REG +00:FF68 _BCPS_REG +00:FF69 _BCPD_REG +00:FF6A _OCPS_REG +00:FF6B _OCPD_REG +00:FF70 _SVBK_REG +00:FF76 _PCM12_REG +00:FF77 _PCM34_REG +00:FF80 .refresh_OAM +00:FF80 __HRAM +00:FFFF _IE_REG +01:4000 s__CODE_1 +02:4000 s__CODE_2 +03:4000 s__CODE_3 +04:4000 s__CODE_4 +05:4000 s__CODE_5 +06:4000 s__CODE_6 +07:4000 s__CODE_7 +08:4000 s__CODE_8 +09:4000 s__CODE_9 +00:0200 ___HandleCrash +00:020A _SIO_send_byte +00:021D _SIO_receive +00:022E _GetWinAddr +00:0236 _GetBkgAddr +00:0244 _state_init +00:0249 _state_update +00:026B _ui_time_masks +00:0273 _ui_print_shift_char +00:02F6 _ui_draw_frame_row +00:02FF .ui_draw_frame_row +00:0328 _script_cmds +00:0560 _save_signature +00:0564 _start_scene_x +00:0566 _start_scene_y +00:0568 _start_scene_dir +00:0569 _start_scene +00:056C _start_player_move_speed +00:056D _start_player_anim_tick +00:056E _ui_fonts +00:0571 _core_reset_hook +00:0579 _main +00:0581 _state_start_fns +00:0587 _state_update_fns +00:058D _hUGE_init +00:058F hUGE_init +00:05E5 _hUGE_mute_channel +00:05E7 hUGE_mute_channel +00:0835 _hUGE_set_position +00:0837 hUGE_set_position +00:09FC _hUGE_dosound +00:09FC hUGE_dosound +00:0D28 _get_vram_byte +00:0D30 _get_win_tile_xy +00:0D38 _get_bkg_tile_xy +00:0D5F _set_sprite_palette +00:0D64 _set_bkg_palette +00:0D67 .set_palette +00:0D86 _set_sprite_palette_entry +00:0D8B _set_bkg_palette_entry +00:0D8E .set_palette_entry +00:0DAA _hide_sprites_range +00:0DD9 __mulsuchar +00:0DDC __muluschar +00:0DE5 __mulschar +00:0DED __mulint +00:0E0C __muluchar +00:0E1E _set_vram_byte +00:0E27 _set_win_tile_xy +00:0E30 _set_bkg_tile_xy +00:0E5F .sgb_check +00:0E5F _sgb_check +00:0EA7 _sgb_transfer +00:0EAC .sgb_transfer +00:0EED .copy_vram +00:0EF3 _get_data +00:0EF3 _set_data +00:0EF3 _vmemcpy +00:0F41 ___move_metasprite +00:0F7E ___memcpy +00:0F7E _memcpy +00:0FB0 _cpu_slow +00:0FCB _cpu_fast +00:0FD2 __divsuchar +00:0FD8 __modsuchar +00:0FE1 __divuschar +00:0FEA __moduschar +00:0FF6 __divschar +00:0FFB __modschar +00:1002 __divsint +00:100B __modsint +00:1017 __divuchar +00:101C __moduchar +00:1023 __divuint +00:102C __moduint +00:1038 .div8 +00:1038 .mod8 +00:1040 .div16 +00:1040 .mod16 +00:1076 .divu8 +00:1076 .modu8 +00:1079 .divu16 +00:1079 .modu16 +00:0020 .call_hl +00:0028 .MemsetSmall +00:0030 .MemcpySmall +00:0080 .int +00:008F _wait_int_handler +00:009C __standard_VBL_handler +00:00AB _refresh_OAM +00:00CC _set_interrupts +00:0150 .reset +00:0150 _reset +00:0157 .code_start +00:01B9 _exit +00:01BD .wait_vbl_done +00:01BD _vsync +00:01BD _wait_vbl_done +00:01CD .remove_VBL +00:01CD _remove_VBL +00:01D0 .remove_int +00:01ED .add_VBL +00:01ED _add_VBL +00:01F0 .add_int +00:10B9 .memset_simple +00:10C2 .memcpy_simple +00:10DF .display_off +00:10DF _display_off +00:10F7 _actors_update +00:155D _SetBankedBkgData +00:1579 _SetBankedSpriteData +00:1595 _SetBankedBkgTiles +00:15B1 _SetBankedWinTiles +00:15CD _ReadBankedFarPtr +00:15EF _ReadBankedUWORD +00:1609 _MemcpyBanked +00:162B _MemcpyVRAMBanked +00:165A _IndexOfFarPtr +00:16DF _camera_update +00:1812 _load_animations +00:186B _events_update +00:193E _timers_update +00:19C7 _input_update +00:19EA .sio_ISR +00:1A44 .timer_ISR +00:1A59 _simple_LCD_isr +00:1AD8 _fullscreen_LCD_isr +00:1B04 _VBL_isr +00:1B4E _isqrt +00:1BAB _sine_wave +00:1CAB _dir_lookup +00:1CB3 _dir_angle_lookup +00:1CB7 _hUGETrackerRoutine +00:1CDE _music_events_update +00:1D60 _music_play_isr +00:1E01 _parallax_LCD_isr +00:1E3E _projectiles_update +00:22BF _projectiles_render +00:2414 _scroll_load_pending_row +00:249A _scroll_load_row +00:250F _scroll_load_col +00:2578 _scroll_load_pending_col +00:2600 _set_bkg_submap +00:2643 _set_xy_win_submap +00:2670 .set_xy_win_submap +00:2679 .set_xy_bkg_submap +00:2688 .set_xy_submap +00:26D4 _sfx_play_isr +00:27AD _on_SIO_receive +00:27EE _SIO_update +00:2855 _ui_update +00:298D _vm_sgb_transfer +00:29DA _vm_load_text +00:2C30 _vm_switch +00:2D61 _vm_beginthread +00:2E85 _vm_rpn +00:389D _vm_get_far +00:390B _vm_call_native +00:391E _VM_STEP +00:3988 _script_runner_update +00:3AED _fill_win_rect +00:3AFF _rand +00:3AFF _randw +00:3B2A _initrand +00:3B2C .initrand +00:3B35 _get_bkg_data +00:3B35 _get_win_data +00:3B82 _get_sprite_data +00:3BB5 _abs +00:3BC2 _set_win_tiles +00:3BD6 _set_tile_data +00:3BDB _set_bkg_data +00:3BDB _set_win_data +00:3BE3 _set_sprite_data +00:3C13 _reverse +00:3C47 ___call__banked +00:3C64 _to_far_ptr +00:3C9A .add_LCD +00:3C9A _add_LCD +00:3CA0 .remove_LCD +00:3CA0 _remove_LCD +00:3CA6 .fill_rect_wtt +00:3CAF .fill_rect_btt +00:3CFC _fill_bkg_rect +00:3D0E .padup +00:3D0E _waitpadup +00:3D1E .jpad +00:3D1E _joypad +00:3D46 _waitpad +00:3D47 .wait_pad +00:3D4E ___sdcc_call_hl +00:3D4F _memset +00:3D82 .set_xy_wtt +00:3D8B .set_xy_btt +00:3D9A .set_xy_tt +00:3DDE ___sdcc_bcall_ehl +00:3DF8 _set_bkg_tiles +00:3E24 gsinit +00:C0A0 __cpu +00:C0A1 __is_GBA +00:C0A2 .mode +00:C0A3 .sys_time +00:C0A3 _sys_time +00:C0A5 .int_0x40 +00:C0B1 _actors +00:C4F5 _actors_active_head +00:C4F7 _actors_active_tail +00:C4F9 _actors_inactive_head +00:C4FB _screen_x +00:C4FC _screen_y +00:C4FD _invalid +00:C4FF _player_moving +00:C500 _player_iframes +00:C501 _player_collision_actor +00:C503 _emote_actor +00:C505 _emote_timer +00:C506 _allocated_sprite_tiles +00:C507 _allocated_hardware_sprites +00:C514 _camera_x +00:C516 _camera_y +00:C518 _camera_offset_x +00:C519 _camera_offset_y +00:C51A _camera_deadzone_x +00:C51B _camera_deadzone_y +00:C51C _camera_settings +00:C520 _current_scene +00:C523 _image_bank +00:C524 _image_ptr +00:C526 _image_attr_bank +00:C527 _image_attr_ptr +00:C529 _collision_bank +00:C52A _collision_ptr +00:C52C _image_tile_width +00:C52D _image_tile_height +00:C52E _image_width +00:C530 _image_height +00:C532 _sprites_len +00:C533 _actors_len +00:C534 _projectiles_len +00:C535 _player_sprite_len +00:C536 _scene_type +00:C537 _scene_LCD_type +00:C538 _scene_stack +00:C578 _scene_stack_ptr +00:C57A _scene_sprites_base_tiles +00:C5BA _input_events +00:C5E2 _input_slots +00:C5EA _timer_events +00:C5FE _timer_values +00:C606 _fade_running +00:C607 _fade_frames_per_step +00:C608 _fade_timer +00:C610 _joypads +00:C615 _frame_joy +00:C616 _last_joy +00:C617 _recent_joy +00:C618 _SIO_status +00:C619 _link_byte_sent +00:C61A _link_next_mode +00:C61B _save_blob_size +00:C61D _routine_queue +00:C621 _routine_queue_head +00:C622 _routine_queue_tail +00:C623 _music_events +00:C637 _music_current_track_bank +00:C638 _music_mute_mask +00:C639 _music_effective_mute +00:C63A _music_next_track +00:C63C _music_current_track +00:C63E _music_play_isr_counter +00:C63F _music_play_isr_pause +00:C640 _music_global_mute_mask +00:C641 _music_sfx_priority +00:C642 _DMG_palette +00:C645 _SprPalette +00:C685 _parallax_rows +00:C697 _parallax_row +00:C699 _projectiles +00:C752 _projectile_defs +00:C7C5 _projectiles_active_head +00:C7C7 _projectiles_inactive_head +00:C7CE _scroll_x +00:C7D0 _scroll_y +00:C7D2 _draw_scroll_x +00:C7D4 _draw_scroll_y +00:C7D6 _scroll_x_max +00:C7D8 _scroll_y_max +00:C7DA _scroll_offset_x +00:C7DB _scroll_offset_y +00:C7DC _pending_h_x +00:C7DD _pending_h_y +00:C7DE _pending_h_i +00:C7DF _pending_w_x +00:C7E0 _pending_w_y +00:C7E1 _pending_w_i +00:C7E2 _current_row +00:C7E4 _new_row +00:C7E6 _current_col +00:C7E8 _new_col +00:C7EA .image_tile_width +00:C7EB _sfx_play_bank +00:C7EC _sfx_play_sample +00:C7EE _sfx_frame_skip +00:C7EF _link_operation_mode +00:C7F0 _link_packet +00:C810 _link_packet_len +00:C811 _link_packet_ptr +00:C813 _link_packet_received +00:C814 _link_packet_snd_len +00:C815 _link_packet_snd_ptr +00:C817 _link_packet_sent +00:C818 __is_CGB +00:C819 __is_SGB +00:C81A __current_ram_bank +00:C81B _triggers +00:C913 _last_trigger_tx +00:C914 _last_trigger_ty +00:C915 _last_trigger +00:C916 _win_pos_x +00:C917 _win_dest_pos_x +00:C918 _win_pos_y +00:C919 _win_dest_pos_y +00:C91A _win_speed +00:C91B _text_drawn +00:C91C _current_text_speed +00:C91D _text_options +00:C91E _text_in_speed +00:C91F _text_out_speed +00:C920 _text_draw_speed +00:C921 _text_ff_joypad +00:C922 _text_ff +00:C923 _text_bkg_fill +00:C924 _ui_text_data +00:CA2E _vwf_current_mask +00:CA2F _vwf_current_rotate +00:CA30 _vwf_inverse_map +00:CA31 _vwf_direction +00:CA32 _vwf_current_font_desc +00:CA3A _vwf_current_font_bank +00:CA3B _vwf_current_font_idx +00:CA3C _text_render_base_addr +00:CA3E _text_scroll_addr +00:CA40 _text_scroll_width +00:CA41 _text_scroll_height +00:CA42 _text_scroll_fill +00:CA43 _text_sound_mask +00:CA44 _text_sound_bank +00:CA45 _text_sound_data +00:CA47 _overlay_priority +00:CA48 _text_palette +00:CA4F __itoa_fmt_len +00:CA50 .itoa_fmt_buf +00:CA53 _CTXS +00:CB83 _first_ctx +00:CB85 _free_ctxs +00:CB87 _old_executing_ctx +00:CB89 _executing_ctx +00:CB8B _vm_lock_state +00:CB8C _vm_loaded_state +00:CB8D _vm_exception_code +00:CB8E _vm_exception_params_length +00:CB8F _vm_exception_params_bank +00:CB90 _vm_exception_params_offset +00:CB94 _script_memory +00:D99A _topdown_grid +00:D99B ___rand_seed +00:D9B9 _hUGE_current_wave +00:D9B9 hUGE_current_wave +00:D9BA _hUGE_mute_mask +00:DA01 ___call_banked_addr +00:DA01 ___call_banked_ptr +00:DA03 ___call_banked_bank +00:DA05 .int_0x48 +00:DA0D ___current_metasprite +00:DA0F ___current_base_tile +00:DA10 ___current_base_prop +00:DA11 _fade_style +00:DA12 _game_time +00:DA13 _PRN_PKT_START +00:DA21 _hide_sprites +00:DA22 _show_actors_on_overlay +00:DA23 _overlay_cut_scanline +00:DA24 __submap_tile_offset +00:DA25 _triggers_len +00:DA26 _exchange_state +00:DA27 ___render_shadow_OAM +00:DA28 __map_tile_offset +00:FF90 __current_bank +00:FF92 __shadow_OAM_base +03:4000 ___func_ACTOR +03:4000 _actors_init +03:403A _emote_offsets +03:4049 _emote_metasprite +03:4055 _player_init +03:407B _deactivate_actor +03:41DC _activate_actor +03:431B _activate_actors_in_row +03:4412 _activate_actors_in_col +03:4563 _actor_set_frames +03:45B9 _actor_set_frame_offset +03:45F4 _actor_get_frame_offset +03:4606 _actor_set_anim_idle +03:4634 _actor_set_anim_moving +03:4665 _actor_set_dir +03:46CA _actor_at_tile +03:479E _actor_in_front_of_player +03:4852 _actor_overlapping_player +03:4A61 _actor_overlapping_bb +03:4CDF _actors_handle_player_collision +03:4D6B _check_collision_in_direction +03:5589 _projectiles_init +03:55B8 _projectile_launch +03:59B2 ___func_bg_outside_cgb_tileset +03:59B2 _bg_outside_cgb_tileset +03:6944 ___func_scene_1_collisions +03:6944 _scene_1_collisions +03:7FC4 ___func_scene_1 +03:7FC4 _scene_1 +09:4000 _bootstrap_script +09:400B _camera_init +09:4031 _input_init +09:4057 _remove_LCD_ISRs +09:4072 _parallax_init +09:4092 _SIO_init +09:40BB _actor_10_interact +09:40BC GBVM$actor_10_interact$40c24373 +09:40F0 _actor_11_interact +09:40F1 GBVM$actor_11_interact$456de86c +09:4125 _actor_12_interact +09:4126 GBVM$actor_12_interact$fc3d2f59 +09:4158 _actor_13_interact +09:4159 GBVM$actor_13_interact$aea1309f +09:418C _actor_4_interact +09:418D GBVM$actor_4_interact$66ba34f7_ +09:41C4 _actor_6_interact +09:41C5 GBVM$actor_6_interact$3a7a7459_ +09:41FD _actor_9_interact +09:41FE GBVM$actor_9_interact$a251238e_ +09:4228 ___func_bg_cave +09:4228 _bg_cave +09:4236 ___func_bg_endscreen +09:4236 _bg_endscreen +09:4244 ___func_bg_fate6housef2 +09:4244 _bg_fate6housef2 +09:4252 ___func_bg_house_wide +09:4252 _bg_house_wide +09:4260 ___func_bg_house +09:4260 _bg_house +09:426E ___func_bg_housef2 +09:426E _bg_housef2 +09:427C ___func_bg_lab1 +09:427C _bg_lab1 +09:428A ___func_bg_logoscreen +09:428A _bg_logoscreen +09:4298 ___func_bg_outside +09:4298 _bg_outside +09:42A6 ___func_bg_overworld_test_1 +09:42A6 _bg_overworld_test_1 +09:42B4 ___func_bg_questscreen +09:42B4 _bg_questscreen +09:42C2 ___func_bg_slighhousef2 +09:42C2 _bg_slighhousef2 +09:42D0 ___func_bg_titlescreen +09:42D0 _bg_titlescreen +09:42DE ___func_scene_1_sprites +09:42DE _scene_1_sprites +09:42E4 _scene_10_init +09:42E5 GBVM$scene_10_init$autofade$a2e +09:42F1 ___func_scene_10 +09:42F1 _scene_10 +09:432C _scene_11_init +09:432D GBVM$scene_11_init$18f66311_1d2 +09:4331 GBVM$scene_11_init$55e2f8e8_c3d +09:4335 GBVM$scene_11_init$autofade$9df +09:4341 ___func_scene_11 +09:4341 _scene_11 +09:437C _scene_12_init +09:437D GBVM$scene_12_init$e54106ac_22c +09:4388 GBVM$scene_12_init$00b1d631_23e +09:4390 GBVM_END$scene_12_init$00b1d631 +09:4391 ___func_scene_12 +09:4391 _scene_12 +09:43CC _scene_13_init +09:43CD GBVM$scene_13_init$5629f726_847 +09:43D5 GBVM$scene_13_init$autofade$80b +09:43D5 GBVM_END$scene_13_init$5629f726 +09:43E1 ___func_scene_13 +09:43E1 _scene_13 +09:441C ___func_scene_14_actors +09:441C _scene_14_actors +09:4450 _scene_14_init +09:4451 GBVM$scene_14_init$8bc3a7b3_146 +09:4455 GBVM$scene_14_init$8ed90e1e_1d2 +09:4459 GBVM$scene_14_init$autofade$7cb +09:4465 ___func_scene_14_triggers +09:4465 _scene_14_triggers +09:446D ___func_scene_14 +09:446D _scene_14 +09:44A8 ___func_scene_15_sprites +09:44A8 _scene_15_sprites +09:44AB ___func_scene_15 +09:44AB _scene_15 +09:44E6 _scene_16_init +09:44E9 GBVM$scene_16_init$044790ae_56a +09:44F1 GBVM$scene_16_init$278aa91b_072 +09:44F5 GBVM$scene_16_init$autofade$59d +09:4501 ___func_scene_16 +09:4501 _scene_16 +09:453C ___func_scene_17_actors +09:453C _scene_17_actors +09:4570 _scene_17_init +09:4571 GBVM$scene_17_init$3410b154_9bf +09:4579 GBVM$scene_17_init$autofade$a1b +09:4579 GBVM_END$scene_17_init$3410b154 +09:4585 ___func_scene_17_sprites +09:4585 _scene_17_sprites +09:4588 ___func_scene_17_triggers +09:4588 _scene_17_triggers +09:4590 ___func_scene_17 +09:4590 _scene_17 +09:45CB ___func_scene_2_actors +09:45CB _scene_2_actors +09:45FF _scene_2_init +09:4600 GBVM$scene_2_init$7f8cfc5c_64c4 +09:4604 GBVM$scene_2_init$139e6760_d53c +09:4608 GBVM$scene_2_init$autofade$921a +09:4614 ___func_scene_2_sprites +09:4614 _scene_2_sprites +09:4617 ___func_scene_2_triggers +09:4617 _scene_2_triggers +09:4627 ___func_scene_2 +09:4627 _scene_2 +09:4662 ___func_scene_3_actors +09:4662 _scene_3_actors +09:4696 _scene_3_init +09:4697 GBVM$scene_3_init$e22d6e45_c2d9 +09:469B GBVM$scene_3_init$28dd4168_d4f4 +09:469F GBVM$scene_3_init$autofade$7bc0 +09:46AB ___func_scene_3_sprites +09:46AB _scene_3_sprites +09:46AE ___func_scene_3_triggers +09:46AE _scene_3_triggers +09:46B6 ___func_scene_3 +09:46B6 _scene_3 +09:46F1 _scene_4_init +09:46F2 GBVM$scene_4_init$b5a81f5f_a2ad +09:46F6 GBVM$scene_4_init$d5d47b9d_feef +09:46FA GBVM$scene_4_init$autofade$bae8 +09:4706 ___func_scene_4_triggers +09:4706 _scene_4_triggers +09:471E ___func_scene_4 +09:471E _scene_4 +09:4759 ___func_scene_5_actors +09:4759 _scene_5_actors +09:478D _scene_5_init +09:478E GBVM$scene_5_init$94e5b63b_0b3b +09:4792 GBVM$scene_5_init$d9181b4d_e7be +09:4796 GBVM$scene_5_init$autofade$ad0d +09:47A2 ___func_scene_5_sprites +09:47A2 _scene_5_sprites +09:47A5 ___func_scene_5_triggers +09:47A5 _scene_5_triggers +09:47AD ___func_scene_5 +09:47AD _scene_5 +09:47E8 ___func_scene_6_actors +09:47E8 _scene_6_actors +09:481C _scene_6_init +09:481D GBVM$scene_6_init$b38e576e_e806 +09:4821 GBVM$scene_6_init$67f7a844_bef6 +09:4825 GBVM$scene_6_init$autofade$26de +09:4831 ___func_scene_6_sprites +09:4831 _scene_6_sprites +09:4834 ___func_scene_6_triggers +09:4834 _scene_6_triggers +09:483C ___func_scene_6 +09:483C _scene_6 +09:4877 ___func_scene_7_actors +09:4877 _scene_7_actors +09:48AB _scene_7_init +09:48AC GBVM$scene_7_init$e1732ea6_42d6 +09:48B0 GBVM$scene_7_init$3975b612_ea6a +09:48B4 GBVM$scene_7_init$autofade$5690 +09:48C0 ___func_scene_7_sprites +09:48C0 _scene_7_sprites +09:48C3 ___func_scene_7_triggers +09:48C3 _scene_7_triggers +09:48CB ___func_scene_7 +09:48CB _scene_7 +09:4906 _scene_8_init +09:4907 GBVM$scene_8_init$60700987_6934 +09:490B GBVM$scene_8_init$329fbc56_4c91 +09:490F GBVM$scene_8_init$autofade$d066 +09:491B ___func_scene_8_sprites +09:491B _scene_8_sprites +09:4921 ___func_scene_8_triggers +09:4921 _scene_8_triggers +09:4931 ___func_scene_8 +09:4931 _scene_8 +09:496C _scene_9_init +09:496D GBVM$scene_9_init$eb25df35_0d3a +09:4971 GBVM$scene_9_init$e1f0c0ed_24f8 +09:4975 GBVM$scene_9_init$autofade$9722 +09:4981 ___func_scene_9_triggers +09:4981 _scene_9_triggers +09:4989 ___func_scene_9 +09:4989 _scene_9 +09:49C4 _script_engine_init +09:49D8 _script_input_4 +09:49DA GBVM$script_input_4$5202b387_b3 +09:4A0C GBVM$script_input_4$987cb2c9_e6 +09:4A14 GBVM_END$script_input_4$987cb2c +09:4A15 _script_input_6 +09:4A17 GBVM$script_input_6$9ffc3716_9d +09:4A4A _script_input +09:4A4C GBVM$script_input$7521920b_846a +09:4A4D GBVM$script_input$0b41a76f_f0b9 +09:4A80 ___func_sprite_cat_bank2_tilese +09:4A80 _sprite_cat_bank2_tileset +09:4AA2 ___func_sprite_cat_tileset +09:4AA2 _sprite_cat_tileset +09:4AC4 ___func_sprite_cat +09:4AC4 _sprite_cat_metasprite_0 +09:4AD0 _sprite_cat_metasprites +09:4AD2 _sprite_cat_animations +09:4AE2 _sprite_cat_animations_lookup +09:4AE4 _sprite_cat +09:4AF7 ___func_sprite_checkbox_bank2_t +09:4AF7 _sprite_checkbox_bank2_tileset +09:4B19 ___func_sprite_checkbox_tileset +09:4B19 _sprite_checkbox_tileset +09:4B3B ___func_sprite_checkbox +09:4B3B _sprite_checkbox_metasprite_0 +09:4B43 _sprite_checkbox_metasprite_1 +09:4B4B _sprite_checkbox_metasprites +09:4B4F _sprite_checkbox_animations +09:4B5F _sprite_checkbox_animations_loo +09:4B61 _sprite_checkbox +09:4B74 ___func_sprite_dog_bank2_tilese +09:4B74 _sprite_dog_bank2_tileset +09:4B96 ___func_sprite_dog_tileset +09:4B96 _sprite_dog_tileset +09:4BB8 ___func_sprite_dog +09:4BB8 _sprite_dog_metasprite_0 +09:4BC4 _sprite_dog_metasprites +09:4BC6 _sprite_dog_animations +09:4BD6 _sprite_dog_animations_lookup +09:4BD8 _sprite_dog +09:4BEB ___func_sprite_sign_bank2_tiles +09:4BEB _sprite_sign_bank2_tileset +09:4C0D ___func_sprite_sign_tileset +09:4C0D _sprite_sign_tileset +09:4C2F ___func_sprite_sign +09:4C2F _sprite_sign_metasprite_0 +09:4C3B _sprite_sign_metasprites +09:4C3D _sprite_sign_animations +09:4C4D _sprite_sign_animations_lookup +09:4C4F _sprite_sign +09:4C62 _spritesheet_none_metasprite +09:4C66 _spritesheet_none_metasprites +09:4C68 _spritesheet_none +09:4C7B _trigger_0_interact +09:4C7E GBVM$trigger_0_interact$07bf8d6 +09:4CB1 _trigger_1_interact +09:4CB4 GBVM$trigger_1_interact$0fa8d5b +09:4CE7 _trigger_10_interact +09:4CEA GBVM$trigger_10_interact$810b27 +09:4D1D _trigger_11_interact +09:4D20 GBVM$trigger_11_interact$0c4892 +09:4D53 _trigger_12_interact +09:4D56 GBVM$trigger_12_interact$d99278 +09:4D89 _trigger_13_interact +09:4D8C GBVM$trigger_13_interact$6044fe +09:4DBF _trigger_14_interact +09:4DC2 GBVM$trigger_14_interact$e2c16b +09:4DF5 _trigger_15_interact +09:4DF8 GBVM$trigger_15_interact$fb757d +09:4E2B _trigger_17_interact +09:4E2E GBVM$trigger_17_interact$6ebaa0 +09:4E61 _trigger_18_interact +09:4E64 GBVM$trigger_18_interact$4466f8 +09:4E97 _trigger_19_interact +09:4E9A GBVM$trigger_19_interact$75eeb6 +09:4ECD _trigger_2_interact +09:4ED0 GBVM$trigger_2_interact$0fe0fc3 +09:4F03 _trigger_20_interact +09:4F06 GBVM$trigger_20_interact$e838ec +09:4F39 _trigger_21_interact +09:4F3C GBVM$trigger_21_interact$46acf3 +09:4F6F _trigger_22_interact +09:4F72 GBVM$trigger_22_interact$4a9471 +09:4FA5 _trigger_24_interact +09:4FA8 GBVM$trigger_24_interact$f18251 +09:4FDB _trigger_3_interact +09:4FDE GBVM$trigger_3_interact$d52daab +09:5011 _trigger_4_interact +09:5014 GBVM$trigger_4_interact$4aaedc5 +09:5047 _trigger_5_interact +09:504A GBVM$trigger_5_interact$c420a82 +09:507D _trigger_6_interact +09:5080 GBVM$trigger_6_interact$9ed4421 +09:50B3 _trigger_7_interact +09:50B6 GBVM$trigger_7_interact$d4cd17b +09:50E9 _trigger_8_interact +09:50EC GBVM$trigger_8_interact$f579846 +09:511F _logo_init +09:512F _logo_update +06:4000 _core_reset +06:4075 _process_VM +06:42F3 _core_run +06:43CF _scroll_init +06:43F9 _scroll_reset +06:4419 _scroll_update +06:4550 _scroll_viewport +06:49E9 _scroll_repaint +06:49F9 _scroll_render_rows +06:4A8F _scroll_queue_row +06:4AB1 _scroll_queue_col +06:4AFC ___func_VM_GAMEBOY +06:4AFC _vm_set_sprites_visible +06:4B13 _vm_input_wait +06:4B3C _vm_context_prepare +06:4B67 _vm_input_attach +06:4B7D _vm_input_detach +06:4B91 _vm_input_get +06:4BC5 _vm_fade +06:4BF5 _vm_timer_prepare +06:4C20 _vm_timer_set +06:4C3B _vm_timer_stop +06:4C4F _vm_timer_reset +06:4C66 _vm_get_tile_xy +06:4D3C _vm_replace_tile +06:4DE7 _vm_poll +06:4EB9 _vm_set_sprite_mode +06:4ECD _vm_replace_tile_xy +06:50AD _vm_rumble +06:50CD _vm_load_tileset +06:519E ___func_VM_MATH +06:519E _vm_sin_scale +06:523A _vm_cos_scale +06:52D8 ___func_VM_UI +06:52D8 _vm_display_text +06:5341 _vm_switch_text_layer +06:535B _vm_overlay_setpos +06:5375 _vm_overlay_wait +06:5405 _vm_overlay_move_to +06:5449 _vm_overlay_set_scroll +06:5482 _vm_overlay_clear +06:5554 _vm_overlay_show +06:55A2 _vm_choice +06:56BD _vm_set_font +06:56EC _vm_overlay_scroll +06:574D _vm_overlay_set_submap +06:57B9 _vm_overlay_set_submap_ex +06:58BA _vm_overlay_set_map +06:5A19 _vm_set_text_sound +06:5A32 ___func_bg_fate6housef2_tileset +06:5A32 _bg_fate6housef2_tileset +06:5E34 ___func_bg_housef2_tileset +06:5E34 _bg_housef2_tileset +06:6236 ___func_bg_outside_tilemap_attr +06:6236 _bg_outside_tilemap_attr +06:6636 ___func_bg_outside_tilemap +06:6636 _bg_outside_tilemap +06:6A36 ___func_bg_overworld_test_1_til +06:6A36 _bg_overworld_test_1_tileset +06:7128 ___func_bg_slighhousef2_tileset +06:7128 _bg_slighhousef2_tileset +06:752A ___func_cursor_image +06:752A _cursor_image +06:753A ___func_scene_17_collisions +06:753A _scene_17_collisions +06:793A _topdown_init +06:79D6 _topdown_update +07:4000 ___HandleCrash_banked +07:4368 _CGBFadeToWhiteStep +07:43A1 _CGBFadeToBlackStep +07:43DC _ApplyPaletteChangeColor +07:4419 _fade_speeds +07:4420 _DMGFadeToWhiteStep +07:4441 _DMGFadeToBlackStep +07:4464 _ApplyPaletteChangeDMG +07:44BA _fade_init +07:44DB _fade_in +07:4513 _fade_out +07:454C _fade_update +07:459F _fade_applypalettechange +07:45B1 _fade_setspeed +07:45C1 _fade_in_modal +07:45DB _fade_out_modal +07:45F5 _printer_send_receive +07:462B _printer_send_byte +07:463E _printer_send_command +07:4661 _printer_print_tile +07:46F2 _printer_wait +07:4724 _gbprinter_detect +07:473E _gbprinter_print_overlay +07:490B _data_init +07:4956 _save_points +07:49B6 _data_slot_address +07:4A2E _data_save +07:4AEF _data_load +07:4C03 _data_clear +07:4C30 _data_peek +07:4CD1 _atan2 +07:4E6A _atan2_table +07:4FD2 _set_sgb_border +07:51BC _trigger_reset +07:51CC _trigger_interact +07:520B _trigger_activate_at +07:5256 _trigger_at_intersection +07:537D _trigger_activate_at_intersecti +07:54BE _trigger_at_tile +07:554F ___func_VM_CAMERA +07:554F _vm_camera_move_to +07:57A2 _vm_camera_set_pos +07:57E9 _camera_shake_frames +07:5918 ___func_VM_PALETTE +07:5918 _vm_load_palette +07:5AC1 _actor_0_interact +07:5AC4 GBVM$actor_0_interact$473d560c_ +07:5AD0 GBVM$actor_0_interact$1f0f62a7_ +07:5AD5 GBVM$actor_0_interact$99d2e956_ +07:5B04 GBVM$actor_0_interact$9496b732_ +07:5B0F GBVM$actor_0_interact$b0d5b211_ +07:5B0F GBVM_END$actor_0_interact$473d5 +07:5B18 GBVM$actor_0_interact$fb76c03c_ +07:5B21 GBVM$actor_0_interact$1faccab1_ +07:5B2D GBVM$actor_0_interact$679f315d_ +07:5BD3 GBVM$actor_0_interact$5103d5e5_ +07:5BD8 GBVM$actor_0_interact$3a42fdaf_ +07:5BDD GBVM_END$actor_0_interact$1facc +07:5BE0 GBVM_END$actor_0_interact$fb76c +07:5BE3 GBVM$actor_0_interact$e2992086_ +07:5C7D GBVM_END$actor_0_interact$b0d5b +07:5C7E _actor_5_interact +07:5C81 GBVM$actor_5_interact$f32bb834_ +07:5CE8 GBVM$actor_5_interact$0b32cb13_ +07:5CED GBVM$actor_5_interact$19fb6aa5_ +07:5D20 ___func_bg_cave_tilemap_attr +07:5D20 _bg_cave_tilemap_attr +07:5E88 ___func_bg_cave_tilemap +07:5E88 _bg_cave_tilemap +07:5FF0 ___func_bg_endscreen_cgb_tilese +07:5FF0 _bg_endscreen_cgb_tileset +07:61B2 ___func_bg_endscreen_tilemap_at +07:61B2 _bg_endscreen_tilemap_attr +07:631A ___func_bg_endscreen_tilemap +07:631A _bg_endscreen_tilemap +07:6482 ___func_bg_fate6housef2_tilemap +07:6482 _bg_fate6housef2_tilemap_attr +07:65EA ___func_bg_fate6housef2_tilemap +07:65EA _bg_fate6housef2_tilemap +07:6752 ___func_bg_house_tileset +07:6752 _bg_house_tileset +07:6A24 ___func_bg_house_wide_tilemap_a +07:6A24 _bg_house_wide_tilemap_attr +07:6C64 ___func_bg_house_wide_tilemap +07:6C64 _bg_house_wide_tilemap +07:6EA4 ___func_bg_house_wide_tileset +07:6EA4 _bg_house_wide_tileset +07:71F6 ___func_bg_lab1_tilemap_attr +07:71F6 _bg_lab1_tilemap_attr +07:73D6 ___func_bg_lab1_tilemap +07:73D6 _bg_lab1_tilemap +07:75B6 ___func_scene_1_actors +07:75B6 _scene_1_actors +07:7756 ___func_scene_2_collisions +07:7756 _scene_2_collisions +07:7996 ___func_scene_4_collisions +07:7996 _scene_4_collisions +07:7BD6 ___func_scene_6_collisions +07:7BD6 _scene_6_collisions +07:7DB6 ___func_scene_8_collisions +07:7DB6 _scene_8_collisions +07:7FF6 GBVM$script_1$d7c90f6e_4dc3_41f +07:7FF6 _script_1 +07:7FFE GBVM_END$script_1$d7c90f6e_4dc3 +05:4000 _load_init +05:4013 _spritesheet_none_far +05:4016 _load_bkg_tileset +05:40F3 _load_background +05:41B9 _load_sprite +05:428F _load_bounds +05:42AC _do_load_palette +05:4331 _load_scene +05:4991 _load_player +05:49DA _load_emote +05:49F3 ___func_VM_SIO +05:49F3 _vm_sio_set_mode +05:4A05 _vm_sio_exchange +05:4CE7 ___func_bg_endscreen_tileset +05:4CE7 _bg_endscreen_tileset +05:54E9 ___func_bg_questscreen_tileset +05:54E9 _bg_questscreen_tileset +05:5C6B ___func_font_gbs_mono +05:6A1B _font_gbs_mono +05:74FA _song_rulz_outside_0_Data +05:7FE6 _song_rulz_spaceemergency_0_Dat +05:7FFB ___func_scene_14_sprites +05:7FFB _scene_14_sprites +08:4000 _events_init +08:4040 _timers_init +08:40E8 _save_sram_banks +08:4170 _erase_flash +08:4186 _restore_sram_bank +08:41BC _restore_sram +08:41D2 _save_sram +08:41FE _music_init_driver +08:425A _music_init_events +08:4296 _music_events_poll +08:42BE _music_pause +08:42E0 _palette_init +08:4317 _CGBZeroPalette +08:432C _scroll_rect +08:4369 ___func_VM_LOAD_SAVE +08:4369 _vm_save_clear +08:4378 _vm_save_peek +08:43FA ___func_VM_MUSIC +08:43FA _vm_music_play +08:4447 _vm_music_stop +08:4469 _vm_music_mute +08:44A7 _vm_music_routine +08:44CE _vm_music_setpos +08:44D4 _vm_sound_mastervol +08:44DA _vm_sfx_play +08:454D ___func_VM_PROJECTILE +08:454D _vm_projectile_launch +08:458E _vm_projectile_load_type +08:4620 ___func_VM_RTC +08:4620 _vm_rtc_latch +08:4628 _vm_rtc_get +08:468F _vm_rtc_set +08:46ED _vm_rtc_start +08:4710 ___func_VM_SCENE +08:4710 _vm_scene_push +08:4786 _vm_scene_pop +08:4794 _vm_scene_pop_all +08:479F _vm_scene_stack_reset +08:47A8 _itoa_fmt +08:47DC .utoa_fmt +08:4886 _actor_1_interact +08:4889 GBVM$actor_1_interact$b7eb01cb_ +08:48EA GBVM$actor_1_interact$9c774420_ +08:48F4 _actor_14_interact +08:48F5 GBVM$actor_14_interact$70022942 +08:4924 _actor_15_interact +08:4925 GBVM$actor_15_interact$31177c6a +08:497E _actor_2_interact +08:497F GBVM$actor_2_interact$049a13b7_ +08:4988 GBVM$actor_2_interact$ad1b9670_ +08:4A2D GBVM$actor_2_interact$4783a794_ +08:4A32 GBVM$actor_2_interact$b4a8e402_ +08:4A3A GBVM$actor_2_interact$cc3a5ed3_ +08:4A69 GBVM_END$actor_2_interact$049a1 +08:4A6A _actor_3_interact +08:4A6D GBVM$actor_3_interact$fc2374b0_ +08:4AA8 GBVM$actor_3_interact$38029e79_ +08:4AB2 _actor_8_interact +08:4AB3 GBVM$actor_8_interact$f5e8edd7_ +08:4AFE ___func_bg_house_tilemap_attr +08:4AFE _bg_house_tilemap_attr +08:4C66 ___func_bg_house_tilemap +08:4C66 _bg_house_tilemap +08:4DCE ___func_bg_housef2_tilemap_attr +08:4DCE _bg_housef2_tilemap_attr +08:4F36 ___func_bg_housef2_tilemap +08:4F36 _bg_housef2_tilemap +08:509E ___func_bg_logoscreen_tilemap_a +08:509E _bg_logoscreen_tilemap_attr +08:5206 ___func_bg_logoscreen_tilemap +08:5206 _bg_logoscreen_tilemap +08:536E ___func_bg_questscreen_tilemap_ +08:536E _bg_questscreen_tilemap_attr +08:54D6 ___func_bg_questscreen_tilemap +08:54D6 _bg_questscreen_tilemap +08:563E ___func_bg_slighhousef2_tilemap +08:563E _bg_slighhousef2_tilemap_attr +08:57A6 ___func_bg_slighhousef2_tilemap +08:57A6 _bg_slighhousef2_tilemap +08:590E ___func_bg_titlescreen_tilemap_ +08:590E _bg_titlescreen_tilemap_attr +08:5A76 ___func_bg_titlescreen_tilemap +08:5A76 _bg_titlescreen_tilemap +08:5BDE ___func_emote_love +08:5BDE _emote_love +08:5C1E ___func_frame_image +08:5C1E _frame_image +08:5CAE ___func_palette_0 +08:5CAE _palette_0 +08:5CF1 ___func_palette_1 +08:5CF1 _palette_1 +08:5D34 ___func_palette_10 +08:5D34 _palette_10 +08:5D77 ___func_palette_11 +08:5D77 _palette_11 +08:5DBA ___func_palette_12 +08:5DBA _palette_12 +08:5DFD ___func_palette_13 +08:5DFD _palette_13 +08:5E40 ___func_palette_2 +08:5E40 _palette_2 +08:5E83 ___func_palette_3 +08:5E83 _palette_3 +08:5EC6 ___func_palette_4 +08:5EC6 _palette_4 +08:5F09 ___func_palette_5 +08:5F09 _palette_5 +08:5F4C ___func_palette_6 +08:5F4C _palette_6 +08:5F8F ___func_palette_7 +08:5F8F _palette_7 +08:5FD2 ___func_palette_8 +08:5FD2 _palette_8 +08:6015 ___func_palette_9 +08:6015 _palette_9 +08:6058 ___func_scene_1_triggers +08:6058 _scene_1_triggers +08:60A8 ___func_scene_10_collisions +08:60A8 _scene_10_collisions +08:6210 ___func_scene_11_collisions +08:6210 _scene_11_collisions +08:6378 ___func_scene_12_collisions +08:6378 _scene_12_collisions +08:64E0 ___func_scene_13_collisions +08:64E0 _scene_13_collisions +08:6648 ___func_scene_14_collisions +08:6648 _scene_14_collisions +08:67B0 ___func_scene_15_actors +08:67B0 _scene_15_actors +08:68B4 ___func_scene_15_collisions +08:68B4 _scene_15_collisions +08:6A1C _scene_15_init +08:6A1F GBVM$scene_15_init$4bfb9fac_2e5 +08:6A2B GBVM$scene_15_init$65d99d36_1d0 +08:6A3B GBVM$scene_15_init$b67ee083_007 +08:6A3B GBVM_END$scene_15_init$4bfb9fac +08:6A47 GBVM$scene_15_init$601f1694_945 +08:6A57 GBVM$scene_15_init$f9d5db74_72e +08:6A57 GBVM_END$scene_15_init$b67ee083 +08:6A63 GBVM$scene_15_init$df05fefa_c52 +08:6A73 GBVM$scene_15_init$f7e57e29_d7f +08:6A73 GBVM_END$scene_15_init$f9d5db74 +08:6A7F GBVM$scene_15_init$226800ab_912 +08:6A8F GBVM$scene_15_init$2de5d8ba_b81 +08:6A8F GBVM_END$scene_15_init$f7e57e29 +08:6A9B GBVM$scene_15_init$20af8478_1fe +08:6AAB GBVM$scene_15_init$2a9f033b_75a +08:6AAB GBVM_END$scene_15_init$2de5d8ba +08:6AB3 GBVM$scene_15_init$autofade$cdd +08:6ABE GBVM$scene_15_init$8b6f5629_ff7 +08:6AC0 GBVM$scene_15_init$52f12785_e59 +08:6AD5 ___func_scene_16_collisions +08:6AD5 _scene_16_collisions +08:6C3D ___func_scene_3_collisions +08:6C3D _scene_3_collisions +08:6DA5 ___func_scene_5_collisions +08:6DA5 _scene_5_collisions +08:6F0D ___func_scene_7_collisions +08:6F0D _scene_7_collisions +08:7075 ___func_scene_8_actors +08:7075 _scene_8_actors +08:70DD ___func_scene_9_collisions +08:70DD _scene_9_collisions +08:7245 ___func_sprite_actor_animated_b +08:7245 _sprite_actor_animated_bank2_ti +08:72E7 ___func_sprite_actor_animated_t +08:72E7 _sprite_actor_animated_tileset +08:7389 ___func_sprite_actor_animated +08:7389 _sprite_actor_animated_metaspri +08:7395 _sprite_actor_animated_metaspri +08:73A1 _sprite_actor_animated_metaspri +08:73AD _sprite_actor_animated_metaspri +08:73B9 _sprite_actor_animated_metaspri +08:73C5 _sprite_actor_animated_metaspri +08:73D1 _sprite_actor_animated_metaspri +08:73DD _sprite_actor_animated_metaspri +08:73E9 _sprite_actor_animated_metaspri +08:7401 _sprite_actor_animated_animatio +08:7411 _sprite_actor_animated_animatio +08:7413 _sprite_actor_animated +08:7426 ___func_sprite_charanimatedspri +08:7426 _sprite_charanimatedsprite_bank +08:74E8 ___func_sprite_charanimatedspri +08:74E8 _sprite_charanimatedsprite_tile +08:75AA ___func_sprite_charanimatedspri +08:75AA _sprite_charanimatedsprite_meta +08:75B6 _sprite_charanimatedsprite_meta +08:75C2 _sprite_charanimatedsprite_meta +08:75CE _sprite_charanimatedsprite_meta +08:75DA _sprite_charanimatedsprite_meta +08:75E6 _sprite_charanimatedsprite_meta +08:75F2 _sprite_charanimatedsprite_meta +08:75FE _sprite_charanimatedsprite_meta +08:760A _sprite_charanimatedsprite_meta +08:7622 _sprite_charanimatedsprite_anim +08:7632 _sprite_charanimatedsprite_anim +08:7634 _sprite_charanimatedsprite +08:7647 ___func_sprite_npc001_bank2_til +08:7647 _sprite_npc001_bank2_tileset +08:76A9 ___func_sprite_npc001_tileset +08:76A9 _sprite_npc001_tileset +08:770B ___func_sprite_npc001 +08:770B _sprite_npc001_metasprite_0 +08:7717 _sprite_npc001_metasprite_1 +08:7723 _sprite_npc001_metasprite_2 +08:772F _sprite_npc001_metasprite_3 +08:773B _sprite_npc001_metasprites +08:7743 _sprite_npc001_animations +08:7753 _sprite_npc001_animations_looku +08:7755 _sprite_npc001 +08:7768 ___func_sprite_npc002_bank2_til +08:7768 _sprite_npc002_bank2_tileset +08:77CA ___func_sprite_npc002_tileset +08:77CA _sprite_npc002_tileset +08:782C ___func_sprite_npc002 +08:782C _sprite_npc002_metasprite_0 +08:7838 _sprite_npc002_metasprite_1 +08:7844 _sprite_npc002_metasprite_2 +08:7850 _sprite_npc002_metasprite_3 +08:785C _sprite_npc002_metasprites +08:7864 _sprite_npc002_animations +08:7874 _sprite_npc002_animations_looku +08:7876 _sprite_npc002 +08:7889 ___func_sprite_npc005_bank2_til +08:7889 _sprite_npc005_bank2_tileset +08:794B ___func_sprite_npc005_tileset +08:794B _sprite_npc005_tileset +08:7A0D ___func_sprite_npc005 +08:7A0D _sprite_npc005_metasprite_0 +08:7A19 _sprite_npc005_metasprite_1 +08:7A25 _sprite_npc005_metasprite_2 +08:7A31 _sprite_npc005_metasprite_3 +08:7A3D _sprite_npc005_metasprite_4 +08:7A49 _sprite_npc005_metasprite_5 +08:7A55 _sprite_npc005_metasprite_6 +08:7A61 _sprite_npc005_metasprite_7 +08:7A6D _sprite_npc005_metasprites +08:7A85 _sprite_npc005_animations +08:7A95 _sprite_npc005_animations_looku +08:7A97 _sprite_npc005 +08:7AAA ___func_sprite_player_bank2_til +08:7AAA _sprite_player_bank2_tileset +08:7B6C ___func_sprite_player_tileset +08:7B6C _sprite_player_tileset +08:7C2E ___func_sprite_player +08:7C2E _sprite_player_metasprite_0 +08:7C3A _sprite_player_metasprite_1 +08:7C46 _sprite_player_metasprite_2 +08:7C52 _sprite_player_metasprite_3 +08:7C5E _sprite_player_metasprite_4 +08:7C6A _sprite_player_metasprite_5 +08:7C76 _sprite_player_metasprite_6 +08:7C82 _sprite_player_metasprite_7 +08:7C8E _sprite_player_metasprites +08:7CA6 _sprite_player_animations +08:7CB6 _sprite_player_animations_looku +08:7CB8 _sprite_player +08:7CCB ___func_tileset_default_frame +08:7CCB _tileset_default_frame +08:7D5D _trigger_16_interact +08:7D60 GBVM$trigger_16_interact$541b06 +08:7D69 GBVM$trigger_16_interact$ff7f5f +08:7DEE GBVM$trigger_16_interact$965bcb +08:7DF3 GBVM$trigger_16_interact$03be24 +08:7E25 GBVM_END$trigger_16_interact$54 +08:7E26 _trigger_23_interact +08:7E27 GBVM$trigger_23_interact$ceeeb0 +08:7E30 GBVM$trigger_23_interact$b3fed1 +08:7E98 GBVM$trigger_23_interact$21fc8d +08:7E9D GBVM$trigger_23_interact$ef932d +08:7EA5 GBVM_END$trigger_23_interact$ce +08:7EA6 _trigger_9_interact +08:7EA7 GBVM$trigger_9_interact$2db95ed +08:7EB0 GBVM$trigger_9_interact$580d2cb +08:7EB9 GBVM$trigger_9_interact$934ed60 +08:7F12 GBVM$trigger_9_interact$36ddffc +08:7F91 GBVM$trigger_9_interact$e3cc04f +08:7F96 GBVM$trigger_9_interact$03f750d +08:7F9B GBVM$trigger_9_interact$1d03073 +08:7FA0 GBVM$trigger_9_interact$f4d06c0 +08:7FA5 GBVM_END$trigger_9_interact$580 +08:7FA8 GBVM$trigger_9_interact$f6c48e2 +08:7FFE GBVM_END$trigger_9_interact$2db +01:4000 _ui_swap_tiles +01:404A _ui_print_make_mask_lr +01:4066 _ui_print_make_mask_rl +01:4082 _ui_init +01:4153 _ui_load_tiles +01:41AA _ui_draw_frame +01:4244 _ui_print_reset +01:4295 _ui_set_start_tile +01:42C1 _ui_print_render +01:4557 _ui_draw_text_buffer_char +01:4A41 _ui_run_menu +01:4C18 _ui_run_modal +01:4CD2 ___func_VM_SGB +01:4CD2 ___func_bg_cave_tileset +01:4CD2 _bg_cave_tileset +01:4E54 ___func_bg_lab1_tileset +01:4E54 _bg_lab1_tileset +01:52E6 ___func_bg_logoscreen_tileset +01:52E6 _bg_logoscreen_tileset +01:6968 ___func_bg_titlescreen_tileset +01:6968 _bg_titlescreen_tileset +01:7FEA _scene_1_init +01:7FEB GBVM$scene_1_init$38d0cb6d_5eaf +01:7FEF GBVM$scene_1_init$32511cd3_b92a +01:7FF3 GBVM$scene_1_init$autofade$aae8 +01:7FFF _script_input_5 +04:4000 ___func_VM_ACTOR +04:4000 _vm_actor_move_to +04:4A46 _vm_actor_move_cancel +04:4A7C _vm_actor_activate +04:4ACD _vm_actor_deactivate +04:4B1E _vm_actor_begin_update +04:4BA5 _vm_actor_terminate_update +04:4BEC _vm_actor_set_dir +04:4C35 _vm_actor_set_anim +04:4CC3 _vm_actor_set_pos +04:4D3D _vm_actor_get_pos +04:4DAC _vm_actor_get_dir +04:4E26 _vm_actor_get_angle +04:4EA7 _vm_actor_emote +04:4F6B _vm_actor_set_bounds +04:4FC9 _vm_actor_set_spritesheet +04:5093 _vm_actor_replace_tile +04:50FE _vm_actor_set_anim_tick +04:513C _vm_actor_set_move_speed +04:517A _vm_actor_set_anim_frame +04:51BE _vm_actor_get_anim_frame +04:5208 _vm_actor_set_anim_set +04:5290 _vm_actor_set_spritesheet_by_re +04:539D _vm_actor_set_flags +04:544B ___func_VM_GBPRINTER +04:544B _vm_print_detect +04:549A _vm_print_overlay +04:54EF ___func_VM_MAIN +04:54EF _vm_call +04:5531 _vm_ret +04:5591 _vm_call_far +04:5610 _vm_ret_far +04:5688 _vm_push +04:56B3 _vm_pop +04:56EE _vm_loop +04:5779 _vm_jump +04:5785 _wait_frames +04:57F2 _vm_invoke +04:591F _vm_join +04:5981 _vm_terminate +04:59AE _vm_if +04:5AF3 _vm_if_const +04:5C08 _vm_push_value +04:5C5A _vm_push_value_ind +04:5CCF _vm_push_reference +04:5D26 _vm_reserve +04:5D54 _vm_set +04:5DB5 _vm_set_const +04:5DE1 _vm_get_tlocal +04:5E6E _vm_test_terminate +04:5E79 _vm_idle +04:5E85 _vm_init_rng +04:5EB1 _vm_rand +04:5EF3 _vm_lock +04:5F02 _vm_unlock +04:5F15 _vm_raise +04:5F57 _vm_set_indirect +04:5FD2 _vm_get_indirect +04:604D _vm_poll_loaded +04:607D _vm_memset +04:60B7 _vm_memcpy +04:6134 _script_runner_init +04:61EB _script_execute +04:6351 _script_terminate +04:63B6 _script_detach_hthread +04:63F2 ___func_bg_outside_tileset +04:63F2 _bg_outside_tileset +04:7FE3 _song_rulz_undergroundcave_Data +04:7FF8 ___func_scene_11_triggers +04:7FF8 _scene_11_triggers +02:4000 _actor_7_interact +02:4003 GBVM$actor_7_interact$8ecf4253_ +02:4051 GBVM$actor_7_interact$9a2c8224_ +02:405B ___func_bg_overworld_test_1_til +02:405B _bg_overworld_test_1_tilemap_at +02:56DB ___func_bg_overworld_test_1_til +02:56DB _bg_overworld_test_1_tilemap +02:7FEA _song_rulz_lightmood_Data diff --git a/gb_studio_project/build/src/.gitignore b/gb_studio_project/build/src/.gitignore new file mode 100644 index 0000000..d4ed318 --- /dev/null +++ b/gb_studio_project/build/src/.gitignore @@ -0,0 +1,29 @@ +/obj +*.bak +*.dof +*.dsk +*.cfg +*.map +*.sym +*.o +__pycache__ +/profile/*.txt +@usage.bat +*.ihx +*.noi +/.vscode +/*.cdb +/build +/test/*.noi +/test/*.sna +/test/*.bmp +/test/*.o +/test/*.asm +/test/*.lst +*.gb +/examples/*/obj +/examples/*/build +/test/*/obj +/test/*/build +/test/*/*.bmp +/third-party/*/build diff --git a/gb_studio_project/build/src/Makefile b/gb_studio_project/build/src/Makefile new file mode 100644 index 0000000..7fc1d9d --- /dev/null +++ b/gb_studio_project/build/src/Makefile @@ -0,0 +1,35 @@ +include ./Makefile.common +include ./Makefile.build + +GBSTOOLS_DIR = /tmp/_gbstools +GBDK = $(GBSTOOLS_DIR)/gbdk +GBSPACK = $(GBSTOOLS_DIR)/gbspack/gbspack + +ROM_BUILD_DIR = build +OBJDIR = obj +REL_OBJDIR = obj/_rel + +ADATA = $(foreach dir,src/data,$(notdir $(wildcard $(dir)/*.s))) +CDATA = $(foreach dir,src/data,$(notdir $(wildcard $(dir)/*.c))) +MDATA = $(foreach dir,src/data/music,$(notdir $(wildcard $(dir)/*.c))) + +OBJS = $(ENGINE_OBJS) \ + $(ADATA:%.s=$(OBJDIR)/%.o) \ + $(CDATA:%.c=$(OBJDIR)/%.o) \ + $(MDATA:%.c=$(OBJDIR)/%.o) + +REL_OBJS_LOCAL = $(OBJS:$(OBJDIR)/%.o=$(REL_OBJDIR)/%.rel) +REL_OBJS = $(REL_OBJS_LOCAL:$(TOP)$(OBJDIR)/%.o=$(REL_OBJDIR)/%.rel) + +CFLAGS += -Idata/include -Wa-Idata/include + +all: settings directories $(TARGET) + +$(OBJDIR)/%.o: src/data/music/%.c + $(CC) $(CFLAGS) -c -o $@ $< + +$(OBJDIR)/%.o: src/data/%.c + $(CC) $(CFLAGS) -c -o $@ $< + +$(OBJDIR)/%.o: src/data/%.s + $(CC) $(CFLAGS) -c -o $@ $< diff --git a/gb_studio_project/build/src/Makefile.build b/gb_studio_project/build/src/Makefile.build new file mode 100644 index 0000000..f3883b6 --- /dev/null +++ b/gb_studio_project/build/src/Makefile.build @@ -0,0 +1 @@ +settings: CGB hUGE MBC5 \ No newline at end of file diff --git a/gb_studio_project/build/src/Makefile.common b/gb_studio_project/build/src/Makefile.common new file mode 100644 index 0000000..c1646f8 --- /dev/null +++ b/gb_studio_project/build/src/Makefile.common @@ -0,0 +1,174 @@ +TOP := $(dir $(lastword $(MAKEFILE_LIST))) + +GBDK = $(TOP)../gbdk +CC = $(GBDK)/bin/lcc +TEST_DIR = $(TOP)test +TEST_FW = $(TEST_DIR)/framework +EXAMPLES_DIR = ./examples +EMU = $(TOP)../bgb/bgb +GBSPACK = $(TOP)../gbspack/gbspack +TEST_CHK = python $(CURDIR)/$(TEST_FW)/unit_checker.py +GBS_CLI = node $(TOP)../gb-studio/out/cli/gb-studio-cli.js +PLATFORM = + +ROMTITLE = "GBSTUDIO" + +ROM_BUILD_DIR = build +OBJDIR = obj +REL_OBJDIR = obj/_rel + +CFLAGS = $(PLATFORM) -I$(TOP)include -Wa-I$(TOP)include + +LFLAGS_NBANKS += -Wm-yoA -Wm-ya4 +LFLAGS_SYMBOLS = -Wl-j -Wl-m -Wl-w -Wm-yS + +LFLAGS = $(PLATFORM) -Wm-yt$(CART_MBC) $(LFLAGS_NBANKS) $(LFLAGS_SYMBOLS) -Wl-klib -Wl-g.STACK=0xDF00 -Wi-e + +PACKFLAGS = -b 1 -f 255 -e rel -c + +EMUFLAGS = \ + -set "Color0=E8E8E8" \ + -set "Color1=A0A0A0" \ + -set "Color2=585858" \ + -set "Color3=101010" \ + -set "DebugWRAMbreak=0" \ + -set "DebugSrcBrk=1" \ + -hf -stateonexit \ + -screenonexit ./capture.bmp + +EMU_FORCE_DMG = -set "SystemMode=0" + +TARGET = $(ROM_BUILD_DIR)/rom.gb + +ASRC = $(foreach dir,$(TOP)src,$(notdir $(wildcard $(dir)/*.s))) +CSRC = $(foreach dir,$(TOP)src,$(notdir $(wildcard $(dir)/*.c))) +ACORE = $(foreach dir,$(TOP)src/core,$(notdir $(wildcard $(dir)/*.s))) +CCORE = $(foreach dir,$(TOP)src/core,$(notdir $(wildcard $(dir)/*.c))) +CSTATES = $(foreach dir,$(TOP)src/states,$(notdir $(wildcard $(dir)/*.c))) +ASTATES = $(foreach dir,$(TOP)src/states,$(notdir $(wildcard $(dir)/*.s))) + +ENGINE_OBJS = $(CSRC:%.c=$(TOP)$(OBJDIR)/%.o) \ + $(ASRC:%.s=$(TOP)$(OBJDIR)/%.o) \ + $(ACORE:%.s=$(TOP)$(OBJDIR)/%.o) \ + $(CCORE:%.c=$(TOP)$(OBJDIR)/%.o) \ + $(CSTATES:%.c=$(TOP)$(OBJDIR)/%.o) \ + $(ASTATES:%.s=$(TOP)$(OBJDIR)/%.o) + +OBJS = $(ENGINE_OBJS) +REL_OBJS = $(OBJS:$(OBJDIR)/%.o=$(REL_OBJDIR)/%.rel) + +all: settings directories BUILD + +.PHONY: directories clean release debug profile AP DMG CGB SGB MBC3 MBC5 hUGE GBT test rom BUILD +.SECONDARY: $(OBJS) + +AP: + $(eval PLATFORM = -msm83:ap) + $(eval TARGET = $(patsubst %.gb,%.pocket,$(TARGET))) + @echo "Analogue pocket build" + +release: + $(eval CFLAGS += -Wf'--max-allocs-per-node 50000') + @echo "RELEASE mode ON" + +debug: + $(eval CFLAGS += -Wf--fverbose-asm -Wf--debug -Wl-m -Wl-w -Wl-y -DVM_DEBUG_OUTPUT) + $(eval CFLAGS += -Wf--nolospre -Wf--nogcse) + $(eval LFLAGS += -Wf--debug -Wl-m -Wl-w -Wl-y) + @echo "DEBUG mode ON" + +profile: + $(eval CFLAGS += -Wf--profile) + @echo "PROFILE mode ON" + +DMG: + @echo "DMG mode ON" + +CGB: + $(eval CFLAGS += -DCGB) + $(eval LFLAGS += -Wm-yC) + @echo "CGB mode ON" + +SGB: + $(eval CFLAGS += -DSGB) + $(eval LFLAGS += -Wm-ys) + @echo "SGB mode ON" + +batteryless: + $(eval PACKFLAGS += -a 4) + $(eval BATTERYLESS = 1) + $(eval CFLAGS += -DBATTERYLESS) + @echo "BETTERYLESS SAVE ON" + +MBC3: + $(eval CART_MBC = 0x10) + @echo "Using MBC3" +MBC5: + $(eval CART_MBC = 0x1B) + @echo "Using MBC5" + +hUGE: + $(eval CFLAGS += -DHUGE_TRACKER) + $(eval LFLAGS += -Wl-l$(TOP)lib/hUGEDriver.lib) + @echo "Enable hUGETracker" +GBT: + $(eval CFLAGS += -DGBT_PLAYER) + $(eval LFLAGS += -Wl-l$(TOP)lib/gbt_player.lib) + $(eval PACKFLAGS += -s 1:800) + @echo "Enable GBTPlayer" + +directories: $(ROM_BUILD_DIR) $(OBJDIR) $(REL_OBJDIR) + +$(ROM_BUILD_DIR): + mkdir -p $(ROM_BUILD_DIR) + +$(OBJDIR): + mkdir -p $(OBJDIR) + mkdir -p $(TOP)$(OBJDIR) + +$(REL_OBJDIR): + mkdir -p $(REL_OBJDIR) + +$(TOP)$(OBJDIR)/%.o: $(TOP)src/core/%.c + $(CC) $(CFLAGS) -Wf-MMD $(filter -Wf-ba%, $(subst .d,-Wf-ba,$(suffix $(<:%.c=%)))) -c -o $@ $< + +$(TOP)$(OBJDIR)/%.o: $(TOP)src/core/%.s + $(CC) $(CFLAGS) -c -o $@ $< + +$(TOP)$(OBJDIR)/%.o: $(TOP)src/states/%.c + $(CC) $(CFLAGS) -Wf-MMD -c -o $@ $< + +$(TOP)$(OBJDIR)/%.o: $(TOP)src/states/%.s + $(CC) $(CFLAGS) -c -o $@ $< + +$(TOP)$(OBJDIR)/%.o: $(TOP)src/%.c + $(CC) $(CFLAGS) -Wf-MMD -c -o $@ $< + +$(TOP)$(OBJDIR)/%.o: $(TOP)src/%.s + $(CC) $(CFLAGS) -c -o $@ $< + +$(REL_OBJDIR)/linkfile.lk: $(OBJS) + mkdir -p $(REL_OBJDIR) + + $(shell rm -f $(REL_OBJDIR)/packfile.pk) + $(foreach O,$(OBJS),$(shell echo $O >>$(REL_OBJDIR)/packfile.pk)) + $(eval CART_SIZE=$(shell $(GBSPACK) $(PACKFLAGS) -o $(REL_OBJDIR) -i $(REL_OBJDIR)/packfile.pk)) + + $(shell echo -g __start_save=$(shell expr $(CART_SIZE) - 4 ) >$@) + $(foreach O,$(REL_OBJS),$(shell echo $O >>$@)) + +BUILD: $(REL_OBJDIR)/linkfile.lk + $(CC) $(LFLAGS) -Wm-yn$(ROMTITLE) -o $(TARGET) -Wl-f$< + +clean: + @echo "CLEANUP..." + rm -rf $(TOP)$(OBJDIR) + rm -rf $(OBJDIR) + rm -rf $(ROM_BUILD_DIR) + rm -f $(TEST_DIR)/*/capture.bmp + rm -rf $(TEST_DIR)/*/obj + rm -rf $(TEST_DIR)/*/build + rm -rf $(EXAMPLES_DIR)/*/obj + rm -rf $(EXAMPLES_DIR)/*/build + +rom: directories BUILD diff --git a/gb_studio_project/build/src/engine.json b/gb_studio_project/build/src/engine.json new file mode 100644 index 0000000..fe4208a --- /dev/null +++ b/gb_studio_project/build/src/engine.json @@ -0,0 +1,249 @@ +{ + "version": "4.2.0-e1", + "fields": [ + { + "key": "INPUT_PLATFORM_JUMP", + "sceneType": "PLATFORM", + "label": "FIELD_INPUT_JUMP", + "group": "GAMETYPE_PLATFORMER", + "type": "select", + "options": [ + ["INPUT_A", "A"], + ["INPUT_B", "B"], + ["INPUT_UP", "FIELD_DIRECTION_UP"] + ], + "cType": "define", + "defaultValue": "INPUT_A" + }, + { + "key": "INPUT_PLATFORM_RUN", + "sceneType": "PLATFORM", + "label": "FIELD_INPUT_RUN", + "group": "GAMETYPE_PLATFORMER", + "type": "select", + "options": [ + ["INPUT_A", "A"], + ["INPUT_B", "B"] + ], + "cType": "define", + "defaultValue": "INPUT_B" + }, + { + "key": "INPUT_PLATFORM_INTERACT", + "sceneType": "PLATFORM", + "label": "FIELD_INPUT_INTERACT", + "group": "GAMETYPE_PLATFORMER", + "type": "select", + "options": [ + ["INPUT_A", "A"], + ["INPUT_B", "B"], + ["INPUT_UP", "FIELD_DIRECTION_UP"], + ["INPUT_DOWN", "FIELD_DIRECTION_DOWN"] + ], + "cType": "define", + "defaultValue": "INPUT_A" + }, + { + "key": "plat_min_vel", + "sceneType": "PLATFORM", + "label": "FIELD_MIN_VEL", + "group": "GAMETYPE_PLATFORMER", + "type": "slider", + "cType": "WORD", + "defaultValue": 304, + "min": 0, + "max": 16384 + }, + { + "key": "plat_walk_vel", + "sceneType": "PLATFORM", + "label": "FIELD_WALK_VEL", + "group": "GAMETYPE_PLATFORMER", + "type": "slider", + "cType": "WORD", + "defaultValue": 6400, + "min": 0, + "max": 16384 + }, + { + "key": "plat_run_vel", + "sceneType": "PLATFORM", + "label": "FIELD_RUN_VEL", + "group": "GAMETYPE_PLATFORMER", + "type": "slider", + "cType": "WORD", + "defaultValue": 10496, + "min": 0, + "max": 16384 + }, + { + "key": "plat_climb_vel", + "sceneType": "PLATFORM", + "label": "FIELD_CLIMB_VEL", + "group": "GAMETYPE_PLATFORMER", + "type": "slider", + "cType": "WORD", + "defaultValue": 4000, + "min": 0, + "max": 16384 + }, + { + "key": "plat_walk_acc", + "sceneType": "PLATFORM", + "label": "FIELD_WALK_ACC", + "group": "GAMETYPE_PLATFORMER", + "type": "slider", + "cType": "WORD", + "defaultValue": 152, + "min": 0, + "max": 768 + }, + { + "key": "plat_run_acc", + "sceneType": "PLATFORM", + "label": "FIELD_RUN_ACC", + "group": "GAMETYPE_PLATFORMER", + "type": "slider", + "cType": "WORD", + "defaultValue": 228, + "min": 0, + "max": 768 + }, + { + "key": "plat_dec", + "sceneType": "PLATFORM", + "label": "FIELD_DECELERATION", + "group": "GAMETYPE_PLATFORMER", + "type": "slider", + "cType": "WORD", + "defaultValue": 208, + "min": 0, + "max": 768 + }, + { + "key": "plat_jump_vel", + "sceneType": "PLATFORM", + "label": "FIELD_JUMP_VEL", + "group": "GAMETYPE_PLATFORMER", + "type": "slider", + "cType": "WORD", + "defaultValue": 16384, + "min": 0, + "max": 32768 + }, + { + "key": "plat_grav", + "sceneType": "PLATFORM", + "label": "FIELD_GRAVITY", + "group": "GAMETYPE_PLATFORMER", + "type": "slider", + "cType": "WORD", + "defaultValue": 1792, + "min": 0, + "max": 8192 + }, + { + "key": "plat_hold_grav", + "sceneType": "PLATFORM", + "label": "FIELD_GRAVITY_JUMP", + "group": "GAMETYPE_PLATFORMER", + "type": "slider", + "cType": "WORD", + "defaultValue": 512, + "min": 0, + "max": 8192 + }, + { + "key": "plat_max_fall_vel", + "sceneType": "PLATFORM", + "label": "FIELD_MAX_FALL_VEL", + "group": "GAMETYPE_PLATFORMER", + "type": "slider", + "cType": "WORD", + "defaultValue": 20000, + "min": 0, + "max": 24560 + }, + { + "key": "shooter_scroll_speed", + "sceneType": "SHMUP", + "label": "FIELD_SCROLL_SPEED", + "group": "GAMETYPE_SHMUP", + "type": "slider", + "cType": "UBYTE", + "defaultValue": 16, + "min": 0, + "max": 64 + }, + { + "key": "INPUT_TOPDOWN_INTERACT", + "sceneType": "TOPDOWN", + "label": "FIELD_INPUT_INTERACT", + "group": "GAMETYPE_TOP_DOWN", + "type": "select", + "options": [ + ["INPUT_A", "A"], + ["INPUT_B", "B"] + ], + "cType": "define", + "defaultValue": "INPUT_A" + }, + { + "key": "topdown_grid", + "sceneType": "TOPDOWN", + "label": "FIELD_GRID_SIZE", + "group": "GAMETYPE_TOP_DOWN", + "type": "select", + "options": [ + [8, "FIELD_GRID_8PX"], + [16, "FIELD_GRID_16PX"] + ], + "cType": "UBYTE", + "defaultValue": 8 + }, + { + "key": "fade_style", + "label": "FIELD_FADE_STYLE", + "group": "SETTINGS_FADE", + "type": "select", + "options": [ + [0, "FIELD_FADE_WHITE"], + [1, "FIELD_FADE_BLACK"] + ], + "cType": "UBYTE", + "defaultValue": 0 + } + ], + "sceneTypes": [ + { + "key": "TOPDOWN", + "label": "GAMETYPE_TOP_DOWN", + "files": ["include/states/topdown.h", "src/states/topdown.c"] + }, + { + "key": "PLATFORM", + "label": "GAMETYPE_PLATFORMER", + "files": ["include/states/platform.h", "src/states/platform.c"] + }, + { + "key": "ADVENTURE", + "label": "GAMETYPE_ADVENTURE", + "files": ["include/states/adventure.h", "src/states/adventure.c"] + }, + { + "key": "SHMUP", + "label": "GAMETYPE_SHMUP", + "files": ["include/states/shmup.h", "src/states/shmup.c"] + }, + { + "key": "POINTNCLICK", + "label": "GAMETYPE_POINT_N_CLICK", + "files": ["include/states/pointnclick.h", "src/states/pointnclick.c"] + }, + { + "key": "LOGO", + "label": "GAMETYPE_LOGO", + "files": ["include/states/logo.h", "src/states/logo.c"] + } + ] +} diff --git a/gb_studio_project/build/src/include/actor.h b/gb_studio_project/build/src/include/actor.h new file mode 100644 index 0000000..8b43e1e --- /dev/null +++ b/gb_studio_project/build/src/include/actor.h @@ -0,0 +1,81 @@ +#ifndef ACTOR_H +#define ACTOR_H + +#include +#include "bankdata.h" +#include "gbs_types.h" + +#define MAX_ACTORS 21 +#define MAX_ACTORS_ACTIVE 12 + +#define PLAYER actors[0] +#define ON_8PX_GRID(A) ( MOD_8((A).x >> 4) == 0 && MOD_8((A).y >> 4) == 0) +#define ON_16PX_GRID(A) (MOD_16((A).x >> 4) == 0 && MOD_16((A).y >> 4) == 8) + +#define PLAYER_HURT_IFRAMES 20 + +#define ANIM_JUMP_LEFT 0 +#define ANIM_JUMP_RIGHT 2 +#define ANIM_CLIMB 6 + +#define ANIM_CURSOR 0 +#define ANIM_CURSOR_HOVER 1 + +#define ANIM_SET_DEFAULT 0 + +BANKREF_EXTERN(ACTOR) + +typedef enum { + CHECK_DIR_LEFT = 1, + CHECK_DIR_RIGHT, + CHECK_DIR_UP, + CHECK_DIR_DOWN, +} col_check_dir_e; + +extern actor_t actors[MAX_ACTORS]; +extern actor_t * actors_active_head; +extern actor_t * actors_active_tail; +extern actor_t * actors_inactive_head; +extern UBYTE player_moving; +extern actor_t * player_collision_actor; +extern actor_t * emote_actor; +extern UBYTE emote_timer; + +extern UBYTE allocated_sprite_tiles; +extern UBYTE allocated_hardware_sprites; + +void actors_init(void) BANKED; +void actors_update(void) NONBANKED; +void deactivate_actor(actor_t *actor) BANKED; +void activate_actor(actor_t *actor) BANKED; +void actor_set_frames(actor_t *actor, UBYTE frame_start, UBYTE frame_end) BANKED; +void actor_set_frame_offset(actor_t *actor, UBYTE frame_offset) BANKED; +UBYTE actor_get_frame_offset(actor_t *actor) BANKED; +actor_t *actor_at_tile(UBYTE tx, UBYTE ty, UBYTE inc_noclip) BANKED; +actor_t *actor_in_front_of_player(UBYTE grid_size, UBYTE inc_noclip) BANKED; +actor_t *actor_overlapping_player(UBYTE inc_noclip) BANKED; +actor_t *actor_overlapping_bb(bounding_box_t *bb, point16_t *offset, actor_t *ignore, UBYTE inc_noclip) BANKED; +void actor_set_anim_idle(actor_t *actor) BANKED; +void actor_set_anim_moving(actor_t *actor) BANKED; +void actor_set_dir(actor_t *actor, direction_e dir, UBYTE moving) BANKED; +inline void actor_set_anim(actor_t *actor, UBYTE anim) { + actor->animation = anim; + actor_set_frames(actor, actor->animations[anim].start, actor->animations[anim].end + 1); +} +inline void actor_reset_anim(actor_t *actor) { + actor_set_frames(actor, actor->animations[actor->animation].start, actor->animations[actor->animation].end + 1); +} +inline void actor_stop_anim(actor_t *actor) { + actor->frame_start = actor->frame; + actor->frame_end = actor->frame + 1; +} +inline void player_register_collision_with(actor_t *actor) { + player_collision_actor = actor; +} +void actors_handle_player_collision(void) BANKED; +UWORD check_collision_in_direction(UWORD start_x, UWORD start_y, bounding_box_t *bounds, UWORD end_pos, col_check_dir_e check_dir) BANKED; +void activate_actors_in_row(UBYTE x, UBYTE y) BANKED; +void activate_actors_in_col(UBYTE x, UBYTE y) BANKED; +void player_init(void) BANKED; + +#endif diff --git a/gb_studio_project/build/src/include/bankdata.h b/gb_studio_project/build/src/include/bankdata.h new file mode 100644 index 0000000..568420c --- /dev/null +++ b/gb_studio_project/build/src/include/bankdata.h @@ -0,0 +1,147 @@ +#ifndef BANK_DATA_H +#define BANK_DATA_H + +#include + +#include "compat.h" + +#define TO_FAR_PTR_T(A) {.bank = (UBYTE)&(__bank_ ## A), .ptr = (void *)&(A)} +#define TO_FAR_ARGS(T, A) (T)(A).ptr, (A).bank + +#ifndef BANK +#define BANK(VARNAME) ( (UBYTE) & __bank_ ## VARNAME ) +#endif +#ifndef BANKREF +#define BANKREF(VARNAME) void __func_ ## VARNAME(void) BANKED NAKED { \ +__asm \ + .local b___func_ ## VARNAME \ + ___bank_ ## VARNAME = b___func_ ## VARNAME \ + .globl ___bank_ ## VARNAME \ +__endasm; \ +} +#endif +#ifndef BANKREF_EXTERN +#define BANKREF_EXTERN(VARNAME) extern const void __bank_ ## VARNAME; +#endif + +#ifndef SIZE +#define SIZE(VARNAME) ((UWORD)&( __size_ ## VARNAME )) +#endif +#ifndef SIZEREF +#define SIZEREF(VARNAME) const void AT(sizeof(VARNAME)) __size_ ## VARNAME; +#endif +#ifndef SIZEREF_EXTERN +#define SIZEREF_EXTERN(VARNAME) extern const void __size_ ## VARNAME; +#endif + +typedef struct far_ptr_t { + UBYTE bank; + void * ptr; +} far_ptr_t; + +/** + * Call set_bkg_data with data stored in banked memory (non-reentrant!) + * + * @param i first tile to write to + * @param l number of tiles to write + * @param ptr memory address of tile data within bank + * @param bank bank to read from + */ +void SetBankedBkgData(UBYTE i, UBYTE l, const unsigned char *ptr, UBYTE bank) OLDCALL; + +/** + * Call set_sprite_data with data stored in banked memory (non-reentrant!) + * + * @param i first tile to write to + * @param l number of tiles to write + * @param ptr memory address of tile data within bank + * @param bank bank to read from + */ +void SetBankedSpriteData(UBYTE i, UBYTE l, const unsigned char *ptr, UBYTE bank) OLDCALL; + +/** + * Sets a rectangular region of Tile Map entries for the Background layer (non-reentrant!) + * + * @param x X Start position in Background Map tile coordinates. Range 0 - 31 + * @param y Y Start position in Background Map tile coordinates. Range 0 - 31 + * @param w Width of area to set in tiles. Range 0 - 31 + * @param h Height of area to set in tiles. Range 0 - 31 + * @param tiles Pointer to source Tile Map data + * @param bank bank to read from + */ +void SetBankedBkgTiles(UINT8 x, UINT8 y, UINT8 w, UINT8 h, const unsigned char *tiles, UBYTE bank) OLDCALL; + +/** + * Sets a rectangular region of Tile Map entries for the Window layer (non-reentrant!) + * + * @param x X Start position in Window Map tile coordinates. Range 0 - 31 + * @param y Y Start position in Window Map tile coordinates. Range 0 - 31 + * @param w Width of area to set in tiles. Range 0 - 31 + * @param h Height of area to set in tiles. Range 0 - 31 + * @param tiles Pointer to source Tile Map data + * @param bank bank to read from + */ +void SetBankedWinTiles(UINT8 x, UINT8 y, UINT8 w, UINT8 h, const unsigned char *tiles, UBYTE bank) OLDCALL; + + +/** + * Read far pointer from banked memory location into dest (non-reentrant!) + * + * @param dest pointer to far_ptr_t struct + * @param ptr memory address of data within bank + * @param bank bank to read from + */ +void ReadBankedFarPtr(far_ptr_t * dest, const unsigned char *ptr, UBYTE bank); + +/** + * Read UWORD from banked memory location (non-reentrant!) + * + * @param ptr memory address of data within bank + * @param bank bank to read from + * @return value stored in banked location + */ +UWORD ReadBankedUWORD(const unsigned char *ptr, UBYTE bank); + +/** + * Read UBYTE from banked memory location (non-reentrant!) + * + * @param ptr memory address of data within bank + * @param bank bank to read from + * @return value stored in banked location + */ +inline UBYTE ReadBankedUBYTE(const unsigned char *ptr, UBYTE bank) { + return (UBYTE)ReadBankedUWORD(ptr, bank); +} + +/** + * memcpy data from banked memory location (non-reentrant!) + * + * @param to destination to write fetched data + * @param from memory address of data within bank + * @param n number of bytes to fetch from bank + * @param bank bank to read from + */ +void MemcpyBanked(void* to, const void* from, size_t n, UBYTE bank); + +/** + * memcpy data from banked memory location (non-reentrant!) to VRAM + * + * @param to destination to write fetched data + * @param from memory address of data within bank + * @param n number of bytes to fetch from bank + * @param bank bank to read from + */ +void MemcpyVRAMBanked(void* to, const void* from, size_t n, UBYTE bank); + +/** + * returns the index of pointer from the list + * + * @param list pointer to the farptr array + * @param bank bank number of the list + * @param count number of items in the farptr array + * @param item pointer the the item in WRAM being searched + * @return index in the array or count if not found + */ +UBYTE IndexOfFarPtr(const far_ptr_t * list, UBYTE bank, UBYTE count, const far_ptr_t * item); + +#endif diff --git a/gb_studio_project/build/src/include/camera.h b/gb_studio_project/build/src/include/camera.h new file mode 100644 index 0000000..4cacbd5 --- /dev/null +++ b/gb_studio_project/build/src/include/camera.h @@ -0,0 +1,32 @@ +#ifndef CAMERA_H +#define CAMERA_H + +#include + +#define SCREEN_WIDTH 160 +#define SCREEN_HEIGHT 144 +#define SCREEN_WIDTH_HALF 80 +#define SCREEN_HEIGHT_HALF 72 + +#define CAMERA_UNLOCKED 0x00 +#define CAMERA_LOCK_X_FLAG 0x01 +#define CAMERA_LOCK_Y_FLAG 0x02 +#define CAMERA_LOCK_FLAG (CAMERA_LOCK_X_FLAG | CAMERA_LOCK_Y_FLAG) + +extern INT16 camera_x; +extern INT16 camera_y; +extern BYTE camera_offset_x; +extern BYTE camera_offset_y; +extern BYTE camera_deadzone_x; +extern BYTE camera_deadzone_y; +extern UBYTE camera_settings; + +void camera_init(void) BANKED; + +inline void camera_reset(void) { + camera_deadzone_x = camera_deadzone_y = 0; +} + +void camera_update(void) NONBANKED; + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/collision.h b/gb_studio_project/build/src/include/collision.h new file mode 100644 index 0000000..b0d1bfe --- /dev/null +++ b/gb_studio_project/build/src/include/collision.h @@ -0,0 +1,71 @@ +#ifndef COLLISIONS_H +#define COLLISIONS_H + +#include + +#include "math.h" +#include "bankdata.h" + +#define COLLISION_TOP 0x1 +#define COLLISION_BOTTOM 0x2 +#define COLLISION_LEFT 0x4 +#define COLLISION_RIGHT 0x8 +#define COLLISION_ALL 0xF +#define TILE_PROP_LADDER 0x10 + +typedef struct bounding_box_t { + BYTE left, right, top, bottom; +} bounding_box_t; + +extern UBYTE collision_bank; +extern unsigned char *collision_ptr; +extern UBYTE image_tile_width; +extern UBYTE image_tile_height; + +/** + * Check if point is within positioned bounding box. + * + * @param bb Pointer to bounding box + * @param offset Pointer to position offset for bounding box (e.g Actor position) + * @param point Pointer to position to look for within bounding box + * @return Point is within bounding box + */ +inline UBYTE bb_contains(bounding_box_t *bb, point16_t *offset, point16_t *point) { + if ((point->x < (offset->x >> 4) + bb->left) || + (point->x > (offset->x >> 4) + bb->right)) return FALSE; + if ((point->y < (offset->y >> 4) + bb->top) || + (point->y > (offset->y >> 4) + bb->bottom)) return FALSE; + return TRUE; +} + +/** + * Check if two positioned bounding boxes intersect. + * + * @param bb_a Pointer to bounding box A + * @param offset_a Pointer to position offset for bounding box A + * @param bb_b Pointer to bounding box B + * @param offset_b Pointer to position offset for bounding box B + * @return Positioned bounding boxes intersect + */ +inline UBYTE bb_intersects(bounding_box_t *bb_a, point16_t *offset_a, bounding_box_t *bb_b, point16_t *offset_b) { + if (((offset_b->x >> 4) + bb_b->left > (offset_a->x >> 4) + bb_a->right) || + ((offset_b->x >> 4) + bb_b->right < (offset_a->x >> 4) + bb_a->left)) return FALSE; + if (((offset_b->y >> 4) + bb_b->top > (offset_a->y >> 4) + bb_a->bottom) || + ((offset_b->y >> 4) + bb_b->bottom < (offset_a->y >> 4) + bb_a->top)) return FALSE; + return TRUE; +} + +/** + * Return collision tile value at given tile x,y coordinate. + * + * @param tx Left tile + * @param ty Top tile + * @return Tile value, 0 if no collisions, COLLISION_ALL if out of bounds + */ +inline UBYTE tile_at(UBYTE tx, UBYTE ty) { + if ((tx < image_tile_width) && (ty < image_tile_height)) + return ReadBankedUBYTE(collision_ptr + (ty * (UINT16)image_tile_width) + tx, collision_bank); + return COLLISION_ALL; +} + +#endif diff --git a/gb_studio_project/build/src/include/compat.h b/gb_studio_project/build/src/include/compat.h new file mode 100644 index 0000000..2eca7cc --- /dev/null +++ b/gb_studio_project/build/src/include/compat.h @@ -0,0 +1,47 @@ +#ifndef _COMPAT_H_INCLUDE +#define _COMPAT_H_INCLUDE + +#include + +#ifndef OLDCALL +#if __SDCC_REVISION >= 12608 +#define OLDCALL __sdcccall(0) +#else +#define OLDCALL +#endif +#endif + +#ifndef PRESERVES_REGS +#ifdef __SDCC +#define PRESERVES_REGS(...) __preserves_regs(__VA_ARGS__) +#else +#define PRESERVES_REGS(...) +#endif +#endif + +#ifndef NAKED +#ifdef __SDCC +#define NAKED __naked +#else +#define NAKED +#endif +#endif + +#ifndef SFR +#ifdef __SDCC +#define SFR __sfr +#else +#define SFR +#endif +#endif + +#ifndef AT +#ifdef __SDCC +#define AT(A) __at(A) +#else +#define AT(A) +#endif +#endif + + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/core.h b/gb_studio_project/build/src/include/core.h new file mode 100644 index 0000000..23e6a26 --- /dev/null +++ b/gb_studio_project/build/src/include/core.h @@ -0,0 +1,9 @@ +#ifndef _CORE_H_INCLUDE +#define _CORE_H_INCLUDE + +#include + +void core_reset(void) BANKED; +void core_run(void) BANKED; + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/data/actor_0_interact.h b/gb_studio_project/build/src/include/data/actor_0_interact.h new file mode 100644 index 0000000..008868c --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_0_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_0_INTERACT_H +#define ACTOR_0_INTERACT_H + +// Script actor_0_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_0_interact) +extern const unsigned char actor_0_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_10_interact.h b/gb_studio_project/build/src/include/data/actor_10_interact.h new file mode 100644 index 0000000..64f741d --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_10_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_10_INTERACT_H +#define ACTOR_10_INTERACT_H + +// Script actor_10_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_10_interact) +extern const unsigned char actor_10_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_11_interact.h b/gb_studio_project/build/src/include/data/actor_11_interact.h new file mode 100644 index 0000000..dd16462 --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_11_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_11_INTERACT_H +#define ACTOR_11_INTERACT_H + +// Script actor_11_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_11_interact) +extern const unsigned char actor_11_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_12_interact.h b/gb_studio_project/build/src/include/data/actor_12_interact.h new file mode 100644 index 0000000..28879d9 --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_12_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_12_INTERACT_H +#define ACTOR_12_INTERACT_H + +// Script actor_12_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_12_interact) +extern const unsigned char actor_12_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_13_interact.h b/gb_studio_project/build/src/include/data/actor_13_interact.h new file mode 100644 index 0000000..9b1cba6 --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_13_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_13_INTERACT_H +#define ACTOR_13_INTERACT_H + +// Script actor_13_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_13_interact) +extern const unsigned char actor_13_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_14_interact.h b/gb_studio_project/build/src/include/data/actor_14_interact.h new file mode 100644 index 0000000..bedc400 --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_14_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_14_INTERACT_H +#define ACTOR_14_INTERACT_H + +// Script actor_14_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_14_interact) +extern const unsigned char actor_14_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_15_interact.h b/gb_studio_project/build/src/include/data/actor_15_interact.h new file mode 100644 index 0000000..eec71ad --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_15_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_15_INTERACT_H +#define ACTOR_15_INTERACT_H + +// Script actor_15_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_15_interact) +extern const unsigned char actor_15_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_1_interact.h b/gb_studio_project/build/src/include/data/actor_1_interact.h new file mode 100644 index 0000000..24e69d4 --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_1_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_1_INTERACT_H +#define ACTOR_1_INTERACT_H + +// Script actor_1_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_1_interact) +extern const unsigned char actor_1_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_2_interact.h b/gb_studio_project/build/src/include/data/actor_2_interact.h new file mode 100644 index 0000000..40a05c4 --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_2_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_2_INTERACT_H +#define ACTOR_2_INTERACT_H + +// Script actor_2_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_2_interact) +extern const unsigned char actor_2_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_3_interact.h b/gb_studio_project/build/src/include/data/actor_3_interact.h new file mode 100644 index 0000000..b934746 --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_3_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_3_INTERACT_H +#define ACTOR_3_INTERACT_H + +// Script actor_3_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_3_interact) +extern const unsigned char actor_3_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_4_interact.h b/gb_studio_project/build/src/include/data/actor_4_interact.h new file mode 100644 index 0000000..64084b1 --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_4_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_4_INTERACT_H +#define ACTOR_4_INTERACT_H + +// Script actor_4_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_4_interact) +extern const unsigned char actor_4_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_5_interact.h b/gb_studio_project/build/src/include/data/actor_5_interact.h new file mode 100644 index 0000000..a33438e --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_5_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_5_INTERACT_H +#define ACTOR_5_INTERACT_H + +// Script actor_5_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_5_interact) +extern const unsigned char actor_5_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_6_interact.h b/gb_studio_project/build/src/include/data/actor_6_interact.h new file mode 100644 index 0000000..10c2bfa --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_6_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_6_INTERACT_H +#define ACTOR_6_INTERACT_H + +// Script actor_6_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_6_interact) +extern const unsigned char actor_6_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_7_interact.h b/gb_studio_project/build/src/include/data/actor_7_interact.h new file mode 100644 index 0000000..45fdd65 --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_7_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_7_INTERACT_H +#define ACTOR_7_INTERACT_H + +// Script actor_7_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_7_interact) +extern const unsigned char actor_7_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_8_interact.h b/gb_studio_project/build/src/include/data/actor_8_interact.h new file mode 100644 index 0000000..1d12a71 --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_8_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_8_INTERACT_H +#define ACTOR_8_INTERACT_H + +// Script actor_8_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_8_interact) +extern const unsigned char actor_8_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/actor_9_interact.h b/gb_studio_project/build/src/include/data/actor_9_interact.h new file mode 100644 index 0000000..19e7743 --- /dev/null +++ b/gb_studio_project/build/src/include/data/actor_9_interact.h @@ -0,0 +1,11 @@ +#ifndef ACTOR_9_INTERACT_H +#define ACTOR_9_INTERACT_H + +// Script actor_9_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(actor_9_interact) +extern const unsigned char actor_9_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_cave.h b/gb_studio_project/build/src/include/data/bg_cave.h new file mode 100644 index 0000000..9b5b0ed --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_cave.h @@ -0,0 +1,11 @@ +#ifndef BG_CAVE_H +#define BG_CAVE_H + +// Background: cave + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_cave) +extern const struct background_t bg_cave; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_cave_tilemap.h b/gb_studio_project/build/src/include/data/bg_cave_tilemap.h new file mode 100644 index 0000000..3872ff2 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_cave_tilemap.h @@ -0,0 +1,11 @@ +#ifndef BG_CAVE_TILEMAP_H +#define BG_CAVE_TILEMAP_H + +// Tilemap bg_cave_tilemap + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_cave_tilemap) +extern const unsigned char bg_cave_tilemap[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_cave_tilemap_attr.h b/gb_studio_project/build/src/include/data/bg_cave_tilemap_attr.h new file mode 100644 index 0000000..3a87a10 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_cave_tilemap_attr.h @@ -0,0 +1,11 @@ +#ifndef BG_CAVE_TILEMAP_ATTR_H +#define BG_CAVE_TILEMAP_ATTR_H + +// Tilemap Attr bg_cave_tilemap_attr + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_cave_tilemap_attr) +extern const unsigned char bg_cave_tilemap_attr[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_cave_tileset.h b/gb_studio_project/build/src/include/data/bg_cave_tileset.h new file mode 100644 index 0000000..e549138 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_cave_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_CAVE_TILESET_H +#define BG_CAVE_TILESET_H + +// Tileset: bg_cave_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_cave_tileset) +extern const struct tileset_t bg_cave_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_endscreen.h b/gb_studio_project/build/src/include/data/bg_endscreen.h new file mode 100644 index 0000000..d7efe6a --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_endscreen.h @@ -0,0 +1,11 @@ +#ifndef BG_ENDSCREEN_H +#define BG_ENDSCREEN_H + +// Background: endScreen + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_endscreen) +extern const struct background_t bg_endscreen; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_endscreen_cgb_tileset.h b/gb_studio_project/build/src/include/data/bg_endscreen_cgb_tileset.h new file mode 100644 index 0000000..76794f6 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_endscreen_cgb_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_ENDSCREEN_CGB_TILESET_H +#define BG_ENDSCREEN_CGB_TILESET_H + +// Tileset: bg_endscreen_cgb_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_endscreen_cgb_tileset) +extern const struct tileset_t bg_endscreen_cgb_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_endscreen_tilemap.h b/gb_studio_project/build/src/include/data/bg_endscreen_tilemap.h new file mode 100644 index 0000000..3d4af55 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_endscreen_tilemap.h @@ -0,0 +1,11 @@ +#ifndef BG_ENDSCREEN_TILEMAP_H +#define BG_ENDSCREEN_TILEMAP_H + +// Tilemap bg_endscreen_tilemap + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_endscreen_tilemap) +extern const unsigned char bg_endscreen_tilemap[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_endscreen_tilemap_attr.h b/gb_studio_project/build/src/include/data/bg_endscreen_tilemap_attr.h new file mode 100644 index 0000000..4db2766 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_endscreen_tilemap_attr.h @@ -0,0 +1,11 @@ +#ifndef BG_ENDSCREEN_TILEMAP_ATTR_H +#define BG_ENDSCREEN_TILEMAP_ATTR_H + +// Tilemap Attr bg_endscreen_tilemap_attr + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_endscreen_tilemap_attr) +extern const unsigned char bg_endscreen_tilemap_attr[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_endscreen_tileset.h b/gb_studio_project/build/src/include/data/bg_endscreen_tileset.h new file mode 100644 index 0000000..1d0bd04 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_endscreen_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_ENDSCREEN_TILESET_H +#define BG_ENDSCREEN_TILESET_H + +// Tileset: bg_endscreen_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_endscreen_tileset) +extern const struct tileset_t bg_endscreen_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_fate6housef2.h b/gb_studio_project/build/src/include/data/bg_fate6housef2.h new file mode 100644 index 0000000..b1d9a8b --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_fate6housef2.h @@ -0,0 +1,11 @@ +#ifndef BG_FATE6HOUSEF2_H +#define BG_FATE6HOUSEF2_H + +// Background: Fate6Housef2 + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_fate6housef2) +extern const struct background_t bg_fate6housef2; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_fate6housef2_tilemap.h b/gb_studio_project/build/src/include/data/bg_fate6housef2_tilemap.h new file mode 100644 index 0000000..aa47aa4 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_fate6housef2_tilemap.h @@ -0,0 +1,11 @@ +#ifndef BG_FATE6HOUSEF2_TILEMAP_H +#define BG_FATE6HOUSEF2_TILEMAP_H + +// Tilemap bg_fate6housef2_tilemap + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_fate6housef2_tilemap) +extern const unsigned char bg_fate6housef2_tilemap[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_fate6housef2_tilemap_attr.h b/gb_studio_project/build/src/include/data/bg_fate6housef2_tilemap_attr.h new file mode 100644 index 0000000..0bb9e08 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_fate6housef2_tilemap_attr.h @@ -0,0 +1,11 @@ +#ifndef BG_FATE6HOUSEF2_TILEMAP_ATTR_H +#define BG_FATE6HOUSEF2_TILEMAP_ATTR_H + +// Tilemap Attr bg_fate6housef2_tilemap_attr + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_fate6housef2_tilemap_attr) +extern const unsigned char bg_fate6housef2_tilemap_attr[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_fate6housef2_tileset.h b/gb_studio_project/build/src/include/data/bg_fate6housef2_tileset.h new file mode 100644 index 0000000..7a65836 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_fate6housef2_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_FATE6HOUSEF2_TILESET_H +#define BG_FATE6HOUSEF2_TILESET_H + +// Tileset: bg_fate6housef2_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_fate6housef2_tileset) +extern const struct tileset_t bg_fate6housef2_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_house.h b/gb_studio_project/build/src/include/data/bg_house.h new file mode 100644 index 0000000..cad55c1 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_house.h @@ -0,0 +1,11 @@ +#ifndef BG_HOUSE_H +#define BG_HOUSE_H + +// Background: house + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_house) +extern const struct background_t bg_house; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_house_tilemap.h b/gb_studio_project/build/src/include/data/bg_house_tilemap.h new file mode 100644 index 0000000..451855e --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_house_tilemap.h @@ -0,0 +1,11 @@ +#ifndef BG_HOUSE_TILEMAP_H +#define BG_HOUSE_TILEMAP_H + +// Tilemap bg_house_tilemap + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_house_tilemap) +extern const unsigned char bg_house_tilemap[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_house_tilemap_attr.h b/gb_studio_project/build/src/include/data/bg_house_tilemap_attr.h new file mode 100644 index 0000000..6e1af66 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_house_tilemap_attr.h @@ -0,0 +1,11 @@ +#ifndef BG_HOUSE_TILEMAP_ATTR_H +#define BG_HOUSE_TILEMAP_ATTR_H + +// Tilemap Attr bg_house_tilemap_attr + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_house_tilemap_attr) +extern const unsigned char bg_house_tilemap_attr[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_house_tileset.h b/gb_studio_project/build/src/include/data/bg_house_tileset.h new file mode 100644 index 0000000..dfe556b --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_house_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_HOUSE_TILESET_H +#define BG_HOUSE_TILESET_H + +// Tileset: bg_house_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_house_tileset) +extern const struct tileset_t bg_house_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_house_wide.h b/gb_studio_project/build/src/include/data/bg_house_wide.h new file mode 100644 index 0000000..89e516d --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_house_wide.h @@ -0,0 +1,11 @@ +#ifndef BG_HOUSE_WIDE_H +#define BG_HOUSE_WIDE_H + +// Background: house-wide + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_house_wide) +extern const struct background_t bg_house_wide; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_house_wide_tilemap.h b/gb_studio_project/build/src/include/data/bg_house_wide_tilemap.h new file mode 100644 index 0000000..cbee13f --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_house_wide_tilemap.h @@ -0,0 +1,11 @@ +#ifndef BG_HOUSE_WIDE_TILEMAP_H +#define BG_HOUSE_WIDE_TILEMAP_H + +// Tilemap bg_house_wide_tilemap + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_house_wide_tilemap) +extern const unsigned char bg_house_wide_tilemap[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_house_wide_tilemap_attr.h b/gb_studio_project/build/src/include/data/bg_house_wide_tilemap_attr.h new file mode 100644 index 0000000..e3fa651 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_house_wide_tilemap_attr.h @@ -0,0 +1,11 @@ +#ifndef BG_HOUSE_WIDE_TILEMAP_ATTR_H +#define BG_HOUSE_WIDE_TILEMAP_ATTR_H + +// Tilemap Attr bg_house_wide_tilemap_attr + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_house_wide_tilemap_attr) +extern const unsigned char bg_house_wide_tilemap_attr[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_house_wide_tileset.h b/gb_studio_project/build/src/include/data/bg_house_wide_tileset.h new file mode 100644 index 0000000..525567c --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_house_wide_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_HOUSE_WIDE_TILESET_H +#define BG_HOUSE_WIDE_TILESET_H + +// Tileset: bg_house_wide_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_house_wide_tileset) +extern const struct tileset_t bg_house_wide_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_housef2.h b/gb_studio_project/build/src/include/data/bg_housef2.h new file mode 100644 index 0000000..edaf291 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_housef2.h @@ -0,0 +1,11 @@ +#ifndef BG_HOUSEF2_H +#define BG_HOUSEF2_H + +// Background: Housef2 + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_housef2) +extern const struct background_t bg_housef2; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_housef2_tilemap.h b/gb_studio_project/build/src/include/data/bg_housef2_tilemap.h new file mode 100644 index 0000000..47bdb21 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_housef2_tilemap.h @@ -0,0 +1,11 @@ +#ifndef BG_HOUSEF2_TILEMAP_H +#define BG_HOUSEF2_TILEMAP_H + +// Tilemap bg_housef2_tilemap + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_housef2_tilemap) +extern const unsigned char bg_housef2_tilemap[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_housef2_tilemap_attr.h b/gb_studio_project/build/src/include/data/bg_housef2_tilemap_attr.h new file mode 100644 index 0000000..64167f5 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_housef2_tilemap_attr.h @@ -0,0 +1,11 @@ +#ifndef BG_HOUSEF2_TILEMAP_ATTR_H +#define BG_HOUSEF2_TILEMAP_ATTR_H + +// Tilemap Attr bg_housef2_tilemap_attr + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_housef2_tilemap_attr) +extern const unsigned char bg_housef2_tilemap_attr[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_housef2_tileset.h b/gb_studio_project/build/src/include/data/bg_housef2_tileset.h new file mode 100644 index 0000000..9483e75 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_housef2_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_HOUSEF2_TILESET_H +#define BG_HOUSEF2_TILESET_H + +// Tileset: bg_housef2_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_housef2_tileset) +extern const struct tileset_t bg_housef2_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_lab1.h b/gb_studio_project/build/src/include/data/bg_lab1.h new file mode 100644 index 0000000..7bc978a --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_lab1.h @@ -0,0 +1,11 @@ +#ifndef BG_LAB1_H +#define BG_LAB1_H + +// Background: Lab1 + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_lab1) +extern const struct background_t bg_lab1; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_lab1_tilemap.h b/gb_studio_project/build/src/include/data/bg_lab1_tilemap.h new file mode 100644 index 0000000..8a263e3 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_lab1_tilemap.h @@ -0,0 +1,11 @@ +#ifndef BG_LAB1_TILEMAP_H +#define BG_LAB1_TILEMAP_H + +// Tilemap bg_lab1_tilemap + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_lab1_tilemap) +extern const unsigned char bg_lab1_tilemap[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_lab1_tilemap_attr.h b/gb_studio_project/build/src/include/data/bg_lab1_tilemap_attr.h new file mode 100644 index 0000000..7f3ac41 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_lab1_tilemap_attr.h @@ -0,0 +1,11 @@ +#ifndef BG_LAB1_TILEMAP_ATTR_H +#define BG_LAB1_TILEMAP_ATTR_H + +// Tilemap Attr bg_lab1_tilemap_attr + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_lab1_tilemap_attr) +extern const unsigned char bg_lab1_tilemap_attr[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_lab1_tileset.h b/gb_studio_project/build/src/include/data/bg_lab1_tileset.h new file mode 100644 index 0000000..7712bd5 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_lab1_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_LAB1_TILESET_H +#define BG_LAB1_TILESET_H + +// Tileset: bg_lab1_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_lab1_tileset) +extern const struct tileset_t bg_lab1_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_logoscreen.h b/gb_studio_project/build/src/include/data/bg_logoscreen.h new file mode 100644 index 0000000..05d5a41 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_logoscreen.h @@ -0,0 +1,11 @@ +#ifndef BG_LOGOSCREEN_H +#define BG_LOGOSCREEN_H + +// Background: LogoScreen + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_logoscreen) +extern const struct background_t bg_logoscreen; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_logoscreen_tilemap.h b/gb_studio_project/build/src/include/data/bg_logoscreen_tilemap.h new file mode 100644 index 0000000..b20accd --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_logoscreen_tilemap.h @@ -0,0 +1,11 @@ +#ifndef BG_LOGOSCREEN_TILEMAP_H +#define BG_LOGOSCREEN_TILEMAP_H + +// Tilemap bg_logoscreen_tilemap + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_logoscreen_tilemap) +extern const unsigned char bg_logoscreen_tilemap[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_logoscreen_tilemap_attr.h b/gb_studio_project/build/src/include/data/bg_logoscreen_tilemap_attr.h new file mode 100644 index 0000000..a177f81 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_logoscreen_tilemap_attr.h @@ -0,0 +1,11 @@ +#ifndef BG_LOGOSCREEN_TILEMAP_ATTR_H +#define BG_LOGOSCREEN_TILEMAP_ATTR_H + +// Tilemap Attr bg_logoscreen_tilemap_attr + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_logoscreen_tilemap_attr) +extern const unsigned char bg_logoscreen_tilemap_attr[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_logoscreen_tileset.h b/gb_studio_project/build/src/include/data/bg_logoscreen_tileset.h new file mode 100644 index 0000000..7ef4346 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_logoscreen_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_LOGOSCREEN_TILESET_H +#define BG_LOGOSCREEN_TILESET_H + +// Tileset: bg_logoscreen_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_logoscreen_tileset) +extern const struct tileset_t bg_logoscreen_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_outside.h b/gb_studio_project/build/src/include/data/bg_outside.h new file mode 100644 index 0000000..1b1b677 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_outside.h @@ -0,0 +1,11 @@ +#ifndef BG_OUTSIDE_H +#define BG_OUTSIDE_H + +// Background: outside + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_outside) +extern const struct background_t bg_outside; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_outside_cgb_tileset.h b/gb_studio_project/build/src/include/data/bg_outside_cgb_tileset.h new file mode 100644 index 0000000..bc58347 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_outside_cgb_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_OUTSIDE_CGB_TILESET_H +#define BG_OUTSIDE_CGB_TILESET_H + +// Tileset: bg_outside_cgb_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_outside_cgb_tileset) +extern const struct tileset_t bg_outside_cgb_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_outside_tilemap.h b/gb_studio_project/build/src/include/data/bg_outside_tilemap.h new file mode 100644 index 0000000..f2494a3 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_outside_tilemap.h @@ -0,0 +1,11 @@ +#ifndef BG_OUTSIDE_TILEMAP_H +#define BG_OUTSIDE_TILEMAP_H + +// Tilemap bg_outside_tilemap + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_outside_tilemap) +extern const unsigned char bg_outside_tilemap[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_outside_tilemap_attr.h b/gb_studio_project/build/src/include/data/bg_outside_tilemap_attr.h new file mode 100644 index 0000000..18233a3 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_outside_tilemap_attr.h @@ -0,0 +1,11 @@ +#ifndef BG_OUTSIDE_TILEMAP_ATTR_H +#define BG_OUTSIDE_TILEMAP_ATTR_H + +// Tilemap Attr bg_outside_tilemap_attr + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_outside_tilemap_attr) +extern const unsigned char bg_outside_tilemap_attr[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_outside_tileset.h b/gb_studio_project/build/src/include/data/bg_outside_tileset.h new file mode 100644 index 0000000..707d4ce --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_outside_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_OUTSIDE_TILESET_H +#define BG_OUTSIDE_TILESET_H + +// Tileset: bg_outside_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_outside_tileset) +extern const struct tileset_t bg_outside_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_overworld_test_1.h b/gb_studio_project/build/src/include/data/bg_overworld_test_1.h new file mode 100644 index 0000000..19a47b1 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_overworld_test_1.h @@ -0,0 +1,11 @@ +#ifndef BG_OVERWORLD_TEST_1_H +#define BG_OVERWORLD_TEST_1_H + +// Background: Overworld_-_Test_1 + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_overworld_test_1) +extern const struct background_t bg_overworld_test_1; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_overworld_test_1_tilemap.h b/gb_studio_project/build/src/include/data/bg_overworld_test_1_tilemap.h new file mode 100644 index 0000000..b56f7e4 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_overworld_test_1_tilemap.h @@ -0,0 +1,11 @@ +#ifndef BG_OVERWORLD_TEST_1_TILEMAP_H +#define BG_OVERWORLD_TEST_1_TILEMAP_H + +// Tilemap bg_overworld_test_1_tilemap + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_overworld_test_1_tilemap) +extern const unsigned char bg_overworld_test_1_tilemap[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_overworld_test_1_tilemap_attr.h b/gb_studio_project/build/src/include/data/bg_overworld_test_1_tilemap_attr.h new file mode 100644 index 0000000..c5b2127 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_overworld_test_1_tilemap_attr.h @@ -0,0 +1,11 @@ +#ifndef BG_OVERWORLD_TEST_1_TILEMAP_ATTR_H +#define BG_OVERWORLD_TEST_1_TILEMAP_ATTR_H + +// Tilemap Attr bg_overworld_test_1_tilemap_attr + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_overworld_test_1_tilemap_attr) +extern const unsigned char bg_overworld_test_1_tilemap_attr[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_overworld_test_1_tileset.h b/gb_studio_project/build/src/include/data/bg_overworld_test_1_tileset.h new file mode 100644 index 0000000..03ad84a --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_overworld_test_1_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_OVERWORLD_TEST_1_TILESET_H +#define BG_OVERWORLD_TEST_1_TILESET_H + +// Tileset: bg_overworld_test_1_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_overworld_test_1_tileset) +extern const struct tileset_t bg_overworld_test_1_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_questscreen.h b/gb_studio_project/build/src/include/data/bg_questscreen.h new file mode 100644 index 0000000..b17d275 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_questscreen.h @@ -0,0 +1,11 @@ +#ifndef BG_QUESTSCREEN_H +#define BG_QUESTSCREEN_H + +// Background: QuestScreen + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_questscreen) +extern const struct background_t bg_questscreen; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_questscreen_tilemap.h b/gb_studio_project/build/src/include/data/bg_questscreen_tilemap.h new file mode 100644 index 0000000..b44ad11 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_questscreen_tilemap.h @@ -0,0 +1,11 @@ +#ifndef BG_QUESTSCREEN_TILEMAP_H +#define BG_QUESTSCREEN_TILEMAP_H + +// Tilemap bg_questscreen_tilemap + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_questscreen_tilemap) +extern const unsigned char bg_questscreen_tilemap[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_questscreen_tilemap_attr.h b/gb_studio_project/build/src/include/data/bg_questscreen_tilemap_attr.h new file mode 100644 index 0000000..37aa77f --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_questscreen_tilemap_attr.h @@ -0,0 +1,11 @@ +#ifndef BG_QUESTSCREEN_TILEMAP_ATTR_H +#define BG_QUESTSCREEN_TILEMAP_ATTR_H + +// Tilemap Attr bg_questscreen_tilemap_attr + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_questscreen_tilemap_attr) +extern const unsigned char bg_questscreen_tilemap_attr[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_questscreen_tileset.h b/gb_studio_project/build/src/include/data/bg_questscreen_tileset.h new file mode 100644 index 0000000..c878c69 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_questscreen_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_QUESTSCREEN_TILESET_H +#define BG_QUESTSCREEN_TILESET_H + +// Tileset: bg_questscreen_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_questscreen_tileset) +extern const struct tileset_t bg_questscreen_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_slighhousef2.h b/gb_studio_project/build/src/include/data/bg_slighhousef2.h new file mode 100644 index 0000000..73734d4 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_slighhousef2.h @@ -0,0 +1,11 @@ +#ifndef BG_SLIGHHOUSEF2_H +#define BG_SLIGHHOUSEF2_H + +// Background: SlighHousef2 + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_slighhousef2) +extern const struct background_t bg_slighhousef2; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_slighhousef2_tilemap.h b/gb_studio_project/build/src/include/data/bg_slighhousef2_tilemap.h new file mode 100644 index 0000000..2c07817 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_slighhousef2_tilemap.h @@ -0,0 +1,11 @@ +#ifndef BG_SLIGHHOUSEF2_TILEMAP_H +#define BG_SLIGHHOUSEF2_TILEMAP_H + +// Tilemap bg_slighhousef2_tilemap + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_slighhousef2_tilemap) +extern const unsigned char bg_slighhousef2_tilemap[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_slighhousef2_tilemap_attr.h b/gb_studio_project/build/src/include/data/bg_slighhousef2_tilemap_attr.h new file mode 100644 index 0000000..1e5eaad --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_slighhousef2_tilemap_attr.h @@ -0,0 +1,11 @@ +#ifndef BG_SLIGHHOUSEF2_TILEMAP_ATTR_H +#define BG_SLIGHHOUSEF2_TILEMAP_ATTR_H + +// Tilemap Attr bg_slighhousef2_tilemap_attr + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_slighhousef2_tilemap_attr) +extern const unsigned char bg_slighhousef2_tilemap_attr[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_slighhousef2_tileset.h b/gb_studio_project/build/src/include/data/bg_slighhousef2_tileset.h new file mode 100644 index 0000000..25f7e17 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_slighhousef2_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_SLIGHHOUSEF2_TILESET_H +#define BG_SLIGHHOUSEF2_TILESET_H + +// Tileset: bg_slighhousef2_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_slighhousef2_tileset) +extern const struct tileset_t bg_slighhousef2_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_titlescreen.h b/gb_studio_project/build/src/include/data/bg_titlescreen.h new file mode 100644 index 0000000..0792ebd --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_titlescreen.h @@ -0,0 +1,11 @@ +#ifndef BG_TITLESCREEN_H +#define BG_TITLESCREEN_H + +// Background: titlescreen + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_titlescreen) +extern const struct background_t bg_titlescreen; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_titlescreen_tilemap.h b/gb_studio_project/build/src/include/data/bg_titlescreen_tilemap.h new file mode 100644 index 0000000..bf24487 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_titlescreen_tilemap.h @@ -0,0 +1,11 @@ +#ifndef BG_TITLESCREEN_TILEMAP_H +#define BG_TITLESCREEN_TILEMAP_H + +// Tilemap bg_titlescreen_tilemap + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_titlescreen_tilemap) +extern const unsigned char bg_titlescreen_tilemap[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_titlescreen_tilemap_attr.h b/gb_studio_project/build/src/include/data/bg_titlescreen_tilemap_attr.h new file mode 100644 index 0000000..70b06b6 --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_titlescreen_tilemap_attr.h @@ -0,0 +1,11 @@ +#ifndef BG_TITLESCREEN_TILEMAP_ATTR_H +#define BG_TITLESCREEN_TILEMAP_ATTR_H + +// Tilemap Attr bg_titlescreen_tilemap_attr + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_titlescreen_tilemap_attr) +extern const unsigned char bg_titlescreen_tilemap_attr[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/bg_titlescreen_tileset.h b/gb_studio_project/build/src/include/data/bg_titlescreen_tileset.h new file mode 100644 index 0000000..aaacb2c --- /dev/null +++ b/gb_studio_project/build/src/include/data/bg_titlescreen_tileset.h @@ -0,0 +1,11 @@ +#ifndef BG_TITLESCREEN_TILESET_H +#define BG_TITLESCREEN_TILESET_H + +// Tileset: bg_titlescreen_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(bg_titlescreen_tileset) +extern const struct tileset_t bg_titlescreen_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/border.h b/gb_studio_project/build/src/include/data/border.h new file mode 100644 index 0000000..9dd6543 --- /dev/null +++ b/gb_studio_project/build/src/include/data/border.h @@ -0,0 +1,16 @@ +#ifndef __BORDER_H_INCLUDE +#define __BORDER_H_INCLUDE + +BANKREF_EXTERN(SGB_border_chr) +BANKREF_EXTERN(SGB_border_map) +BANKREF_EXTERN(SGB_border_pal) + +SIZEREF_EXTERN(SGB_border_chr) +SIZEREF_EXTERN(SGB_border_map) +SIZEREF_EXTERN(SGB_border_pal) + +extern const unsigned char SGB_border_chr[]; +extern const unsigned char SGB_border_map[]; +extern const unsigned char SGB_border_pal[]; + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/data/cursor_image.h b/gb_studio_project/build/src/include/data/cursor_image.h new file mode 100644 index 0000000..e5dbd73 --- /dev/null +++ b/gb_studio_project/build/src/include/data/cursor_image.h @@ -0,0 +1,11 @@ +#ifndef CURSOR_IMAGE_H +#define CURSOR_IMAGE_H + +// Cursor + +#include "gbs_types.h" + +BANKREF_EXTERN(cursor_image) +extern const unsigned char cursor_image[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/data_bootstrap.h b/gb_studio_project/build/src/include/data/data_bootstrap.h new file mode 100644 index 0000000..19fb6ce --- /dev/null +++ b/gb_studio_project/build/src/include/data/data_bootstrap.h @@ -0,0 +1,18 @@ +#ifndef DATA_PTRS_H +#define DATA_PTRS_H + +#include "bankdata.h" +#include "gbs_types.h" + +extern const INT16 start_scene_x; +extern const INT16 start_scene_y; +extern const direction_e start_scene_dir; +extern const far_ptr_t start_scene; +extern const UBYTE start_player_move_speed; +extern const UBYTE start_player_anim_tick; + +extern const far_ptr_t ui_fonts[]; + +void bootstrap_init(void) BANKED; + +#endif diff --git a/gb_studio_project/build/src/include/data/emote_love.h b/gb_studio_project/build/src/include/data/emote_love.h new file mode 100644 index 0000000..fc5f7c9 --- /dev/null +++ b/gb_studio_project/build/src/include/data/emote_love.h @@ -0,0 +1,11 @@ +#ifndef EMOTE_LOVE_H +#define EMOTE_LOVE_H + +// Emote love + +#include "gbs_types.h" + +BANKREF_EXTERN(emote_love) +extern const unsigned char emote_love[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/font_gbs_mono.h b/gb_studio_project/build/src/include/data/font_gbs_mono.h new file mode 100644 index 0000000..4590ec2 --- /dev/null +++ b/gb_studio_project/build/src/include/data/font_gbs_mono.h @@ -0,0 +1,11 @@ +#ifndef FONT_GBS_MONO_H +#define FONT_GBS_MONO_H + +// Font gbs-mono.png + +#include "gbs_types.h" + +BANKREF_EXTERN(font_gbs_mono) +extern const unsigned char font_gbs_mono[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/frame_image.h b/gb_studio_project/build/src/include/data/frame_image.h new file mode 100644 index 0000000..6b5afe6 --- /dev/null +++ b/gb_studio_project/build/src/include/data/frame_image.h @@ -0,0 +1,11 @@ +#ifndef FRAME_IMAGE_H +#define FRAME_IMAGE_H + +// Frame + +#include "gbs_types.h" + +BANKREF_EXTERN(frame_image) +extern const unsigned char frame_image[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/game_globals.h b/gb_studio_project/build/src/include/data/game_globals.h new file mode 100644 index 0000000..b04747f --- /dev/null +++ b/gb_studio_project/build/src/include/data/game_globals.h @@ -0,0 +1,17 @@ +#ifndef GAME_GLOBALS_H +#define GAME_GLOBALS_H + +#define VAR_QUEST1 0 +#define VAR_QUEST2_0 1 +#define VAR_QUEST3_0 2 +#define VAR_QUEST4_0 3 +#define VAR_QUEST5 4 +#define VAR_EEVEECHAT_0 5 +#define VAR_KUMACHAT 6 +#define VAR_KUMATEXTFIX 7 +#define VAR_S0A0_LOCAL_0 8 +#define VAR_S0T4_POSTKEYGET 9 +#define VAR_S3T2_STARTTEXT 10 +#define MAX_GLOBAL_VARS 11 + +#endif diff --git a/gb_studio_project/build/src/include/data/game_globals.i b/gb_studio_project/build/src/include/data/game_globals.i new file mode 100644 index 0000000..3c21cc4 --- /dev/null +++ b/gb_studio_project/build/src/include/data/game_globals.i @@ -0,0 +1,13 @@ +VAR_QUEST1 = 0 +VAR_QUEST2_0 = 1 +VAR_QUEST3_0 = 2 +VAR_QUEST4_0 = 3 +VAR_QUEST5 = 4 +VAR_EEVEECHAT_0 = 5 +VAR_KUMACHAT = 6 +VAR_KUMATEXTFIX = 7 +VAR_S0A0_LOCAL_0 = 8 +VAR_S0T4_POSTKEYGET = 9 +VAR_S3T2_STARTTEXT = 10 +MAX_GLOBAL_VARS = 11 +STATE_DEFAULT = 0 diff --git a/gb_studio_project/build/src/include/data/music_data.h b/gb_studio_project/build/src/include/data/music_data.h new file mode 100644 index 0000000..2ee2661 --- /dev/null +++ b/gb_studio_project/build/src/include/data/music_data.h @@ -0,0 +1,13 @@ +#ifndef MUSIC_DATA_H +#define MUSIC_DATA_H + +extern const void __bank_song_rulz_lightmood_Data; +extern const void song_rulz_lightmood_Data; +extern const void __bank_song_rulz_outside_0_Data; +extern const void song_rulz_outside_0_Data; +extern const void __bank_song_rulz_spaceemergency_0_Data; +extern const void song_rulz_spaceemergency_0_Data; +extern const void __bank_song_rulz_undergroundcave_Data; +extern const void song_rulz_undergroundcave_Data; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_0.h b/gb_studio_project/build/src/include/data/palette_0.h new file mode 100644 index 0000000..f14831d --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_0.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_0_H +#define PALETTE_0_H + +// Palette: 0 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_0) +extern const struct palette_t palette_0; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_1.h b/gb_studio_project/build/src/include/data/palette_1.h new file mode 100644 index 0000000..142d3ff --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_1.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_1_H +#define PALETTE_1_H + +// Palette: 1 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_1) +extern const struct palette_t palette_1; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_10.h b/gb_studio_project/build/src/include/data/palette_10.h new file mode 100644 index 0000000..11eaae3 --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_10.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_10_H +#define PALETTE_10_H + +// Palette: 10 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_10) +extern const struct palette_t palette_10; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_11.h b/gb_studio_project/build/src/include/data/palette_11.h new file mode 100644 index 0000000..46c44ea --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_11.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_11_H +#define PALETTE_11_H + +// Palette: 11 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_11) +extern const struct palette_t palette_11; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_12.h b/gb_studio_project/build/src/include/data/palette_12.h new file mode 100644 index 0000000..1f5bad1 --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_12.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_12_H +#define PALETTE_12_H + +// Palette: 12 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_12) +extern const struct palette_t palette_12; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_13.h b/gb_studio_project/build/src/include/data/palette_13.h new file mode 100644 index 0000000..30090d0 --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_13.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_13_H +#define PALETTE_13_H + +// Palette: 13 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_13) +extern const struct palette_t palette_13; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_2.h b/gb_studio_project/build/src/include/data/palette_2.h new file mode 100644 index 0000000..99b00a6 --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_2.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_2_H +#define PALETTE_2_H + +// Palette: 2 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_2) +extern const struct palette_t palette_2; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_3.h b/gb_studio_project/build/src/include/data/palette_3.h new file mode 100644 index 0000000..38dceb0 --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_3.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_3_H +#define PALETTE_3_H + +// Palette: 3 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_3) +extern const struct palette_t palette_3; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_4.h b/gb_studio_project/build/src/include/data/palette_4.h new file mode 100644 index 0000000..92ce44a --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_4.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_4_H +#define PALETTE_4_H + +// Palette: 4 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_4) +extern const struct palette_t palette_4; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_5.h b/gb_studio_project/build/src/include/data/palette_5.h new file mode 100644 index 0000000..81b5ed7 --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_5.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_5_H +#define PALETTE_5_H + +// Palette: 5 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_5) +extern const struct palette_t palette_5; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_6.h b/gb_studio_project/build/src/include/data/palette_6.h new file mode 100644 index 0000000..0025d04 --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_6.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_6_H +#define PALETTE_6_H + +// Palette: 6 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_6) +extern const struct palette_t palette_6; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_7.h b/gb_studio_project/build/src/include/data/palette_7.h new file mode 100644 index 0000000..408ccde --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_7.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_7_H +#define PALETTE_7_H + +// Palette: 7 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_7) +extern const struct palette_t palette_7; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_8.h b/gb_studio_project/build/src/include/data/palette_8.h new file mode 100644 index 0000000..8df7dc7 --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_8.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_8_H +#define PALETTE_8_H + +// Palette: 8 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_8) +extern const struct palette_t palette_8; + +#endif diff --git a/gb_studio_project/build/src/include/data/palette_9.h b/gb_studio_project/build/src/include/data/palette_9.h new file mode 100644 index 0000000..41ec8b1 --- /dev/null +++ b/gb_studio_project/build/src/include/data/palette_9.h @@ -0,0 +1,11 @@ +#ifndef PALETTE_9_H +#define PALETTE_9_H + +// Palette: 9 + +#include "gbs_types.h" + +BANKREF_EXTERN(palette_9) +extern const struct palette_t palette_9; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_1.h b/gb_studio_project/build/src/include/data/scene_1.h new file mode 100644 index 0000000..d8d5f56 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_1.h @@ -0,0 +1,11 @@ +#ifndef SCENE_1_H +#define SCENE_1_H + +// Scene: Overworld + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_1) +extern const struct scene_t scene_1; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_10.h b/gb_studio_project/build/src/include/data/scene_10.h new file mode 100644 index 0000000..cafa2da --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_10.h @@ -0,0 +1,11 @@ +#ifndef SCENE_10_H +#define SCENE_10_H + +// Scene: NPCJail + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_10) +extern const struct scene_t scene_10; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_10_collisions.h b/gb_studio_project/build/src/include/data/scene_10_collisions.h new file mode 100644 index 0000000..e39bb01 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_10_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_10_COLLISIONS_H +#define SCENE_10_COLLISIONS_H + +// Scene: NPCJail +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_10_collisions) +extern const unsigned char scene_10_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_10_init.h b/gb_studio_project/build/src/include/data/scene_10_init.h new file mode 100644 index 0000000..c977318 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_10_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_10_INIT_H +#define SCENE_10_INIT_H + +// Script scene_10_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_10_init) +extern const unsigned char scene_10_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_11.h b/gb_studio_project/build/src/include/data/scene_11.h new file mode 100644 index 0000000..1117143 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_11.h @@ -0,0 +1,11 @@ +#ifndef SCENE_11_H +#define SCENE_11_H + +// Scene: SlighHousef2 + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_11) +extern const struct scene_t scene_11; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_11_collisions.h b/gb_studio_project/build/src/include/data/scene_11_collisions.h new file mode 100644 index 0000000..0ae487b --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_11_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_11_COLLISIONS_H +#define SCENE_11_COLLISIONS_H + +// Scene: SlighHousef2 +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_11_collisions) +extern const unsigned char scene_11_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_11_init.h b/gb_studio_project/build/src/include/data/scene_11_init.h new file mode 100644 index 0000000..9c572ac --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_11_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_11_INIT_H +#define SCENE_11_INIT_H + +// Script scene_11_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_11_init) +extern const unsigned char scene_11_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_11_triggers.h b/gb_studio_project/build/src/include/data/scene_11_triggers.h new file mode 100644 index 0000000..08aa111 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_11_triggers.h @@ -0,0 +1,12 @@ +#ifndef SCENE_11_TRIGGERS_H +#define SCENE_11_TRIGGERS_H + +// Scene: SlighHousef2 +// Triggers + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_11_triggers) +extern const struct trigger_t scene_11_triggers[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_12.h b/gb_studio_project/build/src/include/data/scene_12.h new file mode 100644 index 0000000..7f37549 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_12.h @@ -0,0 +1,11 @@ +#ifndef SCENE_12_H +#define SCENE_12_H + +// Scene: NyaaLogo + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_12) +extern const struct scene_t scene_12; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_12_collisions.h b/gb_studio_project/build/src/include/data/scene_12_collisions.h new file mode 100644 index 0000000..3cd3c7e --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_12_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_12_COLLISIONS_H +#define SCENE_12_COLLISIONS_H + +// Scene: NyaaLogo +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_12_collisions) +extern const unsigned char scene_12_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_12_init.h b/gb_studio_project/build/src/include/data/scene_12_init.h new file mode 100644 index 0000000..e6f7664 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_12_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_12_INIT_H +#define SCENE_12_INIT_H + +// Script scene_12_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_12_init) +extern const unsigned char scene_12_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_13.h b/gb_studio_project/build/src/include/data/scene_13.h new file mode 100644 index 0000000..92860af --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_13.h @@ -0,0 +1,11 @@ +#ifndef SCENE_13_H +#define SCENE_13_H + +// Scene: StartScreen + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_13) +extern const struct scene_t scene_13; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_13_collisions.h b/gb_studio_project/build/src/include/data/scene_13_collisions.h new file mode 100644 index 0000000..703111f --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_13_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_13_COLLISIONS_H +#define SCENE_13_COLLISIONS_H + +// Scene: StartScreen +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_13_collisions) +extern const unsigned char scene_13_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_13_init.h b/gb_studio_project/build/src/include/data/scene_13_init.h new file mode 100644 index 0000000..17ee80e --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_13_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_13_INIT_H +#define SCENE_13_INIT_H + +// Script scene_13_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_13_init) +extern const unsigned char scene_13_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_14.h b/gb_studio_project/build/src/include/data/scene_14.h new file mode 100644 index 0000000..5e15f82 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_14.h @@ -0,0 +1,11 @@ +#ifndef SCENE_14_H +#define SCENE_14_H + +// Scene: MidnightClubHousef2 + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_14) +extern const struct scene_t scene_14; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_14_actors.h b/gb_studio_project/build/src/include/data/scene_14_actors.h new file mode 100644 index 0000000..ee34d7f --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_14_actors.h @@ -0,0 +1,12 @@ +#ifndef SCENE_14_ACTORS_H +#define SCENE_14_ACTORS_H + +// Scene: MidnightClubHousef2 +// Actors + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_14_actors) +extern const struct actor_t scene_14_actors[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_14_collisions.h b/gb_studio_project/build/src/include/data/scene_14_collisions.h new file mode 100644 index 0000000..acf7edd --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_14_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_14_COLLISIONS_H +#define SCENE_14_COLLISIONS_H + +// Scene: MidnightClubHousef2 +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_14_collisions) +extern const unsigned char scene_14_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_14_init.h b/gb_studio_project/build/src/include/data/scene_14_init.h new file mode 100644 index 0000000..537894c --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_14_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_14_INIT_H +#define SCENE_14_INIT_H + +// Script scene_14_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_14_init) +extern const unsigned char scene_14_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_14_sprites.h b/gb_studio_project/build/src/include/data/scene_14_sprites.h new file mode 100644 index 0000000..67f06e8 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_14_sprites.h @@ -0,0 +1,12 @@ +#ifndef SCENE_14_SPRITES_H +#define SCENE_14_SPRITES_H + +// Scene: MidnightClubHousef2 +// Sprites + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_14_sprites) +extern const far_ptr_t scene_14_sprites[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_14_triggers.h b/gb_studio_project/build/src/include/data/scene_14_triggers.h new file mode 100644 index 0000000..05205fd --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_14_triggers.h @@ -0,0 +1,12 @@ +#ifndef SCENE_14_TRIGGERS_H +#define SCENE_14_TRIGGERS_H + +// Scene: MidnightClubHousef2 +// Triggers + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_14_triggers) +extern const struct trigger_t scene_14_triggers[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_15.h b/gb_studio_project/build/src/include/data/scene_15.h new file mode 100644 index 0000000..cb72a44 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_15.h @@ -0,0 +1,11 @@ +#ifndef SCENE_15_H +#define SCENE_15_H + +// Scene: Quest Menu + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_15) +extern const struct scene_t scene_15; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_15_actors.h b/gb_studio_project/build/src/include/data/scene_15_actors.h new file mode 100644 index 0000000..7e4b8f6 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_15_actors.h @@ -0,0 +1,12 @@ +#ifndef SCENE_15_ACTORS_H +#define SCENE_15_ACTORS_H + +// Scene: Quest Menu +// Actors + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_15_actors) +extern const struct actor_t scene_15_actors[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_15_collisions.h b/gb_studio_project/build/src/include/data/scene_15_collisions.h new file mode 100644 index 0000000..2ed1c61 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_15_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_15_COLLISIONS_H +#define SCENE_15_COLLISIONS_H + +// Scene: Quest Menu +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_15_collisions) +extern const unsigned char scene_15_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_15_init.h b/gb_studio_project/build/src/include/data/scene_15_init.h new file mode 100644 index 0000000..617eea2 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_15_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_15_INIT_H +#define SCENE_15_INIT_H + +// Script scene_15_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_15_init) +extern const unsigned char scene_15_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_15_sprites.h b/gb_studio_project/build/src/include/data/scene_15_sprites.h new file mode 100644 index 0000000..d64ef6f --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_15_sprites.h @@ -0,0 +1,12 @@ +#ifndef SCENE_15_SPRITES_H +#define SCENE_15_SPRITES_H + +// Scene: Quest Menu +// Sprites + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_15_sprites) +extern const far_ptr_t scene_15_sprites[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_16.h b/gb_studio_project/build/src/include/data/scene_16.h new file mode 100644 index 0000000..74e7deb --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_16.h @@ -0,0 +1,11 @@ +#ifndef SCENE_16_H +#define SCENE_16_H + +// Scene: EndScreen + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_16) +extern const struct scene_t scene_16; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_16_collisions.h b/gb_studio_project/build/src/include/data/scene_16_collisions.h new file mode 100644 index 0000000..6b1bb74 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_16_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_16_COLLISIONS_H +#define SCENE_16_COLLISIONS_H + +// Scene: EndScreen +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_16_collisions) +extern const unsigned char scene_16_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_16_init.h b/gb_studio_project/build/src/include/data/scene_16_init.h new file mode 100644 index 0000000..d44ad71 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_16_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_16_INIT_H +#define SCENE_16_INIT_H + +// Script scene_16_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_16_init) +extern const unsigned char scene_16_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_17.h b/gb_studio_project/build/src/include/data/scene_17.h new file mode 100644 index 0000000..47d80a0 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_17.h @@ -0,0 +1,11 @@ +#ifndef SCENE_17_H +#define SCENE_17_H + +// Scene: Field + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_17) +extern const struct scene_t scene_17; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_17_actors.h b/gb_studio_project/build/src/include/data/scene_17_actors.h new file mode 100644 index 0000000..f9f6050 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_17_actors.h @@ -0,0 +1,12 @@ +#ifndef SCENE_17_ACTORS_H +#define SCENE_17_ACTORS_H + +// Scene: Field +// Actors + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_17_actors) +extern const struct actor_t scene_17_actors[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_17_collisions.h b/gb_studio_project/build/src/include/data/scene_17_collisions.h new file mode 100644 index 0000000..d125394 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_17_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_17_COLLISIONS_H +#define SCENE_17_COLLISIONS_H + +// Scene: Field +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_17_collisions) +extern const unsigned char scene_17_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_17_init.h b/gb_studio_project/build/src/include/data/scene_17_init.h new file mode 100644 index 0000000..f588d71 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_17_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_17_INIT_H +#define SCENE_17_INIT_H + +// Script scene_17_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_17_init) +extern const unsigned char scene_17_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_17_sprites.h b/gb_studio_project/build/src/include/data/scene_17_sprites.h new file mode 100644 index 0000000..e709711 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_17_sprites.h @@ -0,0 +1,12 @@ +#ifndef SCENE_17_SPRITES_H +#define SCENE_17_SPRITES_H + +// Scene: Field +// Sprites + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_17_sprites) +extern const far_ptr_t scene_17_sprites[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_17_triggers.h b/gb_studio_project/build/src/include/data/scene_17_triggers.h new file mode 100644 index 0000000..4f3cd6a --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_17_triggers.h @@ -0,0 +1,12 @@ +#ifndef SCENE_17_TRIGGERS_H +#define SCENE_17_TRIGGERS_H + +// Scene: Field +// Triggers + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_17_triggers) +extern const struct trigger_t scene_17_triggers[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_1_actors.h b/gb_studio_project/build/src/include/data/scene_1_actors.h new file mode 100644 index 0000000..dd406eb --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_1_actors.h @@ -0,0 +1,12 @@ +#ifndef SCENE_1_ACTORS_H +#define SCENE_1_ACTORS_H + +// Scene: Overworld +// Actors + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_1_actors) +extern const struct actor_t scene_1_actors[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_1_collisions.h b/gb_studio_project/build/src/include/data/scene_1_collisions.h new file mode 100644 index 0000000..8bf88e8 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_1_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_1_COLLISIONS_H +#define SCENE_1_COLLISIONS_H + +// Scene: Overworld +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_1_collisions) +extern const unsigned char scene_1_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_1_init.h b/gb_studio_project/build/src/include/data/scene_1_init.h new file mode 100644 index 0000000..d16b9be --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_1_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_1_INIT_H +#define SCENE_1_INIT_H + +// Script scene_1_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_1_init) +extern const unsigned char scene_1_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_1_sprites.h b/gb_studio_project/build/src/include/data/scene_1_sprites.h new file mode 100644 index 0000000..19a0606 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_1_sprites.h @@ -0,0 +1,12 @@ +#ifndef SCENE_1_SPRITES_H +#define SCENE_1_SPRITES_H + +// Scene: Overworld +// Sprites + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_1_sprites) +extern const far_ptr_t scene_1_sprites[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_1_triggers.h b/gb_studio_project/build/src/include/data/scene_1_triggers.h new file mode 100644 index 0000000..49d88c3 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_1_triggers.h @@ -0,0 +1,12 @@ +#ifndef SCENE_1_TRIGGERS_H +#define SCENE_1_TRIGGERS_H + +// Scene: Overworld +// Triggers + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_1_triggers) +extern const struct trigger_t scene_1_triggers[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_2.h b/gb_studio_project/build/src/include/data/scene_2.h new file mode 100644 index 0000000..17fbc3f --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_2.h @@ -0,0 +1,11 @@ +#ifndef SCENE_2_H +#define SCENE_2_H + +// Scene: fate6House + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_2) +extern const struct scene_t scene_2; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_2_actors.h b/gb_studio_project/build/src/include/data/scene_2_actors.h new file mode 100644 index 0000000..21beb20 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_2_actors.h @@ -0,0 +1,12 @@ +#ifndef SCENE_2_ACTORS_H +#define SCENE_2_ACTORS_H + +// Scene: fate6House +// Actors + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_2_actors) +extern const struct actor_t scene_2_actors[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_2_collisions.h b/gb_studio_project/build/src/include/data/scene_2_collisions.h new file mode 100644 index 0000000..0764a4d --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_2_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_2_COLLISIONS_H +#define SCENE_2_COLLISIONS_H + +// Scene: fate6House +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_2_collisions) +extern const unsigned char scene_2_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_2_init.h b/gb_studio_project/build/src/include/data/scene_2_init.h new file mode 100644 index 0000000..cdaf362 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_2_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_2_INIT_H +#define SCENE_2_INIT_H + +// Script scene_2_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_2_init) +extern const unsigned char scene_2_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_2_sprites.h b/gb_studio_project/build/src/include/data/scene_2_sprites.h new file mode 100644 index 0000000..f6e3067 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_2_sprites.h @@ -0,0 +1,12 @@ +#ifndef SCENE_2_SPRITES_H +#define SCENE_2_SPRITES_H + +// Scene: fate6House +// Sprites + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_2_sprites) +extern const far_ptr_t scene_2_sprites[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_2_triggers.h b/gb_studio_project/build/src/include/data/scene_2_triggers.h new file mode 100644 index 0000000..33e48a2 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_2_triggers.h @@ -0,0 +1,12 @@ +#ifndef SCENE_2_TRIGGERS_H +#define SCENE_2_TRIGGERS_H + +// Scene: fate6House +// Triggers + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_2_triggers) +extern const struct trigger_t scene_2_triggers[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_3.h b/gb_studio_project/build/src/include/data/scene_3.h new file mode 100644 index 0000000..d1dcaa3 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_3.h @@ -0,0 +1,11 @@ +#ifndef SCENE_3_H +#define SCENE_3_H + +// Scene: TappyHouse + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_3) +extern const struct scene_t scene_3; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_3_actors.h b/gb_studio_project/build/src/include/data/scene_3_actors.h new file mode 100644 index 0000000..6a4a97e --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_3_actors.h @@ -0,0 +1,12 @@ +#ifndef SCENE_3_ACTORS_H +#define SCENE_3_ACTORS_H + +// Scene: TappyHouse +// Actors + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_3_actors) +extern const struct actor_t scene_3_actors[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_3_collisions.h b/gb_studio_project/build/src/include/data/scene_3_collisions.h new file mode 100644 index 0000000..6953c60 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_3_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_3_COLLISIONS_H +#define SCENE_3_COLLISIONS_H + +// Scene: TappyHouse +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_3_collisions) +extern const unsigned char scene_3_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_3_init.h b/gb_studio_project/build/src/include/data/scene_3_init.h new file mode 100644 index 0000000..629506c --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_3_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_3_INIT_H +#define SCENE_3_INIT_H + +// Script scene_3_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_3_init) +extern const unsigned char scene_3_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_3_sprites.h b/gb_studio_project/build/src/include/data/scene_3_sprites.h new file mode 100644 index 0000000..f4335ce --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_3_sprites.h @@ -0,0 +1,12 @@ +#ifndef SCENE_3_SPRITES_H +#define SCENE_3_SPRITES_H + +// Scene: TappyHouse +// Sprites + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_3_sprites) +extern const far_ptr_t scene_3_sprites[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_3_triggers.h b/gb_studio_project/build/src/include/data/scene_3_triggers.h new file mode 100644 index 0000000..42b95c1 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_3_triggers.h @@ -0,0 +1,12 @@ +#ifndef SCENE_3_TRIGGERS_H +#define SCENE_3_TRIGGERS_H + +// Scene: TappyHouse +// Triggers + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_3_triggers) +extern const struct trigger_t scene_3_triggers[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_4.h b/gb_studio_project/build/src/include/data/scene_4.h new file mode 100644 index 0000000..dbf4d73 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_4.h @@ -0,0 +1,11 @@ +#ifndef SCENE_4_H +#define SCENE_4_H + +// Scene: SlighsHouse + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_4) +extern const struct scene_t scene_4; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_4_collisions.h b/gb_studio_project/build/src/include/data/scene_4_collisions.h new file mode 100644 index 0000000..936a273 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_4_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_4_COLLISIONS_H +#define SCENE_4_COLLISIONS_H + +// Scene: SlighsHouse +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_4_collisions) +extern const unsigned char scene_4_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_4_init.h b/gb_studio_project/build/src/include/data/scene_4_init.h new file mode 100644 index 0000000..b8db342 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_4_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_4_INIT_H +#define SCENE_4_INIT_H + +// Script scene_4_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_4_init) +extern const unsigned char scene_4_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_4_triggers.h b/gb_studio_project/build/src/include/data/scene_4_triggers.h new file mode 100644 index 0000000..0c48fb3 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_4_triggers.h @@ -0,0 +1,12 @@ +#ifndef SCENE_4_TRIGGERS_H +#define SCENE_4_TRIGGERS_H + +// Scene: SlighsHouse +// Triggers + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_4_triggers) +extern const struct trigger_t scene_4_triggers[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_5.h b/gb_studio_project/build/src/include/data/scene_5.h new file mode 100644 index 0000000..05359ad --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_5.h @@ -0,0 +1,11 @@ +#ifndef SCENE_5_H +#define SCENE_5_H + +// Scene: Basement + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_5) +extern const struct scene_t scene_5; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_5_actors.h b/gb_studio_project/build/src/include/data/scene_5_actors.h new file mode 100644 index 0000000..0099836 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_5_actors.h @@ -0,0 +1,12 @@ +#ifndef SCENE_5_ACTORS_H +#define SCENE_5_ACTORS_H + +// Scene: Basement +// Actors + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_5_actors) +extern const struct actor_t scene_5_actors[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_5_collisions.h b/gb_studio_project/build/src/include/data/scene_5_collisions.h new file mode 100644 index 0000000..9dfc214 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_5_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_5_COLLISIONS_H +#define SCENE_5_COLLISIONS_H + +// Scene: Basement +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_5_collisions) +extern const unsigned char scene_5_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_5_init.h b/gb_studio_project/build/src/include/data/scene_5_init.h new file mode 100644 index 0000000..05f53ff --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_5_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_5_INIT_H +#define SCENE_5_INIT_H + +// Script scene_5_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_5_init) +extern const unsigned char scene_5_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_5_sprites.h b/gb_studio_project/build/src/include/data/scene_5_sprites.h new file mode 100644 index 0000000..0385e6b --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_5_sprites.h @@ -0,0 +1,12 @@ +#ifndef SCENE_5_SPRITES_H +#define SCENE_5_SPRITES_H + +// Scene: Basement +// Sprites + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_5_sprites) +extern const far_ptr_t scene_5_sprites[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_5_triggers.h b/gb_studio_project/build/src/include/data/scene_5_triggers.h new file mode 100644 index 0000000..08b2a8f --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_5_triggers.h @@ -0,0 +1,12 @@ +#ifndef SCENE_5_TRIGGERS_H +#define SCENE_5_TRIGGERS_H + +// Scene: Basement +// Triggers + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_5_triggers) +extern const struct trigger_t scene_5_triggers[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_6.h b/gb_studio_project/build/src/include/data/scene_6.h new file mode 100644 index 0000000..ebe34bd --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_6.h @@ -0,0 +1,11 @@ +#ifndef SCENE_6_H +#define SCENE_6_H + +// Scene: MidnightLibrary + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_6) +extern const struct scene_t scene_6; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_6_actors.h b/gb_studio_project/build/src/include/data/scene_6_actors.h new file mode 100644 index 0000000..89ac997 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_6_actors.h @@ -0,0 +1,12 @@ +#ifndef SCENE_6_ACTORS_H +#define SCENE_6_ACTORS_H + +// Scene: MidnightLibrary +// Actors + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_6_actors) +extern const struct actor_t scene_6_actors[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_6_collisions.h b/gb_studio_project/build/src/include/data/scene_6_collisions.h new file mode 100644 index 0000000..1cc94cb --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_6_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_6_COLLISIONS_H +#define SCENE_6_COLLISIONS_H + +// Scene: MidnightLibrary +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_6_collisions) +extern const unsigned char scene_6_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_6_init.h b/gb_studio_project/build/src/include/data/scene_6_init.h new file mode 100644 index 0000000..847b491 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_6_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_6_INIT_H +#define SCENE_6_INIT_H + +// Script scene_6_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_6_init) +extern const unsigned char scene_6_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_6_sprites.h b/gb_studio_project/build/src/include/data/scene_6_sprites.h new file mode 100644 index 0000000..6e3299b --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_6_sprites.h @@ -0,0 +1,12 @@ +#ifndef SCENE_6_SPRITES_H +#define SCENE_6_SPRITES_H + +// Scene: MidnightLibrary +// Sprites + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_6_sprites) +extern const far_ptr_t scene_6_sprites[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_6_triggers.h b/gb_studio_project/build/src/include/data/scene_6_triggers.h new file mode 100644 index 0000000..1725168 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_6_triggers.h @@ -0,0 +1,12 @@ +#ifndef SCENE_6_TRIGGERS_H +#define SCENE_6_TRIGGERS_H + +// Scene: MidnightLibrary +// Triggers + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_6_triggers) +extern const struct trigger_t scene_6_triggers[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_7.h b/gb_studio_project/build/src/include/data/scene_7.h new file mode 100644 index 0000000..0a57bfa --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_7.h @@ -0,0 +1,11 @@ +#ifndef SCENE_7_H +#define SCENE_7_H + +// Scene: melonHouse + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_7) +extern const struct scene_t scene_7; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_7_actors.h b/gb_studio_project/build/src/include/data/scene_7_actors.h new file mode 100644 index 0000000..6fc0d0b --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_7_actors.h @@ -0,0 +1,12 @@ +#ifndef SCENE_7_ACTORS_H +#define SCENE_7_ACTORS_H + +// Scene: melonHouse +// Actors + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_7_actors) +extern const struct actor_t scene_7_actors[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_7_collisions.h b/gb_studio_project/build/src/include/data/scene_7_collisions.h new file mode 100644 index 0000000..fff7e61 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_7_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_7_COLLISIONS_H +#define SCENE_7_COLLISIONS_H + +// Scene: melonHouse +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_7_collisions) +extern const unsigned char scene_7_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_7_init.h b/gb_studio_project/build/src/include/data/scene_7_init.h new file mode 100644 index 0000000..dd29cc4 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_7_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_7_INIT_H +#define SCENE_7_INIT_H + +// Script scene_7_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_7_init) +extern const unsigned char scene_7_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_7_sprites.h b/gb_studio_project/build/src/include/data/scene_7_sprites.h new file mode 100644 index 0000000..e18b2db --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_7_sprites.h @@ -0,0 +1,12 @@ +#ifndef SCENE_7_SPRITES_H +#define SCENE_7_SPRITES_H + +// Scene: melonHouse +// Sprites + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_7_sprites) +extern const far_ptr_t scene_7_sprites[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_7_triggers.h b/gb_studio_project/build/src/include/data/scene_7_triggers.h new file mode 100644 index 0000000..a14ed85 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_7_triggers.h @@ -0,0 +1,12 @@ +#ifndef SCENE_7_TRIGGERS_H +#define SCENE_7_TRIGGERS_H + +// Scene: melonHouse +// Triggers + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_7_triggers) +extern const struct trigger_t scene_7_triggers[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_8.h b/gb_studio_project/build/src/include/data/scene_8.h new file mode 100644 index 0000000..64f8c20 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_8.h @@ -0,0 +1,11 @@ +#ifndef SCENE_8_H +#define SCENE_8_H + +// Scene: MidnightClubHouse + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_8) +extern const struct scene_t scene_8; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_8_actors.h b/gb_studio_project/build/src/include/data/scene_8_actors.h new file mode 100644 index 0000000..1d5f75b --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_8_actors.h @@ -0,0 +1,12 @@ +#ifndef SCENE_8_ACTORS_H +#define SCENE_8_ACTORS_H + +// Scene: MidnightClubHouse +// Actors + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_8_actors) +extern const struct actor_t scene_8_actors[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_8_collisions.h b/gb_studio_project/build/src/include/data/scene_8_collisions.h new file mode 100644 index 0000000..e7300cf --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_8_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_8_COLLISIONS_H +#define SCENE_8_COLLISIONS_H + +// Scene: MidnightClubHouse +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_8_collisions) +extern const unsigned char scene_8_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_8_init.h b/gb_studio_project/build/src/include/data/scene_8_init.h new file mode 100644 index 0000000..f59442e --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_8_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_8_INIT_H +#define SCENE_8_INIT_H + +// Script scene_8_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_8_init) +extern const unsigned char scene_8_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_8_sprites.h b/gb_studio_project/build/src/include/data/scene_8_sprites.h new file mode 100644 index 0000000..9254278 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_8_sprites.h @@ -0,0 +1,12 @@ +#ifndef SCENE_8_SPRITES_H +#define SCENE_8_SPRITES_H + +// Scene: MidnightClubHouse +// Sprites + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_8_sprites) +extern const far_ptr_t scene_8_sprites[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_8_triggers.h b/gb_studio_project/build/src/include/data/scene_8_triggers.h new file mode 100644 index 0000000..7fb68e9 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_8_triggers.h @@ -0,0 +1,12 @@ +#ifndef SCENE_8_TRIGGERS_H +#define SCENE_8_TRIGGERS_H + +// Scene: MidnightClubHouse +// Triggers + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_8_triggers) +extern const struct trigger_t scene_8_triggers[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_9.h b/gb_studio_project/build/src/include/data/scene_9.h new file mode 100644 index 0000000..8240fe7 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_9.h @@ -0,0 +1,11 @@ +#ifndef SCENE_9_H +#define SCENE_9_H + +// Scene: fate6HouseF2 + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_9) +extern const struct scene_t scene_9; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_9_collisions.h b/gb_studio_project/build/src/include/data/scene_9_collisions.h new file mode 100644 index 0000000..d38fbac --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_9_collisions.h @@ -0,0 +1,12 @@ +#ifndef SCENE_9_COLLISIONS_H +#define SCENE_9_COLLISIONS_H + +// Scene: fate6HouseF2 +// Collisions + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_9_collisions) +extern const unsigned char scene_9_collisions[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_9_init.h b/gb_studio_project/build/src/include/data/scene_9_init.h new file mode 100644 index 0000000..386744f --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_9_init.h @@ -0,0 +1,11 @@ +#ifndef SCENE_9_INIT_H +#define SCENE_9_INIT_H + +// Script scene_9_init + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_9_init) +extern const unsigned char scene_9_init[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_9_triggers.h b/gb_studio_project/build/src/include/data/scene_9_triggers.h new file mode 100644 index 0000000..cdf1726 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_9_triggers.h @@ -0,0 +1,12 @@ +#ifndef SCENE_9_TRIGGERS_H +#define SCENE_9_TRIGGERS_H + +// Scene: fate6HouseF2 +// Triggers + +#include "gbs_types.h" + +BANKREF_EXTERN(scene_9_triggers) +extern const struct trigger_t scene_9_triggers[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/scene_types.h b/gb_studio_project/build/src/include/data/scene_types.h new file mode 100644 index 0000000..a8fae35 --- /dev/null +++ b/gb_studio_project/build/src/include/data/scene_types.h @@ -0,0 +1,8 @@ +#ifndef SCENE_TYPES_H +#define SCENE_TYPES_H + +typedef enum { + SCENE_TYPE_TOPDOWN = 0, + SCENE_TYPE_LOGO +} scene_type_e; +#endif diff --git a/gb_studio_project/build/src/include/data/script_1.h b/gb_studio_project/build/src/include/data/script_1.h new file mode 100644 index 0000000..9eb9f6e --- /dev/null +++ b/gb_studio_project/build/src/include/data/script_1.h @@ -0,0 +1,11 @@ +#ifndef SCRIPT_1_H +#define SCRIPT_1_H + +// Script script_1 + +#include "gbs_types.h" + +BANKREF_EXTERN(script_1) +extern const unsigned char script_1[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/script_input.h b/gb_studio_project/build/src/include/data/script_input.h new file mode 100644 index 0000000..0515b80 --- /dev/null +++ b/gb_studio_project/build/src/include/data/script_input.h @@ -0,0 +1,11 @@ +#ifndef SCRIPT_INPUT_H +#define SCRIPT_INPUT_H + +// Script script_input + +#include "gbs_types.h" + +BANKREF_EXTERN(script_input) +extern const unsigned char script_input[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/script_input_4.h b/gb_studio_project/build/src/include/data/script_input_4.h new file mode 100644 index 0000000..46146cf --- /dev/null +++ b/gb_studio_project/build/src/include/data/script_input_4.h @@ -0,0 +1,11 @@ +#ifndef SCRIPT_INPUT_4_H +#define SCRIPT_INPUT_4_H + +// Script script_input_4 + +#include "gbs_types.h" + +BANKREF_EXTERN(script_input_4) +extern const unsigned char script_input_4[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/script_input_5.h b/gb_studio_project/build/src/include/data/script_input_5.h new file mode 100644 index 0000000..9ad129a --- /dev/null +++ b/gb_studio_project/build/src/include/data/script_input_5.h @@ -0,0 +1,11 @@ +#ifndef SCRIPT_INPUT_5_H +#define SCRIPT_INPUT_5_H + +// Script script_input_5 + +#include "gbs_types.h" + +BANKREF_EXTERN(script_input_5) +extern const unsigned char script_input_5[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/script_input_6.h b/gb_studio_project/build/src/include/data/script_input_6.h new file mode 100644 index 0000000..072ce35 --- /dev/null +++ b/gb_studio_project/build/src/include/data/script_input_6.h @@ -0,0 +1,11 @@ +#ifndef SCRIPT_INPUT_6_H +#define SCRIPT_INPUT_6_H + +// Script script_input_6 + +#include "gbs_types.h" + +BANKREF_EXTERN(script_input_6) +extern const unsigned char script_input_6[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_actor_animated.h b/gb_studio_project/build/src/include/data/sprite_actor_animated.h new file mode 100644 index 0000000..f26bc52 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_actor_animated.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_ACTOR_ANIMATED_H +#define SPRITE_ACTOR_ANIMATED_H + +// SpriteSheet: actor_animated + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_actor_animated) +extern const struct spritesheet_t sprite_actor_animated; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_actor_animated_bank2_tileset.h b/gb_studio_project/build/src/include/data/sprite_actor_animated_bank2_tileset.h new file mode 100644 index 0000000..e0dd1c0 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_actor_animated_bank2_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_ACTOR_ANIMATED_BANK2_TILESET_H +#define SPRITE_ACTOR_ANIMATED_BANK2_TILESET_H + +// Tileset: sprite_actor_animated_bank2_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_actor_animated_bank2_tileset) +extern const struct tileset_t sprite_actor_animated_bank2_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_actor_animated_tileset.h b/gb_studio_project/build/src/include/data/sprite_actor_animated_tileset.h new file mode 100644 index 0000000..5603627 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_actor_animated_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_ACTOR_ANIMATED_TILESET_H +#define SPRITE_ACTOR_ANIMATED_TILESET_H + +// Tileset: sprite_actor_animated_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_actor_animated_tileset) +extern const struct tileset_t sprite_actor_animated_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_cat.h b/gb_studio_project/build/src/include/data/sprite_cat.h new file mode 100644 index 0000000..c879a93 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_cat.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_CAT_H +#define SPRITE_CAT_H + +// SpriteSheet: cat + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_cat) +extern const struct spritesheet_t sprite_cat; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_cat_bank2_tileset.h b/gb_studio_project/build/src/include/data/sprite_cat_bank2_tileset.h new file mode 100644 index 0000000..a954c67 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_cat_bank2_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_CAT_BANK2_TILESET_H +#define SPRITE_CAT_BANK2_TILESET_H + +// Tileset: sprite_cat_bank2_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_cat_bank2_tileset) +extern const struct tileset_t sprite_cat_bank2_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_cat_tileset.h b/gb_studio_project/build/src/include/data/sprite_cat_tileset.h new file mode 100644 index 0000000..0244f0f --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_cat_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_CAT_TILESET_H +#define SPRITE_CAT_TILESET_H + +// Tileset: sprite_cat_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_cat_tileset) +extern const struct tileset_t sprite_cat_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_charanimatedsprite.h b/gb_studio_project/build/src/include/data/sprite_charanimatedsprite.h new file mode 100644 index 0000000..00afc4d --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_charanimatedsprite.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_CHARANIMATEDSPRITE_H +#define SPRITE_CHARANIMATEDSPRITE_H + +// SpriteSheet: CharAnimatedSprite + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_charanimatedsprite) +extern const struct spritesheet_t sprite_charanimatedsprite; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_charanimatedsprite_bank2_tileset.h b/gb_studio_project/build/src/include/data/sprite_charanimatedsprite_bank2_tileset.h new file mode 100644 index 0000000..9e8d90a --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_charanimatedsprite_bank2_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_CHARANIMATEDSPRITE_BANK2_TILESET_H +#define SPRITE_CHARANIMATEDSPRITE_BANK2_TILESET_H + +// Tileset: sprite_charanimatedsprite_bank2_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_charanimatedsprite_bank2_tileset) +extern const struct tileset_t sprite_charanimatedsprite_bank2_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_charanimatedsprite_tileset.h b/gb_studio_project/build/src/include/data/sprite_charanimatedsprite_tileset.h new file mode 100644 index 0000000..0ae4758 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_charanimatedsprite_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_CHARANIMATEDSPRITE_TILESET_H +#define SPRITE_CHARANIMATEDSPRITE_TILESET_H + +// Tileset: sprite_charanimatedsprite_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_charanimatedsprite_tileset) +extern const struct tileset_t sprite_charanimatedsprite_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_checkbox.h b/gb_studio_project/build/src/include/data/sprite_checkbox.h new file mode 100644 index 0000000..faaee76 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_checkbox.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_CHECKBOX_H +#define SPRITE_CHECKBOX_H + +// SpriteSheet: checkbox + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_checkbox) +extern const struct spritesheet_t sprite_checkbox; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_checkbox_bank2_tileset.h b/gb_studio_project/build/src/include/data/sprite_checkbox_bank2_tileset.h new file mode 100644 index 0000000..c354e8c --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_checkbox_bank2_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_CHECKBOX_BANK2_TILESET_H +#define SPRITE_CHECKBOX_BANK2_TILESET_H + +// Tileset: sprite_checkbox_bank2_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_checkbox_bank2_tileset) +extern const struct tileset_t sprite_checkbox_bank2_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_checkbox_tileset.h b/gb_studio_project/build/src/include/data/sprite_checkbox_tileset.h new file mode 100644 index 0000000..5ee1e3d --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_checkbox_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_CHECKBOX_TILESET_H +#define SPRITE_CHECKBOX_TILESET_H + +// Tileset: sprite_checkbox_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_checkbox_tileset) +extern const struct tileset_t sprite_checkbox_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_dog.h b/gb_studio_project/build/src/include/data/sprite_dog.h new file mode 100644 index 0000000..ba997ba --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_dog.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_DOG_H +#define SPRITE_DOG_H + +// SpriteSheet: dog + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_dog) +extern const struct spritesheet_t sprite_dog; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_dog_bank2_tileset.h b/gb_studio_project/build/src/include/data/sprite_dog_bank2_tileset.h new file mode 100644 index 0000000..a219314 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_dog_bank2_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_DOG_BANK2_TILESET_H +#define SPRITE_DOG_BANK2_TILESET_H + +// Tileset: sprite_dog_bank2_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_dog_bank2_tileset) +extern const struct tileset_t sprite_dog_bank2_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_dog_tileset.h b/gb_studio_project/build/src/include/data/sprite_dog_tileset.h new file mode 100644 index 0000000..d9caa4f --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_dog_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_DOG_TILESET_H +#define SPRITE_DOG_TILESET_H + +// Tileset: sprite_dog_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_dog_tileset) +extern const struct tileset_t sprite_dog_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_npc001.h b/gb_studio_project/build/src/include/data/sprite_npc001.h new file mode 100644 index 0000000..f0f8506 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_npc001.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_NPC001_H +#define SPRITE_NPC001_H + +// SpriteSheet: npc001 + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_npc001) +extern const struct spritesheet_t sprite_npc001; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_npc001_bank2_tileset.h b/gb_studio_project/build/src/include/data/sprite_npc001_bank2_tileset.h new file mode 100644 index 0000000..aa6a883 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_npc001_bank2_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_NPC001_BANK2_TILESET_H +#define SPRITE_NPC001_BANK2_TILESET_H + +// Tileset: sprite_npc001_bank2_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_npc001_bank2_tileset) +extern const struct tileset_t sprite_npc001_bank2_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_npc001_tileset.h b/gb_studio_project/build/src/include/data/sprite_npc001_tileset.h new file mode 100644 index 0000000..2b77ff4 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_npc001_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_NPC001_TILESET_H +#define SPRITE_NPC001_TILESET_H + +// Tileset: sprite_npc001_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_npc001_tileset) +extern const struct tileset_t sprite_npc001_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_npc002.h b/gb_studio_project/build/src/include/data/sprite_npc002.h new file mode 100644 index 0000000..ff32d18 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_npc002.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_NPC002_H +#define SPRITE_NPC002_H + +// SpriteSheet: npc002 + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_npc002) +extern const struct spritesheet_t sprite_npc002; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_npc002_bank2_tileset.h b/gb_studio_project/build/src/include/data/sprite_npc002_bank2_tileset.h new file mode 100644 index 0000000..1b43edd --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_npc002_bank2_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_NPC002_BANK2_TILESET_H +#define SPRITE_NPC002_BANK2_TILESET_H + +// Tileset: sprite_npc002_bank2_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_npc002_bank2_tileset) +extern const struct tileset_t sprite_npc002_bank2_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_npc002_tileset.h b/gb_studio_project/build/src/include/data/sprite_npc002_tileset.h new file mode 100644 index 0000000..1d8a0e4 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_npc002_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_NPC002_TILESET_H +#define SPRITE_NPC002_TILESET_H + +// Tileset: sprite_npc002_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_npc002_tileset) +extern const struct tileset_t sprite_npc002_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_npc005.h b/gb_studio_project/build/src/include/data/sprite_npc005.h new file mode 100644 index 0000000..3162828 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_npc005.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_NPC005_H +#define SPRITE_NPC005_H + +// SpriteSheet: npc005 + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_npc005) +extern const struct spritesheet_t sprite_npc005; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_npc005_bank2_tileset.h b/gb_studio_project/build/src/include/data/sprite_npc005_bank2_tileset.h new file mode 100644 index 0000000..0fd8716 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_npc005_bank2_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_NPC005_BANK2_TILESET_H +#define SPRITE_NPC005_BANK2_TILESET_H + +// Tileset: sprite_npc005_bank2_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_npc005_bank2_tileset) +extern const struct tileset_t sprite_npc005_bank2_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_npc005_tileset.h b/gb_studio_project/build/src/include/data/sprite_npc005_tileset.h new file mode 100644 index 0000000..b8c241f --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_npc005_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_NPC005_TILESET_H +#define SPRITE_NPC005_TILESET_H + +// Tileset: sprite_npc005_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_npc005_tileset) +extern const struct tileset_t sprite_npc005_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_player.h b/gb_studio_project/build/src/include/data/sprite_player.h new file mode 100644 index 0000000..fe06e35 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_player.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_PLAYER_H +#define SPRITE_PLAYER_H + +// SpriteSheet: player + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_player) +extern const struct spritesheet_t sprite_player; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_player_bank2_tileset.h b/gb_studio_project/build/src/include/data/sprite_player_bank2_tileset.h new file mode 100644 index 0000000..02adc7f --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_player_bank2_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_PLAYER_BANK2_TILESET_H +#define SPRITE_PLAYER_BANK2_TILESET_H + +// Tileset: sprite_player_bank2_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_player_bank2_tileset) +extern const struct tileset_t sprite_player_bank2_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_player_tileset.h b/gb_studio_project/build/src/include/data/sprite_player_tileset.h new file mode 100644 index 0000000..6ff18e4 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_player_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_PLAYER_TILESET_H +#define SPRITE_PLAYER_TILESET_H + +// Tileset: sprite_player_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_player_tileset) +extern const struct tileset_t sprite_player_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_sign.h b/gb_studio_project/build/src/include/data/sprite_sign.h new file mode 100644 index 0000000..0b634eb --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_sign.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_SIGN_H +#define SPRITE_SIGN_H + +// SpriteSheet: sign + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_sign) +extern const struct spritesheet_t sprite_sign; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_sign_bank2_tileset.h b/gb_studio_project/build/src/include/data/sprite_sign_bank2_tileset.h new file mode 100644 index 0000000..21f017b --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_sign_bank2_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_SIGN_BANK2_TILESET_H +#define SPRITE_SIGN_BANK2_TILESET_H + +// Tileset: sprite_sign_bank2_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_sign_bank2_tileset) +extern const struct tileset_t sprite_sign_bank2_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/sprite_sign_tileset.h b/gb_studio_project/build/src/include/data/sprite_sign_tileset.h new file mode 100644 index 0000000..475ecf7 --- /dev/null +++ b/gb_studio_project/build/src/include/data/sprite_sign_tileset.h @@ -0,0 +1,11 @@ +#ifndef SPRITE_SIGN_TILESET_H +#define SPRITE_SIGN_TILESET_H + +// Tileset: sprite_sign_tileset + +#include "gbs_types.h" + +BANKREF_EXTERN(sprite_sign_tileset) +extern const struct tileset_t sprite_sign_tileset; + +#endif diff --git a/gb_studio_project/build/src/include/data/spritesheet_none.h b/gb_studio_project/build/src/include/data/spritesheet_none.h new file mode 100644 index 0000000..abbbed2 --- /dev/null +++ b/gb_studio_project/build/src/include/data/spritesheet_none.h @@ -0,0 +1,11 @@ +#ifndef SPRITESHEET_NONE_H +#define SPRITESHEET_NONE_H + +// SpriteSheet: None + +#include "gbs_types.h" + +extern const void __bank_spritesheet_none; +extern const struct spritesheet_t spritesheet_none; + +#endif diff --git a/gb_studio_project/build/src/include/data/states_defines.h b/gb_studio_project/build/src/include/data/states_defines.h new file mode 100644 index 0000000..d9f16ce --- /dev/null +++ b/gb_studio_project/build/src/include/data/states_defines.h @@ -0,0 +1,6 @@ +#ifndef STATES_DEFINES_H +#define STATES_DEFINES_H + +#define INPUT_TOPDOWN_INTERACT INPUT_A + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_0_interact.h b/gb_studio_project/build/src/include/data/trigger_0_interact.h new file mode 100644 index 0000000..ecc1c69 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_0_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_0_INTERACT_H +#define TRIGGER_0_INTERACT_H + +// Script trigger_0_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_0_interact) +extern const unsigned char trigger_0_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_10_interact.h b/gb_studio_project/build/src/include/data/trigger_10_interact.h new file mode 100644 index 0000000..29c740a --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_10_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_10_INTERACT_H +#define TRIGGER_10_INTERACT_H + +// Script trigger_10_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_10_interact) +extern const unsigned char trigger_10_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_11_interact.h b/gb_studio_project/build/src/include/data/trigger_11_interact.h new file mode 100644 index 0000000..0ff67ee --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_11_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_11_INTERACT_H +#define TRIGGER_11_INTERACT_H + +// Script trigger_11_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_11_interact) +extern const unsigned char trigger_11_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_12_interact.h b/gb_studio_project/build/src/include/data/trigger_12_interact.h new file mode 100644 index 0000000..352f7f7 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_12_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_12_INTERACT_H +#define TRIGGER_12_INTERACT_H + +// Script trigger_12_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_12_interact) +extern const unsigned char trigger_12_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_13_interact.h b/gb_studio_project/build/src/include/data/trigger_13_interact.h new file mode 100644 index 0000000..018a227 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_13_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_13_INTERACT_H +#define TRIGGER_13_INTERACT_H + +// Script trigger_13_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_13_interact) +extern const unsigned char trigger_13_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_14_interact.h b/gb_studio_project/build/src/include/data/trigger_14_interact.h new file mode 100644 index 0000000..a026b48 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_14_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_14_INTERACT_H +#define TRIGGER_14_INTERACT_H + +// Script trigger_14_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_14_interact) +extern const unsigned char trigger_14_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_15_interact.h b/gb_studio_project/build/src/include/data/trigger_15_interact.h new file mode 100644 index 0000000..523e6c2 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_15_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_15_INTERACT_H +#define TRIGGER_15_INTERACT_H + +// Script trigger_15_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_15_interact) +extern const unsigned char trigger_15_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_16_interact.h b/gb_studio_project/build/src/include/data/trigger_16_interact.h new file mode 100644 index 0000000..e142015 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_16_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_16_INTERACT_H +#define TRIGGER_16_INTERACT_H + +// Script trigger_16_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_16_interact) +extern const unsigned char trigger_16_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_17_interact.h b/gb_studio_project/build/src/include/data/trigger_17_interact.h new file mode 100644 index 0000000..57a631c --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_17_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_17_INTERACT_H +#define TRIGGER_17_INTERACT_H + +// Script trigger_17_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_17_interact) +extern const unsigned char trigger_17_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_18_interact.h b/gb_studio_project/build/src/include/data/trigger_18_interact.h new file mode 100644 index 0000000..4ef4cf6 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_18_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_18_INTERACT_H +#define TRIGGER_18_INTERACT_H + +// Script trigger_18_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_18_interact) +extern const unsigned char trigger_18_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_19_interact.h b/gb_studio_project/build/src/include/data/trigger_19_interact.h new file mode 100644 index 0000000..692d65c --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_19_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_19_INTERACT_H +#define TRIGGER_19_INTERACT_H + +// Script trigger_19_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_19_interact) +extern const unsigned char trigger_19_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_1_interact.h b/gb_studio_project/build/src/include/data/trigger_1_interact.h new file mode 100644 index 0000000..775919c --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_1_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_1_INTERACT_H +#define TRIGGER_1_INTERACT_H + +// Script trigger_1_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_1_interact) +extern const unsigned char trigger_1_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_20_interact.h b/gb_studio_project/build/src/include/data/trigger_20_interact.h new file mode 100644 index 0000000..af5bae7 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_20_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_20_INTERACT_H +#define TRIGGER_20_INTERACT_H + +// Script trigger_20_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_20_interact) +extern const unsigned char trigger_20_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_21_interact.h b/gb_studio_project/build/src/include/data/trigger_21_interact.h new file mode 100644 index 0000000..4365ace --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_21_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_21_INTERACT_H +#define TRIGGER_21_INTERACT_H + +// Script trigger_21_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_21_interact) +extern const unsigned char trigger_21_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_22_interact.h b/gb_studio_project/build/src/include/data/trigger_22_interact.h new file mode 100644 index 0000000..5d6fb4e --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_22_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_22_INTERACT_H +#define TRIGGER_22_INTERACT_H + +// Script trigger_22_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_22_interact) +extern const unsigned char trigger_22_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_23_interact.h b/gb_studio_project/build/src/include/data/trigger_23_interact.h new file mode 100644 index 0000000..3a1114d --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_23_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_23_INTERACT_H +#define TRIGGER_23_INTERACT_H + +// Script trigger_23_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_23_interact) +extern const unsigned char trigger_23_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_24_interact.h b/gb_studio_project/build/src/include/data/trigger_24_interact.h new file mode 100644 index 0000000..cb8afcd --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_24_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_24_INTERACT_H +#define TRIGGER_24_INTERACT_H + +// Script trigger_24_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_24_interact) +extern const unsigned char trigger_24_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_2_interact.h b/gb_studio_project/build/src/include/data/trigger_2_interact.h new file mode 100644 index 0000000..c437750 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_2_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_2_INTERACT_H +#define TRIGGER_2_INTERACT_H + +// Script trigger_2_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_2_interact) +extern const unsigned char trigger_2_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_3_interact.h b/gb_studio_project/build/src/include/data/trigger_3_interact.h new file mode 100644 index 0000000..500b1f7 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_3_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_3_INTERACT_H +#define TRIGGER_3_INTERACT_H + +// Script trigger_3_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_3_interact) +extern const unsigned char trigger_3_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_4_interact.h b/gb_studio_project/build/src/include/data/trigger_4_interact.h new file mode 100644 index 0000000..b580619 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_4_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_4_INTERACT_H +#define TRIGGER_4_INTERACT_H + +// Script trigger_4_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_4_interact) +extern const unsigned char trigger_4_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_5_interact.h b/gb_studio_project/build/src/include/data/trigger_5_interact.h new file mode 100644 index 0000000..e483588 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_5_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_5_INTERACT_H +#define TRIGGER_5_INTERACT_H + +// Script trigger_5_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_5_interact) +extern const unsigned char trigger_5_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_6_interact.h b/gb_studio_project/build/src/include/data/trigger_6_interact.h new file mode 100644 index 0000000..be99f11 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_6_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_6_INTERACT_H +#define TRIGGER_6_INTERACT_H + +// Script trigger_6_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_6_interact) +extern const unsigned char trigger_6_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_7_interact.h b/gb_studio_project/build/src/include/data/trigger_7_interact.h new file mode 100644 index 0000000..40606da --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_7_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_7_INTERACT_H +#define TRIGGER_7_INTERACT_H + +// Script trigger_7_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_7_interact) +extern const unsigned char trigger_7_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_8_interact.h b/gb_studio_project/build/src/include/data/trigger_8_interact.h new file mode 100644 index 0000000..9dc2332 --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_8_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_8_INTERACT_H +#define TRIGGER_8_INTERACT_H + +// Script trigger_8_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_8_interact) +extern const unsigned char trigger_8_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data/trigger_9_interact.h b/gb_studio_project/build/src/include/data/trigger_9_interact.h new file mode 100644 index 0000000..ebeeaff --- /dev/null +++ b/gb_studio_project/build/src/include/data/trigger_9_interact.h @@ -0,0 +1,11 @@ +#ifndef TRIGGER_9_INTERACT_H +#define TRIGGER_9_INTERACT_H + +// Script trigger_9_interact + +#include "gbs_types.h" + +BANKREF_EXTERN(trigger_9_interact) +extern const unsigned char trigger_9_interact[]; + +#endif diff --git a/gb_studio_project/build/src/include/data_manager.h b/gb_studio_project/build/src/include/data_manager.h new file mode 100644 index 0000000..33dbfd3 --- /dev/null +++ b/gb_studio_project/build/src/include/data_manager.h @@ -0,0 +1,40 @@ +#ifndef SCENE_H +#define SCENE_H + +#include +#include "gbs_types.h" + +extern far_ptr_t current_scene; +extern UBYTE image_bank; +extern UBYTE image_attr_bank; +extern UBYTE collision_bank; +extern unsigned char *image_ptr; +extern unsigned char *image_attr_ptr; +extern unsigned char *collision_ptr; +extern UBYTE image_tile_width; +extern UBYTE image_tile_height; +extern UINT16 image_width; +extern UINT16 image_height; +extern scene_type_e scene_type; +extern UBYTE actors_len; +extern UBYTE sprites_len; +extern UBYTE actors_len; +extern LCD_isr_e scene_LCD_type; + +#define SCENE_STACK_SIZE 8 +extern scene_stack_item_t scene_stack[SCENE_STACK_SIZE]; +extern scene_stack_item_t * scene_stack_ptr; + +#define MAX_SCENE_SPRITES 64 +extern UBYTE scene_sprites_base_tiles[MAX_SCENE_SPRITES]; + +void load_init(void) BANKED; +UBYTE load_scene(const scene_t * scene, UBYTE bank, UBYTE init_data) BANKED; + +UBYTE load_sprite(UBYTE sprite_offset, const spritesheet_t * sprite, UBYTE bank) BANKED; +void load_player(void) BANKED; +void load_emote(const unsigned char * tiles, UBYTE bank) BANKED; +void load_animations(const spritesheet_t *sprite, UBYTE bank, UWORD animation_set, animation_t * res_animations) NONBANKED; +void load_bounds(const spritesheet_t * sprite, UBYTE bank, bounding_box_t * res_bounds) BANKED; + +#endif diff --git a/gb_studio_project/build/src/include/events.h b/gb_studio_project/build/src/include/events.h new file mode 100644 index 0000000..1882995 --- /dev/null +++ b/gb_studio_project/build/src/include/events.h @@ -0,0 +1,30 @@ +#ifndef _EVENTS_H_INCLUDE +#define _EVENTS_H_INCLUDE + +#include "vm.h" + +typedef struct script_event_t { + UWORD handle; + UBYTE script_bank; + void * script_addr; +} script_event_t; + +extern script_event_t input_events[8]; +extern UBYTE input_slots[8]; + +typedef struct timer_time_t { + UBYTE value, remains; +} timer_time_t; + +#define MAX_CONCURRENT_TIMERS 4 + +extern script_event_t timer_events[MAX_CONCURRENT_TIMERS]; +extern timer_time_t timer_values[MAX_CONCURRENT_TIMERS]; + +void events_init(UBYTE preserve) BANKED; +void events_update(void) NONBANKED; + +void timers_init(UBYTE preserve) BANKED; +void timers_update(void) NONBANKED; + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/fade_manager.h b/gb_studio_project/build/src/include/fade_manager.h new file mode 100644 index 0000000..c94da1f --- /dev/null +++ b/gb_studio_project/build/src/include/fade_manager.h @@ -0,0 +1,73 @@ +#ifndef FADE_MANAGER_H +#define FADE_MANAGER_H + +#include + +#define FADE_SPEED_MASK 0x3F +#define FADE_IN_FLAG 0x40 +#define FADE_ENABLED_FLAG 0x80 + +typedef enum { FADE_IN, FADE_OUT } FADE_DIRECTION; + +extern UBYTE fade_running; +extern UBYTE fade_frames_per_step; +extern UBYTE fade_black; +extern UBYTE fade_timer; +extern UBYTE fade_style; + +#define BCPS_REG_ADDR 0x68 +#define OCPS_REG_ADDR 0x6A + +/** + * Initialise fade variables + */ +void fade_init(void) BANKED; + +/** + * Start Fade In + */ +void fade_in(void) BANKED; + +/** + * Start Fade Out + */ +void fade_out(void) BANKED; + +/** + * Update current fade + */ +void fade_update(void) BANKED; + +/** + * Refresh tile coloring to reflect changes in palette + * Call after LoadPalette etc. + */ +void fade_applypalettechange(void) BANKED; + +/** + * Change current fade speed + * + * @param speed new fade speed + */ +void fade_setspeed(UBYTE speed) BANKED; + +/** + * Check if fade is currently running + * + * @return TRUE if fade is currently running + */ +inline UBYTE fade_isfading(void) { + return fade_running; +} + +/** + * Fade in and wait until complete + */ +void fade_in_modal(void) BANKED; + +/** + * Fade out and wait until complete + */ +void fade_out_modal(void) BANKED; + +#endif diff --git a/gb_studio_project/build/src/include/flasher.h b/gb_studio_project/build/src/include/flasher.h new file mode 100644 index 0000000..845f61d --- /dev/null +++ b/gb_studio_project/build/src/include/flasher.h @@ -0,0 +1,11 @@ +#ifndef __FLASHER_H_INCLUDE +#define __FLASHER_H_INCLUDE + +#include + +void restore_sram_bank(UINT8 bank) BANKED; +void restore_sram(void) BANKED; + +UINT8 save_sram(UINT8 count) BANKED; + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/game_time.h b/gb_studio_project/build/src/include/game_time.h new file mode 100644 index 0000000..1fea57c --- /dev/null +++ b/gb_studio_project/build/src/include/game_time.h @@ -0,0 +1,19 @@ +#ifndef GAME_TIME_H +#define GAME_TIME_H + +#include + +#define IS_FRAME_256 ((game_time & 0xFF) == 0) +#define IS_FRAME_128 ((game_time & 0x7F) == 0) +#define IS_FRAME_64 ((game_time & 0x3F) == 0) +#define IS_FRAME_32 ((game_time & 0x1F) == 0) +#define IS_FRAME_16 ((game_time & 0xF) == 0) +#define IS_FRAME_8 ((game_time & 0x7) == 0) +#define IS_FRAME_4 ((game_time & 0x3) == 0) +#define IS_FRAME_2 ((game_time & 0x1) == 0) +#define IS_FRAME_ODD ((game_time & 0x1) == 1) +#define IS_FRAME_EVEN ((game_time & 0x1) == 0) + +extern UINT8 game_time; + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/gbprinter.h b/gb_studio_project/build/src/include/gbprinter.h new file mode 100644 index 0000000..cd0ad2b --- /dev/null +++ b/gb_studio_project/build/src/include/gbprinter.h @@ -0,0 +1,136 @@ +#ifndef __GBPRINTER_H_INCLUDE__ +#define __GBPRINTER_H_INCLUDE__ + +#include +#include + +/** Width of the printed image in tiles +*/ +#define PRN_TILE_WIDTH 20 + +#define PRN_LOW(A) ((A) & 0xFF) +#define PRN_HIGH(A) ((A) >> 8) + +/** 0x88,0x33 are mandatory first bytes to initialise a communication with printer + Any command sequence begins by these +*/ +#define PRN_MAGIC 0x3388 +#define PRN_LE(A) PRN_LOW(A),PRN_HIGH(A) + +/** INIT command is mandatory to initialize communication protocol with the printer + Two consecutive linked commands must never be more than 150 ms apart except the INIT command which is valid at least 10 seconds +*/ +#define PRN_CMD_INIT 0x01 + +/** PRINT command + Contains the palette, margins, number of prints and printing intensity +*/ +#define PRN_CMD_PRINT 0x02 + +/** DATA command + Can be any length between 0 and 640 bytes. + DATA command with lenght 0 triggers PRN_STATUS_FULL and is mandatory before print command +*/ +#define PRN_CMD_DATA 0x04 + +/** BREAK command + Not very usefull but exists (see Game Boy Programming Manual) +*/ +#define PRN_CMD_BREAK 0x08 + +/** STATUS command + Used to check status bits + Maybe be used alone before an INIT command to check physical connection with printer + Resets PRN_STATUS_UNTRAN +*/ +#define PRN_CMD_STATUS 0x0F + +/** Palette format: the bits, grouped two by two, give the printing color of the encoded pixel value + for the default palette 0xE4 = 0b11100100 = [3 2 1 0] + Any value is valid, which means that 1 to 4 color images are possible + 0x00 acts the same as 0xE4 for the printer +*/ +#define PRN_PALETTE_NORMAL 0b11100100u +#define PRN_PALETTE_INV 0b00011011u + +/** Don't use margins +*/ +#define PRN_NO_MARGINS 0x00 + +/** Exposure: 0x40 is default value, values from 0x80 to 0xFF act as 0x40 + Determines the time used by the printer head to heat the thermal paper +*/ +#define PRN_EXPOSURE_LIGHT 0x00 +#define PRN_EXPOSURE_DEFAULT 0x40 +#define PRN_EXPOSURE_DARK 0x7F + +/** Battery too low +*/ +#define PRN_STATUS_LOWBAT 0x80 + +/** Error not specified according to the Game Boy Programming manual +*/ +#define PRN_STATUS_ER2 0x40 + +/** Paper jam (abnormal motor operation) +*/ +#define PRN_STATUS_ER1 0x20 + +/** Packet error (but not checksum error) +*/ +#define PRN_STATUS_ER0 0x10 + +/** Unprocessed data present in printer memory + Allows to verify that printer got some data in memory with correct checksum + is resetted by STATUS command +*/ +#define PRN_STATUS_UNTRAN 0x08 + +/** status data ready, mandatory to allow printing + is triggered by DATA command with lenght 0 +*/ +#define PRN_STATUS_FULL 0x04 + +/** Message sent by the printer while physically printing +*/ +#define PRN_STATUS_BUSY 0x02 + +/** The received packet has a ckecksum error +*/ +#define PRN_STATUS_SUM 0x01 + +/** Everything is fine, printer ready for further transmission +*/ +#define PRN_STATUS_OK 0x00 + +#define PRN_STATUS_MASK_ERRORS 0xF0 +#define PRN_STATUS_MASK_ANY 0xFF + +#define PRN_SECONDS(A) ((A)*60) + +#define PRN_MAX_PROGRESS 8 + +#define PRN_STATUS_CANCELLED PRN_STATUS_ER2 + +typedef struct start_print_pkt_t { + uint16_t magic; + uint16_t command; + uint16_t length; + uint8_t print; + uint8_t margins; + uint8_t palette; + uint8_t exposure; + uint16_t crc; + uint16_t trail; +} start_print_pkt_t; + +extern start_print_pkt_t PRN_PKT_START; + +uint8_t gbprinter_detect(uint8_t delay) BANKED; +uint8_t gbprinter_print_overlay(uint8_t start, uint8_t rows, uint8_t margins) BANKED; + +inline void gbprinter_set_print_params(uint8_t margins, uint8_t palette, uint8_t exposure) { + PRN_PKT_START.crc = ((PRN_CMD_PRINT + 0x04u + 0x01u) + (PRN_PKT_START.margins = margins) + (PRN_PKT_START.palette = palette) + (PRN_PKT_START.exposure = exposure)); +} + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/gbs_types.h b/gb_studio_project/build/src/include/gbs_types.h new file mode 100644 index 0000000..9a54527 --- /dev/null +++ b/gb_studio_project/build/src/include/gbs_types.h @@ -0,0 +1,191 @@ +#ifndef GBS_TYPES_H +#define GBS_TYPES_H + +#include +#include + +#include +#include + +#include "data/scene_types.h" +#include "bankdata.h" +#include "parallax.h" +#include "collision.h" + +typedef enum { + LCD_simple, + LCD_parallax, + LCD_fullscreen +} LCD_isr_e; + +typedef enum { + COLLISION_GROUP_NONE = 0, + COLLISION_GROUP_PLAYER = 1, + COLLISION_GROUP_1 = 2, + COLLISION_GROUP_2 = 4, + COLLISION_GROUP_3 = 8, +} collision_group_e; + +typedef struct animation_t +{ + uint8_t start; + uint8_t end; +} animation_t; + +typedef struct actor_t +{ + bool active : 1; + bool pinned : 1; + bool hidden : 1; + bool disabled : 1; + bool anim_noloop : 1; + bool collision_enabled : 1; + bool movement_interrupt : 1; + bool persistent : 1; + point16_t pos; + direction_e dir; + bounding_box_t bounds; + uint8_t base_tile; + uint8_t frame; + uint8_t frame_start; + uint8_t frame_end; + uint8_t anim_tick; + uint8_t move_speed; + uint8_t animation; + uint8_t reserve_tiles; + animation_t animations[8]; + far_ptr_t sprite; + far_ptr_t script, script_update; + uint16_t hscript_update, hscript_hit; + + // Collisions + collision_group_e collision_group; + + // Linked list + struct actor_t *next; + struct actor_t *prev; +} actor_t; + +#define TRIGGER_HAS_ENTER_SCRIPT 1 +#define TRIGGER_HAS_LEAVE_SCRIPT 2 + +typedef struct trigger_t { + uint8_t x, y, width, height; + far_ptr_t script; + uint8_t script_flags; +} trigger_t; + +typedef struct scene_t { + uint8_t width, height; + scene_type_e type; + uint8_t n_actors, n_triggers, n_projectiles, n_sprites; + uint8_t reserve_tiles; + far_ptr_t player_sprite; + far_ptr_t background, collisions; + far_ptr_t palette, sprite_palette; + far_ptr_t script_init, script_p_hit1; + far_ptr_t sprites; + far_ptr_t actors; + far_ptr_t triggers; + far_ptr_t projectiles; + parallax_row_t parallax_rows[3]; +} scene_t; + +typedef struct background_t { + uint8_t width, height; + far_ptr_t tileset; + far_ptr_t cgb_tileset; + far_ptr_t tilemap; // far pointer to array of bytes with map + far_ptr_t cgb_tilemap_attr; // far pointer to array of bytes with CGB attributes (may be NULL) +} background_t; + +typedef struct tileset_t { + uint16_t n_tiles; // actual amount of 8x8 tiles in tiles[] array + uint8_t tiles[]; +} tileset_t; + +typedef struct spritesheet_t { + uint8_t n_metasprites; + point8_t emote_origin; + metasprite_t * const *metasprites; + animation_t *animations; + uint16_t *animations_lookup; + bounding_box_t bounds; + far_ptr_t tileset; // far pointer to sprite tileset + far_ptr_t cgb_tileset; // far pointer to additional CGB tileset (may be NULL) +} spritesheet_t; + +typedef struct projectile_def_t +{ + bounding_box_t bounds; + far_ptr_t sprite; + uint8_t life_time; + uint8_t base_tile; + animation_t animations[4]; + uint8_t anim_tick; + uint8_t move_speed; + uint16_t initial_offset; + collision_group_e collision_group; + uint8_t collision_mask; +} projectile_def_t; + +typedef struct projectile_t +{ + bool anim_noloop : 1; + bool strong : 1; + point16_t pos; + point16_t delta_pos; + uint8_t frame; + uint8_t frame_start; + uint8_t frame_end; + projectile_def_t def; + struct projectile_t *next; +} projectile_t; + +#define FONT_RECODE 1 +#define FONT_VWF 2 +#define FONT_VWF_1BIT 4 + +#define FONT_RECODE_SIZE_7BIT 0x7fu + +typedef struct font_desc_t { + uint8_t attr, mask; + const uint8_t * recode_table; + const uint8_t * widths; + const uint8_t * bitmaps; +} font_desc_t; + +typedef struct scene_stack_item_t { + far_ptr_t scene; + point16_t pos; + direction_e dir; +} scene_stack_item_t; + +typedef struct menu_item_t { + uint8_t X, Y; + uint8_t iL, iR, iU, iD; +} menu_item_t; + +#define DMG_BLACK 0x03 +#define DMG_DARK_GRAY 0x02 +#define DMG_LITE_GRAY 0x01 +#define DMG_WHITE 0x00 + +#ifndef DMG_PALETTE +#define DMG_PALETTE(C0, C1, C2, C3) ((uint8_t)((((C3) & 0x03) << 6) | (((C2) & 0x03) << 4) | (((C1) & 0x03) << 2) | ((C0) & 0x03))) +#endif + +#define CGB_PALETTE(C0, C1, C2, C3) {C0, C1, C2, C3} +#define CGB_COLOR(R, G, B) ((uint16_t)(((R) & 0x1f) | (((G) & 0x1f) << 5) | (((B) & 0x1f) << 10))) + +typedef struct palette_entry_t { + uint16_t c0, c1, c2, c3; +} palette_entry_t; + +typedef struct palette_t { + uint8_t mask; + uint8_t palette[2]; + palette_entry_t cgb_palette[]; +} palette_t; + +#endif diff --git a/gb_studio_project/build/src/include/gbt_player.h b/gb_studio_project/build/src/include/gbt_player.h new file mode 100644 index 0000000..791e2e5 --- /dev/null +++ b/gb_studio_project/build/src/include/gbt_player.h @@ -0,0 +1,51 @@ +/* + * GBT Player v2.1.3 + * + * SPDX-License-Identifier: MIT + * + * Copyright (c) 2009-2020, Antonio Niño Díaz + */ + +#ifndef _GBT_PLAYER_ +#define _GBT_PLAYER_ + +#include + +// Plays the song pointed by data (pointer array to patterns) in given bank at +// given initial speed. +void gbt_play(void *data, UINT8 bank, UINT8 speed) OLDCALL; + +// Pauses or unpauses music. +// Parameter: 1 = un-pause/resume, 0 = pause +void gbt_pause(UINT8 pause) OLDCALL; + +// Stops music and turns off sound system. Called automatically when the last +// pattern ends and autoloop isn't activated. +void gbt_stop(void) OLDCALL; + +// Enables or disables autoloop +void gbt_loop(UINT8 loop) OLDCALL; + +// Updates player, should be called every frame. +// NOTE: This will change the active ROM bank to 1. +void gbt_update(void) OLDCALL; + +// Set enabled channels to prevent the player from using that channel. +// NOTE: If a channel is re-enabled, it can take some time to sound OK (until +// pan and volume are modified in the song). You should only disable unused +// channels or channels that don't change pan or volume. +void gbt_enable_channels(UINT8 channel_flags) OLDCALL; + +#define GBT_CHAN_1 (1<<0) +#define GBT_CHAN_2 (1<<1) +#define GBT_CHAN_3 (1<<2) +#define GBT_CHAN_4 (1<<3) + +extern volatile UINT8 _gbt_channel3_loaded_instrument; + +// resets channel3 instrument; forces reloading of waveform +inline void gbt_reset_ch3_instrument(void) { + _gbt_channel3_loaded_instrument = 0xffu; +} + +#endif //_GBT_PLAYER_ diff --git a/gb_studio_project/build/src/include/hUGEDriver.h b/gb_studio_project/build/src/include/hUGEDriver.h new file mode 100644 index 0000000..f3453c8 --- /dev/null +++ b/gb_studio_project/build/src/include/hUGEDriver.h @@ -0,0 +1,142 @@ +#ifndef HUGEDRIVER_H_INCLUDE +#define HUGEDRIVER_H_INCLUDE + +#include + +#define DN(A, B, C) (unsigned char)(A | ((B & 0x10) << 3)),(unsigned char)(((B << 4) & 0xFF) | (C >> 8)),(unsigned char)(C & 0xFF) + +#define C_3 0 +#define Cs3 1 +#define D_3 2 +#define Ds3 3 +#define E_3 4 +#define F_3 5 +#define Fs3 6 +#define G_3 7 +#define Gs3 8 +#define A_3 9 +#define As3 10 +#define B_3 11 +#define C_4 12 +#define Cs4 13 +#define D_4 14 +#define Ds4 15 +#define E_4 16 +#define F_4 17 +#define Fs4 18 +#define G_4 19 +#define Gs4 20 +#define A_4 21 +#define As4 22 +#define B_4 23 +#define C_5 24 +#define Cs5 25 +#define D_5 26 +#define Ds5 27 +#define E_5 28 +#define F_5 29 +#define Fs5 30 +#define G_5 31 +#define Gs5 32 +#define A_5 33 +#define As5 34 +#define B_5 35 +#define C_6 36 +#define Cs6 37 +#define D_6 38 +#define Ds6 39 +#define E_6 40 +#define F_6 41 +#define Fs6 42 +#define G_6 43 +#define Gs6 44 +#define A_6 45 +#define As6 46 +#define B_6 47 +#define C_7 48 +#define Cs7 49 +#define D_7 50 +#define Ds7 51 +#define E_7 52 +#define F_7 53 +#define Fs7 54 +#define G_7 55 +#define Gs7 56 +#define A_7 57 +#define As7 58 +#define B_7 59 +#define C_8 60 +#define Cs8 61 +#define D_8 62 +#define Ds8 63 +#define E_8 64 +#define F_8 65 +#define Fs8 66 +#define G_8 67 +#define Gs8 68 +#define A_8 69 +#define As8 70 +#define B_8 71 +#define LAST_NOTE 72 +#define ___ 90 + +// tick is a tick number; the high byte of param is channel and the low byte of param is routine id +typedef void (*hUGERoutine_t)(unsigned char tick, unsigned int param); + +typedef struct hUGEDutyInstr_t { + const unsigned char sweep; + const unsigned char len_duty; + const unsigned char envelope; + const unsigned char * subpattern; + const unsigned char highmask; +} hUGEDutyInstr_t; + +typedef struct hUGEWaveInstr_t { + const unsigned char length; + const unsigned char volume; + const unsigned char waveform; + const unsigned char * subpattern; + const unsigned char highmask; +} hUGEWaveInstr_t; + +typedef struct hUGENoiseInstr_t { + const unsigned char envelope; + const unsigned char * subpattern; + const unsigned char highmask; + const unsigned char unused1; + const unsigned char unused2; +} hUGENoiseInstr_t; + +typedef struct hUGESong_t { + unsigned char tempo; + const unsigned char * order_cnt; + const unsigned char ** order1, ** order2, ** order3, ** order4; + const hUGEDutyInstr_t * duty_instruments; + const hUGEWaveInstr_t * wave_instruments; + const hUGENoiseInstr_t * noise_instruments; + const hUGERoutine_t ** routines; + const unsigned char * waves; +} hUGESong_t; + +// initialize the driver with song data +void hUGE_init(const hUGESong_t * song); + +// driver routine +void hUGE_dosound(void); + +enum hUGE_channel_t {HT_CH1 = 0, HT_CH2, HT_CH3, HT_CH4}; +enum hUGE_mute_t {HT_CH_PLAY = 0, HT_CH_MUTE}; + +void hUGE_mute_channel(enum hUGE_channel_t ch, enum hUGE_mute_t mute); + +void hUGE_set_position(unsigned char pattern); + +extern volatile unsigned char hUGE_current_wave; + +extern volatile unsigned char hUGE_mute_mask; + +inline void hUGE_reset_wave(void) { + hUGE_current_wave = 100; +} + +#endif diff --git a/gb_studio_project/build/src/include/hUGEDriverRoutines.h b/gb_studio_project/build/src/include/hUGEDriverRoutines.h new file mode 100644 index 0000000..fa8da7f --- /dev/null +++ b/gb_studio_project/build/src/include/hUGEDriverRoutines.h @@ -0,0 +1,15 @@ +#ifndef HUGEDRIVER_ROUTINES_H_INCLUDE +#define HUGEDRIVER_ROUTINES_H_INCLUDE + +#include "hUGEDriver.h" + +void hUGETrackerRoutine(unsigned char tick, unsigned int param) NONBANKED; + +static const hUGERoutine_t routines[] = { + hUGETrackerRoutine, hUGETrackerRoutine, hUGETrackerRoutine, hUGETrackerRoutine, + hUGETrackerRoutine, hUGETrackerRoutine, hUGETrackerRoutine, hUGETrackerRoutine, + hUGETrackerRoutine, hUGETrackerRoutine, hUGETrackerRoutine, hUGETrackerRoutine, + hUGETrackerRoutine, hUGETrackerRoutine, hUGETrackerRoutine, hUGETrackerRoutine +}; + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/input.h b/gb_studio_project/build/src/include/input.h new file mode 100644 index 0000000..83649d3 --- /dev/null +++ b/gb_studio_project/build/src/include/input.h @@ -0,0 +1,104 @@ +#ifndef INPUT_H +#define INPUT_H + +#include + +#ifdef SGB + #define MAX_JOYPADS 2 +#endif +#define joy (frame_joy) + +/* TRUE if any button is being held */ +#define INPUT_ANY (joy) + +/* TRUE if left is being held on dpad */ +#define INPUT_LEFT (joy & J_LEFT) + +/* TRUE if right is being held on dpad */ +#define INPUT_RIGHT (joy & J_RIGHT) + +/* TRUE if up is being held on dpad */ +#define INPUT_UP (joy & J_UP) + +/* TRUE if down is being held on dpad */ +#define INPUT_DOWN (joy & J_DOWN) + +/* TRUE if left is most recent direction being held on dpad */ +#define INPUT_RECENT_LEFT ((recent_joy & J_LEFT) || (!recent_joy && (joy & J_LEFT))) + +/* TRUE if right is most recent direction being held on dpad */ +#define INPUT_RECENT_RIGHT ((recent_joy & J_RIGHT) || (!recent_joy && (joy & J_RIGHT))) + +/* TRUE if up is most recent direction being held on dpad */ +#define INPUT_RECENT_UP ((recent_joy & J_UP) || (!recent_joy && (joy & J_UP))) + +/* TRUE if down is most recent direction being held on dpad */ +#define INPUT_RECENT_DOWN ((recent_joy & J_DOWN) || (!recent_joy && (joy & J_DOWN))) + +/* TRUE if A button is being held */ +#define INPUT_A (joy & J_A) + +/* TRUE if B button is being held */ +#define INPUT_B (joy & J_B) + +/* TRUE if A OR B button is being held */ +#define INPUT_A_OR_B (joy & (J_A | J_B)) + +/* TRUE if Start button is being held */ +#define INPUT_START (joy & J_START) + +/* TRUE if Select button is being held */ +#define INPUT_SELECT (joy & J_SELECT) + +/* TRUE on first frame that any button is pressed */ +#define INPUT_ANY_PRESSED (joy & ~last_joy) + +/* TRUE on first frame that left is pressed on dpad */ +#define INPUT_LEFT_PRESSED ((joy & ~last_joy) & J_LEFT) + +/* TRUE on first frame that right is pressed on dpad */ +#define INPUT_RIGHT_PRESSED ((joy & ~last_joy) & J_RIGHT) + +/* TRUE on first frame that up is pressed on dpad */ +#define INPUT_UP_PRESSED ((joy & ~last_joy) & J_UP) + +/* TRUE on first frame that down is pressed on dpad */ +#define INPUT_DOWN_PRESSED ((joy & ~last_joy) & J_DOWN) + +/* TRUE on first frame that button is pressed */ +#define INPUT_PRESSED(btn) ((joy & ~last_joy) & (btn)) + +/* TRUE on first frame that A button is pressed */ +#define INPUT_A_PRESSED ((joy & ~last_joy) & J_A) + +/* TRUE on first frame that B button is pressed */ +#define INPUT_B_PRESSED ((joy & ~last_joy) & J_B) + +/* TRUE on first frame that A OR B button is pressed */ +#define INPUT_A_OR_B_PRESSED ((joy & ~last_joy) & (J_A | J_B)) + +/* TRUE on first frame that Start button is pressed */ +#define INPUT_START_PRESSED ((joy & ~last_joy) & J_START) + +/* TRUE on first frame that Select button is pressed */ +#define INPUT_SELECT_PRESSED ((joy & ~last_joy) & J_SELECT) + +#define INPUT_SOFT_RESTART (joy == (J_A | J_B | J_START | J_SELECT)) + +/* resets the input */ +#define INPUT_RESET (last_joy = joy) + +#define NUM_INPUTS 8 + +#define INPUT_DPAD (J_UP | J_DOWN | J_LEFT | J_RIGHT) + + +extern joypads_t joypads; +extern UBYTE frame_joy; +extern UBYTE last_joy; +extern UBYTE recent_joy; + +void input_init(void) BANKED; +void input_update(void) NONBANKED; + +#endif diff --git a/gb_studio_project/build/src/include/interrupts.h b/gb_studio_project/build/src/include/interrupts.h new file mode 100644 index 0000000..68095e6 --- /dev/null +++ b/gb_studio_project/build/src/include/interrupts.h @@ -0,0 +1,14 @@ +#ifndef INTERRUPTS_H_INCLUDE +#define INTERRUPTS_H_INCLUDE + +extern UINT8 hide_sprites; +extern UBYTE show_actors_on_overlay; + +void simple_LCD_isr(void); +void fullscreen_LCD_isr(void); + +void VBL_isr(void); + +void remove_LCD_ISRs(void) BANKED; + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/linked_list.h b/gb_studio_project/build/src/include/linked_list.h new file mode 100644 index 0000000..177e628 --- /dev/null +++ b/gb_studio_project/build/src/include/linked_list.h @@ -0,0 +1,94 @@ +#ifndef LINKED_LIST_H +#define LINKED_LIST_H + +// #define STRICT_LINKED_LIST + +#define LL_PUSH_HEAD(head, item) \ + (item)->next = (head); \ + (head) = (item) + +#define LL_REMOVE_ITEM(head, item, prev) \ + if (prev) { \ + (prev)->next = (item)->next; \ + } else { \ + (head) = (item)->next; \ + } + +#define LL_REMOVE_HEAD(head) \ + if (head) { \ + (head) = (head)->next; \ + } + +#define DL_PUSH_HEAD(head, item) \ + (item)->prev = 0; \ + (item)->next = (head); \ + if (head) { \ + (head)->prev = (item); \ + } \ + (head) = (item) + +#ifdef STRICT_LINKED_LIST +#define DL_REMOVE_ITEM(head, item) \ + if (head) { \ + /* Hook next to prev */ \ + if ((item)->next && (item)->prev) \ + { \ + /* Middle of list */ \ + (item)->prev->next = (item)->next; \ + (item)->next->prev = (item)->prev; \ + } \ + else if ((item)->next) \ + { \ + /* Start of list */ \ + (item)->next->prev = 0; \ + (head) = (item)->next; \ + } \ + else if ((item)->prev) \ + { \ + /* End of list */ \ + (item)->prev->next = 0; \ + } \ + else \ + { \ + (head) = 0; \ + } \ + (item)->next = (item)->prev = 0; \ + } +#else +#define DL_REMOVE_ITEM(head, item) \ + /* Hook next to prev */ \ + if ((item)->next && (item)->prev) \ + { \ + /* Middle of list */ \ + (item)->prev->next = (item)->next; \ + (item)->next->prev = (item)->prev; \ + } \ + else if ((item)->next) \ + { \ + /* Start of list */ \ + (item)->next->prev = 0; \ + (head) = (item)->next; \ + } \ + else if ((item)->prev) \ + { \ + /* End of list */ \ + (item)->prev->next = 0; \ + } \ + else \ + { \ + (head) = 0; \ + } +#endif + +#define DL_CONTAINS(head_mut, item, found) \ + (found) = 0; \ + while (head_mut) { \ + if ((head_mut) == (item)) \ + { \ + (found) = 1; \ + break; \ + } \ + (head_mut) = (head_mut)->next; \ + } + +#endif diff --git a/gb_studio_project/build/src/include/load_save.h b/gb_studio_project/build/src/include/load_save.h new file mode 100644 index 0000000..caebdb0 --- /dev/null +++ b/gb_studio_project/build/src/include/load_save.h @@ -0,0 +1,26 @@ +#ifndef _LOADSAVE_H_INCLUDE +#define _LOADSAVE_H_INCLUDE + +#include + +#define SRAM_BANKS_TO_SAVE 3 +#define SRAM_BANK_SIZE 0x2000 + +BANKREF_EXTERN(VM_LOAD_SAVE) + +// initializes saving capabilities +void data_init(void) BANKED; + +// save state to SRAM +void data_save(UBYTE slot) BANKED; + +// load state from SRAM +UBYTE data_load(UBYTE slot) BANKED; + +// clear state in SRAM +void data_clear(UBYTE slot) BANKED; + +// peek count VM variables from idx into dest +UBYTE data_peek(UBYTE slot, UINT16 idx, UWORD count, UINT16 * dest) BANKED; + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/macro.h b/gb_studio_project/build/src/include/macro.h new file mode 100644 index 0000000..43c79e8 --- /dev/null +++ b/gb_studio_project/build/src/include/macro.h @@ -0,0 +1,10 @@ +#ifndef MACRO_H +#define MACRO_H + +// Bit Flags Helpers +#define SET_FLAG(n, f) ((n) |= (f)) +#define CLR_FLAG(n, f) ((n) &= ~(f)) +#define TGL_FLAG(n, f) ((n) ^= (f)) +#define CHK_FLAG(n, f) ((n) & (f)) + +#endif diff --git a/gb_studio_project/build/src/include/macro.i b/gb_studio_project/build/src/include/macro.i new file mode 100644 index 0000000..52c40e1 --- /dev/null +++ b/gb_studio_project/build/src/include/macro.i @@ -0,0 +1,17 @@ +.macro FAR_PTR SYM + .db b'SYM + .dw SYM +.endm +.macro IMPORT_FAR_PTR SYM + .globl SYM, b'SYM + FAR_PTR SYM +.endm + +.macro FAR_PTR_DATA SYM + .db ___bank'SYM + .dw SYM +.endm +.macro IMPORT_FAR_PTR_DATA SYM + .globl SYM, ___bank'SYM + FAR_PTR_DATA SYM +.endm diff --git a/gb_studio_project/build/src/include/math.h b/gb_studio_project/build/src/include/math.h new file mode 100644 index 0000000..7c64e25 --- /dev/null +++ b/gb_studio_project/build/src/include/math.h @@ -0,0 +1,121 @@ +#ifndef MATH_H +#define MATH_H + +#include + +#include +#include + +#include "asm/types.h" + +#define IS_NEG(a) ((uint8_t)(a)&0x80) + +#define U_LESS_THAN(A, B) ((A) - (B)&0x8000u) +#define UBYTE_LESS_THAN(A, B) ((A) - (B)&0x80u) + +#define U_GT_THAN(A, B) ((B) - (A)&0x8000u) +#define UBYTE_GT_THAN(A, B) ((B) - (A)&0x80u) + +#define DISTANCE(A, B) (U_LESS_THAN(A, B) ? (B - A) : (A - B)) + +#define MIN(a, b) (((a) < (b)) ? (a) : (b)) +#define MAX(a, b) (((a) > (b)) ? (a) : (b)) +#define CLAMP(a, min, max) (((a) < (min)) ? (min) : (((a) > (max)) ? (max) : (a))) + +#define SET_BIT(N, POS) N |= 1 << POS +#define UNSET_BIT(N, POS) N &= ~(1 << POS) +#define GET_BIT(N, POS) ((N & (1 << POS)) != 0) + +#define SET_BIT_MASK(N, MASK) N |= MASK +#define UNSET_BIT_MASK(N, MASK) N &= ~MASK +#define GET_BIT_MASK(N, MASK) (N & MASK) + +#define MOD_2(a) ((a)&1) +#define MOD_4(a) ((a)&3) +#define MOD_8(a) ((a)&7) +#define MOD_16(a) ((a)&15) +#define MOD_32(a) ((a)&31) +#define MOD_64(a) ((a)&63) +#define MOD_128(a) ((a)&127) + +#define MUL_16(a) ((a) << 4) +#define MUL_8(a) ((a) << 3) +#define MUL_4(a) ((a) << 2) +#define MUL_2(a) ((a) << 1) + +#define DIV_16(a) ((a) >> 4) +#define DIV_8(a) ((a) >> 3) +#define DIV_4(a) ((a) >> 2) +#define DIV_2(a) ((a) >> 1) + +#define SIN(a) (sine_wave[(uint8_t)(a)]) +#define COS(a) (sine_wave[(uint8_t)((uint8_t)(a) + 64u)]) + +#define ANGLE_UP 0 +#define ANGLE_RIGHT 64 +#define ANGLE_DOWN 128 +#define ANGLE_LEFT 192 + +#define ANGLE_0DEG 0 +#define ANGLE_45DEG 32 +#define ANGLE_90DEG 64 +#define ANGLE_135DEG 96 +#define ANGLE_180DEG 128 +#define ANGLE_225DEG 160 +#define ANGLE_270DEG 192 +#define ANGLE_315DEG 224 + +#define FLIPPED_DIR(dir) MOD_4((dir) + 2) +#define IS_DIR_HORIZONTAL(dir) ((dir)&01) +#define IS_DIR_VERTICAL(dir) (!((dir)&01)) + +#define N_DIRECTIONS 4 + +typedef struct upoint16_t { + uint16_t x, y; +} upoint16_t; + +typedef struct point16_t { + int16_t x, y; +} point16_t; + +typedef struct point8_t { + int8_t x, y; +} point8_t; + +typedef enum { + DIR_DOWN = 0, + DIR_RIGHT, + DIR_UP, + DIR_LEFT, + DIR_NONE +} direction_e; + +extern const int8_t sine_wave[256]; +extern const point8_t dir_lookup[4]; +extern const uint8_t dir_angle_lookup[4]; + +inline void point_translate_dir(point16_t *point, direction_e dir, uint8_t speed) { + point->x += (int16_t)(dir_lookup[dir].x * speed); + point->y += (int16_t)(dir_lookup[dir].y * speed); +} + +inline void point_translate_dir_word(point16_t *point, direction_e dir, uint16_t speed) { + point->x += (int16_t)(dir_lookup[dir].x * speed); + point->y += (int16_t)(dir_lookup[dir].y * speed); +} + +inline void point_translate_angle(point16_t *point, uint8_t angle, uint8_t speed) { + point->x += ((SIN(angle) * (speed)) >> 7); + point->y -= ((COS(angle) * (speed)) >> 7); +} + +inline void point_translate_angle_to_delta(point16_t *point, uint8_t angle, uint8_t speed) { + point->x = ((SIN(angle) * (speed)) >> 7); + point->y = ((COS(angle) * (speed)) >> 7); +} + +uint8_t isqrt(uint16_t x) NONBANKED; +uint8_t atan2(int16_t y, int16_t x) BANKED; + +#endif diff --git a/gb_studio_project/build/src/include/music_manager.h b/gb_studio_project/build/src/include/music_manager.h new file mode 100644 index 0000000..97bd32f --- /dev/null +++ b/gb_studio_project/build/src/include/music_manager.h @@ -0,0 +1,126 @@ +#ifndef __MUSIC_MANAGER_H_INCLUDE__ +#define __MUSIC_MANAGER_H_INCLUDE__ + +#include "events.h" +#include "sfx_player.h" + +#ifdef GBT_PLAYER +#undef HUGE_TRACKER +#define TRACK_T uint8_t +#include "gbt_player.h" + +#define driver_reset_wave gbt_reset_ch3_instrument +#define driver_update gbt_update + +inline void driver_init(uint8_t bank, const TRACK_T * track, uint8_t loop) { + gbt_play(track, bank, 7); + gbt_loop(loop); +} + +inline uint8_t driver_set_mute_mask(uint8_t mute_mask) { + gbt_enable_channels(~mute_mask & 0x0f); + return mute_mask; +} + +inline void music_setpos(UBYTE pattern, UBYTE row) { + pattern, row; +} +#endif + +#ifdef HUGE_TRACKER +#undef GBT_PLAYER +#define TRACK_T hUGESong_t +#include "hUGEDriver.h" + +#define driver_reset_wave hUGE_reset_wave +#define driver_update hUGE_dosound + +inline void driver_init(uint8_t bank, const TRACK_T * track, uint8_t loop) { + bank; loop; + hUGE_init(track); +} + +inline uint8_t driver_set_mute_mask(uint8_t mute_mask) { + return (hUGE_mute_mask = mute_mask); +} + +inline void music_setpos(UBYTE pattern, UBYTE row) { + row; + hUGE_set_position(pattern); +} +#endif + +extern script_event_t music_events[4]; + +#define MUSIC_SFX_PRIORITY_MINIMAL 0 +#define MUSIC_SFX_PRIORITY_NORMAL 4 +#define MUSIC_SFX_PRIORITY_HIGH 8 + +#define MUSIC_STOP_BANK SFX_STOP_BANK +//#define FORCE_CUT_SFX // don't cut by default + +extern volatile uint8_t music_current_track_bank; +extern uint8_t music_mute_mask; +extern uint8_t music_effective_mute; +extern const TRACK_T * music_next_track; +extern const TRACK_T * music_current_track; +extern uint8_t music_global_mute_mask; +extern uint8_t music_sfx_priority; + +void music_init_driver(void) BANKED; + +void music_init_events(uint8_t preserve) BANKED; +void music_events_update(void) NONBANKED; +uint8_t music_events_poll(void) BANKED; + +inline void music_sound_cut(void) { + sfx_sound_cut(); +} + +#define MUSIC_CH_1 SFX_CH_1 +#define MUSIC_CH_2 SFX_CH_2 +#define MUSIC_CH_3 SFX_CH_3 +#define MUSIC_CH_4 SFX_CH_4 + +inline uint8_t music_sound_cut_mask(uint8_t mask) { + return sfx_sound_cut_mask(mask); +} + +void music_play_isr(void); + +inline void music_load(uint8_t bank, const TRACK_T * data) { + if ((bank == music_current_track_bank) && (data == music_current_track)) return; + music_current_track_bank = MUSIC_STOP_BANK, music_current_track = data, music_next_track = data; music_current_track_bank = bank; +} + +void music_pause(uint8_t pause); + +inline void music_stop(void) { + music_current_track_bank = MUSIC_STOP_BANK, music_sound_cut(); +} + +inline void music_setup_timer(void) { + TMA_REG = ((_cpu == CGB_TYPE) && (*(uint8_t *)0x0143 & 0x80)) ? 0x80u : 0xC0u; + TAC_REG = 0x07u; +} + +inline void music_init(void) { + music_current_track_bank = MUSIC_STOP_BANK; + sfx_reset_sample(); + sfx_sound_init(); + music_sound_cut(); +} + +#define MUTE_MASK_NONE 0 +#define MUTE_MASK_WAVE MUSIC_CH_3 + +inline void music_play_sfx(uint8_t bank, const uint8_t * sample, uint8_t mute_mask, uint8_t priority) { + if (priority < music_sfx_priority) return; + sfx_play_bank = SFX_STOP_BANK; + music_sfx_priority = priority; + music_sound_cut_mask(music_mute_mask); + music_mute_mask = mute_mask; + sfx_set_sample(bank, sample); +} + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/palette.h b/gb_studio_project/build/src/include/palette.h new file mode 100644 index 0000000..0860d6a --- /dev/null +++ b/gb_studio_project/build/src/include/palette.h @@ -0,0 +1,26 @@ +#ifndef PALETTE_H +#define PALETTE_H + +#include + +#include "compat.h" +#include "gbs_types.h" + +extern UBYTE DMG_palette[3]; +extern palette_entry_t SprPalette[8]; +extern palette_entry_t BkgPalette[8]; + +void palette_init(void) BANKED; + +#ifdef CGB +void CGBZeroPalette(UBYTE reg) OLDCALL BANKED; +#endif + +#ifdef SGB +#define SGB_PALETTES_NONE 0 +#define SGB_PALETTES_01 1 +#define SGB_PALETTES_23 2 +void SGBTransferPalettes(UBYTE palettes) BANKED; +#endif + +#endif diff --git a/gb_studio_project/build/src/include/parallax.h b/gb_studio_project/build/src/include/parallax.h new file mode 100644 index 0000000..3901595 --- /dev/null +++ b/gb_studio_project/build/src/include/parallax.h @@ -0,0 +1,26 @@ +#ifndef PARALLAX_H_INCLUDE +#define PARALLAX_H_INCLUDE + +#include + +#include "compat.h" + +#define PARALLAX_MAX_HEIGHT 20 +#define PARALLAX_STEP(start, end, shift) {0, (end)?(((end) << 3) - 1):0, (shift), (start), (end)?((end)-(start)):(PARALLAX_MAX_HEIGHT-(start)), 0} + +typedef struct parallax_row_t { + UBYTE scx; // x scroll position for current slice + UBYTE next_y; // y position of next LYC + INT8 shift; // shift of scroll position within the world + UBYTE start_tile; + UBYTE tile_height; + UBYTE shadow_scx; +} parallax_row_t; + +extern parallax_row_t parallax_rows[3]; +extern parallax_row_t * parallax_row; + +void parallax_init(void) BANKED; +void parallax_LCD_isr(void) NONBANKED; + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/projectiles.h b/gb_studio_project/build/src/include/projectiles.h new file mode 100644 index 0000000..036cdca --- /dev/null +++ b/gb_studio_project/build/src/include/projectiles.h @@ -0,0 +1,24 @@ +#ifndef PROJECTILES_H +#define PROJECTILES_H + +#include + +#include "math.h" +#include "collision.h" +#include "gbs_types.h" + +#define MAX_PROJECTILES 5 +#define MAX_PROJECTILE_DEFS 5 + +extern projectile_def_t projectile_defs[MAX_PROJECTILES]; + +void projectiles_init(void) BANKED; +void projectiles_update(void) NONBANKED; +void projectiles_render(void) NONBANKED; + +#define PROJECTILE_ANIM_NOLOOP 0x01 +#define PROJECTILE_STRONG 0x02 + +void projectile_launch(UBYTE index, point16_t *pos, UBYTE angle, UBYTE flags) BANKED; + +#endif diff --git a/gb_studio_project/build/src/include/rtc.h b/gb_studio_project/build/src/include/rtc.h new file mode 100644 index 0000000..7f104a9 --- /dev/null +++ b/gb_studio_project/build/src/include/rtc.h @@ -0,0 +1,51 @@ +#ifndef _RTC_H_INCLUDE +#define _RTC_H_INCLUDE + +#include + +#include "system.h" + +volatile UBYTE AT(0x4000) RTC_SELECT_REG; +volatile UBYTE AT(0x6000) RTC_LATCH_REG; +volatile UBYTE AT(0xA000) RTC_VALUE_REG; + +#define RTC_TIMER_STOP 0b01000000 + +typedef enum { + RTC_VALUE_SEC = 0x08, + RTC_VALUE_MIN, + RTC_VALUE_HOUR, + RTC_VALUE_DAY +} rtc_dateparts_e; + +#define RTC_VALUE_FLAGS 0x0c + +inline void RTC_SELECT(UBYTE what) { SWITCH_RAM_BANK(what, RAM_BANKS_ONLY); } +inline void RTC_LATCH(void) { RTC_LATCH_REG = 0; RTC_LATCH_REG = 1; } + +inline UWORD RTC_GET(const rtc_dateparts_e part) { + UWORD v; + RTC_SELECT(part); + v = RTC_VALUE_REG; + if (part == RTC_VALUE_DAY) { + RTC_SELECT(RTC_VALUE_FLAGS); + if (RTC_VALUE_REG & 0x01) v |= 0x0100u; + } + return v; +} + +inline void RTC_SET(const rtc_dateparts_e part, const UWORD v) { + RTC_SELECT(part); + RTC_VALUE_REG = v; + if (part == RTC_VALUE_DAY) { + RTC_SELECT(RTC_VALUE_FLAGS); + RTC_VALUE_REG = (RTC_VALUE_REG & 0x0e) | (UBYTE)((v >> 8) & 0x01); + } +} + +inline void RTC_START(const UBYTE start) { + RTC_SELECT(RTC_VALUE_FLAGS); + if (start) RTC_VALUE_REG &= ~RTC_TIMER_STOP; else RTC_VALUE_REG |= RTC_TIMER_STOP; +} + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/scroll.h b/gb_studio_project/build/src/include/scroll.h new file mode 100644 index 0000000..e674b94 --- /dev/null +++ b/gb_studio_project/build/src/include/scroll.h @@ -0,0 +1,80 @@ +#ifndef SCROLL_H +#define SCROLL_H + +#include + +#include "compat.h" +#include "parallax.h" + +#define SCROLL_BANK 1 +#define SCREEN_TILES_W 20 // 160 >> 3 = 20 +#define SCREEN_TILES_H 18 // 144 >> 3 = 18 +#define SCREEN_PAD_LEFT 1 +#define SCREEN_PAD_RIGHT 2 +#define SCREEN_PAD_TOP 1 +#define SCREEN_PAD_BOTTOM 2 +#define SCREEN_TILE_REFRES_W (SCREEN_TILES_W + SCREEN_PAD_LEFT + SCREEN_PAD_RIGHT) +#define SCREEN_TILE_REFRES_H (SCREEN_TILES_H + SCREEN_PAD_TOP + SCREEN_PAD_BOTTOM) +#define PENDING_BATCH_SIZE 7 + +extern INT16 scroll_x; +extern INT16 scroll_y; +extern INT16 draw_scroll_x; +extern INT16 draw_scroll_y; +extern UINT16 scroll_x_max; +extern UINT16 scroll_y_max; +extern BYTE scroll_offset_x; +extern BYTE scroll_offset_y; +extern UINT8 pending_w_i; +extern UINT8 pending_h_i; + +/** + * Resets scroll settings on engine start + */ +void scroll_reset(void) BANKED; + +/** + * Initialise scroll variables, call on scene load + */ +void scroll_init(void) BANKED; + +/** + * Update scroll position and load in any newly visible background tiles and actors + */ +void scroll_update(void) BANKED; + +/** + * Resets scroll and update the whole screen + */ +void scroll_repaint(void) BANKED; + +/** + * Get base address of window map + */ +UINT8 * GetWinAddr(void) OLDCALL PRESERVES_REGS(b, c, h, l); + +/** + * Get base address of background map + */ +UINT8 * GetBkgAddr(void) OLDCALL PRESERVES_REGS(b, c, h, l); + +/** + * Scrolls rectangle area of VRAM filemap by base address 1 row up + * @param base_addr address of top-left corner + * @param w width of the area + * @param h height of the area + * @param fill tile id to fill the bottom row + */ +void scroll_rect(UBYTE * base_addr, UBYTE w, UBYTE h, UBYTE fill) OLDCALL BANKED PRESERVES_REGS(b, c); + +/** + * copies scroll position variables into double buffered copies + * which are used for actual scrolling next frame + */ +inline void scroll_shadow_update(void) { + parallax_rows[0].scx = parallax_rows[0].shadow_scx; + parallax_rows[1].scx = parallax_rows[1].shadow_scx; + parallax_rows[2].scx = parallax_rows[2].shadow_scx; +} + +#endif diff --git a/gb_studio_project/build/src/include/sfx_player.h b/gb_studio_project/build/src/include/sfx_player.h new file mode 100644 index 0000000..23e1fc0 --- /dev/null +++ b/gb_studio_project/build/src/include/sfx_player.h @@ -0,0 +1,51 @@ +#ifndef __SFX_PLAYER_H_INCLUDE__ +#define __SFX_PLAYER_H_INCLUDE__ + +#include +#include + +#define SFX_STOP_BANK 0xffu +#define SFX_MUTE_MASK(VARNAME) ( (uint8_t) & __mute_mask_ ## VARNAME ) + +extern volatile uint8_t sfx_play_bank; +extern const uint8_t * sfx_play_sample; +extern uint8_t sfx_frame_skip; + +#define SFX_CH_RETRIGGER 0b11000000 +#define SFX_CH_ENABLE 0b10000000 + +inline void sfx_sound_init(void) { + NR52_REG = SFX_CH_ENABLE, NR51_REG = 0xFF, NR50_REG = 0x77; // enable sound +} + +inline void sfx_sound_cut(void) { + NR12_REG = NR22_REG = NR32_REG = NR42_REG = 0; + NR14_REG = NR24_REG = NR44_REG = SFX_CH_RETRIGGER; + NR51_REG = 0xFF; +} + +#define SFX_CH_1 1 +#define SFX_CH_2 2 +#define SFX_CH_3 4 +#define SFX_CH_4 8 + +inline uint8_t sfx_sound_cut_mask(uint8_t mask) { + if (mask & SFX_CH_1) NR12_REG = 0, NR14_REG = SFX_CH_RETRIGGER; + if (mask & SFX_CH_2) NR22_REG = 0, NR24_REG = SFX_CH_RETRIGGER; + if (mask & SFX_CH_3) NR32_REG = 0; + if (mask & SFX_CH_4) NR42_REG = 0, NR44_REG = SFX_CH_RETRIGGER; + NR51_REG = 0xFF; + return mask; +} + +inline void sfx_reset_sample(void) { + sfx_play_bank = SFX_STOP_BANK, sfx_play_sample = NULL; +} + +inline void sfx_set_sample(uint8_t bank, const uint8_t * sample) { + sfx_play_bank = SFX_STOP_BANK, sfx_frame_skip = 0, sfx_play_sample = sample, sfx_play_bank = bank; +} + +uint8_t sfx_play_isr(void); + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/sgb_border.h b/gb_studio_project/build/src/include/sgb_border.h new file mode 100644 index 0000000..1d1595c --- /dev/null +++ b/gb_studio_project/build/src/include/sgb_border.h @@ -0,0 +1,14 @@ +#ifndef __SGBBORDER_H_INCLUDE +#define __SGBBORDER_H_INCLUDE + +#include + +#define SNES_RGB(R,G,B) (UINT16)((B) << 10 | (G) << 5 | (R)) + +/** sets SGB border */ + +void set_sgb_border(unsigned char * tiledata, size_t tiledata_size, UBYTE tiledata_bank, + unsigned char * tilemap, size_t tilemap_size, UBYTE tilemap_bank, + unsigned char * palette, size_t palette_size, UBYTE palette_bank) BANKED; + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/shadow.h b/gb_studio_project/build/src/include/shadow.h new file mode 100644 index 0000000..05f337c --- /dev/null +++ b/gb_studio_project/build/src/include/shadow.h @@ -0,0 +1,21 @@ +#ifndef _SHADOW_H_INCLUDE +#define _SHADOW_H_INCLUDE + +#include "actor.h" + +extern volatile OAM_item_t shadow_OAM2[40]; + +inline void toggle_shadow_OAM(void) { + if (_shadow_OAM_base == (UBYTE)((UWORD)&shadow_OAM >> 8)) { + __render_shadow_OAM = (UBYTE)((UWORD)&shadow_OAM2 >> 8); + } else { + __render_shadow_OAM = (UBYTE)((UWORD)&shadow_OAM >> 8); + } + allocated_hardware_sprites = 0; +} +inline void activate_shadow_OAM(void) { + hide_sprites_range(allocated_hardware_sprites, MAX_HARDWARE_SPRITES); + _shadow_OAM_base = __render_shadow_OAM; +} + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/sio.h b/gb_studio_project/build/src/include/sio.h new file mode 100644 index 0000000..950ab10 --- /dev/null +++ b/gb_studio_project/build/src/include/sio.h @@ -0,0 +1,48 @@ +#ifndef _SIO_H_INCLUDE +#define _SIO_H_INCLUDE + +#include + +#include "compat.h" + +#define LINK_MAX_PACKET_LENGTH 32 + +#define LINK_MODE_NONE 0 +#define LINK_MODE_MASTER 1 +#define LINK_MODE_SLAVE 2 + +extern volatile UBYTE SIO_status; +void SIO_send_byte(UBYTE data) OLDCALL PRESERVES_REGS(b, c, d, e, h, l); +void SIO_receive(void) PRESERVES_REGS(b, c, d, e, h, l); + +extern UBYTE link_operation_mode; + +extern UBYTE link_packet[]; +extern UBYTE link_byte_sent; + +extern UBYTE link_packet_len; +extern UBYTE * link_packet_ptr; +extern UBYTE link_packet_received; + +extern UBYTE link_packet_snd_len; +extern const UBYTE * link_packet_snd_ptr; +extern UBYTE link_packet_sent; + +void SIO_init(void) BANKED; + +inline void SIO_set_mode(UBYTE mode) { + link_operation_mode = mode; + if (mode == LINK_MODE_SLAVE) { + SIO_receive(); + } +} + +inline void SIO_send_async(UBYTE len, const UBYTE * data) { + link_packet_snd_len = len; + link_packet_snd_ptr = data; + link_byte_sent = FALSE; + SIO_send_byte(len); + link_packet_sent = (link_packet_snd_len == 0); +} + +#endif diff --git a/gb_studio_project/build/src/include/states/logo.h b/gb_studio_project/build/src/include/states/logo.h new file mode 100644 index 0000000..7cd13d4 --- /dev/null +++ b/gb_studio_project/build/src/include/states/logo.h @@ -0,0 +1,9 @@ +#ifndef STATE_LOGO_H +#define STATE_LOGO_H + +#include + +void logo_init(void) BANKED; +void logo_update(void) BANKED; + +#endif diff --git a/gb_studio_project/build/src/include/states/topdown.h b/gb_studio_project/build/src/include/states/topdown.h new file mode 100644 index 0000000..dce7b8a --- /dev/null +++ b/gb_studio_project/build/src/include/states/topdown.h @@ -0,0 +1,11 @@ +#ifndef STATE_TOP_DOWN_H +#define STATE_TOP_DOWN_H + +#include + +void topdown_init(void) BANKED; +void topdown_update(void) BANKED; + +extern UBYTE topdown_grid; + +#endif diff --git a/gb_studio_project/build/src/include/states_caller.h b/gb_studio_project/build/src/include/states_caller.h new file mode 100644 index 0000000..dd34571 --- /dev/null +++ b/gb_studio_project/build/src/include/states_caller.h @@ -0,0 +1,9 @@ +#ifndef __STATESCALLER_H_INCLUDE +#define __STATESCALLER_H_INCLUDE + +#include + +void state_init(void); +void state_update(void); + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/system.h b/gb_studio_project/build/src/include/system.h new file mode 100644 index 0000000..c2cd704 --- /dev/null +++ b/gb_studio_project/build/src/include/system.h @@ -0,0 +1,18 @@ +#ifndef _SYSTEM_H_INCLUDE +#define _SYSTEM_H_INCLUDE + +#include + +// System fields +extern UBYTE _is_CGB; +extern UBYTE _is_SGB; + +// SRAM bank switching with saving of state +extern volatile UBYTE _current_ram_bank; + +#define RAM_BANKS_ONLY 0x0fu +#define RAM_BANKS_AND_FLAGS 0xffu + +inline void SWITCH_RAM_BANK(UBYTE bank, UBYTE mask) { SWITCH_RAM(_current_ram_bank = ((_current_ram_bank & ~mask) | (bank & mask))); } + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/trigger.h b/gb_studio_project/build/src/include/trigger.h new file mode 100644 index 0000000..204a260 --- /dev/null +++ b/gb_studio_project/build/src/include/trigger.h @@ -0,0 +1,51 @@ +#ifndef TRIGGER_H +#define TRIGGER_H + +#include + +#include "gbs_types.h" +#include "math.h" + +#define MAX_TRIGGERS 31 +#define MAX_ACTIVE_TRIGGERS 11 +#define NO_TRIGGER_COLLISON 0xFF + +extern trigger_t triggers[MAX_TRIGGERS]; +extern UBYTE triggers_len; + +/** + * Resets trigger collision flags on scene start + */ +void trigger_reset(void) BANKED; + +/** + * Find trigger at tile {tx,ty} + * + * @param tx Left tile + * @param ty Top tile + * @return tile index or NO_TRIGGER_COLLISON if not found + */ +UBYTE trigger_at_tile(UBYTE tx_a, UBYTE ty_a) BANKED; + +/** + * Run script for trigger specified trigger + * + * @param i Trigger index + */ +void trigger_interact(UBYTE i) BANKED; + +/** + * Run script for trigger at tile {tx,ty} if this tile was the + * most recently activated trigger tile don't reactivate + * (i.e. player must move to another tile first) + * + * @param tx Left tile + * @param ty Top tile + * @param force Force trigger to activate without changing tile + */ +UBYTE trigger_activate_at(UBYTE tx, UBYTE ty, UBYTE force) BANKED; + +UBYTE trigger_activate_at_intersection(bounding_box_t *bb, point16_t *offset, UBYTE force) BANKED; +UBYTE trigger_at_intersection(bounding_box_t *bb, point16_t *offset) BANKED; + +#endif diff --git a/gb_studio_project/build/src/include/ui.h b/gb_studio_project/build/src/include/ui.h new file mode 100644 index 0000000..ab3ef66 --- /dev/null +++ b/gb_studio_project/build/src/include/ui.h @@ -0,0 +1,116 @@ +#ifndef UI_H +#define UI_H + +#include + +#include "gbs_types.h" +#include "bankdata.h" + +#define MENU_CANCEL_LAST 1 +#define MENU_CANCEL_B 2 +#define MENU_SET_START 4 + +#define TEXT_BUFFER_START 0xCCu +#define TEXT_BUFFER_START_BANK1 0xC0u +#define TEXT_BUFFER_LEN ((UBYTE)(0x100 - TEXT_BUFFER_START)) +#define TEXT_BKG_FILL_W 0x00u +#define TEXT_BKG_FILL_B 0xffu +#define TEXT_MAX_LENGTH 255 + +#define UI_DEFAULT_PALETTE 7 + +#define MENU_OPEN_Y 112 +#define WIN_LEFT_X 7 +#define MENU_CLOSED_Y (UBYTE)(MAXWNDPOSY + 1U) +#define MENU_LAYOUT_INITIAL_X 88 +#define MENU_CANCEL_ON_LAST_OPTION 0x01U +#define MENU_CANCEL_ON_B_PRESSED 0x02U + +#define ui_bkg_tile 0x07u +#define ui_white_tile 0xC9u +#define ui_black_tile 0xCAu + +#define ui_cursor_tile 0xCBu +#define ui_bg_tile 0xC4u + +extern UBYTE win_pos_x, win_dest_pos_x; +extern UBYTE win_pos_y, win_dest_pos_y; +extern UBYTE win_speed; + +extern UBYTE text_drawn; + +#define TEXT_OPT_DEFAULT 0 +#define TEXT_OPT_PRESERVE_POS 1 + +extern UBYTE text_options; +extern UBYTE text_in_speed; +extern UBYTE text_out_speed; +extern UBYTE text_draw_speed; +extern UBYTE text_ff_joypad; +extern UBYTE text_ff; +extern UBYTE text_bkg_fill; + +extern unsigned char ui_text_data[TEXT_MAX_LENGTH]; + +#define UI_PRINT_LEFTTORIGHT 0 +#define UI_PRINT_RIGHTTOLEFT 1 + +extern UBYTE vwf_direction; +extern font_desc_t vwf_current_font_desc; +extern UBYTE vwf_current_font_bank; +extern UBYTE vwf_current_font_idx; +extern UBYTE vwf_tile_data[16 * 2]; + +extern UBYTE * text_render_base_addr; + +extern UBYTE * text_scroll_addr; +extern UBYTE text_scroll_width, text_scroll_height; +extern UBYTE text_scroll_fill; + +extern UBYTE text_sound_mask; +extern UBYTE text_sound_bank; +extern const UBYTE * text_sound_data; + +extern const UBYTE ui_time_masks[]; + +#ifdef CGB +extern UBYTE overlay_priority; +extern UBYTE text_palette; +#endif + +void ui_init(void) BANKED; +void ui_update(void) NONBANKED; // critical path, NONBANKED for speed + +void ui_load_tiles(void) BANKED; + +void ui_set_start_tile(UBYTE start_tile, UBYTE start_tile_bank) BANKED; + +#define UI_WAIT_WINDOW 1 +#define UI_WAIT_TEXT 2 +#define UI_WAIT_BTN_A 4 +#define UI_WAIT_BTN_B 8 +#define UI_WAIT_BTN_ANY 16 + +#define UI_DRAW_FRAME 1 +#define UI_AUTOSCROLL 2 + +#define UI_IN_SPEED -1 +#define UI_OUT_SPEED -2 +#define UI_SPEED_INSTANT -3 + +void ui_run_modal(UBYTE wait_flags) BANKED; // process UI until closed + +inline void ui_set_pos(UBYTE x, UBYTE y) { + win_pos_y = win_dest_pos_y = y; + win_pos_x = win_dest_pos_x = x; +} + +inline void ui_move_to(UBYTE x, UBYTE y, BYTE speed) { + win_dest_pos_y = y; + win_dest_pos_x = x; + if (speed == UI_SPEED_INSTANT) win_pos_y = y, win_pos_x = x; else win_speed = speed; +} + +UBYTE ui_run_menu(menu_item_t * start_item, UBYTE bank, UBYTE options, UBYTE count, UBYTE start_index) BANKED; + +#endif diff --git a/gb_studio_project/build/src/include/vm.h b/gb_studio_project/build/src/include/vm.h new file mode 100644 index 0000000..ca9e099 --- /dev/null +++ b/gb_studio_project/build/src/include/vm.h @@ -0,0 +1,183 @@ +#ifndef _VM_H_INCLUDE +#define _VM_H_INCLUDE + +#include +#include + +#ifdef VM_DEBUG_OUTPUT + #include +#endif + +#include "compat.h" + +BANKREF_EXTERN(VM_MAIN) + +#define FN_ARG0 -1 +#define FN_ARG1 -2 +#define FN_ARG2 -3 +#define FN_ARG3 -4 +#define FN_ARG4 -5 +#define FN_ARG5 -6 +#define FN_ARG6 -7 +#define FN_ARG7 -8 + +#if defined(NINTENDO) +#define STEP_FUNC_ATTR +typedef UWORD DUMMY0_t; +typedef UWORD DUMMY1_t; +#elif defined(SEGA) +#define STEP_FUNC_ATTR Z88DK_FASTCALL +typedef UBYTE DUMMY0_t; +typedef UWORD DUMMY1_t; +#endif + +typedef void * SCRIPT_CMD_FN; + +typedef struct SCRIPT_CMD { + SCRIPT_CMD_FN fn; + UBYTE fn_bank; + UBYTE args_len; +} SCRIPT_CMD; + +#define FAR_CALL_EX(addr, seg, typ, ...) (__call_banked_addr=(addr),__call_banked_bank=(seg),((typ)(&__call__banked))(__VA_ARGS__)) +typedef UBYTE (*SCRIPT_UPDATE_FN)(void * THIS, UBYTE start, UWORD * stack_frame) OLDCALL BANKED; + +#define VM_REF_TO_PTR(idx) (void *)(((idx) < 0) ? THIS->stack_ptr + (idx) : script_memory + (idx)) +#define VM_GLOBAL(idx) script_memory[(idx)] + +typedef struct SCRIPT_CTX { + const UBYTE * PC; + UBYTE bank; + // linked list of contexts for the multitasking + struct SCRIPT_CTX * next; + // update function + void * update_fn; + UBYTE update_fn_bank; + // VM stack pointer + UWORD * stack_ptr; + UWORD * base_addr; + // thread control + UBYTE ID; + UWORD * hthread; + UBYTE terminated; + // waitable state + UBYTE waitable; + UBYTE lock_count; + UBYTE flags; +} SCRIPT_CTX; + +#define INSTRUCTION_SIZE 1 + +// maximum number of concurrent running VM threads +#define VM_MAX_CONTEXTS 16 +// stack size of each VM thread +#define VM_CONTEXT_STACK_SIZE 64 +// number of shared variables +#define VM_HEAP_SIZE 768 +// quant size +#define INSTRUCTIONS_PER_QUANT 0x10 +// termination flag +#define SCRIPT_TERMINATED 0x8000 + +// logical operators +#define VM_OP_EQ 1 +#define VM_OP_LT 2 +#define VM_OP_LE 3 +#define VM_OP_GT 4 +#define VM_OP_GE 5 +#define VM_OP_NE 6 +#define VM_OP_AND 7 +#define VM_OP_OR 8 +#define VM_OP_NOT 9 + +// shared context memory +extern UWORD script_memory[VM_HEAP_SIZE + (VM_MAX_CONTEXTS * VM_CONTEXT_STACK_SIZE)]; // maximum stack depth is 16 words + +// contexts for executing scripts +// ScriptRunnerInit(), ExecuteScript(), ScriptRunnerUpdate() manipulate these contexts +extern SCRIPT_CTX CTXS[VM_MAX_CONTEXTS]; +extern SCRIPT_CTX * first_ctx, * free_ctxs; +// context pointers for script_runner +extern SCRIPT_CTX * old_executing_ctx, * executing_ctx; + +// lock state +extern UBYTE vm_lock_state; +// loaded state +extern UBYTE vm_loaded_state; +// exception flag and parameters +extern UBYTE vm_exception_code; +extern UBYTE vm_exception_params_length; +extern UBYTE vm_exception_params_bank; +extern const void * vm_exception_params_offset; + +// script core functions +void vm_push(SCRIPT_CTX * THIS, UWORD value) OLDCALL BANKED; +UWORD vm_pop(SCRIPT_CTX * THIS, UBYTE n) OLDCALL BANKED; +void vm_call(SCRIPT_CTX * THIS, UBYTE * pc) OLDCALL BANKED; +void vm_ret(SCRIPT_CTX * THIS, UBYTE n) OLDCALL BANKED; +void vm_call_far(SCRIPT_CTX * THIS, UBYTE bank, UBYTE * pc) OLDCALL BANKED; +void vm_ret_far(SCRIPT_CTX * THIS, UBYTE n) OLDCALL BANKED; +void vm_loop(SCRIPT_CTX * THIS, INT16 idx, UINT8 * pc, UBYTE n) OLDCALL BANKED; +void vm_switch(DUMMY0_t dummy0, DUMMY1_t dummy1, SCRIPT_CTX * THIS, INT16 idx, UBYTE size, UBYTE n) OLDCALL NONBANKED; +void vm_jump(SCRIPT_CTX * THIS, UBYTE * pc) OLDCALL BANKED; +void vm_invoke(SCRIPT_CTX * THIS, UBYTE bank, UBYTE * fn, UBYTE nparams, INT16 idx) OLDCALL BANKED; +void vm_beginthread(DUMMY0_t dummy0, DUMMY1_t dummy1, SCRIPT_CTX * THIS, UBYTE bank, UBYTE * pc, INT16 idx, UBYTE nargs) OLDCALL NONBANKED; +void vm_if(SCRIPT_CTX * THIS, UBYTE condition, INT16 idxA, INT16 idxB, UBYTE * pc, UBYTE n) OLDCALL BANKED; +void vm_if_const(SCRIPT_CTX * THIS, UBYTE condition, INT16 idxA, INT16 B, UBYTE * pc, UBYTE n) OLDCALL BANKED; +void vm_push_value(SCRIPT_CTX * THIS, INT16 idx) OLDCALL BANKED; +void vm_push_value_ind(SCRIPT_CTX * THIS, INT16 idx) OLDCALL BANKED; +void vm_push_reference(SCRIPT_CTX * THIS, INT16 idx) OLDCALL BANKED; +void vm_reserve(SCRIPT_CTX * THIS, INT8 ofs) OLDCALL BANKED; +void vm_set(SCRIPT_CTX * THIS, INT16 idxA, INT16 idxB) OLDCALL BANKED; +void vm_set_const(SCRIPT_CTX * THIS, INT16 idx, UWORD value) OLDCALL BANKED; +void vm_rpn(DUMMY0_t dummy0, DUMMY1_t dummy1, SCRIPT_CTX * THIS) OLDCALL NONBANKED; +void vm_join(SCRIPT_CTX * THIS, INT16 idx) OLDCALL BANKED; +void vm_terminate(SCRIPT_CTX * THIS, INT16 idx) OLDCALL BANKED; +void vm_idle(SCRIPT_CTX * THIS) OLDCALL BANKED; +void vm_get_tlocal(SCRIPT_CTX * THIS, INT16 idxA, INT16 idxB) OLDCALL BANKED; +void vm_get_far(DUMMY0_t dummy0, DUMMY1_t dummy1, SCRIPT_CTX * THIS, INT16 idxA, UBYTE size, UBYTE bank, UBYTE * addr) OLDCALL NONBANKED; +void vm_init_rng(SCRIPT_CTX * THIS, INT16 idx) OLDCALL BANKED; +void vm_rand(SCRIPT_CTX * THIS, INT16 idx, UINT16 min, UINT16 limit) OLDCALL BANKED; +void vm_lock(SCRIPT_CTX * THIS) OLDCALL BANKED; +void vm_unlock(SCRIPT_CTX * THIS) OLDCALL BANKED; +void vm_raise(SCRIPT_CTX * THIS, UBYTE code, UBYTE size) OLDCALL BANKED; +void vm_set_indirect(SCRIPT_CTX * THIS, INT16 idxA, INT16 idxB) OLDCALL BANKED; +void vm_get_indirect(SCRIPT_CTX * THIS, INT16 idxA, INT16 idxB) OLDCALL BANKED; +void vm_test_terminate(SCRIPT_CTX * THIS, UBYTE flags) OLDCALL BANKED; +void vm_poll_loaded(SCRIPT_CTX * THIS, INT16 idx) OLDCALL BANKED; +void vm_call_native(DUMMY0_t dummy0, DUMMY1_t dummy1, SCRIPT_CTX * THIS, UINT8 bank, const void * ptr) OLDCALL NONBANKED; +void vm_memset(SCRIPT_CTX * THIS, INT16 idx, INT16 value, INT16 count) OLDCALL BANKED; +void vm_memcpy(SCRIPT_CTX * THIS, INT16 idxA, INT16 idxB, INT16 count) OLDCALL BANKED; + +// return zero if script end +// bank with VM code must be active +UBYTE VM_STEP(SCRIPT_CTX * CTX) NAKED NONBANKED STEP_FUNC_ATTR; + +// return TRUE if VM is in locked state +inline UBYTE VM_ISLOCKED(void) { + return (vm_lock_state != 0); +} + +// enable check for pointer in script_execute(), disabled by default +// #define SAFE_SCRIPT_EXECUTE + +// initialize script runner contexts +void script_runner_init(UBYTE reset) BANKED; +// execute a script in the new allocated context +SCRIPT_CTX * script_execute(UBYTE bank, UBYTE * pc, UWORD * handle, UBYTE nargs, ...) BANKED; +// terminate script by ID; returns non zero if no such thread is running +UBYTE script_terminate(UBYTE ID) BANKED; +// detach script from the monitoring variable +UBYTE script_detach_hthread(UBYTE ID) BANKED; + +#define RUNNER_DONE 0 +#define RUNNER_IDLE 1 +#define RUNNER_BUSY 2 +#define RUNNER_EXCEPTION 3 + +#define EXCEPTION_CODE_NONE 0 + +// process all contexts +UBYTE script_runner_update(void) NONBANKED; + +#endif \ No newline at end of file diff --git a/gb_studio_project/build/src/include/vm.i b/gb_studio_project/build/src/include/vm.i new file mode 100644 index 0000000..c18db59 --- /dev/null +++ b/gb_studio_project/build/src/include/vm.i @@ -0,0 +1,1667 @@ +; bytecode +; calling convention +; args: big-endian +; order: left-to-right (leftmost argument pushed first) + +; exception ID's +EXCEPTION_RESET = 1 +EXCEPTION_CHANGE_SCENE = 2 +EXCEPTION_SAVE = 3 +EXCEPTION_LOAD = 4 + +; aliases +.ARG0 = -1 +.ARG1 = -2 +.ARG2 = -3 +.ARG3 = -4 +.ARG4 = -5 +.ARG5 = -6 +.ARG6 = -7 +.ARG7 = -8 +.ARG8 = -9 +.ARG9 = -10 +.ARG10 = -11 +.ARG11 = -12 +.ARG12 = -13 +.ARG13 = -14 +.ARG14 = -15 +.ARG15 = -16 +.ARG16 = -17 + +.PARAM0 = .ARG2 +.PARAM1 = .ARG3 +.PARAM2 = .ARG4 +.PARAM3 = .ARG5 +.PARAM4 = .ARG6 +.PARAM5 = .ARG7 +.PARAM6 = .ARG8 +.PARAM7 = .ARG9 +.PARAM8 = .ARG10 +.PARAM9 = .ARG11 +.PARAM10 = .ARG12 +.PARAM11 = .ARG13 +.PARAM12 = .ARG14 +.PARAM13 = .ARG15 +.PARAM14 = .ARG16 +.PARAM15 = -18 +.PARAM16 = -19 + +; ------------------------------------------------------ +; @section Core + +OP_VM_STOP = 0x00 +;-- Stops execution of context. +.macro VM_STOP + .db OP_VM_STOP +.endm + +OP_VM_PUSH_CONST = 0x01 +;-- Pushes immediate value to the top of the VM stack. +; @param VAL Immediate value to be pushed. +.macro VM_PUSH_CONST VAL + .db OP_VM_PUSH_CONST, #>VAL, #ADDR, #ADDR, #IDX, #LABEL, #IDX, #IDX, #LABEL, #

+
+
+
+
+
+
+
+
Select
+
Start
+
B
+
A
+
+ + + + + \ No newline at end of file diff --git a/gb_studio_project/build/web/js/debugger.js b/gb_studio_project/build/web/js/debugger.js new file mode 100644 index 0000000..bc9a1cb --- /dev/null +++ b/gb_studio_project/build/web/js/debugger.js @@ -0,0 +1,567 @@ +/* global EVENT_NEW_FRAME, EVENT_AUDIO_BUFFER_FULL, EVENT_UNTIL_TICKS, vm, emulator, API */ + +let debug; + +// Consts + +const EVENT_BREAKPOINT = 8; +const EXECUTING_CTX_SYMBOL = "_executing_ctx"; +const FIRST_CTX_SYMBOL = "_first_ctx"; +const SCRIPT_MEMORY_SYMBOL = "_script_memory"; +const CURRENT_SCENE_SYMBOL = "_current_scene"; +const MAX_GLOBAL_VARS = "MAX_GLOBAL_VARS"; + +// Helpers + +const toAddrHex = (value) => + ("0000" + value.toString(16).toUpperCase()).slice(-4); + +const parseDebuggerSymbol = (input) => { + const match = input.match( + /GBVM\$([^$]+)\$([^$]+)\$([^$]+)\$([^$]+)\$([^$]+)\$([^$]+)/ + ); + if (!match) { + return undefined; + } + return { + scriptSymbol: match[1], + scriptEventId: match[2].replace(/_/g, "-"), + sceneId: match[3].replace(/_/g, "-"), + entityType: match[4], + entityId: match[5].replace(/_/g, "-"), + scriptKey: match[6], + }; +}; + +const parseDebuggerEndSymbol = (input) => { + const match = input.match(/GBVM_END\$([^$]+)\$([^$]+)/); + if (!match) { + return undefined; + } + return { + scriptSymbol: match[1], + }; +}; + +// Debugger + +class Debug { + constructor(emulator) { + this.emulator = emulator; + this.module = emulator.module; + this.e = emulator.e; + + this.vramCanvas = document.createElement("canvas"); + this.vramCanvas.width = 256; + this.vramCanvas.height = 256; + + this.memoryMap = {}; + this.globalVariables = {}; + this.variableMap = {}; + this.memoryDict = new Map(); + + this.breakpoints = []; + this.pauseOnScriptChanged = false; + this.pauseOnWatchedVariableChanged = true; + this.pauseOnVMStep = false; + this.currentScriptSymbol = ""; + this.scriptContexts = []; + this.pausedUI = null; + this.prevGlobals = []; + this.watchedVariables = []; + + this.debugRunUntil = (ticks) => { + while (true) { + const event = this.module._emulator_run_until_f64(this.e, ticks); + if (event & EVENT_NEW_FRAME) { + this.emulator.rewind.pushBuffer(); + this.emulator.video.uploadTexture(); + } + if (event & EVENT_BREAKPOINT) { + // Breakpoint hit + const firstCtxAddr = this.memoryMap[FIRST_CTX_SYMBOL]; + const executingCtxAddr = this.memoryMap[EXECUTING_CTX_SYMBOL]; + + const currentCtx = this.readMemInt16(executingCtxAddr); + let firstCtx = debug.readMemInt16(firstCtxAddr); + let scriptContexts = []; + let currentCtxData = undefined; + const prevCtxs = this.scriptContexts; + + while (firstCtx !== 0) { + const ctxAddr = debug.readMemInt16(firstCtx); + const ctxBank = debug.readMem(firstCtx + 2); + const ctxStackPtrAddr = debug.readMemInt16(firstCtx + 8); + const ctxStackBaseAddr = debug.readMemInt16(firstCtx + 10); + + const closestAddr = debug.getClosestAddress(ctxBank, ctxAddr); + const closestSymbol = debug.getSymbol(ctxBank, closestAddr); + const closestGBVMSymbol = parseDebuggerSymbol(closestSymbol); + const prevCtx = prevCtxs[scriptContexts.length]; + + let stackString = ""; + for (var i = ctxStackBaseAddr; i < ctxStackPtrAddr + 4; i += 2) { + stackString += `${i === ctxStackPtrAddr ? "->" : " "}${toAddrHex( + i + )}: ${debug.readMemInt16(i)}\n`; + } + + const ctxData = { + address: ctxAddr, + bank: ctxBank, + current: currentCtx === firstCtx, + closestAddr, + closestSymbol, + closestGBVMSymbol, + prevClosestSymbol: prevCtx?.closestSymbol, + prevClosestGBVMSymbol: prevCtx?.closestGBVMSymbol, + stackString, + }; + + scriptContexts.push(ctxData); + if (ctxData.current) { + currentCtxData = ctxData; + } + + firstCtx = debug.readMemInt16(firstCtx + 3); + } + this.scriptContexts = scriptContexts; + + if (currentCtxData) { + // If pausing on VM Step and current script block changed + if ( + this.pauseOnVMStep && + currentCtxData.closestGBVMSymbol && + currentCtxData.closestGBVMSymbol.scriptEventId !== "end" && + currentCtxData.closestSymbol !== currentCtxData.prevClosestSymbol + ) { + emulator.pause(); + this.pauseOnVMStep = false; + break; + } + // If manual breakpoint is hit + if ( + currentCtxData.closestGBVMSymbol && + currentCtxData.address === currentCtxData.closestAddr && + currentCtxData.closestSymbol !== + currentCtxData.prevClosestSymbol && + this.breakpoints.includes( + currentCtxData.closestGBVMSymbol.scriptEventId + ) + ) { + this.pauseOnVMStep = true; + emulator.pause(); + break; + } + + if ( + this.pauseOnScriptChanged && + // Found matching GBVM event + currentCtxData.closestGBVMSymbol && + // GBVM event has changed since last pause + (!currentCtxData.prevClosestGBVMSymbol || + currentCtxData.closestGBVMSymbol.scriptSymbol !== + currentCtxData.prevClosestGBVMSymbol.scriptSymbol) + ) { + this.pauseOnVMStep = true; + emulator.pause(); + break; + } + + if (this.pauseOnWatchedVariableChanged) { + const globals = this.getGlobals(); + if (this.prevGlobals.length > 0) { + // Check if watched has change + const modified = !this.prevGlobals.every( + (v, i) => v === globals[i] + ); + if (modified) { + const changedVariable = this.watchedVariables.find( + (variableId) => { + const variableData = this.variableMap[variableId]; + const symbol = variableData?.symbol; + const variableIndex = this.globalVariables[symbol]; + if (variableIndex !== undefined) { + return ( + this.prevGlobals[variableIndex] !== undefined && + globals[variableIndex] !== + this.prevGlobals[variableIndex] + ); + } + return false; + } + ); + if (changedVariable) { + this.pauseOnVMStep = true; + emulator.pause(); + } + } + } + this.prevGlobals = globals; + } + } + } + if (event & EVENT_AUDIO_BUFFER_FULL && !this.emulator.isRewinding) { + this.emulator.audio.pushBuffer(); + } + if (event & EVENT_UNTIL_TICKS) { + break; + } + } + if (this.module._emulator_was_ext_ram_updated(this.e)) { + vm.extRamUpdated = true; + } + }; + + // replace the emulator run method with the debug one + this.emulator.runUntil = this.debugRunUntil; + } + + initialize( + memoryMap, + globalVariables, + variableMap, + pauseOnScriptChanged, + pauseOnWatchedVarChanged, + breakpoints, + watchedVariables + ) { + this.memoryMap = memoryMap; + this.globalVariables = globalVariables; + this.variableMap = variableMap; + this.pauseOnScriptChanged = pauseOnScriptChanged; + this.pauseOnWatchedVariableChanged = pauseOnWatchedVarChanged; + this.breakpoints = breakpoints; + this.watchedVariables = watchedVariables; + + const memoryDict = new Map(); + Object.keys(memoryMap).forEach((k) => { + // Banked resources + const match = k.match(/___bank_(.*)/); + if (match) { + const label = `_${match[1]}`; + const bank = memoryMap[k]; + if (memoryMap[label]) { + const n = memoryDict.get(bank) ?? new Map(); + const ptr = memoryMap[label] & 0x0ffff; + n.set(ptr, label); + memoryDict.set(bank, n); + } + } + // Script debug symbols + // const matchGBVM = k.match(/GBVM\$([^$]*)\$([^$]*)/); + const matchGBVM = parseDebuggerSymbol(k); + if (matchGBVM) { + const bankLabel = `___bank_${matchGBVM.scriptSymbol}`; + const label = k; + const bank = memoryMap[bankLabel]; + if (memoryMap[label]) { + const n = memoryDict.get(bank) ?? new Map(); + const ptr = memoryMap[label] & 0x0ffff; + n.set(ptr, label); + memoryDict.set(bank, n); + } + } + + const matchEnd = parseDebuggerEndSymbol(k); + if (matchEnd) { + const bankLabel = `___bank_${matchEnd.scriptSymbol}`; + const label = k; + const bank = memoryMap[bankLabel]; + if (memoryMap[label]) { + const n = memoryDict.get(bank) ?? new Map(); + const ptr = memoryMap[label] & 0x0ffff; + if (!n.get(ptr)) { + n.set(ptr, label); + memoryDict.set(bank, n); + } + } + } + }); + + this.memoryDict = memoryDict; + + // Break on VM_STEP + this.module._emulator_set_breakpoint(this.e, memoryMap["_VM_STEP"]); + + // Add paused UI + + this.initializeUI(); + this.initializeKeyboardShortcuts(); + } + + initializeUI() { + const pausedUI = document.createElement("div"); + const pausedUIContainer = document.createElement("div"); + const pausedUILabel = document.createElement("span"); + const pausedUIResumeBtn = document.createElement("button"); + const pausedUIStepBtn = document.createElement("button"); + const pausedUIStepFrameBtn = document.createElement("button"); + + document.body.appendChild(pausedUI); + pausedUI.appendChild(pausedUIContainer); + pausedUIContainer.appendChild(pausedUILabel); + pausedUIContainer.appendChild(pausedUIResumeBtn); + pausedUIContainer.appendChild(pausedUIStepBtn); + pausedUIContainer.appendChild(pausedUIStepFrameBtn); + + pausedUI.id = "debug"; + pausedUILabel.innerHTML = "Paused in debugger"; + + pausedUIResumeBtn.innerHTML = ``; + pausedUIResumeBtn.title = "Resume execution - F8"; + pausedUIResumeBtn.addEventListener("click", this.resume.bind(this)); + + pausedUIStepBtn.innerHTML = ``; + pausedUIStepBtn.title = "Step - F9"; + pausedUIStepBtn.addEventListener("click", this.step.bind(this)); + + pausedUIStepFrameBtn.innerHTML = ``; + pausedUIStepFrameBtn.title = "Step Frame - F10"; + pausedUIStepFrameBtn.addEventListener("click", this.stepFrame.bind(this)); + + this.pausedUI = pausedUI; + } + + initializeKeyboardShortcuts() { + window.addEventListener("keydown", (e) => { + if (e.key === "F8") { + this.togglePlayPause(); + } else if (e.key === "F9") { + this.step(); + } else if (e.key === "F10") { + this.stepFrame(); + } + }); + } + + getClosestAddress(bank, address) { + const bankScripts = this.memoryDict.get(bank); + const currentAddress = address; + let closestAddress = -1; + if (bankScripts) { + const addresses = Array.from(bankScripts.keys()).sort(); + for (let i = 0; i < addresses.length; i++) { + if (addresses[i] > currentAddress) { + break; + } else { + closestAddress = addresses[i]; + } + } + } + return closestAddress; + } + + getSymbol(bank, address) { + const symbol = this.memoryDict.get(bank)?.get(address) ?? ""; + return symbol.replace(/^_/, ""); + } + + readMem(addr) { + return this.module._emulator_read_mem(this.e, addr); + } + + readMemInt16(addr) { + return ( + (this.module._emulator_read_mem(this.e, addr + 1) << 8) | + this.module._emulator_read_mem(this.e, addr) + ); + } + + writeMem(addr, value) { + this.module._emulator_write_mem(this.e, addr, value & 0xff); + } + + writeMemInt16(addr, value) { + this.module._emulator_write_mem(this.e, addr, value & 0xff); + this.module._emulator_write_mem(this.e, addr + 1, value >> 8); + } + + readVariables(addr, size) { + const ptr = this.module._emulator_get_wram_ptr(this.e) - 0xc000; + return new Int16Array( + this.module.HEAP8.buffer.slice(ptr + addr, ptr + addr + size * 2) + ); + } + + renderVRam() { + var ctx = this.vramCanvas.getContext("2d"); + var imgData = ctx.createImageData(256, 256); + var ptr = this.module._malloc(4 * 256 * 256); + this.module._emulator_render_vram(this.e, ptr); + var buffer = new Uint8Array(this.module.HEAP8.buffer, ptr, 4 * 256 * 256); + imgData.data.set(buffer); + ctx.putImageData(imgData, 0, 0); + this.module._free(ptr); + return this.vramCanvas.toDataURL("image/png"); + } + + setBreakPoints(breakpoints) { + this.breakpoints = breakpoints; + } + + setWatchedVariables(watchedVariables) { + this.watchedVariables = watchedVariables; + } + + pause() { + this.pauseOnVMStep = true; + this.emulator.pause(); + } + + resume() { + this.pauseOnVMStep = false; + this.emulator.resume(); + } + + togglePlayPause() { + if (this.isPaused()) { + this.resume(); + } else { + this.pause(); + } + } + + step() { + if (this.isPaused()) { + this.resume(); + this.pauseOnVMStep = true; + } + } + + stepFrame() { + if (this.isPaused()) { + const ticks = this.module._emulator_get_ticks_f64(this.e) + 70224; + this.emulator.runUntil(ticks); + this.emulator.video.renderTexture(); + } + } + + isPaused() { + return this.emulator.isPaused || this.pauseOnVMStep; + } + + getGlobals() { + const variablesStartAddr = this.memoryMap[SCRIPT_MEMORY_SYMBOL]; + const variablesLength = this.globalVariables[MAX_GLOBAL_VARS]; + return this.readVariables(variablesStartAddr, variablesLength); + } + + setGlobal(symbol, value) { + const offset = (this.globalVariables[symbol] ?? 0) * 2; + const variablesStartAddr = this.memoryMap[SCRIPT_MEMORY_SYMBOL]; + this.writeMemInt16(variablesStartAddr + offset, value); + this.prevGlobals = this.getGlobals(); + } + + getCurrentSceneSymbol() { + const currentSceneAddr = this.memoryMap[CURRENT_SCENE_SYMBOL]; + return this.getSymbol( + this.readMem(currentSceneAddr), + this.readMemInt16(currentSceneAddr + 1) + ); + } + + getNumScriptCtxs() { + const firstCtxAddr = this.memoryMap[FIRST_CTX_SYMBOL]; + let firstCtx = debug.readMemInt16(firstCtxAddr); + let numCtxs = 0; + while (firstCtx !== 0) { + numCtxs++; + firstCtx = debug.readMemInt16(firstCtx + 3); + } + return numCtxs; + } +} + +// Debugger Initialisation + +let ready = setInterval(() => { + const debugEnabled = window.location.href.includes("debug=true"); + if (!debugEnabled) { + // Debugging not enabled + clearInterval(ready); + return; + } + + console.log("Waiting for emulator...", emulator); + if (emulator !== null) { + debug = new Debug(emulator); + clearInterval(ready); + + API.debugger.sendToProjectWindow({ + action: "initialized", + }); + + API.events.debugger.data.subscribe((_, packet) => { + const { action, data } = packet; + + switch (action) { + case "listener-ready": + debug.initialize( + data.memoryMap, + data.globalVariables, + data.variableMap, + data.pauseOnScriptChanged, + data.pauseOnWatchedVariableChanged, + data.breakpoints, + data.watchedVariables + ); + + setInterval(() => { + if (debug.pausedUI) { + debug.pausedUI.style.visibility = debug.isPaused() + ? "visible" + : "hidden"; + } + + const scriptContexts = + debug.getNumScriptCtxs() > 0 ? debug.scriptContexts : []; + + if (scriptContexts.length === 0) { + debug.pauseOnVMStep = false; + } + + API.debugger.sendToProjectWindow({ + action: "update-globals", + data: debug.getGlobals(), + vram: debug.renderVRam(), + isPaused: debug.isPaused(), + scriptContexts, + currentSceneSymbol: debug.getCurrentSceneSymbol(), + }); + }, 100); + break; + case "set-breakpoints": + debug.setBreakPoints(data); + break; + case "pause": + debug.pause(); + break; + case "resume": + debug.resume(); + break; + case "step": + debug.step(); + break; + case "step-frame": + debug.stepFrame(); + break; + case "pause-on-script": + debug.pauseOnScriptChanged = data; + break; + case "pause-on-var": + debug.pauseOnWatchedVariableChanged = data; + break; + case "set-global": + debug.setGlobal(data.symbol, data.value); + break; + case "set-watched": + debug.setWatchedVariables(data); + break; + default: + // console.warn(event); + } + }); + } +}, 200); diff --git a/gb_studio_project/build/web/js/script.js b/gb_studio_project/build/web/js/script.js new file mode 100644 index 0000000..2c5216b --- /dev/null +++ b/gb_studio_project/build/web/js/script.js @@ -0,0 +1,1386 @@ +/* + * Copyright (C) 2017 Ben Smith + * + * This software may be modified and distributed under the terms + * of the MIT license. See the LICENSE file for details. + */ +"use strict"; + +// User configurable. +const ROM_FILENAME = "rom/game.gbc"; +const ENABLE_REWIND = true; +const ENABLE_PAUSE = false; +const ENABLE_SWITCH_PALETTES = true; +const OSGP_DEADZONE = 0.1; // On screen gamepad deadzone range +const CGB_COLOR_CURVE = 2; // 0: none, 1: Sameboy "Emulate Hardware" 2: Gambatte/Gameboy Online + +// List of DMG palettes to switch between. By default it includes all 84 +// built-in palettes. If you want to restrict this, change it to an array of +// the palettes you want to use and change DEFAULT_PALETTE_IDX to the index of the +// default palette in that list. +// +// Example: (only allow one palette with index 16): +// const DEFAULT_PALETTE_IDX = 0; +// const PALETTES = [16]; +// +// Example: (allow three palettes, 16, 32, 64, with default 32): +// const DEFAULT_PALETTE_IDX = 1; +// const PALETTES = [16, 32, 64]; +// +const DEFAULT_PALETTE_IDX = 83; +const PALETTES = [ + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, +]; + +const RESULT_OK = 0; +const RESULT_ERROR = 1; +const SCREEN_WIDTH = 160; +const SCREEN_HEIGHT = 144; +const SGB_SCREEN_WIDTH = 256; +const SGB_SCREEN_HEIGHT = 224; +const SGB_SCREEN_LEFT = (SGB_SCREEN_WIDTH - SCREEN_WIDTH) >> 1; +const SGB_SCREEN_RIGHT = (SGB_SCREEN_WIDTH + SCREEN_WIDTH) >> 1; +const SGB_SCREEN_TOP = (SGB_SCREEN_HEIGHT - SCREEN_HEIGHT) >> 1; +const SGB_SCREEN_BOTTOM = (SGB_SCREEN_HEIGHT + SCREEN_HEIGHT) >> 1; +const AUDIO_FRAMES = 4096; +const AUDIO_LATENCY_SEC = 0.1; +const MAX_UPDATE_SEC = 5 / 60; +const CPU_TICKS_PER_SECOND = 4194304; +const EVENT_NEW_FRAME = 1; +const EVENT_AUDIO_BUFFER_FULL = 2; +const EVENT_UNTIL_TICKS = 4; +const REWIND_FRAMES_PER_BASE_STATE = 45; +const REWIND_BUFFER_CAPACITY = 4 * 1024 * 1024; +const REWIND_FACTOR = 1.5; +const REWIND_UPDATE_MS = 16; +const GAMEPAD_POLLING_INTERVAL = 1000 / 60 / 4; // When activated, poll for gamepad input about ~4 times per gameboy frame (~240 times second) +const GAMEPAD_KEYMAP_STANDARD_STR = "standard"; // Try to use "standard" HTML5 mapping config if available + +const $ = document.querySelector.bind(document); +let emulator = null; + +const controllerEl = $("#controller"); +const dpadEl = $("#controller_dpad"); +const selectEl = $("#controller_select"); +const startEl = $("#controller_start"); +const bEl = $("#controller_b"); +const aEl = $("#controller_a"); + +const binjgbPromise = Binjgb(); + +const sgbEnabled = window.location.href.includes("sgb=true"); +if (sgbEnabled) { + $("canvas").width = SGB_SCREEN_WIDTH; + $("canvas").height = SGB_SCREEN_HEIGHT; +} else { + $("canvas").width = SCREEN_WIDTH; + $("canvas").height = SCREEN_HEIGHT; +} + +// Extract stuff from the vue.js implementation in demo.js. +class VM { + constructor() { + this.ticks = 0; + this.extRamUpdated = false; + this.paused_ = false; + this.volume = 0.5; + this.palIdx = DEFAULT_PALETTE_IDX; + this.canvas = { + show: true, + useSgbBorder: sgbEnabled, + scale: 3, + }; + this.rewind = { + minTicks: 0, + maxTicks: 0, + }; + setInterval(() => { + if (this.extRamUpdated) { + this.updateExtRam(); + this.extRamUpdated = false; + } + }, 1000); + } + + get paused() { + return this.paused_; + } + set paused(newPaused) { + let oldPaused = this.paused_; + this.paused_ = newPaused; + if (!emulator) return; + if (newPaused === oldPaused) return; + if (newPaused) { + emulator.pause(); + this.ticks = emulator.ticks; + this.rewind.minTicks = emulator.rewind.oldestTicks; + this.rewind.maxTicks = emulator.rewind.newestTicks; + } else { + emulator.resume(); + } + } + + togglePause() { + this.paused = !this.paused; + } + + updateExtRam() { + if (!emulator) return; + const extram = emulator.getExtRam(); + localStorage.setItem("extram", JSON.stringify(Array.from(extram))); + } +} + +const vm = new VM(); + +// Load a ROM. +(async function go() { + let response = await fetch(ROM_FILENAME); + let romBuffer = await response.arrayBuffer(); + const extRam = new Uint8Array(JSON.parse(localStorage.getItem("extram"))); + Emulator.start(await binjgbPromise, romBuffer, extRam); + emulator.setBuiltinPalette(vm.palIdx); +})(); + +function makeWasmBuffer(module, ptr, size) { + return new Uint8Array(module.HEAP8.buffer, ptr, size); +} + +class Emulator { + static start(module, romBuffer, extRamBuffer) { + Emulator.stop(); + emulator = new Emulator(module, romBuffer, extRamBuffer); + emulator.run(); + } + + static stop() { + if (emulator) { + emulator.destroy(); + emulator = null; + } + } + + constructor(module, romBuffer, extRamBuffer) { + this.module = module; + this.romDataPtr = this.module._malloc(romBuffer.byteLength); + makeWasmBuffer(this.module, this.romDataPtr, romBuffer.byteLength).set( + new Uint8Array(romBuffer) + ); + this.e = this.module._emulator_new_simple( + this.romDataPtr, + romBuffer.byteLength, + Audio.ctx.sampleRate, + AUDIO_FRAMES, + CGB_COLOR_CURVE + ); + if (this.e == 0) { + throw new Error("Invalid ROM."); + } + + this.gamepad = new Gamepad(module, this.e); + this.audio = new Audio(module, this.e); + this.video = new Video(module, this.e, $("canvas")); + this.rewind = new Rewind(module, this.e); + this.rewindIntervalId = 0; + + this.lastRafSec = 0; + this.leftoverTicks = 0; + this.fps = 60; + + if (extRamBuffer) { + this.loadExtRam(extRamBuffer); + } + + this.bindKeys(); + this.bindTouch(); + + this.touchEnabled = "ontouchstart" in document.documentElement; + this.updateOnscreenGamepad(); + + this.gamepad.init(); + } + + destroy() { + this.gamepad.shutdown(); + this.unbindTouch(); + this.unbindKeys(); + this.cancelAnimationFrame(); + clearInterval(this.rewindIntervalId); + this.rewind.destroy(); + this.module._emulator_delete(this.e); + this.module._free(this.romDataPtr); + } + + withNewFileData(cb) { + const fileDataPtr = this.module._ext_ram_file_data_new(this.e); + const buffer = makeWasmBuffer( + this.module, + this.module._get_file_data_ptr(fileDataPtr), + this.module._get_file_data_size(fileDataPtr) + ); + const result = cb(fileDataPtr, buffer); + this.module._file_data_delete(fileDataPtr); + return result; + } + + loadExtRam(extRamBuffer) { + this.withNewFileData((fileDataPtr, buffer) => { + if (buffer.byteLength === extRamBuffer.byteLength) { + buffer.set(new Uint8Array(extRamBuffer)); + this.module._emulator_read_ext_ram(this.e, fileDataPtr); + } + }); + } + + getExtRam() { + return this.withNewFileData((fileDataPtr, buffer) => { + this.module._emulator_write_ext_ram(this.e, fileDataPtr); + return new Uint8Array(buffer); + }); + } + + get isPaused() { + return this.rafCancelToken === null; + } + + pause() { + if (!this.isPaused) { + this.cancelAnimationFrame(); + this.audio.pause(); + this.beginRewind(); + } + } + + resume() { + if (this.isPaused) { + this.endRewind(); + this.requestAnimationFrame(); + this.audio.resume(); + } + } + + setBuiltinPalette(palIdx) { + this.module._emulator_set_builtin_palette(this.e, PALETTES[palIdx]); + } + + get isRewinding() { + return this.rewind.isRewinding; + } + + beginRewind() { + this.rewind.beginRewind(); + } + + rewindToTicks(ticks) { + if (this.rewind.rewindToTicks(ticks)) { + this.runUntil(ticks); + this.video.renderTexture(); + } + } + + endRewind() { + this.rewind.endRewind(); + this.lastRafSec = 0; + this.leftoverTicks = 0; + this.audio.startSec = 0; + } + + set autoRewind(enabled) { + if (enabled) { + this.rewindIntervalId = setInterval(() => { + const oldest = this.rewind.oldestTicks; + const start = this.ticks; + const delta = + ((REWIND_FACTOR * REWIND_UPDATE_MS) / 1000) * CPU_TICKS_PER_SECOND; + const rewindTo = Math.max(oldest, start - delta); + this.rewindToTicks(rewindTo); + vm.ticks = emulator.ticks; + }, REWIND_UPDATE_MS); + } else { + clearInterval(this.rewindIntervalId); + this.rewindIntervalId = 0; + } + } + + requestAnimationFrame() { + this.rafCancelToken = requestAnimationFrame(this.rafCallback.bind(this)); + } + + cancelAnimationFrame() { + cancelAnimationFrame(this.rafCancelToken); + this.rafCancelToken = null; + } + + run() { + this.requestAnimationFrame(); + } + + get ticks() { + return this.module._emulator_get_ticks_f64(this.e); + } + + runUntil(ticks) { + while (true) { + const event = this.module._emulator_run_until_f64(this.e, ticks); + if (event & EVENT_NEW_FRAME) { + this.rewind.pushBuffer(); + this.video.uploadTexture(); + } + if (event & EVENT_AUDIO_BUFFER_FULL && !this.isRewinding) { + this.audio.pushBuffer(); + } + if (event & EVENT_UNTIL_TICKS) { + break; + } + } + if (this.module._emulator_was_ext_ram_updated(this.e)) { + vm.extRamUpdated = true; + } + } + + rafCallback(startMs) { + this.requestAnimationFrame(); + let deltaSec = 0; + if (!this.isRewinding) { + const startSec = startMs / 1000; + deltaSec = Math.max(startSec - (this.lastRafSec || startSec), 0); + const startTicks = this.ticks; + const deltaTicks = + Math.min(deltaSec, MAX_UPDATE_SEC) * CPU_TICKS_PER_SECOND; + const runUntilTicks = startTicks + deltaTicks - this.leftoverTicks; + this.runUntil(runUntilTicks); + this.leftoverTicks = (this.ticks - runUntilTicks) | 0; + this.lastRafSec = startSec; + } + const lerp = (from, to, alpha) => alpha * from + (1 - alpha) * to; + this.fps = lerp(this.fps, Math.min(1 / deltaSec, 10000), 0.3); + this.video.renderTexture(); + } + + updateOnscreenGamepad() { + $("#controller").style.display = this.touchEnabled ? "block" : "none"; + } + + bindTouch() { + this.touchFuncs = { + controller_b: this.setJoypB.bind(this), + controller_a: this.setJoypA.bind(this), + controller_start: this.setJoypStart.bind(this), + controller_select: this.setJoypSelect.bind(this), + }; + + this.boundButtonTouchStart = this.buttonTouchStart.bind(this); + this.boundButtonTouchEnd = this.buttonTouchEnd.bind(this); + selectEl.addEventListener("touchstart", this.boundButtonTouchStart); + selectEl.addEventListener("touchend", this.boundButtonTouchEnd); + startEl.addEventListener("touchstart", this.boundButtonTouchStart); + startEl.addEventListener("touchend", this.boundButtonTouchEnd); + bEl.addEventListener("touchstart", this.boundButtonTouchStart); + bEl.addEventListener("touchend", this.boundButtonTouchEnd); + aEl.addEventListener("touchstart", this.boundButtonTouchStart); + aEl.addEventListener("touchend", this.boundButtonTouchEnd); + + this.boundDpadTouchStartMove = this.dpadTouchStartMove.bind(this); + this.boundDpadTouchEnd = this.dpadTouchEnd.bind(this); + dpadEl.addEventListener("touchstart", this.boundDpadTouchStartMove); + dpadEl.addEventListener("touchmove", this.boundDpadTouchStartMove); + dpadEl.addEventListener("touchend", this.boundDpadTouchEnd); + + this.boundTouchRestore = this.touchRestore.bind(this); + window.addEventListener("touchstart", this.boundTouchRestore); + } + + unbindTouch() { + selectEl.removeEventListener("touchstart", this.boundButtonTouchStart); + selectEl.removeEventListener("touchend", this.boundButtonTouchEnd); + startEl.removeEventListener("touchstart", this.boundButtonTouchStart); + startEl.removeEventListener("touchend", this.boundButtonTouchEnd); + bEl.removeEventListener("touchstart", this.boundButtonTouchStart); + bEl.removeEventListener("touchend", this.boundButtonTouchEnd); + aEl.removeEventListener("touchstart", this.boundButtonTouchStart); + aEl.removeEventListener("touchend", this.boundButtonTouchEnd); + + dpadEl.removeEventListener("touchstart", this.boundDpadTouchStartMove); + dpadEl.removeEventListener("touchmove", this.boundDpadTouchStartMove); + dpadEl.removeEventListener("touchend", this.boundDpadTouchEnd); + + window.removeEventListener("touchstart", this.boundTouchRestore); + } + + buttonTouchStart(event) { + if (event.currentTarget.id in this.touchFuncs) { + this.touchFuncs[event.currentTarget.id](true); + event.currentTarget.classList.add("btnPressed"); + event.preventDefault(); + } + } + + buttonTouchEnd(event) { + if (event.currentTarget.id in this.touchFuncs) { + this.touchFuncs[event.currentTarget.id](false); + event.currentTarget.classList.remove("btnPressed"); + event.preventDefault(); + } + } + + dpadTouchStartMove(event) { + const rect = event.currentTarget.getBoundingClientRect(); + const x = + (2 * (event.targetTouches[0].clientX - rect.left)) / rect.width - 1; + const y = + (2 * (event.targetTouches[0].clientY - rect.top)) / rect.height - 1; + + if (Math.abs(x) > OSGP_DEADZONE) { + if (y > x && y < -x) { + this.setJoypLeft(true); + this.setJoypRight(false); + } else if (y < x && y > -x) { + this.setJoypLeft(false); + this.setJoypRight(true); + } + } else { + this.setJoypLeft(false); + this.setJoypRight(false); + } + + if (Math.abs(y) > OSGP_DEADZONE) { + if (x > y && x < -y) { + this.setJoypUp(true); + this.setJoypDown(false); + } else if (x < y && x > -y) { + this.setJoypUp(false); + this.setJoypDown(true); + } + } else { + this.setJoypUp(false); + this.setJoypDown(false); + } + event.preventDefault(); + } + + dpadTouchEnd(event) { + this.setJoypLeft(false); + this.setJoypRight(false); + this.setJoypUp(false); + this.setJoypDown(false); + event.preventDefault(); + } + + touchRestore() { + this.touchEnabled = true; + this.updateOnscreenGamepad(); + } + + bindKeys() { + this.keyFuncs = { + Backspace: this.keyRewind.bind(this), + " ": this.keyPause.bind(this), + "[": this.keyPrevPalette.bind(this), + "]": this.keyNextPalette.bind(this), + }; + + if (customControls.down && customControls.down.length > 0) { + customControls.down.forEach((k) => { + this.keyFuncs[k] = this.setJoypDown.bind(this); + }); + } else { + this.keyFuncs["ArrowDown"] = this.setJoypDown.bind(this); + this.keyFuncs["s"] = this.setJoypDown.bind(this); + } + + if (customControls.left && customControls.left.length > 0) { + customControls.left.forEach((k) => { + this.keyFuncs[k] = this.setJoypLeft.bind(this); + }); + } else { + this.keyFuncs["ArrowLeft"] = this.setJoypLeft.bind(this); + this.keyFuncs["a"] = this.setJoypLeft.bind(this); + } + + if (customControls.right && customControls.right.length > 0) { + customControls.right.forEach((k) => { + this.keyFuncs[k] = this.setJoypRight.bind(this); + }); + } else { + this.keyFuncs["ArrowRight"] = this.setJoypRight.bind(this); + this.keyFuncs["d"] = this.setJoypRight.bind(this); + } + + if (customControls.up && customControls.up.length > 0) { + customControls.up.forEach((k) => { + this.keyFuncs[k] = this.setJoypUp.bind(this); + }); + } else { + this.keyFuncs["ArrowUp"] = this.setJoypUp.bind(this); + this.keyFuncs["w"] = this.setJoypUp.bind(this); + } + + if (customControls.a && customControls.a.length > 0) { + customControls.a.forEach((k) => { + this.keyFuncs[k] = this.setJoypA.bind(this); + }); + } else { + this.keyFuncs["z"] = this.setJoypA.bind(this); + this.keyFuncs["j"] = this.setJoypA.bind(this); + this.keyFuncs["Alt"] = this.setJoypA.bind(this); + } + + if (customControls.b && customControls.b.length > 0) { + customControls.b.forEach((k) => { + this.keyFuncs[k] = this.setJoypB.bind(this); + }); + } else { + this.keyFuncs["x"] = this.setJoypB.bind(this); + this.keyFuncs["k"] = this.setJoypB.bind(this); + this.keyFuncs["Control"] = this.setJoypB.bind(this); + } + + if (customControls.start && customControls.start.length > 0) { + customControls.start.forEach((k) => { + this.keyFuncs[k] = this.setJoypStart.bind(this); + }); + } else { + this.keyFuncs["Enter"] = this.setJoypStart.bind(this); + } + + if (customControls.select && customControls.select.length > 0) { + customControls.select.forEach((k) => { + this.keyFuncs[k] = this.setJoypSelect.bind(this); + }); + } else { + this.keyFuncs["Shift"] = this.setJoypSelect.bind(this); + } + + this.boundKeyDown = this.keyDown.bind(this); + this.boundKeyUp = this.keyUp.bind(this); + + window.addEventListener("keydown", this.boundKeyDown); + window.addEventListener("keyup", this.boundKeyUp); + } + + unbindKeys() { + window.removeEventListener("keydown", this.boundKeyDown); + window.removeEventListener("keyup", this.boundKeyUp); + } + + keyDown(event) { + if (event.key === "w" && (event.metaKey || event.ctrlKey)) { + return; + } + if (event.key in this.keyFuncs) { + if (this.touchEnabled) { + this.touchEnabled = false; + this.updateOnscreenGamepad(); + } + this.keyFuncs[event.key](true); + event.preventDefault(); + } + } + + keyUp(event) { + if (event.key in this.keyFuncs) { + this.keyFuncs[event.key](false); + event.preventDefault(); + } + } + + keyRewind(isKeyDown) { + if (!ENABLE_REWIND) { + return; + } + if (this.isRewinding !== isKeyDown) { + if (isKeyDown) { + vm.paused = true; + this.autoRewind = true; + } else { + this.autoRewind = false; + vm.paused = false; + } + } + } + + keyPause(isKeyDown) { + if (!ENABLE_PAUSE) { + return; + } + if (isKeyDown) vm.togglePause(); + } + + keyPrevPalette(isKeyDown) { + if (!ENABLE_SWITCH_PALETTES) { + return; + } + if (isKeyDown) { + vm.palIdx = (vm.palIdx + PALETTES.length - 1) % PALETTES.length; + emulator.setBuiltinPalette(vm.palIdx); + } + } + + keyNextPalette(isKeyDown) { + if (!ENABLE_SWITCH_PALETTES) { + return; + } + if (isKeyDown) { + vm.palIdx = (vm.palIdx + 1) % PALETTES.length; + emulator.setBuiltinPalette(vm.palIdx); + } + } + + setJoypDown(set) { + this.module._set_joyp_down(this.e, set); + } + setJoypUp(set) { + this.module._set_joyp_up(this.e, set); + } + setJoypLeft(set) { + this.module._set_joyp_left(this.e, set); + } + setJoypRight(set) { + this.module._set_joyp_right(this.e, set); + } + setJoypSelect(set) { + this.module._set_joyp_select(this.e, set); + } + setJoypStart(set) { + this.module._set_joyp_start(this.e, set); + } + setJoypB(set) { + this.module._set_joyp_B(this.e, set); + } + setJoypA(set) { + this.module._set_joyp_A(this.e, set); + } +} + +class Gamepad { + constructor(module, e) { + this.module = module; + this.e = e; + } + + // Load a key map for gamepad-to-gameboy buttons + bindKeys(strMapping) { + this.GAMEPAD_KEYMAP_STANDARD = [ + { + gb_key: "b", + gp_button: 0, + type: "button", + gp_bind: this.module._set_joyp_B.bind(null, this.e), + }, + { + gb_key: "a", + gp_button: 1, + type: "button", + gp_bind: this.module._set_joyp_A.bind(null, this.e), + }, + { + gb_key: "select", + gp_button: 8, + type: "button", + gp_bind: this.module._set_joyp_select.bind(null, this.e), + }, + { + gb_key: "start", + gp_button: 9, + type: "button", + gp_bind: this.module._set_joyp_start.bind(null, this.e), + }, + { + gb_key: "up", + gp_button: 12, + type: "button", + gp_bind: this.module._set_joyp_up.bind(null, this.e), + }, + { + gb_key: "down", + gp_button: 13, + type: "button", + gp_bind: this.module._set_joyp_down.bind(null, this.e), + }, + { + gb_key: "left", + gp_button: 14, + type: "button", + gp_bind: this.module._set_joyp_left.bind(null, this.e), + }, + { + gb_key: "right", + gp_button: 15, + type: "button", + gp_bind: this.module._set_joyp_right.bind(null, this.e), + }, + ]; + + this.GAMEPAD_KEYMAP_DEFAULT = [ + { + gb_key: "a", + gp_button: 0, + type: "button", + gp_bind: this.module._set_joyp_A.bind(null, this.e), + }, + { + gb_key: "b", + gp_button: 1, + type: "button", + gp_bind: this.module._set_joyp_B.bind(null, this.e), + }, + { + gb_key: "select", + gp_button: 2, + type: "button", + gp_bind: this.module._set_joyp_select.bind(null, this.e), + }, + { + gb_key: "start", + gp_button: 3, + type: "button", + gp_bind: this.module._set_joyp_start.bind(null, this.e), + }, + { + gb_key: "up", + gp_button: 2, + type: "axis", + gp_bind: this.module._set_joyp_up.bind(null, this.e), + }, + { + gb_key: "down", + gp_button: 3, + type: "axis", + gp_bind: this.module._set_joyp_down.bind(null, this.e), + }, + { + gb_key: "left", + gp_button: 0, + type: "axis", + gp_bind: this.module._set_joyp_left.bind(null, this.e), + }, + { + gb_key: "right", + gp_button: 1, + type: "axis", + gp_bind: this.module._set_joyp_right.bind(null, this.e), + }, + ]; + + // Try to use the w3c "standard" gamepad mapping if available + // (Chrome/V8 seems to do that better than Firefox) + // + // Otherwise use a default mapping that assigns + // A/B/Select/Start to the first four buttons, + // and U/D/L/R to the first two axes. + if (strMapping === GAMEPAD_KEYMAP_STANDARD_STR) { + this.gp.keybinds = this.GAMEPAD_KEYMAP_STANDARD; + } else { + this.gp.keybinds = this.GAMEPAD_KEYMAP_DEFAULT; + } + } + + cacheValues(gamepad) { + // Read Buttons + for (let k = 0; k < gamepad.buttons.length; k++) { + // .value is for analog, .pressed is for boolean buttons + this.gp.buttons.cur[k] = + gamepad.buttons[k].value > 0 || gamepad.buttons[k].pressed == true; + + // Update state changed if not on first input pass + if (this.gp.buttons.last !== undefined) { + this.gp.buttons.changed[k] = + this.gp.buttons.cur[k] != this.gp.buttons.last[k]; + } + } + + // Read Axes + for (let k = 0; k < gamepad.axes.length; k++) { + // Decode each dpad axis into two buttons, one for each direction + this.gp.axes.cur[k * 2] = gamepad.axes[k] < 0; + this.gp.axes.cur[k * 2 + 1] = gamepad.axes[k] > 0; + + // Update state changed if not on first input pass + if (this.gp.axes.last !== undefined) { + this.gp.axes.changed[k * 2] = + this.gp.axes.cur[k * 2] != this.gp.axes.last[k * 2]; + this.gp.axes.changed[k * 2 + 1] = + this.gp.axes.cur[k * 2 + 1] != this.gp.axes.last[k * 2 + 1]; + } + } + + // Save current state for comparison on next input + this.gp.axes.last = this.gp.axes.cur.slice(0); + this.gp.buttons.last = this.gp.buttons.cur.slice(0); + } + + handleButton(keyBind) { + let buttonCache; + + // Select button / axis cache based on key bind type + if (keyBind.type === "button") { + buttonCache = this.gp.buttons; + } else if (keyBind.type === "axis") { + buttonCache = this.gp.axes; + } + + // Make sure the button exists in the cache array + if (keyBind.gp_button < buttonCache.changed.length) { + // Send the button state if it's changed + if (buttonCache.changed[keyBind.gp_button]) { + if (buttonCache.cur[keyBind.gp_button]) { + // Gamepad Button Down + keyBind.gp_bind(true); + } else { + // Gamepad Button Up + keyBind.gp_bind(false); + } + } + } + } + + getCurrent() { + // Chrome requires retrieving a new gamepad object + // every time button state is queried (the existing object + // will have stale button state). Just do that for all browsers + let gamepad = navigator.getGamepads()[this.gp.apiID]; + + if (gamepad) { + if (gamepad.connected) { + return gamepad; + } + } + + return undefined; + } + + update() { + let gamepad = this.getCurrent(); + + if (gamepad !== undefined) { + // Cache gamepad input values + this.cacheValues(gamepad); + + // Loop through buttons and send changes if needed + for (let i = 0; i < this.gp.keybinds.length; i++) { + this.handleButton(this.gp.keybinds[i]); + } + } else { + // Gamepad is no longer present, disconnect + this.releaseGamepad(); + } + } + + startGamepad(gamepad) { + // Make sure it has enough buttons and axes + if ( + gamepad.mapping === GAMEPAD_KEYMAP_STANDARD_STR || + (gamepad.axes.length >= 2 && gamepad.buttons.length >= 4) + ) { + // Save API index for polling (required by Chrome/V8) + this.gp.apiID = gamepad.index; + + // Assign gameboy keys to the gamepad + this.bindKeys(gamepad.mapping); + + // Start polling the gamepad for input + this.gp.timerID = setInterval( + () => this.update(), + GAMEPAD_POLLING_INTERVAL + ); + } + } + + releaseGamepad() { + // Stop polling the gamepad for input + if (this.gp.timerID !== undefined) { + clearInterval(this.gp.timerID); + } + + // Clear previous button history and controller info + this.gp.axes.last = undefined; + this.gp.buttons.last = undefined; + this.gp.keybinds = undefined; + + this.gp.apiID = undefined; + } + + // If a gamepad was already connected on this page + // and released, it won't fire another connect event. + // So try to find any that might be present + checkAlreadyConnected() { + let gamepads = navigator.getGamepads(); + + // If any gamepads are already attached to the page, + // use the first one that is connected + for (let idx = 0; idx < gamepads.length; idx++) { + if (gamepads[idx] !== undefined && gamepads[idx] !== null) { + if (gamepads[idx].connected === true) { + this.startGamepad(gamepads[idx]); + } + } + } + } + + // Event handler for when a gamepad is connected + eventConnected(event) { + this.startGamepad(navigator.getGamepads()[event.gamepad.index]); + } + + // Event handler for when a gamepad is disconnected + eventDisconnected(event) { + this.releaseGamepad(); + } + + // Register event connection handlers for gamepads + init() { + // gamepad related vars + this.gp = { + apiID: undefined, + timerID: undefined, + keybinds: undefined, + axes: { last: undefined, cur: [], changed: [] }, + buttons: { last: undefined, cur: [], changed: [] }, + }; + + // Check for previously attached gamepads that might + // not emit a gamepadconnected() event + this.checkAlreadyConnected(); + + this.boundGamepadConnected = this.eventConnected.bind(this); + this.boundGamepadDisconnected = this.eventDisconnected.bind(this); + + // When a gamepad connects, start polling it for input + window.addEventListener("gamepadconnected", this.boundGamepadConnected); + + // When a gamepad disconnects, shut down polling for input + window.addEventListener( + "gamepaddisconnected", + this.boundGamepadDisconnected + ); + } + + // Release event connection handlers and settings + shutdown() { + this.releaseGamepad(); + window.removeEventListener("gamepadconnected", this.boundGamepadConnected); + window.removeEventListener( + "gamepaddisconnected", + this.boundGamepadDisconnected + ); + } +} + +class Audio { + constructor(module, e) { + this.started = false; + this.module = module; + this.buffer = makeWasmBuffer( + this.module, + this.module._get_audio_buffer_ptr(e), + this.module._get_audio_buffer_capacity(e) + ); + this.startSec = 0; + this.resume(); + + this.boundStartPlayback = this.startPlayback.bind(this); + window.addEventListener("keydown", this.boundStartPlayback, true); + window.addEventListener("click", this.boundStartPlayback, true); + window.addEventListener("touchend", this.boundStartPlayback, true); + } + + startPlayback() { + window.removeEventListener("touchend", this.boundStartPlayback, true); + window.removeEventListener("keydown", this.boundStartPlayback, true); + window.removeEventListener("click", this.boundStartPlayback, true); + this.started = true; + this.resume(); + } + + get sampleRate() { + return Audio.ctx.sampleRate; + } + + pushBuffer() { + if (!this.started) { + return; + } + const nowSec = Audio.ctx.currentTime; + const nowPlusLatency = nowSec + AUDIO_LATENCY_SEC; + const volume = vm.volume; + this.startSec = this.startSec || nowPlusLatency; + if (this.startSec >= nowSec) { + const buffer = Audio.ctx.createBuffer(2, AUDIO_FRAMES, this.sampleRate); + const channel0 = buffer.getChannelData(0); + const channel1 = buffer.getChannelData(1); + for (let i = 0; i < AUDIO_FRAMES; i++) { + channel0[i] = (this.buffer[2 * i] * volume) / 255; + channel1[i] = (this.buffer[2 * i + 1] * volume) / 255; + } + const bufferSource = Audio.ctx.createBufferSource(); + bufferSource.buffer = buffer; + bufferSource.connect(Audio.ctx.destination); + bufferSource.start(this.startSec); + const bufferSec = AUDIO_FRAMES / this.sampleRate; + this.startSec += bufferSec; + } else { + console.log( + "Resetting audio (" + + this.startSec.toFixed(2) + + " < " + + nowSec.toFixed(2) + + ")" + ); + this.startSec = nowPlusLatency; + } + } + + pause() { + if (!this.started) { + return; + } + Audio.ctx.suspend(); + } + + resume() { + if (!this.started) { + return; + } + Audio.ctx.resume(); + } +} + +Audio.ctx = new AudioContext(); + +class Video { + constructor(module, e, el) { + this.module = module; + // Both iPhone and Desktop Safari dont't upscale using image-rendering: pixelated + // on webgl canvases. See https://bugs.webkit.org/show_bug.cgi?id=193895. + // For now, default to Canvas2D. + if (window.navigator.userAgent.match(/iPhone|iPad|15.[0-9] Safari/)) { + this.renderer = new Canvas2DRenderer(el); + } else { + try { + this.renderer = new WebGLRenderer(el); + } catch (error) { + console.log(`Error creating WebGLRenderer: ${error}`); + this.renderer = new Canvas2DRenderer(el); + } + } + this.buffer = makeWasmBuffer( + this.module, + this.module._get_frame_buffer_ptr(e), + this.module._get_frame_buffer_size(e) + ); + this.sgbBuffer = makeWasmBuffer( + this.module, + this.module._get_sgb_frame_buffer_ptr(e), + this.module._get_sgb_frame_buffer_size(e) + ); + } + + uploadTexture() { + this.renderer.uploadTextures(this.buffer, this.sgbBuffer); + } + + renderTexture() { + this.renderer.renderTextures(); + } +} + +class Canvas2DRenderer { + constructor(el) { + this.ctx = el.getContext("2d"); + this.imageData = this.ctx.createImageData(SCREEN_WIDTH, SCREEN_HEIGHT); + this.sgbImageData = this.ctx.createImageData( + SGB_SCREEN_WIDTH, + SGB_SCREEN_HEIGHT + ); + + this.overlayCanvas = document.createElement("canvas"); + this.overlayCanvas.width = SGB_SCREEN_WIDTH; + this.overlayCanvas.height = SGB_SCREEN_HEIGHT; + this.overlayCtx = this.overlayCanvas.getContext("2d"); + } + + uploadTextures(buffer, sgbBuffer) { + this.imageData.data.set(buffer); + this.sgbImageData.data.set(sgbBuffer); + } + + renderTextures() { + if (vm.canvas.useSgbBorder) { + this.ctx.putImageData(this.imageData, SGB_SCREEN_LEFT, SGB_SCREEN_TOP); + this.overlayCtx.putImageData(this.sgbImageData, 0, 0); + this.ctx.drawImage(this.overlayCanvas, 0, 0); + } else { + this.ctx.putImageData(this.imageData, 0, 0); + } + } +} + +class WebGLRenderer { + constructor(el) { + const gl = (this.gl = el.getContext("webgl", { + preserveDrawingBuffer: true, + })); + if (gl === null) { + throw new Error("unable to create webgl context"); + } + + function compileShader(type, source) { + const shader = gl.createShader(type); + gl.shaderSource(shader, source); + gl.compileShader(shader); + if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) { + throw new Error(`compileShader failed: ${gl.getShaderInfoLog(shader)}`); + } + return shader; + } + + const vertexShader = compileShader( + gl.VERTEX_SHADER, + `attribute vec2 aPos; + attribute vec2 aTexCoord; + varying highp vec2 vTexCoord; + void main(void) { + gl_Position = vec4(aPos, 0.0, 1.0); + vTexCoord = aTexCoord; + }` + ); + const fragmentShader = compileShader( + gl.FRAGMENT_SHADER, + `varying highp vec2 vTexCoord; + uniform sampler2D uSampler; + void main(void) { + gl_FragColor = texture2D(uSampler, vTexCoord); + }` + ); + + const program = gl.createProgram(); + gl.attachShader(program, vertexShader); + gl.attachShader(program, fragmentShader); + gl.linkProgram(program); + if (!gl.getProgramParameter(program, gl.LINK_STATUS)) { + throw new Error(`program link failed: ${gl.getProgramInfoLog(program)}`); + } + gl.useProgram(program); + + this.aPos = gl.getAttribLocation(program, "aPos"); + this.aTexCoord = gl.getAttribLocation(program, "aTexCoord"); + this.uSampler = gl.getUniformLocation(program, "uSampler"); + + this.fbTexture = this.createTexture(); + this.sgbFbTexture = this.createTexture(); + + const invLerpClipSpace = (x, max) => 2 * (x / max) - 1; + const l = invLerpClipSpace(SGB_SCREEN_LEFT, SGB_SCREEN_WIDTH); + const r = invLerpClipSpace(SGB_SCREEN_RIGHT, SGB_SCREEN_WIDTH); + const t = -invLerpClipSpace(SGB_SCREEN_TOP, SGB_SCREEN_HEIGHT); + const b = -invLerpClipSpace(SGB_SCREEN_BOTTOM, SGB_SCREEN_HEIGHT); + const w = SCREEN_WIDTH / 256, + sw = SGB_SCREEN_WIDTH / 256; + const h = SCREEN_HEIGHT / 256, + sh = SGB_SCREEN_HEIGHT / 256; + + const verts = new Float32Array([ + // fb only + -1, + -1, + 0, + h, + +1, + -1, + w, + h, + -1, + +1, + 0, + 0, + +1, + +1, + w, + 0, + + // sgb fb + l, + b, + 0, + h, + r, + b, + w, + h, + l, + t, + 0, + 0, + r, + t, + w, + 0, + + // sgb border + -1, + -1, + 0, + sh, + +1, + -1, + sw, + sh, + -1, + +1, + 0, + 0, + +1, + +1, + sw, + 0, + ]); + + const buffer = gl.createBuffer(); + this.gl.bindBuffer(gl.ARRAY_BUFFER, buffer); + gl.bufferData(gl.ARRAY_BUFFER, verts, gl.STATIC_DRAW); + + gl.enableVertexAttribArray(this.aPos); + gl.enableVertexAttribArray(this.aTexCoord); + gl.vertexAttribPointer(this.aPos, 2, gl.FLOAT, gl.FALSE, 16, 0); + gl.vertexAttribPointer(this.aTexCoord, 2, gl.FLOAT, gl.FALSE, 16, 8); + gl.uniform1i(this.uSampler, 0); + } + + createTexture() { + const gl = this.gl; + const texture = gl.createTexture(); + gl.bindTexture(gl.TEXTURE_2D, texture); + gl.texImage2D( + gl.TEXTURE_2D, + 0, + gl.RGBA, + 256, + 256, + 0, + gl.RGBA, + gl.UNSIGNED_BYTE, + null + ); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST); + return texture; + } + + uploadTextures(buffer, sgbBuffer) { + const gl = this.gl; + gl.bindTexture(gl.TEXTURE_2D, this.fbTexture); + gl.texSubImage2D( + gl.TEXTURE_2D, + 0, + 0, + 0, + SCREEN_WIDTH, + SCREEN_HEIGHT, + gl.RGBA, + gl.UNSIGNED_BYTE, + buffer + ); + + gl.bindTexture(gl.TEXTURE_2D, this.sgbFbTexture); + gl.texSubImage2D( + gl.TEXTURE_2D, + 0, + 0, + 0, + SGB_SCREEN_WIDTH, + SGB_SCREEN_HEIGHT, + gl.RGBA, + gl.UNSIGNED_BYTE, + sgbBuffer + ); + } + + renderTextures() { + const gl = this.gl; + gl.viewport(0, 0, gl.drawingBufferWidth, gl.drawingBufferHeight); + gl.clearColor(0.5, 0.5, 0.5, 1.0); + gl.clear(gl.COLOR_BUFFER_BIT); + + if (vm.canvas.useSgbBorder) { + gl.bindTexture(gl.TEXTURE_2D, this.fbTexture); + gl.drawArrays(gl.TRIANGLE_STRIP, 4, 4); + + gl.enable(gl.BLEND); + gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA); + gl.bindTexture(gl.TEXTURE_2D, this.sgbFbTexture); + gl.drawArrays(gl.TRIANGLE_STRIP, 8, 4); + gl.disable(gl.BLEND); + } else { + gl.bindTexture(gl.TEXTURE_2D, this.fbTexture); + gl.drawArrays(gl.TRIANGLE_STRIP, 0, 4); + } + } +} + +class Rewind { + constructor(module, e) { + this.module = module; + this.e = e; + this.joypadBufferPtr = this.module._joypad_new(); + this.statePtr = 0; + this.bufferPtr = this.module._rewind_new_simple( + e, + REWIND_FRAMES_PER_BASE_STATE, + REWIND_BUFFER_CAPACITY + ); + this.module._emulator_set_default_joypad_callback(e, this.joypadBufferPtr); + } + + destroy() { + this.module._rewind_delete(this.bufferPtr); + this.module._joypad_delete(this.joypadBufferPtr); + } + + get oldestTicks() { + return this.module._rewind_get_oldest_ticks_f64(this.bufferPtr); + } + + get newestTicks() { + return this.module._rewind_get_newest_ticks_f64(this.bufferPtr); + } + + pushBuffer() { + if (!this.isRewinding) { + this.module._rewind_append(this.bufferPtr, this.e); + } + } + + get isRewinding() { + return this.statePtr !== 0; + } + + beginRewind() { + if (this.isRewinding) return; + this.statePtr = this.module._rewind_begin( + this.e, + this.bufferPtr, + this.joypadBufferPtr + ); + } + + rewindToTicks(ticks) { + if (!this.isRewinding) return; + return ( + this.module._rewind_to_ticks_wrapper(this.statePtr, ticks) === RESULT_OK + ); + } + + endRewind() { + if (!this.isRewinding) return; + this.module._emulator_set_default_joypad_callback( + this.e, + this.joypadBufferPtr + ); + this.module._rewind_end(this.statePtr); + this.statePtr = 0; + } +} diff --git a/gb_studio_project/build/web/rom/README.md b/gb_studio_project/build/web/rom/README.md new file mode 100644 index 0000000..11f3dea --- /dev/null +++ b/gb_studio_project/build/web/rom/README.md @@ -0,0 +1 @@ +Add your ROM here named as game.gb diff --git a/gb_studio_project/build/web/rom/game.gbc b/gb_studio_project/build/web/rom/game.gbc new file mode 100644 index 0000000000000000000000000000000000000000..6fb8b44eea009a6a43095f728f67840e3b1bcd49 GIT binary patch literal 262144 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 BB>n&Z literal 0 HcmV?d00001 diff --git a/gb_studio_project/plugins/README.md b/gb_studio_project/plugins/README.md new file mode 100644 index 0000000..4c73305 --- /dev/null +++ b/gb_studio_project/plugins/README.md @@ -0,0 +1,3 @@ +Place plugin folders in this folder to extend the capabilities of your game + +Docs: https://www.gbstudio.dev/docs/extending-gbstudio/plugins diff --git a/gb_studio_project/project/backgrounds/cave.gbsres b/gb_studio_project/project/backgrounds/cave.gbsres new file mode 100644 index 0000000..83cd680 --- /dev/null +++ b/gb_studio_project/project/backgrounds/cave.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "cd7064f5-abb5-4869-9dc8-c76b4f198a52", + "name": "cave", + "symbol": "bg_cave", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "cave.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/cave.gbsres.bak b/gb_studio_project/project/backgrounds/cave.gbsres.bak new file mode 100644 index 0000000..8ab381c --- /dev/null +++ b/gb_studio_project/project/backgrounds/cave.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "cd7064f5-abb5-4869-9dc8-c76b4f198a52", + "name": "cave", + "symbol": "bg_cave", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "cave.png", + "tileColors": "", + "autoColor": false +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/endscreen.gbsres b/gb_studio_project/project/backgrounds/endscreen.gbsres new file mode 100644 index 0000000..605790e --- /dev/null +++ b/gb_studio_project/project/backgrounds/endscreen.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "2a791a06-b420-45ed-b56e-80f3e22bfab4", + "name": "endScreen", + "symbol": "bg_endscreen", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "endScreen.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/endscreen.gbsres.bak b/gb_studio_project/project/backgrounds/endscreen.gbsres.bak new file mode 100644 index 0000000..1e936df --- /dev/null +++ b/gb_studio_project/project/backgrounds/endscreen.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "2a791a06-b420-45ed-b56e-80f3e22bfab4", + "name": "endScreen", + "symbol": "bg_endscreen", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "endScreen.png", + "autoColor": true, + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/fate6housef2.gbsres b/gb_studio_project/project/backgrounds/fate6housef2.gbsres new file mode 100644 index 0000000..fa44990 --- /dev/null +++ b/gb_studio_project/project/backgrounds/fate6housef2.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "660ff43c-0d70-40d4-be66-c5045596457f", + "name": "Fate6Housef2", + "symbol": "bg_fate6housef2", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "Fate6Housef2.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/fate6housef2.gbsres.bak b/gb_studio_project/project/backgrounds/fate6housef2.gbsres.bak new file mode 100644 index 0000000..155c9e9 --- /dev/null +++ b/gb_studio_project/project/backgrounds/fate6housef2.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "660ff43c-0d70-40d4-be66-c5045596457f", + "name": "Fate6Housef2", + "symbol": "bg_fate6housef2", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "Fate6Housef2.png", + "autoColor": true, + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/house-wide.gbsres b/gb_studio_project/project/backgrounds/house-wide.gbsres new file mode 100644 index 0000000..b9a8418 --- /dev/null +++ b/gb_studio_project/project/backgrounds/house-wide.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "1a99f516-7544-478a-b05c-2e2fd72feb61", + "name": "house-wide", + "symbol": "bg_house_wide", + "width": 32, + "height": 18, + "imageWidth": 256, + "imageHeight": 144, + "filename": "house-wide.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/house-wide.gbsres.bak b/gb_studio_project/project/backgrounds/house-wide.gbsres.bak new file mode 100644 index 0000000..368f800 --- /dev/null +++ b/gb_studio_project/project/backgrounds/house-wide.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "1a99f516-7544-478a-b05c-2e2fd72feb61", + "name": "house-wide", + "symbol": "bg_house_wide", + "width": 32, + "height": 18, + "imageWidth": 256, + "imageHeight": 144, + "filename": "house-wide.png", + "tileColors": "", + "autoColor": false +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/house.gbsres b/gb_studio_project/project/backgrounds/house.gbsres new file mode 100644 index 0000000..8a1666a --- /dev/null +++ b/gb_studio_project/project/backgrounds/house.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "a2881a60-75d5-4c7f-94c6-15e6a7ab172e", + "name": "house", + "symbol": "bg_house", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "house.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/house.gbsres.bak b/gb_studio_project/project/backgrounds/house.gbsres.bak new file mode 100644 index 0000000..c499df7 --- /dev/null +++ b/gb_studio_project/project/backgrounds/house.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "a2881a60-75d5-4c7f-94c6-15e6a7ab172e", + "name": "house", + "symbol": "bg_house", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "house.png", + "tileColors": "", + "autoColor": false +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/housef2.gbsres b/gb_studio_project/project/backgrounds/housef2.gbsres new file mode 100644 index 0000000..7cfb694 --- /dev/null +++ b/gb_studio_project/project/backgrounds/housef2.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "519f4809-b053-4a21-a691-bdd574b8d25d", + "name": "Housef2", + "symbol": "bg_housef2", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "Housef2.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/housef2.gbsres.bak b/gb_studio_project/project/backgrounds/housef2.gbsres.bak new file mode 100644 index 0000000..ac9234b --- /dev/null +++ b/gb_studio_project/project/backgrounds/housef2.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "519f4809-b053-4a21-a691-bdd574b8d25d", + "name": "Housef2", + "symbol": "bg_housef2", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "Housef2.png", + "autoColor": true, + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/lab1.gbsres b/gb_studio_project/project/backgrounds/lab1.gbsres new file mode 100644 index 0000000..ec6787a --- /dev/null +++ b/gb_studio_project/project/backgrounds/lab1.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "694504ba-8ee7-4dac-b884-2e1bf923c70b", + "name": "Lab1", + "symbol": "bg_lab1", + "width": 20, + "height": 24, + "imageWidth": 160, + "imageHeight": 192, + "filename": "Lab1.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/lab1.gbsres.bak b/gb_studio_project/project/backgrounds/lab1.gbsres.bak new file mode 100644 index 0000000..fb3b6fe --- /dev/null +++ b/gb_studio_project/project/backgrounds/lab1.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "694504ba-8ee7-4dac-b884-2e1bf923c70b", + "name": "Lab1", + "symbol": "bg_lab1", + "width": 20, + "height": 24, + "imageWidth": 160, + "imageHeight": 192, + "filename": "Lab1.png", + "autoColor": true, + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/logo.gbsres b/gb_studio_project/project/backgrounds/logo.gbsres new file mode 100644 index 0000000..185fe70 --- /dev/null +++ b/gb_studio_project/project/backgrounds/logo.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "4079f756-9ab5-451e-b726-9eb8fc6cb09f", + "name": "logo", + "symbol": "bg_logo", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "logo.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/logo.gbsres.bak b/gb_studio_project/project/backgrounds/logo.gbsres.bak new file mode 100644 index 0000000..bc870fa --- /dev/null +++ b/gb_studio_project/project/backgrounds/logo.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "4079f756-9ab5-451e-b726-9eb8fc6cb09f", + "name": "logo", + "symbol": "bg_logo", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "logo.png", + "autoColor": true, + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/logoscreen.gbsres b/gb_studio_project/project/backgrounds/logoscreen.gbsres new file mode 100644 index 0000000..139c046 --- /dev/null +++ b/gb_studio_project/project/backgrounds/logoscreen.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "1e83ea8e-38fe-4af4-a1c0-e4f61eb10e37", + "name": "LogoScreen", + "symbol": "bg_logoscreen", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "LogoScreen.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/logoscreen.gbsres.bak b/gb_studio_project/project/backgrounds/logoscreen.gbsres.bak new file mode 100644 index 0000000..688ad9e --- /dev/null +++ b/gb_studio_project/project/backgrounds/logoscreen.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "1e83ea8e-38fe-4af4-a1c0-e4f61eb10e37", + "name": "LogoScreen", + "symbol": "bg_logoscreen", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "LogoScreen.png", + "autoColor": true, + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/numbars.gbsres b/gb_studio_project/project/backgrounds/numbars.gbsres new file mode 100644 index 0000000..20258ac --- /dev/null +++ b/gb_studio_project/project/backgrounds/numbars.gbsres @@ -0,0 +1,12 @@ +{ + "_resourceType": "background", + "id": "fdf46747-82a3-4fd7-a773-00c76480b42e", + "name": "numbars", + "symbol": "bg_numbas", + "width": 32, + "height": 32, + "imageWidth": 256, + "imageHeight": 256, + "filename": "numbars.png", + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/outside.gbsres.bak b/gb_studio_project/project/backgrounds/outside.gbsres.bak new file mode 100644 index 0000000..9f9a6ba --- /dev/null +++ b/gb_studio_project/project/backgrounds/outside.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "fdfb20ed-bf31-48aa-ab03-b338f5cd0316", + "name": "outside", + "symbol": "bg_outside", + "width": 32, + "height": 32, + "imageWidth": 256, + "imageHeight": 256, + "filename": "outside.png", + "autoColor": true, + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/overworld_-_test_1.gbsres b/gb_studio_project/project/backgrounds/overworld_-_test_1.gbsres new file mode 100644 index 0000000..0e55cdf --- /dev/null +++ b/gb_studio_project/project/backgrounds/overworld_-_test_1.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "a25aa515-bdc9-4332-babc-731c91cff86a", + "name": "Overworld_-_Test_1", + "symbol": "bg_overworld_test_1", + "width": 80, + "height": 72, + "imageWidth": 640, + "imageHeight": 576, + "filename": "Overworld_-_Test_1.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/overworld_-_test_1.gbsres.bak b/gb_studio_project/project/backgrounds/overworld_-_test_1.gbsres.bak new file mode 100644 index 0000000..4c236d1 --- /dev/null +++ b/gb_studio_project/project/backgrounds/overworld_-_test_1.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "a25aa515-bdc9-4332-babc-731c91cff86a", + "name": "Overworld_-_Test_1", + "symbol": "bg_overworld_test_1", + "width": 80, + "height": 72, + "imageWidth": 640, + "imageHeight": 576, + "filename": "Overworld_-_Test_1.png", + "autoColor": true, + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/overworld_-_test_2.gbsres b/gb_studio_project/project/backgrounds/overworld_-_test_2.gbsres new file mode 100644 index 0000000..db30477 --- /dev/null +++ b/gb_studio_project/project/backgrounds/overworld_-_test_2.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "d22db4f6-751d-47d7-8b4c-bb88ff267f3f", + "name": "Overworld_-_Test_2", + "symbol": "bg_overworld_test_2", + "width": 80, + "height": 72, + "imageWidth": 640, + "imageHeight": 576, + "filename": "Overworld_-_Test_2.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/overworld_-_test_2.gbsres.bak b/gb_studio_project/project/backgrounds/overworld_-_test_2.gbsres.bak new file mode 100644 index 0000000..c4df3dc --- /dev/null +++ b/gb_studio_project/project/backgrounds/overworld_-_test_2.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "d22db4f6-751d-47d7-8b4c-bb88ff267f3f", + "name": "Overworld_-_Test_2", + "symbol": "bg_overworld_test_2", + "width": 80, + "height": 72, + "imageWidth": 640, + "imageHeight": 576, + "filename": "Overworld_-_Test_2.png", + "autoColor": true, + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/placeholder.gbsres b/gb_studio_project/project/backgrounds/placeholder.gbsres new file mode 100644 index 0000000..9215eaa --- /dev/null +++ b/gb_studio_project/project/backgrounds/placeholder.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "1e5f9d6a-bdbc-43e6-8c34-22f5bb5dea05", + "name": "placeholder", + "symbol": "bg_placeholder", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "placeholder.png", + "tileColors": "", + "autoColor": false +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/questscreen.gbsres b/gb_studio_project/project/backgrounds/questscreen.gbsres new file mode 100644 index 0000000..a0dbc42 --- /dev/null +++ b/gb_studio_project/project/backgrounds/questscreen.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "d7655417-bac8-45ed-91c6-8fd6ff87953d", + "name": "QuestScreen", + "symbol": "bg_questscreen", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "QuestScreen.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/questscreen.gbsres.bak b/gb_studio_project/project/backgrounds/questscreen.gbsres.bak new file mode 100644 index 0000000..f510776 --- /dev/null +++ b/gb_studio_project/project/backgrounds/questscreen.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "d7655417-bac8-45ed-91c6-8fd6ff87953d", + "name": "QuestScreen", + "symbol": "bg_questscreen", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "QuestScreen.png", + "autoColor": true, + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/rightfield.gbsres b/gb_studio_project/project/backgrounds/rightfield.gbsres new file mode 100644 index 0000000..ff6bcea --- /dev/null +++ b/gb_studio_project/project/backgrounds/rightfield.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "fdfb20ed-bf31-48aa-ab03-b338f5cd0316", + "name": "RightField", + "symbol": "bg_outside", + "width": 32, + "height": 32, + "imageWidth": 256, + "imageHeight": 256, + "filename": "RightField.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/slighhousef2.gbsres b/gb_studio_project/project/backgrounds/slighhousef2.gbsres new file mode 100644 index 0000000..4f2112d --- /dev/null +++ b/gb_studio_project/project/backgrounds/slighhousef2.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "56788473-c054-49ab-8d98-150179cbb80c", + "name": "SlighHousef2", + "symbol": "bg_slighhousef2", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "SlighHousef2.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/slighhousef2.gbsres.bak b/gb_studio_project/project/backgrounds/slighhousef2.gbsres.bak new file mode 100644 index 0000000..cba317a --- /dev/null +++ b/gb_studio_project/project/backgrounds/slighhousef2.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "56788473-c054-49ab-8d98-150179cbb80c", + "name": "SlighHousef2", + "symbol": "bg_slighhousef2", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "SlighHousef2.png", + "autoColor": true, + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/sprite-0003.gbsres b/gb_studio_project/project/backgrounds/sprite-0003.gbsres new file mode 100644 index 0000000..886688d --- /dev/null +++ b/gb_studio_project/project/backgrounds/sprite-0003.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "a42b4e27-7184-4e3d-8321-73f896504055", + "name": "Sprite-0003", + "symbol": "bg_sprite_0003", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "Sprite-0003.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/sprite-0003.gbsres.bak b/gb_studio_project/project/backgrounds/sprite-0003.gbsres.bak new file mode 100644 index 0000000..009e746 --- /dev/null +++ b/gb_studio_project/project/backgrounds/sprite-0003.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "a42b4e27-7184-4e3d-8321-73f896504055", + "name": "Sprite-0003", + "symbol": "bg_sprite_0003", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "Sprite-0003.png", + "autoColor": true, + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/titlescreen.gbsres b/gb_studio_project/project/backgrounds/titlescreen.gbsres new file mode 100644 index 0000000..4fd3dd5 --- /dev/null +++ b/gb_studio_project/project/backgrounds/titlescreen.gbsres @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "9e2cc3b5-1a7f-4842-94a4-1780840adf27", + "name": "titlescreen", + "symbol": "bg_titlescreen", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "titlescreen.png", + "tileColors": "", + "autoColor": true +} \ No newline at end of file diff --git a/gb_studio_project/project/backgrounds/titlescreen.gbsres.bak b/gb_studio_project/project/backgrounds/titlescreen.gbsres.bak new file mode 100644 index 0000000..3879a61 --- /dev/null +++ b/gb_studio_project/project/backgrounds/titlescreen.gbsres.bak @@ -0,0 +1,13 @@ +{ + "_resourceType": "background", + "id": "9e2cc3b5-1a7f-4842-94a4-1780840adf27", + "name": "titlescreen", + "symbol": "bg_titlescreen", + "width": 20, + "height": 18, + "imageWidth": 160, + "imageHeight": 144, + "filename": "titlescreen.png", + "autoColor": true, + "tileColors": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/emotes/anger.gbsres b/gb_studio_project/project/emotes/anger.gbsres new file mode 100644 index 0000000..829d49a --- /dev/null +++ b/gb_studio_project/project/emotes/anger.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "emote", + "id": "9df5f63f-ea47-447e-9b14-cb2dbafb697d", + "name": "anger", + "symbol": "emote_anger", + "width": 16, + "height": 16, + "filename": "anger.png" +} \ No newline at end of file diff --git a/gb_studio_project/project/emotes/love.gbsres b/gb_studio_project/project/emotes/love.gbsres new file mode 100644 index 0000000..05bb3db --- /dev/null +++ b/gb_studio_project/project/emotes/love.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "emote", + "id": "edf96d29-9a08-4813-b2d3-46e0996f89f2", + "name": "love", + "symbol": "emote_love", + "width": 16, + "height": 16, + "filename": "love.png" +} \ No newline at end of file diff --git a/gb_studio_project/project/emotes/music.gbsres b/gb_studio_project/project/emotes/music.gbsres new file mode 100644 index 0000000..c92ba3a --- /dev/null +++ b/gb_studio_project/project/emotes/music.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "emote", + "id": "f1be2ac3-04ab-482a-8b83-99ffba1a89cd", + "name": "music", + "symbol": "emote_music", + "width": 16, + "height": 16, + "filename": "music.png" +} \ No newline at end of file diff --git a/gb_studio_project/project/emotes/pause.gbsres b/gb_studio_project/project/emotes/pause.gbsres new file mode 100644 index 0000000..9e5e3fb --- /dev/null +++ b/gb_studio_project/project/emotes/pause.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "emote", + "id": "d508e529-57eb-458b-9782-66f318243c32", + "name": "pause", + "symbol": "emote_pause", + "width": 16, + "height": 16, + "filename": "pause.png" +} \ No newline at end of file diff --git a/gb_studio_project/project/emotes/question.gbsres b/gb_studio_project/project/emotes/question.gbsres new file mode 100644 index 0000000..27a6af4 --- /dev/null +++ b/gb_studio_project/project/emotes/question.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "emote", + "id": "70a4ce25-1fe4-4ab1-aee9-21255e70fb76", + "name": "question", + "symbol": "emote_question", + "width": 16, + "height": 16, + "filename": "question.png" +} \ No newline at end of file diff --git a/gb_studio_project/project/emotes/shock.gbsres b/gb_studio_project/project/emotes/shock.gbsres new file mode 100644 index 0000000..50cc0b1 --- /dev/null +++ b/gb_studio_project/project/emotes/shock.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "emote", + "id": "56423c9c-dca0-4f5b-ad92-28e9660d50f1", + "name": "shock", + "symbol": "emote_shock", + "width": 16, + "height": 16, + "filename": "shock.png" +} \ No newline at end of file diff --git a/gb_studio_project/project/emotes/sleep.gbsres b/gb_studio_project/project/emotes/sleep.gbsres new file mode 100644 index 0000000..5a4211a --- /dev/null +++ b/gb_studio_project/project/emotes/sleep.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "emote", + "id": "2d4b251d-0241-40eb-98e1-e396b236772c", + "name": "sleep", + "symbol": "emote_sleep", + "width": 16, + "height": 16, + "filename": "sleep.png" +} \ No newline at end of file diff --git a/gb_studio_project/project/emotes/sweat.gbsres b/gb_studio_project/project/emotes/sweat.gbsres new file mode 100644 index 0000000..ef828c3 --- /dev/null +++ b/gb_studio_project/project/emotes/sweat.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "emote", + "id": "3c769dca-51f3-426c-942f-71c4d3af6202", + "name": "sweat", + "symbol": "emote_sweat", + "width": 16, + "height": 16, + "filename": "sweat.png" +} \ No newline at end of file diff --git a/gb_studio_project/project/engine_field_values.gbsres b/gb_studio_project/project/engine_field_values.gbsres new file mode 100644 index 0000000..982a852 --- /dev/null +++ b/gb_studio_project/project/engine_field_values.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "engineFieldValues", + "engineFieldValues": [ + { + "id": "fade_style", + "value": 0 + } + ] +} \ No newline at end of file diff --git a/gb_studio_project/project/fonts/gbs_mono.gbsres b/gb_studio_project/project/fonts/gbs_mono.gbsres new file mode 100644 index 0000000..9939247 --- /dev/null +++ b/gb_studio_project/project/fonts/gbs_mono.gbsres @@ -0,0 +1,10 @@ +{ + "_resourceType": "font", + "id": "4bd653f0-e08d-424e-9e5b-c1f3aaa21e47", + "name": "GBS Mono", + "symbol": "font_gbs_mono", + "width": 128, + "height": 112, + "filename": "gbs-mono.png", + "mapping": {} +} \ No newline at end of file diff --git a/gb_studio_project/project/fonts/gbs_variable_width.gbsres b/gb_studio_project/project/fonts/gbs_variable_width.gbsres new file mode 100644 index 0000000..8e263d4 --- /dev/null +++ b/gb_studio_project/project/fonts/gbs_variable_width.gbsres @@ -0,0 +1,10 @@ +{ + "_resourceType": "font", + "id": "8ed435d9-51cb-44e7-8b0d-ca85e63ca427", + "name": "GBS Variable Width", + "symbol": "font_gbs_variable_width", + "width": 128, + "height": 112, + "filename": "gbs-var.png", + "mapping": {} +} \ No newline at end of file diff --git a/gb_studio_project/project/fonts/housef2.gbsres b/gb_studio_project/project/fonts/housef2.gbsres new file mode 100644 index 0000000..0b35018 --- /dev/null +++ b/gb_studio_project/project/fonts/housef2.gbsres @@ -0,0 +1,10 @@ +{ + "_resourceType": "font", + "id": "07b7d4b0-4456-4ef8-9386-bda0caaf6c28", + "name": "housef2", + "symbol": "font_housef2", + "width": 128, + "height": 96, + "filename": "housef2.png", + "mapping": {} +} \ No newline at end of file diff --git a/gb_studio_project/project/fonts/sprite-0003.gbsres b/gb_studio_project/project/fonts/sprite-0003.gbsres new file mode 100644 index 0000000..7510ba1 --- /dev/null +++ b/gb_studio_project/project/fonts/sprite-0003.gbsres @@ -0,0 +1,10 @@ +{ + "_resourceType": "font", + "id": "41aefdeb-dd64-4679-99da-5c2125956b9c", + "name": "Sprite-0003", + "symbol": "font_sprite_0003", + "width": 128, + "height": 96, + "filename": "Sprite-0003.png", + "mapping": {} +} \ No newline at end of file diff --git a/gb_studio_project/project/music/rulz_lightmood.gbsres b/gb_studio_project/project/music/rulz_lightmood.gbsres new file mode 100644 index 0000000..eeae99b --- /dev/null +++ b/gb_studio_project/project/music/rulz_lightmood.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "music", + "id": "e02b35ec-bce2-44c5-8535-8b48a1c89513", + "name": "Rulz_LightMood", + "symbol": "song_rulz_lightmood", + "filename": "Rulz_LightMood.uge", + "settings": {}, + "type": "uge" +} \ No newline at end of file diff --git a/gb_studio_project/project/music/rulz_outside.gbsres b/gb_studio_project/project/music/rulz_outside.gbsres new file mode 100644 index 0000000..a57b905 --- /dev/null +++ b/gb_studio_project/project/music/rulz_outside.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "music", + "id": "d33e94eb-92f4-4488-82c8-dd4d5bfe9cfe", + "name": "Rulz_Outside", + "symbol": "song_rulz_outside_0", + "filename": "Rulz_Outside.uge", + "settings": {}, + "type": "uge" +} \ No newline at end of file diff --git a/gb_studio_project/project/music/rulz_outside.gbsres.bak b/gb_studio_project/project/music/rulz_outside.gbsres.bak new file mode 100644 index 0000000..2a3edcc --- /dev/null +++ b/gb_studio_project/project/music/rulz_outside.gbsres.bak @@ -0,0 +1,9 @@ +{ + "_resourceType": "music", + "id": "8e437709-0370-4c6d-b938-a7a8cf171fd6", + "name": "Rulz_Outside", + "symbol": "song_rulz_outside", + "filename": "Rulz_Outside.mod", + "settings": {}, + "type": "mod" +} \ No newline at end of file diff --git a/gb_studio_project/project/music/rulz_spaceemergency.gbsres b/gb_studio_project/project/music/rulz_spaceemergency.gbsres new file mode 100644 index 0000000..d5bd098 --- /dev/null +++ b/gb_studio_project/project/music/rulz_spaceemergency.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "music", + "id": "bf915e5f-eb15-403e-9943-f235f0b76aee", + "name": "Rulz_SpaceEmergency", + "symbol": "song_rulz_spaceemergency", + "filename": "Rulz_SpaceEmergency.mod", + "settings": {}, + "type": "mod" +} \ No newline at end of file diff --git a/gb_studio_project/project/music/rulz_spaceemergency_2.gbsres b/gb_studio_project/project/music/rulz_spaceemergency_2.gbsres new file mode 100644 index 0000000..2a69155 --- /dev/null +++ b/gb_studio_project/project/music/rulz_spaceemergency_2.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "music", + "id": "13074967-afce-4755-bc1c-85a9a37a1f57", + "name": "Rulz_SpaceEmergency", + "symbol": "song_rulz_spaceemergency_0", + "filename": "Rulz_SpaceEmergency.uge", + "settings": {}, + "type": "uge" +} \ No newline at end of file diff --git a/gb_studio_project/project/music/rulz_undergroundcave.gbsres b/gb_studio_project/project/music/rulz_undergroundcave.gbsres new file mode 100644 index 0000000..79be0c8 --- /dev/null +++ b/gb_studio_project/project/music/rulz_undergroundcave.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "music", + "id": "b7025dea-8e0d-4166-986b-522435fc1578", + "name": "Rulz_UndergroundCave", + "symbol": "song_rulz_undergroundcave", + "filename": "Rulz_UndergroundCave.uge", + "settings": {}, + "type": "uge" +} \ No newline at end of file diff --git a/gb_studio_project/project/music/template.gbsres b/gb_studio_project/project/music/template.gbsres new file mode 100644 index 0000000..0ffe876 --- /dev/null +++ b/gb_studio_project/project/music/template.gbsres @@ -0,0 +1,9 @@ +{ + "_resourceType": "music", + "id": "f50428ab-a084-4591-9bba-2ba10fe7b1c6", + "name": "template", + "symbol": "song_template", + "filename": "template.mod", + "settings": {}, + "type": "mod" +} \ No newline at end of file diff --git a/gb_studio_project/project/palettes/default_bg_1.gbsres b/gb_studio_project/project/palettes/default_bg_1.gbsres new file mode 100644 index 0000000..ca52a75 --- /dev/null +++ b/gb_studio_project/project/palettes/default_bg_1.gbsres @@ -0,0 +1,18 @@ +{ + "_resourceType": "palette", + "id": "default-bg-1", + "name": "Default BG 1", + "colors": [ + "F8E8C8", + "D89048", + "A82820", + "301850" + ], + "defaultName": "Default BG 1", + "defaultColors": [ + "F8E8C8", + "D89048", + "A82820", + "301850" + ] +} \ No newline at end of file diff --git a/gb_studio_project/project/palettes/default_bg_2.gbsres b/gb_studio_project/project/palettes/default_bg_2.gbsres new file mode 100644 index 0000000..e0f2510 --- /dev/null +++ b/gb_studio_project/project/palettes/default_bg_2.gbsres @@ -0,0 +1,18 @@ +{ + "_resourceType": "palette", + "id": "default-bg-2", + "name": "Default BG 2", + "colors": [ + "E0F8A0", + "78C838", + "488818", + "081800" + ], + "defaultName": "Default BG 2", + "defaultColors": [ + "E0F8A0", + "78C838", + "488818", + "081800" + ] +} \ No newline at end of file diff --git a/gb_studio_project/project/palettes/default_bg_3.gbsres b/gb_studio_project/project/palettes/default_bg_3.gbsres new file mode 100644 index 0000000..b867da5 --- /dev/null +++ b/gb_studio_project/project/palettes/default_bg_3.gbsres @@ -0,0 +1,18 @@ +{ + "_resourceType": "palette", + "id": "default-bg-3", + "name": "Default BG 3", + "colors": [ + "F8D8A8", + "E0A878", + "785888", + "002030" + ], + "defaultName": "Default BG 3", + "defaultColors": [ + "F8D8A8", + "E0A878", + "785888", + "002030" + ] +} \ No newline at end of file diff --git a/gb_studio_project/project/palettes/default_bg_4.gbsres b/gb_studio_project/project/palettes/default_bg_4.gbsres new file mode 100644 index 0000000..487d1f3 --- /dev/null +++ b/gb_studio_project/project/palettes/default_bg_4.gbsres @@ -0,0 +1,18 @@ +{ + "_resourceType": "palette", + "id": "default-bg-4", + "name": "Default BG 4", + "colors": [ + "B8D0D0", + "D880D8", + "8000A0", + "380000" + ], + "defaultName": "Default BG 4", + "defaultColors": [ + "B8D0D0", + "D880D8", + "8000A0", + "380000" + ] +} \ No newline at end of file diff --git a/gb_studio_project/project/palettes/default_bg_5.gbsres b/gb_studio_project/project/palettes/default_bg_5.gbsres new file mode 100644 index 0000000..6aac9d6 --- /dev/null +++ b/gb_studio_project/project/palettes/default_bg_5.gbsres @@ -0,0 +1,18 @@ +{ + "_resourceType": "palette", + "id": "default-bg-5", + "name": "Default BG 5", + "colors": [ + "F8F8B8", + "90C8C8", + "486878", + "082048" + ], + "defaultName": "Default BG 5", + "defaultColors": [ + "F8F8B8", + "90C8C8", + "486878", + "082048" + ] +} \ No newline at end of file diff --git a/gb_studio_project/project/palettes/default_bg_6.gbsres b/gb_studio_project/project/palettes/default_bg_6.gbsres new file mode 100644 index 0000000..5f6276b --- /dev/null +++ b/gb_studio_project/project/palettes/default_bg_6.gbsres @@ -0,0 +1,18 @@ +{ + "_resourceType": "palette", + "id": "default-bg-6", + "name": "Default BG 6", + "colors": [ + "F8D8B0", + "78C078", + "688840", + "583820" + ], + "defaultName": "Default BG 6", + "defaultColors": [ + "F8D8B0", + "78C078", + "688840", + "583820" + ] +} \ No newline at end of file diff --git a/gb_studio_project/project/palettes/default_sprites.gbsres b/gb_studio_project/project/palettes/default_sprites.gbsres new file mode 100644 index 0000000..79a2853 --- /dev/null +++ b/gb_studio_project/project/palettes/default_sprites.gbsres @@ -0,0 +1,18 @@ +{ + "_resourceType": "palette", + "id": "default-sprite", + "name": "Default Sprites", + "colors": [ + "F8F0E0", + "D88078", + "B05010", + "000000" + ], + "defaultName": "Default Sprites", + "defaultColors": [ + "F8F0E0", + "D88078", + "B05010", + "000000" + ] +} \ No newline at end of file diff --git a/gb_studio_project/project/palettes/default_ui.gbsres b/gb_studio_project/project/palettes/default_ui.gbsres new file mode 100644 index 0000000..6ac12ee --- /dev/null +++ b/gb_studio_project/project/palettes/default_ui.gbsres @@ -0,0 +1,18 @@ +{ + "_resourceType": "palette", + "id": "default-ui", + "name": "Default UI", + "colors": [ + "F8F8B8", + "90C8C8", + "486878", + "082048" + ], + "defaultName": "Default UI", + "defaultColors": [ + "F8F8B8", + "90C8C8", + "486878", + "082048" + ] +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/basement/actors/actor.gbsres.bak b/gb_studio_project/project/scenes/basement/actors/actor.gbsres.bak new file mode 100644 index 0000000..1d22de5 --- /dev/null +++ b/gb_studio_project/project/scenes/basement/actors/actor.gbsres.bak @@ -0,0 +1,27 @@ +{ + "_resourceType": "actor", + "id": "3fe18ce7-545b-4017-918a-f3c1e9bb22be", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "daae93f5-6c54-4f0d-8840-1e6a786836a6", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_5", + "script": [], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 5, + "y": 5, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/basement/actors/fate6.gbsres b/gb_studio_project/project/scenes/basement/actors/fate6.gbsres new file mode 100644 index 0000000..a7abc41 --- /dev/null +++ b/gb_studio_project/project/scenes/basement/actors/fate6.gbsres @@ -0,0 +1,81 @@ +{ + "_resourceType": "actor", + "id": "3fe18ce7-545b-4017-918a-f3c1e9bb22be", + "name": "fate6", + "frame": 0, + "animate": false, + "spriteSheetId": "1498b449-4b4d-4ed1-9f78-bc18dc672253", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_5", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "I got locked in\nhere", + "while looking for\nthe radon :(" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "f32bb834-59fd-4f0d-9df4-f914646f36f7" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "5", + "value": { + "type": "true" + } + }, + "id": "0b32cb13-5560-45a7-87a2-007250d8fbd7" + }, + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "59d0b5cf-e06d-4bd5-842d-53db6061f1e9", + "x": { + "type": "number", + "value": 0 + }, + "y": { + "type": "number", + "value": 0 + }, + "direction": "", + "fadeSpeed": 4 + }, + "id": "19fb6aa5-c36d-44fb-b6ca-3d643cb8e15b" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 9, + "y": 7, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/basement/actors/fate6.gbsres.bak b/gb_studio_project/project/scenes/basement/actors/fate6.gbsres.bak new file mode 100644 index 0000000..cea93e5 --- /dev/null +++ b/gb_studio_project/project/scenes/basement/actors/fate6.gbsres.bak @@ -0,0 +1,64 @@ +{ + "_resourceType": "actor", + "id": "3fe18ce7-545b-4017-918a-f3c1e9bb22be", + "name": "fate6", + "frame": 0, + "animate": false, + "spriteSheetId": "1498b449-4b4d-4ed1-9f78-bc18dc672253", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_5", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "I got locked in\nhere", + "while looking for\nthe radon :(" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "f32bb834-59fd-4f0d-9df4-f914646f36f7" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "5", + "value": { + "type": "true" + } + }, + "id": "0b32cb13-5560-45a7-87a2-007250d8fbd7" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 9, + "y": 7, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/basement/scene.gbsres b/gb_studio_project/project/scenes/basement/scene.gbsres new file mode 100644 index 0000000..4413996 --- /dev/null +++ b/gb_studio_project/project/scenes/basement/scene.gbsres @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "ad0d9790-0584-4c0f-b00b-0028b4fc3de9", + "_index": 4, + "name": "Basement", + "backgroundId": "cd7064f5-abb5-4869-9dc8-c76b4f198a52", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f52+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0fb+002+0f12+002+0f9+", + "autoFadeSpeed": 1, + "symbol": "scene_5", + "x": 1728, + "y": 848, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "94e5b63b-0b3b-4f29-8ce4-098f4936c039" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "b7025dea-8e0d-4166-986b-522435fc1578" + }, + "id": "d9181b4d-e7be-4bdc-9a84-06ab08198ebf" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/basement/scene.gbsres.bak b/gb_studio_project/project/scenes/basement/scene.gbsres.bak new file mode 100644 index 0000000..80e50c8 --- /dev/null +++ b/gb_studio_project/project/scenes/basement/scene.gbsres.bak @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "ad0d9790-0584-4c0f-b00b-0028b4fc3de9", + "_index": 4, + "name": "Basement", + "backgroundId": "cd7064f5-abb5-4869-9dc8-c76b4f198a52", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f52+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0fb+002+0f12+002+0f9+", + "autoFadeSpeed": 1, + "symbol": "scene_5", + "x": 1728, + "y": 848, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "94e5b63b-0b3b-4f29-8ce4-098f4936c039" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "b7025dea-8e0d-4166-986b-522435fc1578" + }, + "id": "d9181b4d-e7be-4bdc-9a84-06ab08198ebf" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/basement/triggers/trigger.gbsres b/gb_studio_project/project/scenes/basement/triggers/trigger.gbsres new file mode 100644 index 0000000..e76674d --- /dev/null +++ b/gb_studio_project/project/scenes/basement/triggers/trigger.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "f962e327-a798-4886-959b-ee0d77260892", + "name": "", + "prefabId": "", + "x": 9, + "y": 17, + "symbol": "trigger_8", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 76 + }, + "y": { + "type": "number", + "value": 45 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "f5798465-77f4-4c17-9c4d-f8bc2505ee7c" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/basement/triggers/trigger.gbsres.bak b/gb_studio_project/project/scenes/basement/triggers/trigger.gbsres.bak new file mode 100644 index 0000000..6f8cdbf --- /dev/null +++ b/gb_studio_project/project/scenes/basement/triggers/trigger.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "f962e327-a798-4886-959b-ee0d77260892", + "name": "", + "prefabId": "", + "x": 9, + "y": 17, + "symbol": "trigger_8", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 74 + }, + "y": { + "type": "number", + "value": 45 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "f5798465-77f4-4c17-9c4d-f8bc2505ee7c" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/endscreen/scene.gbsres b/gb_studio_project/project/scenes/endscreen/scene.gbsres new file mode 100644 index 0000000..d18d308 --- /dev/null +++ b/gb_studio_project/project/scenes/endscreen/scene.gbsres @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "59d0b5cf-e06d-4bd5-842d-53db6061f1e9", + "_index": 15, + "name": "EndScreen", + "backgroundId": "2a791a06-b420-45ed-b56e-80f3e22bfab4", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "", + "autoFadeSpeed": 1, + "symbol": "scene_16", + "x": 2009, + "y": 794, + "script": [ + { + "command": "EVENT_ACTOR_DEACTIVATE", + "args": { + "actorId": "$self$" + }, + "id": "044790ae-56ab-4675-9bf6-75abcb3c62a7" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "13074967-afce-4755-bc1c-85a9a37a1f57" + }, + "id": "278aa91b-0725-4191-b768-1599d86a7462" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/endscreen/scene.gbsres.bak b/gb_studio_project/project/scenes/endscreen/scene.gbsres.bak new file mode 100644 index 0000000..4a873ab --- /dev/null +++ b/gb_studio_project/project/scenes/endscreen/scene.gbsres.bak @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "59d0b5cf-e06d-4bd5-842d-53db6061f1e9", + "_index": 15, + "name": "EndScreen", + "backgroundId": "2a791a06-b420-45ed-b56e-80f3e22bfab4", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "", + "autoFadeSpeed": 1, + "symbol": "scene_16", + "x": 2009, + "y": 794, + "script": [ + { + "command": "EVENT_ACTOR_DEACTIVATE", + "args": { + "actorId": "$self$" + }, + "id": "044790ae-56ab-4675-9bf6-75abcb3c62a7" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "13074967-afce-4755-bc1c-85a9a37a1f57" + }, + "id": "278aa91b-0725-4191-b768-1599d86a7462" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/fate6house/actors/actor.gbsres.bak b/gb_studio_project/project/scenes/fate6house/actors/actor.gbsres.bak new file mode 100644 index 0000000..8bfbbd0 --- /dev/null +++ b/gb_studio_project/project/scenes/fate6house/actors/actor.gbsres.bak @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "d00aa658-d2d7-47ff-8c12-ccc2efe4477f", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "1498b449-4b4d-4ed1-9f78-bc18dc672253", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_2", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "=^.^=" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "a", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "ac9cda3e-f387-47ca-96d6-8b9ded11c067" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 15, + "y": 8, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/fate6house/actors/eevee.gbsres b/gb_studio_project/project/scenes/fate6house/actors/eevee.gbsres new file mode 100644 index 0000000..1338c08 --- /dev/null +++ b/gb_studio_project/project/scenes/fate6house/actors/eevee.gbsres @@ -0,0 +1,117 @@ +{ + "_resourceType": "actor", + "id": "d00aa658-d2d7-47ff-8c12-ccc2efe4477f", + "name": "Eevee", + "frame": 0, + "animate": false, + "spriteSheetId": "1498b449-4b4d-4ed1-9f78-bc18dc672253", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_2", + "script": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "6" + }, + "__collapseElse": false + }, + "children": { + "true": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Meow Meow!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "cc3a5ed3-8c94-45cd-923e-22def1450b4a" + } + ], + "false": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "fate6 isn't here \nright meow.", + "Kuma was looking \nfor you over by", + "the park on the\nwest side of town." + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "ad1b9670-0b38-41f6-836d-d66428234134" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "1", + "value": { + "type": "true" + } + }, + "id": "4783a794-d82b-42f1-acba-028785e24292" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "8", + "value": { + "type": "false" + } + }, + "id": "b4a8e402-8c4a-41c6-b963-b2e41920e625" + } + ] + }, + "id": "049a13b7-6749-46ce-85c9-113f1025d94a" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 14, + "y": 8, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/fate6house/actors/eevee.gbsres.bak b/gb_studio_project/project/scenes/fate6house/actors/eevee.gbsres.bak new file mode 100644 index 0000000..182b4ba --- /dev/null +++ b/gb_studio_project/project/scenes/fate6house/actors/eevee.gbsres.bak @@ -0,0 +1,107 @@ +{ + "_resourceType": "actor", + "id": "d00aa658-d2d7-47ff-8c12-ccc2efe4477f", + "name": "Eevee", + "frame": 0, + "animate": false, + "spriteSheetId": "1498b449-4b4d-4ed1-9f78-bc18dc672253", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_2", + "script": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "6" + }, + "__collapseElse": false + }, + "children": { + "true": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Meow Meow!" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "cc3a5ed3-8c94-45cd-923e-22def1450b4a" + } + ], + "false": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "fate6 isn't here \nright meow.", + "Kuma was looking \nfor you over by", + "the park on the\nwest side of town." + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "ad1b9670-0b38-41f6-836d-d66428234134" + } + ] + }, + "id": "049a13b7-6749-46ce-85c9-113f1025d94a" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "1", + "value": { + "type": "true" + } + }, + "id": "4783a794-d82b-42f1-acba-028785e24292" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 14, + "y": 8, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/fate6house/scene.gbsres b/gb_studio_project/project/scenes/fate6house/scene.gbsres new file mode 100644 index 0000000..0f73aae --- /dev/null +++ b/gb_studio_project/project/scenes/fate6house/scene.gbsres @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "921aae93-e5d5-4664-b838-f38008dd14a7", + "_index": 1, + "name": "fate6House", + "backgroundId": "1a99f516-7544-478a-b05c-2e2fd72feb61", + "tilesetId": "", + "width": 32, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f1a+002+0f1e+002+0f10+001a+0f2+001e+0f2+001e+0f2+001e+0f2+002+0f4+001c+0f4+001c+0f4+00132+", + "autoFadeSpeed": 1, + "symbol": "scene_2", + "x": 1048, + "y": 280, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "7f8cfc5c-64c4-45f9-a36f-d226ab2c3501" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "139e6760-d53c-45a4-8b03-8c7feed79266" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/fate6house/scene.gbsres.bak b/gb_studio_project/project/scenes/fate6house/scene.gbsres.bak new file mode 100644 index 0000000..04250ca --- /dev/null +++ b/gb_studio_project/project/scenes/fate6house/scene.gbsres.bak @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "921aae93-e5d5-4664-b838-f38008dd14a7", + "_index": 1, + "name": "fate6House", + "backgroundId": "1a99f516-7544-478a-b05c-2e2fd72feb61", + "tilesetId": "", + "width": 32, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f1a+002+0f1e+002+0f10+001a+0f2+001e+0f2+001e+0f2+001e+0f2+002+0f4+001c+0f4+001c+0f4+00132+", + "autoFadeSpeed": 1, + "symbol": "scene_2", + "x": 1048, + "y": 280, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "7f8cfc5c-64c4-45f9-a36f-d226ab2c3501" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "139e6760-d53c-45a4-8b03-8c7feed79266" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/fate6house/triggers/trigger.gbsres b/gb_studio_project/project/scenes/fate6house/triggers/trigger.gbsres new file mode 100644 index 0000000..e796ee1 --- /dev/null +++ b/gb_studio_project/project/scenes/fate6house/triggers/trigger.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "d52f5d2f-32d9-4942-8b61-95a5354715b5", + "name": "", + "prefabId": "", + "x": 24, + "y": 17, + "symbol": "trigger_1", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 52 + }, + "y": { + "type": "number", + "value": 13 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "0fa8d5be-cc09-4c6f-b077-61b0f65f0359" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/fate6house/triggers/trigger.gbsres.bak b/gb_studio_project/project/scenes/fate6house/triggers/trigger.gbsres.bak new file mode 100644 index 0000000..d64d4a5 --- /dev/null +++ b/gb_studio_project/project/scenes/fate6house/triggers/trigger.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "d52f5d2f-32d9-4942-8b61-95a5354715b5", + "name": "", + "prefabId": "", + "x": 9, + "y": 15, + "symbol": "trigger_1", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 52 + }, + "y": { + "type": "number", + "value": 13 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "0fa8d5be-cc09-4c6f-b077-61b0f65f0359" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/fate6house/triggers/trigger_2.gbsres b/gb_studio_project/project/scenes/fate6house/triggers/trigger_2.gbsres new file mode 100644 index 0000000..eebddf2 --- /dev/null +++ b/gb_studio_project/project/scenes/fate6house/triggers/trigger_2.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "3fb2ff62-e326-4610-a5b8-29c96f93c3a7", + "name": "", + "prefabId": "", + "x": 26, + "y": 1, + "symbol": "trigger_17", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "9722df94-3365-4fbe-92c2-788910f2c07e", + "x": { + "type": "number", + "value": 14 + }, + "y": { + "type": "number", + "value": 3 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "6ebaa0e6-1498-46b4-9391-ff6146b9ffbe" + } + ], + "leaveScript": [], + "_index": 1 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/fate6housef2/scene.gbsres b/gb_studio_project/project/scenes/fate6housef2/scene.gbsres new file mode 100644 index 0000000..abc6d23 --- /dev/null +++ b/gb_studio_project/project/scenes/fate6housef2/scene.gbsres @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "9722df94-3365-4fbe-92c2-788910f2c07e", + "_index": 8, + "name": "fate6HouseF2", + "backgroundId": "660ff43c-0d70-40d4-be66-c5045596457f", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0fe+002+0f12+002+0f4+002+0fa+004+0f4+002+0f6+0064+0f4+008+0f2+006+0f4+008+0f2+0012+0f2+008a+", + "autoFadeSpeed": 1, + "symbol": "scene_9", + "x": 1208, + "y": 112, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "eb25df35-0d3a-4e0a-898c-5972c5ee0d70" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "e1f0c0ed-24f8-46f6-9f21-6e0c2cdae7d4" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/fate6housef2/scene.gbsres.bak b/gb_studio_project/project/scenes/fate6housef2/scene.gbsres.bak new file mode 100644 index 0000000..789793a --- /dev/null +++ b/gb_studio_project/project/scenes/fate6housef2/scene.gbsres.bak @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "9722df94-3365-4fbe-92c2-788910f2c07e", + "_index": 8, + "name": "fate6HouseF2", + "backgroundId": "660ff43c-0d70-40d4-be66-c5045596457f", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0fe+002+0f12+002+0f4+002+0fa+004+0f4+002+0f6+0064+0f4+008+0f2+006+0f4+008+0f2+0012+0f2+008a+", + "autoFadeSpeed": 1, + "symbol": "scene_9", + "x": 1208, + "y": 112, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "eb25df35-0d3a-4e0a-898c-5972c5ee0d70" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "e1f0c0ed-24f8-46f6-9f21-6e0c2cdae7d4" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/fate6housef2/triggers/trigger.gbsres b/gb_studio_project/project/scenes/fate6housef2/triggers/trigger.gbsres new file mode 100644 index 0000000..aeb23d3 --- /dev/null +++ b/gb_studio_project/project/scenes/fate6housef2/triggers/trigger.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "9f2f5e6a-98dd-442a-a531-011471d48507", + "name": "", + "prefabId": "", + "x": 14, + "y": 1, + "symbol": "trigger_18", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "921aae93-e5d5-4664-b838-f38008dd14a7", + "x": { + "type": "number", + "value": 26 + }, + "y": { + "type": "number", + "value": 3 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "4466f80e-05b6-4e01-8b77-6b3abbf8b937" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/field/actors/mob1.gbsres.bak b/gb_studio_project/project/scenes/field/actors/mob1.gbsres.bak new file mode 100644 index 0000000..7e6ae6c --- /dev/null +++ b/gb_studio_project/project/scenes/field/actors/mob1.gbsres.bak @@ -0,0 +1,27 @@ +{ + "_resourceType": "actor", + "id": "20fa1121-611f-45ab-9493-a1a974cd8b01", + "name": "mob1", + "frame": 0, + "animate": false, + "spriteSheetId": "30993594-6bce-4263-97c6-1a686ab0f30b", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_21", + "script": [], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 19, + "y": 12, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/field/scene.gbsres.bak b/gb_studio_project/project/scenes/field/scene.gbsres.bak new file mode 100644 index 0000000..87df9bb --- /dev/null +++ b/gb_studio_project/project/scenes/field/scene.gbsres.bak @@ -0,0 +1,67 @@ +{ + "_resourceType": "scene", + "id": "a1bfb5e1-0f44-49f4-8c94-62e2ab871548", + "_index": 16, + "name": "Field", + "backgroundId": "fdfb20ed-bf31-48aa-ab03-b338f5cd0316", + "tilesetId": "", + "width": 32, + "height": 32, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f42+00a+0f8+00a+0f4+00a+0f8+00a+0f4+00a+0f8+00a+0f4+00a+0f2+002+0f4+00a+0f4+001c+0f4+001c+0f4+001c+0f4+001c+0f4+001c+0f4+001c+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f2+001e+0f2+001e+0f2+001e+0f2+001e+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f42+", + "autoFadeSpeed": 1, + "symbol": "scene_17", + "x": 2248, + "y": 608, + "script": [ + { + "command": "EVENT_SET_INPUT_SCRIPT", + "args": { + "input": [ + "b" + ], + "override": true, + "__scriptTabs": "press" + }, + "children": { + "true": [ + { + "command": "EVENT_LAUNCH_PROJECTILE", + "args": { + "__section": "projectile", + "spriteSheetId": "29728119-eee6-441f-b5a3-c876473fe68d", + "spriteStateId": "", + "actorId": "$self$", + "x": 0, + "y": 0, + "directionType": "direction", + "otherActorId": "$self$", + "direction": "right", + "angle": 0, + "angleVariable": "L0", + "targetActorId": "$self$", + "initialOffset": 0, + "speed": 2, + "animSpeed": 15, + "lifeTime": 1, + "loopAnim": true, + "destroyOnHit": true, + "collisionGroup": "3", + "collisionMask": [ + "1" + ] + }, + "id": "711145e8-a8dd-4e05-b64d-7878bc38604f" + } + ] + }, + "id": "3410b154-9bf8-4dce-ad64-1a05a50dc2cd" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/field/triggers/trigger.gbsres.bak b/gb_studio_project/project/scenes/field/triggers/trigger.gbsres.bak new file mode 100644 index 0000000..eb9dafc --- /dev/null +++ b/gb_studio_project/project/scenes/field/triggers/trigger.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "e905907d-76a4-456f-ae59-daef84155f98", + "name": "", + "prefabId": "", + "x": 0, + "y": 20, + "symbol": "trigger_24", + "prefabScriptOverrides": {}, + "width": 1, + "height": 3, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "a1bfb5e1-0f44-49f4-8c94-62e2ab871548", + "x": { + "type": "number", + "value": 5 + }, + "y": { + "type": "number", + "value": 21 + }, + "direction": "left", + "fadeSpeed": "2" + }, + "id": "f182511b-0cf9-4336-83bf-25036acbd726" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/gunfield/actors/mob1.gbsres b/gb_studio_project/project/scenes/gunfield/actors/mob1.gbsres new file mode 100644 index 0000000..ea4f98e --- /dev/null +++ b/gb_studio_project/project/scenes/gunfield/actors/mob1.gbsres @@ -0,0 +1,62 @@ +{ + "_resourceType": "actor", + "id": "20fa1121-611f-45ab-9493-a1a974cd8b01", + "name": "mob1", + "frame": 0, + "animate": false, + "spriteSheetId": "30993594-6bce-4263-97c6-1a686ab0f30b", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "1", + "prefabScriptOverrides": {}, + "symbol": "actor_21", + "script": [], + "startScript": [], + "updateScript": [], + "hit1Script": [ + { + "command": "EVENT_ACTOR_PUSH", + "args": { + "continue": true + }, + "id": "bb7f8a71-c6a4-4df8-9f6a-9ccdcfbf1dd6" + }, + { + "command": "EVENT_SOUND_PLAY_EFFECT", + "args": { + "type": "crash", + "priority": "medium", + "pitch": 4, + "frequency": 200, + "duration": 0.5, + "wait": true, + "effect": 0 + }, + "id": "b2f882a9-c2a3-4f1a-933d-84f82ed54d7a" + }, + { + "command": "EVENT_ACTOR_HIDE", + "args": { + "actorId": "$self$" + }, + "id": "46615f68-ae7b-4210-a84b-4ec56993337f" + }, + { + "command": "EVENT_ACTOR_DEACTIVATE", + "args": { + "actorId": "$self$" + }, + "id": "10aae831-744a-4a41-aba7-762539022aa5" + } + ], + "hit2Script": [], + "hit3Script": [], + "x": 23, + "y": 11, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/gunfield/actors/mob1.gbsres.bak b/gb_studio_project/project/scenes/gunfield/actors/mob1.gbsres.bak new file mode 100644 index 0000000..667fbbc --- /dev/null +++ b/gb_studio_project/project/scenes/gunfield/actors/mob1.gbsres.bak @@ -0,0 +1,42 @@ +{ + "_resourceType": "actor", + "id": "20fa1121-611f-45ab-9493-a1a974cd8b01", + "name": "mob1", + "frame": 0, + "animate": false, + "spriteSheetId": "30993594-6bce-4263-97c6-1a686ab0f30b", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "1", + "prefabScriptOverrides": {}, + "symbol": "actor_21", + "script": [], + "startScript": [], + "updateScript": [], + "hit1Script": [ + { + "command": "EVENT_ACTOR_HIDE", + "args": { + "actorId": "$self$" + }, + "id": "46615f68-ae7b-4210-a84b-4ec56993337f" + }, + { + "command": "EVENT_ACTOR_DEACTIVATE", + "args": { + "actorId": "$self$" + }, + "id": "10aae831-744a-4a41-aba7-762539022aa5" + } + ], + "hit2Script": [], + "hit3Script": [], + "x": 23, + "y": 11, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/gunfield/scene.gbsres b/gb_studio_project/project/scenes/gunfield/scene.gbsres new file mode 100644 index 0000000..e9ebf23 --- /dev/null +++ b/gb_studio_project/project/scenes/gunfield/scene.gbsres @@ -0,0 +1,81 @@ +{ + "_resourceType": "scene", + "id": "a1bfb5e1-0f44-49f4-8c94-62e2ab871548", + "_index": 16, + "name": "GunField", + "backgroundId": "fdfb20ed-bf31-48aa-ab03-b338f5cd0316", + "tilesetId": "", + "width": 32, + "height": 32, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f42+00a+0f8+00a+0f4+00a+0f8+00a+0f4+00a+0f8+00a+0f4+00a+0f2+002+0f4+00a+0f4+001c+0f4+001c+0f4+001c+0f4+001c+0f4+001c+0f4+001c+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f2+001e+0f2+001e+0f2+001e+0f2+001e+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f6+001a+0f42+", + "autoFadeSpeed": 1, + "symbol": "scene_17", + "x": 2256, + "y": 600, + "script": [ + { + "command": "EVENT_SET_INPUT_SCRIPT", + "args": { + "input": [ + "b" + ], + "override": true, + "__scriptTabs": "press" + }, + "children": { + "true": [ + { + "command": "EVENT_LAUNCH_PROJECTILE", + "args": { + "__section": "projectile", + "spriteSheetId": "29728119-eee6-441f-b5a3-c876473fe68d", + "spriteStateId": "", + "actorId": "$self$", + "x": 0, + "y": 0, + "directionType": "actor", + "otherActorId": "player", + "direction": "right", + "angle": 0, + "angleVariable": "L0", + "targetActorId": "$self$", + "initialOffset": 0, + "speed": 2, + "animSpeed": 15, + "lifeTime": 1, + "loopAnim": true, + "destroyOnHit": true, + "collisionGroup": "1", + "collisionMask": [ + "1" + ] + }, + "id": "711145e8-a8dd-4e05-b64d-7878bc38604f" + }, + { + "command": "EVENT_SOUND_PLAY_EFFECT", + "args": { + "type": "beep", + "priority": "medium", + "pitch": 4, + "frequency": 200, + "duration": 0.4, + "wait": true, + "effect": 0 + }, + "id": "dc209cfa-a270-4e35-88dd-278c0eb2e5e4" + } + ] + }, + "id": "3410b154-9bf8-4dce-ad64-1a05a50dc2cd" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385", + "labelColor": "" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/gunfield/triggers/trigger.gbsres b/gb_studio_project/project/scenes/gunfield/triggers/trigger.gbsres new file mode 100644 index 0000000..65975bf --- /dev/null +++ b/gb_studio_project/project/scenes/gunfield/triggers/trigger.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "e905907d-76a4-456f-ae59-daef84155f98", + "name": "", + "prefabId": "", + "x": 0, + "y": 20, + "symbol": "trigger_24", + "prefabScriptOverrides": {}, + "width": 1, + "height": 3, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 76 + }, + "y": { + "type": "number", + "value": 26 + }, + "direction": "left", + "fadeSpeed": "2" + }, + "id": "f182511b-0cf9-4336-83bf-25036acbd726" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/lab/scene.gbsres.bak b/gb_studio_project/project/scenes/lab/scene.gbsres.bak new file mode 100644 index 0000000..e12fa91 --- /dev/null +++ b/gb_studio_project/project/scenes/lab/scene.gbsres.bak @@ -0,0 +1,23 @@ +{ + "_resourceType": "scene", + "id": "26de2c26-0446-4df8-bb8d-e96ec5fa8aa5", + "_index": 5, + "name": "Lab", + "backgroundId": "694504ba-8ee7-4dac-b884-2e1bf923c70b", + "tilesetId": "", + "width": 20, + "height": 24, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f30+004+0f10+004+0fc+0030+0f8+00c+0f6+001a+0f4+0010+0f4+0010+0f4+00c+0f8+004+0f10+004+0f10+004+0f8+00b4+", + "autoFadeSpeed": 1, + "symbol": "scene_6", + "x": 784, + "y": 208, + "script": [], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/mamamidnighthouse/scene.gbsres.bak b/gb_studio_project/project/scenes/mamamidnighthouse/scene.gbsres.bak new file mode 100644 index 0000000..1061e97 --- /dev/null +++ b/gb_studio_project/project/scenes/mamamidnighthouse/scene.gbsres.bak @@ -0,0 +1,23 @@ +{ + "_resourceType": "scene", + "id": "d066371f-e6a9-47e8-8a59-7047b304183a", + "_index": 7, + "name": "MamaMidnightHouse", + "backgroundId": "1a99f516-7544-478a-b05c-2e2fd72feb61", + "tilesetId": "", + "width": 32, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f82+001c+0f4+001c+0f4+001c+0f4+001c+0f4+001c+0f4+001c+0f4+001c+0f4+001c+0f4+001c+0f4+001c+0f4+001c+0fb+002+0f55+", + "autoFadeSpeed": 1, + "symbol": "scene_8", + "x": 979.482993197279, + "y": 1127.7823129251701, + "script": [], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/mamamidnighthouse/triggers/trigger.gbsres.bak b/gb_studio_project/project/scenes/mamamidnighthouse/triggers/trigger.gbsres.bak new file mode 100644 index 0000000..c373fb9 --- /dev/null +++ b/gb_studio_project/project/scenes/mamamidnighthouse/triggers/trigger.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "9c8b6746-6f65-4880-ad08-3ef80d2bd493", + "name": "", + "prefabId": "", + "x": 9, + "y": 15, + "symbol": "trigger_15", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 34 + }, + "y": { + "type": "number", + "value": 47 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "fb757d74-9da9-456d-9372-73f1a9fc57df" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/melonhouse/actors/actor.gbsres.bak b/gb_studio_project/project/scenes/melonhouse/actors/actor.gbsres.bak new file mode 100644 index 0000000..8f8f8aa --- /dev/null +++ b/gb_studio_project/project/scenes/melonhouse/actors/actor.gbsres.bak @@ -0,0 +1,27 @@ +{ + "_resourceType": "actor", + "id": "86d3719a-f588-49d1-ba39-8a1fb89358ac", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "30993594-6bce-4263-97c6-1a686ab0f30b", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_9", + "script": [], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 14, + "y": 8, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/melonhouse/actors/muttmelon.gbsres b/gb_studio_project/project/scenes/melonhouse/actors/muttmelon.gbsres new file mode 100644 index 0000000..5b46087 --- /dev/null +++ b/gb_studio_project/project/scenes/melonhouse/actors/muttmelon.gbsres @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "86d3719a-f588-49d1-ba39-8a1fb89358ac", + "name": "MuttMelon", + "frame": 0, + "animate": false, + "spriteSheetId": "30993594-6bce-4263-97c6-1a686ab0f30b", + "prefabId": "", + "direction": "left", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_9", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "GUH!" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "a251238e-2259-45e5-8e4f-067404a8307f" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 10, + "y": 8, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/melonhouse/actors/muttmelon.gbsres.bak b/gb_studio_project/project/scenes/melonhouse/actors/muttmelon.gbsres.bak new file mode 100644 index 0000000..f06091f --- /dev/null +++ b/gb_studio_project/project/scenes/melonhouse/actors/muttmelon.gbsres.bak @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "86d3719a-f588-49d1-ba39-8a1fb89358ac", + "name": "MuttMelon", + "frame": 0, + "animate": false, + "spriteSheetId": "30993594-6bce-4263-97c6-1a686ab0f30b", + "prefabId": "", + "direction": "left", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_9", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "GUH!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "a251238e-2259-45e5-8e4f-067404a8307f" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 10, + "y": 8, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/melonhouse/scene.gbsres b/gb_studio_project/project/scenes/melonhouse/scene.gbsres new file mode 100644 index 0000000..dd40fbd --- /dev/null +++ b/gb_studio_project/project/scenes/melonhouse/scene.gbsres @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "569043a6-e0fa-49c6-8a7f-c7ad900fac6d", + "_index": 6, + "name": "melonHouse", + "backgroundId": "a2881a60-75d5-4c7f-94c6-15e6a7ab172e", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f2a+00a+0fa+0040+0f4+0010+0f4+0010+0f4+00be+", + "autoFadeSpeed": 1, + "symbol": "scene_7", + "x": 1497, + "y": 1022, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "e1732ea6-42d6-44e2-bba5-e0e7bf6f1f80" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "3975b612-ea6a-4cf2-a8ed-4c6ff23ac87e" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/melonhouse/scene.gbsres.bak b/gb_studio_project/project/scenes/melonhouse/scene.gbsres.bak new file mode 100644 index 0000000..c6af8fd --- /dev/null +++ b/gb_studio_project/project/scenes/melonhouse/scene.gbsres.bak @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "569043a6-e0fa-49c6-8a7f-c7ad900fac6d", + "_index": 6, + "name": "melonHouse", + "backgroundId": "a2881a60-75d5-4c7f-94c6-15e6a7ab172e", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f2a+00a+0fa+0040+0f4+0010+0f4+0010+0f4+00be+", + "autoFadeSpeed": 1, + "symbol": "scene_7", + "x": 1497, + "y": 1022, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "e1732ea6-42d6-44e2-bba5-e0e7bf6f1f80" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "3975b612-ea6a-4cf2-a8ed-4c6ff23ac87e" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/melonhouse/triggers/trigger.gbsres b/gb_studio_project/project/scenes/melonhouse/triggers/trigger.gbsres new file mode 100644 index 0000000..31a967f --- /dev/null +++ b/gb_studio_project/project/scenes/melonhouse/triggers/trigger.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "550722c0-b20f-4b59-aa43-36ca231c1328", + "name": "", + "prefabId": "", + "x": 13, + "y": 17, + "symbol": "trigger_14", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 56 + }, + "y": { + "type": "number", + "value": 45 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "e2c16bf7-2e00-4369-825c-955bcc0d5bc7" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/melonhouse/triggers/trigger.gbsres.bak b/gb_studio_project/project/scenes/melonhouse/triggers/trigger.gbsres.bak new file mode 100644 index 0000000..a35bc75 --- /dev/null +++ b/gb_studio_project/project/scenes/melonhouse/triggers/trigger.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "550722c0-b20f-4b59-aa43-36ca231c1328", + "name": "", + "prefabId": "", + "x": 9, + "y": 15, + "symbol": "trigger_14", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 56 + }, + "y": { + "type": "number", + "value": 45 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "e2c16bf7-2e00-4369-825c-955bcc0d5bc7" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhouse/actors/goober.gbsres.bak b/gb_studio_project/project/scenes/midnightclubhouse/actors/goober.gbsres.bak new file mode 100644 index 0000000..609ee8b --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhouse/actors/goober.gbsres.bak @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "66669fac-87c0-40a4-a7d1-e9bdfdecd364", + "name": "Goober", + "frame": 0, + "animate": false, + "spriteSheetId": "30993594-6bce-4263-97c6-1a686ab0f30b", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_15", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "31177c6a-f679-42d9-92b5-3d2785d713ab" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 8, + "y": 8, + "_index": 1 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhouse/actors/hoseoak.gbsres b/gb_studio_project/project/scenes/midnightclubhouse/actors/hoseoak.gbsres new file mode 100644 index 0000000..0d94a37 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhouse/actors/hoseoak.gbsres @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "b9fd705b-a0d5-4c96-a192-c90150128788", + "name": "Hoseoak", + "frame": 0, + "animate": false, + "spriteSheetId": "5e941c8a-2029-4e58-81ff-8643331a3495", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_4", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Spooky Temp TEXT!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "66ba34f7-d5df-4404-bb51-fb6ab49ab1a0" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 14, + "y": 8, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhouse/actors/hoseoak.gbsres.bak b/gb_studio_project/project/scenes/midnightclubhouse/actors/hoseoak.gbsres.bak new file mode 100644 index 0000000..48de2f0 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhouse/actors/hoseoak.gbsres.bak @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "b9fd705b-a0d5-4c96-a192-c90150128788", + "name": "Hoseoak", + "frame": 0, + "animate": false, + "spriteSheetId": "5e941c8a-2029-4e58-81ff-8643331a3495", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_4", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Spooky Temp TEXT!" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "66ba34f7-d5df-4404-bb51-fb6ab49ab1a0" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 14, + "y": 8, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhouse/actors/mousecop.gbsres b/gb_studio_project/project/scenes/midnightclubhouse/actors/mousecop.gbsres new file mode 100644 index 0000000..6e27f54 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhouse/actors/mousecop.gbsres @@ -0,0 +1,54 @@ +{ + "_resourceType": "actor", + "id": "66669fac-87c0-40a4-a7d1-e9bdfdecd364", + "name": "MouseCop", + "frame": 0, + "animate": false, + "spriteSheetId": "30993594-6bce-4263-97c6-1a686ab0f30b", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_15", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Ello mate!", + "Wanna play some \nWarzone?" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "31177c6a-f679-42d9-92b5-3d2785d713ab" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 8, + "y": 8, + "_index": 1 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhouse/actors/mousecop.gbsres.bak b/gb_studio_project/project/scenes/midnightclubhouse/actors/mousecop.gbsres.bak new file mode 100644 index 0000000..88b6b51 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhouse/actors/mousecop.gbsres.bak @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "66669fac-87c0-40a4-a7d1-e9bdfdecd364", + "name": "MouseCop", + "frame": 0, + "animate": false, + "spriteSheetId": "30993594-6bce-4263-97c6-1a686ab0f30b", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_15", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Spooky Temp TEXT!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "31177c6a-f679-42d9-92b5-3d2785d713ab" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 8, + "y": 8, + "_index": 1 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhouse/scene.gbsres b/gb_studio_project/project/scenes/midnightclubhouse/scene.gbsres new file mode 100644 index 0000000..3ef3287 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhouse/scene.gbsres @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "d066371f-e6a9-47e8-8a59-7047b304183a", + "_index": 7, + "name": "MidnightClubHouse", + "backgroundId": "1a99f516-7544-478a-b05c-2e2fd72feb61", + "tilesetId": "", + "width": 32, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f1a+002+0f1e+002+0f10+001a+0f2+001e+0f2+001e+0f2+001e+0f2+002+0f4+001c+0f4+001c+0f4+00132+", + "autoFadeSpeed": 1, + "symbol": "scene_8", + "x": 984, + "y": 1088, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "60700987-6934-48c4-ba85-2081f52db1c0" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "329fbc56-4c91-4fcc-838d-80096720e2a5" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhouse/scene.gbsres.bak b/gb_studio_project/project/scenes/midnightclubhouse/scene.gbsres.bak new file mode 100644 index 0000000..84be5e6 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhouse/scene.gbsres.bak @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "d066371f-e6a9-47e8-8a59-7047b304183a", + "_index": 7, + "name": "MidnightClubHouse", + "backgroundId": "1a99f516-7544-478a-b05c-2e2fd72feb61", + "tilesetId": "", + "width": 32, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f1a+002+0f1e+002+0f10+001a+0f2+001e+0f2+001e+0f2+001e+0f2+002+0f4+001c+0f4+001c+0f4+00132+", + "autoFadeSpeed": 1, + "symbol": "scene_8", + "x": 984, + "y": 1088, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "60700987-6934-48c4-ba85-2081f52db1c0" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "329fbc56-4c91-4fcc-838d-80096720e2a5" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhouse/triggers/trigger.gbsres b/gb_studio_project/project/scenes/midnightclubhouse/triggers/trigger.gbsres new file mode 100644 index 0000000..b7020fb --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhouse/triggers/trigger.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "9c8b6746-6f65-4880-ad08-3ef80d2bd493", + "name": "", + "prefabId": "", + "x": 24, + "y": 17, + "symbol": "trigger_15", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 34 + }, + "y": { + "type": "number", + "value": 47 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "fb757d74-9da9-456d-9372-73f1a9fc57df" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhouse/triggers/trigger_2.gbsres b/gb_studio_project/project/scenes/midnightclubhouse/triggers/trigger_2.gbsres new file mode 100644 index 0000000..0aaf6e7 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhouse/triggers/trigger_2.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "d4be8191-2290-4dc9-8d4f-6c1cd4c3ac52", + "name": "", + "prefabId": "", + "x": 26, + "y": 1, + "symbol": "trigger_21", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "7cb69bbf-989e-4401-9f8b-38ddfae44607", + "x": { + "type": "number", + "value": 14 + }, + "y": { + "type": "number", + "value": 3 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "46acf315-3668-4cbd-802f-94b646b11390" + } + ], + "leaveScript": [], + "_index": 1 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhousef2/actors/manoj.gbsres b/gb_studio_project/project/scenes/midnightclubhousef2/actors/manoj.gbsres new file mode 100644 index 0000000..38ae971 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhousef2/actors/manoj.gbsres @@ -0,0 +1,65 @@ +{ + "_resourceType": "actor", + "id": "c4de8807-aba3-4065-b2fb-099baa9ea70b", + "name": "Manoj", + "frame": 0, + "animate": false, + "spriteSheetId": "5e941c8a-2029-4e58-81ff-8643331a3495", + "prefabId": "", + "direction": "up", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_7", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "They call me", + "The JuiceBox!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "8ecf4253-4c05-4e5f-8fbf-d12e50f22bca" + }, + { + "command": "EVENT_ACTOR_SET_DIRECTION", + "args": { + "actorId": "$self$", + "direction": { + "type": "direction", + "value": "up" + } + }, + "id": "9a2c8224-4251-4caa-b373-56928968acf6" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 4, + "y": 5, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhousef2/actors/manoj.gbsres.bak b/gb_studio_project/project/scenes/midnightclubhousef2/actors/manoj.gbsres.bak new file mode 100644 index 0000000..b7688d0 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhousef2/actors/manoj.gbsres.bak @@ -0,0 +1,65 @@ +{ + "_resourceType": "actor", + "id": "c4de8807-aba3-4065-b2fb-099baa9ea70b", + "name": "Manoj", + "frame": 0, + "animate": false, + "spriteSheetId": "5e941c8a-2029-4e58-81ff-8643331a3495", + "prefabId": "", + "direction": "up", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_7", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "They call me", + "The JuiceBox!" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "8ecf4253-4c05-4e5f-8fbf-d12e50f22bca" + }, + { + "command": "EVENT_ACTOR_SET_DIRECTION", + "args": { + "actorId": "$self$", + "direction": { + "type": "direction", + "value": "up" + } + }, + "id": "9a2c8224-4251-4caa-b373-56928968acf6" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 4, + "y": 5, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhousef2/scene.gbsres b/gb_studio_project/project/scenes/midnightclubhousef2/scene.gbsres new file mode 100644 index 0000000..edae060 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhousef2/scene.gbsres @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "7cb69bbf-989e-4401-9f8b-38ddfae44607", + "_index": 13, + "name": "MidnightClubHousef2", + "backgroundId": "519f4809-b053-4a21-a691-bdd574b8d25d", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0fe+002+0f12+002+0f4+002+0fa+004+0f4+002+0f6+0064+0f4+008+0f2+006+0f4+008+0f2+0012+0f2+008a+", + "autoFadeSpeed": 1, + "symbol": "scene_14", + "x": 1296, + "y": 1280, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "8bc3a7b3-146c-4705-915d-dc13b8e1dabb" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "8ed90e1e-1d2a-4eba-a2e2-4f3bbf090161" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhousef2/scene.gbsres.bak b/gb_studio_project/project/scenes/midnightclubhousef2/scene.gbsres.bak new file mode 100644 index 0000000..ab03391 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhousef2/scene.gbsres.bak @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "7cb69bbf-989e-4401-9f8b-38ddfae44607", + "_index": 13, + "name": "MidnightClubHousef2", + "backgroundId": "519f4809-b053-4a21-a691-bdd574b8d25d", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0fe+002+0f12+002+0f4+002+0fa+004+0f4+002+0f6+0064+0f4+008+0f2+006+0f4+008+0f2+0012+0f2+008a+", + "autoFadeSpeed": 1, + "symbol": "scene_14", + "x": 1296, + "y": 1280, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "8bc3a7b3-146c-4705-915d-dc13b8e1dabb" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "8ed90e1e-1d2a-4eba-a2e2-4f3bbf090161" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightclubhousef2/triggers/trigger.gbsres b/gb_studio_project/project/scenes/midnightclubhousef2/triggers/trigger.gbsres new file mode 100644 index 0000000..5de91a3 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightclubhousef2/triggers/trigger.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "94b7065d-1858-42f3-a016-e3766346b845", + "name": "", + "prefabId": "", + "x": 14, + "y": 1, + "symbol": "trigger_22", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "d066371f-e6a9-47e8-8a59-7047b304183a", + "x": { + "type": "number", + "value": 26 + }, + "y": { + "type": "number", + "value": 3 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "4a9471e3-f922-4c45-92b6-1f860e907376" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightlibrary/actors/ulora.gbsres b/gb_studio_project/project/scenes/midnightlibrary/actors/ulora.gbsres new file mode 100644 index 0000000..a2cadf4 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightlibrary/actors/ulora.gbsres @@ -0,0 +1,64 @@ +{ + "_resourceType": "actor", + "id": "74b6298a-418b-4910-bc95-b697840e11b2", + "name": "Ulora", + "frame": 0, + "animate": false, + "spriteSheetId": "22d00f5a-a37a-4eff-9f46-bc8a06931aa3", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_3", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "shh im trying to\ndraw!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "fc2374b0-dc83-4b05-b383-618bb3b818cc" + }, + { + "command": "EVENT_ACTOR_SET_DIRECTION", + "args": { + "actorId": "$self$", + "direction": { + "type": "direction", + "value": "down" + } + }, + "id": "38029e79-c31b-4ab8-87cd-c62873c3ec24" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 0, + "y": 17, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightlibrary/actors/ulora.gbsres.bak b/gb_studio_project/project/scenes/midnightlibrary/actors/ulora.gbsres.bak new file mode 100644 index 0000000..190e124 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightlibrary/actors/ulora.gbsres.bak @@ -0,0 +1,64 @@ +{ + "_resourceType": "actor", + "id": "74b6298a-418b-4910-bc95-b697840e11b2", + "name": "Ulora", + "frame": 0, + "animate": false, + "spriteSheetId": "22d00f5a-a37a-4eff-9f46-bc8a06931aa3", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_3", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "shh im trying to\ndraw!" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "fc2374b0-dc83-4b05-b383-618bb3b818cc" + }, + { + "command": "EVENT_ACTOR_SET_DIRECTION", + "args": { + "actorId": "$self$", + "direction": { + "type": "direction", + "value": "down" + } + }, + "id": "38029e79-c31b-4ab8-87cd-c62873c3ec24" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 0, + "y": 17, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightlibrary/scene.gbsres b/gb_studio_project/project/scenes/midnightlibrary/scene.gbsres new file mode 100644 index 0000000..137aaa2 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightlibrary/scene.gbsres @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "26de2c26-0446-4df8-bb8d-e96ec5fa8aa5", + "_index": 5, + "name": "MidnightLibrary", + "backgroundId": "694504ba-8ee7-4dac-b884-2e1bf923c70b", + "tilesetId": "", + "width": 20, + "height": 24, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f30+004+0f10+0040+0f8+00c+0f8+00c+0f10+00c+0f8+00c+0f8+00c+0f8+004+0f10+004+0f10+004+0f8+003c+0f6+00e+0f6+0036+0f2+0012+0f2+0012+", + "autoFadeSpeed": 1, + "symbol": "scene_6", + "x": 784, + "y": 248, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "b38e576e-e806-42a6-b06d-5bbc894656fa" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "67f7a844-bef6-4cc7-9d48-328a17b14c24" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightlibrary/scene.gbsres.bak b/gb_studio_project/project/scenes/midnightlibrary/scene.gbsres.bak new file mode 100644 index 0000000..ab26dc7 --- /dev/null +++ b/gb_studio_project/project/scenes/midnightlibrary/scene.gbsres.bak @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "26de2c26-0446-4df8-bb8d-e96ec5fa8aa5", + "_index": 5, + "name": "MidnightLibrary", + "backgroundId": "694504ba-8ee7-4dac-b884-2e1bf923c70b", + "tilesetId": "", + "width": 20, + "height": 24, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f30+004+0f10+0040+0f8+00c+0f8+00c+0f10+00c+0f8+00c+0f8+00c+0f8+004+0f10+004+0f10+004+0f8+003c+0f6+00e+0f6+0036+0f2+0012+0f2+0012+", + "autoFadeSpeed": 1, + "symbol": "scene_6", + "x": 784, + "y": 248, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "b38e576e-e806-42a6-b06d-5bbc894656fa" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "67f7a844-bef6-4cc7-9d48-328a17b14c24" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/midnightlibrary/triggers/trigger.gbsres b/gb_studio_project/project/scenes/midnightlibrary/triggers/trigger.gbsres new file mode 100644 index 0000000..8532c0c --- /dev/null +++ b/gb_studio_project/project/scenes/midnightlibrary/triggers/trigger.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "6ada3451-21c5-4292-8984-ebf433cf9690", + "name": "", + "prefabId": "", + "x": 9, + "y": 23, + "symbol": "trigger_10", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 29 + }, + "y": { + "type": "number", + "value": 13 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "810b278d-0535-4859-a344-e9939cb30972" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/npcjail/actors/ulora.gbsres.bak b/gb_studio_project/project/scenes/npcjail/actors/ulora.gbsres.bak new file mode 100644 index 0000000..c9584fe --- /dev/null +++ b/gb_studio_project/project/scenes/npcjail/actors/ulora.gbsres.bak @@ -0,0 +1,27 @@ +{ + "_resourceType": "actor", + "id": "74b6298a-418b-4910-bc95-b697840e11b2", + "name": "Ulora", + "frame": 0, + "animate": false, + "spriteSheetId": "30993594-6bce-4263-97c6-1a686ab0f30b", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_3", + "script": [], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 3, + "y": 6, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/npcjail/scene.gbsres b/gb_studio_project/project/scenes/npcjail/scene.gbsres new file mode 100644 index 0000000..8237b4f --- /dev/null +++ b/gb_studio_project/project/scenes/npcjail/scene.gbsres @@ -0,0 +1,23 @@ +{ + "_resourceType": "scene", + "id": "a2e1f3c3-e2fe-43be-a57c-272747abb3d6", + "_index": 9, + "name": "NPCJail", + "backgroundId": "cd7064f5-abb5-4869-9dc8-c76b4f198a52", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "", + "autoFadeSpeed": 1, + "symbol": "scene_10", + "x": 192, + "y": 328, + "script": [], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/npcjail/scene.gbsres.bak b/gb_studio_project/project/scenes/npcjail/scene.gbsres.bak new file mode 100644 index 0000000..41c970b --- /dev/null +++ b/gb_studio_project/project/scenes/npcjail/scene.gbsres.bak @@ -0,0 +1,23 @@ +{ + "_resourceType": "scene", + "id": "a2e1f3c3-e2fe-43be-a57c-272747abb3d6", + "_index": 9, + "name": "NPCJail", + "backgroundId": "cd7064f5-abb5-4869-9dc8-c76b4f198a52", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "", + "autoFadeSpeed": 1, + "symbol": "scene_10", + "x": 568, + "y": 336, + "script": [], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/nyaalogo/scene.gbsres b/gb_studio_project/project/scenes/nyaalogo/scene.gbsres new file mode 100644 index 0000000..5bfd6d9 --- /dev/null +++ b/gb_studio_project/project/scenes/nyaalogo/scene.gbsres @@ -0,0 +1,79 @@ +{ + "_resourceType": "scene", + "id": "961b9a60-e2d2-4dc4-a52b-577e08d087e1", + "_index": 11, + "name": "NyaaLogo", + "backgroundId": "1e83ea8e-38fe-4af4-a1c0-e4f61eb10e37", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "LOGO", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "", + "autoFadeSpeed": 1, + "symbol": "scene_12", + "x": 125.43511450381678, + "y": 124.67175572519082, + "script": [ + { + "command": "EVENT_FADE_IN", + "args": { + "speed": 1, + "__collapse": true + }, + "id": "e54106ac-22c4-4e25-8a7a-43ddeb299e0f" + }, + { + "command": "EVENT_SET_INPUT_SCRIPT", + "args": { + "input": [ + "start", + "a" + ], + "override": true, + "__scriptTabs": "press", + "__collapse": true + }, + "children": { + "true": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "80bdf4ec-1fcb-48d8-9633-5d55cbbd72b7", + "x": { + "type": "number", + "value": 0 + }, + "y": { + "type": "number", + "value": 0 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "5202b387-b355-4b24-aac6-3909602aa8d3" + }, + { + "command": "EVENT_SET_INPUT_SCRIPT", + "args": { + "input": [ + "start" + ], + "override": true, + "__scriptTabs": "press" + }, + "children": { + "true": [] + }, + "id": "987cb2c9-e6d2-4db7-a185-ed1a91ff4794" + } + ] + }, + "id": "00b1d631-23ed-45ba-9da3-358ec58d202b" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [] +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/nyaalogo/scene.gbsres.bak b/gb_studio_project/project/scenes/nyaalogo/scene.gbsres.bak new file mode 100644 index 0000000..02500d4 --- /dev/null +++ b/gb_studio_project/project/scenes/nyaalogo/scene.gbsres.bak @@ -0,0 +1,79 @@ +{ + "_resourceType": "scene", + "id": "961b9a60-e2d2-4dc4-a52b-577e08d087e1", + "_index": 11, + "name": "NyaaLogo", + "backgroundId": "4079f756-9ab5-451e-b726-9eb8fc6cb09f", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "LOGO", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "", + "autoFadeSpeed": 1, + "symbol": "scene_12", + "x": 125.43511450381678, + "y": 124.67175572519082, + "script": [ + { + "command": "EVENT_FADE_IN", + "args": { + "speed": 1, + "__collapse": true + }, + "id": "e54106ac-22c4-4e25-8a7a-43ddeb299e0f" + }, + { + "command": "EVENT_SET_INPUT_SCRIPT", + "args": { + "input": [ + "start", + "a" + ], + "override": true, + "__scriptTabs": "press", + "__collapse": true + }, + "children": { + "true": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "80bdf4ec-1fcb-48d8-9633-5d55cbbd72b7", + "x": { + "type": "number", + "value": 0 + }, + "y": { + "type": "number", + "value": 0 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "5202b387-b355-4b24-aac6-3909602aa8d3" + }, + { + "command": "EVENT_SET_INPUT_SCRIPT", + "args": { + "input": [ + "start" + ], + "override": true, + "__scriptTabs": "press" + }, + "children": { + "true": [] + }, + "id": "987cb2c9-e6d2-4db7-a185-ed1a91ff4794" + } + ] + }, + "id": "00b1d631-23ed-45ba-9da3-358ec58d202b" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [] +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor.gbsres b/gb_studio_project/project/scenes/overworld/actors/actor.gbsres new file mode 100644 index 0000000..811f3a5 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor.gbsres @@ -0,0 +1,54 @@ +{ + "_resourceType": "actor", + "id": "fabbe3c3-b3a8-455e-8828-24280cc3ab33", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_6", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "MuttMelon's House!" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30, + "__collapse": false + }, + "id": "3a7a7459-dc53-45cc-8ab8-13997be6a5a9" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 54, + "y": 45, + "_index": 1 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor.gbsres.bak b/gb_studio_project/project/scenes/overworld/actors/actor.gbsres.bak new file mode 100644 index 0000000..dc9e187 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor.gbsres.bak @@ -0,0 +1,54 @@ +{ + "_resourceType": "actor", + "id": "fabbe3c3-b3a8-455e-8828-24280cc3ab33", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_6", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "MuttMelon's House!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30, + "__collapse": false + }, + "id": "3a7a7459-dc53-45cc-8ab8-13997be6a5a9" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 54, + "y": 45, + "_index": 1 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor_2.gbsres b/gb_studio_project/project/scenes/overworld/actors/actor_2.gbsres new file mode 100644 index 0000000..d93fcd9 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor_2.gbsres @@ -0,0 +1,54 @@ +{ + "_resourceType": "actor", + "id": "88e581ff-b9a8-491b-8b4b-f99fbd53ce4f", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_8", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Slightly's", + "Box Palace!" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "f5e8edd7-b97a-4e2e-9464-7c4135a13168" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 70, + "y": 53, + "_index": 2 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor_2.gbsres.bak b/gb_studio_project/project/scenes/overworld/actors/actor_2.gbsres.bak new file mode 100644 index 0000000..54912b3 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor_2.gbsres.bak @@ -0,0 +1,54 @@ +{ + "_resourceType": "actor", + "id": "88e581ff-b9a8-491b-8b4b-f99fbd53ce4f", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_8", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Slightly's", + "Box Palace!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "f5e8edd7-b97a-4e2e-9464-7c4135a13168" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 70, + "y": 53, + "_index": 2 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor_3.gbsres b/gb_studio_project/project/scenes/overworld/actors/actor_3.gbsres new file mode 100644 index 0000000..013a569 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor_3.gbsres @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "aee1cb1f-6730-409d-9ee8-5b9dd177047d", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_10", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "fate6's House!" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "40c24373-c89b-48b7-8e43-8db8475b9348" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 50, + "y": 13, + "_index": 3 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor_3.gbsres.bak b/gb_studio_project/project/scenes/overworld/actors/actor_3.gbsres.bak new file mode 100644 index 0000000..0913549 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor_3.gbsres.bak @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "aee1cb1f-6730-409d-9ee8-5b9dd177047d", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_10", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "fate6's House!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "40c24373-c89b-48b7-8e43-8db8475b9348" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 50, + "y": 13, + "_index": 3 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor_4.gbsres b/gb_studio_project/project/scenes/overworld/actors/actor_4.gbsres new file mode 100644 index 0000000..39941d2 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor_4.gbsres @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "ce0e96fc-f3ac-46bd-8ed3-90bc9825dd5f", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_11", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Tappy's House!" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "456de86c-7c7f-4560-bdef-290df4586a70" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 66, + "y": 13, + "_index": 4 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor_4.gbsres.bak b/gb_studio_project/project/scenes/overworld/actors/actor_4.gbsres.bak new file mode 100644 index 0000000..8bd9755 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor_4.gbsres.bak @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "ce0e96fc-f3ac-46bd-8ed3-90bc9825dd5f", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_11", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Tappy's House!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "456de86c-7c7f-4560-bdef-290df4586a70" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 66, + "y": 13, + "_index": 4 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor_5.gbsres b/gb_studio_project/project/scenes/overworld/actors/actor_5.gbsres new file mode 100644 index 0000000..8133772 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor_5.gbsres @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "dc4cd5c2-1f3f-4b67-851d-fb098c932dc2", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_12", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Lab I guess?" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "fc3d2f59-7199-4b28-95c4-89ac80cf684e" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 26, + "y": 13, + "_index": 5 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor_5.gbsres.bak b/gb_studio_project/project/scenes/overworld/actors/actor_5.gbsres.bak new file mode 100644 index 0000000..58f9a43 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor_5.gbsres.bak @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "dc4cd5c2-1f3f-4b67-851d-fb098c932dc2", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_12", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Lab I guess?" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "fc3d2f59-7199-4b28-95c4-89ac80cf684e" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 26, + "y": 13, + "_index": 5 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor_6.gbsres b/gb_studio_project/project/scenes/overworld/actors/actor_6.gbsres new file mode 100644 index 0000000..07e91d1 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor_6.gbsres @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "ba3fc0a2-47fa-4c41-acd8-31b0a38581b7", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_13", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Pet Pet Park." + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "aea1309f-00d7-47b2-806f-bb52423d5b0a" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 10, + "y": 13, + "_index": 6 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor_6.gbsres.bak b/gb_studio_project/project/scenes/overworld/actors/actor_6.gbsres.bak new file mode 100644 index 0000000..b4041a2 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor_6.gbsres.bak @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "ba3fc0a2-47fa-4c41-acd8-31b0a38581b7", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_13", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Pet Pet Park." + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "aea1309f-00d7-47b2-806f-bb52423d5b0a" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 10, + "y": 13, + "_index": 6 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor_7.gbsres b/gb_studio_project/project/scenes/overworld/actors/actor_7.gbsres new file mode 100644 index 0000000..af1c4eb --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor_7.gbsres @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "02eb90b6-5c95-4242-9790-e02930615265", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_14", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Gamer Den" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "70022942-fdc2-470c-94b3-ca28dfd7cc6e" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 37, + "y": 46, + "_index": 7 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor_7.gbsres.bak b/gb_studio_project/project/scenes/overworld/actors/actor_7.gbsres.bak new file mode 100644 index 0000000..f873722 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor_7.gbsres.bak @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "02eb90b6-5c95-4242-9790-e02930615265", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_14", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Gamer Den" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "70022942-fdc2-470c-94b3-ca28dfd7cc6e" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 37, + "y": 46, + "_index": 7 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/actor_8.gbsres.bak b/gb_studio_project/project/scenes/overworld/actors/actor_8.gbsres.bak new file mode 100644 index 0000000..55fc118 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/actor_8.gbsres.bak @@ -0,0 +1,53 @@ +{ + "_resourceType": "actor", + "id": "ba3fc0a2-47fa-4c41-acd8-31b0a38581b7", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_13", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Pet Park." + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "aea1309f-00d7-47b2-806f-bb52423d5b0a" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 10, + "y": 13, + "_index": 7 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/kuma.gbsres b/gb_studio_project/project/scenes/overworld/actors/kuma.gbsres new file mode 100644 index 0000000..aaa3c9b --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/kuma.gbsres @@ -0,0 +1,214 @@ +{ + "_resourceType": "actor", + "id": "251f4519-9558-40f5-93d9-a0a2ac1047ab", + "name": "Kuma", + "frame": 0, + "animate": false, + "spriteSheetId": "46d218f4-3118-44c7-89a6-7148cd2d9d62", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_0", + "script": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "7" + }, + "__collapseElse": true + }, + "children": { + "true": [ + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "L0", + "value": { + "type": "true" + } + }, + "id": "1f0f62a7-ba8b-498d-911e-8dddc9787c9d" + }, + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Bork Bork!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "99d2e956-8717-4cd4-a7db-e1493c5109dd" + }, + { + "command": "EVENT_ACTOR_EMOTE", + "args": { + "actorId": "$self$", + "emoteId": "edf96d29-9a08-4813-b2d3-46e0996f89f2" + }, + "id": "9496b732-906e-4e96-9e14-52b38bd6547e" + } + ], + "false": [] + }, + "id": "473d560c-78f6-47e9-8026-88b8d132453d" + }, + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "8" + }, + "__collapseElse": false, + "__collapse": false + }, + "children": { + "true": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "I was going to say\nsomething but", + "I forgor :(", + "I think real hard\nwhile you talk to\nEevee." + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "a", + "closeDelayTime": 0.5, + "closeDelayFrames": 30, + "__collapse": false + }, + "id": "e2992086-7ff0-4885-b5b7-58681eb2419c" + } + ], + "false": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "L0" + }, + "__collapseElse": false + }, + "children": { + "true": [], + "false": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "1" + }, + "__collapseElse": false, + "__disableElse": false, + "__comment": false + }, + "children": { + "true": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "I saw something \nshiny you might \nlike! ", + "I lost it when I\nwas looking at ", + "cool rocks down \nsouth :(" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": true, + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "679f315d-92fa-460c-8feb-5617944f7e74" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "2", + "value": { + "type": "true" + } + }, + "id": "5103d5e5-1cfa-437b-9d28-3c725dae18cd" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "6", + "value": { + "type": "true" + } + }, + "id": "3a42fdaf-761f-4775-97ef-ac3774da0167" + } + ], + "false": [] + }, + "id": "1faccab1-7c3b-491a-8262-9bcf233a6767" + } + ] + }, + "id": "fb76c03c-b526-419e-9dc4-35c784908dde" + } + ] + }, + "id": "b0d5b211-3e4e-419b-9e68-854807ab2edf" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 4, + "y": 10, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/actors/kuma.gbsres.bak b/gb_studio_project/project/scenes/overworld/actors/kuma.gbsres.bak new file mode 100644 index 0000000..a981ed9 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/actors/kuma.gbsres.bak @@ -0,0 +1,125 @@ +{ + "_resourceType": "actor", + "id": "251f4519-9558-40f5-93d9-a0a2ac1047ab", + "name": "Kuma", + "frame": 0, + "animate": false, + "spriteSheetId": "46d218f4-3118-44c7-89a6-7148cd2d9d62", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_0", + "script": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "7" + }, + "__collapseElse": false + }, + "children": { + "true": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Bork Bork!" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "99d2e956-8717-4cd4-a7db-e1493c5109dd" + }, + { + "command": "EVENT_ACTOR_EMOTE", + "args": { + "actorId": "$self$", + "emoteId": "edf96d29-9a08-4813-b2d3-46e0996f89f2" + }, + "id": "9496b732-906e-4e96-9e14-52b38bd6547e" + } + ], + "false": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "I saw something \nshiny you might \nlike! ", + "I lost it when I\nwas looking at ", + "cool rocks down \nsouth :(" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": true, + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "679f315d-92fa-460c-8feb-5617944f7e74" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "6", + "value": { + "type": "true" + } + }, + "id": "3a42fdaf-761f-4775-97ef-ac3774da0167" + } + ] + }, + "id": "473d560c-78f6-47e9-8026-88b8d132453d" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "2", + "value": { + "type": "true" + } + }, + "id": "5103d5e5-1cfa-437b-9d28-3c725dae18cd" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 4, + "y": 10, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/scene.gbsres b/gb_studio_project/project/scenes/overworld/scene.gbsres new file mode 100644 index 0000000..4abb35c --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/scene.gbsres @@ -0,0 +1,40 @@ +{ + "_resourceType": "scene", + "id": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "_index": 0, + "name": "Overworld", + "backgroundId": "a25aa515-bdc9-4332-babc-731c91cff86a", + "tilesetId": "", + "width": 80, + "height": 72, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [ + "default-sprite" + ], + "collisions": "0f142+0010+0f40+0010+0f40+008+0f4+004+0f40+008+0f4+004+0f40+002+0f2+00c+0f40+002+0f2+00c+0f40+0010+0f40+0010+0fa+004+0f14+002+0fe+002+0fc+0010+0f6+00c+0fe+004+0fc+004+0fc+0010+0f6+00c+0fe+004+0fc+004+0fc+0010+0fa+004+0f12+004+0fc+004+0fc+0010+0fa+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0fa+00140+0fc+006+0f4+00a+0fe+006+0f28+006+0f4+00a+0fe+006+0f28+006+0f4+00a+0f!00c+0f!006+0f28+006+0f4+00a+0f!00c+0f!006+0f28+004+0f6+00a+0f!00c+0f!004+0f2a+004+0f6+00a+0f!00c+0f!004+0f2a+004+0f6+00a+0f!00c+0f!004+0f2a+004+0f6+00a+0f!00c+0f!004+0f2a+004+0f6+00a+0f!00c+0f!004+0f2a+004+0f6+00a+0f!00c+0f!004+0f2a+004+0f6+00a+0f8+005+0f!004+0f2a+004+0f6+00a+0f8+005+0f!004+0f2a+004+0fa+006+0f8+005+0f!004+0f2a+004+0fa+006+0f8+005+0f!004+0f2a+004+0fa+006+0f8+005+0f!004+0f2a+004+0fa+006+0f8+005+0f!004+0f6+002+0f12+002+0fe+004+0fa+006+0fe+00c+0f10+004+0fe+004+0fa+006+0f2+002+0fa+00c+0f10+004+0fe+004+0fa+0020+0f10+004+0fe+004+0fa+0020+0fa+002+0f4+004+0fe+004+0fa+0018+0f12+008+0f10+004+0fa+0018+0f12+008+0f10+004+0fa+0018+0f12+002+0f16+004+0fa+0018+0f12+002+0f16+004+0f8+001a+0f12+004+0f14+004+0f8+001a+0f12+004+0f14+004+0f8+001a+0f12+004+0f14+004+0f8+001a+0f12+004+0f14+004+0f6+001c+0f12+002+0f16+004+0f6+001c+0f12+002+0f16+004+0f6+001c+0f12+002+0f16+004+0f6+001c+0f12+002+0f12+003e+0f12+003e+0f12+003e+0f12+003e+0f12+004+0f4c+004+0f4c+004+0f4c+004+0f4c+004+0f4c+004+0f4c+004+0f4c+004+0f44+", + "autoFadeSpeed": 1, + "symbol": "scene_1", + "x": 784, + "y": 464, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "38d0cb6d-5eaf-4d69-b887-35fd24d513ff" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "d33e94eb-92f4-4488-82c8-dd4d5bfe9cfe" + }, + "id": "32511cd3-b92a-4ab0-b0f1-8d1352eaf8a1" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/scene.gbsres.bak b/gb_studio_project/project/scenes/overworld/scene.gbsres.bak new file mode 100644 index 0000000..9c9d922 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/scene.gbsres.bak @@ -0,0 +1,40 @@ +{ + "_resourceType": "scene", + "id": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "_index": 0, + "name": "Overworld", + "backgroundId": "a25aa515-bdc9-4332-babc-731c91cff86a", + "tilesetId": "", + "width": 80, + "height": 72, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [ + "default-sprite" + ], + "collisions": "0f142+0010+0f40+0010+0f40+008+0f4+004+0f40+008+0f4+004+0f40+002+0f2+00c+0f40+002+0f2+00c+0f40+0010+0f40+0010+0fa+004+0f14+002+0fe+002+0fc+0010+0f6+00c+0fe+004+0fc+004+0fc+0010+0f6+00c+0fe+004+0fc+004+0fc+0010+0fa+004+0f12+004+0fc+004+0fc+0010+0fa+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0f16+004+0fc+004+0f12+004+0fc+004+0fa+00140+0fc+006+0f4+00a+0fe+006+0f28+006+0f4+00a+0fe+006+0f28+006+0f4+00a+0f!00c+0f!006+0f28+006+0f4+00a+0f!00c+0f!006+0f28+004+0f6+00a+0f!00c+0f!004+0f2a+004+0f6+00a+0f!00c+0f!004+0f2a+004+0f6+00a+0f!00c+0f!004+0f2a+004+0f6+00a+0f!00c+0f!004+0f2a+004+0f6+00a+0f!00c+0f!004+0f2a+004+0f6+00a+0f!00c+0f!004+0f2a+004+0f6+00a+0f8+005+0f!004+0f2a+004+0f6+00a+0f8+005+0f!004+0f2a+004+0fa+006+0f8+005+0f!004+0f2a+004+0fa+006+0f8+005+0f!004+0f2a+004+0fa+006+0f8+005+0f!004+0f2a+004+0fa+006+0f8+005+0f!004+0f6+002+0f12+002+0fe+004+0fa+006+0fe+00c+0f10+004+0fe+004+0fa+006+0f2+002+0fa+00c+0f10+004+0fe+004+0fa+0020+0f10+004+0fe+004+0fa+0020+0fa+002+0f4+004+0fe+004+0fa+0018+0f12+008+0f10+004+0fa+0018+0f12+008+0f10+004+0fa+0018+0f12+002+0f16+004+0fa+0018+0f12+002+0f16+004+0f8+001a+0f12+004+0f14+004+0f8+001a+0f12+004+0f14+004+0f8+001a+0f12+004+0f14+004+0f8+001a+0f12+004+0f14+004+0f6+001c+0f12+002+0f16+004+0f6+001c+0f12+002+0f16+004+0f6+001c+0f12+002+0f16+004+0f6+001c+0f12+002+0f12+003e+0f12+003e+0f12+003e+0f12+003e+0f12+004+0f4c+004+0f4c+004+0f4c+004+0f4c+004+0f4c+004+0f4c+004+0f4c+004+0f44+", + "autoFadeSpeed": 1, + "symbol": "scene_1", + "x": 784, + "y": 464, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "38d0cb6d-5eaf-4d69-b887-35fd24d513ff" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "d33e94eb-92f4-4488-82c8-dd4d5bfe9cfe" + }, + "id": "32511cd3-b92a-4ab0-b0f1-8d1352eaf8a1" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/basemententry.gbsres b/gb_studio_project/project/scenes/overworld/triggers/basemententry.gbsres new file mode 100644 index 0000000..5fc26ee --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/basemententry.gbsres @@ -0,0 +1,87 @@ +{ + "_resourceType": "trigger", + "id": "d8fc0432-d96c-4127-b071-aa458082c9cb", + "name": "BasementEntry", + "prefabId": "", + "x": 76, + "y": 43, + "symbol": "trigger_16", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "3" + }, + "__collapseElse": false + }, + "children": { + "true": [ + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "4", + "value": { + "type": "true" + } + }, + "id": "965bcb68-8580-4cc2-99ef-f7c5683dd787" + }, + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "ad0d9790-0584-4c0f-b00b-0028b4fc3de9", + "x": { + "type": "number", + "value": 9 + }, + "y": { + "type": "number", + "value": 15 + }, + "direction": "up", + "fadeSpeed": 2 + }, + "id": "03be24c0-f516-4659-bb08-0fae3748c432" + } + ], + "false": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Its locked?", + "fate6 had the key\nlast!", + "I should head to\nhis place." + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "ff7f5f35-a032-4717-a954-05faa215e9c9" + } + ] + }, + "id": "541b068c-0227-425c-90a4-e34413beb95b" + } + ], + "leaveScript": [], + "_index": 8 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/basemententry.gbsres.bak b/gb_studio_project/project/scenes/overworld/triggers/basemententry.gbsres.bak new file mode 100644 index 0000000..c2a03cc --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/basemententry.gbsres.bak @@ -0,0 +1,87 @@ +{ + "_resourceType": "trigger", + "id": "d8fc0432-d96c-4127-b071-aa458082c9cb", + "name": "BasementEntry", + "prefabId": "", + "x": 76, + "y": 43, + "symbol": "trigger_16", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "3" + }, + "__collapseElse": false + }, + "children": { + "true": [ + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "4", + "value": { + "type": "true" + } + }, + "id": "965bcb68-8580-4cc2-99ef-f7c5683dd787" + }, + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "ad0d9790-0584-4c0f-b00b-0028b4fc3de9", + "x": { + "type": "number", + "value": 9 + }, + "y": { + "type": "number", + "value": 15 + }, + "direction": "up", + "fadeSpeed": 2 + }, + "id": "03be24c0-f516-4659-bb08-0fae3748c432" + } + ], + "false": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Its locked?", + "fate6 had the key\nlast!", + "I should head to\nhis place." + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "ff7f5f35-a032-4717-a954-05faa215e9c9" + } + ] + }, + "id": "541b068c-0227-425c-90a4-e34413beb95b" + } + ], + "leaveScript": [], + "_index": 9 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger.gbsres b/gb_studio_project/project/scenes/overworld/triggers/trigger.gbsres new file mode 100644 index 0000000..7c13cf5 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "2c48b235-de84-46f1-904f-9c8a8bc881ef", + "name": "", + "prefabId": "", + "x": 52, + "y": 11, + "symbol": "trigger_0", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "921aae93-e5d5-4664-b838-f38008dd14a7", + "x": { + "type": "number", + "value": 24 + }, + "y": { + "type": "number", + "value": 15 + }, + "direction": "up", + "fadeSpeed": "2" + }, + "id": "07bf8d63-d8a0-4783-bc0c-c456b370adf2" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger.gbsres.bak b/gb_studio_project/project/scenes/overworld/triggers/trigger.gbsres.bak new file mode 100644 index 0000000..0b781a4 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "2c48b235-de84-46f1-904f-9c8a8bc881ef", + "name": "", + "prefabId": "", + "x": 52, + "y": 11, + "symbol": "trigger_0", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "921aae93-e5d5-4664-b838-f38008dd14a7", + "x": { + "type": "number", + "value": 9 + }, + "y": { + "type": "number", + "value": 14 + }, + "direction": "up", + "fadeSpeed": "2" + }, + "id": "07bf8d63-d8a0-4783-bc0c-c456b370adf2" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_10.gbsres.bak b/gb_studio_project/project/scenes/overworld/triggers/trigger_10.gbsres.bak new file mode 100644 index 0000000..53195d3 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_10.gbsres.bak @@ -0,0 +1,75 @@ +{ + "_resourceType": "trigger", + "id": "d8fc0432-d96c-4127-b071-aa458082c9cb", + "name": "", + "prefabId": "", + "x": 76, + "y": 43, + "symbol": "trigger_16", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "4" + }, + "__collapseElse": false + }, + "children": { + "true": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "ad0d9790-0584-4c0f-b00b-0028b4fc3de9", + "x": { + "type": "number", + "value": 9 + }, + "y": { + "type": "number", + "value": 15 + }, + "direction": "up", + "fadeSpeed": "2" + }, + "id": "03be24c0-f516-4659-bb08-0fae3748c432" + } + ], + "false": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Its locked!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "a", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "ff7f5f35-a032-4717-a954-05faa215e9c9" + } + ] + }, + "id": "541b068c-0227-425c-90a4-e34413beb95b" + } + ], + "leaveScript": [], + "_index": 9 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_2.gbsres b/gb_studio_project/project/scenes/overworld/triggers/trigger_2.gbsres new file mode 100644 index 0000000..3e154d9 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_2.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "6490e16f-1653-4b4b-a314-19828e814f10", + "name": "", + "prefabId": "", + "x": 68, + "y": 11, + "symbol": "trigger_2", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "7bc0030f-222d-4ec1-9d1e-e82ce34b52b9", + "x": { + "type": "number", + "value": 13 + }, + "y": { + "type": "number", + "value": 16 + }, + "direction": "up", + "fadeSpeed": "2" + }, + "id": "0fe0fc32-0063-41b0-a0f3-0de75d16cec5" + } + ], + "leaveScript": [], + "_index": 1 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_2.gbsres.bak b/gb_studio_project/project/scenes/overworld/triggers/trigger_2.gbsres.bak new file mode 100644 index 0000000..9170cf3 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_2.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "6490e16f-1653-4b4b-a314-19828e814f10", + "name": "", + "prefabId": "", + "x": 68, + "y": 11, + "symbol": "trigger_2", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "7bc0030f-222d-4ec1-9d1e-e82ce34b52b9", + "x": { + "type": "number", + "value": 9 + }, + "y": { + "type": "number", + "value": 14 + }, + "direction": "up", + "fadeSpeed": "2" + }, + "id": "0fe0fc32-0063-41b0-a0f3-0de75d16cec5" + } + ], + "leaveScript": [], + "_index": 1 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_3.gbsres b/gb_studio_project/project/scenes/overworld/triggers/trigger_3.gbsres new file mode 100644 index 0000000..2e6112a --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_3.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "5969b0d0-380b-4627-9bdf-1a137f18247a", + "name": "", + "prefabId": "", + "x": 68, + "y": 47, + "symbol": "trigger_4", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "bae8f25c-fef2-46c0-ac97-024c3b883b83", + "x": { + "type": "number", + "value": 24 + }, + "y": { + "type": "number", + "value": 16 + }, + "direction": "up", + "fadeSpeed": "2" + }, + "id": "4aaedc54-787c-49c7-9813-5617ce3b4002" + } + ], + "leaveScript": [], + "_index": 2 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_3.gbsres.bak b/gb_studio_project/project/scenes/overworld/triggers/trigger_3.gbsres.bak new file mode 100644 index 0000000..88cb708 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_3.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "5969b0d0-380b-4627-9bdf-1a137f18247a", + "name": "", + "prefabId": "", + "x": 68, + "y": 47, + "symbol": "trigger_4", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "bae8f25c-fef2-46c0-ac97-024c3b883b83", + "x": { + "type": "number", + "value": 9 + }, + "y": { + "type": "number", + "value": 14 + }, + "direction": "up", + "fadeSpeed": "2" + }, + "id": "4aaedc54-787c-49c7-9813-5617ce3b4002" + } + ], + "leaveScript": [], + "_index": 2 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_4.gbsres b/gb_studio_project/project/scenes/overworld/triggers/trigger_4.gbsres new file mode 100644 index 0000000..970e8e3 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_4.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "d186eaf4-fbae-45f3-9673-dd0ca9f7ec15", + "name": "", + "prefabId": "", + "x": 79, + "y": 24, + "symbol": "trigger_6", + "prefabScriptOverrides": {}, + "width": 1, + "height": 4, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "a1bfb5e1-0f44-49f4-8c94-62e2ab871548", + "x": { + "type": "number", + "value": 2 + }, + "y": { + "type": "number", + "value": 22 + }, + "direction": "right", + "fadeSpeed": "2" + }, + "id": "9ed4421d-7290-40b8-9764-dd9eadcd37c1" + } + ], + "leaveScript": [], + "_index": 3 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_4.gbsres.bak b/gb_studio_project/project/scenes/overworld/triggers/trigger_4.gbsres.bak new file mode 100644 index 0000000..8bc70d5 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_4.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "d186eaf4-fbae-45f3-9673-dd0ca9f7ec15", + "name": "", + "prefabId": "", + "x": 79, + "y": 24, + "symbol": "trigger_6", + "prefabScriptOverrides": {}, + "width": 1, + "height": 4, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 2 + }, + "y": { + "type": "number", + "value": 26 + }, + "direction": "right", + "fadeSpeed": "2" + }, + "id": "9ed4421d-7290-40b8-9764-dd9eadcd37c1" + } + ], + "leaveScript": [], + "_index": 3 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_5.gbsres b/gb_studio_project/project/scenes/overworld/triggers/trigger_5.gbsres new file mode 100644 index 0000000..3c567e7 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_5.gbsres @@ -0,0 +1,169 @@ +{ + "_resourceType": "trigger", + "id": "7ae2b8e3-e89b-46d2-abeb-fffd8daad1e2", + "name": "", + "prefabId": "", + "x": 8, + "y": 71, + "symbol": "trigger_9", + "prefabScriptOverrides": {}, + "width": 4, + "height": 1, + "script": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "L0" + }, + "__collapseElse": false + }, + "children": { + "true": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Seems to be a \npebble", + "on the road!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "a", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "f6c48e29-7cce-47cb-80d9-5b44b3b46065" + } + ], + "false": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "2" + }, + "__collapseElse": false + }, + "children": { + "true": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Seems to be a \npebble", + "on the road!", + "There was a key\nunder it!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": true, + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "36ddffc8-a602-46b9-bd77-c28875a3cac1" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "3", + "value": { + "type": "true" + } + }, + "id": "e3cc04fe-ee98-433d-ab4b-204daf28f709" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "L0", + "value": { + "type": "true" + } + }, + "id": "03f750d5-0932-4ab7-9be9-97cdde1c9a23" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "7", + "value": { + "type": "true" + } + }, + "id": "1d030731-07aa-4a4e-b398-51b418073f00" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "8", + "value": { + "type": "false" + } + }, + "id": "f4d06c0b-c86d-4994-8574-ce4ea2d89a95" + } + ], + "false": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Seems to be a \npebble", + "on the road!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "a", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "934ed60c-b3c2-4069-a2b5-a6035e6e3341" + } + ] + }, + "id": "580d2cb3-9bc8-48a2-b36e-2f19a9ec22d9" + } + ] + }, + "id": "2db95ed1-a488-43bc-8431-1334cac48dd8" + } + ], + "leaveScript": [], + "_index": 4 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_5.gbsres.bak b/gb_studio_project/project/scenes/overworld/triggers/trigger_5.gbsres.bak new file mode 100644 index 0000000..30528d5 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_5.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "dbb62333-a603-40bd-a1cf-048739941d76", + "name": "", + "prefabId": "", + "x": 0, + "y": 24, + "symbol": "trigger_7", + "prefabScriptOverrides": {}, + "width": 1, + "height": 4, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 9 + }, + "y": { + "type": "number", + "value": 65 + }, + "direction": "left", + "fadeSpeed": "2" + }, + "id": "1999f087-e176-4539-9bd5-1f32e42205c8" + } + ], + "leaveScript": [], + "_index": 4 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_6.gbsres b/gb_studio_project/project/scenes/overworld/triggers/trigger_6.gbsres new file mode 100644 index 0000000..01e2142 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_6.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "b8cec195-5b07-4bae-8f9c-d0bd352b9612", + "name": "", + "prefabId": "", + "x": 28, + "y": 11, + "symbol": "trigger_11", + "prefabScriptOverrides": {}, + "width": 4, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "26de2c26-0446-4df8-bb8d-e96ec5fa8aa5", + "x": { + "type": "number", + "value": 9 + }, + "y": { + "type": "number", + "value": 21 + }, + "direction": "up", + "fadeSpeed": "2" + }, + "id": "0c489219-1f81-4d10-9515-023f509f0916" + } + ], + "leaveScript": [], + "_index": 5 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_6.gbsres.bak b/gb_studio_project/project/scenes/overworld/triggers/trigger_6.gbsres.bak new file mode 100644 index 0000000..795918f --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_6.gbsres.bak @@ -0,0 +1,169 @@ +{ + "_resourceType": "trigger", + "id": "7ae2b8e3-e89b-46d2-abeb-fffd8daad1e2", + "name": "", + "prefabId": "", + "x": 8, + "y": 71, + "symbol": "trigger_9", + "prefabScriptOverrides": {}, + "width": 4, + "height": 1, + "script": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "L0" + }, + "__collapseElse": false + }, + "children": { + "true": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Seems to be a \npebble", + "on the road!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "a", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "f6c48e29-7cce-47cb-80d9-5b44b3b46065" + } + ], + "false": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "2" + }, + "__collapseElse": false + }, + "children": { + "true": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Seems to be a \npebble", + "on the road!", + "There was a key\nunder it!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": true, + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "36ddffc8-a602-46b9-bd77-c28875a3cac1" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "3", + "value": { + "type": "true" + } + }, + "id": "e3cc04fe-ee98-433d-ab4b-204daf28f709" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "L0", + "value": { + "type": "true" + } + }, + "id": "03f750d5-0932-4ab7-9be9-97cdde1c9a23" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "7", + "value": { + "type": "true" + } + }, + "id": "1d030731-07aa-4a4e-b398-51b418073f00" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "8", + "value": { + "type": "false" + } + }, + "id": "f4d06c0b-c86d-4994-8574-ce4ea2d89a95" + } + ], + "false": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Seems to be a \npebble", + "on the road!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "a", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "934ed60c-b3c2-4069-a2b5-a6035e6e3341" + } + ] + }, + "id": "580d2cb3-9bc8-48a2-b36e-2f19a9ec22d9" + } + ] + }, + "id": "2db95ed1-a488-43bc-8431-1334cac48dd8" + } + ], + "leaveScript": [], + "_index": 5 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_7.gbsres b/gb_studio_project/project/scenes/overworld/triggers/trigger_7.gbsres new file mode 100644 index 0000000..32c417c --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_7.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "fb0247dd-d2b9-4726-8f53-fdc706bc7d30", + "name": "", + "prefabId": "", + "x": 56, + "y": 43, + "symbol": "trigger_12", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "569043a6-e0fa-49c6-8a7f-c7ad900fac6d", + "x": { + "type": "number", + "value": 13 + }, + "y": { + "type": "number", + "value": 16 + }, + "direction": "up", + "fadeSpeed": "2" + }, + "id": "d992788e-ed58-4e4b-b79e-9c9aa9370b05" + } + ], + "leaveScript": [], + "_index": 6 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_7.gbsres.bak b/gb_studio_project/project/scenes/overworld/triggers/trigger_7.gbsres.bak new file mode 100644 index 0000000..9eb6421 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_7.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "b8cec195-5b07-4bae-8f9c-d0bd352b9612", + "name": "", + "prefabId": "", + "x": 28, + "y": 11, + "symbol": "trigger_11", + "prefabScriptOverrides": {}, + "width": 4, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "26de2c26-0446-4df8-bb8d-e96ec5fa8aa5", + "x": { + "type": "number", + "value": 9 + }, + "y": { + "type": "number", + "value": 21 + }, + "direction": "up", + "fadeSpeed": "2" + }, + "id": "0c489219-1f81-4d10-9515-023f509f0916" + } + ], + "leaveScript": [], + "_index": 6 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_8.gbsres b/gb_studio_project/project/scenes/overworld/triggers/trigger_8.gbsres new file mode 100644 index 0000000..233b296 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_8.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "f8a62862-c092-4523-9e03-531e7d340a59", + "name": "", + "prefabId": "", + "x": 34, + "y": 45, + "symbol": "trigger_13", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "d066371f-e6a9-47e8-8a59-7047b304183a", + "x": { + "type": "number", + "value": 24 + }, + "y": { + "type": "number", + "value": 16 + }, + "direction": "up", + "fadeSpeed": "2" + }, + "id": "6044fe83-789a-477f-8019-d765dacb98f3" + } + ], + "leaveScript": [], + "_index": 7 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_8.gbsres.bak b/gb_studio_project/project/scenes/overworld/triggers/trigger_8.gbsres.bak new file mode 100644 index 0000000..0728674 --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_8.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "fb0247dd-d2b9-4726-8f53-fdc706bc7d30", + "name": "", + "prefabId": "", + "x": 56, + "y": 43, + "symbol": "trigger_12", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "569043a6-e0fa-49c6-8a7f-c7ad900fac6d", + "x": { + "type": "number", + "value": 13 + }, + "y": { + "type": "number", + "value": 16 + }, + "direction": "up", + "fadeSpeed": "2" + }, + "id": "d992788e-ed58-4e4b-b79e-9c9aa9370b05" + } + ], + "leaveScript": [], + "_index": 7 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/overworld/triggers/trigger_9.gbsres.bak b/gb_studio_project/project/scenes/overworld/triggers/trigger_9.gbsres.bak new file mode 100644 index 0000000..73bb51a --- /dev/null +++ b/gb_studio_project/project/scenes/overworld/triggers/trigger_9.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "aa54237c-f747-46eb-9795-45c824a86c07", + "name": "", + "prefabId": "", + "x": 0, + "y": 24, + "symbol": "trigger_7", + "prefabScriptOverrides": {}, + "width": 1, + "height": 4, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 76 + }, + "y": { + "type": "number", + "value": 25 + }, + "direction": "left", + "fadeSpeed": "2" + }, + "id": "d4cd17b2-b104-481f-8378-9ddf4d819cb9" + } + ], + "leaveScript": [], + "_index": 9 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/quest_menu/actors/quest1.gbsres b/gb_studio_project/project/scenes/quest_menu/actors/quest1.gbsres new file mode 100644 index 0000000..e9c45a8 --- /dev/null +++ b/gb_studio_project/project/scenes/quest_menu/actors/quest1.gbsres @@ -0,0 +1,58 @@ +{ + "_resourceType": "actor", + "id": "f9466213-9ba6-4dff-94f7-3165e1b928d5", + "name": "Quest1", + "frame": 0, + "animate": false, + "spriteSheetId": "b7dddd0b-ae00-4ce5-b97e-1858aeee7fd8", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 255, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_16", + "script": [], + "startScript": [ + { + "id": "4bfb9fac-2e52-4f31-8693-2041e07cf6c7", + "command": "EVENT_IF", + "args": { + "variable": "0", + "__collapseElse": true, + "__label": "Quest Check", + "__collapse": false, + "condition": { + "type": "variable", + "value": "1" + } + }, + "children": { + "true": [ + { + "id": "65d99d36-1d00-4929-b2cd-e9160fa28285", + "command": "EVENT_ACTOR_SET_FRAME", + "args": { + "actorId": "$self$", + "frame": { + "type": "number", + "value": 1 + } + } + } + ], + "false": [] + } + } + ], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 2, + "y": 4, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/quest_menu/actors/quest1.gbsres.bak b/gb_studio_project/project/scenes/quest_menu/actors/quest1.gbsres.bak new file mode 100644 index 0000000..ebf49ea --- /dev/null +++ b/gb_studio_project/project/scenes/quest_menu/actors/quest1.gbsres.bak @@ -0,0 +1,58 @@ +{ + "_resourceType": "actor", + "id": "f9466213-9ba6-4dff-94f7-3165e1b928d5", + "name": "Quest1", + "frame": 0, + "animate": false, + "spriteSheetId": "b7dddd0b-ae00-4ce5-b97e-1858aeee7fd8", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 255, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_16", + "script": [], + "startScript": [ + { + "id": "4bfb9fac-2e52-4f31-8693-2041e07cf6c7", + "command": "EVENT_IF", + "args": { + "variable": "0", + "__collapseElse": true, + "__label": "Quest Check", + "__collapse": false, + "condition": { + "type": "variable", + "value": "0" + } + }, + "children": { + "true": [ + { + "id": "65d99d36-1d00-4929-b2cd-e9160fa28285", + "command": "EVENT_ACTOR_SET_FRAME", + "args": { + "actorId": "$self$", + "frame": { + "type": "number", + "value": 1 + } + } + } + ], + "false": [] + } + } + ], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 2, + "y": 4, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/quest_menu/actors/quest2.gbsres b/gb_studio_project/project/scenes/quest_menu/actors/quest2.gbsres new file mode 100644 index 0000000..404b7f8 --- /dev/null +++ b/gb_studio_project/project/scenes/quest_menu/actors/quest2.gbsres @@ -0,0 +1,56 @@ +{ + "_resourceType": "actor", + "id": "64d8b7fc-8aa3-4045-8453-304c019c6d23", + "name": "Quest2", + "frame": 0, + "animate": false, + "spriteSheetId": "b7dddd0b-ae00-4ce5-b97e-1858aeee7fd8", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 255, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_17", + "script": [], + "startScript": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "2" + }, + "__collapseElse": true, + "__label": "Quest Check" + }, + "children": { + "true": [ + { + "command": "EVENT_ACTOR_SET_FRAME", + "args": { + "actorId": "$self$", + "frame": { + "type": "number", + "value": 1 + } + }, + "id": "601f1694-9455-4077-8043-7b3a12e5f415" + } + ], + "false": [] + }, + "id": "b67ee083-0079-4f82-9802-b651f8686f5f" + } + ], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 2, + "y": 6, + "_index": 1 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/quest_menu/actors/quest2.gbsres.bak b/gb_studio_project/project/scenes/quest_menu/actors/quest2.gbsres.bak new file mode 100644 index 0000000..8880fae --- /dev/null +++ b/gb_studio_project/project/scenes/quest_menu/actors/quest2.gbsres.bak @@ -0,0 +1,56 @@ +{ + "_resourceType": "actor", + "id": "64d8b7fc-8aa3-4045-8453-304c019c6d23", + "name": "Quest2", + "frame": 0, + "animate": false, + "spriteSheetId": "b7dddd0b-ae00-4ce5-b97e-1858aeee7fd8", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 255, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_17", + "script": [], + "startScript": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "L0" + }, + "__collapseElse": true, + "__label": "Quest Check" + }, + "children": { + "true": [ + { + "command": "EVENT_ACTOR_SET_FRAME", + "args": { + "actorId": "$self$", + "frame": { + "type": "number", + "value": 1 + } + }, + "id": "601f1694-9455-4077-8043-7b3a12e5f415" + } + ], + "false": [] + }, + "id": "b67ee083-0079-4f82-9802-b651f8686f5f" + } + ], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 2, + "y": 6, + "_index": 1 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/quest_menu/actors/quest3.gbsres b/gb_studio_project/project/scenes/quest_menu/actors/quest3.gbsres new file mode 100644 index 0000000..f4cd78a --- /dev/null +++ b/gb_studio_project/project/scenes/quest_menu/actors/quest3.gbsres @@ -0,0 +1,56 @@ +{ + "_resourceType": "actor", + "id": "d4e298c3-d771-44db-a7fe-3eadd83846a3", + "name": "Quest3", + "frame": 0, + "animate": false, + "spriteSheetId": "b7dddd0b-ae00-4ce5-b97e-1858aeee7fd8", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 255, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_18", + "script": [], + "startScript": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "3" + }, + "__collapseElse": true, + "__label": "Quest Check" + }, + "children": { + "true": [ + { + "command": "EVENT_ACTOR_SET_FRAME", + "args": { + "actorId": "$self$", + "frame": { + "type": "number", + "value": 1 + } + }, + "id": "df05fefa-c528-4846-9cc6-036ac0eefffc" + } + ], + "false": [] + }, + "id": "f9d5db74-72e3-4a7a-9478-c30416353cfb" + } + ], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 2, + "y": 8, + "_index": 2 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/quest_menu/actors/quest3.gbsres.bak b/gb_studio_project/project/scenes/quest_menu/actors/quest3.gbsres.bak new file mode 100644 index 0000000..4da089e --- /dev/null +++ b/gb_studio_project/project/scenes/quest_menu/actors/quest3.gbsres.bak @@ -0,0 +1,56 @@ +{ + "_resourceType": "actor", + "id": "d4e298c3-d771-44db-a7fe-3eadd83846a3", + "name": "Quest3", + "frame": 0, + "animate": false, + "spriteSheetId": "b7dddd0b-ae00-4ce5-b97e-1858aeee7fd8", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 255, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_18", + "script": [], + "startScript": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "L0" + }, + "__collapseElse": true, + "__label": "Quest Check" + }, + "children": { + "true": [ + { + "command": "EVENT_ACTOR_SET_FRAME", + "args": { + "actorId": "$self$", + "frame": { + "type": "number", + "value": 1 + } + }, + "id": "df05fefa-c528-4846-9cc6-036ac0eefffc" + } + ], + "false": [] + }, + "id": "f9d5db74-72e3-4a7a-9478-c30416353cfb" + } + ], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 2, + "y": 8, + "_index": 2 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/quest_menu/actors/quest4.gbsres b/gb_studio_project/project/scenes/quest_menu/actors/quest4.gbsres new file mode 100644 index 0000000..aa11157 --- /dev/null +++ b/gb_studio_project/project/scenes/quest_menu/actors/quest4.gbsres @@ -0,0 +1,56 @@ +{ + "_resourceType": "actor", + "id": "342f356f-4698-4fed-bced-26280a78ddf9", + "name": "Quest4", + "frame": 0, + "animate": false, + "spriteSheetId": "b7dddd0b-ae00-4ce5-b97e-1858aeee7fd8", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 255, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_19", + "script": [], + "startScript": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "4" + }, + "__collapseElse": true, + "__label": "Quest Check" + }, + "children": { + "true": [ + { + "command": "EVENT_ACTOR_SET_FRAME", + "args": { + "actorId": "$self$", + "frame": { + "type": "number", + "value": 1 + } + }, + "id": "226800ab-9121-42fc-a98c-be0f61e6f9bc" + } + ], + "false": [] + }, + "id": "f7e57e29-d7f7-4c22-b7ff-7c6917025fa9" + } + ], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 2, + "y": 10, + "_index": 3 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/quest_menu/actors/quest4.gbsres.bak b/gb_studio_project/project/scenes/quest_menu/actors/quest4.gbsres.bak new file mode 100644 index 0000000..421a490 --- /dev/null +++ b/gb_studio_project/project/scenes/quest_menu/actors/quest4.gbsres.bak @@ -0,0 +1,56 @@ +{ + "_resourceType": "actor", + "id": "342f356f-4698-4fed-bced-26280a78ddf9", + "name": "Quest4", + "frame": 0, + "animate": false, + "spriteSheetId": "b7dddd0b-ae00-4ce5-b97e-1858aeee7fd8", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 255, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_19", + "script": [], + "startScript": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "L0" + }, + "__collapseElse": true, + "__label": "Quest Check" + }, + "children": { + "true": [ + { + "command": "EVENT_ACTOR_SET_FRAME", + "args": { + "actorId": "$self$", + "frame": { + "type": "number", + "value": 1 + } + }, + "id": "226800ab-9121-42fc-a98c-be0f61e6f9bc" + } + ], + "false": [] + }, + "id": "f7e57e29-d7f7-4c22-b7ff-7c6917025fa9" + } + ], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 2, + "y": 10, + "_index": 3 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/quest_menu/actors/quest5.gbsres b/gb_studio_project/project/scenes/quest_menu/actors/quest5.gbsres new file mode 100644 index 0000000..d5f56d4 --- /dev/null +++ b/gb_studio_project/project/scenes/quest_menu/actors/quest5.gbsres @@ -0,0 +1,55 @@ +{ + "_resourceType": "actor", + "id": "4efc2727-730c-4c8e-8fe7-f472b4069433", + "name": "Quest5", + "frame": 0, + "animate": false, + "spriteSheetId": "b7dddd0b-ae00-4ce5-b97e-1858aeee7fd8", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 255, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_20", + "script": [], + "startScript": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "5" + }, + "__collapseElse": true + }, + "children": { + "true": [ + { + "command": "EVENT_ACTOR_SET_FRAME", + "args": { + "actorId": "$self$", + "frame": { + "type": "number", + "value": 1 + } + }, + "id": "20af8478-1fea-4c2b-8e28-fb29b7efd9ad" + } + ], + "false": [] + }, + "id": "2de5d8ba-b81f-4bdc-a328-d143cbbb7efb" + } + ], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 2, + "y": 12, + "_index": 4 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/quest_menu/scene.gbsres b/gb_studio_project/project/scenes/quest_menu/scene.gbsres new file mode 100644 index 0000000..ef2db4a --- /dev/null +++ b/gb_studio_project/project/scenes/quest_menu/scene.gbsres @@ -0,0 +1,51 @@ +{ + "_resourceType": "scene", + "id": "cdd90998-b335-4917-9504-469bb19b4649", + "_index": 14, + "name": "Quest Menu", + "backgroundId": "d7655417-bac8-45ed-91c6-8fd6ff87953d", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "", + "autoFadeSpeed": 1, + "symbol": "scene_15", + "x": 345.28244274809157, + "y": 575.0534351145038, + "script": [ + { + "command": "EVENT_ACTOR_DEACTIVATE", + "args": { + "actorId": "$self$" + }, + "id": "2a9f033b-75a6-487e-8e1e-a988a900139e" + }, + { + "command": "EVENT_AWAIT_INPUT", + "args": { + "input": [ + "a", + "b", + "start", + "select" + ] + }, + "id": "8b6f5629-ff7c-4c44-b3ea-d6f6913c43d6" + }, + { + "command": "EVENT_SCENE_POP_STATE", + "args": { + "fadeSpeed": 1 + }, + "id": "52f12785-e595-4366-906b-fce55c2b0be0" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385", + "autoFadeEventCollapse": false +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/quest_menu/scene.gbsres.bak b/gb_studio_project/project/scenes/quest_menu/scene.gbsres.bak new file mode 100644 index 0000000..8d1c608 --- /dev/null +++ b/gb_studio_project/project/scenes/quest_menu/scene.gbsres.bak @@ -0,0 +1,51 @@ +{ + "_resourceType": "scene", + "id": "cdd90998-b335-4917-9504-469bb19b4649", + "_index": 14, + "name": "Quest Menu", + "backgroundId": "d7655417-bac8-45ed-91c6-8fd6ff87953d", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "", + "autoFadeSpeed": 1, + "symbol": "scene_15", + "x": 345.28244274809157, + "y": 575.0534351145038, + "script": [ + { + "command": "EVENT_ACTOR_DEACTIVATE", + "args": { + "actorId": "$self$" + }, + "id": "2a9f033b-75a6-487e-8e1e-a988a900139e" + }, + { + "command": "EVENT_AWAIT_INPUT", + "args": { + "input": [ + "a", + "b", + "start", + "select" + ] + }, + "id": "8b6f5629-ff7c-4c44-b3ea-d6f6913c43d6" + }, + { + "command": "EVENT_SCENE_POP_STATE", + "args": { + "fadeSpeed": 1 + }, + "id": "52f12785-e595-4366-906b-fce55c2b0be0" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33", + "autoFadeEventCollapse": false +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/scene_15/actors/actor.gbsres.bak b/gb_studio_project/project/scenes/scene_15/actors/actor.gbsres.bak new file mode 100644 index 0000000..3c2c3bc --- /dev/null +++ b/gb_studio_project/project/scenes/scene_15/actors/actor.gbsres.bak @@ -0,0 +1,27 @@ +{ + "_resourceType": "actor", + "id": "d4e298c3-d771-44db-a7fe-3eadd83846a3", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "b7dddd0b-ae00-4ce5-b97e-1858aeee7fd8", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_18", + "script": [], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 2, + "y": 8, + "_index": 2 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/scene_15/actors/actor_2.gbsres.bak b/gb_studio_project/project/scenes/scene_15/actors/actor_2.gbsres.bak new file mode 100644 index 0000000..3c2c3bc --- /dev/null +++ b/gb_studio_project/project/scenes/scene_15/actors/actor_2.gbsres.bak @@ -0,0 +1,27 @@ +{ + "_resourceType": "actor", + "id": "d4e298c3-d771-44db-a7fe-3eadd83846a3", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "b7dddd0b-ae00-4ce5-b97e-1858aeee7fd8", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_18", + "script": [], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 2, + "y": 8, + "_index": 2 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/scene_15/actors/quest2.gbsres.bak b/gb_studio_project/project/scenes/scene_15/actors/quest2.gbsres.bak new file mode 100644 index 0000000..63c79b0 --- /dev/null +++ b/gb_studio_project/project/scenes/scene_15/actors/quest2.gbsres.bak @@ -0,0 +1,44 @@ +{ + "_resourceType": "actor", + "id": "64d8b7fc-8aa3-4045-8453-304c019c6d23", + "name": "Quest2", + "frame": 0, + "animate": false, + "spriteSheetId": "b7dddd0b-ae00-4ce5-b97e-1858aeee7fd8", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 255, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_17", + "script": [], + "startScript": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "L0" + }, + "__collapseElse": true, + "__label": "Quest Check" + }, + "children": { + "true": [], + "false": [] + }, + "id": "b67ee083-0079-4f82-9802-b651f8686f5f" + } + ], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 2, + "y": 6, + "_index": 1 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/scene_3/scene.gbsres.bak b/gb_studio_project/project/scenes/scene_3/scene.gbsres.bak new file mode 100644 index 0000000..ae8a109 --- /dev/null +++ b/gb_studio_project/project/scenes/scene_3/scene.gbsres.bak @@ -0,0 +1,22 @@ +{ + "_resourceType": "scene", + "id": "7bc0030f-222d-4ec1-9d1e-e82ce34b52b9", + "_index": 2, + "name": "Scene 3", + "backgroundId": "a2881a60-75d5-4c7f-94c6-15e6a7ab172e", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f52+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0f4+0010+0fb+002+0f31+", + "autoFadeSpeed": 1, + "symbol": "scene_3", + "x": 1440, + "y": 200, + "script": [], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [] +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/slighhousef2/scene.gbsres b/gb_studio_project/project/scenes/slighhousef2/scene.gbsres new file mode 100644 index 0000000..21192bb --- /dev/null +++ b/gb_studio_project/project/scenes/slighhousef2/scene.gbsres @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "9df635c6-1e51-4cdf-8f04-367786d748ae", + "_index": 10, + "name": "SlighHousef2", + "backgroundId": "56788473-c054-49ab-8d98-150179cbb80c", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0fe+002+0f12+002+0f4+002+0fa+004+0f4+002+0f6+0064+0f4+008+0f2+006+0f4+008+0f2+0012+0f2+008a+", + "autoFadeSpeed": 1, + "symbol": "scene_11", + "x": 1720, + "y": 592, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "18f66311-1d25-4939-89d0-1a2f8d2b0ede" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "55e2f8e8-c3d1-4436-a6bd-426fda728eb5" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/slighhousef2/scene.gbsres.bak b/gb_studio_project/project/scenes/slighhousef2/scene.gbsres.bak new file mode 100644 index 0000000..1643791 --- /dev/null +++ b/gb_studio_project/project/scenes/slighhousef2/scene.gbsres.bak @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "9df635c6-1e51-4cdf-8f04-367786d748ae", + "_index": 10, + "name": "SlighHousef2", + "backgroundId": "56788473-c054-49ab-8d98-150179cbb80c", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0fe+002+0f12+002+0f4+002+0fa+004+0f4+002+0f6+0064+0f4+008+0f2+006+0f4+008+0f2+0012+0f2+008a+", + "autoFadeSpeed": 1, + "symbol": "scene_11", + "x": 1720, + "y": 592, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "18f66311-1d25-4939-89d0-1a2f8d2b0ede" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "55e2f8e8-c3d1-4436-a6bd-426fda728eb5" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/slighhousef2/triggers/trigger.gbsres b/gb_studio_project/project/scenes/slighhousef2/triggers/trigger.gbsres new file mode 100644 index 0000000..1621e36 --- /dev/null +++ b/gb_studio_project/project/scenes/slighhousef2/triggers/trigger.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "3310d491-99c9-4e27-9917-b38424abf721", + "name": "", + "prefabId": "", + "x": 14, + "y": 1, + "symbol": "trigger_20", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "bae8f25c-fef2-46c0-ac97-024c3b883b83", + "x": { + "type": "number", + "value": 26 + }, + "y": { + "type": "number", + "value": 3 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "e838ec0c-772e-4718-b98b-575d4357dbad" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/slighshouse/actors/actor.gbsres.bak b/gb_studio_project/project/scenes/slighshouse/actors/actor.gbsres.bak new file mode 100644 index 0000000..d0e78b0 --- /dev/null +++ b/gb_studio_project/project/scenes/slighshouse/actors/actor.gbsres.bak @@ -0,0 +1,97 @@ +{ + "_resourceType": "actor", + "id": "dd1d0d4e-788d-43d9-a5c9-73793a9cca1b", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "133467f8-a106-4774-82d2-34e0dae95eb0", + "prefabId": "", + "direction": "down", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_3", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Head to the", + "Basement?" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "a", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "e150fc9b-9bb7-46de-9a43-3f068a801358" + }, + { + "command": "EVENT_CHOICE", + "args": { + "variable": "L0", + "trueText": "Yuh!", + "falseText": "Nuh!", + "__collapse": false + }, + "id": "938740ab-df1f-494b-be7f-7496c25239bb" + }, + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "L0" + }, + "__collapseElse": true + }, + "children": { + "true": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "ad0d9790-0584-4c0f-b00b-0028b4fc3de9", + "x": { + "type": "number", + "value": 9 + }, + "y": { + "type": "number", + "value": 16 + }, + "direction": "up", + "fadeSpeed": "2" + }, + "id": "38ae7d47-d251-4ccc-9a43-ee23afec7870" + } + ], + "false": [] + }, + "id": "34010f0a-cb24-403f-8ecd-f0b32e9adab1" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 28, + "y": 5, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/slighshouse/scene.gbsres b/gb_studio_project/project/scenes/slighshouse/scene.gbsres new file mode 100644 index 0000000..d9eb12e --- /dev/null +++ b/gb_studio_project/project/scenes/slighshouse/scene.gbsres @@ -0,0 +1,39 @@ +{ + "_resourceType": "scene", + "id": "bae8f25c-fef2-46c0-ac97-024c3b883b83", + "_index": 3, + "name": "SlighsHouse", + "backgroundId": "1a99f516-7544-478a-b05c-2e2fd72feb61", + "tilesetId": "", + "width": 32, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f1a+002+0f1e+002+0f10+001a+0f2+001e+0f2+001e+0f2+001e+0f2+002+0f4+001c+0f4+001c+0f4+00132+", + "autoFadeSpeed": 1, + "symbol": "scene_4", + "x": 1432, + "y": 696, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "b5a81f5f-a2ad-46f5-b083-b50d7198386b" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "d5d47b9d-feef-401d-8bc8-7f9d9e8db649" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385", + "labelColor": "red" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/slighshouse/scene.gbsres.bak b/gb_studio_project/project/scenes/slighshouse/scene.gbsres.bak new file mode 100644 index 0000000..720ab7d --- /dev/null +++ b/gb_studio_project/project/scenes/slighshouse/scene.gbsres.bak @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "bae8f25c-fef2-46c0-ac97-024c3b883b83", + "_index": 3, + "name": "SlighsHouse", + "backgroundId": "1a99f516-7544-478a-b05c-2e2fd72feb61", + "tilesetId": "", + "width": 32, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f1a+002+0f1e+002+0f10+001a+0f2+001e+0f2+001e+0f2+001e+0f2+002+0f4+001c+0f4+001c+0f4+00132+", + "autoFadeSpeed": 1, + "symbol": "scene_4", + "x": 1432, + "y": 696, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "b5a81f5f-a2ad-46f5-b083-b50d7198386b" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "d5d47b9d-feef-401d-8bc8-7f9d9e8db649" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/slighshouse/triggers/starttext.gbsres b/gb_studio_project/project/scenes/slighshouse/triggers/starttext.gbsres new file mode 100644 index 0000000..3b52f42 --- /dev/null +++ b/gb_studio_project/project/scenes/slighshouse/triggers/starttext.gbsres @@ -0,0 +1,79 @@ +{ + "_resourceType": "trigger", + "id": "1757f733-20e4-4312-a37f-3b71f2c8fa4b", + "name": "StartText", + "prefabId": "", + "x": 14, + "y": 8, + "symbol": "trigger_23", + "prefabScriptOverrides": {}, + "width": 2, + "height": 2, + "script": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "L0" + }, + "__collapseElse": false + }, + "children": { + "true": [], + "false": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "I need to grab\nsomething from", + "the basement out\nback!" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "b3fed1cb-7071-45be-8994-b3ff04310344" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "L0", + "value": { + "type": "true" + }, + "__collapse": false + }, + "id": "21fc8d9a-685e-4403-989d-f1154d249cfc" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "8", + "value": { + "type": "true" + } + }, + "id": "ef932da7-01ec-4d32-a9a0-e63b687a33f7" + } + ] + }, + "id": "ceeeb0ab-95cf-4b64-84dd-03be4d2537b8" + } + ], + "leaveScript": [], + "_index": 2 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/slighshouse/triggers/starttext.gbsres.bak b/gb_studio_project/project/scenes/slighshouse/triggers/starttext.gbsres.bak new file mode 100644 index 0000000..c75c4bc --- /dev/null +++ b/gb_studio_project/project/scenes/slighshouse/triggers/starttext.gbsres.bak @@ -0,0 +1,69 @@ +{ + "_resourceType": "trigger", + "id": "1757f733-20e4-4312-a37f-3b71f2c8fa4b", + "name": "StartText", + "prefabId": "", + "x": 14, + "y": 8, + "symbol": "trigger_23", + "prefabScriptOverrides": {}, + "width": 2, + "height": 2, + "script": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "L0" + }, + "__collapseElse": false + }, + "children": { + "true": [], + "false": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "I need to grab\nsomething from", + "the basement out\nback!" + ], + "__section": "behavior", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "b3fed1cb-7071-45be-8994-b3ff04310344" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "L0", + "value": { + "type": "true" + }, + "__collapse": false + }, + "id": "21fc8d9a-685e-4403-989d-f1154d249cfc" + } + ] + }, + "id": "ceeeb0ab-95cf-4b64-84dd-03be4d2537b8" + } + ], + "leaveScript": [], + "_index": 2 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/slighshouse/triggers/trigger.gbsres b/gb_studio_project/project/scenes/slighshouse/triggers/trigger.gbsres new file mode 100644 index 0000000..e0d8755 --- /dev/null +++ b/gb_studio_project/project/scenes/slighshouse/triggers/trigger.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "19fadfdb-5c6e-43b0-8825-3275b4f64229", + "name": "", + "prefabId": "", + "x": 24, + "y": 17, + "symbol": "trigger_5", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 68 + }, + "y": { + "type": "number", + "value": 49 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "c420a824-36f5-49f1-8dfd-a050d4aed13d" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/slighshouse/triggers/trigger.gbsres.bak b/gb_studio_project/project/scenes/slighshouse/triggers/trigger.gbsres.bak new file mode 100644 index 0000000..63af43f --- /dev/null +++ b/gb_studio_project/project/scenes/slighshouse/triggers/trigger.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "19fadfdb-5c6e-43b0-8825-3275b4f64229", + "name": "", + "prefabId": "", + "x": 9, + "y": 15, + "symbol": "trigger_5", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 68 + }, + "y": { + "type": "number", + "value": 49 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "c420a824-36f5-49f1-8dfd-a050d4aed13d" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/slighshouse/triggers/trigger_2.gbsres b/gb_studio_project/project/scenes/slighshouse/triggers/trigger_2.gbsres new file mode 100644 index 0000000..912698b --- /dev/null +++ b/gb_studio_project/project/scenes/slighshouse/triggers/trigger_2.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "83a24d20-c295-4b18-905c-520e61556306", + "name": "", + "prefabId": "", + "x": 26, + "y": 1, + "symbol": "trigger_19", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "9df635c6-1e51-4cdf-8f04-367786d748ae", + "x": { + "type": "number", + "value": 14 + }, + "y": { + "type": "number", + "value": 3 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "75eeb67c-39e6-414e-948f-0bdd27a1133c" + } + ], + "leaveScript": [], + "_index": 1 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/slighshouse/triggers/trigger_3.gbsres.bak b/gb_studio_project/project/scenes/slighshouse/triggers/trigger_3.gbsres.bak new file mode 100644 index 0000000..452e6ab --- /dev/null +++ b/gb_studio_project/project/scenes/slighshouse/triggers/trigger_3.gbsres.bak @@ -0,0 +1,68 @@ +{ + "_resourceType": "trigger", + "id": "1757f733-20e4-4312-a37f-3b71f2c8fa4b", + "name": "", + "prefabId": "", + "x": 14, + "y": 8, + "symbol": "trigger_23", + "prefabScriptOverrides": {}, + "width": 2, + "height": 2, + "script": [ + { + "command": "EVENT_IF", + "args": { + "condition": { + "type": "variable", + "value": "L0" + }, + "__collapseElse": false + }, + "children": { + "true": [], + "false": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "guh" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "b3fed1cb-7071-45be-8994-b3ff04310344" + }, + { + "command": "EVENT_SET_VALUE", + "args": { + "variable": "L0", + "value": { + "type": "true" + }, + "__collapse": false + }, + "id": "21fc8d9a-685e-4403-989d-f1154d249cfc" + } + ] + }, + "id": "ceeeb0ab-95cf-4b64-84dd-03be4d2537b8" + } + ], + "leaveScript": [], + "_index": 2 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/startscreen/scene.gbsres b/gb_studio_project/project/scenes/startscreen/scene.gbsres new file mode 100644 index 0000000..52fab95 --- /dev/null +++ b/gb_studio_project/project/scenes/startscreen/scene.gbsres @@ -0,0 +1,58 @@ +{ + "_resourceType": "scene", + "id": "80bdf4ec-1fcb-48d8-9633-5d55cbbd72b7", + "_index": 12, + "name": "StartScreen", + "backgroundId": "9e2cc3b5-1a7f-4842-94a4-1780840adf27", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "LOGO", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "", + "autoFadeSpeed": 1, + "symbol": "scene_13", + "x": 360, + "y": 128, + "script": [ + { + "command": "EVENT_SET_INPUT_SCRIPT", + "args": { + "input": [ + "a", + "start" + ], + "override": true, + "__scriptTabs": "press", + "__collapse": false + }, + "children": { + "true": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "a1bfb5e1-0f44-49f4-8c94-62e2ab871548", + "x": { + "type": "number", + "value": 11 + }, + "y": { + "type": "number", + "value": 16 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "9ffc3716-9d92-4dbb-99e1-d89dcbc8cfd8" + } + ] + }, + "id": "5629f726-8477-4a0e-a96f-6e19decd5959" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "autoFadeEventCollapse": false +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/startscreen/scene.gbsres.bak b/gb_studio_project/project/scenes/startscreen/scene.gbsres.bak new file mode 100644 index 0000000..b2de487 --- /dev/null +++ b/gb_studio_project/project/scenes/startscreen/scene.gbsres.bak @@ -0,0 +1,58 @@ +{ + "_resourceType": "scene", + "id": "80bdf4ec-1fcb-48d8-9633-5d55cbbd72b7", + "_index": 12, + "name": "StartScreen", + "backgroundId": "9e2cc3b5-1a7f-4842-94a4-1780840adf27", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "LOGO", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "", + "autoFadeSpeed": 1, + "symbol": "scene_13", + "x": 360, + "y": 128, + "script": [ + { + "command": "EVENT_SET_INPUT_SCRIPT", + "args": { + "input": [ + "a", + "start" + ], + "override": true, + "__scriptTabs": "press", + "__collapse": false + }, + "children": { + "true": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "bae8f25c-fef2-46c0-ac97-024c3b883b83", + "x": { + "type": "number", + "value": 14 + }, + "y": { + "type": "number", + "value": 8 + }, + "direction": "left", + "fadeSpeed": "2" + }, + "id": "9ffc3716-9d92-4dbb-99e1-d89dcbc8cfd8" + } + ] + }, + "id": "5629f726-8477-4a0e-a96f-6e19decd5959" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "autoFadeEventCollapse": false +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/tappyhouse/actors/actor.gbsres b/gb_studio_project/project/scenes/tappyhouse/actors/actor.gbsres new file mode 100644 index 0000000..7327dfd --- /dev/null +++ b/gb_studio_project/project/scenes/tappyhouse/actors/actor.gbsres @@ -0,0 +1,65 @@ +{ + "_resourceType": "actor", + "id": "0d9583bb-358d-4b3a-b4f7-7d208c443d80", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "30993594-6bce-4263-97c6-1a686ab0f30b", + "prefabId": "", + "direction": "up", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_1", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Thank you\nballincat43", + "oh! uh..\nskibidi gyaat!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "b7eb01cb-8814-4d65-810a-d563df03e776" + }, + { + "command": "EVENT_ACTOR_SET_DIRECTION", + "args": { + "actorId": "$self$", + "direction": { + "type": "direction", + "value": "up" + } + }, + "id": "9c774420-ae4f-431b-90d0-ec1a616256c0" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 0, + "y": 4, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/tappyhouse/actors/actor.gbsres.bak b/gb_studio_project/project/scenes/tappyhouse/actors/actor.gbsres.bak new file mode 100644 index 0000000..9f65330 --- /dev/null +++ b/gb_studio_project/project/scenes/tappyhouse/actors/actor.gbsres.bak @@ -0,0 +1,65 @@ +{ + "_resourceType": "actor", + "id": "0d9583bb-358d-4b3a-b4f7-7d208c443d80", + "name": "", + "frame": 0, + "animate": false, + "spriteSheetId": "30993594-6bce-4263-97c6-1a686ab0f30b", + "prefabId": "", + "direction": "up", + "moveSpeed": 1, + "animSpeed": 15, + "paletteId": "", + "isPinned": false, + "persistent": false, + "collisionGroup": "", + "prefabScriptOverrides": {}, + "symbol": "actor_1", + "script": [ + { + "command": "EVENT_TEXT", + "args": { + "text": [ + "Thank you\nBallinCat43", + "oh! uh..\nskibidi gyaat!" + ], + "__section": "text", + "avatarId": "", + "minHeight": 4, + "maxHeight": 7, + "textX": 1, + "textY": 1, + "textHeight": 5, + "position": "bottom", + "clearPrevious": true, + "showFrame": "true", + "speedIn": -1, + "speedOut": -1, + "closeWhen": "key", + "closeButton": "any", + "closeDelayTime": 0.5, + "closeDelayFrames": 30 + }, + "id": "b7eb01cb-8814-4d65-810a-d563df03e776" + }, + { + "command": "EVENT_ACTOR_SET_DIRECTION", + "args": { + "actorId": "$self$", + "direction": { + "type": "direction", + "value": "up" + } + }, + "id": "9c774420-ae4f-431b-90d0-ec1a616256c0" + } + ], + "startScript": [], + "updateScript": [], + "hit1Script": [], + "hit2Script": [], + "hit3Script": [], + "x": 0, + "y": 4, + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/tappyhouse/scene.gbsres b/gb_studio_project/project/scenes/tappyhouse/scene.gbsres new file mode 100644 index 0000000..15a94c2 --- /dev/null +++ b/gb_studio_project/project/scenes/tappyhouse/scene.gbsres @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "7bc0030f-222d-4ec1-9d1e-e82ce34b52b9", + "_index": 2, + "name": "TappyHouse", + "backgroundId": "a2881a60-75d5-4c7f-94c6-15e6a7ab172e", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f2a+00a+0f8+0042+0f4+0010+0f4+0010+0f4+0010+0f4+00aa+", + "autoFadeSpeed": 1, + "symbol": "scene_3", + "x": 1440, + "y": 304, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "e22d6e45-c2d9-4258-8593-70aeed1f8f6c" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "28dd4168-d4f4-4b8e-a5d0-ddc791ab2008" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "31711211-8d44-444d-8f97-46efd81ce385" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/tappyhouse/scene.gbsres.bak b/gb_studio_project/project/scenes/tappyhouse/scene.gbsres.bak new file mode 100644 index 0000000..06cb68e --- /dev/null +++ b/gb_studio_project/project/scenes/tappyhouse/scene.gbsres.bak @@ -0,0 +1,38 @@ +{ + "_resourceType": "scene", + "id": "7bc0030f-222d-4ec1-9d1e-e82ce34b52b9", + "_index": 2, + "name": "TappyHouse", + "backgroundId": "a2881a60-75d5-4c7f-94c6-15e6a7ab172e", + "tilesetId": "", + "width": 20, + "height": 18, + "type": "TOPDOWN", + "paletteIds": [], + "spritePaletteIds": [], + "collisions": "0f2a+00a+0f8+0042+0f4+0010+0f4+0010+0f4+0010+0f4+00aa+", + "autoFadeSpeed": 1, + "symbol": "scene_3", + "x": 1440, + "y": 304, + "script": [ + { + "command": "EVENT_CALL_CUSTOM_EVENT", + "args": { + "customEventId": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb" + }, + "id": "e22d6e45-c2d9-4258-8593-70aeed1f8f6c" + }, + { + "command": "EVENT_MUSIC_PLAY", + "args": { + "musicId": "e02b35ec-bce2-44c5-8535-8b48a1c89513" + }, + "id": "28dd4168-d4f4-4b8e-a5d0-ddc791ab2008" + } + ], + "playerHit1Script": [], + "playerHit2Script": [], + "playerHit3Script": [], + "playerSpriteSheetId": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33" +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/tappyhouse/triggers/trigger.gbsres b/gb_studio_project/project/scenes/tappyhouse/triggers/trigger.gbsres new file mode 100644 index 0000000..2f10a42 --- /dev/null +++ b/gb_studio_project/project/scenes/tappyhouse/triggers/trigger.gbsres @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "8d094c89-55b9-427a-b486-080d5717cc69", + "name": "", + "prefabId": "", + "x": 12, + "y": 17, + "symbol": "trigger_3", + "prefabScriptOverrides": {}, + "width": 4, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 68 + }, + "y": { + "type": "number", + "value": 13 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "d52daab9-409b-43ed-9905-77008ea7e6c3" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scenes/tappyhouse/triggers/trigger.gbsres.bak b/gb_studio_project/project/scenes/tappyhouse/triggers/trigger.gbsres.bak new file mode 100644 index 0000000..8538bdc --- /dev/null +++ b/gb_studio_project/project/scenes/tappyhouse/triggers/trigger.gbsres.bak @@ -0,0 +1,33 @@ +{ + "_resourceType": "trigger", + "id": "e086ad7e-dcf7-460b-a656-b58103d39b93", + "name": "", + "prefabId": "", + "x": 9, + "y": 15, + "symbol": "trigger_3", + "prefabScriptOverrides": {}, + "width": 2, + "height": 1, + "script": [ + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "aae81f2f-404d-41db-a9fd-32c62d07c37e", + "x": { + "type": "number", + "value": 68 + }, + "y": { + "type": "number", + "value": 13 + }, + "direction": "down", + "fadeSpeed": "2" + }, + "id": "2bc1c8e9-28ed-4383-b56c-4c26a575e7aa" + } + ], + "leaveScript": [], + "_index": 0 +} \ No newline at end of file diff --git a/gb_studio_project/project/scripts/questmenu.gbsres b/gb_studio_project/project/scripts/questmenu.gbsres new file mode 100644 index 0000000..ee90f99 --- /dev/null +++ b/gb_studio_project/project/scripts/questmenu.gbsres @@ -0,0 +1,48 @@ +{ + "_resourceType": "script", + "id": "d69afa9d-9021-4b8e-b876-5cfc6da0e2fb", + "name": "QuestMenu", + "description": "Press Start to Quest together with us!", + "variables": {}, + "actors": {}, + "symbol": "script_1", + "script": [ + { + "command": "EVENT_SET_INPUT_SCRIPT", + "args": { + "input": [ + "start" + ], + "override": true, + "__scriptTabs": "press" + }, + "children": { + "true": [ + { + "command": "EVENT_SCENE_PUSH_STATE", + "args": {}, + "id": "7521920b-846a-479e-a0d2-a3465986ec11" + }, + { + "command": "EVENT_SWITCH_SCENE", + "args": { + "sceneId": "cdd90998-b335-4917-9504-469bb19b4649", + "x": { + "type": "number", + "value": 0 + }, + "y": { + "type": "number", + "value": 0 + }, + "direction": "", + "fadeSpeed": 1 + }, + "id": "0b41a76f-f0b9-4aeb-b340-75b55cf96f27" + } + ] + }, + "id": "d7c90f6e-4dc3-41fc-ba4f-a55d9054bb44" + } + ] +} \ No newline at end of file diff --git a/gb_studio_project/project/settings.gbsres b/gb_studio_project/project/settings.gbsres new file mode 100644 index 0000000..b3503f1 --- /dev/null +++ b/gb_studio_project/project/settings.gbsres @@ -0,0 +1,89 @@ +{ + "_resourceType": "settings", + "startSceneId": "961b9a60-e2d2-4dc4-a52b-577e08d087e1", + "startX": 0, + "startY": 0, + "startMoveSpeed": 1, + "startAnimSpeed": 15, + "startDirection": "down", + "showCollisionExtraTiles": false, + "sgbEnabled": false, + "customHead": "", + "defaultBackgroundPaletteIds": [ + "default-bg-1", + "default-bg-2", + "default-bg-3", + "default-bg-4", + "default-bg-5", + "default-bg-6", + "dmg", + "default-ui" + ], + "defaultSpritePaletteIds": [ + "default-sprite", + "default-sprite", + "default-sprite", + "default-sprite", + "default-sprite", + "default-sprite", + "default-sprite", + "default-sprite" + ], + "defaultSpritePaletteId": "default-sprite", + "defaultUIPaletteId": "default-ui", + "playerPaletteId": "", + "defaultFontId": "4bd653f0-e08d-424e-9e5b-c1f3aaa21e47", + "defaultCharacterEncoding": "", + "defaultPlayerSprites": { + "TOPDOWN": "581d34d0-9591-4e6e-a609-1d94f203b0cd", + "PLATFORM": "581d34d0-9591-4e6e-a609-1d94f203b0cd", + "ADVENTURE": "581d34d0-9591-4e6e-a609-1d94f203b0cd", + "SHMUP": "581d34d0-9591-4e6e-a609-1d94f203b0cd", + "POINTNCLICK": "581d34d0-9591-4e6e-a609-1d94f203b0cd", + "LOGO": "581d34d0-9591-4e6e-a609-1d94f203b0cd" + }, + "musicDriver": "huge", + "cartType": "mbc5", + "batterylessEnabled": false, + "customColorsWhite": "E8F8E0", + "customColorsLight": "B0F088", + "customColorsDark": "509878", + "customColorsBlack": "202850", + "customControlsUp": [ + "ArrowUp", + "w" + ], + "customControlsDown": [ + "ArrowDown", + "s" + ], + "customControlsLeft": [ + "ArrowLeft", + "a" + ], + "customControlsRight": [ + "ArrowRight", + "d" + ], + "customControlsA": [ + "Alt", + "z", + "j" + ], + "customControlsB": [ + "Control", + "k", + "x" + ], + "customControlsStart": [ + "Enter" + ], + "customControlsSelect": [ + "Shift" + ], + "colorMode": "color", + "generateDebugFilesEnabled": false, + "compilerPreset": 3000, + "scriptEventPresets": {}, + "scriptEventDefaultPresets": {} +} \ No newline at end of file diff --git a/gb_studio_project/project/settings.gbsres.bak b/gb_studio_project/project/settings.gbsres.bak new file mode 100644 index 0000000..359d0c5 --- /dev/null +++ b/gb_studio_project/project/settings.gbsres.bak @@ -0,0 +1,89 @@ +{ + "_resourceType": "settings", + "startSceneId": "bae8f25c-fef2-46c0-ac97-024c3b883b83", + "startX": 25, + "startY": 10, + "startMoveSpeed": 1, + "startAnimSpeed": 15, + "startDirection": "down", + "showCollisionExtraTiles": false, + "sgbEnabled": false, + "customHead": "", + "defaultBackgroundPaletteIds": [ + "default-bg-1", + "default-bg-2", + "default-bg-3", + "default-bg-4", + "default-bg-5", + "default-bg-6", + "dmg", + "default-ui" + ], + "defaultSpritePaletteIds": [ + "default-sprite", + "default-sprite", + "default-sprite", + "default-sprite", + "default-sprite", + "default-sprite", + "default-sprite", + "default-sprite" + ], + "defaultSpritePaletteId": "default-sprite", + "defaultUIPaletteId": "default-ui", + "playerPaletteId": "", + "defaultFontId": "4bd653f0-e08d-424e-9e5b-c1f3aaa21e47", + "defaultCharacterEncoding": "", + "defaultPlayerSprites": { + "TOPDOWN": "581d34d0-9591-4e6e-a609-1d94f203b0cd", + "PLATFORM": "581d34d0-9591-4e6e-a609-1d94f203b0cd", + "ADVENTURE": "581d34d0-9591-4e6e-a609-1d94f203b0cd", + "SHMUP": "581d34d0-9591-4e6e-a609-1d94f203b0cd", + "POINTNCLICK": "581d34d0-9591-4e6e-a609-1d94f203b0cd", + "LOGO": "581d34d0-9591-4e6e-a609-1d94f203b0cd" + }, + "musicDriver": "huge", + "cartType": "mbc5", + "batterylessEnabled": false, + "customColorsWhite": "E8F8E0", + "customColorsLight": "B0F088", + "customColorsDark": "509878", + "customColorsBlack": "202850", + "customControlsUp": [ + "ArrowUp", + "w" + ], + "customControlsDown": [ + "ArrowDown", + "s" + ], + "customControlsLeft": [ + "ArrowLeft", + "a" + ], + "customControlsRight": [ + "ArrowRight", + "d" + ], + "customControlsA": [ + "Alt", + "z", + "j" + ], + "customControlsB": [ + "Control", + "k", + "x" + ], + "customControlsStart": [ + "Enter" + ], + "customControlsSelect": [ + "Shift" + ], + "colorMode": "color", + "generateDebugFilesEnabled": false, + "compilerPreset": 3000, + "scriptEventPresets": {}, + "scriptEventDefaultPresets": {} +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/actor.gbsres b/gb_studio_project/project/sprites/actor.gbsres new file mode 100644 index 0000000..b6b1132 --- /dev/null +++ b/gb_studio_project/project/sprites/actor.gbsres @@ -0,0 +1,182 @@ +{ + "_resourceType": "sprite", + "id": "11b5452b-187c-43a3-afb1-a1f4f74ffda2", + "name": "actor", + "symbol": "sprite_actor", + "numFrames": 3, + "filename": "actor.png", + "checksum": "8646d62a30fe76f9e39e3dbdb23aab0182a33146", + "width": 48, + "height": 16, + "states": [ + { + "id": "4d1efdcf-c6d6-4b25-ab89-008b990697ac", + "name": "", + "animationType": "multi", + "flipLeft": true, + "animations": [ + { + "id": "f0e27b77-101b-4c2f-bf52-fda0ae13dae4", + "frames": [ + { + "id": "c905496b-7d90-4107-9728-767b51d9b563", + "tiles": [ + { + "id": "d51763df-1353-4da7-9cf7-03fbada9edd2", + "x": 0, + "y": 0, + "sliceX": 32, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "c7f96290-0943-4855-a706-f198accdca3f", + "x": 8, + "y": 0, + "sliceX": 40, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "1b2a6e13-d68d-4e1e-bbdf-8d6373c32aeb", + "frames": [ + { + "id": "c8475e7f-f140-45a2-9e17-5f03dfc0b08a", + "tiles": [] + } + ] + }, + { + "id": "81693f16-7557-4275-8c3a-5e0870b4fb44", + "frames": [ + { + "id": "1eca9394-f2ce-4e64-ae8c-3c0391c82a5f", + "tiles": [ + { + "id": "ae5c1dc0-bc0d-473e-a60f-01681ee3fd93", + "x": 0, + "y": 0, + "sliceX": 16, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "3146fbf9-70c1-4f2a-ad22-24ca660214d3", + "x": 8, + "y": 0, + "sliceX": 24, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "3a6307b3-dc1b-4a21-ab60-0dfddc5778f9", + "frames": [ + { + "id": "5937f120-b849-468b-956a-4c9cb8c3c86d", + "tiles": [ + { + "id": "d713bb5d-ce8c-44c8-8644-164bdb67f43c", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "ce71fffe-8c06-452e-ae41-58fb3c6d5ff4", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "336dae45-eceb-4560-b1de-216d8bc33f92", + "frames": [ + { + "id": "58ed464b-1a79-49a9-a5fa-138776eedd4f", + "tiles": [] + } + ] + }, + { + "id": "1ae0034b-0586-4bb6-9b7b-ef85eff01b07", + "frames": [ + { + "id": "4d672da2-5d75-4890-b120-dbf90102e657", + "tiles": [] + } + ] + }, + { + "id": "4f325c7c-6920-4931-9895-90143ab32d74", + "frames": [ + { + "id": "9b8a8826-7fef-4046-9b5d-2623a51d4ebd", + "tiles": [] + } + ] + }, + { + "id": "89c7a4f2-17a2-45bb-83e5-ab51d2e9e325", + "frames": [ + { + "id": "66acaf4e-12d0-4fc8-9212-a950f6409ca8", + "tiles": [] + } + ] + } + ] + } + ], + "numTiles": 5, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/actor_animated.gbsres b/gb_studio_project/project/sprites/actor_animated.gbsres new file mode 100644 index 0000000..d568f80 --- /dev/null +++ b/gb_studio_project/project/sprites/actor_animated.gbsres @@ -0,0 +1,356 @@ +{ + "_resourceType": "sprite", + "id": "581d34d0-9591-4e6e-a609-1d94f203b0cd", + "name": "actor_animated", + "symbol": "sprite_actor_animated", + "numFrames": 6, + "filename": "actor_animated.png", + "checksum": "cd6c8ebac31ccd6a325b8a7e94a05d442ae6725e", + "width": 96, + "height": 16, + "states": [ + { + "id": "ce938dce-afdb-4ffc-bd45-5685c6cf78c5", + "name": "", + "animationType": "multi_movement", + "flipLeft": true, + "animations": [ + { + "id": "0218ae39-514d-40e8-981b-06aadbe8b5df", + "frames": [ + { + "id": "52ad1d99-2142-4646-806f-7e98ffb49744", + "tiles": [ + { + "id": "4575085b-128a-46e9-9a33-70c5ad5c551f", + "x": 0, + "y": 0, + "sliceX": 64, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "f69ec50d-9308-408f-b7dc-f70910e1f28c", + "x": 8, + "y": 0, + "sliceX": 72, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "0e7a0652-4d65-42fa-a132-7990d6bf2be0", + "frames": [ + { + "id": "03bebd67-2463-4591-89d7-a79fca803d97", + "tiles": [] + } + ] + }, + { + "id": "ea5f8749-2233-4d96-9f58-3563d1342921", + "frames": [ + { + "id": "9a46acfc-e6d7-40ab-bc32-250210299a1b", + "tiles": [ + { + "id": "b3c9c1d3-9457-493a-a1a0-984f10f49f09", + "x": 0, + "y": 0, + "sliceX": 32, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "cdfdf21b-e964-4bda-884b-b783da94988b", + "x": 8, + "y": 0, + "sliceX": 40, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "52f6a5ec-ac99-4bc2-b5d8-8962a292f1aa", + "frames": [ + { + "id": "97cc8146-ddfd-4b90-8382-a54e1b98305a", + "tiles": [ + { + "id": "47fad96b-1d1e-4123-ad17-b8fdddc79220", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "f040d231-2bd5-4b83-b69f-925eb46328f3", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "f6926ffc-a46a-4148-88c7-59cd7806da8b", + "frames": [ + { + "id": "90a92b91-2895-4dd1-a76f-59f7a5ed4fc1", + "tiles": [ + { + "id": "a0095ca1-f658-4d43-9f51-1f309ee12c59", + "x": 0, + "y": 0, + "sliceX": 80, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "57d24bda-991b-4da8-8b9a-27b3a84c10e2", + "x": 8, + "y": 0, + "sliceX": 88, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "830648ee-3b82-474b-ba1c-78be727c4432", + "tiles": [ + { + "id": "06d000ef-ffdb-4fb3-842b-faa6bc1825b2", + "x": 0, + "y": 0, + "sliceX": 64, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "f16d9b17-b555-4262-b9f8-b7c2f3804cf3", + "x": 8, + "y": 0, + "sliceX": 72, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "211cad43-2a82-4c67-a346-f9afe2fcc824", + "frames": [ + { + "id": "ef0ab6ed-ecb7-4160-93ed-aee994561fa8", + "tiles": [] + } + ] + }, + { + "id": "9b7654ab-4161-4e61-b089-5b87c51ff48a", + "frames": [ + { + "id": "c27cf825-3e90-4384-a3f1-4d38f8003c7a", + "tiles": [ + { + "id": "5d1c7b68-7d08-4718-9a9b-ece906dcf663", + "x": 0, + "y": 0, + "sliceX": 48, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "16f71c74-33ce-4526-9a31-23426c132989", + "x": 8, + "y": 0, + "sliceX": 56, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "84bdf127-b1c1-4cf9-8265-e9bc36369388", + "tiles": [ + { + "id": "5dff43c1-42e5-49c0-893d-f42c205c7494", + "x": 0, + "y": 0, + "sliceX": 32, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "81a66d32-ce87-4dab-b884-3762b3d394ee", + "x": 8, + "y": 0, + "sliceX": 40, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "b0445f1a-e053-495a-bd68-1c6ecf99b2f4", + "frames": [ + { + "id": "0d972380-a934-4318-8ebf-58a1faf5800e", + "tiles": [ + { + "id": "43087f62-d9ed-4b9a-83ea-f4554cc48ca7", + "x": 0, + "y": 0, + "sliceX": 16, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "33e1fdfa-b0e3-4f14-ae45-9fa95b398456", + "x": 8, + "y": 0, + "sliceX": 24, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "8c5cffd7-1dc4-476e-a5b2-c9f8515ec98e", + "tiles": [ + { + "id": "6502f65f-e7d5-4f79-adfa-f76648edee7a", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "33fe1ded-44af-4c0d-ac69-7943eb0e07a7", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + } + ] + } + ], + "numTiles": 10, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 8, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/bullet.gbsres b/gb_studio_project/project/sprites/bullet.gbsres new file mode 100644 index 0000000..b7be982 --- /dev/null +++ b/gb_studio_project/project/sprites/bullet.gbsres @@ -0,0 +1,128 @@ +{ + "_resourceType": "sprite", + "id": "29728119-eee6-441f-b5a3-c876473fe68d", + "name": "bullet", + "symbol": "sprite_bullet", + "numFrames": 1, + "filename": "bullet.png", + "checksum": "20f72d8c2befb3e03da3f64a307172a5d95853d1", + "width": 16, + "height": 16, + "states": [ + { + "id": "2231be19-00a4-41eb-9c8e-7031d247b1d2", + "name": "", + "animationType": "fixed", + "flipLeft": false, + "animations": [ + { + "id": "3058d8a7-2aba-4fea-8f68-d9ab3b36aa1b", + "frames": [ + { + "id": "7d2aee37-eefc-4bd5-9f07-622c9993eb3d", + "tiles": [ + { + "id": "94709bc7-224d-45a7-9a6b-6a115355a89e", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "a2051c9b-e1dc-4328-a64c-23f1109d127e", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "fba2b18a-3d06-4cea-ae50-58f2269b55e2", + "frames": [ + { + "id": "899e7b5d-2b4b-49dc-9d7f-ae99b361043f", + "tiles": [] + } + ] + }, + { + "id": "202bff65-fce7-493e-909c-c718c88b84bd", + "frames": [ + { + "id": "a8c1db59-09fe-4e17-b1d8-7966d4c30fb9", + "tiles": [] + } + ] + }, + { + "id": "05e1a9da-7c05-4598-ac6f-89b4ff256cdd", + "frames": [ + { + "id": "0d892b98-f8e1-4b74-91f8-ff17c975bfdb", + "tiles": [] + } + ] + }, + { + "id": "9f2e736a-bdd1-4e28-bd35-1e16acc280f6", + "frames": [ + { + "id": "1d7c7bde-cb4f-4ece-a0e1-c9b043879873", + "tiles": [] + } + ] + }, + { + "id": "1d63e20b-ec11-4f9a-aeb6-2d72aff6402d", + "frames": [ + { + "id": "d483ee5f-37de-4eee-be13-a6d5aebd4092", + "tiles": [] + } + ] + }, + { + "id": "71bd0f56-7c84-49d6-bad8-f06fbd070af9", + "frames": [ + { + "id": "1c5fb0ad-a5e5-41d5-9efb-0c6ed9082bc9", + "tiles": [] + } + ] + }, + { + "id": "f5938f7c-7e7f-44e5-a8d5-d8ac8b062ca4", + "frames": [ + { + "id": "7b7d94f0-0f06-4952-bc51-f41fc6e7f938", + "tiles": [] + } + ] + } + ] + } + ], + "numTiles": 1, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/cat.gbsres b/gb_studio_project/project/sprites/cat.gbsres new file mode 100644 index 0000000..8b28a26 --- /dev/null +++ b/gb_studio_project/project/sprites/cat.gbsres @@ -0,0 +1,128 @@ +{ + "_resourceType": "sprite", + "id": "1498b449-4b4d-4ed1-9f78-bc18dc672253", + "name": "cat", + "symbol": "sprite_cat", + "numFrames": 1, + "filename": "cat.png", + "checksum": "acdc77db823a88d17537d263a436168ab01efe22", + "width": 16, + "height": 16, + "states": [ + { + "id": "56637ef3-5169-402d-82b9-4c70e4764d4d", + "name": "", + "animationType": "fixed", + "flipLeft": false, + "animations": [ + { + "id": "066d5552-8b12-48ce-8643-87880c26778e", + "frames": [ + { + "id": "63f8886a-16b7-4102-b013-1c60e45cb237", + "tiles": [ + { + "id": "8951e420-9c36-412f-8cc7-cd7b8cfebf53", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "9beace02-2d75-42c8-9405-4dce30664e39", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "41bb4f1a-d41c-45bf-abf8-eae80bb3f2b8", + "frames": [ + { + "id": "2691da26-3e99-4892-ae2a-6d1266c90c84", + "tiles": [] + } + ] + }, + { + "id": "330f0bde-3efa-427a-8b4d-6aa3bcff34c6", + "frames": [ + { + "id": "c1494670-b25c-41b4-a0ba-bca540788221", + "tiles": [] + } + ] + }, + { + "id": "fe4b3c0f-3146-4987-9818-0a9102563e4e", + "frames": [ + { + "id": "6c4474ca-d795-4404-84fe-ffa01e7d3b02", + "tiles": [] + } + ] + }, + { + "id": "97b87ab4-458d-45e8-a836-cbc9c95c5dcf", + "frames": [ + { + "id": "0cdf4d96-9046-4381-9427-9f13233a6e97", + "tiles": [] + } + ] + }, + { + "id": "57644252-1ca0-4835-84e6-277a0bcc6d2c", + "frames": [ + { + "id": "b7afa8ad-d7ec-4902-9286-869b1047ebf5", + "tiles": [] + } + ] + }, + { + "id": "c39b9e1f-ebf0-4441-806c-05c61120c3f5", + "frames": [ + { + "id": "79885dac-d770-430b-a64b-b95d1414b996", + "tiles": [] + } + ] + }, + { + "id": "cf1b1aad-f509-48a1-a01d-d5d50213efa9", + "frames": [ + { + "id": "d57fad7a-8bc4-4f3e-8e63-4da9b1cee106", + "tiles": [] + } + ] + } + ] + } + ], + "numTiles": 2, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/charanimatedsprite.gbsres b/gb_studio_project/project/sprites/charanimatedsprite.gbsres new file mode 100644 index 0000000..063474a --- /dev/null +++ b/gb_studio_project/project/sprites/charanimatedsprite.gbsres @@ -0,0 +1,356 @@ +{ + "_resourceType": "sprite", + "id": "31711211-8d44-444d-8f97-46efd81ce385", + "name": "CharAnimatedSprite", + "symbol": "sprite_charanimatedsprite", + "numFrames": 6, + "filename": "CharAnimatedSprite.png", + "checksum": "82ab6488d6cd83ef2613da80db6086192a8a8405", + "width": 96, + "height": 16, + "states": [ + { + "id": "3fc34374-cb8c-4e33-9ade-a94b0b83c4de", + "name": "", + "animationType": "multi_movement", + "flipLeft": true, + "animations": [ + { + "id": "272d8f1c-d05c-4cab-a390-71640a458e83", + "frames": [ + { + "id": "6ef33b38-254d-4595-b7aa-9168ca5f0197", + "tiles": [ + { + "id": "2e133dd4-e309-44fa-b739-176a2cfdb6ae", + "x": 0, + "y": 0, + "sliceX": 64, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "f5696088-bb5e-4fca-86a3-270e762b988b", + "x": 8, + "y": 0, + "sliceX": 72, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "124afc5c-201f-4fbc-8b7b-f827ded7d44a", + "frames": [ + { + "id": "ccd9a636-fb8a-4a6f-9684-d6bcb5810416", + "tiles": [] + } + ] + }, + { + "id": "175fcbad-ac1e-428e-b7a1-398561555388", + "frames": [ + { + "id": "4514f086-30e8-47c7-811a-fde8d543d4cb", + "tiles": [ + { + "id": "dc3161d1-4617-4144-b100-a9c47436265a", + "x": 0, + "y": 0, + "sliceX": 32, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "540d1641-b239-414c-ba19-3375d53ef6a1", + "x": 8, + "y": 0, + "sliceX": 40, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "35328f43-1287-4756-ae61-6211472f3647", + "frames": [ + { + "id": "874f0de2-bd42-42ae-949f-07260f143bd8", + "tiles": [ + { + "id": "cd3f137c-95d1-4e3e-9f44-71ab28fecc68", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "57fb50f7-422a-4309-8633-5e9ac413f952", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "42943a29-5a0f-4d95-bec5-f0812b4a7722", + "frames": [ + { + "id": "e74ecfe7-62c2-4f52-b90a-e42b3bb0a174", + "tiles": [ + { + "id": "2ff7ad66-13f7-43e2-9baa-8c7e82e7eb6b", + "x": 0, + "y": 0, + "sliceX": 80, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "9530da62-f01b-4c63-bb62-5a34802cc484", + "x": 8, + "y": 0, + "sliceX": 88, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "8b46ce34-359d-4a60-abc1-ce1bc062e07c", + "tiles": [ + { + "id": "4aa2927c-20b3-407f-beeb-319c7a591373", + "x": 0, + "y": 0, + "sliceX": 64, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "2a21e064-0b6d-48d5-ac00-420859b5c1a0", + "x": 8, + "y": 0, + "sliceX": 72, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "b671bdbe-08f2-43e2-bfdf-9b0d53f3a2d0", + "frames": [ + { + "id": "6808c6d2-cb63-46dc-a6dc-9c7c732b72c2", + "tiles": [] + } + ] + }, + { + "id": "8c13bde3-5d02-49b9-8190-001c38d54b16", + "frames": [ + { + "id": "d37cccb7-d553-4735-899b-e37e402d00e1", + "tiles": [ + { + "id": "3f31cf30-8c8e-43f2-b06f-e31847b1dfcc", + "x": 0, + "y": 0, + "sliceX": 48, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "1b7f0ebf-5799-439e-9dc4-edeaec9509a6", + "x": 8, + "y": 0, + "sliceX": 56, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "32cf9a1e-f8b0-4332-807d-88530e13741b", + "tiles": [ + { + "id": "d0396dcc-d311-4a75-b7c0-dfe4fc9f6221", + "x": 0, + "y": 0, + "sliceX": 32, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "309b234c-c13f-4b79-bf54-4250977f1fe3", + "x": 8, + "y": 0, + "sliceX": 40, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "4ac52f10-6906-4969-b94b-30ccb46278e3", + "frames": [ + { + "id": "f2608cd8-f958-4828-8ff9-6277436bbd5d", + "tiles": [ + { + "id": "65d46d53-7c42-486b-aa12-d0a4c1d059fd", + "x": 0, + "y": 0, + "sliceX": 16, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "11565298-e07e-47cd-9a3c-a39b0f142ebb", + "x": 8, + "y": 0, + "sliceX": 24, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "8c0f14b6-4512-4cd2-af02-8238a758a19b", + "tiles": [ + { + "id": "101790ec-caf4-417e-a1f1-a5830ff3a3b6", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "1d1a86a1-c009-4e77-bd53-5959f86583d0", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + } + ] + } + ], + "numTiles": 12, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/checkbox.gbsres b/gb_studio_project/project/sprites/checkbox.gbsres new file mode 100644 index 0000000..5851927 --- /dev/null +++ b/gb_studio_project/project/sprites/checkbox.gbsres @@ -0,0 +1,159 @@ +{ + "_resourceType": "sprite", + "id": "b7dddd0b-ae00-4ce5-b97e-1858aeee7fd8", + "name": "checkbox", + "symbol": "sprite_checkbox", + "numFrames": 2, + "filename": "checkbox.png", + "checksum": "47fd516f3adb10b1cfde24450b5c7c928abf643e", + "width": 32, + "height": 16, + "states": [ + { + "id": "b80793ec-0fef-45b1-a3e6-d4e0adc0c18f", + "name": "", + "animationType": "fixed", + "flipLeft": false, + "animations": [ + { + "id": "0b2cb11d-f7c9-49a9-80a5-b4d6e4debdf5", + "frames": [ + { + "id": "6845e5ee-a3b8-418f-b911-bdc5c779a182", + "tiles": [ + { + "id": "75e09df3-fa11-43fd-9128-386aa0088ce6", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "b8fadff2-383b-4c13-8753-4af0296648d9", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "cf88aa12-4930-4cc9-a2b4-ab46d80e8a5e", + "tiles": [ + { + "id": "e2baf7d3-8863-4040-8e73-ec662a72e56c", + "x": 0, + "y": 0, + "sliceX": 16, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "9f7f6fa1-73aa-4140-9d21-2f7bbe8650c9", + "x": 8, + "y": 0, + "sliceX": 24, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "e50c6af6-ed8b-4df5-986a-2740de320848", + "frames": [ + { + "id": "decfd35f-eae5-40fa-968d-1d590fdbbfa3", + "tiles": [] + } + ] + }, + { + "id": "d08f2f82-a50b-458c-b095-eaadfb1b304d", + "frames": [ + { + "id": "5a873a75-6973-48b6-bb85-516c602da7bb", + "tiles": [] + } + ] + }, + { + "id": "3ca4fd62-7b52-428f-b685-8b64b508d5e2", + "frames": [ + { + "id": "a6994c7d-58a1-41f1-98a1-9cd321c22a3f", + "tiles": [] + } + ] + }, + { + "id": "fc2cd604-4b5e-4a53-aa7a-17e11a2c2125", + "frames": [ + { + "id": "491cd007-d1bc-4718-912a-52e628b6da4f", + "tiles": [] + } + ] + }, + { + "id": "6c81aa4b-3ac2-4622-b7d8-63fc10000056", + "frames": [ + { + "id": "c38db7b0-8dbb-42b6-9be2-054e2230dddd", + "tiles": [] + } + ] + }, + { + "id": "cf017c5d-4d3f-40f2-afb8-b579df28174f", + "frames": [ + { + "id": "55759697-fd65-488d-8abe-ddb87a2ba4d8", + "tiles": [] + } + ] + }, + { + "id": "82f3c698-d174-4900-8ae4-2fd1327059ee", + "frames": [ + { + "id": "388d8613-7804-4ec6-811b-6b991adc7e90", + "tiles": [] + } + ] + } + ] + } + ], + "numTiles": 2, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/dog.gbsres b/gb_studio_project/project/sprites/dog.gbsres new file mode 100644 index 0000000..9006d43 --- /dev/null +++ b/gb_studio_project/project/sprites/dog.gbsres @@ -0,0 +1,128 @@ +{ + "_resourceType": "sprite", + "id": "46d218f4-3118-44c7-89a6-7148cd2d9d62", + "name": "dog", + "symbol": "sprite_dog", + "numFrames": 1, + "filename": "dog.png", + "checksum": "d9bfa8cf4e196a4b89abc8811e1157b8cf3e4380", + "width": 16, + "height": 16, + "states": [ + { + "id": "503130aa-cfab-478a-9a0e-b7f00e4ccaac", + "name": "", + "animationType": "fixed", + "flipLeft": false, + "animations": [ + { + "id": "a4fadb1d-cea2-41f6-bf02-2cee977fb13d", + "frames": [ + { + "id": "ccdcf29c-162f-4a82-b42d-cc2f21c359e9", + "tiles": [ + { + "id": "4d53d1dc-3d41-4106-b47f-8c136018bf60", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "4c484076-4ab2-4077-9566-49863f728d87", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "b2d7b619-de4a-4b0f-a339-f35c0f671dd9", + "frames": [ + { + "id": "c21e1424-3316-4e3f-8732-0f424e54f100", + "tiles": [] + } + ] + }, + { + "id": "f981618b-d338-4d6f-ab76-ea22828b3d70", + "frames": [ + { + "id": "0ca64db4-1fff-44fe-8c29-654b91e39b9f", + "tiles": [] + } + ] + }, + { + "id": "7b3abc5f-b206-489a-8252-800cb5b098e2", + "frames": [ + { + "id": "d7543ffd-cec5-425e-b58e-4d1737c9e6f0", + "tiles": [] + } + ] + }, + { + "id": "4e6f328a-ef6a-40b4-95f2-ce5e7ce94443", + "frames": [ + { + "id": "a0e4dead-3409-4dfe-a44a-8e3ae99a64b3", + "tiles": [] + } + ] + }, + { + "id": "b2741de2-7c8f-4643-9d80-eddcee8314bf", + "frames": [ + { + "id": "1567b8dd-0773-4460-8182-627f3122771a", + "tiles": [] + } + ] + }, + { + "id": "4e94c03c-680e-4d0e-a091-8485f5bc645f", + "frames": [ + { + "id": "795beed9-bfcc-4127-89db-f4c0fe59a9bf", + "tiles": [] + } + ] + }, + { + "id": "d0890167-4942-42b8-9838-e14f92bf2791", + "frames": [ + { + "id": "63b5445d-f054-4bff-a79a-e95993d506f3", + "tiles": [] + } + ] + } + ] + } + ], + "numTiles": 2, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/endscreen.gbsres b/gb_studio_project/project/sprites/endscreen.gbsres new file mode 100644 index 0000000..46df44d --- /dev/null +++ b/gb_studio_project/project/sprites/endscreen.gbsres @@ -0,0 +1,101 @@ +{ + "_resourceType": "sprite", + "id": "a67a3782-7541-456e-811b-90083a51369d", + "name": "endScreen", + "symbol": "sprite_endscreen", + "numFrames": 10, + "filename": "endScreen.png", + "checksum": "ee6bd2a72a78b22186f41c0ce1490976234a3131", + "width": 160, + "height": 144, + "states": [ + { + "id": "778abc05-2816-40d5-9719-a6265ceab4d5", + "name": "", + "animationType": "multi_movement", + "flipLeft": true, + "animations": [ + { + "id": "9e91fffd-5ee3-4504-83ae-ca02398c0fa4", + "frames": [ + { + "id": "0d85bd9d-5f4e-4aaa-ab04-166cc25b0316", + "tiles": [] + } + ] + }, + { + "id": "ffeb2e64-2119-494b-91d6-8a60eb6d06ad", + "frames": [ + { + "id": "8a36038e-aba5-4af0-9c5f-0672a11e2ef6", + "tiles": [] + } + ] + }, + { + "id": "99ac6900-e243-44cc-ba87-f3fa29524a9a", + "frames": [ + { + "id": "41d7809c-563b-4476-9e4c-230e59c19219", + "tiles": [] + } + ] + }, + { + "id": "50afcb5d-68ea-4243-8d73-44123a4101a0", + "frames": [ + { + "id": "4c5adbbe-8011-416b-ac9e-58c84d6614b7", + "tiles": [] + } + ] + }, + { + "id": "0e4702f6-6ecc-42c3-b0f4-1fd304c2f030", + "frames": [ + { + "id": "889975cd-6a51-4f39-84c0-48793d5b0fa9", + "tiles": [] + } + ] + }, + { + "id": "386e90a1-4971-468d-8013-4be38c8aea9f", + "frames": [ + { + "id": "fe189bae-8c34-4c26-a57d-9efa6ccd0837", + "tiles": [] + } + ] + }, + { + "id": "a2eb76de-c4f5-4d5e-ba40-4cf43467ba99", + "frames": [ + { + "id": "f7df01e3-8f4f-41e6-b443-4401ce00c241", + "tiles": [] + } + ] + }, + { + "id": "5db85b76-8876-452a-bc94-02abca6a7385", + "frames": [ + { + "id": "86146a6e-f294-4319-bf16-520238127372", + "tiles": [] + } + ] + } + ] + } + ], + "numTiles": 0, + "canvasWidth": 32, + "canvasHeight": 32, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/hidden_stairs.gbsres b/gb_studio_project/project/sprites/hidden_stairs.gbsres new file mode 100644 index 0000000..5ae3a97 --- /dev/null +++ b/gb_studio_project/project/sprites/hidden_stairs.gbsres @@ -0,0 +1,128 @@ +{ + "_resourceType": "sprite", + "id": "133467f8-a106-4774-82d2-34e0dae95eb0", + "name": "hidden_stairs", + "symbol": "sprite_hidden_stairs", + "numFrames": 1, + "filename": "hidden_stairs.png", + "checksum": "958c815a9dff5938722bb9a6d012a10249134190", + "width": 16, + "height": 16, + "states": [ + { + "id": "ec1cd7da-0f75-4509-ac7f-52c7c02b3bd4", + "name": "", + "animationType": "fixed", + "flipLeft": false, + "animations": [ + { + "id": "ab809123-d1c4-4616-8703-f80dea2c854f", + "frames": [ + { + "id": "c941499e-8155-4e69-892e-84d68d1d0fe2", + "tiles": [ + { + "id": "97f11632-4ad6-41b3-b8e3-a63ca352a6c5", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "c575d75f-195f-4ba9-b279-5a141defa4d3", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "23a60c78-2677-4816-9524-5bd3bd9d1dd8", + "frames": [ + { + "id": "d4db3b98-54ba-4459-beca-55efe66d82b7", + "tiles": [] + } + ] + }, + { + "id": "ca17a083-e82f-43da-809e-e1d3a7d7849e", + "frames": [ + { + "id": "8cb24ce1-3275-4df8-b469-9ab13cc170f0", + "tiles": [] + } + ] + }, + { + "id": "01b769f3-3273-4410-978e-0337e2013d56", + "frames": [ + { + "id": "6a49d328-e24d-46ac-836e-53c5f3c4ac16", + "tiles": [] + } + ] + }, + { + "id": "06a38341-8f2a-4013-b43d-a26586d98ebc", + "frames": [ + { + "id": "e13defad-0ccd-4b05-8280-862a7b75627f", + "tiles": [] + } + ] + }, + { + "id": "4b14096a-48f0-47e4-aea1-ddb2c255f633", + "frames": [ + { + "id": "ece5af90-04b5-470a-8ad8-675db26d5b54", + "tiles": [] + } + ] + }, + { + "id": "2b69a806-accc-4fc8-a0fe-6d57792647f2", + "frames": [ + { + "id": "e5604a7c-b3bc-4b4b-b458-8d6e3870e81d", + "tiles": [] + } + ] + }, + { + "id": "670129af-d284-42c9-a720-2fa1bcc2ffcf", + "frames": [ + { + "id": "e8b85466-9b7b-486b-9bf4-35d85185c6bb", + "tiles": [] + } + ] + } + ] + } + ], + "numTiles": 1, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/machine.gbsres b/gb_studio_project/project/sprites/machine.gbsres new file mode 100644 index 0000000..5b663d6 --- /dev/null +++ b/gb_studio_project/project/sprites/machine.gbsres @@ -0,0 +1,159 @@ +{ + "_resourceType": "sprite", + "id": "daae93f5-6c54-4f0d-8840-1e6a786836a6", + "name": "machine", + "symbol": "sprite_machine", + "numFrames": 2, + "filename": "machine.png", + "checksum": "10e86bdc2747f98c29c83028783152acac542177", + "width": 32, + "height": 16, + "states": [ + { + "id": "b31401c1-262f-478d-89a5-35d3b4d65d8d", + "name": "", + "animationType": "fixed", + "flipLeft": false, + "animations": [ + { + "id": "66556c91-3df6-4e91-b586-1b1003f081f9", + "frames": [ + { + "id": "6236465a-8a95-416f-b131-ea0db1a79369", + "tiles": [ + { + "id": "52bf21d8-12d5-46a1-85b8-cd2d33e10baa", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "aea53866-0975-4497-9d5e-6fc4124c7ff5", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "633928c7-eb98-4beb-94a9-7c3d8049a846", + "tiles": [ + { + "id": "eace48ae-acc3-48e5-8222-d98f76b59227", + "x": 0, + "y": 0, + "sliceX": 16, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "759f0fa2-56ed-4203-bfe9-75f6f28d45cb", + "x": 8, + "y": 0, + "sliceX": 24, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "5408f180-8dd0-40dc-ac95-215d8a6a2919", + "frames": [ + { + "id": "263e86c5-5773-462b-b1be-9fab15b264df", + "tiles": [] + } + ] + }, + { + "id": "192365e9-eac5-42c9-af2f-a480647ea31f", + "frames": [ + { + "id": "f855f884-fdfd-4558-8a9c-bf51a8601d0a", + "tiles": [] + } + ] + }, + { + "id": "38e0bdbc-9467-4363-b93d-9256b412546a", + "frames": [ + { + "id": "b3d0ce51-ab79-4582-97ce-743b22da5cc4", + "tiles": [] + } + ] + }, + { + "id": "c563746a-a185-4a84-b842-666db92ced3d", + "frames": [ + { + "id": "d2e524fb-7098-4c1f-9aef-baec1f5e7732", + "tiles": [] + } + ] + }, + { + "id": "322c9042-e2d0-4b60-9476-1398cb3453e8", + "frames": [ + { + "id": "df8a8753-e959-4408-995e-d9fb217f8386", + "tiles": [] + } + ] + }, + { + "id": "7052737f-aaca-49e5-962a-059e6f351f3c", + "frames": [ + { + "id": "76bacb59-a776-4de1-af63-926c6074620b", + "tiles": [] + } + ] + }, + { + "id": "8352506b-44df-4812-b504-26f438693d54", + "frames": [ + { + "id": "2937e455-1e47-43f9-a7d7-acd98b03f6ed", + "tiles": [] + } + ] + } + ] + } + ], + "numTiles": 4, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/moped01.gbsres b/gb_studio_project/project/sprites/moped01.gbsres new file mode 100644 index 0000000..b590b0f --- /dev/null +++ b/gb_studio_project/project/sprites/moped01.gbsres @@ -0,0 +1,182 @@ +{ + "_resourceType": "sprite", + "id": "cd5f609d-7ce9-4212-b1e1-2ad9ebb04a62", + "name": "moped01", + "symbol": "sprite_moped01", + "numFrames": 3, + "filename": "moped01.png", + "checksum": "29a13e6fcd15fc0363491b58858a6e0655cbf64c", + "width": 48, + "height": 16, + "states": [ + { + "id": "67e9732e-7600-474f-a24b-a677234df67c", + "name": "", + "animationType": "multi", + "flipLeft": true, + "animations": [ + { + "id": "d6978d89-62c8-48df-8fe6-53bc5ad2b509", + "frames": [ + { + "id": "0c25d8e7-e137-4d98-9c54-b8b0eac3437b", + "tiles": [ + { + "id": "b4e954c4-424f-4f61-8d9c-e5908d554ea1", + "x": 0, + "y": 0, + "sliceX": 32, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "dd339e50-c3b2-43a0-b1ef-cc400ac35d7c", + "x": 8, + "y": 0, + "sliceX": 40, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "bcf4eff3-7aa9-4c84-8057-b8e0d7cda1fa", + "frames": [ + { + "id": "13f017a3-055b-4c81-8e49-1c15c3d4eb15", + "tiles": [] + } + ] + }, + { + "id": "8d51f349-9ae6-4413-b1cc-e7a149d6f589", + "frames": [ + { + "id": "e4b1a4ab-6576-40b6-a255-2b9ea3402871", + "tiles": [ + { + "id": "45d92ba0-7dcd-4b6c-b9fd-d998c7ae7a9b", + "x": 0, + "y": 0, + "sliceX": 16, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "2eb73885-a496-45b9-8a08-d4420fd0c027", + "x": 8, + "y": 0, + "sliceX": 24, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "afb9910b-a61a-4712-94ab-132a444e93c1", + "frames": [ + { + "id": "ed55b358-6cd4-41a6-8046-c0250ba8bbc0", + "tiles": [ + { + "id": "cbab3546-291a-4d94-b7d1-968b764f0b08", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "ed5428e3-00be-440d-baca-fee59cc255d3", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "e0c4f325-1eb1-42b0-89f1-f1ac59823b4f", + "frames": [ + { + "id": "8fb4c496-3ebd-4bdb-bcc2-41da66af6cce", + "tiles": [] + } + ] + }, + { + "id": "172a23bb-974e-443c-a0d3-82741dc90cb3", + "frames": [ + { + "id": "67a4a160-7ce2-4edc-b210-21d56ff725b8", + "tiles": [] + } + ] + }, + { + "id": "3d8d247e-1eb1-43c0-bc68-949fdeb41b9c", + "frames": [ + { + "id": "3a1fcdb4-6dba-4200-aad0-bfd22b241a08", + "tiles": [] + } + ] + }, + { + "id": "9d3953bd-2f6d-437f-ad95-425fa6472b08", + "frames": [ + { + "id": "bf226dc0-aa21-41d5-8375-faf7fb17d153", + "tiles": [] + } + ] + } + ] + } + ], + "numTiles": 6, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/npc001.gbsres b/gb_studio_project/project/sprites/npc001.gbsres new file mode 100644 index 0000000..b1fb8d9 --- /dev/null +++ b/gb_studio_project/project/sprites/npc001.gbsres @@ -0,0 +1,182 @@ +{ + "_resourceType": "sprite", + "id": "5e941c8a-2029-4e58-81ff-8643331a3495", + "name": "npc001", + "symbol": "sprite_npc001", + "numFrames": 3, + "filename": "npc001.png", + "checksum": "325c2370daedcc0afc0f8e6df58e4da01731dfc3", + "width": 48, + "height": 16, + "states": [ + { + "id": "5eb920b1-97dc-4dc4-bddf-332304b4e379", + "name": "", + "animationType": "multi", + "flipLeft": true, + "animations": [ + { + "id": "3d1c0046-f129-4e81-ad58-d41667b92902", + "frames": [ + { + "id": "fd558b69-b6f5-435d-89b9-e7417e2ab647", + "tiles": [ + { + "id": "e5810c1a-3ce9-433d-9f3c-6330f3d8b9ed", + "x": 0, + "y": 0, + "sliceX": 32, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "5c630bc0-c891-42d7-bfab-a8c390c7b24e", + "x": 8, + "y": 0, + "sliceX": 40, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "6db74dac-712b-4836-9127-2f7c7810e8b2", + "frames": [ + { + "id": "a7d16228-9d8e-40bb-9851-da9d23e64575", + "tiles": [] + } + ] + }, + { + "id": "aa899060-756b-4d6a-89e2-52636c0a699e", + "frames": [ + { + "id": "282a602c-ed1c-43f5-b9e7-00be48b28900", + "tiles": [ + { + "id": "07e53a74-b0d2-41aa-bee7-509046ac44c4", + "x": 0, + "y": 0, + "sliceX": 16, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "af04fe98-35fb-4087-83ff-7a678bb3f02a", + "x": 8, + "y": 0, + "sliceX": 24, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "7923bd17-3129-47ff-8291-268b22bb31d9", + "frames": [ + { + "id": "41747da0-8be6-43a2-a278-d505b70c679f", + "tiles": [ + { + "id": "7fea9378-d866-4f9f-84e4-33ad5a7dc91b", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "3e142325-1681-496d-8fe8-48a6330f33ae", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "ba77920c-2a59-471a-b5ff-828a0a37b7d7", + "frames": [ + { + "id": "c8ef3e83-fbe6-4d6f-9b8f-299b012602dc", + "tiles": [] + } + ] + }, + { + "id": "bb2d9aa4-1aca-4451-9140-ecc12b8f23b9", + "frames": [ + { + "id": "89e998a7-c86f-4bd0-bcd8-310d3a4ef82d", + "tiles": [] + } + ] + }, + { + "id": "8f3abfa2-a983-42ad-b079-87d01798d30c", + "frames": [ + { + "id": "b02e47b4-ebc2-4e94-92a1-818443b14570", + "tiles": [] + } + ] + }, + { + "id": "5020a104-e036-4cb1-b356-7649b4ceb77a", + "frames": [ + { + "id": "b32a21fc-e7c1-404e-b0fe-94a51482d69f", + "tiles": [] + } + ] + } + ] + } + ], + "numTiles": 6, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/npc002.gbsres b/gb_studio_project/project/sprites/npc002.gbsres new file mode 100644 index 0000000..9173c4d --- /dev/null +++ b/gb_studio_project/project/sprites/npc002.gbsres @@ -0,0 +1,182 @@ +{ + "_resourceType": "sprite", + "id": "30993594-6bce-4263-97c6-1a686ab0f30b", + "name": "npc002", + "symbol": "sprite_npc002", + "numFrames": 3, + "filename": "npc002.png", + "checksum": "5f3d41a6f7e0af6159c93b34cb6a480f14522c43", + "width": 48, + "height": 16, + "states": [ + { + "id": "3ce1eaf8-b51c-43cb-9b94-2e0dcfa8c74e", + "name": "", + "animationType": "multi", + "flipLeft": true, + "animations": [ + { + "id": "9f176393-8f55-49d9-b968-8cc69b2e885d", + "frames": [ + { + "id": "65fb1735-f836-4dd2-801a-f4e267137354", + "tiles": [ + { + "id": "057140b0-6e65-4ae1-ac6b-a09a7367f776", + "x": 0, + "y": 0, + "sliceX": 32, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "592740a3-3e07-4409-a563-91d4bc2a5c8d", + "x": 8, + "y": 0, + "sliceX": 40, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "bbe00187-100b-43bc-b08b-2f26d995cc3f", + "frames": [ + { + "id": "29e70301-2f83-408e-bd8d-7f99293274f6", + "tiles": [] + } + ] + }, + { + "id": "8a142936-27da-43e3-82cf-95dac6d6153c", + "frames": [ + { + "id": "13de68a3-8169-425f-bc38-50b92d76279f", + "tiles": [ + { + "id": "650c7c8e-b847-4d8c-b32d-70094e48b8be", + "x": 0, + "y": 0, + "sliceX": 16, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "33053654-dcfd-48cd-8224-7b8192ee66ab", + "x": 8, + "y": 0, + "sliceX": 24, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "8e353e53-dec2-4a3e-a241-f1f25b82a3d2", + "frames": [ + { + "id": "b981d378-d443-4a58-aa05-8d7b11964826", + "tiles": [ + { + "id": "ec81827e-88fb-46b5-ba70-d427d2d0869b", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "2c8ba0cc-5edc-48ec-a6d6-1cd87df9ad46", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "f0064f64-a72c-4956-b2de-a4445a6ea19e", + "frames": [ + { + "id": "aae7dfe5-b6f1-45db-9e3a-b112f358ae2e", + "tiles": [] + } + ] + }, + { + "id": "03c17d28-1938-481f-b004-08f90cc7e2b9", + "frames": [ + { + "id": "24f6d8bf-f11b-4169-a699-d923d7789243", + "tiles": [] + } + ] + }, + { + "id": "510391b4-e5fa-4a16-b9bc-e42c9a892358", + "frames": [ + { + "id": "3d9fbab6-3799-4631-8a4f-21af1bd71f3e", + "tiles": [] + } + ] + }, + { + "id": "93367641-c472-4b64-9133-9da3749ea218", + "frames": [ + { + "id": "52d7693b-e363-4c87-8897-1922ebc1604c", + "tiles": [] + } + ] + } + ] + } + ], + "numTiles": 6, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/npc005.gbsres b/gb_studio_project/project/sprites/npc005.gbsres new file mode 100644 index 0000000..e764d49 --- /dev/null +++ b/gb_studio_project/project/sprites/npc005.gbsres @@ -0,0 +1,356 @@ +{ + "_resourceType": "sprite", + "id": "22d00f5a-a37a-4eff-9f46-bc8a06931aa3", + "name": "npc005", + "symbol": "sprite_npc005", + "numFrames": 6, + "filename": "npc005.png", + "checksum": "fe2a346e79ea7e5c00b74d726e273a056cbffb28", + "width": 96, + "height": 16, + "states": [ + { + "id": "a6b4dacb-2c94-46ac-94e6-5e3342767dda", + "name": "", + "animationType": "multi_movement", + "flipLeft": true, + "animations": [ + { + "id": "1df2171e-7dc0-41fb-bffa-dcafaedc20fd", + "frames": [ + { + "id": "3dae922b-3bd4-4376-9a78-e7bdbdeebdb2", + "tiles": [ + { + "id": "d1908eff-d407-4d7b-be9a-3b63811e9c75", + "x": 0, + "y": 0, + "sliceX": 64, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "468a4685-cb5b-4626-a61f-44c29a8ea27c", + "x": 8, + "y": 0, + "sliceX": 72, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "21857083-7aac-42f0-a43d-6ba2466d5c58", + "frames": [ + { + "id": "5bf45a8f-3d0d-4c26-ae18-1853ac3eb7d5", + "tiles": [] + } + ] + }, + { + "id": "e335894b-2580-4d00-84d2-3f7bb5fd74fc", + "frames": [ + { + "id": "f368744d-782b-49e3-b9e7-c11c14faa309", + "tiles": [ + { + "id": "0ccb73e2-17ab-47b5-8511-e8a1ed9e715e", + "x": 0, + "y": 0, + "sliceX": 32, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "db1be3ee-435a-4764-a326-9577bee92d17", + "x": 8, + "y": 0, + "sliceX": 40, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "6f00630d-5599-44b5-8118-13882002e026", + "frames": [ + { + "id": "69317196-b05b-4de6-8f80-fba300eda886", + "tiles": [ + { + "id": "0ce4a7bc-2841-40f0-b245-996ec3bf5008", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "64e322c5-aa7b-4b90-a5f4-b7d8cecd8c99", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "9c86abb1-2a14-4568-9397-80276015dd5f", + "frames": [ + { + "id": "a5c53dbe-6c7f-4f5d-90b9-adda1b2b74ab", + "tiles": [ + { + "id": "99739f9f-31cb-4e2b-a281-98b3f0013b4f", + "x": 0, + "y": 0, + "sliceX": 80, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "c5b38f30-e7ef-4f39-a215-7532a30c0e5c", + "x": 8, + "y": 0, + "sliceX": 88, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "979396d9-a0e7-46e1-9716-38be271177bc", + "tiles": [ + { + "id": "30994b45-de63-489f-96f4-84926e9648d8", + "x": 0, + "y": 0, + "sliceX": 64, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "70061513-3b39-41c9-8f2e-639aecdeaebb", + "x": 8, + "y": 0, + "sliceX": 72, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "c9f3ed9c-2abb-45e1-a1fa-d3ca4d384b52", + "frames": [ + { + "id": "5ff9a7c0-cb60-4902-9adf-195512276575", + "tiles": [] + } + ] + }, + { + "id": "16493416-a656-4366-a379-a16d177494c9", + "frames": [ + { + "id": "5eb6e5c6-6b93-43cb-8e5c-861dda6b35ca", + "tiles": [ + { + "id": "a2e22078-d5e6-415f-9e46-62e2c7cd8d5d", + "x": 0, + "y": 0, + "sliceX": 48, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "31c57db4-83c5-44a0-aeb1-246240027b82", + "x": 8, + "y": 0, + "sliceX": 56, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "e5555500-9378-4ab4-936d-fd52278f3dd1", + "tiles": [ + { + "id": "3c03c0d2-81b1-49a0-a0f0-29b32badf3b2", + "x": 0, + "y": 0, + "sliceX": 32, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "2ab78bd7-b58b-4776-8de0-8e84bb46046c", + "x": 8, + "y": 0, + "sliceX": 40, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "c2a2ae18-dd09-4775-bdc3-8657e55e5033", + "frames": [ + { + "id": "06eb82a0-3181-4d9a-a47a-1551b818cfcc", + "tiles": [ + { + "id": "86471e95-91f2-4895-8d4b-6f504869fe52", + "x": 0, + "y": 0, + "sliceX": 16, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "3696c007-3e83-4e85-9388-95084e6b6d7f", + "x": 8, + "y": 0, + "sliceX": 24, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "08c73a12-5417-4694-a882-621309d594be", + "tiles": [ + { + "id": "acdde09b-1e8b-4f02-a10b-0a6e4f29c549", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "71c36712-56ec-483e-8270-784c2c02a9c4", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + } + ] + } + ], + "numTiles": 12, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/player.gbsres b/gb_studio_project/project/sprites/player.gbsres new file mode 100644 index 0000000..5c773d5 --- /dev/null +++ b/gb_studio_project/project/sprites/player.gbsres @@ -0,0 +1,356 @@ +{ + "_resourceType": "sprite", + "id": "18bcc121-7b2c-4d5c-bc19-c43da08e1d33", + "name": "player", + "symbol": "sprite_player", + "numFrames": 6, + "filename": "player.png", + "checksum": "bfca190891c49e40d065fb7fb597eac9bc5eec08", + "width": 96, + "height": 16, + "states": [ + { + "id": "ded1b77b-01bb-4764-bb27-f1122a78c201", + "name": "", + "animationType": "multi_movement", + "flipLeft": true, + "animations": [ + { + "id": "e4ea3403-063c-404c-b53d-5fba0f0c1378", + "frames": [ + { + "id": "6bd7086a-ac07-4391-a577-6408fd4cd53b", + "tiles": [ + { + "id": "48a2acf2-eed4-40d9-837b-36c8c36fbca0", + "x": 0, + "y": 0, + "sliceX": 64, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "c42bd837-f080-4e3d-a070-e0cd43eb23ec", + "x": 8, + "y": 0, + "sliceX": 72, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "25bfa0cc-0c13-4db1-81da-e287e9389f01", + "frames": [ + { + "id": "ed06b872-dc13-4768-bf73-d50f53667b63", + "tiles": [] + } + ] + }, + { + "id": "3627746d-28da-4d90-b19c-02ba2b11a123", + "frames": [ + { + "id": "0503b105-a317-4c8e-ac0e-55343038fffd", + "tiles": [ + { + "id": "51522801-fd5e-488a-a651-8cfa50971daf", + "x": 0, + "y": 0, + "sliceX": 32, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "2b05e3fc-d522-4991-b674-dbdbc0314048", + "x": 8, + "y": 0, + "sliceX": 40, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "6ad45437-c6a9-446a-b217-4d004ff7f33c", + "frames": [ + { + "id": "665a3ec1-87c7-4bde-afe6-5eae45bc2293", + "tiles": [ + { + "id": "ead5849a-f2fc-4944-9381-c4e55e093d50", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "ce2c0426-1e36-493a-80aa-784883d7cb16", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "9d5a67b6-9e21-471e-a2f5-cabb130ecfbe", + "frames": [ + { + "id": "c8e31850-a4fa-4fb7-a063-d77d5e749ddc", + "tiles": [ + { + "id": "14fc3022-44cd-439d-a609-6585156def5a", + "x": 0, + "y": 0, + "sliceX": 80, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "ddd3325e-e598-44e0-8542-7685b19d09e0", + "x": 8, + "y": 0, + "sliceX": 88, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "ce8798ad-377a-4790-b555-dc80c80f9cbd", + "tiles": [ + { + "id": "ff75ede4-f17b-48ad-9afd-4add786b148f", + "x": 0, + "y": 0, + "sliceX": 64, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "f2d4a7dd-fc4a-4d32-9be5-2c16fac5eaf2", + "x": 8, + "y": 0, + "sliceX": 72, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "f9161a73-ebec-4169-84da-80a24aed645e", + "frames": [ + { + "id": "ffde8b9e-aa43-4002-ad6c-d08481d75648", + "tiles": [] + } + ] + }, + { + "id": "d6b3debc-6fb3-4ce2-a91a-33eff99868e1", + "frames": [ + { + "id": "3c0d8b1c-ff77-4e42-8329-3f3135c40561", + "tiles": [ + { + "id": "f5796aad-1bb6-495a-9767-4b351bb5d3ed", + "x": 0, + "y": 0, + "sliceX": 48, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "c3e33db9-7b03-4540-a03f-9cc7f48744a1", + "x": 8, + "y": 0, + "sliceX": 56, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "d9fea43f-f265-4d16-ac33-4041fa51877d", + "tiles": [ + { + "id": "29b89399-8a2c-4169-a78e-a975405ee46f", + "x": 0, + "y": 0, + "sliceX": 32, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "847e9a35-0d65-4311-98fd-44cda891d7f6", + "x": 8, + "y": 0, + "sliceX": 40, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "e5ba19db-4bdf-4e1a-9be3-6278f54b79d2", + "frames": [ + { + "id": "6bc6cda6-29ba-492a-805b-6aa2f2b39a41", + "tiles": [ + { + "id": "f8ae1f2a-dd53-4500-b05e-66c4e26962b1", + "x": 0, + "y": 0, + "sliceX": 16, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "97750861-1f67-4ccf-ae06-cbb47fd9eb57", + "x": 8, + "y": 0, + "sliceX": 24, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + }, + { + "id": "ae339c5b-e458-4688-a0a2-958d1514efdf", + "tiles": [ + { + "id": "53ed0691-aac4-4a1f-a702-33b85b5667b3", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "960b5e1a-8892-4f48-807f-e079098aa43b", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + } + ] + } + ], + "numTiles": 12, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/sign.gbsres b/gb_studio_project/project/sprites/sign.gbsres new file mode 100644 index 0000000..d1a9681 --- /dev/null +++ b/gb_studio_project/project/sprites/sign.gbsres @@ -0,0 +1,128 @@ +{ + "_resourceType": "sprite", + "id": "a6631a27-7d41-4e43-8de7-0cac1da306b1", + "name": "sign", + "symbol": "sprite_sign", + "numFrames": 1, + "filename": "sign.png", + "checksum": "eac74a79faf19e31b3f5e323f3c3c65929c9e629", + "width": 16, + "height": 16, + "states": [ + { + "id": "dbc9087d-2841-4a7f-b70a-6852bfd3da44", + "name": "", + "animationType": "fixed", + "flipLeft": false, + "animations": [ + { + "id": "fae02419-7787-46dc-9fdd-8bae3d0e2744", + "frames": [ + { + "id": "6d3cc780-7ea4-49e0-be0a-536b8fc3317c", + "tiles": [ + { + "id": "147080c5-a098-49f7-8163-f8f2797b6286", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "ccb4f1b5-adf0-45af-8cbe-8084aaf579bd", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "20795c6b-5f8b-4685-95a6-b0666ace782b", + "frames": [ + { + "id": "76f9e475-7e06-4e55-8033-bc0805a7bd28", + "tiles": [] + } + ] + }, + { + "id": "cc1890fe-756b-4605-be94-8167a92b279c", + "frames": [ + { + "id": "c1389b12-3fde-4981-ab84-a5d1bdce55a8", + "tiles": [] + } + ] + }, + { + "id": "ac632668-2591-4bfd-8087-2eb70da2d8c5", + "frames": [ + { + "id": "9dc0b676-697d-40ec-8d72-d5598111e10b", + "tiles": [] + } + ] + }, + { + "id": "521e1379-47ae-4927-84be-815e1a167f1f", + "frames": [ + { + "id": "be513f6d-237b-4a39-b71a-2bf5f8c06150", + "tiles": [] + } + ] + }, + { + "id": "504c5bad-0944-40a9-8598-ed493b1c5652", + "frames": [ + { + "id": "dbac2c3d-b408-4971-ad11-890f3dc062b4", + "tiles": [] + } + ] + }, + { + "id": "78a5d0df-d35b-4db1-846a-edf0bb2a7a63", + "frames": [ + { + "id": "cc658e2f-40ed-407c-a73b-9f8d575a14ba", + "tiles": [] + } + ] + }, + { + "id": "696a3ccd-6706-4075-83c5-f1d20783c955", + "frames": [ + { + "id": "94eac6ac-efbb-4411-85ce-e05c0e3ff703", + "tiles": [] + } + ] + } + ] + } + ], + "numTiles": 2, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/sprites/static.gbsres b/gb_studio_project/project/sprites/static.gbsres new file mode 100644 index 0000000..8938446 --- /dev/null +++ b/gb_studio_project/project/sprites/static.gbsres @@ -0,0 +1,128 @@ +{ + "_resourceType": "sprite", + "id": "daf95270-e30d-423b-9ee7-990ae29f57f6", + "name": "static", + "symbol": "sprite_static", + "numFrames": 1, + "filename": "static.png", + "checksum": "ed08d198cc3dd48f9bfba000769904ae41b36db8", + "width": 16, + "height": 16, + "states": [ + { + "id": "c37ce5b9-288c-45f6-8b07-926ae6f64d52", + "name": "", + "animationType": "fixed", + "flipLeft": false, + "animations": [ + { + "id": "e1e8a579-58fc-4314-9592-d188b16d06b0", + "frames": [ + { + "id": "899df7f2-fc01-4a32-87bd-621caffff6ad", + "tiles": [ + { + "id": "b29ef538-ab11-4f4a-a40d-8a47ed874aab", + "x": 0, + "y": 0, + "sliceX": 0, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + }, + { + "id": "2e22a4fc-0615-41b3-8fad-54371a5b590a", + "x": 8, + "y": 0, + "sliceX": 8, + "sliceY": 0, + "flipX": false, + "flipY": false, + "palette": 0, + "paletteIndex": 0, + "objPalette": "OBP0", + "priority": false + } + ] + } + ] + }, + { + "id": "07c365c2-1226-4704-b0b5-8880c2855ff8", + "frames": [ + { + "id": "e41a2350-6e59-4ab4-a2d4-9d43f7b4cc4e", + "tiles": [] + } + ] + }, + { + "id": "45a67ac2-ec73-41a0-bfb1-4ed2a5140cda", + "frames": [ + { + "id": "2ee1b43b-1cf5-4fe5-b74e-a4c116a50b97", + "tiles": [] + } + ] + }, + { + "id": "62c4a826-ea90-415b-b9e6-f69ee3fe3cbb", + "frames": [ + { + "id": "71881de0-00c9-4ce0-9908-ea8d1d825b38", + "tiles": [] + } + ] + }, + { + "id": "bd73b47a-7b33-4ea0-8ea4-e372be06c9fb", + "frames": [ + { + "id": "499e3970-c673-46e5-b14d-e46754866b16", + "tiles": [] + } + ] + }, + { + "id": "fa4088e8-c3fb-45f2-a88d-de174898f712", + "frames": [ + { + "id": "63539fbb-8491-4da2-90a0-9038af0d879e", + "tiles": [] + } + ] + }, + { + "id": "b311bbc4-2e23-4ad1-a1c9-246437c13f4e", + "frames": [ + { + "id": "12785685-91cb-46b0-8305-7521ef45595e", + "tiles": [] + } + ] + }, + { + "id": "db0ebf59-c12f-4180-a0a5-b63a935fe40a", + "frames": [ + { + "id": "7a79af70-abae-4d59-adfe-fcd24a5a95a3", + "tiles": [] + } + ] + } + ] + } + ], + "numTiles": 2, + "canvasWidth": 16, + "canvasHeight": 16, + "boundsX": 0, + "boundsY": 0, + "boundsWidth": 16, + "boundsHeight": 16, + "animSpeed": 15 +} \ No newline at end of file diff --git a/gb_studio_project/project/user_settings.gbsres b/gb_studio_project/project/user_settings.gbsres new file mode 100644 index 0000000..c11fc5b --- /dev/null +++ b/gb_studio_project/project/user_settings.gbsres @@ -0,0 +1,31 @@ +{ + "_resourceType": "settings", + "worldScrollX": 4272, + "worldScrollY": 1248, + "zoom": 263.5, + "navigatorSplitSizes": [ + 863, + 30, + 205, + 205 + ], + "showNavigator": true, + "showCollisions": false, + "showConnections": "all", + "previewAsMono": false, + "showCollisionSlopeTiles": false, + "favoriteEvents": [ + "EVENT_TEXT", + "EVENT_SWITCH_SCENE", + "EVENT_ACTOR_EMOTE" + ], + "debuggerEnabled": false, + "debuggerScriptType": "editor", + "debuggerVariablesFilter": "all", + "debuggerCollapsedPanes": [], + "debuggerPauseOnScriptChanged": false, + "debuggerPauseOnWatchedVariableChanged": false, + "debuggerBreakpoints": [], + "debuggerWatchedVariables": [], + "openBuildLogOnWarnings": true +} \ No newline at end of file diff --git a/gb_studio_project/project/user_settings.gbsres.bak b/gb_studio_project/project/user_settings.gbsres.bak new file mode 100644 index 0000000..6bce6c2 --- /dev/null +++ b/gb_studio_project/project/user_settings.gbsres.bak @@ -0,0 +1,31 @@ +{ + "_resourceType": "settings", + "worldScrollX": 4652, + "worldScrollY": 1302, + "zoom": 263.5, + "navigatorSplitSizes": [ + 863, + 30, + 205, + 205 + ], + "showNavigator": true, + "showCollisions": false, + "showConnections": "all", + "previewAsMono": false, + "showCollisionSlopeTiles": false, + "favoriteEvents": [ + "EVENT_TEXT", + "EVENT_SWITCH_SCENE", + "EVENT_ACTOR_EMOTE" + ], + "debuggerEnabled": false, + "debuggerScriptType": "editor", + "debuggerVariablesFilter": "all", + "debuggerCollapsedPanes": [], + "debuggerPauseOnScriptChanged": false, + "debuggerPauseOnWatchedVariableChanged": false, + "debuggerBreakpoints": [], + "debuggerWatchedVariables": [], + "openBuildLogOnWarnings": true +} \ No newline at end of file diff --git a/gb_studio_project/project/variables.gbsres b/gb_studio_project/project/variables.gbsres new file mode 100644 index 0000000..901f033 --- /dev/null +++ b/gb_studio_project/project/variables.gbsres @@ -0,0 +1,85 @@ +{ + "_resourceType": "variables", + "variables": [ + { + "id": "0", + "name": "Quest1-dud", + "symbol": "var_quest1_dud" + }, + { + "id": "1", + "name": "Quest1", + "symbol": "var_quest1" + }, + { + "id": "2", + "name": "Quest2", + "symbol": "var_quest2_0" + }, + { + "id": "3", + "name": "Quest3", + "symbol": "var_quest3_0" + }, + { + "id": "4", + "name": "Quest4", + "symbol": "var_quest4_0" + }, + { + "id": "5", + "name": "Quest5", + "symbol": "var_quest5" + }, + { + "id": "6", + "name": "EeveeChat", + "symbol": "var_eeveechat_0" + }, + { + "id": "7", + "name": "KumaChat", + "symbol": "var_kumachat" + }, + { + "id": "8", + "name": "KumaTextFix", + "symbol": "var_kumatextfix" + }, + { + "id": "dd1d0d4e-788d-43d9-a5c9-73793a9cca1b__L0", + "name": "EnterBasement", + "symbol": "var_enterbasement" + }, + { + "id": "64d8b7fc-8aa3-4045-8453-304c019c6d23__L0", + "name": "Quest2", + "symbol": "var_quest2" + }, + { + "id": "d4e298c3-d771-44db-a7fe-3eadd83846a3__L0", + "name": "Quest3", + "symbol": "var_quest3" + }, + { + "id": "342f356f-4698-4fed-bced-26280a78ddf9__L0", + "name": "Quest4", + "symbol": "var_quest4" + }, + { + "id": "d00aa658-d2d7-47ff-8c12-ccc2efe4477f__L0", + "name": "EeveeChat", + "symbol": "var_eeveechat" + }, + { + "id": "1757f733-20e4-4312-a37f-3b71f2c8fa4b__L0", + "name": "StartText", + "symbol": "var_starttext" + }, + { + "id": "7ae2b8e3-e89b-46d2-abeb-fffd8daad1e2__L0", + "name": "PostKeyGet", + "symbol": "var_postkeyget" + } + ] +} \ No newline at end of file diff --git a/gb_studio_project/project/variables.gbsres.bak b/gb_studio_project/project/variables.gbsres.bak new file mode 100644 index 0000000..00cfecb --- /dev/null +++ b/gb_studio_project/project/variables.gbsres.bak @@ -0,0 +1,85 @@ +{ + "_resourceType": "variables", + "variables": [ + { + "id": "0", + "name": "Quest1-dud", + "symbol": "var_quest1_dud" + }, + { + "id": "1", + "name": "Quest1", + "symbol": "var_quest1" + }, + { + "id": "2", + "name": "Quest2", + "symbol": "var_quest2_0" + }, + { + "id": "3", + "name": "Quest3", + "symbol": "var_quest3_0" + }, + { + "id": "4", + "name": "Quest4", + "symbol": "var_quest4_0" + }, + { + "id": "5", + "name": "Quest5", + "symbol": "var_quest5" + }, + { + "id": "6", + "name": "EeveeChat", + "symbol": "var_eeveechat_0" + }, + { + "id": "7", + "name": "KumaChat", + "symbol": "var_kumachat" + }, + { + "id": "dd1d0d4e-788d-43d9-a5c9-73793a9cca1b__L0", + "name": "EnterBasement", + "symbol": "var_enterbasement" + }, + { + "id": "64d8b7fc-8aa3-4045-8453-304c019c6d23__L0", + "name": "Quest2", + "symbol": "var_quest2" + }, + { + "id": "d4e298c3-d771-44db-a7fe-3eadd83846a3__L0", + "name": "Quest3", + "symbol": "var_quest3" + }, + { + "id": "342f356f-4698-4fed-bced-26280a78ddf9__L0", + "name": "Quest4", + "symbol": "var_quest4" + }, + { + "id": "d00aa658-d2d7-47ff-8c12-ccc2efe4477f__L0", + "name": "EeveeChat", + "symbol": "var_eeveechat" + }, + { + "id": "1757f733-20e4-4312-a37f-3b71f2c8fa4b__L0", + "name": "StartText", + "symbol": "var_starttext" + }, + { + "id": "7ae2b8e3-e89b-46d2-abeb-fffd8daad1e2__L0", + "name": "PostKeyGet", + "symbol": "var_postkeyget" + }, + { + "id": "8", + "name": "KumaTextFix", + "symbol": "var_kumatextfix" + } + ] +} \ No newline at end of file