diff --git a/.gitignore b/.gitignore
index 65bb742d75..dc0a34ed43 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,7 +14,13 @@ vchat.db*
data
data/
cfg/
-.vscode
+
+#Visual studio stuff
+*.vscode/*
+!/.vscode/launch.json
+!/.vscode/extensions.json
+!/.vscode/settings.json
+!/.vscode/tasks.json
code/game/gamemodes/technomancer/spells/projectile/overload.dm
code/game/gamemodes/technomancer/spells/projectile/overload.dm
diff --git a/.vscode/launch.json b/.vscode/launch.json
new file mode 100644
index 0000000000..24779e223e
--- /dev/null
+++ b/.vscode/launch.json
@@ -0,0 +1,16 @@
+{
+ // Use IntelliSense to learn about possible attributes.
+ // Hover to view descriptions of existing attributes.
+ // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
+ "version": "0.2.0",
+ "configurations": [
+ {
+ "type": "byond",
+ "request": "launch",
+ "name": "Launch DreamDaemon",
+ "preLaunchTask": "dm: build - ${command:CurrentDME}",
+ "dmb": "${workspaceFolder}/${command:CurrentDMB}",
+ "dreamDaemon": true
+ }
+ ]
+}
\ No newline at end of file
diff --git a/.vscode/settings.json b/.vscode/settings.json
new file mode 100644
index 0000000000..64cfc2bb26
--- /dev/null
+++ b/.vscode/settings.json
@@ -0,0 +1,36 @@
+{
+ "eslint.nodePath": "./tgui/.yarn/sdks",
+ "eslint.workingDirectories": [
+ "./tgui"
+ ],
+ "typescript.tsdk": "./tgui/.yarn/sdks/typescript/lib",
+ "typescript.enablePromptUseWorkspaceTsdk": true,
+ "search.exclude": {
+ "**/.yarn": true,
+ "**/.pnp.*": true
+ },
+ "workbench.editorAssociations": {
+ "*.dmi": "imagePreview.previewEditor"
+ },
+ "files.eol": "\n",
+ "gitlens.advanced.blame.customArguments": [
+ "-w"
+ ],
+ "tgstationTestExplorer.project.resultsType": "json",
+ "[javascript]": {
+ "editor.rulers": [
+ 120
+ ]
+ },
+ "[typescript]": {
+ "editor.rulers": [
+ 120
+ ]
+ },
+ "[scss]": {
+ "editor.rulers": [
+ 120
+ ]
+ },
+ "tgstationTestExplorer.project.DMEName": "tgmc.dme"
+}
\ No newline at end of file
diff --git a/.vscode/tasks.json b/.vscode/tasks.json
new file mode 100644
index 0000000000..a3cb84d5a8
--- /dev/null
+++ b/.vscode/tasks.json
@@ -0,0 +1,38 @@
+{
+ "version": "2.0.0",
+ "tasks": [
+ {
+ "type": "dreammaker",
+ "dme": "vorestation.dme",
+ "problemMatcher": [
+ "$dreammaker"
+ ],
+ "group": "build",
+ "label": "dm: build - vorestation.dme"
+ },
+ {
+ "type": "shell",
+ "command": "tgui/bin/tgui",
+ "windows": {
+ "command": ".\\tgui\\bin\\tgui.bat"
+ },
+ "problemMatcher": [
+ "$tsc",
+ "$eslint-stylish"
+ ],
+ "group": "build",
+ "label": "tgui: build"
+ },
+ {
+ "type": "shell",
+ "command": "yarn build",
+ "options": {
+ "cwd": "tgui/packages/tgfont/",
+ },
+ "group": "build",
+ "problemMatcher": [],
+ "label": "tgui: build tgfont",
+ "detail": "node mkdist.cjs && fantasticon --config config.cjs"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/code/ATMOSPHERICS/components/binary_devices/algae_generator_vr.dm b/code/ATMOSPHERICS/components/binary_devices/algae_generator_vr.dm
index f95b613466..e43bc4b25a 100644
--- a/code/ATMOSPHERICS/components/binary_devices/algae_generator_vr.dm
+++ b/code/ATMOSPHERICS/components/binary_devices/algae_generator_vr.dm
@@ -44,10 +44,10 @@
// TODO - Make these in actual icon states so its not silly like this
var/image/I = image(icon = icon, icon_state = "algae-pipe-overlay", dir = dir)
I.color = PIPE_COLOR_BLUE
- overlays += I
+ add_overlay(I)
I = image(icon = icon, icon_state = "algae-pipe-overlay", dir = reverse_dir[dir])
I.color = PIPE_COLOR_BLACK
- overlays += I
+ add_overlay(I)
/obj/machinery/atmospherics/binary/algae_farm/Destroy()
. = ..()
diff --git a/code/ATMOSPHERICS/components/binary_devices/dp_vent_pump.dm b/code/ATMOSPHERICS/components/binary_devices/dp_vent_pump.dm
index 86a87223eb..896ad49eac 100644
--- a/code/ATMOSPHERICS/components/binary_devices/dp_vent_pump.dm
+++ b/code/ATMOSPHERICS/components/binary_devices/dp_vent_pump.dm
@@ -64,7 +64,7 @@
if(!check_icon_cache())
return
- overlays.Cut()
+ cut_overlays()
var/vent_icon = "vent"
@@ -80,7 +80,7 @@
else
vent_icon += "[use_power ? "[pump_direction ? "out" : "in"]" : "off"]"
- overlays += icon_manager.get_atmos_icon("device", , , vent_icon)
+ add_overlay(icon_manager.get_atmos_icon("device", , , vent_icon))
/obj/machinery/atmospherics/binary/dp_vent_pump/update_underlays()
if(..())
diff --git a/code/ATMOSPHERICS/components/binary_devices/pipeturbine.dm b/code/ATMOSPHERICS/components/binary_devices/pipeturbine.dm
index 7ef1858b2f..c111b36b0a 100644
--- a/code/ATMOSPHERICS/components/binary_devices/pipeturbine.dm
+++ b/code/ATMOSPHERICS/components/binary_devices/pipeturbine.dm
@@ -73,15 +73,15 @@
network2.update = 1
/obj/machinery/atmospherics/pipeturbine/update_icon()
- overlays.Cut()
+ cut_overlays()
if (dP > 10)
- overlays += image('icons/obj/pipeturbine.dmi', "moto-turb")
+ add_overlay(image('icons/obj/pipeturbine.dmi', "moto-turb"))
if (kin_energy > 100000)
- overlays += image('icons/obj/pipeturbine.dmi', "low-turb")
+ add_overlay(image('icons/obj/pipeturbine.dmi', "low-turb"))
if (kin_energy > 500000)
- overlays += image('icons/obj/pipeturbine.dmi', "med-turb")
+ add_overlay(image('icons/obj/pipeturbine.dmi', "med-turb"))
if (kin_energy > 1000000)
- overlays += image('icons/obj/pipeturbine.dmi', "hi-turb")
+ add_overlay(image('icons/obj/pipeturbine.dmi', "hi-turb"))
/obj/machinery/atmospherics/pipeturbine/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(W.is_wrench())
diff --git a/code/ATMOSPHERICS/components/unary/vent_pump.dm b/code/ATMOSPHERICS/components/unary/vent_pump.dm
index 792d53d65d..488855a71f 100644
--- a/code/ATMOSPHERICS/components/unary/vent_pump.dm
+++ b/code/ATMOSPHERICS/components/unary/vent_pump.dm
@@ -19,6 +19,7 @@
power_rating = 30000 //7500 W ~ 10 HP //VOREStation Edit - 30000 W
connect_types = CONNECT_TYPE_REGULAR|CONNECT_TYPE_SUPPLY //connects to regular and supply pipes
+ blocks_emissive = FALSE
var/area/initial_loc
level = 1
@@ -141,7 +142,7 @@
if(!check_icon_cache())
return
- overlays.Cut()
+ cut_overlays()
var/vent_icon = "vent"
@@ -159,7 +160,7 @@
else
vent_icon += "[pump_direction ? "out" : "in"]"
- overlays += icon_manager.get_atmos_icon("device", , , vent_icon)
+ add_overlay(icon_manager.get_atmos_icon("device", , , vent_icon))
/obj/machinery/atmospherics/unary/vent_pump/update_underlays()
if(..())
diff --git a/code/ATMOSPHERICS/components/unary/vent_scrubber.dm b/code/ATMOSPHERICS/components/unary/vent_scrubber.dm
index 1443b296d0..515cd37e7f 100644
--- a/code/ATMOSPHERICS/components/unary/vent_scrubber.dm
+++ b/code/ATMOSPHERICS/components/unary/vent_scrubber.dm
@@ -54,7 +54,7 @@
if(!check_icon_cache())
return
- overlays.Cut()
+ cut_overlays()
var/scrubber_icon = "scrubber"
@@ -67,7 +67,7 @@
else
scrubber_icon += "[use_power ? "[scrubbing ? "on" : "in"]" : "off"]"
- overlays += icon_manager.get_atmos_icon("device", , , scrubber_icon)
+ add_overlay(icon_manager.get_atmos_icon("device", , , scrubber_icon))
/obj/machinery/atmospherics/unary/vent_scrubber/update_underlays()
if(..())
diff --git a/code/ATMOSPHERICS/pipes/cap.dm b/code/ATMOSPHERICS/pipes/cap.dm
index 2a63bb3a20..72c9e82991 100644
--- a/code/ATMOSPHERICS/pipes/cap.dm
+++ b/code/ATMOSPHERICS/pipes/cap.dm
@@ -53,9 +53,9 @@
alpha = 255
- overlays.Cut()
- overlays += icon_manager.get_atmos_icon("pipe", , pipe_color, "cap[icon_connect_type]")
-
+ cut_overlays()
+ add_overlay(icon_manager.get_atmos_icon("pipe", , pipe_color, "cap[icon_connect_type]"))
+
/obj/machinery/atmospherics/pipe/cap/atmos_init()
for(var/obj/machinery/atmospherics/target in get_step(src, dir))
if (can_be_node(target, 1))
diff --git a/code/ATMOSPHERICS/pipes/manifold.dm b/code/ATMOSPHERICS/pipes/manifold.dm
index a17f78e50d..a02f0e66de 100644
--- a/code/ATMOSPHERICS/pipes/manifold.dm
+++ b/code/ATMOSPHERICS/pipes/manifold.dm
@@ -102,9 +102,9 @@
alpha = 255
- overlays.Cut()
- overlays += icon_manager.get_atmos_icon("manifold", , pipe_color, "core" + icon_connect_type)
- overlays += icon_manager.get_atmos_icon("manifold", , , "clamps" + icon_connect_type)
+ cut_overlays()
+ add_overlay(icon_manager.get_atmos_icon("manifold", , pipe_color, "core" + icon_connect_type))
+ add_overlay(icon_manager.get_atmos_icon("manifold", , , "clamps" + icon_connect_type))
underlays.Cut()
var/turf/T = get_turf(src)
diff --git a/code/ATMOSPHERICS/pipes/manifold4w.dm b/code/ATMOSPHERICS/pipes/manifold4w.dm
index 7273ac5288..eac8494a65 100644
--- a/code/ATMOSPHERICS/pipes/manifold4w.dm
+++ b/code/ATMOSPHERICS/pipes/manifold4w.dm
@@ -102,9 +102,9 @@
alpha = 255
- overlays.Cut()
- overlays += icon_manager.get_atmos_icon("manifold", , pipe_color, "4way" + icon_connect_type)
- overlays += icon_manager.get_atmos_icon("manifold", , , "clamps_4way" + icon_connect_type)
+ cut_overlays()
+ add_overlay(icon_manager.get_atmos_icon("manifold", , pipe_color, "4way" + icon_connect_type))
+ add_overlay(icon_manager.get_atmos_icon("manifold", , , "clamps_4way" + icon_connect_type))
underlays.Cut()
var/turf/T = get_turf(src)
diff --git a/code/ATMOSPHERICS/pipes/simple.dm b/code/ATMOSPHERICS/pipes/simple.dm
index e0f6f7d951..1f427fb151 100644
--- a/code/ATMOSPHERICS/pipes/simple.dm
+++ b/code/ATMOSPHERICS/pipes/simple.dm
@@ -117,12 +117,12 @@
alpha = 255
- overlays.Cut()
+ cut_overlays()
if(node1 && node2)
- overlays += icon_manager.get_atmos_icon("pipe", , pipe_color, "[pipe_icon]intact[icon_connect_type]")
+ add_overlay(icon_manager.get_atmos_icon("pipe", , pipe_color, "[pipe_icon]intact[icon_connect_type]"))
else
- overlays += icon_manager.get_atmos_icon("pipe", , pipe_color, "[pipe_icon]exposed[node1?1:0][node2?1:0][icon_connect_type]")
+ add_overlay(icon_manager.get_atmos_icon("pipe", , pipe_color, "[pipe_icon]exposed[node1?1:0][node2?1:0][icon_connect_type]"))
/obj/machinery/atmospherics/pipe/simple/update_underlays()
return
diff --git a/code/ATMOSPHERICS/pipes/universal.dm b/code/ATMOSPHERICS/pipes/universal.dm
index a72ef219f7..e1df93ee67 100644
--- a/code/ATMOSPHERICS/pipes/universal.dm
+++ b/code/ATMOSPHERICS/pipes/universal.dm
@@ -16,8 +16,8 @@
alpha = 255
- overlays.Cut()
- overlays += icon_manager.get_atmos_icon("pipe", , pipe_color, "universal")
+ cut_overlays()
+ add_overlay(icon_manager.get_atmos_icon("pipe", , pipe_color, "universal"))
underlays.Cut()
if (node1)
@@ -54,8 +54,8 @@
alpha = 255
- overlays.Cut()
- overlays += icon_manager.get_atmos_icon("pipe", , pipe_color, "universal")
+ cut_overlays()
+ add_overlay(icon_manager.get_atmos_icon("pipe", , pipe_color, "universal"))
underlays.Cut()
if (node1)
diff --git a/code/ZAS/ConnectionGroup.dm b/code/ZAS/ConnectionGroup.dm
index 11b1e22a0b..2811ff6c77 100644
--- a/code/ZAS/ConnectionGroup.dm
+++ b/code/ZAS/ConnectionGroup.dm
@@ -57,14 +57,12 @@ Class Procs:
*/
-
-/connection_edge/var/zone/A
-
-/connection_edge/var/list/connecting_turfs = list()
-/connection_edge/var/direct = 0
-/connection_edge/var/sleeping = 1
-
-/connection_edge/var/coefficient = 0
+/connection_edge
+ var/zone/A
+ var/list/connecting_turfs = list()
+ var/direct = 0
+ var/sleeping = 1
+ var/coefficient = 0
/connection_edge/New()
CRASH("Cannot make connection edge without specifications.")
@@ -119,7 +117,8 @@ Class Procs:
-/connection_edge/zone/var/zone/B
+/connection_edge/zone
+ var/zone/B
/connection_edge/zone/New(zone/A, zone/B)
@@ -189,8 +188,11 @@ Class Procs:
if(A == from) return B
else return A
-/connection_edge/unsimulated/var/turf/B
-/connection_edge/unsimulated/var/datum/gas_mixture/air
+/connection_edge/unsimulated
+ var/turf/B
+
+/connection_edge/unsimulated
+ var/datum/gas_mixture/air
/connection_edge/unsimulated/New(zone/A, turf/B)
src.A = A
diff --git a/code/ZAS/Controller.dm b/code/ZAS/Controller.dm
index be103e7a55..7f7b575246 100644
--- a/code/ZAS/Controller.dm
+++ b/code/ZAS/Controller.dm
@@ -170,7 +170,7 @@ Class Procs:
if(T.needs_air_update) return
tiles_to_update |= T
#ifdef ZASDBG
- T.overlays += mark
+ T.add_overlay(mark)
#endif
T.needs_air_update = 1
diff --git a/code/ZAS/Debug.dm b/code/ZAS/Debug.dm
index 6f0a67fd3e..5aa2c73df2 100644
--- a/code/ZAS/Debug.dm
+++ b/code/ZAS/Debug.dm
@@ -12,8 +12,8 @@ var/image/mark = image('icons/Testing/Zone.dmi', icon_state = "mark")
/turf/var/tmp/dbg_img
/turf/proc/dbg(image/img, d = 0)
if(d > 0) img.dir = d
- overlays -= dbg_img
- overlays += img
+ cut_overlay(dbg_img)
+ add_overlay(img)
dbg_img = img
proc/soft_assert(thing,fail)
diff --git a/code/ZAS/Phoron.dm b/code/ZAS/Phoron.dm
index e12beb900f..4017d0a74a 100644
--- a/code/ZAS/Phoron.dm
+++ b/code/ZAS/Phoron.dm
@@ -63,11 +63,11 @@ obj/var/contaminated = 0
else
if(!contaminated)
contaminated = 1
- overlays += contamination_overlay
+ add_overlay(contamination_overlay)
/obj/item/proc/decontaminate()
contaminated = 0
- overlays -= contamination_overlay
+ cut_overlay(contamination_overlay)
/mob/proc/contaminate()
diff --git a/code/__defines/_lists.dm b/code/__defines/_lists.dm
index 247e9dfeb0..582c026f3c 100644
--- a/code/__defines/_lists.dm
+++ b/code/__defines/_lists.dm
@@ -39,7 +39,7 @@
#define LAZYACCESSASSOC(L, I, K) L ? L[I] ? L[I][K] ? L[I][K] : null : null : null
// Null-safe L.Cut()
-#define LAZYCLEARLIST(L) if(L) L.Cut()
+#define LAZYCLEARLIST(L) if(L) { L.Cut(); L = null; }
// Reads L or an empty list if L is not a list. Note: Does NOT assign, L may be an expression.
#define SANITIZE_LIST(L) ( islist(L) ? L : list() )
diff --git a/code/__defines/_planes+layers.dm b/code/__defines/_planes+layers.dm
index 551e94183c..639724eca2 100644
--- a/code/__defines/_planes+layers.dm
+++ b/code/__defines/_planes+layers.dm
@@ -50,10 +50,10 @@ What is the naming convention for planes or layers?
#define PLANE_LOOKINGGLASS_IMG -77 // For the Looking Glass holodecks
// OPENSPACE_PLANE reserves all planes between OPENSPACE_PLANE_START and OPENSPACE_PLANE_END inclusive
-#define OPENSPACE_PLANE -75 // /turf/simulated/open will use OPENSPACE_PLANE + z (Valid z's being 2 thru 17)
+#define OPENSPACE_PLANE -75 // /turf/simulated/open will use OPENSPACE_PLANE + z (Valid z's being 2 thru 27) //VOREStation Edit
#define OPENSPACE_PLANE_START -73
-#define OPENSPACE_PLANE_END -58
-#define OVER_OPENSPACE_PLANE -57
+#define OPENSPACE_PLANE_END -48 //VOREStation Edit
+#define OVER_OPENSPACE_PLANE -47 //VOREStation Edit
// Turf Planes
#define PLATING_PLANE -44 // Plating
@@ -122,9 +122,21 @@ What is the naming convention for planes or layers?
#define PLANE_ADMIN1 3 //Purely for shenanigans (below lighting)
#define PLANE_PLANETLIGHTING 4 //Lighting on planets
+
#define PLANE_LIGHTING 5 //Where the lighting (and darkness) lives
-#define PLANE_LIGHTING_ABOVE 6 //For glowy eyes etc. that shouldn't be affected by darkness
-#define PLANE_RUNECHAT 7
+ #define LIGHTING_RENDER_TARGET "LIGHT_PLANE"
+
+#define PLANE_O_LIGHTING_VISUAL 6 //For masking the lighting plane
+ #define O_LIGHTING_VISUAL_RENDER_TARGET "O_LIGHT_VISUAL_PLANE"
+
+#define PLANE_LIGHTING_ABOVE 7 //For glowy eyes etc. that shouldn't be affected by darkness
+ #define LIGHTING_ABOVE_RENDER_TARGET "LIGHTING_ABOVE_PLANE"
+
+#define PLANE_EMISSIVE 8 //Glowing lights in otherwise dark areas using overlays/sprites
+ #define EMISSIVE_RENDER_TARGET "*EMISSIVE_PLANE"
+ #define EMISSIVE_LAYER_UNBLOCKABLE 9999
+
+#define PLANE_RUNECHAT 9
#define PLANE_GHOSTS 10 //Spooooooooky ghooooooosts
#define PLANE_AI_EYE 11 //The AI eye lives here
diff --git a/code/__defines/color.dm b/code/__defines/color.dm
index c3db40eefb..af112ef4d6 100644
--- a/code/__defines/color.dm
+++ b/code/__defines/color.dm
@@ -92,6 +92,7 @@
#define COLOR_LIGHT_VIOLET "#e7bfff"
#define COLOR_SAN_MARINO_BLUE "#4b75ab"
#define COLOR_OLIVE "#52613b" //VOREStation Addition
+#define COLOR_HALF_TRANSPARENT_BLACK "#0000007A"
#define PIPE_COLOR_GREY "#808080"
#define PIPE_COLOR_RED "#ff0000"
@@ -171,4 +172,40 @@
#define COLOR_WEBHOOK_DEFAULT 0x8bbbd5 // "#8bbbd5"
#define COLOR_WEBHOOK_GOOD 0x2ECC71 // "#2ECC71"
#define COLOR_WEBHOOK_POOR 0xE67E22 // "#E67E22"
-#define COLOR_WEBHOOK_BAD 0xE74C3C // "#E74C3C"
\ No newline at end of file
+#define COLOR_WEBHOOK_BAD 0xE74C3C // "#E74C3C"
+
+//Some defines to generalise colours used in lighting.
+//Important note on colors. Colors can end up significantly different from the basic html picture, especially when saturated
+#define LIGHT_COLOR_RED "#FA8282" //Warm but extremely diluted red. rgb(250, 130, 130)
+#define LIGHT_COLOR_GREEN "#64C864" //Bright but quickly dissipating neon green. rgb(100, 200, 100)
+#define LIGHT_COLOR_BLUE "#6496FA" //Cold, diluted blue. rgb(100, 150, 250)
+
+#define LIGHT_COLOR_BLUEGREEN "#7DE1AF" //Light blueish green. rgb(125, 225, 175)
+#define LIGHT_COLOR_CYAN "#7DE1E1" //Diluted cyan. rgb(125, 225, 225)
+#define LIGHT_COLOR_LIGHT_CYAN "#40CEFF" //More-saturated cyan. rgb(64, 206, 255)
+#define LIGHT_COLOR_DARK_BLUE "#6496FA" //Saturated blue. rgb(51, 117, 248)
+#define LIGHT_COLOR_PINK "#E17DE1" //Diluted, mid-warmth pink. rgb(225, 125, 225)
+#define LIGHT_COLOR_YELLOW "#E1E17D" //Dimmed yellow, leaning kaki. rgb(225, 225, 125)
+#define LIGHT_COLOR_BROWN "#966432" //Clear brown, mostly dim. rgb(150, 100, 50)
+#define LIGHT_COLOR_ORANGE "#FA9632" //Mostly pure orange. rgb(250, 150, 50)
+#define LIGHT_COLOR_PURPLE "#952CF4" //Light Purple. rgb(149, 44, 244)
+#define LIGHT_COLOR_LAVENDER "#9B51FF" //Less-saturated light purple. rgb(155, 81, 255)
+
+//These ones aren't a direct colour like the ones above, because nothing would fit
+#define LIGHT_COLOR_FIRE "#FAA019" //Warm orange color, leaning strongly towards yellow. rgb(250, 160, 25)
+#define LIGHT_COLOR_LAVA "#C48A18" //Very warm yellow, leaning slightly towards orange. rgb(196, 138, 24)
+#define LIGHT_COLOR_FLARE "#FA644B" //Bright, non-saturated red. Leaning slightly towards pink for visibility. rgb(250, 100, 75)
+#define LIGHT_COLOR_SLIME_LAMP "#AFC84B" //Weird color, between yellow and green, very slimy. rgb(175, 200, 75)
+#define LIGHT_COLOR_TUNGSTEN "#FAE1AF" //Extremely diluted yellow, close to skin color (for some reason). rgb(250, 225, 175)
+#define LIGHT_COLOR_HALOGEN "#F0FAFA" //Barely visible cyan-ish hue, as the doctor prescribed. rgb(240, 250, 250)
+
+//Lighting values used by the station lights
+#define LIGHT_COLOR_FLUORESCENT_TUBE "#E0EFFF"
+#define LIGHT_COLOR_FLUORESCENT_FLASHLIGHT "#CDDDFF"
+#define LIGHT_COLOR_INCANDESCENT_TUBE "#fffed9"
+#define LIGHT_COLOR_INCANDESCENT_BULB "#ffe7ce"
+#define LIGHT_COLOR_INCANDESCENT_FLASHLIGHT "#FFCC66"
+#define LIGHT_COLOR_NIGHTSHIFT "#EFCC86"
+
+//Fake ambient occlusion filter
+#define AMBIENT_OCCLUSION filter(type="drop_shadow", x=0, y=-2, size=4, offset=3, color="#04080F80")
diff --git a/code/__defines/dcs/flags.dm b/code/__defines/dcs/flags.dm
index 128c9f1938..84d332bd56 100644
--- a/code/__defines/dcs/flags.dm
+++ b/code/__defines/dcs/flags.dm
@@ -15,7 +15,10 @@
* Only elements created with the same arguments given after `id_arg_index` share an element instance
* The arguments are the same when the text and number values are the same and all other values have the same ref
*/
-#define ELEMENT_BESPOKE (1 << 1)
+#define ELEMENT_BESPOKE (1 << 1)
+/// Causes all detach arguments to be passed to detach instead of only being used to identify the element
+/// When this is used your Detach proc should have the same signature as your Attach proc
+#define ELEMENT_COMPLEX_DETACH (1 << 2)
// How multiple components of the exact same type are handled in the same datum
/// old component is deleted (default)
diff --git a/code/__defines/dcs/signals.dm b/code/__defines/dcs/signals.dm
index c6edaa80e4..7079362659 100644
--- a/code/__defines/dcs/signals.dm
+++ b/code/__defines/dcs/signals.dm
@@ -42,6 +42,9 @@
#define COMSIG_PARENT_QDELETING "parent_qdeleting"
/// generic topic handler (usr, href_list)
#define COMSIG_TOPIC "handle_topic"
+/// from datum ui_act (usr, action)
+#define COMSIG_UI_ACT "COMSIG_UI_ACT"
+
/// fires on the target datum when an element is attached to it (/datum/element)
#define COMSIG_ELEMENT_ATTACH "element_attach"
@@ -162,6 +165,8 @@
#define COMSIG_ATOM_ORBIT_BEGIN "atom_orbit_begin"
///called when an atom stops orbiting another atom: (atom)
#define COMSIG_ATOM_ORBIT_STOP "atom_orbit_stop"
+///from base of atom/set_opacity(): (new_opacity)
+#define COMSIG_ATOM_SET_OPACITY "atom_set_opacity"
/////////////////
///from base of atom/attack_ghost(): (mob/dead/observer/ghost)
#define COMSIG_ATOM_ATTACK_GHOST "atom_attack_ghost"
@@ -737,4 +742,40 @@
#define COMSIG_TRIGGERED_ALARM "ssalarm_triggered"
#define COMSIG_CANCELLED_ALARM "ssalarm_cancelled"
-#define COMSIG_REAGENTS_CRAFTING_PING "reagents_crafting_ping"
\ No newline at end of file
+#define COMSIG_REAGENTS_CRAFTING_PING "reagents_crafting_ping"
+
+// Lighting:
+///from base of [atom/proc/set_light]: (l_range, l_power, l_color, l_on)
+#define COMSIG_ATOM_SET_LIGHT "atom_set_light"
+ /// Blocks [/atom/proc/set_light], [/atom/proc/set_light_power], [/atom/proc/set_light_range], [/atom/proc/set_light_color], [/atom/proc/set_light_on], and [/atom/proc/set_light_flags].
+ #define COMPONENT_BLOCK_LIGHT_UPDATE (1<<0)
+///Called right before the atom changes the value of light_power to a different one, from base [atom/proc/set_light_power]: (new_power)
+#define COMSIG_ATOM_SET_LIGHT_POWER "atom_set_light_power"
+///Called right after the atom changes the value of light_power to a different one, from base of [/atom/proc/set_light_power]: (old_power)
+#define COMSIG_ATOM_UPDATE_LIGHT_POWER "atom_update_light_power"
+///Called right before the atom changes the value of light_range to a different one, from base [atom/proc/set_light_range]: (new_range)
+#define COMSIG_ATOM_SET_LIGHT_RANGE "atom_set_light_range"
+///Called right after the atom changes the value of light_range to a different one, from base of [/atom/proc/set_light_range]: (old_range)
+#define COMSIG_ATOM_UPDATE_LIGHT_RANGE "atom_update_light_range"
+///Called right before the atom changes the value of light_color to a different one, from base [atom/proc/set_light_color]: (new_color)
+#define COMSIG_ATOM_SET_LIGHT_COLOR "atom_set_light_color"
+///Called right after the atom changes the value of light_color to a different one, from base of [/atom/proc/set_light_color]: (old_color)
+#define COMSIG_ATOM_UPDATE_LIGHT_COLOR "atom_update_light_color"
+///Called right before the atom changes the value of light_on to a different one, from base [atom/proc/set_light_on]: (new_value)
+#define COMSIG_ATOM_SET_LIGHT_ON "atom_set_light_on"
+///Called right after the atom changes the value of light_on to a different one, from base of [/atom/proc/set_light_on]: (old_value)
+#define COMSIG_ATOM_UPDATE_LIGHT_ON "atom_update_light_on"
+///Called right before the atom changes the value of light_flags to a different one, from base [atom/proc/set_light_flags]: (new_flags)
+#define COMSIG_ATOM_SET_LIGHT_FLAGS "atom_set_light_flags"
+///Called right after the atom changes the value of light_flags to a different one, from base of [/atom/proc/set_light_flags]: (old_flags)
+#define COMSIG_ATOM_UPDATE_LIGHT_FLAGS "atom_update_light_flags"
+
+// /datum/element/light_eater
+///from base of [/datum/element/light_eater/proc/table_buffet]: (list/light_queue, datum/light_eater)
+#define COMSIG_LIGHT_EATER_QUEUE "light_eater_queue"
+///from base of [/datum/element/light_eater/proc/devour]: (datum/light_eater)
+#define COMSIG_LIGHT_EATER_ACT "light_eater_act"
+ ///Prevents the default light eater behavior from running in case of immunity or custom behavior
+ #define COMPONENT_BLOCK_LIGHT_EATER (1<<0)
+///from base of [/datum/element/light_eater/proc/devour]: (atom/eaten_light)
+#define COMSIG_LIGHT_EATER_DEVOUR "light_eater_devour"
diff --git a/code/__defines/flags.dm b/code/__defines/flags.dm
index 2ff8f44dba..8ac15ebc53 100644
--- a/code/__defines/flags.dm
+++ b/code/__defines/flags.dm
@@ -13,6 +13,10 @@
GLOBAL_LIST_INIT(bitflags, list(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768))
+/* Directions */
+///All the cardinal direction bitflags.
+#define ALL_CARDINALS (NORTH|SOUTH|EAST|WEST)
+
// datum_flags
#define DF_VAR_EDITED (1<<0)
#define DF_ISPROCESSING (1<<1)
diff --git a/code/__defines/lighting.dm b/code/__defines/lighting.dm
index 999bb7473a..bf85454876 100644
--- a/code/__defines/lighting.dm
+++ b/code/__defines/lighting.dm
@@ -1,88 +1,119 @@
-#define FOR_DVIEW(type, range, center, invis_flags) \
- dview_mob.loc = center; \
- dview_mob.see_invisible = invis_flags; \
- for(type in view(range, dview_mob))
+///Object doesn't use any of the light systems. Should be changed to add a light source to the object.
+#define NO_LIGHT_SUPPORT 0
+///Light made with the lighting datums, applying a matrix.
+#define STATIC_LIGHT 1
+///Light made by masking the lighting darkness plane.
+#define MOVABLE_LIGHT 2
+///Light made by masking the lighting darkness plane, and is directional.
+#define MOVABLE_LIGHT_DIRECTIONAL 3
-#define END_FOR_DVIEW dview_mob.loc = null
+///Is a movable light source attached to another movable (its loc), meaning that the lighting component should go one level deeper.
+#define LIGHT_ATTACHED (1<<0)
-#define LIGHTING_FALLOFF 1 // type of falloff to use for lighting; 1 for circular, 2 for square
-#define LIGHTING_LAMBERTIAN 0 // use lambertian shading for light sources
-#define LIGHTING_HEIGHT 1 // height off the ground of light sources on the pseudo-z-axis, you should probably leave this alone
+//Bay lighting engine shit, not in /code/modules/lighting because BYOND is being shit about it
+/// frequency, in 1/10ths of a second, of the lighting process
+#define LIGHTING_INTERVAL 5
-#define LIGHTING_ICON 'icons/effects/lighting_overlay.dmi' // icon used for lighting shading effects
-#define LIGHTING_ICON_STATE_DARK "soft_dark" // Change between "soft_dark" and "dark" to swap soft darkvision
+#define MINIMUM_USEFUL_LIGHT_RANGE 1.4
-#define LIGHTING_ROUND_VALUE (1 / 64) // Value used to round lumcounts, values smaller than 1/69 don't matter (if they do, thanks sinking points), greater values will make lighting less precise, but in turn increase performance, VERY SLIGHTLY.
+/// type of falloff to use for lighting; 1 for circular, 2 for square
+#define LIGHTING_FALLOFF 1
+/// use lambertian shading for light sources
+#define LIGHTING_LAMBERTIAN 0
+/// height off the ground of light sources on the pseudo-z-axis, you should probably leave this alone
+#define LIGHTING_HEIGHT 1
+/// Value used to round lumcounts, values smaller than 1/129 don't matter (if they do, thanks sinking points), greater values will make lighting less precise, but in turn increase performance, VERY SLIGHTLY.
+#define LIGHTING_ROUND_VALUE (1 / 64)
-#define LIGHTING_SOFT_THRESHOLD 0.05 // If the max of the lighting lumcounts of each spectrum drops below this, disable luminosity on the lighting overlays. This also should be the transparancy of the "soft_dark" icon state.
+/// icon used for lighting shading effects
+#define LIGHTING_ICON 'icons/effects/lighting_object.dmi'
-#define LIGHTING_MULT_FACTOR 0.5
+/// If the max of the lighting lumcounts of each spectrum drops below this, disable luminosity on the lighting objects.
+/// Set to zero to disable soft lighting. Luminosity changes then work if it's lit at all.
+#define LIGHTING_SOFT_THRESHOLD 0
-// If I were you I'd leave this alone.
+/// If I were you I'd leave this alone.
#define LIGHTING_BASE_MATRIX \
list \
( \
- LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, 0, \
- LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, 0, \
- LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, 0, \
- LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, 0, \
+ 1, 1, 1, 0, \
+ 1, 1, 1, 0, \
+ 1, 1, 1, 0, \
+ 1, 1, 1, 0, \
0, 0, 0, 1 \
) \
-// Helpers so we can (more easily) control the colour matrices.
-#define CL_MATRIX_RR 1
-#define CL_MATRIX_RG 2
-#define CL_MATRIX_RB 3
-#define CL_MATRIX_RA 4
-#define CL_MATRIX_GR 5
-#define CL_MATRIX_GG 6
-#define CL_MATRIX_GB 7
-#define CL_MATRIX_GA 8
-#define CL_MATRIX_BR 9
-#define CL_MATRIX_BG 10
-#define CL_MATRIX_BB 11
-#define CL_MATRIX_BA 12
-#define CL_MATRIX_AR 13
-#define CL_MATRIX_AG 14
-#define CL_MATRIX_AB 15
-#define CL_MATRIX_AA 16
-#define CL_MATRIX_CR 17
-#define CL_MATRIX_CG 18
-#define CL_MATRIX_CB 19
-#define CL_MATRIX_CA 20
+///How many tiles standard fires glow.
+#define LIGHT_RANGE_FIRE 3
-//Some defines to generalise colours used in lighting.
-//Important note on colors. Colors can end up significantly different from the basic html picture, especially when saturated
-#define LIGHT_COLOR_RED "#FA8282" //Warm but extremely diluted red. rgb(250, 130, 130)
-#define LIGHT_COLOR_GREEN "#64C864" //Bright but quickly dissipating neon green. rgb(100, 200, 100)
-#define LIGHT_COLOR_BLUE "#6496FA" //Cold, diluted blue. rgb(100, 150, 250)
+#define LIGHTING_PLANE_ALPHA_VISIBLE 255
+#define LIGHTING_PLANE_ALPHA_NV_TRAIT 245
+#define LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE 192
+/// For lighting alpha, small amounts lead to big changes. even at 128 its hard to figure out what is dark and what is light, at 64 you almost can't even tell.
+#define LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE 128
+#define LIGHTING_PLANE_ALPHA_INVISIBLE 0
-#define LIGHT_COLOR_BLUEGREEN "#7DE1AF" //Light blueish green. rgb(125, 225, 175)
-#define LIGHT_COLOR_CYAN "#7DE1E1" //Diluted cyan. rgb(125, 225, 225)
-#define LIGHT_COLOR_LIGHT_CYAN "#40CEFF" //More-saturated cyan. rgb(64, 206, 255)
-#define LIGHT_COLOR_DARK_BLUE "#6496FA" //Saturated blue. rgb(51, 117, 248)
-#define LIGHT_COLOR_PINK "#E17DE1" //Diluted, mid-warmth pink. rgb(225, 125, 225)
-#define LIGHT_COLOR_YELLOW "#E1E17D" //Dimmed yellow, leaning kaki. rgb(225, 225, 125)
-#define LIGHT_COLOR_BROWN "#966432" //Clear brown, mostly dim. rgb(150, 100, 50)
-#define LIGHT_COLOR_ORANGE "#FA9632" //Mostly pure orange. rgb(250, 150, 50)
-#define LIGHT_COLOR_PURPLE "#952CF4" //Light Purple. rgb(149, 44, 244)
-#define LIGHT_COLOR_LAVENDER "#9B51FF" //Less-saturated light purple. rgb(155, 81, 255)
+//lighting area defines
+/// dynamic lighting disabled (area stays at full brightness)
+#define DYNAMIC_LIGHTING_DISABLED 0
+/// dynamic lighting enabled
+#define DYNAMIC_LIGHTING_ENABLED 1
+/// dynamic lighting enabled even if the area doesn't require power
+#define DYNAMIC_LIGHTING_FORCED 2
+/// dynamic lighting enabled only if starlight is.
+#define DYNAMIC_LIGHTING_IFSTARLIGHT 3
+#define IS_DYNAMIC_LIGHTING(A) A.dynamic_lighting
-//These ones aren't a direct colour like the ones above, because nothing would fit
-#define LIGHT_COLOR_FIRE "#FAA019" //Warm orange color, leaning strongly towards yellow. rgb(250, 160, 25)
-#define LIGHT_COLOR_LAVA "#C48A18" //Very warm yellow, leaning slightly towards orange. rgb(196, 138, 24)
-#define LIGHT_COLOR_FLARE "#FA644B" //Bright, non-saturated red. Leaning slightly towards pink for visibility. rgb(250, 100, 75)
-#define LIGHT_COLOR_SLIME_LAMP "#AFC84B" //Weird color, between yellow and green, very slimy. rgb(175, 200, 75)
-#define LIGHT_COLOR_TUNGSTEN "#FAE1AF" //Extremely diluted yellow, close to skin color (for some reason). rgb(250, 225, 175)
-#define LIGHT_COLOR_HALOGEN "#F0FAFA" //Barely visible cyan-ish hue, as the doctor prescribed. rgb(240, 250, 250)
-//Lighting values used by the station lights
-#define LIGHT_COLOR_FLUORESCENT_TUBE "#E0EFFF"
-#define LIGHT_COLOR_FLUORESCENT_FLASHLIGHT "#CDDDFF"
-#define LIGHT_COLOR_INCANDESCENT_TUBE "#FFFEB8"
-#define LIGHT_COLOR_INCANDESCENT_BULB "#FFDDBB"
-#define LIGHT_COLOR_INCANDESCENT_FLASHLIGHT "#FFCC66"
-#define LIGHT_COLOR_NIGHTSHIFT "#EFCC86"
+//code assumes higher numbers override lower numbers.
+#define LIGHTING_NO_UPDATE 0
+#define LIGHTING_VIS_UPDATE 1
+#define LIGHTING_CHECK_UPDATE 2
+#define LIGHTING_FORCE_UPDATE 3
-//Fake ambient occlusion filter
-#define AMBIENT_OCCLUSION filter(type="drop_shadow", x=0, y=-1, size=2, offset=2, color="#04080F55") //VOREStation Edit for prettier visuals.
+#define FLASH_LIGHT_DURATION 2
+#define FLASH_LIGHT_POWER 3
+#define FLASH_LIGHT_RANGE 3.8
+
+// Emissive blocking.
+/// Uses vis_overlays to leverage caching so that very few new items need to be made for the overlay. For anything that doesn't change outline or opaque area much or at all.
+#define EMISSIVE_BLOCK_GENERIC 1
+/// Uses a dedicated render_target object to copy the entire appearance in real time to the blocking layer. For things that can change in appearance a lot from the base state, like humans.
+#define EMISSIVE_BLOCK_UNIQUE 2
+
+/// The color matrix applied to all emissive overlays. Should be solely dependent on alpha and not have RGB overlap with [EM_BLOCK_COLOR].
+#define EMISSIVE_COLOR list(0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,1, 1,1,1,0)
+/// A globaly cached version of [EMISSIVE_COLOR] for quick access.
+GLOBAL_LIST_INIT(emissive_color, EMISSIVE_COLOR)
+/// The color matrix applied to all emissive blockers. Should be solely dependent on alpha and not have RGB overlap with [EMISSIVE_COLOR].
+#define EM_BLOCK_COLOR list(0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,1, 0,0,0,0)
+/// A globaly cached version of [EM_BLOCK_COLOR] for quick access.
+GLOBAL_LIST_INIT(em_block_color, EM_BLOCK_COLOR)
+/// The color matrix used to mask out emissive blockers on the emissive plane. Alpha should default to zero, be solely dependent on the RGB value of [EMISSIVE_COLOR], and be independant of the RGB value of [EM_BLOCK_COLOR].
+#define EM_MASK_MATRIX list(0,0,0,1/3, 0,0,0,1/3, 0,0,0,1/3, 0,0,0,0, 1,1,1,0)
+/// A globaly cached version of [EM_MASK_MATRIX] for quick access.
+GLOBAL_LIST_INIT(em_mask_matrix, EM_MASK_MATRIX)
+
+/// Returns the red part of a #RRGGBB hex sequence as number
+#define GETREDPART(hexa) hex2num(copytext(hexa, 2, 4))
+
+/// Returns the green part of a #RRGGBB hex sequence as number
+#define GETGREENPART(hexa) hex2num(copytext(hexa, 4, 6))
+
+/// Returns the blue part of a #RRGGBB hex sequence as number
+#define GETBLUEPART(hexa) hex2num(copytext(hexa, 6, 8))
+
+/// Parse the hexadecimal color into lumcounts of each perspective.
+#define PARSE_LIGHT_COLOR(source) \
+do { \
+ if (source.light_color != COLOR_WHITE) { \
+ var/__light_color = source.light_color; \
+ source.lum_r = GETREDPART(__light_color) / 255; \
+ source.lum_g = GETGREENPART(__light_color) / 255; \
+ source.lum_b = GETBLUEPART(__light_color) / 255; \
+ } else { \
+ source.lum_r = 1; \
+ source.lum_g = 1; \
+ source.lum_b = 1; \
+ }; \
+} while (FALSE)
diff --git a/code/__defines/lighting_vr.dm b/code/__defines/lighting_vr.dm
index 0cd6b060a1..a7f51e8bbc 100644
--- a/code/__defines/lighting_vr.dm
+++ b/code/__defines/lighting_vr.dm
@@ -1,2 +1,4 @@
#define LIGHT_COLOR_INCANDESCENT_TUBE "#E0EFF0"
-#define LIGHT_COLOR_INCANDESCENT_BULB "#FFFEB8"
\ No newline at end of file
+#define LIGHT_COLOR_INCANDESCENT_BULB "#FFFEB8"
+//Fake ambient occlusion filter
+#define AMBIENT_OCCLUSION filter(type="drop_shadow", x=0, y=-1, size=2, offset=2, color="#04080F55") //VOREStation Edit for prettier visuals.
\ No newline at end of file
diff --git a/code/__defines/map.dm b/code/__defines/map.dm
index 9b8856c70e..9bb1469212 100644
--- a/code/__defines/map.dm
+++ b/code/__defines/map.dm
@@ -8,7 +8,7 @@
#define MAP_LEVEL_CONSOLES 0x040 // Z-levels available to various consoles, such as the crew monitor (when that gets coded in). Defaults to station_levels if unset.
#define MAP_LEVEL_XENOARCH_EXEMPT 0x080 // Z-levels exempt from xenoarch digsite generation.
#define MAP_LEVEL_PERSIST 0x100 // Z-levels where SSpersistence should persist between rounds
-#define MAP_LEVEL_MAPPABLE 0x200 // Z-levels where SSpersistence should persist between rounds
+#define MAP_LEVEL_MAPPABLE 0x200 // Z-levels where mapping units will work fully
// Misc map defines.
-#define SUBMAP_MAP_EDGE_PAD 8 // Automatically created submaps are forbidden from being this close to the main map's edge. //VOREStation Edit
\ No newline at end of file
+#define SUBMAP_MAP_EDGE_PAD 8 // Automatically created submaps are forbidden from being this close to the main map's edge. //VOREStation Edit
diff --git a/code/__defines/materials.dm b/code/__defines/materials.dm
index 499c974b47..3dea12295e 100644
--- a/code/__defines/materials.dm
+++ b/code/__defines/materials.dm
@@ -61,3 +61,15 @@
#define DEFAULT_WALL_MATERIAL "steel"
#define TABLE_BRITTLE_MATERIAL_MULTIPLIER 4 // Amount table damage is multiplied by if it is made of a brittle material (e.g. glass)
+
+//Material Container Flags.
+///If the container shows the amount of contained materials on examine.
+#define MATCONTAINER_EXAMINE (1<<0)
+///If the container cannot have materials inserted through attackby().
+#define MATCONTAINER_NO_INSERT (1<<1)
+///if the user can insert mats into the container despite the intent.
+#define MATCONTAINER_ANY_INTENT (1<<2)
+///if the user won't receive a warning when attacking the container with an unallowed item.
+#define MATCONTAINER_SILENT (1<<3)
+
+#define GET_MATERIAL_REF(arguments...) _GetMaterialRef(list(##arguments))
\ No newline at end of file
diff --git a/code/__defines/misc.dm b/code/__defines/misc.dm
index d68f8a7ec1..7f1304c26b 100644
--- a/code/__defines/misc.dm
+++ b/code/__defines/misc.dm
@@ -20,6 +20,7 @@
#define SEE_INVISIBLE_MINIMUM 5
#define INVISIBILITY_MAXIMUM 100
+#define INVISIBILITY_ABSTRACT 101 //only used for abstract objects, things that are not really there.
// Pseudo-Invis, like Ninja, Ling, Etc.
#define EFFECTIVE_INVIS 50 // Below this, can't be examined, may as well be invisible to the game
diff --git a/code/__defines/mobs.dm b/code/__defines/mobs.dm
index 7513ab3c00..b70001cbd6 100644
--- a/code/__defines/mobs.dm
+++ b/code/__defines/mobs.dm
@@ -377,37 +377,40 @@
//Vision flags, for dealing with plane visibility
#define VIS_FULLBRIGHT 1
#define VIS_LIGHTING 2
-#define VIS_GHOSTS 3
-#define VIS_AI_EYE 4
+#define VIS_O_LIGHT 3
+#define VIS_EMISSIVE 4
-#define VIS_CH_STATUS 5
-#define VIS_CH_HEALTH 6
-#define VIS_CH_LIFE 7
-#define VIS_CH_ID 8
-#define VIS_CH_WANTED 9
-#define VIS_CH_IMPLOYAL 10
-#define VIS_CH_IMPTRACK 11
-#define VIS_CH_IMPCHEM 12
-#define VIS_CH_SPECIAL 13
-#define VIS_CH_STATUS_OOC 14
+#define VIS_GHOSTS 5
+#define VIS_AI_EYE 6
-#define VIS_ADMIN1 15
-#define VIS_ADMIN2 16
-#define VIS_ADMIN3 17
+#define VIS_CH_STATUS 7
+#define VIS_CH_HEALTH 8
+#define VIS_CH_LIFE 9
+#define VIS_CH_ID 10
+#define VIS_CH_WANTED 11
+#define VIS_CH_IMPLOYAL 12
+#define VIS_CH_IMPTRACK 13
+#define VIS_CH_IMPCHEM 14
+#define VIS_CH_SPECIAL 15
+#define VIS_CH_STATUS_OOC 16
-#define VIS_MESONS 18
+#define VIS_ADMIN1 17
+#define VIS_ADMIN2 18
+#define VIS_ADMIN3 19
-#define VIS_TURFS 19
-#define VIS_OBJS 20
-#define VIS_MOBS 21
+#define VIS_MESONS 20
-#define VIS_BUILDMODE 22
+#define VIS_TURFS 21
+#define VIS_OBJS 22
+#define VIS_MOBS 23
-#define VIS_CLOAKED 23
+#define VIS_BUILDMODE 24
-#define VIS_STATUS 24
+#define VIS_CLOAKED 25
-#define VIS_COUNT 24 //Must be highest number from above.
+#define VIS_STATUS 26
+
+#define VIS_COUNT 26 //Must be highest number from above.
//Some mob icon layering defines
#define BODY_LAYER -100
diff --git a/code/__defines/mobs_vr.dm b/code/__defines/mobs_vr.dm
index dbd66d9062..116358e577 100644
--- a/code/__defines/mobs_vr.dm
+++ b/code/__defines/mobs_vr.dm
@@ -1,13 +1,13 @@
#undef VIS_COUNT
-#define VIS_CH_STATUS_R 24
-#define VIS_CH_HEALTH_VR 25
-#define VIS_CH_BACKUP 26
-#define VIS_CH_VANTAG 27
+#define VIS_CH_STATUS_R 27
+#define VIS_CH_HEALTH_VR 28
+#define VIS_CH_BACKUP 29
+#define VIS_CH_VANTAG 30
-#define VIS_AUGMENTED 28
+#define VIS_AUGMENTED 31
-#define VIS_COUNT 28
+#define VIS_COUNT 31
//Protean organs
#define O_ORCH "orchestrator"
diff --git a/code/__defines/subsystems.dm b/code/__defines/subsystems.dm
index 0847e447db..9ad2af0504 100644
--- a/code/__defines/subsystems.dm
+++ b/code/__defines/subsystems.dm
@@ -56,6 +56,7 @@ var/global/list/runlevel_flags = list(RUNLEVEL_LOBBY, RUNLEVEL_SETUP, RUNLEVEL_G
#define INIT_ORDER_SQLITE 40
#define INIT_ORDER_MEDIA_TRACKS 38 // Gotta get that lobby music up, yo
#define INIT_ORDER_CHEMISTRY 35
+#define INIT_ORDER_VIS 32
#define INIT_ORDER_SKYBOX 30
#define INIT_ORDER_MAPPING 25
#define INIT_ORDER_SOUNDS 23
@@ -94,6 +95,7 @@ var/global/list/runlevel_flags = list(RUNLEVEL_LOBBY, RUNLEVEL_SETUP, RUNLEVEL_G
#define FIRE_PRIORITY_SUPPLY 5
#define FIRE_PRIORITY_NIGHTSHIFT 5
#define FIRE_PRIORITY_PLANTS 5
+#define FIRE_PRIORITY_VIS 5
#define FIRE_PRIORITY_ORBIT 7
#define FIRE_PRIORITY_VOTE 8
#define FIRE_PRIORITY_INSTRUMENTS 9
diff --git a/code/__defines/tgui.dm b/code/__defines/tgui.dm
index 3d706a4e0f..c261e5ecdc 100644
--- a/code/__defines/tgui.dm
+++ b/code/__defines/tgui.dm
@@ -18,6 +18,14 @@
/// Get a pool index of the provided window id
#define TGUI_WINDOW_INDEX(window_id) text2num(copytext(window_id, 13))
+/// Creates a message packet for sending via output()
+// This is {"type":type,"payload":payload}, but pre-encoded. This is much faster
+// than doing it the normal way.
+// To ensure this is correct, this is unit tested in tgui_create_message.
+#define TGUI_CREATE_MESSAGE(type, payload) ( \
+ "%7b%22type%22%3a%22[type]%22%2c%22payload%22%3a[url_encode(json_encode(payload))]%7d" \
+)
+
/// Max length for Modal Input
#define TGUI_MODAL_INPUT_MAX_LENGTH 1024
/// Max length for Modal Input for names
diff --git a/code/__defines/turfs.dm b/code/__defines/turfs.dm
index 64593f6e11..770d58573f 100644
--- a/code/__defines/turfs.dm
+++ b/code/__defines/turfs.dm
@@ -17,4 +17,6 @@
#define SMOOTH_GREYLIST 4 // Use a whitelist and a blacklist at the same time. atom smoothing only
#define isCardinal(x) (x == NORTH || x == SOUTH || x == EAST || x == WEST)
-#define isDiagonal(x) (x == NORTHEAST || x == SOUTHEAST || x == NORTHWEST || x == SOUTHWEST)
\ No newline at end of file
+#define isDiagonal(x) (x == NORTHEAST || x == SOUTHEAST || x == NORTHWEST || x == SOUTHWEST)
+
+#define IS_OPAQUE_TURF(turf) (turf.directional_opacity == ALL_CARDINALS)
diff --git a/code/_global_vars/bitfields.dm b/code/_global_vars/bitfields.dm
index 891c50ce88..be3de4adeb 100644
--- a/code/_global_vars/bitfields.dm
+++ b/code/_global_vars/bitfields.dm
@@ -2,6 +2,38 @@ GLOBAL_LIST_INIT(bitfields, list(
"datum_flags" = list(
"DF_VAR_EDITED" = DF_VAR_EDITED,
"DF_ISPROCESSING" = DF_ISPROCESSING
- )
-
+ ),
+ "appearance_flags" = list(
+ "KEEP_APART" = KEEP_APART,
+ "KEEP_TOGETHER" = KEEP_TOGETHER,
+ "LONG_GLIDE" = LONG_GLIDE,
+ "NO_CLIENT_COLOR" = NO_CLIENT_COLOR,
+ "PIXEL_SCALE" = PIXEL_SCALE,
+ "PLANE_MASTER" = PLANE_MASTER,
+ "RESET_ALPHA" = RESET_ALPHA,
+ "RESET_COLOR" = RESET_COLOR,
+ "RESET_TRANSFORM" = RESET_TRANSFORM,
+ "TILE_BOUND" = TILE_BOUND,
+ ),
+ "vis_flags" = list(
+ "VIS_HIDE" = VIS_HIDE,
+ "VIS_INHERIT_DIR" = VIS_INHERIT_DIR,
+ "VIS_INHERIT_ICON" = VIS_INHERIT_ICON,
+ "VIS_INHERIT_ICON_STATE" = VIS_INHERIT_ICON_STATE,
+ "VIS_INHERIT_ID" = VIS_INHERIT_ID,
+ "VIS_INHERIT_LAYER" = VIS_INHERIT_LAYER,
+ "VIS_INHERIT_PLANE" = VIS_INHERIT_PLANE,
+ "VIS_UNDERLAY" = VIS_UNDERLAY,
+ ),
+ "sight" = list(
+ "BLIND" = BLIND,
+ "SEE_BLACKNESS" = SEE_BLACKNESS,
+ "SEE_INFRA" = SEE_INFRA,
+ "SEE_MOBS" = SEE_MOBS,
+ "SEE_OBJS" = SEE_OBJS,
+ "SEE_PIXELS" = SEE_PIXELS,
+ "SEE_SELF" = SEE_SELF,
+ "SEE_THRU" = SEE_THRU,
+ "SEE_TURFS" = SEE_TURFS,
+ ),
))
diff --git a/code/_global_vars/typecache.dm b/code/_global_vars/typecache.dm
new file mode 100644
index 0000000000..2fdb1bd579
--- /dev/null
+++ b/code/_global_vars/typecache.dm
@@ -0,0 +1,6 @@
+//please store common type caches here.
+//type caches should only be stored here if used in mutiple places or likely to be used in mutiple places.
+
+//Note: typecache can only replace istype if you know for sure the thing is at least a datum.
+
+GLOBAL_LIST_INIT(typecache_stack, typecacheof(/obj/item/stack))
\ No newline at end of file
diff --git a/code/_helpers/atom_movables.dm b/code/_helpers/atom_movables.dm
index b838f868e6..fbe2ab2a02 100644
--- a/code/_helpers/atom_movables.dm
+++ b/code/_helpers/atom_movables.dm
@@ -21,6 +21,8 @@
//Find coordinates
var/turf/T = get_turf(AM) //use AM's turfs, as it's coords are the same as AM's AND AM's coords are lost if it is inside another atom
+ if(!T)
+ return null
var/final_x = T.x + rough_x
var/final_y = T.y + rough_y
diff --git a/code/_helpers/global_lists_vr.dm b/code/_helpers/global_lists_vr.dm
index 6c1fd9d261..0d2ed5e5d6 100644
--- a/code/_helpers/global_lists_vr.dm
+++ b/code/_helpers/global_lists_vr.dm
@@ -232,6 +232,7 @@ var/global/list/contamination_flavors = list(
"Dirty" = contamination_flavors_dirty,
"Musky" = contamination_flavors_musky,
"Smelly" = contamination_flavors_smelly,
+ "Slimy" = contamination_flavors_slimy,
"Wet" = contamination_flavors_wet)
var/global/list/contamination_flavors_generic = list("acrid",
@@ -435,6 +436,21 @@ var/global/list/contamination_flavors_musky = list("drenched",
"sticky",
"tainted")
+var/global/list/contamination_flavors_slimy = list("slimy",
+ "sloppy",
+ "drippy",
+ "glistening",
+ "dripping",
+ "gunky",
+ "slimed",
+ "mucky",
+ "viscous",
+ "dank",
+ "glutinous",
+ "syrupy",
+ "slippery",
+ "gelatinous")
+
var/global/list/contamination_colors = list("green",
"white",
"black",
@@ -522,4 +538,4 @@ var/global/list/remainless_species = list(SPECIES_PROMETHEAN,
return 1 // Hooks must return 1
var/global/list/weavable_structures = list()
-var/global/list/weavable_items = list()
\ No newline at end of file
+var/global/list/weavable_items = list()
diff --git a/code/_helpers/lighting.dm b/code/_helpers/lighting.dm
new file mode 100644
index 0000000000..7cfd434e69
--- /dev/null
+++ b/code/_helpers/lighting.dm
@@ -0,0 +1,10 @@
+/// Produces a mutable appearance glued to the [EMISSIVE_PLANE] dyed to be the [EMISSIVE_COLOR].
+/proc/emissive_appearance(icon, icon_state = "", layer = FLOAT_LAYER, alpha = 255, appearance_flags = NONE)
+ var/mutable_appearance/appearance = mutable_appearance(icon, icon_state, layer, PLANE_EMISSIVE, alpha, appearance_flags)
+ appearance.color = GLOB.emissive_color
+ return appearance
+
+/proc/em_block_image_generic(var/image/I)
+ var/mutable_appearance/em_overlay = mutable_appearance(I.icon, I.icon_state, plane = PLANE_EMISSIVE, alpha = I.alpha, appearance_flags = KEEP_APART)
+ em_overlay.color = GLOB.em_block_color
+ return em_overlay
diff --git a/code/_helpers/sorts/comparators.dm b/code/_helpers/sorts/comparators.dm
index de64ad26f7..b1980d6da1 100644
--- a/code/_helpers/sorts/comparators.dm
+++ b/code/_helpers/sorts/comparators.dm
@@ -88,3 +88,6 @@
/proc/cmp_media_track_asc(datum/track/A, datum/track/B)
var/genre_sort = sorttext(B.genre || "Uncategorized", A.genre || "Uncategorized")
return genre_sort || sorttext(B.title, A.title)
+
+/proc/cmp_filter_data_priority(list/A, list/B)
+ return A["priority"] - B["priority"]
diff --git a/code/_helpers/visual_filters.dm b/code/_helpers/visual_filters.dm
index 6cafa5a04d..96f6871000 100644
--- a/code/_helpers/visual_filters.dm
+++ b/code/_helpers/visual_filters.dm
@@ -1,20 +1,306 @@
-// These involve BYOND's built in filters that do visual effects, and not stuff that distinguishes between things.
+#define ICON_NOT_SET "Not Set"
+//This is stored as a nested list instead of datums or whatever because it json encodes nicely for usage in tgui
+GLOBAL_LIST_INIT(master_filter_info, list(
+ "alpha" = list(
+ "defaults" = list(
+ "x" = 0,
+ "y" = 0,
+ "icon" = ICON_NOT_SET,
+ "render_source" = "",
+ "flags" = 0
+ ),
+ "flags" = list(
+ "MASK_INVERSE" = MASK_INVERSE,
+ "MASK_SWAP" = MASK_SWAP
+ )
+ ),
+ "angular_blur" = list(
+ "defaults" = list(
+ "x" = 0,
+ "y" = 0,
+ "size" = 1
+ )
+ ),
+ /* Not supported because making a proper matrix editor on the frontend would be a huge dick pain.
+ Uncomment if you ever implement it
+ "color" = list(
+ "defaults" = list(
+ "color" = matrix(),
+ "space" = FILTER_COLOR_RGB
+ )
+ ),
+ */
+ "displace" = list(
+ "defaults" = list(
+ "x" = 0,
+ "y" = 0,
+ "size" = null,
+ "icon" = ICON_NOT_SET,
+ "render_source" = ""
+ )
+ ),
+ "drop_shadow" = list(
+ "defaults" = list(
+ "x" = 1,
+ "y" = -1,
+ "size" = 1,
+ "offset" = 0,
+ "color" = COLOR_HALF_TRANSPARENT_BLACK
+ )
+ ),
+ "blur" = list(
+ "defaults" = list(
+ "size" = 1
+ )
+ ),
+ "layer" = list(
+ "defaults" = list(
+ "x" = 0,
+ "y" = 0,
+ "icon" = ICON_NOT_SET,
+ "render_source" = "",
+ "flags" = FILTER_OVERLAY,
+ "color" = "",
+ "transform" = null,
+ "blend_mode" = BLEND_DEFAULT
+ )
+ ),
+ "motion_blur" = list(
+ "defaults" = list(
+ "x" = 0,
+ "y" = 0
+ )
+ ),
+ "outline" = list(
+ "defaults" = list(
+ "size" = 0,
+ "color" = COLOR_BLACK,
+ "flags" = NONE
+ ),
+ "flags" = list(
+ "OUTLINE_SHARP" = OUTLINE_SHARP,
+ "OUTLINE_SQUARE" = OUTLINE_SQUARE
+ )
+ ),
+ "radial_blur" = list(
+ "defaults" = list(
+ "x" = 0,
+ "y" = 0,
+ "size" = 0.01
+ )
+ ),
+ "rays" = list(
+ "defaults" = list(
+ "x" = 0,
+ "y" = 0,
+ "size" = 16,
+ "color" = COLOR_WHITE,
+ "offset" = 0,
+ "density" = 10,
+ "threshold" = 0.5,
+ "factor" = 0,
+ "flags" = FILTER_OVERLAY | FILTER_UNDERLAY
+ ),
+ "flags" = list(
+ "FILTER_OVERLAY" = FILTER_OVERLAY,
+ "FILTER_UNDERLAY" = FILTER_UNDERLAY
+ )
+ ),
+ "ripple" = list(
+ "defaults" = list(
+ "x" = 0,
+ "y" = 0,
+ "size" = 1,
+ "repeat" = 2,
+ "radius" = 0,
+ "falloff" = 1,
+ "flags" = NONE
+ ),
+ "flags" = list(
+ "WAVE_BOUNDED" = WAVE_BOUNDED
+ )
+ ),
+ "wave" = list(
+ "defaults" = list(
+ "x" = 0,
+ "y" = 0,
+ "size" = 1,
+ "offset" = 0,
+ "flags" = NONE
+ ),
+ "flags" = list(
+ "WAVE_SIDEWAYS" = WAVE_SIDEWAYS,
+ "WAVE_BOUNDED" = WAVE_BOUNDED
+ )
+ )
+))
-// All of this ported from TG.
-/atom/movable
- var/list/filter_data // For handling persistent filters
+#undef ICON_NOT_SET
-/proc/cmp_filter_data_priority(list/A, list/B)
- return A["priority"] - B["priority"]
+//Helpers to generate lists for filter helpers
+//This is the only practical way of writing these that actually produces sane lists
+/proc/alpha_mask_filter(x, y, icon/icon, render_source, flags)
+ . = list("type" = "alpha")
+ if(!isnull(x))
+ .["x"] = x
+ if(!isnull(y))
+ .["y"] = y
+ if(!isnull(icon))
+ .["icon"] = icon
+ if(!isnull(render_source))
+ .["render_source"] = render_source
+ if(!isnull(flags))
+ .["flags"] = flags
-/atom/movable/proc/add_filter(filter_name, priority, list/params)
+/proc/angular_blur_filter(x, y, size)
+ . = list("type" = "angular_blur")
+ if(!isnull(x))
+ .["x"] = x
+ if(!isnull(y))
+ .["y"] = y
+ if(!isnull(size))
+ .["size"] = size
+
+/proc/color_matrix_filter(matrix/in_matrix, space)
+ . = list("type" = "color")
+ .["color"] = in_matrix
+ if(!isnull(space))
+ .["space"] = space
+
+/proc/displacement_map_filter(icon, render_source, x, y, size = 32)
+ . = list("type" = "displace")
+ if(!isnull(icon))
+ .["icon"] = icon
+ if(!isnull(render_source))
+ .["render_source"] = render_source
+ if(!isnull(x))
+ .["x"] = x
+ if(!isnull(y))
+ .["y"] = y
+ if(!isnull(size))
+ .["size"] = size
+
+/proc/drop_shadow_filter(x, y, size, offset, color)
+ . = list("type" = "drop_shadow")
+ if(!isnull(x))
+ .["x"] = x
+ if(!isnull(y))
+ .["y"] = y
+ if(!isnull(size))
+ .["size"] = size
+ if(!isnull(offset))
+ .["offset"] = offset
+ if(!isnull(color))
+ .["color"] = color
+
+/proc/gauss_blur_filter(size)
+ . = list("type" = "blur")
+ if(!isnull(size))
+ .["size"] = size
+
+/proc/layering_filter(icon, render_source, x, y, flags, color, transform, blend_mode)
+ . = list("type" = "layer")
+ if(!isnull(icon))
+ .["icon"] = icon
+ if(!isnull(render_source))
+ .["render_source"] = render_source
+ if(!isnull(x))
+ .["x"] = x
+ if(!isnull(y))
+ .["y"] = y
+ if(!isnull(color))
+ .["color"] = color
+ if(!isnull(flags))
+ .["flags"] = flags
+ if(!isnull(transform))
+ .["transform"] = transform
+ if(!isnull(blend_mode))
+ .["blend_mode"] = blend_mode
+
+/proc/motion_blur_filter(x, y)
+ . = list("type" = "motion_blur")
+ if(!isnull(x))
+ .["x"] = x
+ if(!isnull(y))
+ .["y"] = y
+
+/proc/outline_filter(size, color, flags)
+ . = list("type" = "outline")
+ if(!isnull(size))
+ .["size"] = size
+ if(!isnull(color))
+ .["color"] = color
+ if(!isnull(flags))
+ .["flags"] = flags
+
+/proc/radial_blur_filter(size, x, y)
+ . = list("type" = "radial_blur")
+ if(!isnull(size))
+ .["size"] = size
+ if(!isnull(x))
+ .["x"] = x
+ if(!isnull(y))
+ .["y"] = y
+
+/proc/rays_filter(size, color, offset, density, threshold, factor, x, y, flags)
+ . = list("type" = "rays")
+ if(!isnull(size))
+ .["size"] = size
+ if(!isnull(color))
+ .["color"] = color
+ if(!isnull(offset))
+ .["offset"] = offset
+ if(!isnull(density))
+ .["density"] = density
+ if(!isnull(threshold))
+ .["threshold"] = threshold
+ if(!isnull(factor))
+ .["factor"] = factor
+ if(!isnull(x))
+ .["x"] = x
+ if(!isnull(y))
+ .["y"] = y
+ if(!isnull(flags))
+ .["flags"] = flags
+
+/proc/ripple_filter(radius, size, falloff, repeat, x, y, flags)
+ . = list("type" = "ripple")
+ if(!isnull(radius))
+ .["radius"] = radius
+ if(!isnull(size))
+ .["size"] = size
+ if(!isnull(falloff))
+ .["falloff"] = falloff
+ if(!isnull(repeat))
+ .["repeat"] = repeat
+ if(!isnull(flags))
+ .["flags"] = flags
+ if(!isnull(x))
+ .["x"] = x
+ if(!isnull(y))
+ .["y"] = y
+
+/proc/wave_filter(x, y, size, offset, flags)
+ . = list("type" = "wave")
+ if(!isnull(size))
+ .["size"] = size
+ if(!isnull(x))
+ .["x"] = x
+ if(!isnull(y))
+ .["y"] = y
+ if(!isnull(offset))
+ .["offset"] = offset
+ if(!isnull(flags))
+ .["flags"] = flags
+
+/atom/proc/add_filter(name,priority,list/params)
LAZYINITLIST(filter_data)
var/list/p = params.Copy()
p["priority"] = priority
- filter_data[filter_name] = p
+ filter_data[name] = p
update_filters()
-/atom/movable/proc/update_filters()
+/atom/proc/update_filters()
filters = null
filter_data = sortTim(filter_data, /proc/cmp_filter_data_priority, TRUE)
for(var/f in filter_data)
@@ -22,15 +308,77 @@
var/list/arguments = data.Copy()
arguments -= "priority"
filters += filter(arglist(arguments))
+ UNSETEMPTY(filter_data)
-/atom/movable/proc/get_filter(filter_name)
- if(filter_data && filter_data[filter_name])
- return filters[filter_data.Find(filter_name)]
+/atom/proc/transition_filter(name, time, list/new_params, easing, loop)
+ var/filter = get_filter(name)
+ if(!filter)
+ return
-// Polaris Extensions
-/atom/movable/proc/remove_filter(filter_name)
- var/thing = get_filter(filter_name)
- if(thing)
- LAZYREMOVE(filter_data, filter_name)
- filters -= thing
- update_filters()
\ No newline at end of file
+ var/list/old_filter_data = filter_data[name]
+
+ var/list/params = old_filter_data.Copy()
+ for(var/thing in new_params)
+ params[thing] = new_params[thing]
+
+ animate(filter, new_params, time = time, easing = easing, loop = loop)
+ for(var/param in params)
+ filter_data[name][param] = params[param]
+
+/atom/proc/change_filter_priority(name, new_priority)
+ if(!filter_data || !filter_data[name])
+ return
+
+ filter_data[name]["priority"] = new_priority
+ update_filters()
+
+/obj/item/update_filters()
+ . = ..()
+ /* Will port this from TG
+ for(var/X in actions)
+ var/datum/action/A = X
+ A.UpdateButtonIcon()
+ */
+
+/atom/proc/get_filter(name)
+ if(filter_data && filter_data[name])
+ return filters[filter_data.Find(name)]
+
+/atom/proc/remove_filter(name_or_names)
+ if(!filter_data)
+ return
+
+ var/list/names = islist(name_or_names) ? name_or_names : list(name_or_names)
+
+ for(var/name in names)
+ if(filter_data[name])
+ filter_data -= name
+ update_filters()
+
+/atom/proc/clear_filters()
+ filter_data = null
+ filters = null
+
+/proc/apply_wibbly_filters(atom/in_atom, length)
+ for(var/i in 1 to 7)
+ //This is a very baffling and strange way of doing this but I am just preserving old functionality
+ var/X
+ var/Y
+ var/rsq
+ do
+ X = 60*rand() - 30
+ Y = 60*rand() - 30
+ rsq = X*X + Y*Y
+ while(rsq<100 || rsq>900) // Yeah let's just loop infinitely due to bad luck what's the worst that could happen?
+ var/random_roll = rand()
+ in_atom.add_filter("wibbly-[i]", 5, wave_filter(x = X, y = Y, size = rand() * 2.5 + 0.5, offset = random_roll))
+ var/filter = in_atom.get_filter("wibbly-[i]")
+ animate(filter, offset = random_roll, time = 0, loop = -1, flags = ANIMATION_PARALLEL)
+ animate(offset = random_roll - 1, time = rand() * 20 + 10)
+
+/proc/remove_wibbly_filters(atom/in_atom)
+ var/filter
+ for(var/i in 1 to 7)
+ filter = in_atom.get_filter("wibbly-[i]")
+ animate(filter)
+ in_atom.remove_filter("wibbly-[i]")
diff --git a/code/_onclick/click.dm b/code/_onclick/click.dm
index 076a0d740c..c9fe06d47c 100644
--- a/code/_onclick/click.dm
+++ b/code/_onclick/click.dm
@@ -355,7 +355,7 @@
facedir(direction)
/obj/screen/click_catcher
- name = "Darkness"
+ name = "" // Empty string names don't show up in context menu clicks
icon = 'icons/mob/screen_gen.dmi'
icon_state = "click_catcher"
plane = CLICKCATCHER_PLANE
diff --git a/code/_onclick/hud/ability_screen_objects.dm b/code/_onclick/hud/ability_screen_objects.dm
index 23a29367c0..cb500b4fe3 100644
--- a/code/_onclick/hud/ability_screen_objects.dm
+++ b/code/_onclick/hud/ability_screen_objects.dm
@@ -218,7 +218,7 @@
// if((last_charge == spell.charge_counter || !handle_icon_updates) && !forced_update)
// return //nothing to see here
-// overlays -= spell.hud_state
+// cut_overlay(spell.hud_state)
// if(spell.charge_type == Sp_RECHARGE || spell.charge_type == Sp_CHARGES)
// if(spell.charge_counter < spell.charge_max)
@@ -228,27 +228,27 @@
// partial_charge.Crop(1, 1, partial_charge.Width(), round(partial_charge.Height() * spell.charge_counter / spell.charge_max))
// overlays += partial_charge
// if(last_charged_icon)
-// overlays -= last_charged_icon
+// cut_overlay(last_charged_icon)
// last_charged_icon = partial_charge
// else if(last_charged_icon)
-// overlays -= last_charged_icon
+// cut_overlay(last_charged_icon)
// last_charged_icon = null
// else
// icon_state = "[spell_base]_spell_ready"
// if(last_charged_icon)
-// overlays -= last_charged_icon
+// cut_overlay(last_charged_icon)
// else
// icon_state = "[spell_base]_spell_ready"
- overlays.Cut()
+ cut_overlays()
icon_state = "[background_base_state]_spell_base"
overlays += ability_icon_state
// last_charge = spell.charge_counter
-// overlays -= "silence"
+// cut_overlay("silence")
// if(spell.silenced)
-// overlays += "silence"
+// add_overlay("silence")
/obj/screen/ability/Click()
if(!usr)
diff --git a/code/_onclick/hud/action.dm b/code/_onclick/hud/action.dm
index 160413135b..d725fb8064 100644
--- a/code/_onclick/hud/action.dm
+++ b/code/_onclick/hud/action.dm
@@ -134,7 +134,7 @@
icon = owner.button_icon
icon_state = owner.background_icon_state
- overlays.Cut()
+ cut_overlays()
var/image/img
if(owner.action_type == AB_ITEM && owner.target)
var/obj/item/I = owner.target
@@ -143,7 +143,7 @@
img = image(owner.button_icon,src,owner.button_icon_state)
img.pixel_x = 0
img.pixel_y = 0
- overlays += img
+ add_overlay(img)
if(!owner.IsAvailable())
color = rgb(128,0,0,128)
@@ -178,9 +178,9 @@
return
/obj/screen/movable/action_button/hide_toggle/UpdateIcon()
- overlays.Cut()
+ cut_overlays()
var/image/img = image(icon,src,hidden?"show":"hide")
- overlays += img
+ add_overlay(img)
return
//This is the proc used to update all the action buttons. Properly defined in /mob/living/
diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm
index ddd7ac5dcc..38646ccbc3 100644
--- a/code/_onclick/hud/fullscreen.dm
+++ b/code/_onclick/hud/fullscreen.dm
@@ -5,25 +5,22 @@
condition ? overlay_fullscreen(screen_name, screen_type, arg) : clear_fullscreen(screen_name)
/mob/proc/overlay_fullscreen(category, type, severity)
- var/obj/screen/fullscreen/screen = screens[category]
+ var/obj/screen/fullscreen/screen = screens[category]
+ if (!screen || screen.type != type)
+ // needs to be recreated
+ clear_fullscreen(category, FALSE)
+ screens[category] = screen = new type()
+ else if ((!severity || severity == screen.severity) && (!client || screen.screen_loc != "CENTER-7,CENTER-7" || screen.view == client.view))
+ // doesn't need to be updated
+ return screen
- if(screen)
- if(screen.type != type)
- clear_fullscreen(category, FALSE)
- screen = null
- else if(!severity || severity == screen.severity)
- return screen
+ screen.icon_state = "[initial(screen.icon_state)][severity]"
+ screen.severity = severity
+ if (client && screen.should_show_to(src))
+ screen.update_for_view(client.view)
+ client.screen += screen
- if(!screen)
- screen = new type()
-
- screen.icon_state = "[initial(screen.icon_state)][severity]"
- screen.severity = severity
-
- screens[category] = screen
- if(client && stat != DEAD)
- client.screen += screen
- return screen
+ return screen
/mob/proc/clear_fullscreen(category, animated = 10)
var/obj/screen/fullscreen/screen = screens[category]
@@ -64,13 +61,26 @@
screen_loc = "CENTER-7,CENTER-7"
layer = FULLSCREEN_LAYER
plane = PLANE_FULLSCREEN
- mouse_opacity = 0
+ mouse_opacity = MOUSE_OPACITY_TRANSPARENT
+ var/view = 7
var/severity = 0
+ var/show_when_dead = FALSE
/obj/screen/fullscreen/Destroy()
severity = 0
return ..()
+/obj/screen/fullscreen/proc/update_for_view(client_view)
+ if (screen_loc == "CENTER-7,CENTER-7" && view != client_view)
+ var/list/actualview = getviewsize(client_view)
+ view = client_view
+ transform = matrix(actualview[1]/15, 0, 0, 0, actualview[2]/15, 0)
+
+/obj/screen/fullscreen/proc/should_show_to(mob/mymob)
+ if(!show_when_dead && mymob.stat == DEAD)
+ return FALSE
+ return TRUE
+
/obj/screen/fullscreen/brute
icon_state = "brutedamageoverlay"
layer = DAMAGE_LAYER
@@ -123,3 +133,21 @@
/obj/screen/fullscreen/fishbed
icon_state = "fishbed"
+
+/obj/screen/fullscreen/lighting_backdrop
+ icon = 'icons/mob/screen_gen.dmi'
+ icon_state = "flash"
+ transform = matrix(200, 0, 0, 0, 200, 0)
+ plane = PLANE_LIGHTING
+ blend_mode = BLEND_OVERLAY
+ show_when_dead = TRUE
+
+//Provides darkness to the back of the lighting plane
+/obj/screen/fullscreen/lighting_backdrop/lit
+ invisibility = INVISIBILITY_LIGHTING
+ layer = BACKGROUND_LAYER+21
+ color = "#000"
+
+//Provides whiteness in case you don't see lights so everything is still visible
+/obj/screen/fullscreen/lighting_backdrop/unlit
+ layer = BACKGROUND_LAYER+20
diff --git a/code/_onclick/hud/human.dm b/code/_onclick/hud/human.dm
index 22e8e459fc..45c94e9fcf 100644
--- a/code/_onclick/hud/human.dm
+++ b/code/_onclick/hud/human.dm
@@ -291,8 +291,8 @@
zone_sel.icon = HUD.ui_style
zone_sel.color = HUD.ui_color
zone_sel.alpha = HUD.ui_alpha
- zone_sel.overlays.Cut()
- zone_sel.overlays += image('icons/mob/zone_sel.dmi', "[zone_sel.selecting]")
+ zone_sel.cut_overlays()
+ zone_sel.add_overlay(image('icons/mob/zone_sel.dmi', "[zone_sel.selecting]"))
hud_elements |= zone_sel
//Handle the gun settings buttons
diff --git a/code/_onclick/hud/picture_in_picture.dm b/code/_onclick/hud/picture_in_picture.dm
index 3df659a687..4f9450db28 100644
--- a/code/_onclick/hud/picture_in_picture.dm
+++ b/code/_onclick/hud/picture_in_picture.dm
@@ -139,7 +139,7 @@
y_off = -height * world.icon_size - 16
- overlays.Cut()
+ cut_overlays()
add_background()
add_buttons()
if(do_refresh)
diff --git a/code/_onclick/hud/robot.dm b/code/_onclick/hud/robot.dm
index 95ff6e1104..22ea9bf562 100644
--- a/code/_onclick/hud/robot.dm
+++ b/code/_onclick/hud/robot.dm
@@ -141,8 +141,8 @@ var/obj/screen/robot_inventory
zone_sel = new /obj/screen/zone_sel()
zone_sel.icon = HUD.ui_style
zone_sel.alpha = HUD.ui_alpha
- zone_sel.overlays.Cut()
- zone_sel.overlays += image('icons/mob/zone_sel.dmi', "[zone_sel.selecting]")
+ zone_sel.cut_overlays()
+ zone_sel.add_overlay(image('icons/mob/zone_sel.dmi', "[zone_sel.selecting]"))
//Handle the gun settings buttons
gun_setting_icon = new /obj/screen/gun/mode(null)
diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm
index f3568b3e40..06b51def24 100644
--- a/code/_onclick/hud/screen_objects.dm
+++ b/code/_onclick/hud/screen_objects.dm
@@ -602,11 +602,11 @@
if(!handcuff_overlay)
var/state = (hud.l_hand_hud_object == src) ? "l_hand_hud_handcuffs" : "r_hand_hud_handcuffs"
handcuff_overlay = image("icon"='icons/mob/screen_gen.dmi', "icon_state"=state)
- overlays.Cut()
+ cut_overlays()
if(hud.mymob && iscarbon(hud.mymob))
var/mob/living/carbon/C = hud.mymob
if(C.handcuffed)
- overlays |= handcuff_overlay
+ add_overlay(handcuff_overlay)
// PIP stuff
/obj/screen/component_button
@@ -630,6 +630,13 @@
return ..()
// Background 'floor'
+/obj/screen/setup_preview/pm_helper
+ icon = null
+ icon_state = null
+ appearance_flags = PLANE_MASTER
+ plane = PLANE_EMISSIVE
+ alpha = 0
+
/obj/screen/setup_preview/bg
mouse_over_pointer = MOUSE_HAND_POINTER
@@ -711,7 +718,7 @@
var/obj/item/device/mapping_unit/owner
var/obj/screen/mapper/extras_holder/extras_holder
-/obj/screen/movable/mapper_holder/New(newloc, newowner)
+/obj/screen/movable/mapper_holder/Initialize(mapload, newowner)
owner = newowner
mask_full = new(src) // Full white square mask
@@ -849,15 +856,15 @@
/obj/screen/mapper/powbutton/Click()
if(!usr.checkClickCooldown())
- return 1
+ return TRUE
if(usr.stat || usr.paralysis || usr.stunned || usr.weakened)
- return 1
+ return TRUE
if(istype(usr.loc,/obj/mecha)) // stops inventory actions in a mech
- return 1
+ return TRUE
parent.powerClick()
flick("powClick",src)
usr << get_sfx("button")
- return 1
+ return TRUE
/obj/screen/mapper/mapbutton
icon = 'icons/effects/gpshud.dmi'
@@ -867,15 +874,15 @@
/obj/screen/mapper/mapbutton/Click()
if(!usr.checkClickCooldown())
- return 1
+ return TRUE
if(usr.stat || usr.paralysis || usr.stunned || usr.weakened)
- return 1
+ return TRUE
if(istype(usr.loc,/obj/mecha)) // stops inventory actions in a mech
- return 1
+ return TRUE
parent.mapClick()
flick("mapClick",src)
usr << get_sfx("button")
- return 1
+ return TRUE
// Markers are 16x16, people have apparently settled on centering them on the 8,8 pixel
/obj/screen/mapper/marker
diff --git a/code/_onclick/hud/spell_screen_objects.dm b/code/_onclick/hud/spell_screen_objects.dm
index 92d9487401..1215218ebe 100644
--- a/code/_onclick/hud/spell_screen_objects.dm
+++ b/code/_onclick/hud/spell_screen_objects.dm
@@ -181,7 +181,7 @@
if((last_charge == spell.charge_counter || !handle_icon_updates) && !forced_update)
return //nothing to see here
- overlays -= spell.hud_state
+ cut_overlay(spell.hud_state)
if(spell.charge_type == Sp_RECHARGE || spell.charge_type == Sp_CHARGES)
if(spell.charge_counter < spell.charge_max)
@@ -191,23 +191,23 @@
partial_charge.Crop(1, 1, partial_charge.Width(), round(partial_charge.Height() * spell.charge_counter / spell.charge_max))
overlays += partial_charge
if(last_charged_icon)
- overlays -= last_charged_icon
+ cut_overlay(last_charged_icon)
last_charged_icon = partial_charge
else if(last_charged_icon)
- overlays -= last_charged_icon
+ cut_overlay(last_charged_icon)
last_charged_icon = null
else
icon_state = "[spell_base]_spell_ready"
if(last_charged_icon)
- overlays -= last_charged_icon
+ cut_overlay(last_charged_icon)
else
icon_state = "[spell_base]_spell_ready"
- overlays += spell.hud_state
+ add_overlay(spell.hud_state)
last_charge = spell.charge_counter
- overlays -= "silence"
+ cut_overlay("silence")
if(spell.silenced)
overlays += "silence"
diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm
index bb31527126..bf1b337e77 100644
--- a/code/_onclick/item_attack.dm
+++ b/code/_onclick/item_attack.dm
@@ -41,11 +41,6 @@ avoid code duplication. This includes items that may sometimes act as a standard
return TRUE
return FALSE
-/atom/movable/attackby(obj/item/W, mob/user, var/attack_modifier, var/click_parameters)
- . = ..()
- if(!. && !(W.flags & NOBLUDGEON))
- visible_message("[src] has been hit by [user] with [W]. ")
-
/mob/living/attackby(obj/item/I, mob/user, var/attack_modifier, var/click_parameters)
if(!ismob(user))
return 0
diff --git a/code/_onclick/telekinesis.dm b/code/_onclick/telekinesis.dm
index 4398dbf7e6..049db78c3a 100644
--- a/code/_onclick/telekinesis.dm
+++ b/code/_onclick/telekinesis.dm
@@ -163,7 +163,7 @@ var/const/tk_maxrange = 15
return
/obj/item/tk_grab/update_icon()
- overlays.Cut()
+ cut_overlays()
if(focus && focus.icon && focus.icon_state)
- overlays += icon(focus.icon,focus.icon_state)
+ add_overlay(icon(focus.icon, focus.icon_state))
return
diff --git a/code/controllers/failsafe.dm b/code/controllers/failsafe.dm
index f792d9af02..6203388ec1 100644
--- a/code/controllers/failsafe.dm
+++ b/code/controllers/failsafe.dm
@@ -57,23 +57,23 @@ var/datum/controller/failsafe/Failsafe
if(4,5)
--defcon
if(3)
- to_chat(GLOB.admins, "Notice: DEFCON [defcon_pretty()]. The Master Controller has not fired in the last [(5-defcon) * processing_interval] ticks. ")
+ log_and_message_admins("SSfailsafe Notice: DEFCON [defcon_pretty()]. The Master Controller (\ref[Master]) has not fired in the last [(5-defcon) * processing_interval] ticks. ")
--defcon
if(2)
- to_chat(GLOB.admins, "Warning: DEFCON [defcon_pretty()]. The Master Controller has not fired in the last [(5-defcon) * processing_interval] ticks. Automatic restart in [processing_interval] ticks. ")
+ log_and_message_admins("SSfailsafe Warning: DEFCON [defcon_pretty()]. The Master Controller (\ref[Master]) has not fired in the last [(5-defcon) * processing_interval] ticks. Automatic restart in [processing_interval] ticks. ")
--defcon
if(1)
- to_chat(GLOB.admins, "Warning: DEFCON [defcon_pretty()]. The Master Controller has still not fired within the last [(5-defcon) * processing_interval] ticks. Killing and restarting... ")
+ log_and_message_admins("SSfailsafe Warning: DEFCON [defcon_pretty()]. The Master Controller (\ref[Master]) has still not fired within the last [(5-defcon) * processing_interval] ticks. Killing and restarting... ")
--defcon
var/rtn = Recreate_MC()
if(rtn > 0)
defcon = 4
master_iteration = 0
- to_chat(GLOB.admins, "MC restarted successfully ")
+ log_and_message_admins("SSfailsafe Notice: MC (New:\ref[Master]) restarted successfully ")
else if(rtn < 0)
- log_world("FailSafe: Could not restart MC, runtime encountered. Entering defcon 0")
- to_chat(GLOB.admins, "ERROR: DEFCON [defcon_pretty()]. Could not restart MC, runtime encountered. I will silently keep retrying. ")
+ log_game("SSfailsafe Notice: Could not restart MC (\ref[Master]), runtime encountered. Entering defcon 0")
+ log_and_message_admins("SSFAILSAFE ERROR: DEFCON [defcon_pretty()]. Could not restart MC (\ref[Master]), runtime encountered. I will silently keep retrying. ")
//if the return number was 0, it just means the mc was restarted too recently, and it just needs some time before we try again
//no need to handle that specially when defcon 0 can handle it
if(0) //DEFCON 0! (mc failed to restart)
@@ -81,7 +81,7 @@ var/datum/controller/failsafe/Failsafe
if(rtn > 0)
defcon = 4
master_iteration = 0
- to_chat(GLOB.admins, "MC restarted successfully ")
+ log_and_message_admins("SSfailsafe Notice: MC (New:\ref[Master]) restarted successfully ")
else
defcon = min(defcon + 1,5)
master_iteration = Master.iteration
diff --git a/code/controllers/master.dm b/code/controllers/master.dm
index 110b7dc633..4ff1b7219b 100644
--- a/code/controllers/master.dm
+++ b/code/controllers/master.dm
@@ -132,11 +132,11 @@ GLOBAL_REAL(Master, /datum/controller/master) = new
LAZYINITLIST(BadBoy.failure_strikes)
switch(++BadBoy.failure_strikes[BadBoy.type])
if(2)
- msg = "The [BadBoy.name] subsystem was the last to fire for 2 controller restarts. It will be recovered now and disabled if it happens again."
+ msg = "MC Notice: The [BadBoy.name] subsystem was the last to fire for 2 controller restarts. It will be recovered now and disabled if it happens again."
FireHim = TRUE
BadBoy.fail()
if(3)
- msg = "The [BadBoy.name] subsystem seems to be destabilizing the MC and will be offlined."
+ msg = "MC Notice: The [BadBoy.name] subsystem seems to be destabilizing the MC and will be offlined."
BadBoy.flags |= SS_NO_FIRE
BadBoy.critfail()
if(msg)
@@ -152,7 +152,7 @@ GLOBAL_REAL(Master, /datum/controller/master) = new
current_runlevel = Master.current_runlevel
StartProcessing(10)
else
- to_chat(world, "The Master Controller is having some issues, we will need to re-initialize EVERYTHING ")
+ to_world("The Master Controller is having some issues, we will need to re-initialize EVERYTHING ")
Initialize(20, TRUE)
@@ -170,7 +170,7 @@ GLOBAL_REAL(Master, /datum/controller/master) = new
if(init_sss)
init_subtypes(/datum/controller/subsystem, subsystems)
- to_chat(world, "Initializing subsystems... ")
+ to_chat(world, "MC: Initializing subsystems... ")
// Sort subsystems by init_order, so they initialize in the correct order.
sortTim(subsystems, /proc/cmp_subsystem_init)
@@ -186,7 +186,7 @@ GLOBAL_REAL(Master, /datum/controller/master) = new
current_ticklimit = TICK_LIMIT_RUNNING
var/time = (REALTIMEOFDAY - start_timeofday) / 10
- var/msg = "Initializations complete within [time] second[time == 1 ? "" : "s"]!"
+ var/msg = "MC: Initializations complete within [time] second[time == 1 ? "" : "s"]!"
to_chat(world, "[msg] ")
log_world(msg)
@@ -229,15 +229,17 @@ GLOBAL_REAL(Master, /datum/controller/master) = new
if (rtn > 0 || processing < 0)
return //this was suppose to happen.
//loop ended, restart the mc
- log_game("MC crashed or runtimed, restarting")
- message_admins("MC crashed or runtimed, restarting")
- log_world("MC crashed or runtimed, restarting")
+ log_and_message_admins("MC Notice: MC crashed or runtimed, self-restarting (\ref[src])")
var/rtn2 = Recreate_MC()
- if (rtn2 <= 0)
- log_game("Failed to recreate MC (Error code: [rtn2]), it's up to the failsafe now")
- message_admins("Failed to recreate MC (Error code: [rtn2]), it's up to the failsafe now")
- log_world("Failed to recreate MC (Error code: [rtn2]), it's up to the failsafe now")
- Failsafe.defcon = 2
+ switch(rtn2)
+ if(-1)
+ log_and_message_admins("MC Warning: Failed to self-recreate MC (Return code: [rtn2]), it's up to the failsafe now (\ref[src])")
+ Failsafe.defcon = 2
+ if(0)
+ log_and_message_admins("MC Warning: Too soon for MC self-restart (Return code: [rtn2]), going to let failsafe handle it (\ref[src])")
+ Failsafe.defcon = 2
+ if(1)
+ log_and_message_admins("MC Notice: MC self-recreated, old MC departing (Return code: [rtn2]) (\ref[src])")
// Main loop.
/datum/controller/master/proc/Loop()
diff --git a/code/controllers/subsystems/air.dm b/code/controllers/subsystems/air.dm
index 8ef34e164f..fa091ca525 100644
--- a/code/controllers/subsystems/air.dm
+++ b/code/controllers/subsystems/air.dm
@@ -57,9 +57,44 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
if(active_edges.len)
var/list/edge_log = list()
for(var/connection_edge/E in active_edges)
+
+ var/a_temp = E.A.air.temperature
+ var/a_moles = E.A.air.total_moles
+ var/a_vol = E.A.air.volume
+ var/a_gas = ""
+ for(var/gas in E.A.air.gas)
+ a_gas += "[gas]=[E.A.air.gas[gas]]"
+
+ var/b_temp
+ var/b_moles
+ var/b_vol
+ var/b_gas = ""
+
+ // Two zones mixing
+ if(istype(E, /connection_edge/zone))
+ var/connection_edge/zone/Z = E
+ b_temp = Z.B.air.temperature
+ b_moles = Z.B.air.total_moles
+ b_vol = Z.B.air.volume
+ for(var/gas in Z.B.air.gas)
+ b_gas += "[gas]=[Z.B.air.gas[gas]]"
+
+ // Zone and unsimulated turfs mixing
+ if(istype(E, /connection_edge/unsimulated))
+ var/connection_edge/unsimulated/U = E
+ b_temp = U.B.temperature
+ b_moles = "Unsim"
+ b_vol = "Unsim"
+ for(var/gas in U.air.gas)
+ b_gas += "[gas]=[U.air.gas[gas]]"
+
edge_log += "Active Edge [E] ([E.type])"
+ edge_log += "Edge side A: T:[a_temp], Mol:[a_moles], Vol:[a_vol], Gas:[a_gas]"
+ edge_log += "Edge side B: T:[b_temp], Mol:[b_moles], Vol:[b_vol], Gas:[b_gas]"
+
for(var/turf/T in E.connecting_turfs)
edge_log += "+--- Connecting Turf [T] ([T.type]) @ [T.x], [T.y], [T.z] ([T.loc])"
+
log_debug("Active Edges on ZAS Startup\n" + edge_log.Join("\n"))
startup_active_edge_log = edge_log.Copy()
@@ -68,10 +103,14 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
/datum/controller/subsystem/air/fire(resumed = 0)
var/timer
if(!resumed)
- ASSERT(LAZYLEN(currentrun) == 0) // Santity checks to make sure we don't somehow have items left over from last cycle
- ASSERT(current_step == null) // Or somehow didn't finish all the steps from last cycle
- current_cycle++ // Begin a new air_master cycle!
- current_step = SSAIR_TURFS // Start with Step 1 of course
+ // Santity checks to make sure we don't somehow have items left over from last cycle
+ // Or somehow didn't finish all the steps from last cycle
+ if(LAZYLEN(currentrun) || current_step)
+ log_and_message_admins("SSair: Was told to start a new run, but the previous run wasn't finished! currentrun.len=[currentrun.len], current_step=[current_step]")
+ resumed = TRUE
+ else
+ current_cycle++ // Begin a new air_master cycle!
+ current_step = SSAIR_TURFS // Start with Step 1 of course
INTERNAL_PROCESS_STEP(SSAIR_TURFS, TRUE, process_tiles_to_update, cost_turfs, SSAIR_EDGES)
INTERNAL_PROCESS_STEP(SSAIR_EDGES, FALSE, process_active_edges, cost_edges, SSAIR_FIREZONES)
@@ -80,10 +119,11 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
INTERNAL_PROCESS_STEP(SSAIR_ZONES, FALSE, process_zones_to_update, cost_zones, SSAIR_DONE)
// Okay, we're done! Woo! Got thru a whole air_master cycle!
- ASSERT(LAZYLEN(currentrun) == 0) // Sanity checks to make sure there are really none left
- ASSERT(current_step == SSAIR_DONE) // And that we didn't somehow skip past the last step
- currentrun = null
- current_step = null
+ if(LAZYLEN(currentrun) || current_step != SSAIR_DONE)
+ log_and_message_admins("SSair: Was not able to complete a full air cycle despite reaching the end of fire(). This shouldn't happen.")
+ else
+ currentrun = null
+ current_step = null
/datum/controller/subsystem/air/proc/process_tiles_to_update(resumed = 0)
if (!resumed)
@@ -119,7 +159,7 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
T.post_update_air_properties()
T.needs_air_update = 0
#ifdef ZASDBG
- T.overlays -= mark
+ T.cut_overlay(mark)
#endif
if(MC_TICK_CHECK)
return
@@ -134,7 +174,7 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
T.post_update_air_properties()
T.needs_air_update = 0
#ifdef ZASDBG
- T.overlays -= mark
+ T.cut_overlay(mark)
#endif
if(MC_TICK_CHECK)
return
diff --git a/code/controllers/subsystems/lighting.dm b/code/controllers/subsystems/lighting.dm
index 8817d83ad5..f851e3edf2 100644
--- a/code/controllers/subsystems/lighting.dm
+++ b/code/controllers/subsystems/lighting.dm
@@ -1,166 +1,91 @@
-/*
-** Lighting Subsystem - Process the lighting! Do it!
-*/
-
-#define SSLIGHTING_STAGE_LIGHTS 1
-#define SSLIGHTING_STAGE_CORNERS 2
-#define SSLIGHTING_STAGE_OVERLAYS 3
-#define SSLIGHTING_STAGE_DONE 4
-// This subsystem's fire() method also gets called once during Master.Initialize().
-// During this fire we need to use CHECK_TICK to sleep and continue, but in all other fires we need to use MC_CHECK_TICK to pause and return.
-// This leads us to a rather annoying little tidbit of code that I have stuffed into this macro so I don't have to see it.
-#define DUAL_TICK_CHECK if (init_tick_checks) { CHECK_TICK; } else if (MC_TICK_CHECK) { return; }
-
-// Globals
-/var/lighting_overlays_initialised = FALSE
-/var/list/lighting_update_lights = list() // List of lighting sources queued for update.
-/var/list/lighting_update_corners = list() // List of lighting corners queued for update.
-/var/list/lighting_update_overlays = list() // List of lighting overlays queued for update.
-
SUBSYSTEM_DEF(lighting)
name = "Lighting"
- wait = 2 // Ticks, not deciseconds
+ wait = 2
init_order = INIT_ORDER_LIGHTING
flags = SS_TICKER
+ var/static/list/sources_queue = list() // List of lighting sources queued for update.
+ var/static/list/corners_queue = list() // List of lighting corners queued for update.
+ var/static/list/objects_queue = list() // List of lighting objects queued for update.
- var/list/currentrun = list()
- var/stage = null
-
- var/cost_lights = 0
- var/cost_corners = 0
- var/cost_overlays = 0
-
-/datum/controller/subsystem/lighting/Initialize(timeofday)
- if(!lighting_overlays_initialised)
- // TODO - TG initializes starlight here.
- create_all_lighting_overlays()
- lighting_overlays_initialised = TRUE
-
- // Pre-process lighting once before the round starts.
- internal_process_lights(FALSE, TRUE)
- internal_process_corners(FALSE, TRUE)
- internal_process_overlays(FALSE, TRUE)
+/datum/controller/subsystem/lighting/stat_entry(msg)
+ msg = "L:[length(sources_queue)]|C:[length(corners_queue)]|O:[length(objects_queue)]"
return ..()
-/datum/controller/subsystem/lighting/fire(resumed = FALSE)
- var/timer
- if(!resumed)
- ASSERT(LAZYLEN(currentrun) == 0) // Santity checks to make sure we don't somehow have items left over from last cycle
- ASSERT(stage == null) // Or somehow didn't finish all the steps from last cycle
- stage = SSLIGHTING_STAGE_LIGHTS // Start with Step 1 of course
- if(stage == SSLIGHTING_STAGE_LIGHTS)
- timer = TICK_USAGE
- internal_process_lights(resumed)
- cost_lights = MC_AVERAGE(cost_lights, TICK_DELTA_TO_MS(TICK_USAGE - timer))
- if(state != SS_RUNNING)
- return
- resumed = 0
- stage = SSLIGHTING_STAGE_CORNERS
+/datum/controller/subsystem/lighting/Initialize(timeofday)
+ if(!subsystem_initialized)
+ if (config.starlight)
+ for(var/area/A in world)
+ if (A.dynamic_lighting == DYNAMIC_LIGHTING_IFSTARLIGHT)
+ A.luminosity = 0
- if(stage == SSLIGHTING_STAGE_CORNERS)
- timer = TICK_USAGE
- internal_process_corners(resumed)
- cost_corners = MC_AVERAGE(cost_corners, TICK_DELTA_TO_MS(TICK_USAGE - timer))
- if(state != SS_RUNNING)
- return
- resumed = 0
- stage = SSLIGHTING_STAGE_OVERLAYS
+ subsystem_initialized = TRUE
+ create_all_lighting_objects()
- if(stage == SSLIGHTING_STAGE_OVERLAYS)
- timer = TICK_USAGE
- internal_process_overlays(resumed)
- cost_overlays = MC_AVERAGE(cost_overlays, TICK_DELTA_TO_MS(TICK_USAGE - timer))
- if(state != SS_RUNNING)
- return
- resumed = 0
- stage = SSLIGHTING_STAGE_DONE
+ fire(FALSE, TRUE)
- // Okay, we're done! Woo! Got thru a whole air_master cycle!
- ASSERT(LAZYLEN(currentrun) == 0) // Sanity checks to make sure there are really none left
- ASSERT(stage == SSLIGHTING_STAGE_DONE) // And that we didn't somehow skip past the last step
- currentrun = null
- stage = null
+ return ..()
-/datum/controller/subsystem/lighting/proc/internal_process_lights(resumed = FALSE, init_tick_checks = FALSE)
- if (!resumed)
- // We swap out the lists so any additions to the global list during a pause don't make things wierd.
- src.currentrun = global.lighting_update_lights
- global.lighting_update_lights = list()
+/datum/controller/subsystem/lighting/fire(resumed, init_tick_checks)
+ MC_SPLIT_TICK_INIT(3)
+ if(!init_tick_checks)
+ MC_SPLIT_TICK
+ var/list/queue = sources_queue
+ var/i = 0
+ for (i in 1 to length(queue))
+ var/datum/light_source/L = queue[i]
- //cache for sanic speed (lists are references anyways)
- var/list/currentrun = src.currentrun
- while(currentrun.len)
- var/datum/light_source/L = currentrun[currentrun.len]
- currentrun.len--
+ L.update_corners()
- if(!L) continue
- if(L.check() || L.destroyed || L.force_update)
- L.remove_lum()
- if(!L.destroyed)
- L.apply_lum()
+ L.needs_update = LIGHTING_NO_UPDATE
- else if(L.vis_update) //We smartly update only tiles that became (in) visible to use.
- L.smart_vis_update()
+ if(init_tick_checks)
+ CHECK_TICK
+ else if (MC_TICK_CHECK)
+ break
+ if (i)
+ queue.Cut(1, i+1)
+ i = 0
- L.vis_update = FALSE
- L.force_update = FALSE
- L.needs_update = FALSE
+ if(!init_tick_checks)
+ MC_SPLIT_TICK
- DUAL_TICK_CHECK
+ queue = corners_queue
+ for (i in 1 to length(queue))
+ var/datum/lighting_corner/C = queue[i]
-/datum/controller/subsystem/lighting/proc/internal_process_corners(resumed = FALSE, init_tick_checks = FALSE)
- if (!resumed)
- // We swap out the lists so any additions to the global list during a pause don't make things wierd.
- src.currentrun = global.lighting_update_corners
- global.lighting_update_corners = list()
+ C.needs_update = FALSE //update_objects() can call qdel if the corner is storing no data
+ C.update_objects()
+
+ if(init_tick_checks)
+ CHECK_TICK
+ else if (MC_TICK_CHECK)
+ break
+ if (i)
+ queue.Cut(1, i+1)
+ i = 0
- //cache for sanic speed (lists are references anyways)
- var/list/currentrun = src.currentrun
- while(currentrun.len)
- var/datum/lighting_corner/C = currentrun[currentrun.len]
- currentrun.len--
- if(!C) continue
- C.update_overlays()
- C.needs_update = FALSE
+ if(!init_tick_checks)
+ MC_SPLIT_TICK
- DUAL_TICK_CHECK
+ queue = objects_queue
+ for (i in 1 to length(queue))
+ var/datum/lighting_object/O = queue[i]
-/datum/controller/subsystem/lighting/proc/internal_process_overlays(resumed = FALSE, init_tick_checks = FALSE)
- if (!resumed)
- // We swap out the lists so any additions to the global list during a pause don't make things wierd.
- src.currentrun = global.lighting_update_overlays
- global.lighting_update_overlays = list()
+ if (QDELETED(O))
+ continue
- //cache for sanic speed (lists are references anyways)
- var/list/currentrun = src.currentrun
- while(currentrun.len)
- var/atom/movable/lighting_overlay/O = currentrun[currentrun.len]
- currentrun.len--
-
- if(!O) continue
- O.update_overlay()
+ O.update()
O.needs_update = FALSE
+ if(init_tick_checks)
+ CHECK_TICK
+ else if (MC_TICK_CHECK)
+ break
+ if (i)
+ queue.Cut(1, i+1)
- DUAL_TICK_CHECK
-/datum/controller/subsystem/lighting/stat_entry(msg_prefix)
- var/list/msg = list(msg_prefix)
- msg += "T:{"
- msg += "S [total_lighting_sources] | "
- msg += "C [total_lighting_corners] | "
- msg += "O [total_lighting_overlays]"
- msg += "}"
- msg += "C:{"
- msg += "S [round(cost_lights, 1)] | "
- msg += "C [round(cost_corners, 1)] | "
- msg += "O [round(cost_overlays, 1)]"
- msg += "}"
- ..(msg.Join())
-
-#undef DUAL_TICK_CHECK
-#undef SSLIGHTING_STAGE_LIGHTS
-#undef SSLIGHTING_STAGE_CORNERS
-#undef SSLIGHTING_STAGE_OVERLAYS
-#undef SSLIGHTING_STAGE_STATS
\ No newline at end of file
+/datum/controller/subsystem/lighting/Recover()
+ subsystem_initialized = SSlighting.subsystem_initialized
+ ..()
diff --git a/code/controllers/subsystems/overlays.dm b/code/controllers/subsystems/overlays.dm
index 77c9d3ab94..16662cc042 100644
--- a/code/controllers/subsystems/overlays.dm
+++ b/code/controllers/subsystems/overlays.dm
@@ -224,6 +224,32 @@ var/global/image/appearance_bro = new() // Temporarily super-global because of B
else if(cut_old)
cut_overlays()
+/**
+ * Returns a list of overlays that the target atom has
+ *
+ * @param priority If true, returns priority overlays as well
+ * @param special If true, returns special overlays like emissives and em_blockers
+ */
+/proc/get_overlays(atom/other, priority, special)
+ var/list/including = list()
+ if(!other)
+ return including
+
+ for(var/image/I as anything in other.our_overlays)
+ if(!special && I.plane > 0)
+ continue
+ including += I
+
+ if(!priority)
+ return including
+
+ for(var/image/I as anything in other.priority_overlays)
+ if(!special && I.plane > 0)
+ continue
+ including += I
+
+ return including
+
#undef NOT_QUEUED_ALREADY
#undef QUEUE_FOR_COMPILE
diff --git a/code/controllers/subsystems/planets.dm b/code/controllers/subsystems/planets.dm
index d1c2de2410..c9a4a2db43 100644
--- a/code/controllers/subsystems/planets.dm
+++ b/code/controllers/subsystems/planets.dm
@@ -44,9 +44,8 @@ SUBSYSTEM_DEF(planets)
P.planet_walls += T
else if(istype(T, /turf/simulated) && T.outdoors)
P.planet_floors += T
- T.vis_contents |= P.weather_holder.visuals
- T.vis_contents |= P.weather_holder.special_visuals
-
+ P.weather_holder.apply_to_turf(T)
+ P.sun_holder.apply_to_turf(T)
/datum/controller/subsystem/planets/proc/removeTurf(var/turf/T,var/is_edge)
if(z_to_planet.len >= T.z)
@@ -57,8 +56,8 @@ SUBSYSTEM_DEF(planets)
P.planet_walls -= T
else
P.planet_floors -= T
- T.vis_contents -= P.weather_holder.visuals
- T.vis_contents -= P.weather_holder.special_visuals
+ P.weather_holder.remove_from_turf(T)
+ P.sun_holder.remove_from_turf(T)
/datum/controller/subsystem/planets/fire(resumed = 0)
@@ -72,7 +71,8 @@ SUBSYSTEM_DEF(planets)
updateSunlight(P)
if(MC_TICK_CHECK)
return
-
+
+ #ifndef UNIT_TEST // Don't be updating temperatures and such during unit tests
var/list/needs_temp_update = src.needs_temp_update
while(needs_temp_update.len)
var/datum/planet/P = needs_temp_update[needs_temp_update.len]
@@ -80,6 +80,7 @@ SUBSYSTEM_DEF(planets)
updateTemp(P)
if(MC_TICK_CHECK)
return
+ #endif
var/list/currentrun = src.currentrun
while(currentrun.len)
@@ -102,39 +103,11 @@ SUBSYSTEM_DEF(planets)
return
/datum/controller/subsystem/planets/proc/updateSunlight(var/datum/planet/P)
- // Remove old value from corners
- var/list/sunlit_corners = P.sunlit_corners
- var/old_lum_r = -P.sun["lum_r"]
- var/old_lum_g = -P.sun["lum_g"]
- var/old_lum_b = -P.sun["lum_b"]
- if(old_lum_r || old_lum_g || old_lum_b)
- for(var/C in sunlit_corners)
- var/datum/lighting_corner/LC = C
- LC.update_lumcount(old_lum_r, old_lum_g, old_lum_b)
- CHECK_TICK
- sunlit_corners.Cut()
-
- // Calculate new values to apply
var/new_brightness = P.sun["brightness"]
+ P.sun_holder.update_brightness(new_brightness)
+
var/new_color = P.sun["color"]
- var/lum_r = new_brightness * GetRedPart (new_color) / 255
- var/lum_g = new_brightness * GetGreenPart(new_color) / 255
- var/lum_b = new_brightness * GetBluePart (new_color) / 255
- var/static/update_gen = -1 // Used to prevent double-processing corners. Otherwise would happen when looping over adjacent turfs.
- for(var/turf/simulated/T as anything in P.planet_floors)
- if(!T.lighting_corners_initialised)
- T.generate_missing_corners()
- for(var/C in T.get_corners())
- var/datum/lighting_corner/LC = C
- if(LC.update_gen != update_gen && LC.active)
- sunlit_corners += LC
- LC.update_gen = update_gen
- LC.update_lumcount(lum_r, lum_g, lum_b)
- CHECK_TICK
- update_gen--
- P.sun["lum_r"] = lum_r
- P.sun["lum_g"] = lum_g
- P.sun["lum_b"] = lum_b
+ P.sun_holder.update_color(new_color)
/datum/controller/subsystem/planets/proc/updateTemp(var/datum/planet/P)
//Set new temperatures
diff --git a/code/controllers/subsystems/skybox.dm b/code/controllers/subsystems/skybox.dm
index 6befac0b60..05053fbb0f 100644
--- a/code/controllers/subsystems/skybox.dm
+++ b/code/controllers/subsystems/skybox.dm
@@ -37,7 +37,8 @@ SUBSYSTEM_DEF(skybox)
im.alpha = 128 //80
im.blend_mode = BLEND_ADD
- MA.overlays = list(im)
+ MA.cut_overlays()
+ MA.add_overlay(im)
dust_cache["[i]"] = MA
@@ -48,7 +49,8 @@ SUBSYSTEM_DEF(skybox)
var/image/im = image('icons/turf/space_dust_transit.dmi', "speedspace_ns_[i]")
im.plane = DUST_PLANE
im.blend_mode = BLEND_ADD
- MA.overlays = list(im)
+ MA.cut_overlays()
+ MA.add_overlay(im)
speedspace_cache["NS_[i]"] = MA
// EAST/WEST
MA = new(normal_space)
@@ -56,7 +58,8 @@ SUBSYSTEM_DEF(skybox)
im.plane = DUST_PLANE
im.blend_mode = BLEND_ADD
- MA.overlays = list(im)
+ MA.cut_overlays()
+ MA.add_overlay(im)
speedspace_cache["EW_[i]"] = MA
diff --git a/code/controllers/subsystems/supply.dm b/code/controllers/subsystems/supply.dm
index c55208d7df..47a0e0e7bd 100644
--- a/code/controllers/subsystems/supply.dm
+++ b/code/controllers/subsystems/supply.dm
@@ -205,11 +205,11 @@ SUBSYSTEM_DEF(supply)
else if(islist(SP.access) && SP.one_access)
var/list/L = SP.access // access var is a plain var, we need a list
A.req_one_access = L.Copy()
- A.req_access = null
+ LAZYCLEARLIST(A.req_access)
else if(islist(SP.access) && !SP.one_access)
var/list/L = SP.access
A.req_access = L.Copy()
- A.req_one_access = null
+ LAZYCLEARLIST(A.req_one_access)
else
log_debug("Supply pack with invalid access restriction [SP.access] encountered! ")
diff --git a/code/controllers/subsystems/tgui.dm b/code/controllers/subsystems/tgui.dm
index e94830a5f0..a0d96cf80c 100644
--- a/code/controllers/subsystems/tgui.dm
+++ b/code/controllers/subsystems/tgui.dm
@@ -22,7 +22,7 @@ SUBSYSTEM_DEF(tgui)
var/basehtml
/datum/controller/subsystem/tgui/PreInit()
- basehtml = file2text('tgui/packages/tgui/public/tgui.html')
+ basehtml = file2text('tgui/public/tgui.html')
/datum/controller/subsystem/tgui/Shutdown()
close_all_uis()
diff --git a/code/controllers/subsystems/vis_overlays.dm b/code/controllers/subsystems/vis_overlays.dm
new file mode 100644
index 0000000000..0806e4c954
--- /dev/null
+++ b/code/controllers/subsystems/vis_overlays.dm
@@ -0,0 +1,77 @@
+SUBSYSTEM_DEF(vis_overlays)
+ name = "Vis contents overlays"
+ wait = 1 MINUTES
+ priority = FIRE_PRIORITY_VIS
+ init_order = INIT_ORDER_VIS
+
+ var/list/vis_overlay_cache
+ var/list/currentrun
+
+/datum/controller/subsystem/vis_overlays/Initialize()
+ vis_overlay_cache = list()
+ return ..()
+
+/datum/controller/subsystem/vis_overlays/fire(resumed = FALSE)
+ if(!resumed)
+ currentrun = vis_overlay_cache.Copy()
+ var/list/current_run = currentrun
+
+ while(current_run.len)
+ var/key = current_run[current_run.len]
+ var/obj/effect/overlay/vis/overlay = current_run[key]
+ current_run.len--
+ if(!overlay.unused && !length(overlay.vis_locs))
+ overlay.unused = world.time
+ else if(overlay.unused && overlay.unused + overlay.cache_expiration < world.time)
+ vis_overlay_cache -= key
+ qdel(overlay)
+ if(MC_TICK_CHECK)
+ return
+
+//the "thing" var can be anything with vis_contents which includes images - in the future someone should totally allow vis overlays to be passed in as an arg instead of all this bullshit
+/datum/controller/subsystem/vis_overlays/proc/add_vis_overlay(atom/movable/thing, icon, iconstate, layer, plane, dir, alpha = 255, add_appearance_flags = NONE, unique = FALSE)
+ var/obj/effect/overlay/vis/overlay
+ if(!unique)
+ . = "[icon]|[iconstate]|[layer]|[plane]|[dir]|[alpha]|[add_appearance_flags]"
+ overlay = vis_overlay_cache[.]
+ if(!overlay)
+ overlay = _create_new_vis_overlay(icon, iconstate, layer, plane, dir, alpha, add_appearance_flags)
+ vis_overlay_cache[.] = overlay
+ else
+ overlay.unused = 0
+ else
+ overlay = _create_new_vis_overlay(icon, iconstate, layer, plane, dir, alpha, add_appearance_flags)
+ overlay.cache_expiration = -1
+ var/cache_id = "\ref[overlay]@{[world.time]}"
+ vis_overlay_cache[cache_id] = overlay
+ . = overlay
+ thing.vis_contents += overlay
+
+ if(!isatom(thing))
+ return overlay
+
+ if(!thing.managed_vis_overlays)
+ thing.managed_vis_overlays = list(overlay)
+ else
+ thing.managed_vis_overlays += overlay
+ return overlay
+
+/datum/controller/subsystem/vis_overlays/proc/_create_new_vis_overlay(icon, iconstate, layer, plane, dir, alpha, add_appearance_flags)
+ var/obj/effect/overlay/vis/overlay = new
+ overlay.icon = icon
+ overlay.icon_state = iconstate
+ overlay.layer = layer
+ overlay.plane = plane
+ overlay.dir = dir
+ overlay.alpha = alpha
+ overlay.appearance_flags |= add_appearance_flags
+ return overlay
+
+
+/datum/controller/subsystem/vis_overlays/proc/remove_vis_overlay(atom/movable/thing, list/overlays)
+ thing.vis_contents -= overlays
+ if(!isatom(thing))
+ return
+ thing.managed_vis_overlays -= overlays
+ if(!length(thing.managed_vis_overlays))
+ thing.managed_vis_overlays = null
diff --git a/code/controllers/verbs.dm b/code/controllers/verbs.dm
index 58a66923c4..4a9c3b48a7 100644
--- a/code/controllers/verbs.dm
+++ b/code/controllers/verbs.dm
@@ -4,6 +4,7 @@
// Clickable stat() button.
/obj/effect/statclick
name = "Initializing..."
+ blocks_emissive = FALSE
var/target
/obj/effect/statclick/New(loc, text, target) //Don't port this to Initialize it's too critical
diff --git a/code/datums/autolathe/autolathe.dm b/code/datums/autolathe/autolathe.dm
index bf36f2bfab..f12e4f9bcc 100644
--- a/code/datums/autolathe/autolathe.dm
+++ b/code/datums/autolathe/autolathe.dm
@@ -38,6 +38,28 @@
name = "All"
category_item_type = /datum/category_item/autolathe
+// Copypasted from materials, they should show in All
+/datum/category_group/autolathe/all/New()
+ ..()
+
+ for(var/Name in name_to_material)
+ var/datum/material/M = name_to_material[Name]
+
+ if(!M.stack_type) // Shouldn't happen, but might. Never know.
+ continue
+
+ if(istype(M, /datum/material/alienalloy))
+ continue
+
+ var/obj/item/stack/material/S = M.stack_type
+ if(initial(S.name) in items_by_name)
+ continue
+
+ var/datum/category_item/autolathe/materials/WorkDat = new(src, M)
+
+ items |= WorkDat
+ items_by_name[WorkDat.name] = WorkDat
+
///datum/category_group/autolathe/all/New()
/datum/category_group/autolathe/arms
diff --git a/code/datums/browser.dm b/code/datums/browser.dm
index e78833c958..efb4c49795 100644
--- a/code/datums/browser.dm
+++ b/code/datums/browser.dm
@@ -311,8 +311,7 @@
div_slider = "locked"
output += {"
-
-
+
[i["name"]]
"}
diff --git a/code/datums/components/_component.dm b/code/datums/components/_component.dm
index c4ee090ce8..c5bd07cdcb 100644
--- a/code/datums/components/_component.dm
+++ b/code/datums/components/_component.dm
@@ -188,7 +188,11 @@
var/list/sig_types = islist(sig_type_or_types) ? sig_type_or_types : list(sig_type_or_types)
for(var/sig_type in sig_types)
if(!override && procs[target][sig_type])
- stack_trace("[sig_type] overridden. Use override = TRUE to suppress this warning")
+ var/trace_msg = "[sig_type] overridden. Use override = TRUE to suppress this warning."
+ if(isatom(target))
+ var/atom/A = target
+ trace_msg += " [A.x],[A.y],[A.z]"
+ stack_trace(trace_msg)
procs[target][sig_type] = proctype
diff --git a/code/datums/components/material_container.dm b/code/datums/components/material_container.dm
new file mode 100644
index 0000000000..c8f54a1f0c
--- /dev/null
+++ b/code/datums/components/material_container.dm
@@ -0,0 +1,484 @@
+/*!
+ This datum should be used for handling mineral contents of machines and whatever else is supposed to hold minerals and make use of them.
+
+ Variables:
+ amount - raw amount of the mineral this container is holding, calculated by the defined value SHEET_MATERIAL_AMOUNT=2000.
+ max_amount - max raw amount of mineral this container can hold.
+ stack_type - type of the mineral sheet the container handles, used for output.
+ parent - object that this container is being used by, used for output.
+ MAX_STACK_SIZE - size of a stack of mineral sheets. Constant.
+*/
+
+/datum/component/material_container
+ /// The total amount of materials this material container contains
+ var/total_amount = 0
+ /// The maximum amount of materials this material container can contain
+ var/max_amount
+ /// Map of material ref -> amount
+ var/list/materials //Map of key = material ref | Value = amount
+ /// The list of materials that this material container can accept
+ var/list/allowed_materials
+ /// The typecache of things that this material container can accept
+ var/list/allowed_item_typecache
+ /// The last main material that was inserted into this container
+ var/last_inserted_id
+ /// A callback for checking wheter we can insert a material into this container
+ var/datum/callback/insertion_check
+ /// A callback invoked before materials are inserted into this container
+ var/datum/callback/precondition
+ /// A callback invoked after materials are inserted into this container
+ var/datum/callback/after_insert
+ /// The material container flags. See __DEFINES/materials.dm.
+ var/mat_container_flags
+
+/// Sets up the proper signals and fills the list of materials with the appropriate references.
+/datum/component/material_container/Initialize(list/init_mats, max_amt = 0, _mat_container_flags=NONE, list/allowed_mats=init_mats, list/allowed_items, datum/callback/_insertion_check, datum/callback/_precondition, datum/callback/_after_insert)
+ if(!isatom(parent))
+ return COMPONENT_INCOMPATIBLE
+
+ materials = list()
+ max_amount = max(0, max_amt)
+ mat_container_flags = _mat_container_flags
+
+ allowed_materials = allowed_mats || list()
+ if(allowed_items)
+ if(ispath(allowed_items) && allowed_items == /obj/item/stack)
+ allowed_item_typecache = GLOB.typecache_stack
+ else
+ allowed_item_typecache = typecacheof(allowed_items)
+
+ insertion_check = _insertion_check
+ precondition = _precondition
+ after_insert = _after_insert
+
+ for(var/mat in init_mats) //Make the assoc list material reference -> amount
+ var/mat_ref = GET_MATERIAL_REF(mat)
+ if(isnull(mat_ref))
+ continue
+ var/mat_amt = init_mats[mat]
+ if(isnull(mat_amt))
+ mat_amt = 0
+ materials[mat_ref] += mat_amt
+
+/datum/component/material_container/Destroy(force, silent)
+ materials = null
+ allowed_materials = null
+ if(insertion_check)
+ QDEL_NULL(insertion_check)
+ if(precondition)
+ QDEL_NULL(precondition)
+ if(after_insert)
+ QDEL_NULL(after_insert)
+ return ..()
+
+
+/datum/component/material_container/RegisterWithParent()
+ . = ..()
+
+ if(!(mat_container_flags & MATCONTAINER_NO_INSERT))
+ RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/on_attackby)
+ if(mat_container_flags & MATCONTAINER_EXAMINE)
+ RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/on_examine)
+
+
+/datum/component/material_container/vv_edit_var(var_name, var_value)
+ var/old_flags = mat_container_flags
+ . = ..()
+ if(var_name == NAMEOF(src, mat_container_flags) && parent)
+ if(!(old_flags & MATCONTAINER_EXAMINE) && mat_container_flags & MATCONTAINER_EXAMINE)
+ RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/on_examine)
+ else if(old_flags & MATCONTAINER_EXAMINE && !(mat_container_flags & MATCONTAINER_EXAMINE))
+ UnregisterSignal(parent, COMSIG_PARENT_EXAMINE)
+
+ if(old_flags & MATCONTAINER_NO_INSERT && !(mat_container_flags & MATCONTAINER_NO_INSERT))
+ RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/on_attackby)
+ else if(!(old_flags & MATCONTAINER_NO_INSERT) && mat_container_flags & MATCONTAINER_NO_INSERT)
+ UnregisterSignal(parent, COMSIG_PARENT_ATTACKBY)
+
+
+/datum/component/material_container/proc/on_examine(datum/source, mob/user, list/examine_texts)
+ SIGNAL_HANDLER
+
+ for(var/I in materials)
+ var/datum/material/M = I
+ var/amt = materials[I]
+ if(amt)
+ examine_texts += "It has [amt] units of [lowertext(M.name)] stored. "
+
+/// Proc that allows players to fill the parent with mats
+/datum/component/material_container/proc/on_attackby(datum/source, obj/item/I, mob/living/user)
+ SIGNAL_HANDLER
+
+ var/list/tc = allowed_item_typecache
+ if(!(mat_container_flags & MATCONTAINER_ANY_INTENT) && user.a_intent != I_HELP)
+ return
+ if(tc && !is_type_in_typecache(I, tc))
+ if(!(mat_container_flags & MATCONTAINER_SILENT))
+ to_chat(user, "[parent] won't accept [I]! ")
+ return
+ . = COMPONENT_NO_AFTERATTACK
+ var/datum/callback/pc = precondition
+ if(pc && !pc.Invoke(user))
+ return
+ if(istype(I, /obj/item/stack))
+ var/obj/item/stack/S = I
+ user_insert_stack(S, user, mat_container_flags)
+ return
+ var/material_amount = get_item_material_amount(I, mat_container_flags)
+ if(!material_amount)
+ to_chat(user, "[I] does not contain sufficient materials to be accepted by [parent]. ")
+ return
+ if(!has_space(material_amount))
+ to_chat(user, "[parent] is full. Please remove materials from [parent] in order to insert more. ")
+ return
+ user_insert(I, user, mat_container_flags)
+
+/// Proc used for when player inserts a stack
+/datum/component/material_container/proc/user_insert_stack(obj/item/stack/S, mob/living/user, breakdown_flags = mat_container_flags)
+ var/sheets = S.get_amount()
+ if(sheets < 1)
+ to_chat(user, "[S] does not contain sufficient materials to be accepted by [parent]. ")
+ return
+
+ // Cache this since S may go away after use()
+ var/list/sheet_matter = S.matter
+
+ // Calculate total amount of material for one sheet
+ var/matter_per_sheet = 0
+ for(var/material in sheet_matter)
+ matter_per_sheet += sheet_matter[material]
+
+ // If any part of a sheet can't go in us, the whole sheet is invalid
+ if(!can_hold_material(GET_MATERIAL_REF(material)))
+ to_chat(user, "[parent] cannot contain [material]. ")
+ return
+
+ // If we can't fit the material for one sheet, we're full.
+ if(!has_space(matter_per_sheet))
+ to_chat(user, "[parent] is full. Please remove materials from [parent] in order to insert more. ")
+ return
+
+ // Calculate the maximum amount of sheets we could possibly accept.
+ var/max_sheets = round((max_amount - total_amount) / matter_per_sheet)
+ if(max_sheets <= 0)
+ to_chat(user, "[parent] is full. Please remove materials from [parent] in order to insert more. ")
+ return
+
+ // Calculate the amount of sheets we're actually going to use.
+ var/sheets_to_use = min(sheets, max_sheets)
+
+ // It shouldn't be possible to add more matter than our max
+ ASSERT((total_amount + (matter_per_sheet * sheets_to_use)) <= max_amount)
+
+ // Use the amount of sheets from the stack
+ if(!S.use(sheets_to_use))
+ to_chat(user, "Something went wrong with your stack. Split it manually and try again. ")
+ return
+
+ // We're going to blindly insert all of the materials, our assertion above says it shouldn't be possible to overflow
+ var/inserted = 0
+ for(var/matter in sheet_matter)
+ var/datum/material/MAT = GET_MATERIAL_REF(matter)
+ inserted += insert_amount_mat(sheet_matter[matter] * sheets_to_use, MAT)
+ last_inserted_id = matter
+
+ // Tell the user and wrap up.
+ to_chat(user, "You insert a material total of [inserted] into [parent]. ")
+ if(after_insert)
+ after_insert.Invoke(S, last_inserted_id, inserted)
+
+/// Proc used for when player inserts materials
+/datum/component/material_container/proc/user_insert(obj/item/I, mob/living/user, breakdown_flags = mat_container_flags)
+ set waitfor = FALSE
+ var/active_held = user.get_active_hand() // differs from I when using TK
+ if(!user.unEquip(I))
+ to_chat(user, "[I] is stuck to you and cannot be placed into [parent]. ")
+ return
+ var/inserted = insert_item(I, breakdown_flags = mat_container_flags)
+ if(inserted)
+ to_chat(user, "You insert a material total of [inserted] into [parent]. ")
+ qdel(I)
+ if(after_insert)
+ after_insert.Invoke(I, last_inserted_id, inserted)
+ else if(I == active_held)
+ user.put_in_active_hand(I)
+
+/// Proc specifically for inserting items, returns the amount of materials entered.
+/datum/component/material_container/proc/insert_item(obj/item/I, multiplier = 1, breakdown_flags = mat_container_flags)
+ if(QDELETED(I))
+ return FALSE
+
+ multiplier = CEILING(multiplier, 0.01)
+
+ var/material_amount = get_item_material_amount(I, breakdown_flags)
+ if(!material_amount || !has_space(material_amount))
+ return FALSE
+
+ last_inserted_id = insert_item_materials(I, multiplier, breakdown_flags)
+ return material_amount
+
+/**
+ * Inserts the relevant materials from an item into this material container.
+ *
+ * Arguments:
+ * - [source][/obj/item]: The source of the materials we are inserting.
+ * - multiplier: The multiplier for the materials being inserted.
+ * - breakdown_flags: The breakdown bitflags that will be used to retrieve the materials from the source
+ */
+/datum/component/material_container/proc/insert_item_materials(obj/item/source, multiplier = 1, breakdown_flags = mat_container_flags)
+ var/primary_mat
+ var/max_mat_value = 0
+ var/list/item_materials = source.get_material_composition(breakdown_flags)
+ for(var/MAT in item_materials)
+ if(!can_hold_material(MAT))
+ continue
+ materials[MAT] += item_materials[MAT] * multiplier
+ total_amount += item_materials[MAT] * multiplier
+ if(item_materials[MAT] > max_mat_value)
+ max_mat_value = item_materials[MAT]
+ primary_mat = MAT
+
+ return primary_mat
+
+/**
+ * The default check for whether we can add materials to this material container.
+ *
+ * Arguments:
+ * - [mat][/atom/material]: The material we are checking for insertability.
+ */
+/datum/component/material_container/proc/can_hold_material(datum/material/mat)
+ if(mat in allowed_materials)
+ return TRUE
+ if(istype(mat) && ((mat.name in allowed_materials) || (mat.type in allowed_materials)))
+ allowed_materials += mat // This could get messy with passing lists by ref... but if you're doing that the list expansion is probably being taken care of elsewhere anyway...
+ return TRUE
+ if(insertion_check?.Invoke(mat))
+ allowed_materials += mat
+ return TRUE
+ return FALSE
+
+/// For inserting an amount of material
+/datum/component/material_container/proc/insert_amount_mat(amt, datum/material/mat)
+ if(amt <= 0 || !has_space(amt))
+ return 0
+
+ var/total_amount_saved = total_amount
+ if(mat)
+ if(!istype(mat))
+ mat = GET_MATERIAL_REF(mat)
+ materials[mat] += amt
+ total_amount += amt
+ else
+ var/num_materials = length(materials)
+ if(!num_materials)
+ return 0
+
+ amt /= num_materials
+ for(var/i in materials)
+ materials[i] += amt
+ total_amount += amt
+ return (total_amount - total_amount_saved)
+
+/// Uses an amount of a specific material, effectively removing it.
+/datum/component/material_container/proc/use_amount_mat(amt, datum/material/mat)
+ if(!istype(mat))
+ mat = GET_MATERIAL_REF(mat)
+
+ if(!mat)
+ return 0
+ var/amount = materials[mat]
+ if(amount < amt)
+ return 0
+
+ materials[mat] -= amt
+ total_amount -= amt
+ return amt
+
+/// Proc for transfering materials to another container.
+/datum/component/material_container/proc/transer_amt_to(datum/component/material_container/T, amt, datum/material/mat)
+ if(!istype(mat))
+ mat = GET_MATERIAL_REF(mat)
+ if((amt==0)||(!T)||(!mat))
+ return FALSE
+ if(amt<0)
+ return T.transer_amt_to(src, -amt, mat)
+ var/tr = min(amt, materials[mat], T.can_insert_amount_mat(amt, mat))
+ if(tr)
+ use_amount_mat(tr, mat)
+ T.insert_amount_mat(tr, mat)
+ return tr
+ return FALSE
+
+/// Proc for checking if there is room in the component, returning the amount or else the amount lacking.
+/datum/component/material_container/proc/can_insert_amount_mat(amt, datum/material/mat)
+ if(!amt || !mat)
+ return 0
+
+ if((total_amount + amt) <= max_amount)
+ return amt
+ else
+ return (max_amount - total_amount)
+
+
+/// For consuming a dictionary of materials. mats is the map of materials to use and the corresponding amounts, example: list(M/datum/material/glass =100, datum/material/iron=200)
+/datum/component/material_container/proc/use_materials(list/mats, multiplier=1)
+ if(!mats || !length(mats))
+ return FALSE
+
+ var/list/mats_to_remove = list() //Assoc list MAT | AMOUNT
+
+ for(var/x in mats) //Loop through all required materials
+ var/datum/material/req_mat = x
+ if(!istype(req_mat))
+ req_mat = GET_MATERIAL_REF(req_mat) //Get the ref if necesary
+ if(!materials[req_mat]) //Do we have the resource?
+ return FALSE //Can't afford it
+ var/amount_required = mats[x] * multiplier
+ if(!(materials[req_mat] >= amount_required)) // do we have enough of the resource?
+ return FALSE //Can't afford it
+ mats_to_remove[req_mat] += amount_required //Add it to the assoc list of things to remove
+ continue
+
+ var/total_amount_save = total_amount
+
+ for(var/i in mats_to_remove)
+ total_amount_save -= use_amount_mat(mats_to_remove[i], i)
+
+ return total_amount_save - total_amount
+
+/// For spawning mineral sheets at a specific location. Used by machines to output sheets.
+/datum/component/material_container/proc/retrieve_sheets(sheet_amt, datum/material/M, atom/target = null)
+ if(!M.stack_type)
+ return 0 //Add greyscale sheet handling here later
+ if(sheet_amt <= 0)
+ return 0
+
+ if(!target)
+ var/atom/parent_atom = parent
+ target = parent_atom.drop_location()
+ if(materials[M] < (sheet_amt * SHEET_MATERIAL_AMOUNT))
+ sheet_amt = round(materials[M] / SHEET_MATERIAL_AMOUNT)
+
+ var/obj/item/stack/S = M.stack_type
+ var/max_stack_size = initial(S.max_amount)
+
+ var/count = 0
+ while(sheet_amt > max_stack_size)
+ new M.stack_type(target, max_stack_size, null, list((M) = SHEET_MATERIAL_AMOUNT))
+ count += max_stack_size
+ use_amount_mat(sheet_amt * SHEET_MATERIAL_AMOUNT, M)
+ sheet_amt -= max_stack_size
+ if(sheet_amt >= 1)
+ new M.stack_type(target, sheet_amt, null, list((M) = SHEET_MATERIAL_AMOUNT))
+ count += sheet_amt
+ use_amount_mat(sheet_amt * SHEET_MATERIAL_AMOUNT, M)
+ return count
+
+
+/// Proc to get all the materials and dump them as sheets
+/datum/component/material_container/proc/retrieve_all(target = null)
+ var/result = 0
+ for(var/MAT in materials)
+ var/amount = materials[MAT]
+ result += retrieve_sheets(amount2sheet(amount), MAT, target)
+ return result
+
+/// Proc that returns TRUE if the container has space
+/datum/component/material_container/proc/has_space(amt = 0)
+ return (total_amount + amt) <= max_amount
+
+/// Checks if its possible to afford a certain amount of materials. Takes a dictionary of materials.
+/datum/component/material_container/proc/has_materials(list/mats, multiplier=1)
+ if(!mats || !mats.len)
+ return FALSE
+
+ for(var/x in mats) //Loop through all required materials
+ var/datum/material/req_mat = x
+ if(!istype(req_mat))
+ if(ispath(req_mat) || istext(req_mat)) //Is this an actual material, or is it a category?
+ req_mat = GET_MATERIAL_REF(req_mat) //Get the ref
+
+ // else // Its a category. (For example MAT_CATEGORY_RIGID)
+ // if(!has_enough_of_category(req_mat, mats[x], multiplier)) //Do we have enough of this category?
+ // return FALSE
+ // else
+ // continue
+
+ if(!has_enough_of_material(req_mat, mats[x], multiplier))//Not a category, so just check the normal way
+ return FALSE
+
+ return TRUE
+
+/// Returns all the categories in a recipe.
+/datum/component/material_container/proc/get_categories(list/mats)
+ var/list/categories = list()
+ for(var/x in mats) //Loop through all required materials
+ if(!istext(x)) //This means its not a category
+ continue
+ categories += x
+ return categories
+
+/// Returns TRUE if you have enough of the specified material.
+/datum/component/material_container/proc/has_enough_of_material(datum/material/req_mat, amount, multiplier=1)
+ if(!materials[req_mat]) //Do we have the resource?
+ return FALSE //Can't afford it
+ var/amount_required = amount * multiplier
+ if(materials[req_mat] >= amount_required) // do we have enough of the resource?
+ return TRUE
+ return FALSE //Can't afford it
+
+/// Returns TRUE if you have enough of a specified material category (Which could be multiple materials)
+// /datum/component/material_container/proc/has_enough_of_category(category, amount, multiplier=1)
+// for(var/i in SSmaterials.materials_by_category[category])
+// var/datum/material/mat = i
+// if(materials[mat] >= amount) //we have enough
+// return TRUE
+// return FALSE
+
+/// Turns a material amount into the amount of sheets it should output
+/datum/component/material_container/proc/amount2sheet(amt)
+ if(amt >= SHEET_MATERIAL_AMOUNT)
+ return round(amt / SHEET_MATERIAL_AMOUNT)
+ return FALSE
+
+/// Turns an amount of sheets into the amount of material amount it should output
+/datum/component/material_container/proc/sheet2amount(sheet_amt)
+ if(sheet_amt > 0)
+ return sheet_amt * SHEET_MATERIAL_AMOUNT
+ return FALSE
+
+
+///returns the amount of material relevant to this container; if this container does not support glass, any glass in 'I' will not be taken into account
+/datum/component/material_container/proc/get_item_material_amount(obj/item/I, breakdown_flags = mat_container_flags)
+ if(!istype(I) || !I.matter)
+ return 0
+ var/material_amount = 0
+ var/list/item_materials = I.get_material_composition(breakdown_flags)
+ for(var/MAT in item_materials)
+ if(!can_hold_material(MAT))
+ continue
+ material_amount += item_materials[MAT]
+ return material_amount
+
+/// Returns the amount of a specific material in this container.
+/datum/component/material_container/proc/get_material_amount(datum/material/mat)
+ if(!istype(mat))
+ mat = GET_MATERIAL_REF(mat)
+ return materials[mat]
+
+/// List format is list(list(name = ..., amount = ..., ref = ..., etc.), list(...))
+/datum/component/material_container/tgui_data(mob/user)
+ var/list/data = list()
+
+ for(var/datum/material/material as anything in materials)
+ var/amount = materials[material]
+
+ data += list(list(
+ "name" = material.name,
+ "ref" = REF(material),
+ "amount" = amount,
+ "sheets" = round(amount / SHEET_MATERIAL_AMOUNT),
+ "removable" = amount >= SHEET_MATERIAL_AMOUNT,
+ ))
+
+ return data
diff --git a/code/datums/components/overlay_lighting.dm b/code/datums/components/overlay_lighting.dm
new file mode 100644
index 0000000000..cfc0f1e921
--- /dev/null
+++ b/code/datums/components/overlay_lighting.dm
@@ -0,0 +1,511 @@
+///For switchable lights, is it on and currently emitting light?
+#define LIGHTING_ON (1<<0)
+///Is the parent attached to something else, its loc? Then we need to keep an eye of this.
+#define LIGHTING_ATTACHED (1<<1)
+
+#define GET_PARENT (parent_attached_to || parent)
+
+#define GET_LIGHT_SOURCE (directional_atom || current_holder)
+
+#define SHORT_CAST 2
+
+/**
+ * Movable atom overlay-based lighting component.
+ *
+ * * Component works by applying a visual object to the parent target.
+ *
+ * * The component tracks the parent's loc to determine the current_holder.
+ * * The current_holder is either the parent or its loc, whichever is on a turf. If none, then the current_holder is null and the light is not visible.
+ *
+ * * Lighting works at its base by applying a dark overlay and "cutting" said darkness with light, adding (possibly colored) transparency.
+ * * This component uses the visible_mask visual object to apply said light mask on the darkness.
+ *
+ * * The main limitation of this system is that it uses a limited number of pre-baked geometrical shapes, but for most uses it does the job.
+ *
+ * * Another limitation is for big lights: you only see the light if you see the object emiting it.
+ * * For small objects this is good (you can't see them behind a wall), but for big ones this quickly becomes prety clumsy.
+*/
+/datum/component/overlay_lighting
+ ///How far the light reaches, float.
+ var/range = 1
+ ///Ceiling of range, integer without decimal entries.
+ var/lumcount_range = 0
+ ///How much this light affects the dynamic_lumcount of turfs.
+ var/lum_power = 0.5
+ ///Transparency value.
+ var/set_alpha = 0
+ ///For light sources that can be turned on and off.
+ var/overlay_lighting_flags = NONE
+
+ ///Cache of the possible light overlays, according to size.
+ var/static/list/light_overlays = list(
+ "32" = 'icons/effects/light_overlays/light_32.dmi',
+ "64" = 'icons/effects/light_overlays/light_64.dmi',
+ "96" = 'icons/effects/light_overlays/light_96.dmi',
+ "128" = 'icons/effects/light_overlays/light_128.dmi',
+ "160" = 'icons/effects/light_overlays/light_160.dmi',
+ "192" = 'icons/effects/light_overlays/light_192.dmi',
+ "224" = 'icons/effects/light_overlays/light_224.dmi',
+ "256" = 'icons/effects/light_overlays/light_256.dmi',
+ "288" = 'icons/effects/light_overlays/light_288.dmi',
+ "320" = 'icons/effects/light_overlays/light_320.dmi',
+ "352" = 'icons/effects/light_overlays/light_352.dmi',
+ )
+
+ ///Overlay effect to cut into the darkness and provide light.
+ var/obj/effect/overlay/light_visible/visible_mask
+ ///Lazy list to track the turfs being affected by our light, to determine their visibility.
+ var/list/turf/affected_turfs
+ ///Movable atom currently holding the light. Parent might be a flashlight, for example, but that might be held by a mob or something else.
+ var/atom/movable/current_holder
+ ///Movable atom the parent is attached to. For example, a flashlight into a helmet or gun. We'll need to track the thing the parent is attached to as if it were the parent itself.
+ var/atom/movable/parent_attached_to
+ ///Whether we're a directional light
+ var/directional
+ ///Abstractional atom for directional light, we move this around to make the directional effect
+ var/obj/effect/abstract/directional_lighting/directional_atom
+ ///A cone overlay for directional light, it's alpha and color are dependant on the light
+ var/obj/effect/overlay/light_cone/cone
+ ///Current tracked direction for the directional cast behaviour
+ var/current_direction
+ ///Cast range for the directional cast (how far away the atom is moved)
+ var/cast_range = 2
+ ///Cone offset X hint from atom, used when facing south, inverted when facing north
+ var/cone_hint_x
+ ///Cone offset Y hint from atom, when facing east/west, ignored for north/south (uses 16 in those cases)
+ var/cone_hint_y
+
+
+/datum/component/overlay_lighting/Initialize(_range, _power, _color, starts_on, is_directional)
+ if(!ismovable(parent))
+ return COMPONENT_INCOMPATIBLE
+
+ var/atom/movable/movable_parent = parent
+ if(movable_parent.light_system != MOVABLE_LIGHT && movable_parent.light_system != MOVABLE_LIGHT_DIRECTIONAL)
+ stack_trace("[type] added to [parent], with [movable_parent.light_system] value for the light_system var. Use [MOVABLE_LIGHT] or [MOVABLE_LIGHT_DIRECTIONAL] instead.")
+ return COMPONENT_INCOMPATIBLE
+
+ . = ..()
+
+ visible_mask = new()
+ if(is_directional)
+ directional = TRUE
+ directional_atom = new()
+ cone = new()
+ cone_hint_x = movable_parent.light_cone_x_offset
+ cone_hint_y = movable_parent.light_cone_y_offset
+ cone.transform = cone.transform.Translate(-32, -32)
+ set_direction(movable_parent.dir)
+ if(!isnull(_range))
+ movable_parent.set_light_range(_range)
+ set_range(parent, movable_parent.light_range)
+ if(!isnull(_power))
+ movable_parent.set_light_power(_power)
+ set_power(parent, movable_parent.light_power)
+ if(!isnull(_color))
+ movable_parent.set_light_color(_color)
+ set_color(parent, movable_parent.light_color)
+ if(!isnull(starts_on))
+ movable_parent.set_light_on(starts_on)
+
+
+/datum/component/overlay_lighting/RegisterWithParent()
+ . = ..()
+ if(directional)
+ RegisterSignal(parent, COMSIG_ATOM_DIR_CHANGE, .proc/on_parent_dir_change)
+ RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/on_parent_moved)
+ RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_RANGE, .proc/set_range)
+ RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_POWER, .proc/set_power)
+ RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_COLOR, .proc/set_color)
+ RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_ON, .proc/on_toggle)
+ RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_FLAGS, .proc/on_light_flags_change)
+ RegisterSignal(parent, COMSIG_ATOM_USED_IN_CRAFT, .proc/on_parent_crafted)
+ RegisterSignal(parent, COMSIG_LIGHT_EATER_QUEUE, .proc/on_light_eater)
+ var/atom/movable/movable_parent = parent
+ if(movable_parent.light_flags & LIGHT_ATTACHED)
+ overlay_lighting_flags |= LIGHTING_ATTACHED
+ set_parent_attached_to(ismovable(movable_parent.loc) ? movable_parent.loc : null)
+ check_holder()
+ if(movable_parent.light_on)
+ turn_on()
+
+
+/datum/component/overlay_lighting/UnregisterFromParent()
+ overlay_lighting_flags &= ~LIGHTING_ATTACHED
+ set_parent_attached_to(null)
+ set_holder(null)
+ clean_old_turfs()
+ UnregisterSignal(parent, list(
+ COMSIG_MOVABLE_MOVED,
+ COMSIG_ATOM_UPDATE_LIGHT_RANGE,
+ COMSIG_ATOM_UPDATE_LIGHT_POWER,
+ COMSIG_ATOM_UPDATE_LIGHT_COLOR,
+ COMSIG_ATOM_UPDATE_LIGHT_ON,
+ COMSIG_ATOM_UPDATE_LIGHT_FLAGS,
+ COMSIG_ATOM_USED_IN_CRAFT,
+ COMSIG_LIGHT_EATER_QUEUE,
+ ))
+ if(directional)
+ UnregisterSignal(parent, COMSIG_ATOM_DIR_CHANGE)
+ if(overlay_lighting_flags & LIGHTING_ON)
+ turn_off()
+ return ..()
+
+
+/datum/component/overlay_lighting/Destroy()
+ set_parent_attached_to(null)
+ set_holder(null)
+ clean_old_turfs()
+ QDEL_NULL(visible_mask)
+ if(directional)
+ QDEL_NULL(directional_atom)
+ QDEL_NULL(cone)
+ return ..()
+
+
+///Clears the affected_turfs lazylist, removing from its contents the effects of being near the light.
+/datum/component/overlay_lighting/proc/clean_old_turfs()
+ for(var/t in affected_turfs)
+ var/turf/lit_turf = t
+ lit_turf.dynamic_lumcount -= lum_power
+ affected_turfs = null
+
+
+///Populates the affected_turfs lazylist, adding to its contents the effects of being near the light.
+/datum/component/overlay_lighting/proc/get_new_turfs()
+ if(!current_holder)
+ return
+ var/atom/movable/light_source = GET_LIGHT_SOURCE
+ for(var/turf/lit_turf in view(lumcount_range, get_turf(light_source)))
+ lit_turf.dynamic_lumcount += lum_power
+ LAZYADD(affected_turfs, lit_turf)
+
+
+///Clears the old affected turfs and populates the new ones.
+/datum/component/overlay_lighting/proc/make_luminosity_update()
+ clean_old_turfs()
+ if(!isturf(current_holder?.loc))
+ return
+ if(directional)
+ cast_directional_light()
+ get_new_turfs()
+
+
+///Adds the luminosity and source for the afected movable atoms to keep track of their visibility.
+/datum/component/overlay_lighting/proc/add_dynamic_lumi()
+ var/atom/movable/light_source = GET_LIGHT_SOURCE
+ LAZYSET(light_source.affected_dynamic_lights, src, lumcount_range + 1)
+ light_source.vis_contents += visible_mask
+ light_source.update_dynamic_luminosity()
+ if(directional)
+ current_holder.vis_contents += cone
+
+///Removes the luminosity and source for the afected movable atoms to keep track of their visibility.
+/datum/component/overlay_lighting/proc/remove_dynamic_lumi()
+ var/atom/movable/light_source = GET_LIGHT_SOURCE
+ LAZYREMOVE(light_source.affected_dynamic_lights, src)
+ light_source.vis_contents -= visible_mask
+ light_source.update_dynamic_luminosity()
+ if(directional)
+ current_holder.vis_contents -= cone
+ directional_atom.moveToNullspace()
+
+///Called to change the value of parent_attached_to.
+/datum/component/overlay_lighting/proc/set_parent_attached_to(atom/movable/new_parent_attached_to)
+ if(new_parent_attached_to == parent_attached_to)
+ return
+
+ . = parent_attached_to
+ parent_attached_to = new_parent_attached_to
+ if(.)
+ var/atom/movable/old_parent_attached_to = .
+ UnregisterSignal(old_parent_attached_to, list(COMSIG_PARENT_QDELETING, COMSIG_MOVABLE_MOVED, COMSIG_LIGHT_EATER_QUEUE))
+ if(old_parent_attached_to == current_holder)
+ RegisterSignal(old_parent_attached_to, COMSIG_PARENT_QDELETING, .proc/on_holder_qdel)
+ RegisterSignal(old_parent_attached_to, COMSIG_MOVABLE_MOVED, .proc/on_holder_moved)
+ RegisterSignal(old_parent_attached_to, COMSIG_LIGHT_EATER_QUEUE, .proc/on_light_eater)
+ if(parent_attached_to)
+ if(parent_attached_to == current_holder)
+ UnregisterSignal(current_holder, list(COMSIG_PARENT_QDELETING, COMSIG_MOVABLE_MOVED, COMSIG_LIGHT_EATER_QUEUE))
+ RegisterSignal(parent_attached_to, COMSIG_PARENT_QDELETING, .proc/on_parent_attached_to_qdel)
+ RegisterSignal(parent_attached_to, COMSIG_MOVABLE_MOVED, .proc/on_parent_attached_to_moved)
+ RegisterSignal(parent_attached_to, COMSIG_LIGHT_EATER_QUEUE, .proc/on_light_eater)
+ check_holder()
+
+
+///Called to change the value of current_holder.
+/datum/component/overlay_lighting/proc/set_holder(atom/movable/new_holder)
+ if(new_holder == current_holder)
+ return
+ if(current_holder)
+ if(current_holder != parent && current_holder != parent_attached_to)
+ UnregisterSignal(current_holder, list(COMSIG_PARENT_QDELETING, COMSIG_MOVABLE_MOVED, COMSIG_LIGHT_EATER_QUEUE))
+ if(directional)
+ UnregisterSignal(current_holder, COMSIG_ATOM_DIR_CHANGE)
+ if(overlay_lighting_flags & LIGHTING_ON)
+ remove_dynamic_lumi()
+ current_holder = new_holder
+ if(new_holder == null)
+ clean_old_turfs()
+ return
+ if(new_holder != parent && new_holder != parent_attached_to)
+ RegisterSignal(new_holder, COMSIG_PARENT_QDELETING, .proc/on_holder_qdel)
+ RegisterSignal(new_holder, COMSIG_MOVABLE_MOVED, .proc/on_holder_moved)
+ RegisterSignal(new_holder, COMSIG_LIGHT_EATER_QUEUE, .proc/on_light_eater)
+ if(directional)
+ RegisterSignal(new_holder, COMSIG_ATOM_DIR_CHANGE, .proc/on_holder_dir_change)
+ if(overlay_lighting_flags & LIGHTING_ON)
+ make_luminosity_update()
+ add_dynamic_lumi()
+
+
+///Used to determine the new valid current_holder from the parent's loc.
+/datum/component/overlay_lighting/proc/check_holder()
+ var/atom/movable/movable_parent = GET_PARENT
+ if(isturf(movable_parent.loc))
+ set_holder(movable_parent)
+ return
+ var/atom/inside = movable_parent.loc //Parent's loc
+ if(isnull(inside))
+ set_holder(null)
+ return
+ if(isturf(inside.loc))
+ set_holder(inside)
+ return
+ set_holder(null)
+
+
+///Called when the current_holder is qdeleted, to remove the light effect.
+/datum/component/overlay_lighting/proc/on_holder_qdel(atom/movable/source, force)
+ SIGNAL_HANDLER
+ UnregisterSignal(current_holder, list(COMSIG_PARENT_QDELETING, COMSIG_MOVABLE_MOVED))
+ if(directional)
+ UnregisterSignal(current_holder, COMSIG_ATOM_DIR_CHANGE)
+ set_holder(null)
+
+
+///Called when current_holder changes loc.
+/datum/component/overlay_lighting/proc/on_holder_moved(atom/movable/source, OldLoc, Dir, Forced)
+ SIGNAL_HANDLER
+ if(!(overlay_lighting_flags & LIGHTING_ON))
+ return
+ make_luminosity_update()
+
+
+///Called when parent changes loc.
+/datum/component/overlay_lighting/proc/on_parent_moved(atom/movable/source, OldLoc, Dir, Forced)
+ SIGNAL_HANDLER
+ var/atom/movable/movable_parent = parent
+ if(overlay_lighting_flags & LIGHTING_ATTACHED)
+ set_parent_attached_to(ismovable(movable_parent.loc) ? movable_parent.loc : null)
+ check_holder()
+ if(!(overlay_lighting_flags & LIGHTING_ON) || !current_holder)
+ return
+ make_luminosity_update()
+
+
+///Called when the current_holder is qdeleted, to remove the light effect.
+/datum/component/overlay_lighting/proc/on_parent_attached_to_qdel(atom/movable/source, force)
+ SIGNAL_HANDLER
+ UnregisterSignal(parent_attached_to, list(COMSIG_PARENT_QDELETING, COMSIG_MOVABLE_MOVED))
+ if(directional)
+ UnregisterSignal(parent_attached_to, COMSIG_ATOM_DIR_CHANGE)
+ if(parent_attached_to == current_holder)
+ set_holder(null)
+ set_parent_attached_to(null)
+
+
+///Called when parent_attached_to changes loc.
+/datum/component/overlay_lighting/proc/on_parent_attached_to_moved(atom/movable/source, OldLoc, Dir, Forced)
+ SIGNAL_HANDLER
+ check_holder()
+ if(!(overlay_lighting_flags & LIGHTING_ON) || !current_holder)
+ return
+ make_luminosity_update()
+
+
+///Changes the range which the light reaches. 0 means no light, 6 is the maximum value.
+/datum/component/overlay_lighting/proc/set_range(atom/source, old_range)
+ SIGNAL_HANDLER
+ var/new_range = source.light_range
+ if(range == new_range)
+ return
+ if(range == 0)
+ turn_off()
+ range = clamp(CEILING(new_range, 0.5), 1, 6)
+ var/pixel_bounds = ((range - 1) * 64) + 32
+ lumcount_range = CEILING(range, 1)
+ visible_mask.icon = light_overlays["[pixel_bounds]"]
+ if(pixel_bounds == 32)
+ visible_mask.transform = null
+ return
+ var/offset = (pixel_bounds - 32) * 0.5
+ var/matrix/transform = new
+ transform.Translate(-offset, -offset)
+ visible_mask.transform = transform
+ if(directional)
+ cast_range = clamp(round(new_range * 0.5), 1, 3)
+ if(overlay_lighting_flags & LIGHTING_ON)
+ make_luminosity_update()
+
+
+///Changes the intensity/brightness of the light by altering the visual object's alpha.
+/datum/component/overlay_lighting/proc/set_power(atom/source, old_power)
+ SIGNAL_HANDLER
+ var/new_power = source.light_power
+ set_lum_power(new_power >= 0 ? 0.5 : -0.5)
+ set_alpha = min(230, (abs(new_power) * 120) + 30)
+ visible_mask.alpha = set_alpha
+ if(directional)
+ cone.alpha = min(200, (abs(new_power) * 90)+20)
+
+
+///Changes the light's color, pretty straightforward.
+/datum/component/overlay_lighting/proc/set_color(atom/source, old_color)
+ SIGNAL_HANDLER
+ var/new_color = source.light_color
+ visible_mask.color = new_color
+ if(directional)
+ cone.color = new_color
+
+
+///Toggles the light on and off.
+/datum/component/overlay_lighting/proc/on_toggle(atom/source, old_value)
+ SIGNAL_HANDLER
+ var/new_value = source.light_on
+ if(new_value) //Truthy value input, turn on.
+ turn_on()
+ return
+ turn_off() //Falsey value, turn off.
+
+
+///Triggered right after the parent light flags change.
+/datum/component/overlay_lighting/proc/on_light_flags_change(atom/source, old_flags)
+ SIGNAL_HANDLER
+ var/new_flags = source.light_flags
+ var/atom/movable/movable_parent = parent
+ if(!((new_flags ^ old_flags) & LIGHT_ATTACHED))
+ return
+
+ if(new_flags & LIGHT_ATTACHED) // Gained the [LIGHT_ATTACHED] property
+ overlay_lighting_flags |= LIGHTING_ATTACHED
+ if(ismovable(movable_parent.loc))
+ set_parent_attached_to(movable_parent.loc)
+ else // Lost the [LIGHT_ATTACHED] property
+ overlay_lighting_flags &= ~LIGHTING_ATTACHED
+ set_parent_attached_to(null)
+
+
+///Toggles the light on.
+/datum/component/overlay_lighting/proc/turn_on()
+ if(overlay_lighting_flags & LIGHTING_ON)
+ return
+ if(current_holder)
+ if(directional)
+ cast_directional_light()
+ add_dynamic_lumi()
+ overlay_lighting_flags |= LIGHTING_ON
+ get_new_turfs()
+
+
+///Toggles the light off.
+/datum/component/overlay_lighting/proc/turn_off()
+ if(!(overlay_lighting_flags & LIGHTING_ON))
+ return
+ if(current_holder)
+ remove_dynamic_lumi()
+ overlay_lighting_flags &= ~LIGHTING_ON
+ clean_old_turfs()
+
+
+///Here we append the behavior associated to changing lum_power.
+/datum/component/overlay_lighting/proc/set_lum_power(new_lum_power)
+ if(lum_power == new_lum_power)
+ return
+ . = lum_power
+ lum_power = new_lum_power
+ var/difference = . - lum_power
+ for(var/t in affected_turfs)
+ var/turf/lit_turf = t
+ lit_turf.dynamic_lumcount -= difference
+
+///Here we append the behavior associated to changing lum_power.
+/datum/component/overlay_lighting/proc/cast_directional_light()
+ var/final_distance = cast_range
+ //Lower the distance by 1 if we're not looking at a cardinal direction, and we're not a short cast
+ if(final_distance > SHORT_CAST && !(ALL_CARDINALS & current_direction))
+ final_distance -= 1
+ var/turf/scanning = get_turf(current_holder)
+ for(var/i in 1 to final_distance)
+ var/turf/next_turf = get_step(scanning, current_direction)
+ if(isnull(next_turf) || IS_OPAQUE_TURF(next_turf))
+ break
+ scanning = next_turf
+ directional_atom.forceMove(scanning)
+
+///Called when current_holder changes loc.
+/datum/component/overlay_lighting/proc/on_holder_dir_change(atom/movable/source, olddir, newdir)
+ SIGNAL_HANDLER
+ set_direction(newdir)
+
+///Called when parent changes loc.
+/datum/component/overlay_lighting/proc/on_parent_dir_change(atom/movable/source, olddir, newdir)
+ SIGNAL_HANDLER
+ set_direction(newdir)
+
+///Sets a new direction for the directional cast, then updates luminosity
+/datum/component/overlay_lighting/proc/set_direction(newdir)
+ if(!newdir)
+ return
+ if(current_direction == newdir)
+ return
+ current_direction = newdir
+ cone.set_dir(newdir)
+
+ if(newdir & NORTH)
+ cone.pixel_y = 16
+ else if(newdir & SOUTH)
+ cone.pixel_y = -16
+ else
+ if(!isnull(cone_hint_y))
+ cone.pixel_y = cone_hint_y
+ else
+ cone.pixel_y = 0
+
+ if(newdir & EAST)
+ cone.pixel_x = 16
+ else if(newdir & WEST)
+ cone.pixel_x = -16
+ else
+ if(!isnull(cone_hint_x))
+ if(newdir & NORTH)
+ cone.pixel_x = -1*cone_hint_x
+ else
+ cone.pixel_x = cone_hint_x
+ else
+ cone.pixel_x = 0
+
+ if(overlay_lighting_flags & LIGHTING_ON)
+ make_luminosity_update()
+
+/datum/component/overlay_lighting/proc/on_parent_crafted(datum/source, atom/movable/new_craft)
+ SIGNAL_HANDLER
+
+ if(!istype(new_craft))
+ return
+
+ UnregisterSignal(parent, COMSIG_ATOM_USED_IN_CRAFT)
+ RegisterSignal(new_craft, COMSIG_ATOM_USED_IN_CRAFT, .proc/on_parent_crafted)
+ set_parent_attached_to(new_craft)
+
+/// Handles putting the source for overlay lights into the light eater queue since we aren't tracked by [/atom/var/light_sources]
+/datum/component/overlay_lighting/proc/on_light_eater(datum/source, list/light_queue, datum/light_eater)
+ SIGNAL_HANDLER
+ light_queue[parent] = TRUE
+ return NONE
+
+#undef LIGHTING_ON
+#undef LIGHTING_ATTACHED
+#undef GET_PARENT
+#undef GET_LIGHT_SOURCE
+#undef SHORT_CAST
diff --git a/code/datums/elements/_element.dm b/code/datums/elements/_element.dm
index 46a295f90b..30bd98a326 100644
--- a/code/datums/elements/_element.dm
+++ b/code/datums/elements/_element.dm
@@ -1,9 +1,9 @@
/**
- * A holder for simple behaviour that can be attached to many different types
- *
- * Only one element of each type is instanced during game init.
- * Otherwise acts basically like a lightweight component.
- */
+ * A holder for simple behaviour that can be attached to many different types
+ *
+ * Only one element of each type is instanced during game init.
+ * Otherwise acts basically like a lightweight component.
+ */
/datum/element
/// Option flags for element behaviour
var/element_flags = NONE
@@ -18,17 +18,23 @@
/// Activates the functionality defined by the element on the given target datum
/datum/element/proc/Attach(datum/target)
- SHOULD_CALL_PARENT(1)
+ SHOULD_CALL_PARENT(TRUE)
if(type == /datum/element)
return ELEMENT_INCOMPATIBLE
SEND_SIGNAL(target, COMSIG_ELEMENT_ATTACH, src)
if(element_flags & ELEMENT_DETACH)
- RegisterSignal(target, COMSIG_PARENT_QDELETING, .proc/Detach, override = TRUE)
+ RegisterSignal(target, COMSIG_PARENT_QDELETING, .proc/OnTargetDelete, override = TRUE)
+
+/datum/element/proc/OnTargetDelete(datum/source, force)
+ SIGNAL_HANDLER
+ Detach(source)
/// Deactivates the functionality defines by the element on the given datum
-/datum/element/proc/Detach(datum/source, force)
+/datum/element/proc/Detach(datum/source, ...)
+ SIGNAL_HANDLER
+
SEND_SIGNAL(source, COMSIG_ELEMENT_DETACH, src)
- SHOULD_CALL_PARENT(1)
+ SHOULD_CALL_PARENT(TRUE)
UnregisterSignal(source, COMSIG_PARENT_QDELETING)
/datum/element/Destroy(force)
@@ -41,15 +47,21 @@
/// Finds the singleton for the element type given and attaches it to src
/datum/proc/_AddElement(list/arguments)
+ if(QDELING(src))
+ CRASH("We just tried to add an element to a qdeleted datum, something is fucked")
var/datum/element/ele = SSdcs.GetElement(arguments)
arguments[1] = src
if(ele.Attach(arglist(arguments)) == ELEMENT_INCOMPATIBLE)
CRASH("Incompatible [arguments[1]] assigned to a [type]! args: [json_encode(args)]")
/**
- * Finds the singleton for the element type given and detaches it from src
- * You only need additional arguments beyond the type if you're using [ELEMENT_BESPOKE]
- */
+ * Finds the singleton for the element type given and detaches it from src
+ * You only need additional arguments beyond the type if you're using [ELEMENT_BESPOKE]
+ */
/datum/proc/_RemoveElement(list/arguments)
var/datum/element/ele = SSdcs.GetElement(arguments)
- ele.Detach(src)
+ if(ele.element_flags & ELEMENT_COMPLEX_DETACH)
+ arguments[1] = src
+ ele.Detach(arglist(arguments))
+ else
+ ele.Detach(src)
diff --git a/code/datums/elements/light_blocking.dm b/code/datums/elements/light_blocking.dm
new file mode 100644
index 0000000000..86aac9f075
--- /dev/null
+++ b/code/datums/elements/light_blocking.dm
@@ -0,0 +1,36 @@
+/**
+ * Attached to movable atoms with opacity. Listens to them move and updates their old and new turf loc's opacity accordingly.
+ */
+/datum/element/light_blocking
+ element_flags = ELEMENT_DETACH
+
+
+/datum/element/light_blocking/Attach(datum/target)
+ . = ..()
+ if(!ismovable(target))
+ return ELEMENT_INCOMPATIBLE
+ RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/on_target_move)
+ var/atom/movable/movable_target = target
+ if(isturf(movable_target.loc))
+ var/turf/turf_loc = movable_target.loc
+ turf_loc.add_opacity_source(target)
+
+
+/datum/element/light_blocking/Detach(atom/movable/target)
+ . = ..()
+ UnregisterSignal(target, list(COMSIG_MOVABLE_MOVED))
+ var/atom/movable/movable_target = target
+ if(isturf(movable_target.loc))
+ var/turf/turf_loc = movable_target.loc
+ turf_loc.remove_opacity_source(target)
+
+
+///Updates old and new turf loc opacities.
+/datum/element/light_blocking/proc/on_target_move(atom/movable/source, atom/OldLoc, Dir, Forced = FALSE)
+ SIGNAL_HANDLER
+ if(isturf(OldLoc))
+ var/turf/old_turf = OldLoc
+ old_turf.remove_opacity_source(source)
+ if(isturf(source.loc))
+ var/turf/new_turf = source.loc
+ new_turf.add_opacity_source(source)
diff --git a/code/datums/mutable_appearance.dm b/code/datums/mutable_appearance.dm
index 16d10ae035..56faf42469 100644
--- a/code/datums/mutable_appearance.dm
+++ b/code/datums/mutable_appearance.dm
@@ -10,10 +10,13 @@
plane = FLOAT_PLANE // No clue why this is 0 by default yet images are on FLOAT_PLANE
// And yes this does have to be in the constructor, BYOND ignores it if you set it as a normal var
-// Helper similar to image()
-/proc/mutable_appearance(icon, icon_state = "", layer = FLOAT_LAYER)
+/// Helper similar to image()
+/proc/mutable_appearance(icon, icon_state = "", layer = FLOAT_LAYER, plane = FLOAT_PLANE, alpha = 255, appearance_flags = NONE)
var/mutable_appearance/MA = new()
MA.icon = icon
MA.icon_state = icon_state
MA.layer = layer
- return MA
\ No newline at end of file
+ MA.plane = plane
+ MA.alpha = alpha
+ MA.appearance_flags |= appearance_flags
+ return MA
diff --git a/code/datums/supplypacks/munitions_vr.dm b/code/datums/supplypacks/munitions_vr.dm
index 75f2124c96..fb0f0f9048 100644
--- a/code/datums/supplypacks/munitions_vr.dm
+++ b/code/datums/supplypacks/munitions_vr.dm
@@ -7,4 +7,14 @@
cost = 35
containertype = /obj/structure/closet/crate/secure
containername = "frontier phaser crate"
- access = access_explorer
\ No newline at end of file
+ access = access_explorer
+
+/datum/supply_pack/munitions/expeditionbows
+ name = "Frontier bows (station-locked) crate"
+ contains = list(
+ /obj/item/weapon/gun/energy/locked/frontier/handbow=2
+ )
+ cost = 20
+ containertype = /obj/structure/closet/crate/secure
+ containername = "frontier phaser crate"
+ access = access_explorer
diff --git a/code/datums/supplypacks/security.dm b/code/datums/supplypacks/security.dm
index 32c847ece2..33f30174fb 100644
--- a/code/datums/supplypacks/security.dm
+++ b/code/datums/supplypacks/security.dm
@@ -421,7 +421,8 @@
/obj/item/clothing/accessory/holster,
/obj/item/clothing/accessory/holster/armpit,
/obj/item/clothing/accessory/holster/waist,
- /obj/item/clothing/accessory/holster/hip
+ /obj/item/clothing/accessory/holster/hip,
+ /obj/item/clothing/accessory/holster/leg
)
cost = 15
containertype = /obj/structure/closet/crate/hedberg
diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm
index 9c46ab200e..90d43a7c36 100644
--- a/code/game/area/areas.dm
+++ b/code/game/area/areas.dm
@@ -80,7 +80,7 @@
A.contents.Add(T)
if(old_area)
// Handle dynamic lighting update if
- if(T.dynamic_lighting && old_area.dynamic_lighting != A.dynamic_lighting)
+ if(SSlighting.subsystem_initialized && T.dynamic_lighting && old_area.dynamic_lighting != A.dynamic_lighting)
if(A.dynamic_lighting)
T.lighting_build_overlay()
else
diff --git a/code/game/atoms.dm b/code/game/atoms.dm
index daf2596ced..186a156ba5 100644
--- a/code/game/atoms.dm
+++ b/code/game/atoms.dm
@@ -26,9 +26,16 @@
///Chemistry.
// Overlays
- var/list/our_overlays //our local copy of (non-priority) overlays without byond magic. Use procs in SSoverlays to manipulate
- var/list/priority_overlays //overlays that should remain on top and not normally removed when using cut_overlay functions, like c4.
+ ///Our local copy of (non-priority) overlays without byond magic. Use procs in SSoverlays to manipulate
+ var/list/our_overlays
+ ///Overlays that should remain on top and not normally removed when using cut_overlay functions, like c4.
+ var/list/priority_overlays
+ ///vis overlays managed by SSvis_overlays to automaticaly turn them like other overlays
+ var/list/managed_vis_overlays
+ ///Our local copy of filter data so we can add/remove it
+ var/list/filter_data
+
//Detective Work, used for the duplicate data points kept in the scanners
var/list/original_atom
// Track if we are already had initialize() called to prevent double-initialization.
@@ -82,6 +89,13 @@
initialized = TRUE
return INITIALIZE_HINT_NORMAL
+/atom/Destroy()
+ if(reagents)
+ QDEL_NULL(reagents)
+ if(light)
+ QDEL_NULL(light)
+ return ..()
+
// Called after all object's normal initialize() if initialize() returns INITIALIZE_HINT_LATELOAD
/atom/proc/LateInitialize()
return
diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm
index 645194543f..728859eee7 100644
--- a/code/game/atoms_movable.dm
+++ b/code/game/atoms_movable.dm
@@ -30,37 +30,46 @@
var/cloaked = FALSE //If we're cloaked or not
var/image/cloaked_selfimage //The image we use for our client to let them see where we are
+/atom/movable/Initialize(mapload)
+ . = ..()
+ switch(blocks_emissive)
+ if(EMISSIVE_BLOCK_GENERIC)
+ var/mutable_appearance/gen_emissive_blocker = mutable_appearance(icon, icon_state, plane = PLANE_EMISSIVE, alpha = src.alpha)
+ gen_emissive_blocker.color = GLOB.em_block_color
+ gen_emissive_blocker.dir = dir
+ gen_emissive_blocker.appearance_flags |= appearance_flags
+ add_overlay(list(gen_emissive_blocker), TRUE)
+ if(EMISSIVE_BLOCK_UNIQUE)
+ render_target = ref(src)
+ em_block = new(src, render_target)
+ add_overlay(list(em_block), TRUE)
+ if(opacity)
+ AddElement(/datum/element/light_blocking)
+ switch(light_system)
+ if(STATIC_LIGHT)
+ update_light()
+ if(MOVABLE_LIGHT)
+ AddComponent(/datum/component/overlay_lighting, starts_on = light_on)
+ if(MOVABLE_LIGHT_DIRECTIONAL)
+ AddComponent(/datum/component/overlay_lighting, is_directional = TRUE, starts_on = light_on)
+
/atom/movable/Destroy()
. = ..()
- if(reagents)
- qdel(reagents)
- reagents = null
for(var/atom/movable/AM in contents)
qdel(AM)
- var/turf/un_opaque
- if(opacity && isturf(loc))
- un_opaque = loc
+
+ if(opacity)
+ RemoveElement(/datum/element/light_blocking)
moveToNullspace()
- if(un_opaque)
- un_opaque.recalc_atom_opacity()
- if (pulledby)
- if (pulledby.pulling == src)
- pulledby.pulling = null
- pulledby = null
+
+ if(pulledby)
+ pulledby.stop_pulling()
+
+ if(orbiting)
+ stop_orbit()
QDEL_NULL(riding_datum) //VOREStation Add
-
-/atom/movable/vv_get_dropdown()
- . = ..()
- VV_DROPDOWN_OPTION("move_atom", "Move To Coordinate")
-
-/atom/vv_do_topic(list/href_list)
- . = ..()
- IF_VV_OPTION("move_atom")
- usr.client.cmd_admin_move_atom(src)
- href_list["datumrefresh"] = "\ref[src]"
-
/atom/movable/vv_edit_var(var_name, var_value)
if(var_name in GLOB.VVpixelmovement) //Pixel movement is not yet implemented, changing this will break everything irreversibly.
return FALSE
@@ -211,12 +220,15 @@
//Called after a successful Move(). By this point, we've already moved
/atom/movable/proc/Moved(atom/old_loc, direction, forced = FALSE, movetime)
+ SEND_SIGNAL(src, COMSIG_MOVABLE_MOVED, old_loc, direction, forced, movetime)
// Handle any buckled mobs on this movable
if(has_buckled_mobs())
handle_buckled_mob_movement(old_loc, direction, movetime)
if(riding_datum)
riding_datum.handle_vehicle_layer()
riding_datum.handle_vehicle_offsets()
+ for (var/datum/light_source/light as anything in light_sources) // Cycle through the light sources on this atom and tell them to update.
+ light.source_atom.update_light()
return TRUE
/atom/movable/set_dir(newdir)
diff --git a/code/game/atoms_movable_vr.dm b/code/game/atoms_movable_vr.dm
index d529122029..94f01d7b7f 100644
--- a/code/game/atoms_movable_vr.dm
+++ b/code/game/atoms_movable_vr.dm
@@ -1,2 +1,12 @@
/atom/movable/proc/Bump_vr(var/atom/A, yes)
return
+
+/atom/movable/vv_get_dropdown()
+ . = ..()
+ VV_DROPDOWN_OPTION("move_atom", "Move To Coordinate")
+
+/atom/vv_do_topic(list/href_list)
+ . = ..()
+ IF_VV_OPTION("move_atom")
+ usr.client.cmd_admin_move_atom(src)
+ href_list["datumrefresh"] = "\ref[src]"
diff --git a/code/game/gamemodes/changeling/powers/lesser_form.dm b/code/game/gamemodes/changeling/powers/lesser_form.dm
index d7b9cb0489..ef82337d52 100644
--- a/code/game/gamemodes/changeling/powers/lesser_form.dm
+++ b/code/game/gamemodes/changeling/powers/lesser_form.dm
@@ -67,7 +67,7 @@
C.transforming = 1
C.canmove = 0
C.icon = null
- C.overlays.Cut()
+ C.cut_overlays()
C.invisibility = 101
var/atom/movable/overlay/animation = new /atom/movable/overlay( C.loc )
animation.icon_state = "blank"
diff --git a/code/game/gamemodes/cult/construct_spells.dm b/code/game/gamemodes/cult/construct_spells.dm
index 954361fb9f..aea5270f95 100644
--- a/code/game/gamemodes/cult/construct_spells.dm
+++ b/code/game/gamemodes/cult/construct_spells.dm
@@ -629,6 +629,7 @@ proc/findNullRod(var/atom/target)
light_range = 4
light_power = 5
light_color = "#FF0000"
+ light_on = TRUE
pulses_remaining = 10
pulse_delay = 1 SECOND
@@ -650,6 +651,7 @@ proc/findNullRod(var/atom/target)
aspect = ASPECT_UNHOLY
light_color = "#FF5C5C"
light_power = -2
+ light_on = TRUE
/obj/item/weapon/spell/construct/mend_occult/on_melee_cast(atom/hit_atom, mob/living/user, def_zone)
if(isliving(hit_atom))
@@ -666,6 +668,7 @@ proc/findNullRod(var/atom/target)
aspect = ASPECT_UNHOLY
light_color = "#FF5C5C"
light_power = -2
+ light_on = TRUE
cooldown = 15
/obj/item/weapon/spell/construct/slam/on_melee_cast(atom/hit_atom, mob/living/user, def_zone)
diff --git a/code/game/gamemodes/endgame/supermatter_cascade/universe.dm b/code/game/gamemodes/endgame/supermatter_cascade/universe.dm
index 310a7a9ae7..280d2ed6bd 100644
--- a/code/game/gamemodes/endgame/supermatter_cascade/universe.dm
+++ b/code/game/gamemodes/endgame/supermatter_cascade/universe.dm
@@ -91,6 +91,8 @@ The access requirements on the Asteroid Shuttles' consoles have now been revoked
A.updateicon()
/datum/universal_state/supermatter_cascade/OverlayAndAmbientSet()
+ return
+ /* TODO
spawn(0)
for(var/datum/lighting_corner/L in world)
if(L.z in using_map.admin_levels)
@@ -100,7 +102,7 @@ The access requirements on the Asteroid Shuttles' consoles have now been revoked
for(var/turf/space/T in world)
OnTurfChange(T)
-
+ */
/datum/universal_state/supermatter_cascade/proc/MiscSet()
for (var/obj/machinery/firealarm/alm in machines)
if (!(alm.stat & BROKEN))
diff --git a/code/game/gamemodes/technomancer/instability.dm b/code/game/gamemodes/technomancer/instability.dm
index 8b4e1f2767..a7cf71b8f0 100644
--- a/code/game/gamemodes/technomancer/instability.dm
+++ b/code/game/gamemodes/technomancer/instability.dm
@@ -90,9 +90,9 @@
last_instability_event = world.time
spawn(1)
var/image/instability_flash = image('icons/obj/spells.dmi',"instability")
- overlays |= instability_flash
+ add_overlay(instability_flash)
sleep(4)
- overlays.Remove(instability_flash)
+ cut_overlay(instability_flash)
qdel(instability_flash)
/mob/living/silicon/instability_effects()
diff --git a/code/game/gamemodes/technomancer/spell_objs.dm b/code/game/gamemodes/technomancer/spell_objs.dm
index 2c80ac39fd..a9eb862ee9 100644
--- a/code/game/gamemodes/technomancer/spell_objs.dm
+++ b/code/game/gamemodes/technomancer/spell_objs.dm
@@ -168,9 +168,9 @@
/obj/item/weapon/spell/update_icon()
if(toggled)
var/image/new_overlay = image('icons/obj/spells.dmi',"toggled")
- overlays |= new_overlay
+ add_overlay(new_overlay)
else
- overlays.Cut()
+ cut_overlays()
..()
// Proc: run_checks()
diff --git a/code/game/gamemodes/technomancer/spells/illusion.dm b/code/game/gamemodes/technomancer/spells/illusion.dm
index 2d33f6e926..5d626f7c47 100644
--- a/code/game/gamemodes/technomancer/spells/illusion.dm
+++ b/code/game/gamemodes/technomancer/spells/illusion.dm
@@ -65,11 +65,11 @@
// Makes a tiny overlay of the thing the player has copied, so they can easily tell what they currently have.
/obj/item/weapon/spell/illusion/update_icon()
- overlays.Cut()
+ cut_overlays()
if(copied)
var/image/temp_image = image(copied)
var/matrix/M = matrix()
M.Scale(0.5, 0.5)
temp_image.transform = M
// temp_image.pixel_y = 8
- src.overlays.Add(temp_image)
+ add_overlay(temp_image)
diff --git a/code/game/gamemodes/technomancer/spells/spawner/darkness.dm b/code/game/gamemodes/technomancer/spells/spawner/darkness.dm
index d83602aa68..f54f9b7502 100644
--- a/code/game/gamemodes/technomancer/spells/spawner/darkness.dm
+++ b/code/game/gamemodes/technomancer/spells/spawner/darkness.dm
@@ -27,4 +27,5 @@
time_to_die = 2 MINUTES
invisibility = 101
light_range = 6
- light_power = -20
\ No newline at end of file
+ light_power = -20
+ light_on = TRUE
\ No newline at end of file
diff --git a/code/game/gamemodes/technomancer/spells/spawner/destablize.dm b/code/game/gamemodes/technomancer/spells/spawner/destablize.dm
index aee8d2557b..9bf6b07281 100644
--- a/code/game/gamemodes/technomancer/spells/spawner/destablize.dm
+++ b/code/game/gamemodes/technomancer/spells/spawner/destablize.dm
@@ -31,6 +31,7 @@
light_range = 6
light_power = 20
light_color = "#C26DDE"
+ light_on = TRUE
var/pulses_remaining = 40 // Lasts 20 seconds.
var/instability_power = 5
var/instability_range = 6
diff --git a/code/game/jobs/access.dm b/code/game/jobs/access.dm
index 55581562b7..e7d0ae9177 100644
--- a/code/game/jobs/access.dm
+++ b/code/game/jobs/access.dm
@@ -28,32 +28,21 @@
return has_access(req_access, req_one_access, L)
/proc/has_access(var/list/req_access, var/list/req_one_access, var/list/accesses)
- // Doesn't have access lists, always works
- if(!LAZYLEN(req_access) && !LAZYLEN(req_one_access))
- return TRUE
-
- // Didn't pass anything to compare
- if(!LAZYLEN(accesses))
- return FALSE
-
// req_access list has priority if set
// Requires at least every access in list
- if(LAZYLEN(req_access))
- for(var/req in req_access)
- if(!(req in accesses))
- return FALSE
- // Wasn't missing any accesses
- return TRUE
+ for(var/req in req_access)
+ if(!(req in accesses))
+ return FALSE
// req_one_access is secondary if set
// Requires at least one access in list
- for(var/req in req_one_access)
- if(req in accesses)
- // Found at least one
- return TRUE
+ if(LAZYLEN(req_one_access))
+ for(var/req in req_one_access)
+ if(req in accesses)
+ return TRUE
+ return FALSE
- // Didn't find anything that matched
- return FALSE
+ return TRUE
/proc/get_centcom_access(job)
switch(job)
diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm
index e0ff3a6086..46f6710aaf 100644
--- a/code/game/machinery/Sleeper.dm
+++ b/code/game/machinery/Sleeper.dm
@@ -80,7 +80,7 @@
/obj/machinery/sleep_console/tgui_act(action, params, datum/tgui/ui, datum/tgui_state/state)
if(sleeper)
return sleeper.tgui_act(action, params, ui, state)
- return FALSE
+ return ..()
/obj/machinery/sleeper
name = "sleeper"
diff --git a/code/game/machinery/airconditioner_vr.dm b/code/game/machinery/airconditioner_vr.dm
index 892c6b4929..1aa2516085 100644
--- a/code/game/machinery/airconditioner_vr.dm
+++ b/code/game/machinery/airconditioner_vr.dm
@@ -109,14 +109,14 @@
env.merge(removed)
/obj/machinery/power/thermoregulator/update_icon()
- overlays.Cut()
+ cut_overlays()
if(on)
- overlays += "lasergen-on"
+ add_overlay("lasergen-on")
switch(mode)
if(MODE_HEATING)
- overlays += "lasergen-heat"
+ add_overlay("lasergen-heat")
if(MODE_COOLING)
- overlays += "lasergen-cool"
+ add_overlay("lasergen-cool")
/obj/machinery/power/thermoregulator/proc/turn_off()
on = 0
diff --git a/code/game/machinery/atmoalter/canister.dm b/code/game/machinery/atmoalter/canister.dm
index 2d5e39b1b7..8895844b00 100644
--- a/code/game/machinery/atmoalter/canister.dm
+++ b/code/game/machinery/atmoalter/canister.dm
@@ -141,20 +141,20 @@ update_flag
if(check_change()) //Returns 1 if no change needed to icons.
return
- src.overlays = 0
+ cut_overlays()
if(update_flag & 1)
- overlays += "can-open"
+ add_overlay("can-open")
if(update_flag & 2)
- overlays += "can-connector"
+ add_overlay("can-connector")
if(update_flag & 4)
- overlays += "can-o0"
+ add_overlay("can-o0")
if(update_flag & 8)
- overlays += "can-o1"
+ add_overlay("can-o1")
else if(update_flag & 16)
- overlays += "can-o2"
+ add_overlay("can-o2")
else if(update_flag & 32)
- overlays += "can-o3"
+ add_overlay("can-o3")
return
/obj/machinery/portable_atmospherics/canister/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume)
diff --git a/code/game/machinery/atmoalter/pump.dm b/code/game/machinery/atmoalter/pump.dm
index 74e4804661..f97a66bd78 100644
--- a/code/game/machinery/atmoalter/pump.dm
+++ b/code/game/machinery/atmoalter/pump.dm
@@ -29,7 +29,7 @@
src.air_contents.adjust_multi("oxygen", air_mix["oxygen"], "nitrogen", air_mix["nitrogen"])
/obj/machinery/portable_atmospherics/powered/pump/update_icon()
- src.overlays = 0
+ cut_overlays()
if(on && cell && cell.charge)
icon_state = "psiphon:1"
@@ -37,10 +37,10 @@
icon_state = "psiphon:0"
if(holding)
- overlays += "siphon-open"
+ add_overlay("siphon-open")
if(connected_port)
- overlays += "siphon-connector"
+ add_overlay("siphon-connector")
return
diff --git a/code/game/machinery/atmoalter/pump_vr.dm b/code/game/machinery/atmoalter/pump_vr.dm
index 69be9208a1..e056086baf 100644
--- a/code/game/machinery/atmoalter/pump_vr.dm
+++ b/code/game/machinery/atmoalter/pump_vr.dm
@@ -26,7 +26,7 @@
to_chat(user, "You can't directly interact with this machine. Use the pump control console. ")
/obj/machinery/portable_atmospherics/powered/pump/huge/update_icon()
- overlays.Cut()
+ cut_overlays()
if(on && !(stat & (NOPOWER|BROKEN)))
icon_state = "siphon:1"
diff --git a/code/game/machinery/atmoalter/scrubber.dm b/code/game/machinery/atmoalter/scrubber.dm
index 1f9d190800..f154e64d89 100644
--- a/code/game/machinery/atmoalter/scrubber.dm
+++ b/code/game/machinery/atmoalter/scrubber.dm
@@ -36,7 +36,7 @@
..(severity)
/obj/machinery/portable_atmospherics/powered/scrubber/update_icon()
- src.overlays = 0
+ cut_overlays()
if(on && cell && cell.charge)
icon_state = "pscrubber:1"
@@ -44,10 +44,10 @@
icon_state = "pscrubber:0"
if(holding)
- overlays += "scrubber-open"
+ add_overlay("scrubber-open")
if(connected_port)
- overlays += "scrubber-connector"
+ add_overlay("scrubber-connector")
return
diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm
index f14fe8c846..29a00e25f0 100644
--- a/code/game/machinery/autolathe.dm
+++ b/code/game/machinery/autolathe.dm
@@ -13,8 +13,6 @@
circuit = /obj/item/weapon/circuitboard/autolathe
var/static/datum/category_collection/autolathe/autolathe_recipes
- var/list/stored_material = list(DEFAULT_WALL_MATERIAL = 0, MAT_GLASS = 0, MAT_PLASTEEL = 0, MAT_PLASTIC = 0)
- var/list/storage_capacity = list(DEFAULT_WALL_MATERIAL = 0, MAT_GLASS = 0, MAT_PLASTEEL = 0, MAT_PLASTIC = 0)
var/hacked = 0
var/disabled = 0
@@ -35,18 +33,12 @@
var/filtertext
/obj/machinery/autolathe/Initialize()
+ AddComponent(/datum/component/material_container, subtypesof(/datum/material), 0, MATCONTAINER_EXAMINE, _after_insert = CALLBACK(src, .proc/AfterMaterialInsert))
. = ..()
if(!autolathe_recipes)
autolathe_recipes = new()
wires = new(src)
- for(var/Name in name_to_material)
- if(Name in stored_material)
- continue
-
- stored_material[Name] = 0
- storage_capacity[Name] = 0
-
default_apply_parts()
RefreshParts()
@@ -85,6 +77,7 @@
"requirements" = M.resources,
"hidden" = M.hidden,
"coeff_applies" = !M.no_scale,
+ "is_stack" = M.is_stack,
)))
data["recipes"] = recipes
data["categories"] = categories
@@ -98,19 +91,9 @@
/obj/machinery/autolathe/tgui_data(mob/user, datum/tgui/ui, datum/tgui_state/state)
var/list/data = ..()
-
- var/list/material_data = list()
- for(var/mat_id in stored_material)
- var/amount = stored_material[mat_id]
- var/list/material_info = list(
- "name" = mat_id,
- "amount" = amount,
- "sheets" = round(amount / SHEET_MATERIAL_AMOUNT),
- "removable" = amount >= SHEET_MATERIAL_AMOUNT
- )
- material_data += list(material_info)
data["busy"] = busy
- data["materials"] = material_data
+ var/datum/component/material_container/materials = GetComponent(/datum/component/material_container)
+ data["materials"] = materials.tgui_data()
data["mat_efficiency"] = mat_efficiency
return data
@@ -149,70 +132,14 @@
wires.Interact(user)
return
- if(O.loc != user && !(istype(O,/obj/item/stack)))
- return 0
-
if(is_robot_module(O))
return 0
if(istype(O,/obj/item/ammo_magazine/clip) || istype(O,/obj/item/ammo_magazine/s357) || istype(O,/obj/item/ammo_magazine/s38) || istype (O,/obj/item/ammo_magazine/s44)/* VOREstation Edit*/) // Prevents ammo recycling exploit with speedloaders.
to_chat(user, "\The [O] is too hazardous to recycle with the autolathe!")
return
-
- //Resources are being loaded.
- var/obj/item/eating = O
- if(!eating.matter)
- to_chat(user, "\The [eating] does not contain significant amounts of useful materials and cannot be accepted.")
- return
-
- var/filltype = 0 // Used to determine message.
- var/total_used = 0 // Amount of material used.
- var/mass_per_sheet = 0 // Amount of material constituting one sheet.
-
- for(var/material in eating.matter)
-
- if(isnull(stored_material[material]) || isnull(storage_capacity[material]))
- continue
-
- if(stored_material[material] >= storage_capacity[material])
- continue
-
- var/total_material = eating.matter[material]
-
- //If it's a stack, we eat multiple sheets.
- if(istype(eating,/obj/item/stack))
- var/obj/item/stack/stack = eating
- total_material *= stack.get_amount()
-
- if(stored_material[material] + total_material > storage_capacity[material])
- total_material = storage_capacity[material] - stored_material[material]
- filltype = 1
- else
- filltype = 2
-
- stored_material[material] += total_material
- total_used += total_material
- mass_per_sheet += eating.matter[material]
-
- if(!filltype)
- to_chat(user, "\The [src] is full. Please remove material from the autolathe in order to insert more. ")
- return
- else if(filltype == 1)
- to_chat(user, "You fill \the [src] to capacity with \the [eating].")
- else
- to_chat(user, "You fill \the [src] with \the [eating].")
-
- flick("autolathe_loading", src) // Plays metal insertion animation. Work out a good way to work out a fitting animation. ~Z
-
- if(istype(eating,/obj/item/stack))
- var/obj/item/stack/stack = eating
- stack.use(max(1, round(total_used/mass_per_sheet))) // Always use at least 1 to prevent infinite materials.
- else
- user.remove_from_mob(O)
- qdel(O)
-
- updateUsrDialog()
- return
+
+ return ..()
/obj/machinery/autolathe/attack_hand(mob/user as mob)
user.set_machine(src)
@@ -236,36 +163,42 @@
if(making.hidden && !hacked)
return
- var/multiplier = 1
+ var/datum/component/material_container/materials = GetComponent(/datum/component/material_container)
+
+ var/list/materials_used = list()
+
+ var/multiplier = (params["multiplier"] || 1)
if(making.is_stack)
var/max_sheets
for(var/material in making.resources)
var/coeff = (making.no_scale ? 1 : mat_efficiency) //stacks are unaffected by production coefficient
- var/sheets = round(stored_material[material]/round(making.resources[material]*coeff))
+ var/sheets = round(materials.get_material_amount(material) / round(making.resources[material] * coeff))
if(isnull(max_sheets) || max_sheets > sheets)
max_sheets = sheets
- if(!isnull(stored_material[material]) && stored_material[material] < round(making.resources[material]*coeff))
+ if(!isnull(materials.get_material_amount(material)) && materials.get_material_amount(material) < round(making.resources[material] * coeff))
max_sheets = 0
//Build list of multipliers for sheets.
multiplier = input(usr, "How many do you want to print? (0-[max_sheets])") as num|null
if(!multiplier || multiplier <= 0 || multiplier > max_sheets || tgui_status(usr, state) != STATUS_INTERACTIVE)
return FALSE
- busy = making.name
- update_use_power(USE_POWER_ACTIVE)
-
//Check if we still have the materials.
var/coeff = (making.no_scale ? 1 : mat_efficiency) //stacks are unaffected by production coefficient
- for(var/material in making.resources)
- if(!isnull(stored_material[material]))
- if(stored_material[material] < round(making.resources[material] * coeff) * multiplier)
- return
+
+ for(var/MAT in making.resources)
+ var/datum/material/used_material = MAT
+ var/amount_needed = making.resources[MAT] * coeff * multiplier
+ materials_used[used_material] = amount_needed
- //Consume materials.
- for(var/material in making.resources)
- if(!isnull(stored_material[material]))
- stored_material[material] = max(0, stored_material[material] - round(making.resources[material] * coeff) * multiplier)
+ if(LAZYLEN(materials_used))
+ if(!materials.has_materials(materials_used))
+ return
+
+ materials.use_materials(materials_used)
+
+ busy = making.name
+ update_use_power(USE_POWER_ACTIVE)
update_icon() // So lid closes
@@ -311,12 +244,12 @@
return FALSE
/obj/machinery/autolathe/update_icon()
- overlays.Cut()
+ cut_overlays()
icon_state = initial(icon_state)
if(panel_open)
- overlays.Add(image(icon, "[icon_state]_panel"))
+ add_overlay("[icon_state]_panel")
if(stat & NOPOWER)
return
if(busy)
@@ -332,43 +265,28 @@
for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts)
man_rating += M.rating
- for(var/mat_name in storage_capacity)
- storage_capacity[mat_name] = mb_rating * 25000
+ var/datum/component/material_container/materials = GetComponent(/datum/component/material_container)
+ materials.max_amount = mb_rating * 75000
build_time = 50 / man_rating
mat_efficiency = 1.1 - man_rating * 0.1// Normally, price is 1.25 the amount of material, so this shouldn't go higher than 0.6. Maximum rating of parts is 5
update_tgui_static_data(usr)
/obj/machinery/autolathe/dismantle()
- for(var/mat in stored_material)
- var/datum/material/M = get_material_by_name(mat)
- if(!istype(M))
- continue
- var/obj/item/stack/material/S = new M.stack_type(get_turf(src))
- if(stored_material[mat] > S.perunit)
- S.amount = round(stored_material[mat] / S.perunit)
- else
- qdel(S)
- ..()
- return 1
+ var/datum/component/material_container/materials = GetComponent(/datum/component/material_container)
+ materials.retrieve_all()
+ return ..()
-/obj/machinery/autolathe/proc/eject_materials(var/material, var/amount) // 0 amount = 0 means ejecting a full stack; -1 means eject everything
- var/recursive = amount == -1 ? 1 : 0
- var/matstring = lowertext(material)
- var/datum/material/M = get_material_by_name(matstring)
-
- var/obj/item/stack/material/S = M.place_sheet(get_turf(src))
- if(amount <= 0)
- amount = S.max_amount
- var/ejected = min(round(stored_material[matstring] / S.perunit), amount)
- S.amount = min(ejected, amount)
- if(S.amount <= 0)
- qdel(S)
- return
- stored_material[matstring] -= ejected * S.perunit
- if(recursive && stored_material[matstring] >= S.perunit)
- eject_materials(matstring, -1)
+/obj/machinery/autolathe/proc/AfterMaterialInsert(obj/item/item_inserted, id_inserted, amount_inserted)
+ flick("autolathe_loading", src)//plays metal insertion animation
+ // use_power(min(1000, amount_inserted / 100))
+ SStgui.update_uis(src)
+/obj/machinery/autolathe/examine(mob/user)
+ . = ..()
+ var/datum/component/material_container/materials = GetComponent(/datum/component/material_container)
+ if(in_range(user, src) || isobserver(user))
+ . += "The status display reads: Storing up to [materials.max_amount] material units. Material consumption at [mat_efficiency*100]% . "
//YWAdd start.
/obj/machinery/autolathe/verb/eatmaterialsnearby()
@@ -449,4 +367,4 @@
if("West")
input_dir = WEST
to_chat(src, "You set the material input to [input_dir_name]")
-//YWAdd END.
+//YWAdd END.
\ No newline at end of file
diff --git a/code/game/machinery/bomb_tester_vr.dm b/code/game/machinery/bomb_tester_vr.dm
index e3a3643526..ea9add72ce 100644
--- a/code/game/machinery/bomb_tester_vr.dm
+++ b/code/game/machinery/bomb_tester_vr.dm
@@ -62,11 +62,11 @@
simulation_finish()
/obj/machinery/bomb_tester/update_icon()
- overlays.Cut()
+ cut_overlays()
if(tank1)
- overlays += image(icon, "[icon_name]-tank1")
+ add_overlay("[icon_name]-tank1")
if(tank2)
- overlays += image(icon, "[icon_name]-tank2")
+ add_overlay("[icon_name]-tank2")
if(stat & NOPOWER)
icon_state = "[icon_name]-p"
else
diff --git a/code/game/machinery/cell_charger.dm b/code/game/machinery/cell_charger.dm
index 2b768fb3e6..4cfdb16dd0 100644
--- a/code/game/machinery/cell_charger.dm
+++ b/code/game/machinery/cell_charger.dm
@@ -27,12 +27,12 @@
if(chargelevel != newlevel)
- overlays.Cut()
- overlays += "ccharger-o[newlevel]"
+ cut_overlays()
+ add_overlay("ccharger-o[newlevel]")
chargelevel = newlevel
else
- overlays.Cut()
+ cut_overlays()
/obj/machinery/cell_charger/examine(mob/user)
. = ..()
diff --git a/code/game/machinery/computer/computer.dm b/code/game/machinery/computer/computer.dm
index 9b230cc3d2..110b70ab8c 100644
--- a/code/game/machinery/computer/computer.dm
+++ b/code/game/machinery/computer/computer.dm
@@ -7,6 +7,7 @@
use_power = USE_POWER_IDLE
idle_power_usage = 300
active_power_usage = 300
+ blocks_emissive = FALSE
var/processing = 0
var/icon_keyboard = "generic_key"
@@ -62,29 +63,32 @@
/obj/machinery/computer/update_icon()
cut_overlays()
- // No power
- if(stat & NOPOWER)
- set_light(0)
- if(icon_keyboard)
- add_overlay("[icon_keyboard]_off")
- playsound(src, 'sound/machines/terminal_off.ogg', 50, 1)
- // Yes power
- else
- if(icon_keyboard)
- add_overlay(icon_keyboard)
- set_light(light_range_on, light_power_on)
- playsound(src, 'sound/machines/terminal_on.ogg', 50, 1)
+
+ . = list()
- // Broken
- if(stat & BROKEN)
- add_overlay("[icon_state]_broken")
- // Not broken
- else
- add_overlay(icon_screen)
+ if(icon_keyboard)
+ if(stat & NOPOWER)
+ playsound(src, 'sound/machines/terminal_off.ogg', 50, 1)
+ return add_overlay("[icon_keyboard]_off")
+ . += icon_keyboard
+
+ // This whole block lets screens ignore lighting and be visible even in the darkest room
+ var/overlay_state = icon_screen
+ if(stat & BROKEN)
+ overlay_state = "[icon_state]_broken"
+ . += mutable_appearance(icon, overlay_state)
+ . += emissive_appearance(icon, overlay_state)
+ playsound(src, 'sound/machines/terminal_on.ogg', 50, 1)
+
+ add_overlay(.)
/obj/machinery/computer/power_change()
..()
update_icon()
+ if(stat & NOPOWER)
+ set_light(0)
+ else
+ set_light(light_range_on, light_power_on)
/obj/machinery/computer/proc/set_broken()
stat |= BROKEN
diff --git a/code/game/machinery/doorbell_vr.dm b/code/game/machinery/doorbell_vr.dm
index 3dd029631e..1b6174a2ca 100644
--- a/code/game/machinery/doorbell_vr.dm
+++ b/code/game/machinery/doorbell_vr.dm
@@ -33,9 +33,9 @@
update_icon()
/obj/machinery/doorbell_chime/update_icon()
- overlays.Cut()
+ cut_overlays()
if(panel_open)
- overlays += "dbchime-open"
+ add_overlay("dbchime-open")
if(inoperable())
icon_state = "dbchime-off"
if(!id_tag)
diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm
index 97558066e9..6288de28b2 100644
--- a/code/game/machinery/doors/airlock.dm
+++ b/code/game/machinery/doors/airlock.dm
@@ -13,6 +13,8 @@
power_channel = ENVIRON
explosion_resistance = 10
+ blocks_emissive = EMISSIVE_BLOCK_GENERIC // Not quite as nice as /tg/'s custom masks. We should make those sometime
+
var/aiControlDisabled = 0 //If 1, AI control is disabled until the AI hacks back in and disables the lock. If 2, the AI has bypassed the lock. If -1, the control is enabled but the AI had bypassed it earlier, so if it is disabled again the AI would have no trouble getting back in.
var/hackProof = 0 // if 1, this door can't be hacked by the AI
var/electrified_until = 0 //World time when the door is no longer electrified. -1 if it is permanently electrified until someone fixes it.
@@ -791,35 +793,34 @@ About the new airlock wires panel:
/obj/machinery/door/airlock/update_icon()
- if(overlays) overlays.Cut()
+ cut_overlays()
if(density)
if(locked && lights && src.arePowerSystemsOn())
icon_state = "door_locked"
else
icon_state = "door_closed"
if(p_open || welded)
- overlays = list()
if(p_open)
- overlays += image(icon, "panel_open")
+ add_overlay("panel_open")
if (!(stat & NOPOWER))
if(stat & BROKEN)
- overlays += image(icon, "sparks_broken")
+ add_overlay("sparks_broken")
else if (health < maxhealth * 3/4)
- overlays += image(icon, "sparks_damaged")
+ add_overlay("sparks_damaged")
if(welded)
- overlays += image(icon, "welded")
+ add_overlay("welded")
else if (health < maxhealth * 3/4 && !(stat & NOPOWER))
- overlays += image(icon, "sparks_damaged")
+ add_overlay("sparks_damaged")
else
icon_state = "door_open"
if((stat & BROKEN) && !(stat & NOPOWER))
- overlays += image(icon, "sparks_open")
+ add_overlay("sparks_open")
return
/obj/machinery/door/airlock/do_animate(animation)
switch(animation)
if("opening")
- if(overlays) overlays.Cut()
+ cut_overlay()
if(p_open)
spawn(2) // The only work around that works. Downside is that the door will be gone for a millisecond.
flick("o_door_opening", src) //can not use flick due to BYOND bug updating overlays right before flicking
@@ -828,7 +829,7 @@ About the new airlock wires panel:
flick("door_opening", src)//[stat ? "_stat":]
update_icon()
if("closing")
- if(overlays) overlays.Cut()
+ cut_overlay()
if(p_open)
spawn(2)
flick("o_door_closing", src)
diff --git a/code/game/machinery/doors/blast_door.dm b/code/game/machinery/doors/blast_door.dm
index 1143c3e0cd..121918af1f 100644
--- a/code/game/machinery/doors/blast_door.dm
+++ b/code/game/machinery/doors/blast_door.dm
@@ -388,24 +388,13 @@ obj/machinery/door/blast/gate/open
. = ..()
apply_opacity_to_my_turfs(opacity)
-/obj/machinery/door/blast/multi_tile/open()
- if((. = ..()))
- apply_opacity_to_my_turfs(opacity)
+/obj/machinery/door/blast/multi_tile/set_opacity()
+ . = ..()
+ apply_opacity_to_my_turfs(opacity)
-/obj/machinery/door/blast/multi_tile/close()
- if((. = ..()))
- apply_opacity_to_my_turfs(opacity)
-
-/obj/machinery/door/blast/multi_tile/Destroy()
- apply_opacity_to_my_turfs(0)
- return ..()
-
-//Multi-tile poddoors don't turn invisible automatically, so we change the opacity of the turfs below instead one by one.
/obj/machinery/door/blast/multi_tile/proc/apply_opacity_to_my_turfs(new_opacity)
for(var/turf/T in locs)
- T.opacity = new_opacity
- T.has_opaque_atom = new_opacity
- T.reconsider_lights()
+ T.set_opacity(new_opacity)
update_nearby_tiles()
/obj/machinery/door/blast/multi_tile
diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm
index fc03dcb8d2..616205563d 100644
--- a/code/game/machinery/doors/door.dm
+++ b/code/game/machinery/doors/door.dm
@@ -11,6 +11,7 @@
density = 1
can_atmos_pass = ATMOS_PASS_PROC
layer = DOOR_OPEN_LAYER
+ blocks_emissive = EMISSIVE_BLOCK_UNIQUE
var/open_layer = DOOR_OPEN_LAYER
var/closed_layer = DOOR_CLOSED_LAYER
diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm
index 6cae2617fd..e9585aa812 100644
--- a/code/game/machinery/doors/firedoor.dm
+++ b/code/game/machinery/doors/firedoor.dm
@@ -444,29 +444,29 @@
/obj/machinery/door/firedoor/update_icon()
- overlays.Cut()
+ cut_overlays()
if(density)
icon_state = "door_closed"
if(prying)
icon_state = "prying_closed"
if(hatch_open)
- overlays += "hatch"
+ add_overlay("hatch")
if(blocked)
- overlays += "welded"
+ add_overlay("welded")
if(pdiff_alert)
- overlays += "palert"
+ add_overlay("palert")
if(dir_alerts)
for(var/d=1;d<=4;d++)
var/cdir = cardinal[d]
for(var/i=1;i<=ALERT_STATES.len;i++)
if(dir_alerts[d] & (1<<(i-1)))
- overlays += new/icon(icon,"alert_[ALERT_STATES[i]]", dir=cdir)
+ add_overlay(new/icon(icon,"alert_[ALERT_STATES[i]]", dir=cdir))
else
icon_state = "door_open"
if(prying)
icon_state = "prying_open"
if(blocked)
- overlays += "welded_open"
+ add_overlay("welded_open")
return
//These are playing merry hell on ZAS. Sorry fellas :(
diff --git a/code/game/machinery/doors/multi_tile.dm b/code/game/machinery/doors/multi_tile.dm
index ec5acbea73..23b71bdb0f 100644
--- a/code/game/machinery/doors/multi_tile.dm
+++ b/code/game/machinery/doors/multi_tile.dm
@@ -7,41 +7,25 @@
open_sound_powered = 'sound/machines/door/WideOpen.ogg'
close_sound_powered = 'sound/machines/door/WideClose.ogg'
-/obj/machinery/door/airlock/multi_tile/New()
- ..()
+/obj/machinery/door/airlock/multi_tile/Initialize(mapload)
+ . = ..()
SetBounds()
- if(opacity)
- create_fillers()
+ RegisterSignal(src, COMSIG_MOVABLE_MOVED, .proc/SetBounds)
+ apply_opacity_to_my_turfs(opacity)
+
+/obj/machinery/door/airlock/multi_tile/set_opacity()
+ . = ..()
+ apply_opacity_to_my_turfs(opacity)
+
+/obj/machinery/door/airlock/multi_tile/proc/apply_opacity_to_my_turfs(new_opacity)
+ for(var/turf/T in locs)
+ T.set_opacity(new_opacity)
+ update_nearby_tiles()
/obj/machinery/door/airlock/multi_tile/Destroy()
- QDEL_NULL(filler1)
- QDEL_NULL(filler2)
+ UnregisterSignal(src, COMSIG_MOVABLE_MOVED)
return ..()
-/obj/machinery/door/airlock/multi_tile/Moved(atom/old_loc, direction, forced = FALSE)
- . = ..()
- SetBounds()
-
-/obj/machinery/door/airlock/multi_tile/open()
- . = ..()
-
- if(filler1)
- filler1.set_opacity(opacity)
- if(filler2)
- filler2.set_opacity(opacity)
-
- return .
-
-/obj/machinery/door/airlock/multi_tile/close()
- . = ..()
-
- if(filler1)
- filler1.set_opacity(opacity)
- if(filler2)
- filler2.set_opacity(opacity)
-
- return .
-
/obj/machinery/door/airlock/multi_tile/proc/SetBounds()
if(dir in list(EAST, WEST))
bound_width = width * world.icon_size
@@ -50,18 +34,6 @@
bound_width = world.icon_size
bound_height = width * world.icon_size
-/obj/machinery/door/airlock/multi_tile/proc/create_fillers()
- if(src.dir > 3)
- filler1 = new/obj/machinery/filler_object (src.loc)
- filler2 = new/obj/machinery/filler_object (get_step(src,EAST))
- else
- filler1 = new/obj/machinery/filler_object (src.loc)
- filler2 = new/obj/machinery/filler_object (get_step(src,NORTH))
- filler1.density = 0
- filler2.density = 0
- filler1.set_opacity(opacity)
- filler2.set_opacity(opacity)
-
/obj/machinery/door/airlock/multi_tile/glass
name = "Glass Airlock"
icon = 'icons/obj/doors/Door2x1glass.dmi'
@@ -74,12 +46,6 @@
icon = 'icons/obj/doors/Door2x1metal.dmi'
assembly_type = /obj/structure/door_assembly/multi_tile
-/obj/machinery/filler_object
- name = ""
- icon = 'icons/obj/doors/rapid_pdoor.dmi'
- icon_state = ""
- density = 0
-
/obj/machinery/door/airlock/multi_tile/metal/mait
icon = 'icons/obj/doors/Door2x1_Maint.dmi'
//req_one_access = list(access_maint_tunnels) //VOREStaiton Edit - Maintenance is open access
diff --git a/code/game/machinery/doors/multi_tile_vr.dm b/code/game/machinery/doors/multi_tile_vr.dm
index f8a76c51ea..1d179ca99d 100644
--- a/code/game/machinery/doors/multi_tile_vr.dm
+++ b/code/game/machinery/doors/multi_tile_vr.dm
@@ -1,22 +1,3 @@
/obj/machinery/door/airlock/multi_tile/glass/polarized
name = "Electrochromic Glass Airlock"
icon_tinted = 'icons/obj/doors/Door2x1tinted_vr.dmi'
-
-/obj/machinery/door/airlock/multi_tile/glass/polarized/New()
- ..()
- create_fillers()
-
-/obj/machinery/door/airlock/multi_tile/glass/polarized/toggle()
- . = ..()
- if(!operating)
- if(filler1)
- filler1.set_opacity(opacity)
- if(filler2)
- filler2.set_opacity(opacity)
-
-/obj/machinery/door/airlock/multi_tile/glass/polarized/close()
- . = ..()
- if(filler1)
- filler1.set_opacity(!glass)
- if(filler2)
- filler2.set_opacity(!glass)
\ No newline at end of file
diff --git a/code/game/machinery/embedded_controller/airlock_docking_controller_multi.dm b/code/game/machinery/embedded_controller/airlock_docking_controller_multi.dm
index b153437ca6..be58897622 100644
--- a/code/game/machinery/embedded_controller/airlock_docking_controller_multi.dm
+++ b/code/game/machinery/embedded_controller/airlock_docking_controller_multi.dm
@@ -30,7 +30,7 @@
)
/obj/machinery/embedded_controller/radio/docking_port_multi/tgui_act(action, params)
- return // Apparently we swallow all input (this is corrected legacy code)
+ return ..() // Apparently we swallow all input (this is corrected legacy code)
//a docking port based on an airlock
// This is the actual controller that will be commanded by the master defined above
diff --git a/code/game/machinery/fire_alarm.dm b/code/game/machinery/fire_alarm.dm
index 315d470432..a1a22b80c8 100644
--- a/code/game/machinery/fire_alarm.dm
+++ b/code/game/machinery/fire_alarm.dm
@@ -5,8 +5,9 @@ FIRE ALARM
name = "fire alarm"
desc = "\"Pull this in case of emergency\" . Thus, keep pulling it forever."
icon = 'icons/obj/monitors.dmi'
- icon_state = "fire0"
+ icon_state = "fire"
layer = ABOVE_WINDOW_LAYER
+ blocks_emissive = FALSE
var/detecting = 1.0
var/working = 1.0
var/time = 10.0
@@ -45,24 +46,36 @@ FIRE ALARM
if(stat & BROKEN)
icon_state = "firex"
set_light(0)
+ return
else if(stat & NOPOWER)
icon_state = "firep"
set_light(0)
+ return
+
+ var/fire_state
+
+ . = list()
+ icon_state = "fire"
+ if(!detecting)
+ fire_state = "fire1"
+ set_light(l_range = 4, l_power = 0.9, l_color = "#ff0000")
else
- if(!detecting)
- icon_state = "fire1"
- set_light(l_range = 4, l_power = 0.9, l_color = "#ff0000")
- else
- icon_state = "fire0"
- switch(seclevel)
- if("green") set_light(l_range = 2, l_power = 0.25, l_color = "#00ff00")
- if("yellow") set_light(l_range = 2, l_power = 0.25, l_color = "#ffff00")
- if("violet") set_light(l_range = 2, l_power = 0.25, l_color = "#9933ff")
- if("orange") set_light(l_range = 2, l_power = 0.25, l_color = "#ff9900")
- if("blue") set_light(l_range = 2, l_power = 0.25, l_color = "#1024A9")
- if("red") set_light(l_range = 4, l_power = 0.9, l_color = "#ff0000")
- if("delta") set_light(l_range = 4, l_power = 0.9, l_color = "#FF6633")
- add_overlay("overlay_[seclevel]")
+ fire_state = "fire0"
+ switch(seclevel)
+ if("green") set_light(l_range = 2, l_power = 0.25, l_color = "#00ff00")
+ if("yellow") set_light(l_range = 2, l_power = 0.25, l_color = "#ffff00")
+ if("violet") set_light(l_range = 2, l_power = 0.25, l_color = "#9933ff")
+ if("orange") set_light(l_range = 2, l_power = 0.25, l_color = "#ff9900")
+ if("blue") set_light(l_range = 2, l_power = 0.25, l_color = "#1024A9")
+ if("red") set_light(l_range = 4, l_power = 0.9, l_color = "#ff0000")
+ if("delta") set_light(l_range = 4, l_power = 0.9, l_color = "#FF6633")
+
+ . += mutable_appearance(icon, fire_state)
+ . += emissive_appearance(icon, fire_state)
+ . += mutable_appearance(icon, "overlay_[seclevel]")
+ . += emissive_appearance(icon, "overlay_[seclevel]")
+
+ add_overlay(.)
/obj/machinery/firealarm/fire_act(datum/gas_mixture/air, temperature, volume)
if(detecting)
diff --git a/code/game/machinery/floodlight.dm b/code/game/machinery/floodlight.dm
index 84aa62b155..e4b961eebe 100644
--- a/code/game/machinery/floodlight.dm
+++ b/code/game/machinery/floodlight.dm
@@ -16,7 +16,7 @@
..()
/obj/machinery/floodlight/update_icon()
- overlays.Cut()
+ cut_overlays()
icon_state = "flood[open ? "o" : ""][open && cell ? "b" : ""]0[on]"
/obj/machinery/floodlight/process()
diff --git a/code/game/machinery/floor_light.dm b/code/game/machinery/floor_light.dm
index 0a3f13fedc..b1211f1fd2 100644
--- a/code/game/machinery/floor_light.dm
+++ b/code/game/machinery/floor_light.dm
@@ -103,7 +103,7 @@ var/list/floor_light_cache = list()
update_icon()
/obj/machinery/floor_light/update_icon()
- overlays.Cut()
+ cut_overlays()
if(use_power && !broken())
if(isnull(damaged))
var/cache_key = "floorlight-[default_light_colour]"
@@ -112,7 +112,7 @@ var/list/floor_light_cache = list()
I.color = default_light_colour
I.layer = layer+0.001
floor_light_cache[cache_key] = I
- overlays |= floor_light_cache[cache_key]
+ add_overlay(floor_light_cache[cache_key])
else
if(damaged == 0) //Needs init.
damaged = rand(1,4)
@@ -122,7 +122,7 @@ var/list/floor_light_cache = list()
I.color = default_light_colour
I.layer = layer+0.001
floor_light_cache[cache_key] = I
- overlays |= floor_light_cache[cache_key]
+ add_overlay(floor_light_cache[cache_key])
/obj/machinery/floor_light/proc/broken()
return (stat & (BROKEN|NOPOWER))
diff --git a/code/game/machinery/gear_dispenser.dm b/code/game/machinery/gear_dispenser.dm
index c38e8766d1..28a7e93d96 100644
--- a/code/game/machinery/gear_dispenser.dm
+++ b/code/game/machinery/gear_dispenser.dm
@@ -6,6 +6,7 @@
#define GD_ONEITEM 2 // only one type of suit comes out of this dispenser.
#define GD_NOGREED 4 // no-one is allowed more than one item from this TYPE of dispenser unless emagged
#define GD_UNLIMITED 8 // will not deplete amount when gear is taken
+#define GD_UNIQUE 16 // each instance of this will allow people to take 1 thing
var/list/dispenser_presets = list()
@@ -86,8 +87,7 @@ var/list/dispenser_presets = list()
if(voidsuit.helmet)
error("[src] created a voidsuit [voidsuit] and wants to add a helmet but it already has one")
else
- voidhelmet = new voidhelmet_type(voidsuit)
- voidsuit.helmet = voidhelmet
+ voidsuit.attach_helmet(new voidhelmet_type())
spawned += voidhelmet
// If we're supposed to make boots
if(magboots_type)
@@ -155,6 +155,8 @@ var/list/dispenser_presets = list()
var/datum/gear_disp/one_setting
var/global/list/gear_distributed_to = list()
var/dispenser_flags = GD_NOGREED|GD_UNLIMITED
+ var/unique_dispense_list = list()
+ var/needs_power = 0
//req_one_access = list(whatever) // Note that each gear datum can have access, too.
/obj/machinery/gear_dispenser/custom/emag_act(remaining_charges, mob/user, emag_source)
@@ -199,6 +201,9 @@ var/list/dispenser_presets = list()
/obj/machinery/gear_dispenser/proc/can_use(var/mob/living/carbon/human/user)
var/list/used_by = gear_distributed_to["[type]"]
+ if(needs_power && inoperable())
+ to_chat(user,"The machine does not respond to your prodding. ")
+ return 0
if(!istype(user))
to_chat(user,"You can't use this! ")
return 0
@@ -208,15 +213,19 @@ var/list/dispenser_presets = list()
if((dispenser_flags & GD_ONEITEM) && !(dispenser_flags & GD_UNLIMITED) && !one_setting.amount)
to_chat(user,"There's nothing in here! ")
return 0
- if ((dispenser_flags & GD_NOGREED) && (weakref(user) in used_by) && !emagged)
- to_chat(user,"You've already picked up your gear! ")
- playsound(src, 'sound/machines/buzz-sigh.ogg', 50, 0)
- return 0
- if(emagged)
+ if (!emagged)
+ if ((dispenser_flags & GD_NOGREED) && (user.ckey in used_by))
+ to_chat(user,"You've already picked up your gear! ")
+ playsound(src, 'sound/machines/buzz-sigh.ogg', 50, 0)
+ return 0
+ if ((dispenser_flags & GD_UNIQUE) && (user.ckey in unique_dispense_list))
+ to_chat(user,"You've already picked up your gear! ")
+ playsound(src, 'sound/machines/buzz-sigh.ogg', 50, 0)
+ return 0
+ else
audible_message("!'^&YouVE alreaDY pIC&$!Ked UP yOU%r Ge^!ar.")
playsound(src, 'sound/machines/buzz-sigh.ogg', 100, 0)
- return 1
-
+ return 1
// And finally
if(allowed(user))
return 1
@@ -245,7 +254,10 @@ var/list/dispenser_presets = list()
else if(!(dispenser_flags & GD_UNLIMITED))
S.amount--
if((dispenser_flags & GD_NOGREED) && !emagged)
- gear_distributed_to["[type]"] |= weakref(user)
+ gear_distributed_to["[type]"] |= user.ckey
+ if((dispenser_flags & GD_UNIQUE) && !emagged)
+ unique_dispense_list |= user.ckey
+
flick("[icon_state]-scan",src)
visible_message("\The [src] scans its user.", runemessage = "hums")
sleep(30)
@@ -529,3 +541,216 @@ var/list/dispenser_presets = list()
running[option_name] = G
to_chat(usr, "[src] added [running.len] entries")
dispenses = running
+
+////////////////////////////// RANDOM SUIT AND WEAPON DISPENSERS ///////////////////////////
+
+/obj/machinery/gear_dispenser/randomvoidsuit
+ name = "Suit Dispenser"
+ desc = "An industrial U-Tak-It Dispenser unit designed to fetch voidsuits."
+ icon_state = "suitdispenserAL"
+ dispenser_flags = GD_ONEITEM|GD_NOGREED
+ one_setting = /datum/gear_disp/voidsuit/random
+
+/datum/gear_disp/voidsuit/random
+ name = "Voidsuit"
+ to_spawn = list()
+ amount = 4
+
+/datum/gear_disp/voidsuit/random/spawn_gear(var/turf/T, var/mob/living/carbon/user)
+ // I copied these from the /obj/random/multiple/voidsuit, but added the "suit" and "helmet"
+ var/list/choice = pick(
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void,
+ "helmet" = /obj/item/clothing/head/helmet/space/void
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/atmos,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/atmos
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/atmos/alt,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/atmos/alt
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/engineering,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/engineering
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/engineering/alt,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/engineering/alt
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/engineering/hazmat,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/engineering/hazmat
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/engineering/construction,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/engineering/construction
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/engineering/salvage,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/engineering/salvage
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/medical,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/medical
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/medical/alt,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/medical/alt
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/medical/bio,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/medical/bio
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/medical/emt,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/medical/emt
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/merc,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/merc
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/merc/fire,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/merc/fire
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/mining,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/mining
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/mining/alt,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/mining/alt
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/security,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/security
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/security/alt,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/security/alt
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/security/riot,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/security/riot
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/exploration,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/exploration
+ ),
+ prob(5);list(
+ "suit" = /obj/item/clothing/suit/space/void/pilot,
+ "helmet" = /obj/item/clothing/head/helmet/space/void/pilot
+ ))
+ voidsuit_type = choice["suit"]
+ voidhelmet_type = choice["helmet"]
+ return ..()
+
+/obj/machinery/gear_dispenser/randomweapons
+ name = "Weapon Dispenser"
+ desc = "An industrial U-Tak-It Dispenser unit designed to fetch weapons."
+ dispenser_flags = GD_ONEITEM|GD_NOGREED
+ one_setting = /datum/gear_disp/randomweapons
+
+/datum/gear_disp/randomweapons
+ name = "Weapon"
+ amount = 2
+
+/datum/gear_disp/randomweapons/spawn_gear(var/turf/T, var/mob/living/carbon/user)
+ var/choice = pick(
+ prob(3);/obj/random/multiple/gun/projectile/handgun,
+ prob(2);/obj/random/multiple/gun/projectile/smg,
+ prob(2);/obj/random/multiple/gun/projectile/shotgun,
+ prob(1);/obj/random/multiple/gun/projectile/rifle)
+ to_spawn = list(choice)
+ return ..()
+
+///////////////////Adventure Box//////////////////////////
+
+/obj/machinery/gear_dispenser/adventure_box
+ name = "Dispenser"
+ desc = "An industrial U-Tak-It Dispenser unit designed to fetch items that one might need in dangerous scenarios!"
+ dispenser_flags = GD_UNIQUE
+ dispenses = list(
+ /datum/gear_disp/adventure_box/awayloot,
+ /datum/gear_disp/adventure_box/food,
+ /datum/gear_disp/adventure_box/medical,
+ /datum/gear_disp/adventure_box/tools,
+ /datum/gear_disp/adventure_box/armor,
+ /datum/gear_disp/adventure_box/light
+ )
+ var/chance_to_delete = 0
+
+/obj/machinery/gear_dispenser/adventure_box/Initialize()
+ . = ..()
+ if(prob(chance_to_delete))
+ return INITIALIZE_HINT_QDEL
+
+/datum/gear_disp/adventure_box/medical
+ name = "Medkit"
+ to_spawn = list(/obj/random/firstaid)
+ amount = 2
+
+/datum/gear_disp/adventure_box/awayloot
+ name = "Curious Item"
+ to_spawn = list(/obj/random/awayloot/nofail)
+ amount = 5
+
+/datum/gear_disp/adventure_box/food
+ name = "Food Plate"
+ to_spawn = list(
+ /obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,
+ /obj/item/weapon/reagent_containers/food/snacks/no_raisin,
+ /obj/item/weapon/reagent_containers/food/drinks/tea
+ )
+ amount = 10
+
+/datum/gear_disp/adventure_box/tools
+ name = "Tools"
+ to_spawn = list(
+ /obj/random/tool,
+ /obj/random/tool,
+ /obj/random/tool,
+ /obj/item/weapon/storage/belt/utility
+ )
+ amount = 5
+
+/datum/gear_disp/adventure_box/armor
+ name = "Armor"
+ to_spawn = list(
+ /obj/item/clothing/suit/armor/vest,
+ /obj/item/clothing/head/helmet/bulletproof,
+ /obj/item/clothing/shoes/boots/jackboots
+ )
+ amount = 1
+
+/datum/gear_disp/adventure_box/light
+ name = "Flashlight"
+ to_spawn = list(/obj/item/device/flashlight/maglight)
+ amount = 2
+
+/datum/gear_disp/adventure_box/weapon
+ name = "Ranged Weapon"
+ amount = 1
+//from /obj/random/projectile/random
+/datum/gear_disp/adventure_box/weapon/spawn_gear(var/turf/T, var/mob/living/carbon/user)
+ var/choice = pick(
+ prob(3);/obj/random/multiple/gun/projectile/handgun,
+ prob(2);/obj/random/multiple/gun/projectile/smg,
+ prob(2);/obj/random/multiple/gun/projectile/shotgun,
+ prob(1);/obj/random/multiple/gun/projectile/rifle)
+ to_spawn = list(choice)
+ return ..()
+
+
+/obj/machinery/gear_dispenser/adventure_box/weapon
+ dispenses = list(
+ /datum/gear_disp/adventure_box/awayloot,
+ /datum/gear_disp/adventure_box/food,
+ /datum/gear_disp/adventure_box/medical,
+ /datum/gear_disp/adventure_box/tools,
+ /datum/gear_disp/adventure_box/armor,
+ /datum/gear_disp/adventure_box/light,
+ /datum/gear_disp/adventure_box/weapon
+ )
\ No newline at end of file
diff --git a/code/game/machinery/iv_drip.dm b/code/game/machinery/iv_drip.dm
index 0f57b816d0..5a63fd03be 100644
--- a/code/game/machinery/iv_drip.dm
+++ b/code/game/machinery/iv_drip.dm
@@ -16,7 +16,7 @@
else
icon_state = ""
- overlays = null
+ cut_overlays()
if(beaker)
var/datum/reagents/reagents = beaker.reagents
@@ -34,7 +34,7 @@
if(91 to INFINITY) filling.icon_state = "reagent100"
filling.icon += reagents.get_color()
- overlays += filling
+ add_overlay(filling)
/obj/machinery/iv_drip/MouseDrop(over_object, src_location, over_location)
..()
diff --git a/code/game/machinery/jukebox.dm b/code/game/machinery/jukebox.dm
index c8683e0d00..06323a4f06 100644
--- a/code/game/machinery/jukebox.dm
+++ b/code/game/machinery/jukebox.dm
@@ -140,7 +140,7 @@
update_icon()
/obj/machinery/media/jukebox/update_icon()
- overlays.Cut()
+ cut_overlays()
if(stat & (NOPOWER|BROKEN) || !anchored)
if(stat & BROKEN)
icon_state = "[state_base]-broken"
@@ -150,11 +150,11 @@
icon_state = state_base
if(playing)
if(emagged)
- overlays += "[state_base]-emagged"
+ add_overlay("[state_base]-emagged")
else
- overlays += "[state_base]-running"
+ add_overlay("[state_base]-running")
if (panel_open)
- overlays += "panel_open"
+ add_overlay("panel_open")
/obj/machinery/media/jukebox/interact(mob/user)
if(inoperable())
diff --git a/code/game/machinery/lightswitch.dm b/code/game/machinery/lightswitch.dm
index c078b854d0..89bd996dea 100644
--- a/code/game/machinery/lightswitch.dm
+++ b/code/game/machinery/lightswitch.dm
@@ -11,6 +11,7 @@
use_power = USE_POWER_IDLE
idle_power_usage = 10
power_channel = LIGHT
+ blocks_emissive = FALSE
var/on = 1
var/area/area = null
var/otherarea = null
@@ -36,19 +37,18 @@
return ..()
/obj/machinery/light_switch/proc/updateicon()
- if(!overlay)
- overlay = image(icon, "light1-overlay")
- overlay.plane = PLANE_LIGHTING_ABOVE
-
- overlays.Cut()
+ cut_overlays()
if(stat & NOPOWER)
icon_state = "light-p"
set_light(0)
else
icon_state = "light[on]"
- overlay.icon_state = "light[on]-overlay"
- overlays += overlay
set_light(2, 0.1, on ? "#82FF4C" : "#F86060")
+ . = list()
+ . += emissive_appearance(icon, "light[on]-overlay")
+
+ return add_overlay(.)
+
/obj/machinery/light_switch/examine(mob/user)
. = ..()
diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm
index 47d26c7ab1..1900811c8a 100644
--- a/code/game/machinery/machinery.dm
+++ b/code/game/machinery/machinery.dm
@@ -114,6 +114,8 @@ Class Procs:
var/speed_process = FALSE //If false, SSmachines. If true, SSfastprocess.
+ blocks_emissive = EMISSIVE_BLOCK_GENERIC
+
/obj/machinery/New(l, d=0)
..(l)
if(d)
diff --git a/code/game/machinery/newscaster.dm b/code/game/machinery/newscaster.dm
index 8e980e3fbf..f7f4e31d1f 100644
--- a/code/game/machinery/newscaster.dm
+++ b/code/game/machinery/newscaster.dm
@@ -186,21 +186,20 @@ GLOBAL_LIST_BOILERPLATE(allCasters, /obj/machinery/newscaster)
if(!ispowered || isbroken)
icon_state = "newscaster_off"
if(isbroken) //If the thing is smashed, add crack overlay on top of the unpowered sprite.
- overlays.Cut()
- overlays += image(icon, "crack3")
+ cut_overlays()
+ add_overlay("crack3")
return
- overlays.Cut() //reset overlays
-
+ cut_overlays() //reset overlays
if(news_network.wanted_issue) //wanted icon state, there can be no overlays on it as it's a priority message
icon_state = "newscaster_wanted"
return
if(alert) //new message alert overlay
- overlays += "newscaster_alert"
+ add_overlay("newscaster_alert")
if(hitstaken > 0) //Cosmetic damage overlay
- overlays += image(icon, "crack[hitstaken]")
+ add_overlay("crack[hitstaken]")
icon_state = "newscaster_normal"
return
diff --git a/code/game/machinery/nuclear_bomb.dm b/code/game/machinery/nuclear_bomb.dm
index 8d6a55b3fd..536da9fd0b 100644
--- a/code/game/machinery/nuclear_bomb.dm
+++ b/code/game/machinery/nuclear_bomb.dm
@@ -61,19 +61,19 @@ var/bomb_set
if(auth)
if(opened == 0)
opened = 1
- overlays += image(icon, "npanel_open")
+ add_overlay("npanel_open")
to_chat(user, "You unscrew the control panel of [src].")
else
opened = 0
- overlays -= image(icon, "npanel_open")
+ cut_overlay("npanel_open")
to_chat(user, "You screw the control panel of [src] back on.")
else
if(opened == 0)
to_chat(user, "The [src] emits a buzzing noise, the panel staying locked in.")
if(opened == 1)
opened = 0
- overlays -= image(icon, "npanel_open")
+ cut_overlay("npanel_open")
to_chat(user, "You screw the control panel of [src] back on.")
flick("nuclearbombc", src)
diff --git a/code/game/machinery/pointdefense.dm b/code/game/machinery/pointdefense.dm
index 93f3f2eaf7..b1d052ab61 100644
--- a/code/game/machinery/pointdefense.dm
+++ b/code/game/machinery/pointdefense.dm
@@ -191,13 +191,16 @@ GLOBAL_LIST_BOILERPLATE(pointdefense_turrets, /obj/machinery/power/pointdefense)
update_icon()
// Decide where to get the power to fire from
-/obj/machinery/power/pointdefense/use_power_oneoff(var/amount, var/chan = -1)
+/obj/machinery/power/pointdefense/use_power_oneoff(var/amount, var/chan = CURRENT_CHANNEL)
if(powernet)
return draw_power(amount)
- else if(powered(chan))
- use_power(amount, chan)
- return amount
- return 0
+ // We are not connected to a powernet, so we want APC power. Reproduce that code here since this is weird.
+ if(chan == CURRENT_CHANNEL)
+ chan = power_channel
+ var/area/A = get_area(src) // make sure it's in an area
+ if(!A || !A.powered(chan)) // and that the area is powered
+ return 0 // if not, then not powered
+ return A.use_power_oneoff(amount, chan)
// Find controller with the same tag on connected z levels (if any)
/obj/machinery/power/pointdefense/proc/get_controller()
diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm
index d4068974ae..6af917ad03 100644
--- a/code/game/machinery/portable_turret.dm
+++ b/code/game/machinery/portable_turret.dm
@@ -45,6 +45,7 @@
active_power_usage = 300 //when active, this turret takes up constant 300 Equipment power
power_channel = EQUIP //drains power from the EQUIPMENT channel
req_one_access = list(access_security, access_heads)
+ blocks_emissive = EMISSIVE_BLOCK_UNIQUE
var/raised = FALSE //if the turret cover is "open" and the turret is raised
var/raising= FALSE //if the turret is currently opening or closing its cover
diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm
index 34d988e483..cf2d4a978d 100644
--- a/code/game/machinery/rechargestation.dm
+++ b/code/game/machinery/rechargestation.dm
@@ -197,20 +197,20 @@
desc += " It is capable of repairing burn damage."
/obj/machinery/recharge_station/proc/build_overlays()
- overlays.Cut()
+ cut_overlay()
switch(round(chargepercentage()))
if(1 to 20)
- overlays += image('icons/obj/objects.dmi', "statn_c0")
+ add_overlay("statn_c0")
if(21 to 40)
- overlays += image('icons/obj/objects.dmi', "statn_c20")
+ add_overlay("statn_c20")
if(41 to 60)
- overlays += image('icons/obj/objects.dmi', "statn_c40")
+ add_overlay("statn_c40")
if(61 to 80)
- overlays += image('icons/obj/objects.dmi', "statn_c60")
+ add_overlay("statn_c60")
if(81 to 98)
- overlays += image('icons/obj/objects.dmi', "statn_c80")
+ add_overlay("statn_c80")
if(99 to 110)
- overlays += image('icons/obj/objects.dmi', "statn_c100")
+ add_overlay("statn_c100")
/obj/machinery/recharge_station/update_icon()
..()
diff --git a/code/game/machinery/robot_fabricator.dm b/code/game/machinery/robot_fabricator.dm
index 5bbb4ac6be..109e17d6a1 100644
--- a/code/game/machinery/robot_fabricator.dm
+++ b/code/game/machinery/robot_fabricator.dm
@@ -16,7 +16,7 @@
var/obj/item/stack/M = O
if(metal_amount < 150000.0)
var/count = 0
- overlays += "fab-load-metal"
+ add_overlay("fab-load-metal")
spawn(15)
if(M)
if(!M.get_amount())
@@ -27,7 +27,7 @@
count++
to_chat(user, "You insert [count] metal sheet\s into the fabricator.")
- overlays -= "fab-load-metal"
+ cut_overlay("fab-load-metal")
updateDialog()
else
to_chat(user, "The robot part maker is full. Please remove metal from the robot part maker in order to insert more.")
@@ -121,7 +121,7 @@ Please wait until completion...
being_built = new building(src)
- overlays += "fab-active"
+ add_overlay("fab-active")
updateUsrDialog()
spawn (build_time)
@@ -130,7 +130,7 @@ Please wait until completion...
being_built = null
update_use_power(USE_POWER_IDLE)
operating = 0
- overlays -= "fab-active"
+ cut_overlay("fab-active")
return
for (var/mob/M in viewers(1, src))
diff --git a/code/game/machinery/spaceheater.dm b/code/game/machinery/spaceheater.dm
index 54aac0a5ff..6497d8a217 100644
--- a/code/game/machinery/spaceheater.dm
+++ b/code/game/machinery/spaceheater.dm
@@ -20,10 +20,10 @@
update_icon()
/obj/machinery/space_heater/update_icon()
- overlays.Cut()
+ cut_overlays()
icon_state = "sheater[on]"
if(panel_open)
- overlays += "sheater-open"
+ add_overlay("sheater-open")
if(on)
set_light(3, 3, "#FFCC00")
else
diff --git a/code/game/machinery/status_display.dm b/code/game/machinery/status_display.dm
index 949b8a4df6..819774d0e3 100644
--- a/code/game/machinery/status_display.dm
+++ b/code/game/machinery/status_display.dm
@@ -198,7 +198,7 @@
if(!picture || picture_state != state)
picture_state = state
picture = image('icons/obj/status_display.dmi', icon_state=picture_state)
- overlays |= picture
+ add_overlay(picture)
/obj/machinery/status_display/proc/update_display(line1, line2)
var/new_text = {"[line1] [line2]
"}
@@ -234,8 +234,7 @@
return ""
/obj/machinery/status_display/proc/remove_display()
- if(overlays.len)
- overlays.Cut()
+ cut_overlays()
if(maptext)
maptext = ""
diff --git a/code/game/machinery/status_display_ai.dm b/code/game/machinery/status_display_ai.dm
index 4a88b7248b..4f8d9f8954 100644
--- a/code/game/machinery/status_display_ai.dm
+++ b/code/game/machinery/status_display_ai.dm
@@ -90,7 +90,7 @@ var/list/ai_status_emotions = list(
/obj/machinery/ai_status_display/proc/update()
if(mode==0) //Blank
- overlays.Cut()
+ cut_overlays()
return
if(mode==1) // AI emoticon
@@ -104,14 +104,12 @@ var/list/ai_status_emotions = list(
/obj/machinery/ai_status_display/proc/set_picture(var/state)
picture_state = state
- if(overlays.len)
- overlays.Cut()
- overlays += image('icons/obj/status_display.dmi', icon_state=picture_state)
+ cut_overlays()
+ add_overlay(picture_state)
/obj/machinery/ai_status_display/power_change()
..()
if(stat & NOPOWER)
- if(overlays.len)
- overlays.Cut()
+ cut_overlays()
else
update()
diff --git a/code/game/machinery/suit_storage_unit_vr.dm b/code/game/machinery/suit_storage_unit_vr.dm
index 8aa17f6770..fd633c2e72 100644
--- a/code/game/machinery/suit_storage_unit_vr.dm
+++ b/code/game/machinery/suit_storage_unit_vr.dm
@@ -6,7 +6,7 @@
/obj/machinery/suit_cycler/exploration
req_access = null
req_one_access = list(access_explorer,access_medical_equip)
- departments = list("Exploration","Expedition Medic","No Change")
+ departments = list("Exploration","Field Medic","No Change")
/obj/machinery/suit_cycler/pilot
req_access = list(access_pilot)
diff --git a/code/game/mecha/equipment/tools/shield.dm b/code/game/mecha/equipment/tools/shield.dm
index 497d670313..8ee94b162e 100644
--- a/code/game/mecha/equipment/tools/shield.dm
+++ b/code/game/mecha/equipment/tools/shield.dm
@@ -28,7 +28,7 @@
return
/obj/item/mecha_parts/mecha_equipment/combat_shield/Destroy()
- chassis.overlays -= drone_overlay
+ chassis.cut_overlay(drone_overlay)
my_shield.forceMove(src)
my_shield.destroy_shields()
my_shield.my_tool = null
@@ -41,7 +41,7 @@
..()
if(!drone_overlay)
drone_overlay = new(src.icon, icon_state = "shield_droid")
- M.overlays += drone_overlay
+ M.add_overlay(drone_overlay)
return
/obj/item/mecha_parts/mecha_equipment/combat_shield/attach(obj/mecha/M as obj)
@@ -53,7 +53,7 @@
return
/obj/item/mecha_parts/mecha_equipment/combat_shield/detach()
- chassis.overlays -= drone_overlay
+ chassis.cut_overlay(drone_overlay)
..()
my_shield.destroy_shields()
my_shield.my_mecha = null
diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm
index 4a3a105e9a..92215b3963 100644
--- a/code/game/mecha/mech_fabricator.dm
+++ b/code/game/mecha/mech_fabricator.dm
@@ -630,9 +630,9 @@
flick("[loading_icon_state]", src)
// yess hacky but whatever
if(loading_icon_state == "mechfab-idle")
- overlays += "mechfab-load-metal"
+ add_overlay("mechfab-load-metal")
spawn(10)
- overlays -= "mechfab-load-metal"
+ cut_overlays("mechfab-load-metal")
while(materials[S.material.name] + amnt <= res_max_amount && S.get_amount() >= 1)
materials[S.material.name] += amnt
S.use(1)
diff --git a/code/game/mecha/mecha_construction_paths.dm b/code/game/mecha/mecha_construction_paths.dm
index e345013e3d..467145309b 100644
--- a/code/game/mecha/mecha_construction_paths.dm
+++ b/code/game/mecha/mecha_construction_paths.dm
@@ -79,7 +79,7 @@
/datum/construction/mecha/ripley_chassis/custom_action(step, obj/item/I, mob/user)
user.visible_message("[user] has connected [I] to [holder].", "You connect [I] to [holder]")
- holder.overlays += I.icon_state+"+o"
+ holder.add_overlay(I.icon_state+"+o")
qdel(I)
return 1
@@ -291,7 +291,7 @@
/datum/construction/mecha/gygax_chassis/custom_action(step, obj/item/I, mob/user)
user.visible_message("[user] has connected [I] to [holder].", "You connect [I] to [holder]")
- holder.overlays += I.icon_state+"+o"
+ holder.add_overlay(I.icon_state+"+o")
qdel(I)
return 1
@@ -575,7 +575,7 @@
/datum/construction/mecha/serenity_chassis/custom_action(step, obj/item/I, mob/user)
user.visible_message("[user] has connected [I] to [holder].", "You connect [I] to [holder]")
- holder.overlays += I.icon_state+"+o"
+ holder.add_overlay(I.icon_state+"+o")
qdel(I)
return 1
@@ -860,7 +860,7 @@
/datum/construction/mecha/firefighter_chassis/custom_action(step, obj/item/I, mob/user)
user.visible_message("[user] has connected [I] to [holder].", "You connect [I] to [holder]")
- holder.overlays += I.icon_state+"+o"
+ holder.add_overlay(I.icon_state+"+o")
user.drop_item()
qdel(I)
return 1
@@ -1085,7 +1085,7 @@
/datum/construction/mecha/durand_chassis/custom_action(step, obj/item/I, mob/user)
user.visible_message("[user] has connected [I] to [holder].", "You connect [I] to [holder]")
- holder.overlays += I.icon_state+"+o"
+ holder.add_overlay(I.icon_state+"+o")
qdel(I)
return 1
@@ -1369,7 +1369,7 @@
/datum/construction/mecha/odysseus_chassis/custom_action(step, obj/item/I, mob/user)
user.visible_message("[user] has connected [I] to [holder].", "You connect [I] to [holder]")
- holder.overlays += I.icon_state+"+o"
+ holder.add_overlay(I.icon_state+"+o")
qdel(I)
return 1
@@ -1582,7 +1582,7 @@
/datum/construction/mecha/phazon_chassis/custom_action(step, obj/item/I, mob/user)
user.visible_message("[user] has connected [I] to [holder].", "You connect [I] to [holder]")
- holder.overlays += I.icon_state+"+o"
+ holder.add_overlay(I.icon_state+"+o")
qdel(I)
return 1
@@ -1864,7 +1864,7 @@
/datum/construction/mecha/janus_chassis/custom_action(step, obj/item/I, mob/user)
user.visible_message("[user] has connected [I] to [holder].", "You connect [I] to [holder]")
- holder.overlays += I.icon_state+"+o"
+ holder.add_overlay(I.icon_state+"+o")
qdel(I)
return 1
diff --git a/code/game/mecha/micro/mecha_construction_paths_vr.dm b/code/game/mecha/micro/mecha_construction_paths_vr.dm
index a63322b5a3..637a5ab36c 100644
--- a/code/game/mecha/micro/mecha_construction_paths_vr.dm
+++ b/code/game/mecha/micro/mecha_construction_paths_vr.dm
@@ -9,7 +9,7 @@
custom_action(step, atom/used_atom, mob/user)
user.visible_message("[user] has connected [used_atom] to [holder].", "You connect [used_atom] to [holder]")
- holder.overlays += used_atom.icon_state+"+o"
+ holder.add_overlay(used_atom.icon_state+"+o")
qdel(used_atom)
return 1
@@ -289,7 +289,7 @@
custom_action(step, atom/used_atom, mob/user)
user.visible_message("[user] has connected [used_atom] to [holder].", "You connect [used_atom] to [holder]")
- holder.overlays += used_atom.icon_state+"+o"
+ holder.add_overlay(used_atom.icon_state+"+o")
qdel(used_atom)
return 1
@@ -497,7 +497,7 @@
custom_action(step, atom/used_atom, mob/user)
user.visible_message("[user] has connected [used_atom] to [holder].", "You connect [used_atom] to [holder]")
- holder.overlays += used_atom.icon_state+"+o"
+ holder.add_overlay(used_atom.icon_state+"+o")
qdel(used_atom)
return 1
diff --git a/code/game/mecha/working/ripley.dm b/code/game/mecha/working/ripley.dm
index 4e92f757d2..ce54008c45 100644
--- a/code/game/mecha/working/ripley.dm
+++ b/code/game/mecha/working/ripley.dm
@@ -27,6 +27,19 @@
icon_scale_x = 1.2
icon_scale_y = 1.2
+/obj/mecha/working/ripley/Move()
+ . = ..()
+ if(.)
+ collect_ore()
+
+/obj/mecha/working/ripley/proc/collect_ore()
+ if(locate(/obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp) in equipment)
+ var/obj/structure/ore_box/ore_box = locate(/obj/structure/ore_box) in cargo
+ if(ore_box)
+ for(var/obj/item/weapon/ore/ore in range(1, src))
+ if(ore.Adjacent(src) && ((get_dir(src, ore) & dir) || ore.loc == loc)) //we can reach it and it's in front of us? grab it!
+ ore.forceMove(ore_box)
+
/obj/mecha/working/ripley/Destroy()
for(var/atom/movable/A in src.cargo)
A.loc = loc
diff --git a/code/game/objects/effects/alien/aliens.dm b/code/game/objects/effects/alien/aliens.dm
index 836e277872..91aea937ff 100644
--- a/code/game/objects/effects/alien/aliens.dm
+++ b/code/game/objects/effects/alien/aliens.dm
@@ -203,6 +203,7 @@
desc = "Weird glowing organic growth."
layer = ABOVE_TURF_LAYER+0.01
light_range = NODERANGE
+ light_on = TRUE
var/node_range = NODERANGE
var/set_color = "#321D37"
diff --git a/code/game/objects/effects/decals/Cleanable/humans.dm b/code/game/objects/effects/decals/Cleanable/humans.dm
index 2a37edf708..c9ae326bf2 100644
--- a/code/game/objects/effects/decals/Cleanable/humans.dm
+++ b/code/game/objects/effects/decals/Cleanable/humans.dm
@@ -87,10 +87,10 @@ var/global/list/image/splatter_cache=list()
if(!S.blood_DNA)
S.blood_DNA = list()
S.blood_overlay.color = basecolor
- S.overlays += S.blood_overlay
+ S.add_overlay(S.blood_overlay)
if(S.blood_overlay && S.blood_overlay.color != basecolor)
S.blood_overlay.color = basecolor
- S.overlays += S.blood_overlay
+ S.add_overlay(S.blood_overlay)
S.blood_DNA |= blood_DNA.Copy()
perp.update_inv_shoes()
@@ -191,8 +191,8 @@ var/global/list/image/splatter_cache=list()
blood.Blend(basecolor,ICON_MULTIPLY)
icon = blood
- overlays.Cut()
- overlays += giblets
+ cut_overlays()
+ add_overlay(giblets)
/obj/effect/decal/cleanable/blood/gibs/up
random_icon_states = list("gib1", "gib2", "gib3", "gib5", "gib6","gibup1","gibup1","gibup1")
diff --git a/code/game/objects/effects/decals/Cleanable/tracks.dm b/code/game/objects/effects/decals/Cleanable/tracks.dm
index 934068f25b..a650980779 100644
--- a/code/game/objects/effects/decals/Cleanable/tracks.dm
+++ b/code/game/objects/effects/decals/Cleanable/tracks.dm
@@ -129,7 +129,7 @@ var/global/list/image/fluidtrack_cache=list()
update_icon()
update_icon()
- overlays.Cut()
+ cut_overlays()
color = "#FFFFFF"
var/truedir=0
@@ -150,7 +150,7 @@ var/global/list/image/fluidtrack_cache=list()
track.fresh=0
track.overlay=I
stack[stack_idx]=track
- overlays += I
+ add_overlay(I)
updatedtracks=0 // Clear our memory of updated tracks.
/obj/effect/decal/cleanable/blood/tracks/footprints
diff --git a/code/game/objects/effects/decals/crayon.dm b/code/game/objects/effects/decals/crayon.dm
index 55bb54b803..8ae1fd4bb0 100644
--- a/code/game/objects/effects/decals/crayon.dm
+++ b/code/game/objects/effects/decals/crayon.dm
@@ -24,7 +24,7 @@
mainOverlay.Blend(main,ICON_ADD)
shadeOverlay.Blend(shade,ICON_ADD)
- overlays += mainOverlay
- overlays += shadeOverlay
+ add_overlay(mainOverlay)
+ add_overlay(shadeOverlay)
add_hiddenprint(usr)
\ No newline at end of file
diff --git a/code/game/objects/effects/decals/warning_stripes.dm b/code/game/objects/effects/decals/warning_stripes.dm
index 0e3d12897d..e69c90a8d8 100644
--- a/code/game/objects/effects/decals/warning_stripes.dm
+++ b/code/game/objects/effects/decals/warning_stripes.dm
@@ -6,5 +6,5 @@
var/turf/T=get_turf(src)
var/image/I=image(icon, icon_state = icon_state, dir = dir)
I.color=color
- T.overlays += I
+ T.add_overlay(I)
return INITIALIZE_HINT_QDEL
diff --git a/code/game/objects/effects/effect_system.dm b/code/game/objects/effects/effect_system.dm
index 7033648dea..f18eb727eb 100644
--- a/code/game/objects/effects/effect_system.dm
+++ b/code/game/objects/effects/effect_system.dm
@@ -4,7 +4,8 @@ defined, then set up when it is created with New(). Then this same system can ju
it needs to create more trails.A beaker could have a steam_trail_follow system set up, then the steam
would spawn and follow the beaker, even if it is carried or thrown.
*/
-
+/obj/effect
+ light_on = TRUE
/obj/effect/effect
name = "effect"
@@ -12,6 +13,8 @@ would spawn and follow the beaker, even if it is carried or thrown.
mouse_opacity = 0
unacidable = 1//So effect are not targeted by alien acid.
pass_flags = PASSTABLE | PASSGRILLE
+ blocks_emissive = EMISSIVE_BLOCK_GENERIC
+ light_on = TRUE
/datum/effect/effect/system
var/number = 3
diff --git a/code/game/objects/effects/map_effects/perma_light.dm b/code/game/objects/effects/map_effects/perma_light.dm
index a48e768fc7..35eef6d6b0 100644
--- a/code/game/objects/effects/map_effects/perma_light.dm
+++ b/code/game/objects/effects/map_effects/perma_light.dm
@@ -7,6 +7,7 @@
light_range = 3
light_power = 1
light_color = "#FFFFFF"
+ light_on = TRUE
/obj/effect/map_effect/perma_light/brighter
name = "permanent light (bright)"
@@ -25,4 +26,14 @@
/obj/effect/map_effect/perma_light/concentrated/incandescent
name = "permanent light (concentrated incandescent)"
- light_color = LIGHT_COLOR_INCANDESCENT_TUBE
\ No newline at end of file
+ light_color = LIGHT_COLOR_INCANDESCENT_TUBE
+
+// VOREStation Addition Start
+/obj/effect/map_effect/perma_light/gateway
+ name = "permanent light (gateway)"
+ icon_state = "permalight"
+
+ light_range = 10
+ light_power = 5
+ light_color = "#b6cdff"
+// VOREStation Addition End
\ No newline at end of file
diff --git a/code/game/objects/effects/misc.dm b/code/game/objects/effects/misc.dm
index 5958f79d00..aac5b6ffa0 100644
--- a/code/game/objects/effects/misc.dm
+++ b/code/game/objects/effects/misc.dm
@@ -61,4 +61,42 @@
/obj/effect/temporary_effect/lightning_strike/Initialize()
icon_state += "[rand(1,2)]" // To have two variants of lightning sprites.
animate(src, alpha = 0, time = time_to_die - 1)
- . = ..()
\ No newline at end of file
+ . = ..()
+
+/obj/effect/dummy/lighting_obj
+ name = "lighting fx obj"
+ desc = "Tell a coder if you're seeing this."
+ icon_state = "nothing"
+ light_system = MOVABLE_LIGHT
+ light_range = MINIMUM_USEFUL_LIGHT_RANGE
+ light_color = COLOR_WHITE
+ mouse_opacity = MOUSE_OPACITY_TRANSPARENT
+ light_on = TRUE
+ blocks_emissive = FALSE
+
+/obj/effect/dummy/lighting_obj/Initialize(mapload, _range, _power, _color, _duration)
+ . = ..()
+ if(!isnull(_range))
+ set_light_range(_range)
+ if(!isnull(_power))
+ set_light_power(_power)
+ if(!isnull(_color))
+ set_light_color(_color)
+ if(_duration)
+ QDEL_IN(src, _duration)
+
+/obj/effect/dummy/lighting_obj/moblight
+ name = "mob lighting fx"
+
+/obj/effect/dummy/lighting_obj/moblight/Initialize(mapload, _color, _range, _power, _duration)
+ . = ..()
+ if(!ismob(loc))
+ return INITIALIZE_HINT_QDEL
+
+/obj/effect/dummy/lighting_obj/moblight/fire
+ name = "fire"
+ light_color = LIGHT_COLOR_FIRE
+ light_range = LIGHT_RANGE_FIRE
+
+/obj/effect/abstract/directional_lighting
+ mouse_opacity = MOUSE_OPACITY_TRANSPARENT
diff --git a/code/game/objects/effects/overlays.dm b/code/game/objects/effects/overlays.dm
index b1c00bb79a..a16e5092c5 100644
--- a/code/game/objects/effects/overlays.dm
+++ b/code/game/objects/effects/overlays.dm
@@ -111,3 +111,48 @@
plane = PLANE_LIGHTING_ABOVE
pixel_x = -32
pixel_y = -32
+
+/obj/effect/overlay/vis
+ mouse_opacity = MOUSE_OPACITY_TRANSPARENT
+ anchored = TRUE
+ vis_flags = VIS_INHERIT_DIR
+ ///When detected to be unused it gets set to world.time, after a while it gets removed
+ var/unused = 0
+ ///overlays which go unused for this amount of time get cleaned up
+ var/cache_expiration = 2 MINUTES
+
+/*
+/obj/effect/overlay/atmos_excited
+ name = "excited group"
+ icon = null
+ icon_state = null
+ anchored = TRUE // should only appear in vis_contents, but to be safe
+ appearance_flags = RESET_TRANSFORM | TILE_BOUND
+ invisibility = INVISIBILITY_ABSTRACT
+ mouse_opacity = MOUSE_OPACITY_TRANSPARENT
+
+ plane = ATMOS_GROUP_PLANE
+*/
+
+/obj/effect/overlay/light_visible
+ name = ""
+ icon = 'icons/effects/light_overlays/light_32.dmi'
+ icon_state = "light"
+ plane = PLANE_O_LIGHTING_VISUAL
+ appearance_flags = RESET_COLOR | RESET_ALPHA | RESET_TRANSFORM
+ mouse_opacity = MOUSE_OPACITY_TRANSPARENT
+ alpha = 0
+ vis_flags = NONE
+ blocks_emissive = FALSE
+
+/obj/effect/overlay/light_cone
+ name = ""
+ icon = 'icons/effects/light_overlays/light_cone.dmi'
+ icon_state = "light"
+ plane = PLANE_O_LIGHTING_VISUAL
+ appearance_flags = RESET_COLOR | RESET_ALPHA | RESET_TRANSFORM
+ mouse_opacity = MOUSE_OPACITY_TRANSPARENT
+ vis_flags = NONE
+ alpha = 110
+ blocks_emissive = FALSE
+
\ No newline at end of file
diff --git a/code/game/objects/effects/semirandom_mobs_vr.dm b/code/game/objects/effects/semirandom_mobs_vr.dm
new file mode 100644
index 0000000000..ae5230f976
--- /dev/null
+++ b/code/game/objects/effects/semirandom_mobs_vr.dm
@@ -0,0 +1,1039 @@
+var/global/list/semirandom_mob_spawner_decisions = list()
+
+/obj/random/mob/semirandom_mob_spawner
+ name = "Semi-Random Spawner"
+ desc = "Spawns groups of mobs that are all of the same theme type/theme."
+ icon = 'icons/mob/randomlandmarks.dmi'
+ icon_state = "monster"
+ mob_returns_home = 1
+ mob_wander_distance = 7
+
+ var/list/possible_mob_types = list(
+ list(/mob/living/simple_mob/animal/goat),
+ list(
+ /mob/living/simple_mob/animal/passive/bird,
+ /mob/living/simple_mob/animal/passive/bird/azure_tit,
+ /mob/living/simple_mob/animal/passive/bird/black_bird,
+ /mob/living/simple_mob/animal/passive/bird/european_robin,
+ /mob/living/simple_mob/animal/passive/bird/goldcrest,
+ /mob/living/simple_mob/animal/passive/bird/ringneck_dove,
+ /mob/living/simple_mob/animal/passive/bird/parrot,
+ /mob/living/simple_mob/animal/passive/bird/parrot/black_headed_caique,
+ /mob/living/simple_mob/animal/passive/bird/parrot/budgerigar,
+ /mob/living/simple_mob/animal/passive/bird/parrot/budgerigar/blue,
+ /mob/living/simple_mob/animal/passive/bird/parrot/budgerigar/bluegreen,
+ /mob/living/simple_mob/animal/passive/bird/parrot/cockatiel,
+ /mob/living/simple_mob/animal/passive/bird/parrot/cockatiel/grey,
+ /mob/living/simple_mob/animal/passive/bird/parrot/cockatiel/white,
+ /mob/living/simple_mob/animal/passive/bird/parrot/cockatiel/yellowish,
+ /mob/living/simple_mob/animal/passive/bird/parrot/eclectus,
+ /mob/living/simple_mob/animal/passive/bird/parrot/grey_parrot,
+ /mob/living/simple_mob/animal/passive/bird/parrot/kea,
+ /mob/living/simple_mob/animal/passive/bird/parrot/pink_cockatoo,
+ /mob/living/simple_mob/animal/passive/bird/parrot/sulphur_cockatoo,
+ /mob/living/simple_mob/animal/passive/bird/parrot/white_caique,
+ /mob/living/simple_mob/animal/passive/bird/parrot/white_cockatoo
+ ),
+ list(
+ /mob/living/simple_mob/animal/passive/cat,
+ /mob/living/simple_mob/animal/passive/cat/black
+ ),
+ list(/mob/living/simple_mob/animal/passive/chick),
+ list(/mob/living/simple_mob/animal/passive/cow),
+ list(/mob/living/simple_mob/animal/passive/dog/brittany),
+ list(/mob/living/simple_mob/animal/passive/dog/corgi),
+ list(/mob/living/simple_mob/animal/passive/dog/tamaskan),
+ list(/mob/living/simple_mob/animal/passive/fox),
+ list(/mob/living/simple_mob/animal/passive/hare),
+ list(/mob/living/simple_mob/animal/passive/lizard),
+ list(/mob/living/simple_mob/animal/passive/mouse),
+ list(/mob/living/simple_mob/animal/passive/mouse/jerboa),
+ list(/mob/living/simple_mob/animal/passive/opossum),
+ list(/mob/living/simple_mob/animal/passive/pillbug),
+ list(/mob/living/simple_mob/animal/passive/snake),
+ list(/mob/living/simple_mob/animal/passive/tindalos),
+ list(/mob/living/simple_mob/animal/passive/yithian),
+ list(
+ /mob/living/simple_mob/animal/wolf = 10,
+ /mob/living/simple_mob/animal/wolf/direwolf = 1
+ ),
+ list(/mob/living/simple_mob/vore/rabbit),
+ list(/mob/living/simple_mob/vore/redpanda),
+ list(/mob/living/simple_mob/vore/woof),
+ list(/mob/living/simple_mob/vore/fennec),
+ list(/mob/living/simple_mob/vore/fennix),
+ list(/mob/living/simple_mob/vore/hippo),
+ list(/mob/living/simple_mob/vore/horse),
+ list(/mob/living/simple_mob/vore/bee),
+ list(
+ /mob/living/simple_mob/animal/space/bear,
+ /mob/living/simple_mob/animal/space/bear/brown
+ ),
+ list(
+ /mob/living/simple_mob/otie/feral,
+ /mob/living/simple_mob/otie/feral/chubby,
+ /mob/living/simple_mob/otie/red,
+ /mob/living/simple_mob/otie/red/chubby
+ ),
+ list(/mob/living/simple_mob/animal/sif/diyaab),
+ list(/mob/living/simple_mob/animal/sif/duck),
+ list(/mob/living/simple_mob/animal/sif/frostfly),
+ list(
+ /mob/living/simple_mob/animal/sif/glitterfly =50,
+ /mob/living/simple_mob/animal/sif/glitterfly/rare = 1
+ ),
+ list(
+ /mob/living/simple_mob/animal/sif/kururak = 10,
+ /mob/living/simple_mob/animal/sif/kururak/leader = 1,
+ /mob/living/simple_mob/animal/sif/kururak/hibernate = 2,
+ ),
+ list(
+ /mob/living/simple_mob/animal/sif/sakimm = 10,
+ /mob/living/simple_mob/animal/sif/sakimm/intelligent = 1
+ ),
+ list(/mob/living/simple_mob/animal/sif/savik) = 5,
+ list(
+ /mob/living/simple_mob/animal/sif/shantak = 10,
+ /mob/living/simple_mob/animal/sif/shantak/leader = 1
+ ),
+ list(/mob/living/simple_mob/animal/sif/siffet),
+ list(/mob/living/simple_mob/animal/sif/tymisian),
+ list(
+ /mob/living/simple_mob/animal/giant_spider/nurse = 10,
+ /mob/living/simple_mob/animal/giant_spider/electric = 5,
+ /mob/living/simple_mob/animal/giant_spider/frost = 5,
+ /mob/living/simple_mob/animal/giant_spider/hunter = 10,
+ /mob/living/simple_mob/animal/giant_spider/ion = 5,
+ /mob/living/simple_mob/animal/giant_spider/lurker = 10,
+ /mob/living/simple_mob/animal/giant_spider/pepper = 10,
+ /mob/living/simple_mob/animal/giant_spider/phorogenic = 10,
+ /mob/living/simple_mob/animal/giant_spider/thermic = 5,
+ /mob/living/simple_mob/animal/giant_spider/tunneler = 10,
+ /mob/living/simple_mob/animal/giant_spider/webslinger = 5
+ ),
+ list(
+ /mob/living/simple_mob/animal/wolf = 10,
+ /mob/living/simple_mob/animal/wolf/direwolf = 1
+ ),
+ list(/mob/living/simple_mob/creature/strong),
+ list(/mob/living/simple_mob/faithless/strong),
+ list(/mob/living/simple_mob/animal/goat),
+ list(
+ /mob/living/simple_mob/animal/sif/shantak/leader = 1,
+ /mob/living/simple_mob/animal/sif/shantak = 10),
+ list(/mob/living/simple_mob/animal/sif/savik,),
+ list(/mob/living/simple_mob/animal/sif/hooligan_crab),
+ list(
+ /mob/living/simple_mob/animal/space/alien = 50,
+ /mob/living/simple_mob/animal/space/alien/drone = 40,
+ /mob/living/simple_mob/animal/space/alien/sentinel = 25,
+ /mob/living/simple_mob/animal/space/alien/sentinel/praetorian = 15,
+ /mob/living/simple_mob/animal/space/alien/queen = 10,
+ /mob/living/simple_mob/animal/space/alien/queen/empress = 5,
+ /mob/living/simple_mob/animal/space/alien/queen/empress/mother = 1
+ ),
+ list(/mob/living/simple_mob/animal/space/bats/cult/strong),
+ list(
+ /mob/living/simple_mob/animal/space/bear,
+ /mob/living/simple_mob/animal/space/bear/brown
+ ),
+ list(
+ /mob/living/simple_mob/animal/space/carp = 50,
+ /mob/living/simple_mob/animal/space/carp/large = 10,
+ /mob/living/simple_mob/animal/space/carp/large/huge = 5
+ ),
+ list(/mob/living/simple_mob/animal/space/goose),
+ list(/mob/living/simple_mob/animal/space/jelly),
+ list(/mob/living/simple_mob/animal/space/tree),
+ list(
+ /mob/living/simple_mob/vore/aggressive/corrupthound = 10,
+ /mob/living/simple_mob/vore/aggressive/corrupthound/prettyboi = 1,
+ ),
+ list(/mob/living/simple_mob/vore/aggressive/deathclaw),
+ list(/mob/living/simple_mob/vore/aggressive/dino),
+ list(/mob/living/simple_mob/vore/aggressive/dragon),
+ list(/mob/living/simple_mob/vore/aggressive/dragon/virgo3b),
+ list(/mob/living/simple_mob/vore/aggressive/frog),
+ list(/mob/living/simple_mob/vore/aggressive/giant_snake),
+ list(/mob/living/simple_mob/vore/aggressive/mimic),
+ list(/mob/living/simple_mob/vore/aggressive/panther),
+ list(/mob/living/simple_mob/vore/aggressive/rat),
+ list(/mob/living/simple_mob/vore/bee),
+ list(
+ /mob/living/simple_mob/vore/sect_drone = 10,
+ /mob/living/simple_mob/vore/sect_queen = 1
+ ),
+ list(/mob/living/simple_mob/vore/solargrub),
+ list(
+ /mob/living/simple_mob/vore/oregrub = 5,
+ /mob/living/simple_mob/vore/oregrub/lava = 1
+ ),
+ list(/mob/living/simple_mob/vore/catgirl),
+ list(/mob/living/simple_mob/vore/wolfgirl),
+ list(
+ /mob/living/simple_mob/vore/lamia,
+ /mob/living/simple_mob/vore/lamia/albino,
+ /mob/living/simple_mob/vore/lamia/albino/bra,
+ /mob/living/simple_mob/vore/lamia/albino/shirt,
+ /mob/living/simple_mob/vore/lamia/bra,
+ /mob/living/simple_mob/vore/lamia/cobra,
+ /mob/living/simple_mob/vore/lamia/cobra/bra,
+ /mob/living/simple_mob/vore/lamia/cobra/shirt,
+ /mob/living/simple_mob/vore/lamia/copper,
+ /mob/living/simple_mob/vore/lamia/copper/bra,
+ /mob/living/simple_mob/vore/lamia/copper/shirt,
+ /mob/living/simple_mob/vore/lamia/green,
+ /mob/living/simple_mob/vore/lamia/green/bra,
+ /mob/living/simple_mob/vore/lamia/green/shirt,
+ /mob/living/simple_mob/vore/lamia/zebra,
+ /mob/living/simple_mob/vore/lamia/zebra/bra,
+ /mob/living/simple_mob/vore/lamia/zebra/shirt
+ ),
+ list(
+ /mob/living/simple_mob/humanoid/merc = 100,
+ /mob/living/simple_mob/humanoid/merc/melee/sword = 50,
+ /mob/living/simple_mob/humanoid/merc/ranged = 25,
+ /mob/living/simple_mob/humanoid/merc/ranged/grenadier = 1,
+ /mob/living/simple_mob/humanoid/merc/ranged/ionrifle = 10,
+ /mob/living/simple_mob/humanoid/merc/ranged/laser = 5,
+ /mob/living/simple_mob/humanoid/merc/ranged/rifle = 5,
+ /mob/living/simple_mob/humanoid/merc/ranged/smg = 5,
+ /mob/living/simple_mob/humanoid/merc/ranged/sniper = 1,
+ /mob/living/simple_mob/humanoid/merc/ranged/space = 10,
+ /mob/living/simple_mob/humanoid/merc/ranged/technician = 5
+ ),
+ list(
+ /mob/living/simple_mob/humanoid/pirate = 3,
+ /mob/living/simple_mob/humanoid/pirate/ranged = 1
+ ),
+ list(/mob/living/simple_mob/mechanical/combat_drone),
+ list(/mob/living/simple_mob/mechanical/corrupt_maint_drone),
+ list(
+ /mob/living/simple_mob/mechanical/hivebot = 100,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage = 20,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/backline = 10,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/basic = 20,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/dot = 5,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/ion = 20,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/laser = 10,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/rapid = 2,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege = 1,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege/emp = 5,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege/fragmentation = 1,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege/radiation = 1,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/strong = 3,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/strong/guard = 3,
+ /mob/living/simple_mob/mechanical/hivebot/support = 8,
+ /mob/living/simple_mob/mechanical/hivebot/support/commander = 5,
+ /mob/living/simple_mob/mechanical/hivebot/support/commander/autofollow = 10,
+ /mob/living/simple_mob/mechanical/hivebot/swarm = 20,
+ /mob/living/simple_mob/mechanical/hivebot/tank = 20,
+ /mob/living/simple_mob/mechanical/hivebot/tank/armored = 20,
+ /mob/living/simple_mob/mechanical/hivebot/tank/armored/anti_bullet = 20,
+ /mob/living/simple_mob/mechanical/hivebot/tank/armored/anti_laser = 20,
+ /mob/living/simple_mob/mechanical/hivebot/tank/armored/anti_melee = 20,
+ /mob/living/simple_mob/mechanical/hivebot/tank/meatshield = 20
+ ),
+ list(/mob/living/simple_mob/mechanical/infectionbot),
+ list(/mob/living/simple_mob/mechanical/mining_drone),
+ list(/mob/living/simple_mob/mechanical/technomancer_golem),
+ list(
+ /mob/living/simple_mob/mechanical/viscerator,
+ /mob/living/simple_mob/mechanical/viscerator/piercing
+ ),
+ list(/mob/living/simple_mob/mechanical/wahlem),
+ list(/mob/living/simple_mob/animal/passive/fox/syndicate),
+ list(/mob/living/simple_mob/animal/passive/fox),
+ list(/mob/living/simple_mob/animal/wolf/direwolf),
+ list(/mob/living/simple_mob/animal/space/jelly),
+ list(
+ /mob/living/simple_mob/otie/feral,
+ /mob/living/simple_mob/otie/feral/chubby,
+ /mob/living/simple_mob/otie/red,
+ /mob/living/simple_mob/otie/red/chubby
+ ),
+ list(
+ /mob/living/simple_mob/shadekin/blue/ai = 100,
+ /mob/living/simple_mob/shadekin/green/ai = 50,
+ /mob/living/simple_mob/shadekin/orange/ai = 20,
+ /mob/living/simple_mob/shadekin/purple/ai = 60,
+ /mob/living/simple_mob/shadekin/red/ai = 40,
+ /mob/living/simple_mob/shadekin/yellow/ai = 1
+ ),
+ list(
+ /mob/living/simple_mob/vore/aggressive/corrupthound,
+ /mob/living/simple_mob/vore/aggressive/corrupthound/prettyboi
+ ),
+ list(/mob/living/simple_mob/vore/aggressive/deathclaw),
+ list(/mob/living/simple_mob/vore/aggressive/dino),
+ list(/mob/living/simple_mob/vore/aggressive/dragon),
+ list(/mob/living/simple_mob/vore/aggressive/dragon/virgo3b),
+ list(/mob/living/simple_mob/vore/aggressive/frog),
+ list(/mob/living/simple_mob/vore/aggressive/giant_snake),
+ list(/mob/living/simple_mob/vore/aggressive/mimic),
+ list(/mob/living/simple_mob/vore/aggressive/panther),
+ list(/mob/living/simple_mob/vore/aggressive/rat),
+ list(/mob/living/simple_mob/vore/bee),
+ list(/mob/living/simple_mob/vore/catgirl),
+ list(/mob/living/simple_mob/vore/cookiegirl),
+ list(/mob/living/simple_mob/vore/fennec),
+ list(/mob/living/simple_mob/vore/fennix),
+ list(/mob/living/simple_mob/vore/hippo),
+ list(/mob/living/simple_mob/vore/horse),
+ list(/mob/living/simple_mob/vore/oregrub),
+ list(/mob/living/simple_mob/vore/rabbit),
+ list(
+ /mob/living/simple_mob/vore/redpanda = 50,
+ /mob/living/simple_mob/vore/redpanda/fae = 1
+ ),
+ list(
+ /mob/living/simple_mob/vore/sect_drone = 10,
+ /mob/living/simple_mob/vore/sect_queen = 1
+ ),
+ list(/mob/living/simple_mob/vore/solargrub),
+ list(/mob/living/simple_mob/vore/woof)
+ )
+
+/obj/random/mob/semirandom_mob_spawner/item_to_spawn()
+ var/list/choice = semirandom_mob_spawner_decisions[type]
+
+ if(!choice)
+ choice = pickweight(possible_mob_types)
+ semirandom_mob_spawner_decisions[type] = choice
+
+ return pickweight(choice)
+
+/obj/random/mob/semirandom_mob_spawner/animal
+ name = "Semi-Random Animal"
+ desc = "Spawns groups of non-hostile mobs that are all of the same theme type/theme."
+ icon_state = "animal"
+ mob_faction = "animal"
+ overwrite_hostility = 1
+ mob_hostile = 0
+
+ possible_mob_types = list(
+ list(/mob/living/simple_mob/animal/goat) = 25,
+ list(
+ /mob/living/simple_mob/animal/passive/bird,
+ /mob/living/simple_mob/animal/passive/bird/azure_tit,
+ /mob/living/simple_mob/animal/passive/bird/black_bird,
+ /mob/living/simple_mob/animal/passive/bird/european_robin,
+ /mob/living/simple_mob/animal/passive/bird/goldcrest,
+ /mob/living/simple_mob/animal/passive/bird/ringneck_dove,
+ /mob/living/simple_mob/animal/passive/bird/parrot,
+ /mob/living/simple_mob/animal/passive/bird/parrot/black_headed_caique,
+ /mob/living/simple_mob/animal/passive/bird/parrot/budgerigar,
+ /mob/living/simple_mob/animal/passive/bird/parrot/budgerigar/blue,
+ /mob/living/simple_mob/animal/passive/bird/parrot/budgerigar/bluegreen,
+ /mob/living/simple_mob/animal/passive/bird/parrot/cockatiel,
+ /mob/living/simple_mob/animal/passive/bird/parrot/cockatiel/grey,
+ /mob/living/simple_mob/animal/passive/bird/parrot/cockatiel/white,
+ /mob/living/simple_mob/animal/passive/bird/parrot/cockatiel/yellowish,
+ /mob/living/simple_mob/animal/passive/bird/parrot/eclectus,
+ /mob/living/simple_mob/animal/passive/bird/parrot/grey_parrot,
+ /mob/living/simple_mob/animal/passive/bird/parrot/kea,
+ /mob/living/simple_mob/animal/passive/bird/parrot/pink_cockatoo,
+ /mob/living/simple_mob/animal/passive/bird/parrot/sulphur_cockatoo,
+ /mob/living/simple_mob/animal/passive/bird/parrot/white_caique,
+ /mob/living/simple_mob/animal/passive/bird/parrot/white_cockatoo,
+ /mob/living/simple_mob/animal/space/goose
+ ) = 25,
+ list(
+ /mob/living/simple_mob/animal/passive/cat,
+ /mob/living/simple_mob/animal/passive/cat/black
+ ) = 25,
+ list(
+ /mob/living/simple_mob/animal/passive/chick,
+ /mob/living/simple_mob/animal/passive/chicken
+ ) = 25,
+ list(/mob/living/simple_mob/animal/passive/cow) = 25,
+ list(/mob/living/simple_mob/animal/passive/dog/brittany) = 10,
+ list(/mob/living/simple_mob/animal/passive/dog/corgi) = 10,
+ list(/mob/living/simple_mob/animal/passive/dog/tamaskan) = 10,
+ list(/mob/living/simple_mob/animal/passive/fox) = 25,
+ list(/mob/living/simple_mob/animal/passive/hare) = 25,
+ list(/mob/living/simple_mob/animal/passive/lizard) = 10,
+ list(/mob/living/simple_mob/animal/passive/mouse) = 15,
+ list(/mob/living/simple_mob/animal/passive/mouse/jerboa) = 5,
+ list(/mob/living/simple_mob/animal/passive/opossum) = 10,
+ list(/mob/living/simple_mob/animal/passive/pillbug) = 10,
+ list(/mob/living/simple_mob/animal/passive/snake) = 10,
+ list(/mob/living/simple_mob/animal/passive/tindalos) = 10,
+ list(/mob/living/simple_mob/animal/passive/yithian) = 10,
+ list(
+ /mob/living/simple_mob/animal/wolf = 10,
+ /mob/living/simple_mob/animal/wolf/direwolf = 1
+ ) = 10,
+ list(/mob/living/simple_mob/vore/rabbit) = 10,
+ list(/mob/living/simple_mob/vore/redpanda) = 10,
+ list(/mob/living/simple_mob/vore/woof) = 1,
+ list(/mob/living/simple_mob/vore/fennec) = 10,
+ list(/mob/living/simple_mob/vore/fennix) = 1,
+ list(/mob/living/simple_mob/vore/hippo) = 5,
+ list(/mob/living/simple_mob/vore/horse) = 25,
+ list(/mob/living/simple_mob/vore/bee) = 10,
+ list(
+ /mob/living/simple_mob/animal/space/bear,
+ /mob/living/simple_mob/animal/space/bear/brown
+ ) = 1,
+ list(
+ /mob/living/simple_mob/otie/feral = 50,
+ /mob/living/simple_mob/otie/feral/chubby = 10,
+ /mob/living/simple_mob/otie/red = 5,
+ /mob/living/simple_mob/otie/red/chubby = 1
+ ) = 5,
+ list(/mob/living/simple_mob/vore/aggressive/rat) = 15,
+ list(/mob/living/simple_mob/animal/sif/diyaab) = 5,
+ list(/mob/living/simple_mob/animal/sif/duck) = 5,
+ list(/mob/living/simple_mob/animal/sif/frostfly) = 5,
+ list(
+ /mob/living/simple_mob/animal/sif/glitterfly = 50,
+ /mob/living/simple_mob/animal/sif/glitterfly/rare = 1
+ ) = 5,
+ list(
+ /mob/living/simple_mob/animal/sif/kururak = 10,
+ /mob/living/simple_mob/animal/sif/kururak/leader = 1,
+ /mob/living/simple_mob/animal/sif/kururak/hibernate = 2,
+ ) = 5,
+ list(
+ /mob/living/simple_mob/animal/sif/sakimm = 10,
+ /mob/living/simple_mob/animal/sif/sakimm/intelligent = 1
+ ) = 5,
+ list(/mob/living/simple_mob/animal/sif/savik) = 5,
+ list(
+ /mob/living/simple_mob/animal/sif/shantak = 10,
+ /mob/living/simple_mob/animal/sif/shantak/leader = 1
+ ) = 5,
+ list(/mob/living/simple_mob/animal/sif/siffet) = 5,
+ list(/mob/living/simple_mob/animal/sif/tymisian) = 5
+
+ )
+
+/obj/random/mob/semirandom_mob_spawner/monster
+ name = "Semi-Random Monster"
+ desc = "Spawns groups of hostile mobs that are all of the same theme type/theme."
+ overwrite_hostility = 1
+ mob_faction = "monster"
+ mob_hostile = 1
+ mob_retaliate = 1
+
+ possible_mob_types = list(
+ list(
+ /mob/living/simple_mob/animal/giant_spider/nurse = 10,
+ /mob/living/simple_mob/animal/giant_spider/electric = 5,
+ /mob/living/simple_mob/animal/giant_spider/frost = 5,
+ /mob/living/simple_mob/animal/giant_spider/hunter = 10,
+ /mob/living/simple_mob/animal/giant_spider/ion = 5,
+ /mob/living/simple_mob/animal/giant_spider/lurker = 10,
+ /mob/living/simple_mob/animal/giant_spider/pepper = 10,
+ /mob/living/simple_mob/animal/giant_spider/phorogenic = 10,
+ /mob/living/simple_mob/animal/giant_spider/thermic = 5,
+ /mob/living/simple_mob/animal/giant_spider/tunneler = 10,
+ /mob/living/simple_mob/animal/giant_spider/webslinger = 5
+ ) = 100,
+ list(
+ /mob/living/simple_mob/shadekin/red/ai = 5,
+ /mob/living/simple_mob/shadekin/orange/ai = 1,
+ /mob/living/simple_mob/shadekin/purple/ai = 10
+ ) = 1,
+ list(
+ /mob/living/simple_mob/animal/wolf = 10,
+ /mob/living/simple_mob/animal/wolf/direwolf = 1,
+ ) = 80,
+ list(/mob/living/simple_mob/creature/strong) = 40,
+ list(/mob/living/simple_mob/faithless/strong) = 20,
+ list(/mob/living/simple_mob/animal/goat) = 1,
+ list(
+ /mob/living/simple_mob/animal/sif/shantak/leader = 1,
+ /mob/living/simple_mob/animal/sif/shantak = 10
+ ) = 50,
+ list(/mob/living/simple_mob/animal/sif/savik,) = 20,
+ list(/mob/living/simple_mob/animal/sif/hooligan_crab) = 10,
+ list(
+ /mob/living/simple_mob/animal/space/alien = 50,
+ /mob/living/simple_mob/animal/space/alien/drone = 40,
+ /mob/living/simple_mob/animal/space/alien/sentinel = 25,
+ /mob/living/simple_mob/animal/space/alien/sentinel/praetorian = 15,
+ /mob/living/simple_mob/animal/space/alien/queen = 10,
+ /mob/living/simple_mob/animal/space/alien/queen/empress = 5,
+ /mob/living/simple_mob/animal/space/alien/queen/empress/mother = 1,
+ ) = 40,
+ list(/mob/living/simple_mob/animal/space/bats/cult/strong) = 40,
+ list(
+ /mob/living/simple_mob/animal/space/bear,
+ /mob/living/simple_mob/animal/space/bear/brown
+ ) = 40,
+ list(
+ /mob/living/simple_mob/animal/space/carp = 50,
+ /mob/living/simple_mob/animal/space/carp/large = 10,
+ /mob/living/simple_mob/animal/space/carp/large/huge = 5
+ ) = 50,
+ list(/mob/living/simple_mob/animal/space/goose) = 50,
+ list(/mob/living/simple_mob/animal/space/jelly) = 40,
+ list(/mob/living/simple_mob/animal/space/tree) = 15,
+ list(
+ /mob/living/simple_mob/otie/feral = 50,
+ /mob/living/simple_mob/otie/feral/chubby = 10,
+ /mob/living/simple_mob/otie/red = 5,
+ /mob/living/simple_mob/otie/red/chubby = 1
+ ) = 40,
+ list(
+ /mob/living/simple_mob/vore/aggressive/corrupthound = 10,
+ /mob/living/simple_mob/vore/aggressive/corrupthound/prettyboi = 1,
+ ) = 50,
+ list(/mob/living/simple_mob/vore/aggressive/deathclaw) = 40,
+ list(/mob/living/simple_mob/vore/aggressive/dino) = 40,
+ list(/mob/living/simple_mob/vore/aggressive/dragon) = 40,
+ list(/mob/living/simple_mob/vore/aggressive/dragon/virgo3b) = 40,
+ list(/mob/living/simple_mob/vore/aggressive/frog) = 40,
+ list(/mob/living/simple_mob/vore/aggressive/giant_snake) = 40,
+ list(/mob/living/simple_mob/vore/aggressive/mimic) = 40,
+ list(/mob/living/simple_mob/vore/aggressive/panther) = 25,
+ list(/mob/living/simple_mob/vore/aggressive/rat) = 50,
+ list(/mob/living/simple_mob/vore/bee) = 40,
+ list(
+ /mob/living/simple_mob/vore/sect_drone = 10,
+ /mob/living/simple_mob/vore/sect_queen = 1
+ ) = 20,
+ list(/mob/living/simple_mob/vore/solargrub) = 15,
+ list(
+ /mob/living/simple_mob/vore/oregrub = 5,
+ /mob/living/simple_mob/vore/oregrub/lava = 1
+ ) = 15
+ )
+
+/obj/random/mob/semirandom_mob_spawner/humanoid
+ name = "Semi-Random Humanoid"
+ desc = "Spawns groups of humanoid mobs that may or may not be hostile, all of the same theme type/theme."
+ icon_state = "humanoid"
+ mob_faction = "humanoid"
+
+ possible_mob_types = list(
+ list(
+ /mob/living/simple_mob/shadekin/blue/ai = 25,
+ /mob/living/simple_mob/shadekin/green/ai = 10,
+ /mob/living/simple_mob/shadekin/purple/ai = 1,
+ ) = 1,
+ list(/mob/living/simple_mob/vore/catgirl) = 100,
+ list(/mob/living/simple_mob/vore/wolfgirl) = 100,
+ list(
+ /mob/living/simple_mob/vore/lamia,
+ /mob/living/simple_mob/vore/lamia/albino,
+ /mob/living/simple_mob/vore/lamia/albino/bra,
+ /mob/living/simple_mob/vore/lamia/albino/shirt,
+ /mob/living/simple_mob/vore/lamia/bra,
+ /mob/living/simple_mob/vore/lamia/cobra,
+ /mob/living/simple_mob/vore/lamia/cobra/bra,
+ /mob/living/simple_mob/vore/lamia/cobra/shirt,
+ /mob/living/simple_mob/vore/lamia/copper,
+ /mob/living/simple_mob/vore/lamia/copper/bra,
+ /mob/living/simple_mob/vore/lamia/copper/shirt,
+ /mob/living/simple_mob/vore/lamia/green,
+ /mob/living/simple_mob/vore/lamia/green/bra,
+ /mob/living/simple_mob/vore/lamia/green/shirt,
+ /mob/living/simple_mob/vore/lamia/zebra,
+ /mob/living/simple_mob/vore/lamia/zebra/bra,
+ /mob/living/simple_mob/vore/lamia/zebra/shirt
+ ) = 100,
+// LOOK OKAY MERCS ARE HUMANOIDS SO THEY ARE HERE, but they are also kind of bullshit so they probably shouldn't be able to spawn in the same place as catgirls.
+// I want some better potentially hostile humanoids that aren't stupid to fight. If they become a big issue I'll comment them out.
+// For now they are just rare, and the ranged ones are way more rare than the melee ones, which I think will help balance them out.
+ list(
+ /mob/living/simple_mob/humanoid/merc = 100,
+ /mob/living/simple_mob/humanoid/merc/melee/sword = 50,
+ /mob/living/simple_mob/humanoid/merc/ranged = 25,
+ /mob/living/simple_mob/humanoid/merc/ranged/grenadier = 1,
+ /mob/living/simple_mob/humanoid/merc/ranged/ionrifle = 10,
+ /mob/living/simple_mob/humanoid/merc/ranged/laser = 5,
+ /mob/living/simple_mob/humanoid/merc/ranged/rifle = 5,
+ /mob/living/simple_mob/humanoid/merc/ranged/smg = 5,
+ /mob/living/simple_mob/humanoid/merc/ranged/sniper = 1,
+ /mob/living/simple_mob/humanoid/merc/ranged/space = 10,
+ /mob/living/simple_mob/humanoid/merc/ranged/technician = 5
+ ) = 5,
+// PIRATES are okay though. They can be kind of a pain but you can kind of slap them around. Also it's not like. A crime. To fight and blow up pirates so it's fine.
+ list(
+ /mob/living/simple_mob/humanoid/pirate = 3,
+ /mob/living/simple_mob/humanoid/pirate/ranged = 1
+ ) = 50
+ )
+
+// I am not familiar enough with robots to know which ones are fun to fight so this list isn't weighted at all SO YOU KNOW. Be careful.
+/obj/random/mob/semirandom_mob_spawner/robot
+ name = "Semi-Random Robot"
+ desc = "Spawns groups of robotic mobs that are probably hostile, all of the same theme type/theme."
+ icon_state = "robot"
+ mob_faction = "robot"
+
+ possible_mob_types = list(
+ list(/mob/living/simple_mob/mechanical/combat_drone),
+ list(/mob/living/simple_mob/mechanical/corrupt_maint_drone),
+ list(
+ /mob/living/simple_mob/mechanical/hivebot = 100,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage = 20,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/backline = 10,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/basic = 20,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/dot = 5,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/ion = 20,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/laser = 10,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/rapid = 2,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege = 1,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege/emp = 5,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege/fragmentation = 1,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege/radiation = 1,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/strong = 3,
+ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/strong/guard = 3,
+ /mob/living/simple_mob/mechanical/hivebot/support = 8,
+ /mob/living/simple_mob/mechanical/hivebot/support/commander = 5,
+ /mob/living/simple_mob/mechanical/hivebot/support/commander/autofollow = 10,
+ /mob/living/simple_mob/mechanical/hivebot/swarm = 20,
+ /mob/living/simple_mob/mechanical/hivebot/tank = 20,
+ /mob/living/simple_mob/mechanical/hivebot/tank/armored = 20,
+ /mob/living/simple_mob/mechanical/hivebot/tank/armored/anti_bullet = 20,
+ /mob/living/simple_mob/mechanical/hivebot/tank/armored/anti_laser = 20,
+ /mob/living/simple_mob/mechanical/hivebot/tank/armored/anti_melee = 20,
+ /mob/living/simple_mob/mechanical/hivebot/tank/meatshield = 20
+ ),
+ list(/mob/living/simple_mob/mechanical/infectionbot),
+ list(/mob/living/simple_mob/mechanical/mining_drone),
+ list(/mob/living/simple_mob/mechanical/technomancer_golem),
+ list(
+ /mob/living/simple_mob/mechanical/viscerator,
+ /mob/living/simple_mob/mechanical/viscerator/piercing
+ ),
+ list(/mob/living/simple_mob/mechanical/wahlem),
+ list(/mob/living/simple_mob/animal/passive/fox/syndicate)
+ )
+
+/obj/random/mob/semirandom_mob_spawner/fish
+ name = "Semi-Random Fish"
+ desc = "Spawns groups of fish, all of the same theme type/theme."
+ icon_state = "fish"
+ mob_faction = "fish"
+ overwrite_hostility = 1
+ mob_hostile = 0
+ mob_retaliate = 0
+
+
+ possible_mob_types = list(
+ list(/mob/living/simple_mob/animal/passive/fish/bass) = 20,
+ list(/mob/living/simple_mob/animal/passive/fish/icebass) = 20,
+ list(/mob/living/simple_mob/animal/passive/fish/javelin) = 20,
+ list(/mob/living/simple_mob/animal/passive/fish/koi) = 10,
+ list(/mob/living/simple_mob/animal/passive/fish/measelshark) = 5,
+ list(/mob/living/simple_mob/animal/passive/fish/murkin) = 20,
+ list(/mob/living/simple_mob/animal/passive/fish/perch) = 20,
+ list(/mob/living/simple_mob/animal/passive/fish/pike) = 20,
+ list(/mob/living/simple_mob/animal/passive/fish/rockfish) = 10,
+ list(/mob/living/simple_mob/animal/passive/fish/salmon) = 20,
+ list(/mob/living/simple_mob/animal/passive/fish/solarfish) = 5,
+ list(/mob/living/simple_mob/animal/passive/fish/trout) = 20,
+ list(/mob/living/simple_mob/animal/passive/crab) = 10,
+ list(/mob/living/simple_mob/animal/sif/hooligan_crab) = 1
+ )
+
+/obj/random/mob/semirandom_mob_spawner/bird
+ name = "Semi-Random Bird"
+ desc = "Spawns groups of bird, all of the same theme type/theme."
+ icon_state = "bird"
+ mob_faction = "bird"
+
+ possible_mob_types = list(
+ list(/mob/living/simple_mob/animal/passive/bird),
+ list(/mob/living/simple_mob/animal/passive/bird/azure_tit),
+ list(/mob/living/simple_mob/animal/passive/bird/black_bird),
+ list(/mob/living/simple_mob/animal/passive/bird/european_robin),
+ list(/mob/living/simple_mob/animal/passive/bird/goldcrest),
+ list(/mob/living/simple_mob/animal/passive/bird/ringneck_dove),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/black_headed_caique),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/budgerigar),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/budgerigar/blue),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/budgerigar/bluegreen),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/cockatiel),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/cockatiel/grey),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/cockatiel/white),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/cockatiel/yellowish),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/eclectus),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/grey_parrot),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/kea),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/pink_cockatoo),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/sulphur_cockatoo),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/white_caique),
+ list(/mob/living/simple_mob/animal/passive/bird/parrot/white_cockatoo),
+ list(/mob/living/simple_mob/animal/space/goose),
+ list(/mob/living/simple_mob/animal/passive/chicken),
+ list(/mob/living/simple_mob/animal/passive/penguin)
+ )
+
+/obj/random/mob/semirandom_mob_spawner/vore
+ name = "Semi-Random Voremob"
+ desc = "Spawns groups of voremobs, all of the same theme type/theme."
+ icon_state = "vore"
+ mob_faction = "vore"
+
+ possible_mob_types = list(
+ list(/mob/living/simple_mob/animal/wolf/direwolf) = 100,
+ list(/mob/living/simple_mob/animal/space/jelly) = 70,
+ list(
+ /mob/living/simple_mob/otie/feral,
+ /mob/living/simple_mob/otie/feral/chubby,
+ /mob/living/simple_mob/otie/red,
+ /mob/living/simple_mob/otie/red/chubby
+ ) = 50,
+ list(
+ /mob/living/simple_mob/shadekin/blue/ai = 100,
+ /mob/living/simple_mob/shadekin/green/ai = 50,
+ /mob/living/simple_mob/shadekin/orange/ai = 20,
+ /mob/living/simple_mob/shadekin/purple/ai = 60,
+ /mob/living/simple_mob/shadekin/red/ai = 40,
+ /mob/living/simple_mob/shadekin/yellow/ai = 1
+ ) = 1,
+ list(
+ /mob/living/simple_mob/vore/aggressive/corrupthound,
+ /mob/living/simple_mob/vore/aggressive/corrupthound/prettyboi
+ ) = 70,
+ list(/mob/living/simple_mob/vore/aggressive/deathclaw) = 70,
+ list(/mob/living/simple_mob/vore/aggressive/dino) = 100,
+ list(/mob/living/simple_mob/vore/aggressive/dragon) = 100,
+ list(/mob/living/simple_mob/vore/aggressive/dragon/virgo3b) = 100,
+ list(/mob/living/simple_mob/vore/aggressive/frog) = 100,
+ list(/mob/living/simple_mob/vore/aggressive/giant_snake) = 100,
+ list(/mob/living/simple_mob/vore/aggressive/mimic) = 50,
+ list(/mob/living/simple_mob/vore/aggressive/panther) = 70,
+ list(/mob/living/simple_mob/vore/aggressive/rat) = 100,
+ list(/mob/living/simple_mob/vore/bee) = 100,
+ list(/mob/living/simple_mob/vore/catgirl) = 100,
+ list(/mob/living/simple_mob/vore/cookiegirl) = 100,
+ list(/mob/living/simple_mob/vore/fennec) = 100,
+ list(/mob/living/simple_mob/vore/fennix) = 50,
+ list(/mob/living/simple_mob/vore/hippo) = 70,
+ list(/mob/living/simple_mob/vore/horse) = 100,
+ list(
+ /mob/living/simple_mob/vore/lamia,
+ /mob/living/simple_mob/vore/lamia/albino,
+ /mob/living/simple_mob/vore/lamia/albino/bra,
+ /mob/living/simple_mob/vore/lamia/albino/shirt,
+ /mob/living/simple_mob/vore/lamia/bra,
+ /mob/living/simple_mob/vore/lamia/cobra,
+ /mob/living/simple_mob/vore/lamia/cobra/bra,
+ /mob/living/simple_mob/vore/lamia/cobra/shirt,
+ /mob/living/simple_mob/vore/lamia/copper,
+ /mob/living/simple_mob/vore/lamia/copper/bra,
+ /mob/living/simple_mob/vore/lamia/copper/shirt,
+ /mob/living/simple_mob/vore/lamia/green,
+ /mob/living/simple_mob/vore/lamia/green/bra,
+ /mob/living/simple_mob/vore/lamia/green/shirt,
+ /mob/living/simple_mob/vore/lamia/zebra,
+ /mob/living/simple_mob/vore/lamia/zebra/bra,
+ /mob/living/simple_mob/vore/lamia/zebra/shirt
+ ) = 100,
+ list(/mob/living/simple_mob/vore/rabbit) = 100,
+ list(
+ /mob/living/simple_mob/vore/redpanda = 50,
+ /mob/living/simple_mob/vore/redpanda/fae = 1
+ ) = 100,
+ list(
+ /mob/living/simple_mob/vore/sect_drone = 10,
+ /mob/living/simple_mob/vore/sect_queen = 1
+ ) = 50,
+ list(/mob/living/simple_mob/vore/solargrub) = 100,
+ list(/mob/living/simple_mob/vore/woof) = 1
+ )
+
+/obj/random/mob/semirandom_mob_spawner/sus
+ name = "Weird shit"
+ desc = "Spawns groups of weird stuff, all of the same theme type/theme. Don't put this on normal maps."
+ icon_state = "sus"
+ mob_faction = "sus"
+
+ possible_mob_types = list(
+ list(
+ /mob/living/simple_mob/vore/woof/hostile/melee = 100,
+ /mob/living/simple_mob/vore/woof/hostile/ranged = 20,
+ /mob/living/simple_mob/vore/woof/hostile/horrible = 10,
+ /mob/living/simple_mob/vore/woof/hostile/terrible = 5,
+ /mob/living/simple_mob/vore/woof/cass = 1
+ ),
+ list(/mob/living/simple_mob/mechanical/mecha/combat/gygax/dark/advanced/recursive)
+ )
+
+/obj/random/mob/semirandom_mob_spawner/mecha
+ name = "Semi-Random Mecha"
+ desc = "Spawns groups of mechs, all of the same theme type/theme. Don't put this on normal maps."
+ icon_state = "mecha"
+ mob_faction = "mecha"
+
+ possible_mob_types = list(
+ list(/mob/living/simple_mob/mechanical/mecha/combat/durand),
+ list(/mob/living/simple_mob/mechanical/mecha/combat/durand/defensive),
+ list(/mob/living/simple_mob/mechanical/mecha/combat/durand/defensive/mercenary),
+ list(/mob/living/simple_mob/mechanical/mecha/combat/gygax),
+ list(/mob/living/simple_mob/mechanical/mecha/combat/gygax/dark),
+ list(/mob/living/simple_mob/mechanical/mecha/combat/gygax/dark/advanced),
+ list(/mob/living/simple_mob/mechanical/mecha/combat/gygax/manned),
+ list(/mob/living/simple_mob/mechanical/mecha/combat/gygax/medgax),
+ list(/mob/living/simple_mob/mechanical/mecha/combat/marauder),
+ list(/mob/living/simple_mob/mechanical/mecha/combat/marauder/mauler),
+ list(/mob/living/simple_mob/mechanical/mecha/combat/marauder/seraph),
+ list(/mob/living/simple_mob/mechanical/mecha/combat/phazon),
+ list(/mob/living/simple_mob/mechanical/mecha/hoverpod),
+ list(/mob/living/simple_mob/mechanical/mecha/hoverpod/manned),
+ list(/mob/living/simple_mob/mechanical/mecha/odysseus),
+ list(/mob/living/simple_mob/mechanical/mecha/odysseus/manned),
+ list(/mob/living/simple_mob/mechanical/mecha/odysseus/murdysseus),
+ list(/mob/living/simple_mob/mechanical/mecha/odysseus/murdysseus/manned),
+ list(/mob/living/simple_mob/mechanical/mecha/ripley),
+ list(/mob/living/simple_mob/mechanical/mecha/ripley/blue_flames),
+ list(/mob/living/simple_mob/mechanical/mecha/ripley/deathripley),
+ list(/mob/living/simple_mob/mechanical/mecha/ripley/deathripley/manned),
+ list(/mob/living/simple_mob/mechanical/mecha/ripley/firefighter),
+ list(/mob/living/simple_mob/mechanical/mecha/ripley/firefighter/manned),
+ list(/mob/living/simple_mob/mechanical/mecha/ripley/manned),
+ list(/mob/living/simple_mob/mechanical/mecha/ripley/red_flames)
+ )
+
+
+/obj/random/mob/semirandom_mob_spawner/monster/b
+ mob_faction = "monsterb"
+
+/obj/random/mob/semirandom_mob_spawner/monster/c
+ mob_faction = "monsterc"
+
+/obj/random/mob/semirandom_mob_spawner/monster/d
+ mob_faction = "monsterd"
+
+/obj/random/mob/semirandom_mob_spawner/monster/e
+ mob_faction = "monstere"
+
+/obj/random/mob/semirandom_mob_spawner/monster/f
+ mob_faction = "monsterf"
+
+/obj/random/mob/semirandom_mob_spawner/animal/b
+ mob_faction = "animalb"
+
+/obj/random/mob/semirandom_mob_spawner/animal/c
+ mob_faction = "animalc"
+
+/obj/random/mob/semirandom_mob_spawner/animal/d
+ mob_faction = "animald"
+
+/obj/random/mob/semirandom_mob_spawner/animal/e
+ mob_faction = "animale"
+
+/obj/random/mob/semirandom_mob_spawner/animal/f
+ mob_faction = "animalf"
+
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate
+ mob_faction = "retanimala"
+ overwrite_hostility = 1
+ mob_hostile = 0
+ mob_retaliate = 1
+
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/b
+ mob_faction = "retanimalb"
+
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/c
+ mob_faction = "retanimalc"
+
+/obj/random/mob/semirandom_mob_spawner/animal/hostile
+ mob_faction = "hosanimala"
+ overwrite_hostility = 1
+ mob_hostile = 1
+ mob_retaliate = 1
+
+/obj/random/mob/semirandom_mob_spawner/animal/hostile/b
+ mob_faction = "hosanimalb"
+
+/obj/random/mob/semirandom_mob_spawner/animal/hostile/c
+ mob_faction = "hosanimalc"
+
+
+/obj/random/mob/semirandom_mob_spawner/humanoid/b
+ mob_faction = "humanoidb"
+
+/obj/random/mob/semirandom_mob_spawner/humanoid/c
+ mob_faction = "humanoidc"
+
+/obj/random/mob/semirandom_mob_spawner/humanoid/d
+ mob_faction = "humanoidd"
+
+/obj/random/mob/semirandom_mob_spawner/humanoid/e
+ mob_faction = "humanoide"
+
+/obj/random/mob/semirandom_mob_spawner/humanoid/f
+ mob_faction = "humanoidf"
+
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate
+ mob_faction = "rethumanoida"
+ overwrite_hostility = 1
+ mob_hostile = 0
+ mob_retaliate = 1
+
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate/b
+ mob_faction = "rethumanoidb"
+
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate/c
+ mob_faction = "rethumanoidc"
+
+/obj/random/mob/semirandom_mob_spawner/humanoid/hostile
+ mob_faction = "hoshumanoida"
+ overwrite_hostility = 1
+ mob_hostile = 1
+ mob_retaliate = 1
+
+/obj/random/mob/semirandom_mob_spawner/humanoid/hostile/b
+ mob_faction = "hoshumanoidb"
+
+/obj/random/mob/semirandom_mob_spawner/humanoid/hostile/c
+ mob_faction = "hoshumanoidc"
+
+/obj/random/mob/semirandom_mob_spawner/robot/b
+ mob_faction = "robotb"
+
+/obj/random/mob/semirandom_mob_spawner/robot/c
+ mob_faction = "robotc"
+
+/obj/random/mob/semirandom_mob_spawner/robot/d
+ mob_faction = "robotd"
+
+/obj/random/mob/semirandom_mob_spawner/robot/e
+ mob_faction = "robote"
+
+/obj/random/mob/semirandom_mob_spawner/robot/f
+ mob_faction = "robotf"
+
+/obj/random/mob/semirandom_mob_spawner/robot/retaliate
+ mob_faction = "retrobota"
+ overwrite_hostility = 1
+ mob_hostile = 0
+ mob_retaliate = 1
+
+/obj/random/mob/semirandom_mob_spawner/robot/retaliate/b
+ mob_faction = "retrobotb"
+
+/obj/random/mob/semirandom_mob_spawner/robot/retaliate/c
+ mob_faction = "retrobotc"
+
+/obj/random/mob/semirandom_mob_spawner/bird/b
+ mob_faction = "birdb"
+
+/obj/random/mob/semirandom_mob_spawner/bird/c
+ mob_faction = "birdc"
+
+/obj/random/mob/semirandom_mob_spawner/bird/d
+ mob_faction = "birdd"
+
+/obj/random/mob/semirandom_mob_spawner/bird/e
+ mob_faction = "birde"
+
+/obj/random/mob/semirandom_mob_spawner/bird/f
+ mob_faction = "birdf"
+
+/obj/random/mob/semirandom_mob_spawner/fish/b
+ mob_faction = "fishb"
+
+/obj/random/mob/semirandom_mob_spawner/fish/c
+ mob_faction = "fishc"
+
+/obj/random/mob/semirandom_mob_spawner/fish/d
+ mob_faction = "fishd"
+
+/obj/random/mob/semirandom_mob_spawner/fish/e
+ mob_faction = "fishe"
+
+/obj/random/mob/semirandom_mob_spawner/fish/f
+ mob_faction = "fishf"
+
+/obj/random/mob/semirandom_mob_spawner/vore/b
+ mob_faction = "voreb"
+
+/obj/random/mob/semirandom_mob_spawner/vore/c
+ mob_faction = "vorec"
+
+/obj/random/mob/semirandom_mob_spawner/vore/d
+ mob_faction = "vored"
+
+/obj/random/mob/semirandom_mob_spawner/vore/e
+ mob_faction = "voree"
+
+/obj/random/mob/semirandom_mob_spawner/vore/f
+ mob_faction = "voref"
+
+/obj/random/mob/semirandom_mob_spawner/vore/passive
+ mob_faction = "pasvorea"
+ overwrite_hostility = 1
+ mob_hostile = 0
+ mob_retaliate = 0
+
+/obj/random/mob/semirandom_mob_spawner/vore/passive/b
+ mob_faction = "pasvoreb"
+
+/obj/random/mob/semirandom_mob_spawner/vore/passive/c
+ mob_faction = "pasvorec"
+
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate
+ mob_faction = "retvorea"
+ overwrite_hostility = 1
+ mob_hostile = 0
+ mob_retaliate = 1
+
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate/b
+ mob_faction = "retvoreb"
+
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate/c
+ mob_faction = "retvorec"
+
+/obj/random/mob/semirandom_mob_spawner/vore/hostile
+ mob_faction = "hosvorea"
+ overwrite_hostility = 1
+ mob_hostile = 1
+ mob_retaliate = 1
+
+/obj/random/mob/semirandom_mob_spawner/vore/hostile/b
+ mob_faction = "hosvoreb"
+
+/obj/random/mob/semirandom_mob_spawner/vore/hostile/c
+ mob_faction = "hosvorec"
+
+/obj/random/mob/semirandom_mob_spawner/sus/b
+ mob_faction = "susb"
+
+/obj/random/mob/semirandom_mob_spawner/sus/c
+ mob_faction = "susc"
+
+/obj/random/mob/semirandom_mob_spawner/sus/d
+ mob_faction = "susd"
+
+/obj/random/mob/semirandom_mob_spawner/sus/e
+ mob_faction = "suse"
+
+/obj/random/mob/semirandom_mob_spawner/sus/f
+ mob_faction = "susf"
+
+/obj/random/mob/semirandom_mob_spawner/mecha/b
+ mob_faction = "mechab"
+
+/obj/random/mob/semirandom_mob_spawner/mecha/c
+ mob_faction = "mechac"
+
+/obj/random/mob/semirandom_mob_spawner/mecha/d
+ mob_faction = "mechad"
+
+/obj/random/mob/semirandom_mob_spawner/mecha/e
+ mob_faction = "mechae"
+
+/obj/random/mob/semirandom_mob_spawner/mecha/f
+ mob_faction = "mechaf"
+
+/obj/random/mob/semirandom_mob_spawner/mecha/retaliate
+ mob_faction = "retmecha"
+ overwrite_hostility = 1
+ mob_hostile = 0
+ mob_retaliate = 1
+
+/obj/random/mob/semirandom_mob_spawner/mecha/retaliate/b
+ mob_faction = "retmechb"
+
+/obj/random/mob/semirandom_mob_spawner/mecha/retaliate/c
+ mob_faction = "retmechc"
diff --git a/code/game/objects/effects/spawners/graffiti.dm b/code/game/objects/effects/spawners/graffiti.dm
new file mode 100644
index 0000000000..afac11f4f1
--- /dev/null
+++ b/code/game/objects/effects/spawners/graffiti.dm
@@ -0,0 +1,28 @@
+/obj/effect/graffitispawner
+ name = "old scrawling"
+ icon = 'icons/effects/map_effects.dmi'
+ icon_state = "graffiti"
+
+ var/graffiti_type // The text string for the desired icon state of your graffiti.
+
+ // If the effect's color is not set, it will be chosen at random.
+ var/color_secondary // The hexcode for the desired secondary color of your graffiti. If blank, it will inherit this effect's color.
+
+/obj/effect/graffitispawner/Initialize()
+ ..()
+
+ if(!color)
+ color = rgb(rand(1,255),rand(1,255),rand(1,255))
+
+ if(!color_secondary)
+ color_secondary = color
+
+ if(!graffiti_type)
+ graffiti_type = pick("rune", "graffiti", "left", "right", "up", "down")
+
+ var/turf/T = get_turf(src)
+ var/obj/effect/decal/cleanable/crayon/C = new(T, color, color_secondary, graffiti_type)
+
+ C.name = name
+
+ qdel(src)
diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm
index 5e109aafc9..95c24b8247 100644
--- a/code/game/objects/items.dm
+++ b/code/game/objects/items.dm
@@ -2,6 +2,7 @@
name = "item"
icon = 'icons/obj/items.dmi'
w_class = ITEMSIZE_NORMAL
+ blocks_emissive = EMISSIVE_BLOCK_GENERIC
var/image/blood_overlay = null //this saves our blood splatter overlay, which will be processed not to go over the edges of the sprite
var/randpixel = 6
@@ -269,6 +270,7 @@
R.hud_used.update_robot_modules_display()
/obj/item/attackby(obj/item/weapon/W as obj, mob/user as mob)
+ . = ..()
if(istype(W, /obj/item/weapon/storage))
var/obj/item/weapon/storage/S = W
if(S.use_to_pickup)
@@ -632,7 +634,7 @@ var/list/global/slot_flags_enumeration = list(
//Make the blood_overlay have the proper color then apply it.
blood_overlay.color = blood_color
- overlays += blood_overlay
+ add_overlay(blood_overlay)
//if this blood isn't already in the list, add it
if(istype(M))
@@ -824,6 +826,9 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out.
if(!inhands)
apply_blood(standing) //Some items show blood when bloodied
apply_accessories(standing) //Some items sport accessories like webbing
+
+ //Apply overlays to our...overlay
+ apply_overlays(standing)
//Return our icon
return standing
@@ -905,6 +910,15 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out.
/obj/item/proc/apply_accessories(var/image/standing)
return standing
+/obj/item/proc/apply_overlays(var/image/standing)
+ if(!blocks_emissive)
+ return standing
+
+ var/mutable_appearance/blocker_overlay = mutable_appearance(standing.icon, standing.icon_state, plane = PLANE_EMISSIVE, appearance_flags = KEEP_APART)
+ blocker_overlay.color = GLOB.em_block_color
+ standing.add_overlay(blocker_overlay)
+ return standing
+
/obj/item/MouseEntered(location,control,params)
. = ..()
if(usr.is_preference_enabled(/datum/client_preference/inv_tooltips) && ((src in usr) || isstorage(loc))) // If in inventory or in storage we're looking at
diff --git a/code/game/objects/items/bodybag.dm b/code/game/objects/items/bodybag.dm
index 690cdefff1..f43ee46d16 100644
--- a/code/game/objects/items/bodybag.dm
+++ b/code/game/objects/items/bodybag.dm
@@ -71,7 +71,7 @@
if (t)
src.name = "body bag - "
src.name += t
- src.overlays += image(src.icon, "bodybag_label")
+ add_overlay("bodybag_label")
else
src.name = "body bag"
//..() //Doesn't need to run the parent. Since when can fucking bodybags be welded shut? -Agouri
@@ -79,7 +79,7 @@
else if(W.is_wirecutter())
to_chat(user, "You cut the tag off the bodybag")
src.name = "body bag"
- src.overlays.Cut()
+ cut_overlays()
return
/obj/structure/closet/body_bag/store_mobs(var/stored_units)
@@ -127,10 +127,10 @@
else
icon_state = "closed_unlocked"
- src.overlays.Cut()
+ cut_overlays()
/* Ours don't have toetags
if(has_label)
- src.overlays += image(src.icon, "bodybag_label")
+ add_overlay("bodybag_label")
*/
@@ -192,11 +192,11 @@
/obj/structure/closet/body_bag/cryobag/update_icon()
..()
- overlays.Cut()
+ cut_overlays()
var/image/I = image(icon, "indicator[opened]")
I.appearance_flags = RESET_COLOR
I.color = COLOR_LIME
- overlays += I
+ add_overlay(I)
/obj/structure/closet/body_bag/cryobag/MouseDrop(over_object, src_location, over_location)
. = ..()
diff --git a/code/game/objects/items/devices/aicard.dm b/code/game/objects/items/devices/aicard.dm
index fd9767dd87..e1a295dfc4 100644
--- a/code/game/objects/items/devices/aicard.dm
+++ b/code/game/objects/items/devices/aicard.dm
@@ -87,10 +87,10 @@
return TRUE
/obj/item/device/aicard/update_icon()
- overlays.Cut()
+ cut_overlays()
if(carded_ai)
if (!carded_ai.control_disabled)
- overlays += image('icons/obj/pda.dmi', "aicard-on")
+ add_overlay("aicard-on")
if(carded_ai.stat)
icon_state = "aicard-404"
else
diff --git a/code/game/objects/items/devices/defib.dm b/code/game/objects/items/devices/defib.dm
index 2058395d85..6e9cff65e9 100644
--- a/code/game/objects/items/devices/defib.dm
+++ b/code/game/objects/items/devices/defib.dm
@@ -43,25 +43,23 @@
/obj/item/device/defib_kit/update_icon()
- var/list/new_overlays = list()
+ cut_overlays()
if(paddles && paddles.loc == src) //in case paddles got destroyed somehow.
- new_overlays += "[initial(icon_state)]-paddles"
+ add_overlay("[initial(icon_state)]-paddles")
if(bcell && paddles)
if(bcell.check_charge(paddles.chargecost))
if(paddles.combat)
- new_overlays += "[initial(icon_state)]-combat"
+ add_overlay("[initial(icon_state)]-combat")
else if(!paddles.safety)
- new_overlays += "[initial(icon_state)]-emagged"
+ add_overlay("[initial(icon_state)]-emagged")
else
- new_overlays += "[initial(icon_state)]-powered"
+ add_overlay("[initial(icon_state)]-powered")
var/ratio = CEILING(bcell.percent()/25, 1) * 25
- new_overlays += "[initial(icon_state)]-charge[ratio]"
+ add_overlay("[initial(icon_state)]-charge[ratio]")
else
- new_overlays += "[initial(icon_state)]-nocell"
-
- overlays = new_overlays
+ add_overlay("[initial(icon_state)]-nocell")
/obj/item/device/defib_kit/ui_action_click()
toggle_paddles()
diff --git a/code/game/objects/items/devices/denecrotizer_vr.dm b/code/game/objects/items/devices/denecrotizer_vr.dm
new file mode 100644
index 0000000000..ee48820850
--- /dev/null
+++ b/code/game/objects/items/devices/denecrotizer_vr.dm
@@ -0,0 +1,186 @@
+/mob/living/simple_mob //makes it so that any simplemob can potentially be revived by players and joined by ghosts
+ var/ghostjoin = 0
+ var/ic_revivable = 0
+ var/revivedby = "no one"
+
+//The stuff we want to be revivable normally
+/mob/living/simple_mob/animal
+ ic_revivable = 1
+/mob/living/simple_mob/otie
+ ic_revivable = 1
+/mob/living/simple_mob/vore
+ ic_revivable = 1
+//The stuff that would be revivable but that we don't want to be revivable
+/mob/living/simple_mob/animal/giant_spider/nurse //no you can't revive the ones who can lay eggs and get webs everywhere
+ ic_revivable = 0
+/mob/living/simple_mob/animal/giant_spider/carrier //or the ones who fart babies when they die
+ ic_revivable = 0
+
+//WHEN GHOSTS ATTACK!!!!!
+/mob/living/simple_mob/attack_ghost(mob/observer/dead/user as mob)
+ if(!ghostjoin)
+ return ..()
+
+ var/reply = alert("Would you like to become [src]? It is bound to [revivedby].",,"Yes","No")
+ if(reply == "No")
+ return
+
+ if(ckey) //FIRST ONE TO CLICK YES GETS IT!!!!!! Channel your inner youtube commenter.
+ to_chat(src, "Sorry, someone else has already inhabited [src]. ")
+ return
+
+ log_and_message_admins("[key_name_admin(user)] joined [src] as a ghost [ADMIN_FLW(src)]")
+ active_ghost_pods -= src
+ if(user.mind)
+ user.mind.active = TRUE
+ user.mind.transfer_to(src)
+ else
+ src.ckey = user.ckey
+ qdel(user)
+ ghostjoin = 0
+ ghostjoin_icon()
+ if(revivedby != "no one")
+ to_chat(src, "Where once your life had been rough and scary, you have been assisted by [revivedby]. They seem to be the reason you are on your feet again... so perhaps you should help them out. Being as you were revived, you are allied with the station. Do not attack anyone unless they are threatening the one who revived you. And try to listen to the one who revived you within reason. Of course, you may do scenes as you like, but you must still respect preferences. ")
+ visible_message("[src]'s eyes flicker with a curious intelligence.")
+
+
+/obj/item/device/denecrotizer //Away map reward. FOR TRAINED NECROMANCERS ONLY. >:C
+ name = "experimental denecrotizer"
+ desc = "It looks simple on the outside but this device radiates some unknown dread. It does not appear to be of any ordinary make, and just how it works is unclear, but this device seems to interact with dead flesh."
+ icon = 'icons/obj/device_vr.dmi'
+ icon_state = "denecrotizer"
+ w_class = ITEMSIZE_COST_NORMAL
+ var/charges = 5 //your army of minions can only be this big
+ var/last_used
+ var/cooldown = 10 MINUTES //LONG
+ var/revive_time = 30 SECONDS //Don't do this in combat
+ var/advanced = 1 //allows for ghosts to join mobs who get revived by this, and updates their faction to yours
+
+/obj/item/device/denecrotizer/examine(var/mob/user)
+ . = ..()
+ var/cooldowntime = round((cooldown - (world.time - last_used)) * 0.1)
+ if(Adjacent(user))
+ if(cooldowntime <= 0)
+ . += "The screen indicates that this device is ready to be used, and that it has enough energy for [charges] uses. "
+ else
+ . += "The screen indicates that this device can be used again in [cooldowntime] seconds, and that it has enough energy for [charges] uses. "
+
+/obj/item/device/denecrotizer/proc/check_target(mob/living/simple_mob/target, mob/living/user)
+ if(!target.Adjacent(user))
+ return FALSE
+ if(user.a_intent != I_HELP) //be gentle
+ user.visible_message("[user] bonks [target] with [src].", runemessage = "bonks [target]")
+ return FALSE
+ if(!istype(target))
+ to_chat(user, "[target] seems to be too complicated for [src] to interface with. ")
+ return FALSE
+ if(!(world.time - last_used > cooldown))
+ to_chat(user, "[src] doesn't seem to be ready yet. ")
+ return FALSE
+ if(!charges)
+ to_chat(user, "[src] doesn't seem to be active anymore. ")
+ return FALSE
+ if(!target.ic_revivable)
+ to_chat(user, "[src] doesn't seem to interface with [target]. ")
+ return FALSE
+ if(target.stat != DEAD)
+ if(!advanced)
+ to_chat(user, "[src] doesn't seem to work on that. ")
+ return FALSE
+ if(target.ai_holder.retaliate || target.ai_holder.hostile) // You can be friends with still living mobs if they are passive I GUESS
+ to_chat(user, "[src] doesn't seem to work on that. ")
+ return FALSE
+ if(!target.mind)
+ user.visible_message("[user] gently presses [src] to [target]...", runemessage = "presses [src] to [target]")
+ if(do_after(user, revive_time, exclusive = 1, target = target))
+ target.faction = user.faction
+ target.revivedby = user.name
+ target.ghostjoin = 1
+ active_ghost_pods += target
+ target.ghostjoin_icon()
+ last_used = world.time
+ charges--
+ log_and_message_admins("[key_name_admin(user)] used a denecrotizer to tame/offer a simplemob to ghosts: [target]. [ADMIN_FLW(src)]")
+ target.visible_message("[target]'s eyes widen, as though in revelation as it looks at [user].", runemessage = "eyes widen")
+ if(charges == 0)
+ icon_state = "[initial(icon_state)]-o"
+ update_icon()
+ return FALSE
+ else
+ to_chat(user, "[src] doesn't seem to work on that. ")
+ return FALSE
+ return TRUE
+
+/obj/item/device/denecrotizer/proc/ghostjoin_rez(mob/living/simple_mob/target, mob/living/user)
+ user.visible_message("[user] gently presses [src] to [target]...", runemessage = "presses [src] to [target]")
+ if(do_after(user, revive_time, exclusive = 1, target = target))
+ target.faction = user.faction
+ target.revivedby = user.name
+ target.revive()
+ target.sight = initial(target.sight)
+ target.see_in_dark = initial(target.see_in_dark)
+ target.see_invisible = initial(target.see_invisible)
+ target.update_icon()
+ visible_message("[target] lifts its head and looks at [user].", runemessage = "lifts its head and looks at [user]")
+ log_and_message_admins("[key_name_admin(user)] used a denecrotizer to revive a simple mob: [target]. [ADMIN_FLW(src)]")
+ if(!target.mind) //if it doesn't have a mind then no one has been playing as it, and it is safe to offer to ghosts.
+ target.ghostjoin = 1
+ active_ghost_pods += target
+ target.ghostjoin_icon()
+ last_used = world.time
+ charges--
+ if(charges == 0)
+ icon_state = "[initial(icon_state)]-o"
+ update_icon()
+ return
+
+/obj/item/device/denecrotizer/proc/basic_rez(mob/living/simple_mob/target, mob/living/user) //so medical can have a way to bring back people's pets or whatever, does not change any settings about the mob or offer it to ghosts.
+ user.visible_message("[user] presses [src] to [target]...", runemessage = "presses [src] to [target]")
+ if(do_after(user, revive_time, exclusive = 1, target = target))
+ target.revive()
+ target.sight = initial(target.sight)
+ target.see_in_dark = initial(target.see_in_dark)
+ target.see_invisible = initial(target.see_invisible)
+ target.update_icon()
+ visible_message("[target] lifts its head and looks at [user].", runemessage = "lifts its head and looks at [user]")
+ last_used = world.time
+ charges--
+ if(charges == 0)
+ icon_state = "[initial(icon_state)]-o"
+ update_icon()
+ return
+ else
+ user.visible_message("[user] bonks [target] with [src]. Nothing happened.")
+ return
+
+
+
+/obj/item/device/denecrotizer/attack(mob/living/simple_mob/target, mob/living/user)
+ if(check_target(target, user))
+ if(advanced)
+ ghostjoin_rez(target, user)
+ else
+ basic_rez(target, user)
+ else
+ return ..()
+
+/mob/living/simple_mob/proc/ghostjoin_icon() //puts an icon on mobs for ghosts, so they can see if a mob has been revived and is joinable
+ var/static/image/I
+ if(!I)
+ I = image('icons/mob/hud_vr.dmi', "ghostjoin")
+ I.invisibility = INVISIBILITY_OBSERVER
+ I.plane = PLANE_GHOSTS
+ I.appearance_flags = KEEP_APART|RESET_TRANSFORM
+
+ if(ghostjoin)
+ add_overlay(I)
+ else
+ cut_overlay(I)
+
+/obj/item/device/denecrotizer/medical //Can revive more things, but without the special ghost and faction stuff. For medical use.
+ name = "commercial denecrotizer"
+ desc = "A curious device who's purpose is reviving simpler life forms. It seems to radiate menace."
+ icon_state = "m-denecrotizer"
+ advanced = 0 //This one isn't as fancy
+ cooldown = 5 MINUTES //not as long
+ charges = 20 //in case spiders merc Ian
\ No newline at end of file
diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm
index 3dafea4ac7..62d1b4b934 100644
--- a/code/game/objects/items/devices/flashlight.dm
+++ b/code/game/objects/items/devices/flashlight.dm
@@ -7,15 +7,18 @@
slot_flags = SLOT_BELT
matter = list(DEFAULT_WALL_MATERIAL = 50,"glass" = 20)
action_button_name = "Toggle Flashlight"
+
+ light_system = MOVABLE_LIGHT_DIRECTIONAL
+ light_range = 4 //luminosity when on
+ light_power = 0.8 //lighting power when on
+ light_color = "#FFFFFF" //LIGHT_COLOR_INCANDESCENT_FLASHLIGHT //lighting colour when on
+ light_cone_y_offset = -7
+
var/on = 0
- var/brightness_on = 4 //luminosity when on
- var/flashlight_power = 0.8 //lighting power when on
- var/flashlight_colour = LIGHT_COLOR_INCANDESCENT_FLASHLIGHT //lighting colour when on
+
var/obj/item/weapon/cell/cell
var/cell_type = /obj/item/weapon/cell/device
- var/list/brightness_levels
- var/brightness_level = "medium"
- var/power_usage
+ var/power_usage = 1
var/power_use = 1
/obj/item/device/flashlight/Initialize()
@@ -23,12 +26,8 @@
if(power_use && cell_type)
cell = new cell_type(src)
- brightness_levels = list("low" = 0.25, "medium" = 0.5, "high" = 1)
- power_usage = brightness_levels[brightness_level]
- else
- verbs -= /obj/item/device/flashlight/verb/toggle
-
- update_icon()
+
+ update_brightness()
/obj/item/device/flashlight/Destroy()
STOP_PROCESSING(SSobj, src)
@@ -38,63 +37,40 @@
/obj/item/device/flashlight/get_cell()
return cell
-/obj/item/device/flashlight/verb/toggle()
- set name = "Toggle Flashlight Brightness"
- set category = "Object"
- set src in usr
- set_brightness(usr)
-
-/obj/item/device/flashlight/proc/set_brightness(mob/user as mob)
- var/choice = input("Choose a brightness level.") as null|anything in brightness_levels
- if(choice)
- brightness_level = choice
- power_usage = brightness_levels[choice]
- to_chat(user, "You set the brightness level on \the [src] to [brightness_level]. ")
- update_icon()
-
/obj/item/device/flashlight/process()
if(!on || !cell)
return PROCESS_KILL
- if(brightness_level && power_usage)
+ if(power_usage)
if(cell.use(power_usage) != power_usage) // we weren't able to use our full power_usage amount!
visible_message("\The [src] flickers before going dull. ")
- set_light(0)
- playsound(src, 'sound/effects/sparks3.ogg', 10, 1, -3) //Small cue that your light went dull in your pocket.
+ playsound(src, 'sound/effects/sparks3.ogg', 10, 1, -3) //Small cue that your light went dull in your pocket. //VOREStation Edit
on = 0
- update_icon()
+ update_brightness()
return PROCESS_KILL
-/obj/item/device/flashlight/update_icon()
+/obj/item/device/flashlight/proc/update_brightness()
if(on)
icon_state = "[initial(icon_state)]-on"
-
- if(brightness_level == "low")
- set_light(brightness_on/2, flashlight_power*0.75, flashlight_colour)
- else if(brightness_level == "high")
- set_light(brightness_on*1.5, flashlight_power*1.1, flashlight_colour)
- else
- set_light(brightness_on, flashlight_power, flashlight_colour)
-
else
- icon_state = "[initial(icon_state)]"
- set_light(0)
+ icon_state = initial(icon_state)
+ set_light_on(on)
+ if(light_system == STATIC_LIGHT)
+ update_light()
/obj/item/device/flashlight/examine(mob/user)
. = ..()
- if(power_use && brightness_level)
- . += "\The [src] is set to [brightness_level]."
- if(cell)
- . += "\The [src] has a \the [cell] attached."
+ if(power_use && cell)
+ . += "\The [src] has a \the [cell] attached."
- if(cell.charge <= cell.maxcharge*0.25)
- . += "It appears to have a low amount of power remaining."
- else if(cell.charge > cell.maxcharge*0.25 && cell.charge <= cell.maxcharge*0.5)
- . += "It appears to have an average amount of power remaining."
- else if(cell.charge > cell.maxcharge*0.5 && cell.charge <= cell.maxcharge*0.75)
- . += "It appears to have an above average amount of power remaining."
- else if(cell.charge > cell.maxcharge*0.75 && cell.charge <= cell.maxcharge)
- . += "It appears to have a high amount of power remaining."
+ if(cell.charge <= cell.maxcharge*0.25)
+ . += "It appears to have a low amount of power remaining."
+ else if(cell.charge > cell.maxcharge*0.25 && cell.charge <= cell.maxcharge*0.5)
+ . += "It appears to have an average amount of power remaining."
+ else if(cell.charge > cell.maxcharge*0.5 && cell.charge <= cell.maxcharge*0.75)
+ . += "It appears to have an above average amount of power remaining."
+ else if(cell.charge > cell.maxcharge*0.75 && cell.charge <= cell.maxcharge)
+ . += "It appears to have a high amount of power remaining."
/obj/item/device/flashlight/attack_self(mob/user)
if(power_use)
@@ -109,8 +85,8 @@
START_PROCESSING(SSobj, src)
else if(power_use)
STOP_PROCESSING(SSobj, src)
- playsound(src, 'sound/weapons/empty.ogg', 15, 1, -3)
- update_icon()
+ playsound(src, 'sound/weapons/empty.ogg', 15, 1, -3) // VOREStation Edit
+ update_brightness()
user.update_action_buttons()
return 1
@@ -177,7 +153,7 @@
to_chat(user, "You remove the cell from the [src]. ")
playsound(src, 'sound/machines/button.ogg', 30, 1, 0)
on = 0
- update_icon()
+ update_brightness()
return
..()
else
@@ -225,7 +201,7 @@
cell = W
to_chat(user, "You install a cell in \the [src]. ")
playsound(src, 'sound/machines/button.ogg', 30, 1, 0)
- update_icon()
+ update_brightness()
else
to_chat(user, "\The [src] already has a cell. ")
else
@@ -242,7 +218,7 @@
drop_sound = 'sound/items/drop/accessory.ogg'
pickup_sound = 'sound/items/pickup/accessory.ogg'
slot_flags = SLOT_EARS
- brightness_on = 2
+ light_range = 2
w_class = ITEMSIZE_TINY
power_use = 0
@@ -270,7 +246,7 @@
name = "maglight"
desc = "A very, very heavy duty flashlight."
icon_state = "maglight"
- flashlight_colour = LIGHT_COLOR_FLUORESCENT_FLASHLIGHT
+ light_color = LIGHT_COLOR_FLUORESCENT_FLASHLIGHT
force = 10
slot_flags = SLOT_BELT
w_class = ITEMSIZE_SMALL
@@ -283,7 +259,7 @@
desc = "A miniature lamp, that might be used by small robots."
icon_state = "penlight"
item_state = null
- brightness_on = 2
+ light_range = 2
w_class = ITEMSIZE_TINY
power_use = 0
@@ -294,10 +270,11 @@
icon_state = "lamp"
force = 10
center_of_mass = list("x" = 13,"y" = 11)
- brightness_on = 10
+ light_range = 5
w_class = ITEMSIZE_LARGE
power_use = 0
on = 1
+ light_system = STATIC_LIGHT
// green-shaded desk lamp
@@ -305,8 +282,7 @@
desc = "A classic green-shaded desk lamp."
icon_state = "lampgreen"
center_of_mass = list("x" = 15,"y" = 11)
- brightness_on = 5
- flashlight_colour = "#FFC58F"
+ light_color = "#FFC58F"
/obj/item/device/flashlight/lamp/verb/toggle_light()
set name = "Toggle light"
@@ -322,9 +298,9 @@
name = "flare"
desc = "A red standard-issue flare. There are instructions on the side reading 'pull cord, make light'."
w_class = ITEMSIZE_SMALL
- brightness_on = 8 // Pretty bright.
- flashlight_power = 0.8
- flashlight_colour = LIGHT_COLOR_FLARE
+ light_range = 8 // Pretty bright.
+ light_power = 0.8
+ light_color = LIGHT_COLOR_FLARE
icon_state = "flare"
item_state = "flare"
action_button_name = null //just pull it manually, neckbeard.
@@ -334,6 +310,7 @@
power_use = 0
drop_sound = 'sound/items/drop/gloves.ogg'
pickup_sound = 'sound/items/pickup/gloves.ogg'
+ light_system = MOVABLE_LIGHT
/obj/item/device/flashlight/flare/New()
fuel = rand(800, 1000) // Sorry for changing this so much but I keep under-estimating how long X number of ticks last in seconds.
@@ -354,7 +331,7 @@
on = 0
src.force = initial(src.force)
src.damtype = initial(src.damtype)
- update_icon()
+ update_brightness()
/obj/item/device/flashlight/flare/attack_self(mob/user)
@@ -375,7 +352,7 @@
/obj/item/device/flashlight/flare/proc/ignite() //Used for flare launchers.
on = !on
- update_icon()
+ update_brightness()
force = on_damage
damtype = "fire"
START_PROCESSING(SSobj, src)
@@ -387,9 +364,10 @@
name = "green glowstick"
desc = "A green military-grade glowstick."
w_class = ITEMSIZE_SMALL
- brightness_on = 4
- flashlight_power = 0.9
- flashlight_colour = "#49F37C"
+ light_system = MOVABLE_LIGHT
+ light_range = 4
+ light_power = 0.9
+ light_color = "#49F37C"
icon_state = "glowstick"
item_state = "glowstick"
var/fuel = 0
@@ -409,7 +387,7 @@
/obj/item/device/flashlight/glowstick/proc/turn_off()
on = 0
- update_icon()
+ update_brightness()
/obj/item/device/flashlight/glowstick/attack_self(mob/user)
@@ -427,28 +405,28 @@
/obj/item/device/flashlight/glowstick/red
name = "red glowstick"
desc = "A red military-grade glowstick."
- flashlight_colour = "#FC0F29"
+ light_color = "#FC0F29"
icon_state = "glowstick_red"
item_state = "glowstick_red"
/obj/item/device/flashlight/glowstick/blue
name = "blue glowstick"
desc = "A blue military-grade glowstick."
- flashlight_colour = "#599DFF"
+ light_color = "#599DFF"
icon_state = "glowstick_blue"
item_state = "glowstick_blue"
/obj/item/device/flashlight/glowstick/orange
name = "orange glowstick"
desc = "A orange military-grade glowstick."
- flashlight_colour = "#FA7C0B"
+ light_color = "#FA7C0B"
icon_state = "glowstick_orange"
item_state = "glowstick_orange"
/obj/item/device/flashlight/glowstick/yellow
name = "yellow glowstick"
desc = "A yellow military-grade glowstick."
- flashlight_colour = "#FEF923"
+ light_color = "#FEF923"
icon_state = "glowstick_yellow"
item_state = "glowstick_yellow"
@@ -460,17 +438,17 @@
icon = 'icons/obj/lighting.dmi'
icon_state = "floor1" //not a slime extract sprite but... something close enough!
item_state = "slime"
- flashlight_colour = "#FFF423"
+ light_color = "#FFF423"
w_class = ITEMSIZE_TINY
- brightness_on = 6
+ light_range = 6
on = 1 //Bio-luminesence has one setting, on.
power_use = 0
/obj/item/device/flashlight/slime/New()
..()
- set_light(brightness_on, flashlight_power, flashlight_colour)
+ set_light(light_range, light_power, light_color)
-/obj/item/device/flashlight/slime/update_icon()
+/obj/item/device/flashlight/slime/update_brightness()
return
/obj/item/device/flashlight/slime/attack_self(mob/user)
diff --git a/code/game/objects/items/devices/flashlight_vr.dm b/code/game/objects/items/devices/flashlight_vr.dm
index 6c50595006..876dddc76d 100644
--- a/code/game/objects/items/devices/flashlight_vr.dm
+++ b/code/game/objects/items/devices/flashlight_vr.dm
@@ -1,8 +1,9 @@
/obj/item/device/flashlight/glowstick/radioisotope
name = "radioisotope glowstick"
desc = "A radioisotope powered glowstick. Escaping particles light up the area far brighter on similar levels to flares and for longer"
- flashlight_colour = "#599DFF"
icon_state = "glowstick_blue"
item_state = "glowstick_blue"
- flashlight_power = 0.1
- brightness_on = 8
+
+ light_range = 8
+ light_power = 0.1
+ light_color = "#599DFF"
diff --git a/code/game/objects/items/devices/multitool.dm b/code/game/objects/items/devices/multitool.dm
index 837c6616f7..18fc293542 100644
--- a/code/game/objects/items/devices/multitool.dm
+++ b/code/game/objects/items/devices/multitool.dm
@@ -29,6 +29,7 @@
var/obj/machinery/connectable //Used to connect machinery.
var/weakref_wiring //Used to store weak references for integrated circuitry. This is now the Omnitool.
toolspeed = 1
+ tool_qualities = list(TOOL_MULTITOOL)
/obj/item/device/multitool/attack_self(mob/living/user)
var/choice = alert("What do you want to do with \the [src]?","Multitool Menu", "Switch Mode", "Clear Buffers", "Cancel")
diff --git a/code/game/objects/items/devices/paicard.dm b/code/game/objects/items/devices/paicard.dm
index c3850ad0dd..db88469a47 100644
--- a/code/game/objects/items/devices/paicard.dm
+++ b/code/game/objects/items/devices/paicard.dm
@@ -24,7 +24,7 @@ GLOBAL_LIST_BOILERPLATE(all_pai_cards, /obj/item/device/paicard)
/obj/item/device/paicard/New()
..()
- overlays += "pai-off"
+ add_overlay("pai-off")
/obj/item/device/paicard/Destroy()
//Will stop people throwing friend pAIs into the singularity so they can respawn
@@ -304,34 +304,34 @@ GLOBAL_LIST_BOILERPLATE(all_pai_cards, /obj/item/device/paicard)
/obj/item/device/paicard/proc/setPersonality(mob/living/silicon/pai/personality)
src.pai = personality
- src.overlays += "pai-happy"
+ add_overlay("pai-happy")
/obj/item/device/paicard/proc/removePersonality()
src.pai = null
- src.overlays.Cut()
- src.overlays += "pai-off"
+ cut_overlays()
+ add_overlay("pai-off")
/obj/item/device/paicard
var/current_emotion = 1
/obj/item/device/paicard/proc/setEmotion(var/emotion)
if(pai)
- src.overlays.Cut()
+ cut_overlays()
switch(emotion)
- if(1) src.overlays += "pai-happy"
- if(2) src.overlays += "pai-cat"
- if(3) src.overlays += "pai-extremely-happy"
- if(4) src.overlays += "pai-face"
- if(5) src.overlays += "pai-laugh"
- if(6) src.overlays += "pai-off"
- if(7) src.overlays += "pai-sad"
- if(8) src.overlays += "pai-angry"
- if(9) src.overlays += "pai-what"
- if(10) src.overlays += "pai-neutral"
- if(11) src.overlays += "pai-silly"
- if(12) src.overlays += "pai-nose"
- if(13) src.overlays += "pai-smirk"
- if(14) src.overlays += "pai-exclamation"
- if(15) src.overlays += "pai-question"
+ if(1) add_overlay("pai-happy")
+ if(2) add_overlay("pai-cat")
+ if(3) add_overlay("pai-extremely-happy")
+ if(4) add_overlay("pai-face")
+ if(5) add_overlay("pai-laugh")
+ if(6) add_overlay("pai-off")
+ if(7) add_overlay("pai-sad")
+ if(8) add_overlay("pai-angry")
+ if(9) add_overlay("pai-what")
+ if(10) add_overlay("pai-neutral")
+ if(11) add_overlay("pai-silly")
+ if(12) add_overlay("pai-nose")
+ if(13) add_overlay("pai-smirk")
+ if(14) add_overlay("pai-exclamation")
+ if(15) add_overlay("pai-question")
current_emotion = emotion
/obj/item/device/paicard/proc/alertUpdate()
diff --git a/code/game/objects/items/devices/radio/jammer.dm b/code/game/objects/items/devices/radio/jammer.dm
index b59101cc66..ed52707904 100644
--- a/code/game/objects/items/devices/radio/jammer.dm
+++ b/code/game/objects/items/devices/radio/jammer.dm
@@ -109,8 +109,7 @@ var/global/list/active_radio_jammers = list()
// Only Cut() if we need to.
if(overlay_percent != last_overlay_percent)
- overlays.Cut()
- var/image/I = image(src.icon, src, "jammer_overlay_[overlay_percent]")
- overlays += I
+ cut_overlays()
+ add_overlay("jammer_overlay_[overlay_percent]")
last_overlay_percent = overlay_percent
diff --git a/code/game/objects/items/devices/t_scanner.dm b/code/game/objects/items/devices/t_scanner.dm
index 0709429ac1..bd96945fc6 100644
--- a/code/game/objects/items/devices/t_scanner.dm
+++ b/code/game/objects/items/devices/t_scanner.dm
@@ -28,7 +28,7 @@
/obj/item/device/t_scanner/proc/set_active(var/active)
on = active
if(on)
- START_PROCESSING(SSobj, src)
+ START_PROCESSING(SSobj, src)
flicker = 0
else
STOP_PROCESSING(SSobj, src)
@@ -87,7 +87,7 @@
if(istype(scanned, /obj/machinery/atmospherics/pipe))
var/obj/machinery/atmospherics/pipe/P = scanned
I.color = P.pipe_color
- I.overlays += P.overlays
+ I.add_overlay(P.overlays)
I.alpha = 128
I.mouse_opacity = 0
diff --git a/code/game/objects/items/devices/taperecorder.dm b/code/game/objects/items/devices/taperecorder.dm
index 4e5032b6b9..a778652686 100644
--- a/code/game/objects/items/devices/taperecorder.dm
+++ b/code/game/objects/items/devices/taperecorder.dm
@@ -372,9 +372,9 @@
/obj/item/device/tape/update_icon()
- overlays.Cut()
+ cut_overlays()
if(ruined)
- overlays += "ribbonoverlay"
+ add_overlay("ribbonoverlay")
/obj/item/device/tape/fire_act()
diff --git a/code/game/objects/items/devices/transfer_valve.dm b/code/game/objects/items/devices/transfer_valve.dm
index f72c3c4d24..dc27b39fce 100644
--- a/code/game/objects/items/devices/transfer_valve.dm
+++ b/code/game/objects/items/devices/transfer_valve.dm
@@ -119,7 +119,7 @@
VARSET_IN(src, toggle, TRUE, 5 SECONDS)
/obj/item/device/transfer_valve/update_icon()
- overlays.Cut()
+ cut_overlays()
underlays = null
if(!tank_one && !tank_two && !attached_device)
@@ -128,13 +128,13 @@
icon_state = "valve"
if(tank_one)
- overlays += "[tank_one.icon_state]"
+ add_overlay("[tank_one.icon_state]")
if(tank_two)
var/icon/J = new(icon, icon_state = "[tank_two.icon_state]")
J.Shift(WEST, 13)
underlays += J
if(attached_device)
- overlays += "device"
+ add_overlay("device")
/obj/item/device/transfer_valve/proc/remove_tank(obj/item/weapon/tank/T)
if(tank_one == T)
diff --git a/code/game/objects/items/devices/translocator_vr.dm b/code/game/objects/items/devices/translocator_vr.dm
index e72e9d7d25..22bc9a73e7 100644
--- a/code/game/objects/items/devices/translocator_vr.dm
+++ b/code/game/objects/items/devices/translocator_vr.dm
@@ -73,9 +73,9 @@
var/obj/item/device/perfect_tele_beacon/beacon = beacons[bcn]
if(destination == beacon)
- I.overlays += radial_seton
+ I.add_overlay(radial_seton)
else
- I.overlays += radial_set
+ I.add_overlay(radial_set)
radial_images[bcn] = I
@@ -83,7 +83,7 @@
if(beacons_left)
var/image/I = image(icon = 'icons/mob/radial_vr.dmi', icon_state = "tl_[index]")
- I.overlays += radial_plus
+ I.add_overlay(radial_plus)
radial_images["New Beacon"] = I
/obj/item/device/perfect_tele/attack_hand(mob/user)
diff --git a/code/game/objects/items/glassjar.dm b/code/game/objects/items/glassjar.dm
index 9db0d88010..1c066117a9 100644
--- a/code/game/objects/items/glassjar.dm
+++ b/code/game/objects/items/glassjar.dm
@@ -86,7 +86,7 @@
/obj/item/glass_jar/update_icon() // Also updates name and desc
underlays.Cut()
- overlays.Cut()
+ cut_overlays()
switch(contains)
if(JAR_NOTHING)
name = initial(name)
@@ -138,7 +138,7 @@
/obj/item/glass_jar/fish/update_icon() // Also updates name and desc
underlays.Cut()
- overlays.Cut()
+ cut_overlays()
if(filled)
underlays += image(icon, "[icon_state]_water")
diff --git a/code/game/objects/items/robobag.dm b/code/game/objects/items/robobag.dm
index 33c3ba89ed..4c54a5d78f 100644
--- a/code/game/objects/items/robobag.dm
+++ b/code/game/objects/items/robobag.dm
@@ -32,7 +32,7 @@
. += "[src] has a [corptag] attached to it. "
/obj/structure/closet/body_bag/cryobag/robobag/update_icon()
- overlays.Cut()
+ cut_overlays()
..()
if(corptag)
var/corptag_icon_state = "tag_blank"
@@ -45,8 +45,7 @@
else if(istype(corptag, /obj/item/clothing/accessory/badge/corporate_tag))
corptag_icon_state = corptag.icon_state
- var/image/I = image(icon, corptag_icon_state)
- overlays += I
+ add_overlay(corptag_icon_state)
/obj/structure/closet/body_bag/cryobag/robobag/AltClick(mob/user)
if(!Adjacent(user))
diff --git a/code/game/objects/items/robot/robot_parts.dm b/code/game/objects/items/robot/robot_parts.dm
index 554663727f..87361c2e05 100644
--- a/code/game/objects/items/robot/robot_parts.dm
+++ b/code/game/objects/items/robot/robot_parts.dm
@@ -76,19 +76,19 @@
src.updateicon()
/obj/item/robot_parts/robot_suit/proc/updateicon()
- src.overlays.Cut()
+ cut_overlays()
if(src.l_arm)
- src.overlays += "l_arm+o"
+ add_overlay("l_arm+o")
if(src.r_arm)
- src.overlays += "r_arm+o"
+ add_overlay("r_arm+o")
if(src.chest)
- src.overlays += "chest+o"
+ add_overlay("chest+o")
if(src.l_leg)
- src.overlays += "l_leg+o"
+ add_overlay("l_leg+o")
if(src.r_leg)
- src.overlays += "r_leg+o"
+ add_overlay("r_leg+o")
if(src.head)
- src.overlays += "head+o"
+ add_overlay("head+o")
/obj/item/robot_parts/robot_suit/proc/check_completion()
if(src.l_arm && src.r_arm)
diff --git a/code/game/objects/items/shooting_range.dm b/code/game/objects/items/shooting_range.dm
index 982236f43c..d25e96f078 100644
--- a/code/game/objects/items/shooting_range.dm
+++ b/code/game/objects/items/shooting_range.dm
@@ -36,7 +36,7 @@
if (istype(W, /obj/item/weapon/weldingtool))
var/obj/item/weapon/weldingtool/WT = W
if(WT.remove_fuel(0, user))
- overlays.Cut()
+ cut_overlays()
to_chat(usr, "You slice off [src]'s uneven chunks of aluminum and scorch marks.")
return
@@ -139,7 +139,7 @@
virtualIcon.DrawBox(null, B.b1x1, B.b1y, B.b1x2, B.b1y) // horizontal line, left to right
virtualIcon.DrawBox(null, B.b2x, B.b2y1, B.b2x, B.b2y2) // vertical line, top to bottom
- overlays += bmark // add the decal
+ add_overlay(bmark) // add the decal
icon = virtualIcon // apply bulletholes over decals
diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm
index 89dac4c308..36e20414f9 100644
--- a/code/game/objects/items/stacks/stack.dm
+++ b/code/game/objects/items/stacks/stack.dm
@@ -236,8 +236,6 @@
if(!uses_charge)
amount -= used
if (amount <= 0)
- if(usr)
- usr.remove_from_mob(src)
qdel(src) //should be safe to qdel immediately since if someone is still using this stack it will persist for a little while longer
update_icon()
return 1
diff --git a/code/game/objects/items/weapons/explosives.dm b/code/game/objects/items/weapons/explosives.dm
index c4d0bf657e..d81e6e444e 100644
--- a/code/game/objects/items/weapons/explosives.dm
+++ b/code/game/objects/items/weapons/explosives.dm
@@ -65,7 +65,7 @@
message_admins("[key_name(user, user.client)](? ) planted [src.name] on [target.name] at ([target.x],[target.y],[target.z] - JMP ) with [timer] second fuse",0,1)
log_game("[key_name(user)] planted [src.name] on [target.name] at ([target.x],[target.y],[target.z]) with [timer] second fuse")
- target.overlays += image_overlay
+ target.add_overlay(image_overlay, TRUE)
to_chat(user, "Bomb has been planted. Timer counting down from [timer].")
spawn(timer*10)
explode(get_turf(target))
@@ -87,7 +87,7 @@
else
target.ex_act(1)
if(target)
- target.overlays -= image_overlay
+ target.cut_overlay(image_overlay, TRUE)
qdel(src)
/obj/item/weapon/plastique/attack(mob/M as mob, mob/user as mob, def_zone)
diff --git a/code/game/objects/items/weapons/explosives_vr.dm b/code/game/objects/items/weapons/explosives_vr.dm
index ce7a182fd6..fb065b7bf9 100644
--- a/code/game/objects/items/weapons/explosives_vr.dm
+++ b/code/game/objects/items/weapons/explosives_vr.dm
@@ -10,7 +10,7 @@
var/turf/T = get_turf(target)
if(T.z in using_map.station_levels)
target.visible_message("\The [src] lets out a loud beep as safeties trigger, before imploding and falling apart. ")
- target.overlays -= image_overlay
+ target.cut_overlay(image_overlay, TRUE)
qdel(src)
return 0
else
diff --git a/code/game/objects/items/weapons/flamethrower.dm b/code/game/objects/items/weapons/flamethrower.dm
index b2e783ba69..ad23dc4f2a 100644
--- a/code/game/objects/items/weapons/flamethrower.dm
+++ b/code/game/objects/items/weapons/flamethrower.dm
@@ -46,13 +46,13 @@
/obj/item/weapon/flamethrower/update_icon()
- overlays.Cut()
+ cut_overlays()
if(igniter)
- overlays += "+igniter[status]"
+ add_overlay("+igniter[status]")
if(ptank)
- overlays += "+ptank"
+ add_overlay("+ptank")
if(lit)
- overlays += "+lit"
+ add_overlay("+lit")
item_state = "flamethrower_1"
else
item_state = "flamethrower_0"
diff --git a/code/game/objects/items/weapons/grenades/supermatter.dm b/code/game/objects/items/weapons/grenades/supermatter.dm
index 7eff5accd4..988c00d0b2 100644
--- a/code/game/objects/items/weapons/grenades/supermatter.dm
+++ b/code/game/objects/items/weapons/grenades/supermatter.dm
@@ -19,9 +19,9 @@
playsound(src, 'sound/weapons/wave.ogg', 100)
/obj/item/weapon/grenade/supermatter/update_icon()
- overlays.Cut()
+ cut_overlays()
if(implode_at)
- overlays += image(icon = 'icons/rust.dmi', icon_state = "emfield_s1")
+ add_overlay(image(icon = 'icons/rust.dmi', icon_state = "emfield_s1"))
/obj/item/weapon/grenade/supermatter/process()
if(!isturf(loc))
diff --git a/code/game/objects/items/weapons/material/ashtray.dm b/code/game/objects/items/weapons/material/ashtray.dm
index 95e558b36a..a06e0afe93 100644
--- a/code/game/objects/items/weapons/material/ashtray.dm
+++ b/code/game/objects/items/weapons/material/ashtray.dm
@@ -22,23 +22,23 @@ var/global/list/ashtray_cache = list()
/obj/item/weapon/material/ashtray/update_icon()
color = null
- overlays.Cut()
+ cut_overlays()
var/cache_key = "base-[material.name]"
if(!ashtray_cache[cache_key])
var/image/I = image('icons/obj/objects.dmi',"ashtray")
I.color = material.icon_colour
ashtray_cache[cache_key] = I
- overlays |= ashtray_cache[cache_key]
+ add_overlay(ashtray_cache[cache_key])
if (contents.len == max_butts)
if(!ashtray_cache["full"])
ashtray_cache["full"] = image('icons/obj/objects.dmi',"ashtray_full")
- overlays |= ashtray_cache["full"]
+ add_overlay(ashtray_cache["full"])
desc = "It's stuffed full."
else if (contents.len > max_butts/2)
if(!ashtray_cache["half"])
ashtray_cache["half"] = image('icons/obj/objects.dmi',"ashtray_half")
- overlays |= ashtray_cache["half"]
+ add_overlay(ashtray_cache["half"])
desc = "It's half-filled."
else
desc = "An ashtray made of [material.display_name]."
diff --git a/code/game/objects/items/weapons/material/kitchen.dm b/code/game/objects/items/weapons/material/kitchen.dm
index e52b2add28..909b3f0618 100644
--- a/code/game/objects/items/weapons/material/kitchen.dm
+++ b/code/game/objects/items/weapons/material/kitchen.dm
@@ -49,7 +49,7 @@
return
M.visible_message("\The [user] feeds some [loaded] to \the [M] with \the [src]. ")
playsound(src,'sound/items/eatfood.ogg', rand(10,40), 1)
- overlays.Cut()
+ cut_overlays()
return
else
to_chat(user, "You don't have anything on \the [src]. ") //if we have help intent and no food scooped up DON'T STAB OURSELVES WITH THE FORK
diff --git a/code/game/objects/items/weapons/policetape.dm b/code/game/objects/items/weapons/policetape.dm
index 61162363ee..9cb6f78daa 100644
--- a/code/game/objects/items/weapons/policetape.dm
+++ b/code/game/objects/items/weapons/policetape.dm
@@ -114,7 +114,7 @@ var/list/tape_roll_applications = list()
color = COLOR_DEEP_SKY_BLUE
/obj/item/taperoll/update_icon()
- overlays.Cut()
+ cut_overlays()
var/image/overlay = image(icon = src.icon)
overlay.appearance_flags = RESET_COLOR
if(ismob(loc))
@@ -122,7 +122,7 @@ var/list/tape_roll_applications = list()
overlay.icon_state = "start"
else
overlay.icon_state = "stop"
- overlays += overlay
+ add_overlay(overlay)
/obj/item/taperoll/dropped(mob/user)
@@ -303,11 +303,11 @@ var/list/tape_roll_applications = list()
if(tape_roll_applications[F] & direction) // hazard_overlay in F.overlays wouldn't work.
user.visible_message("\The [user] uses the adhesive of \the [src] to remove area markings from \the [F].", "You use the adhesive of \the [src] to remove area markings from \the [F].")
- F.overlays -= hazard_overlay
+ F.cut_overlay(hazard_overlay)
tape_roll_applications[F] &= ~direction
else
user.visible_message("\The [user] applied \the [src] on \the [F] to create area markings.", "You apply \the [src] on \the [F] to create area markings.")
- F.overlays |= hazard_overlay
+ F.add_overlay(hazard_overlay)
tape_roll_applications[F] |= direction
return
diff --git a/code/game/objects/items/weapons/storage/backpack_vr.dm b/code/game/objects/items/weapons/storage/backpack_vr.dm
index 33e6aa2b3b..eda37941a1 100644
--- a/code/game/objects/items/weapons/storage/backpack_vr.dm
+++ b/code/game/objects/items/weapons/storage/backpack_vr.dm
@@ -115,6 +115,38 @@
icon_override = 'icons/mob/back_vr.dmi'
icon_state = "explorer_duffle"
+///Talon Bags///
+
+/obj/item/weapon/storage/backpack/talon
+ name = "ITV backpack"
+ desc = "A backpack for carrying a large number of supplies easily."
+ icon = 'icons/obj/clothing/backpack_vr.dmi'
+ icon_override = 'icons/mob/back_vr.dmi'
+ icon_state = "talon"
+
+/obj/item/weapon/storage/backpack/satchel/talon
+ name = "ITV satchel"
+ desc = "A satchel for carrying a large number of supplies easily."
+ icon = 'icons/obj/clothing/backpack_vr.dmi'
+ icon_override = 'icons/mob/back_vr.dmi'
+ icon_state = "talon_satchel"
+ item_state_slots = null
+
+/obj/item/weapon/storage/backpack/messenger/talon
+ name = "ITV messenger bag"
+ desc = "A sturdy backpack worn over one shoulder."
+ icon = 'icons/obj/clothing/backpack_vr.dmi'
+ icon_override = 'icons/mob/back_vr.dmi'
+ icon_state = "talon_courier"
+ item_state_slots = null
+
+/obj/item/weapon/storage/backpack/dufflebag/talon
+ name = "ITV dufflebag"
+ desc = "A large dufflebag for holding extra supplies."
+ icon = 'icons/obj/clothing/backpack_vr.dmi'
+ icon_override = 'icons/mob/back_vr.dmi'
+ icon_state = "talon_duffle"
+
///Roboticist Bags///
/obj/item/weapon/storage/backpack/satchel/roboticist
diff --git a/code/game/objects/items/weapons/storage/fancy.dm b/code/game/objects/items/weapons/storage/fancy.dm
index e1ff8f0ce5..4d06d52314 100644
--- a/code/game/objects/items/weapons/storage/fancy.dm
+++ b/code/game/objects/items/weapons/storage/fancy.dm
@@ -125,9 +125,9 @@
/obj/item/weapon/storage/fancy/crayons/update_icon()
var/mutable_appearance/ma = new(src)
- ma.overlays = list()
+ ma.cut_overlays()
for(var/obj/item/weapon/pen/crayon/crayon in contents)
- ma.overlays += image('icons/obj/crayons.dmi',crayon.colourName)
+ add_overlay(image('icons/obj/crayons.dmi',crayon.colourName))
appearance = ma
/obj/item/weapon/storage/fancy/crayons/attackby(obj/item/W as obj, mob/user as mob)
@@ -167,9 +167,9 @@
/obj/item/weapon/storage/fancy/markers/update_icon()
var/mutable_appearance/ma = new(src)
- ma.overlays = list()
+ ma.cut_overlays()
for(var/obj/item/weapon/pen/crayon/marker/marker in contents)
- ma.overlays += image('icons/obj/crayons.dmi',"m"+marker.colourName)
+ ma.add_overlay(image('icons/obj/crayons.dmi',"m"+marker.colourName))
appearance = ma
/obj/item/weapon/storage/fancy/markers/attackby(obj/item/W as obj, mob/user as mob)
@@ -398,14 +398,13 @@
/obj/item/weapon/storage/lockbox/vials/update_icon(var/itemremoved = 0)
var/total_contents = contents.len - itemremoved
icon_state = "vialbox[total_contents]"
- overlays.Cut()
+ cut_overlays()
if (!broken)
- overlays += image(icon, src, "led[locked]")
+ add_overlay("led[locked]")
if(locked)
- overlays += image(icon, src, "cover")
+ add_overlay("cover")
else
- overlays += image(icon, src, "ledb")
- return
+ add_overlay("ledb")
/obj/item/weapon/storage/lockbox/vials/attackby(obj/item/weapon/W as obj, mob/user as mob)
..()
diff --git a/code/game/objects/items/weapons/storage/firstaid.dm b/code/game/objects/items/weapons/storage/firstaid.dm
index 9b87ee51d3..bb6bb1032c 100644
--- a/code/game/objects/items/weapons/storage/firstaid.dm
+++ b/code/game/objects/items/weapons/storage/firstaid.dm
@@ -200,11 +200,11 @@
update_icon()
/obj/item/weapon/storage/pill_bottle/update_icon()
- overlays.Cut()
+ cut_overlays()
if(wrapper_color)
var/image/I = image(icon, "pillbottle_wrap")
I.color = wrapper_color
- overlays += I
+ add_overlay(I)
/obj/item/weapon/storage/pill_bottle/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(istype(W, /obj/item/weapon/pen) || istype(W, /obj/item/device/flashlight/pen))
diff --git a/code/game/objects/items/weapons/storage/misc.dm b/code/game/objects/items/weapons/storage/misc.dm
index 9f6d4929b8..5c9be66e26 100644
--- a/code/game/objects/items/weapons/storage/misc.dm
+++ b/code/game/objects/items/weapons/storage/misc.dm
@@ -18,10 +18,10 @@
update_icon()
/obj/item/weapon/storage/box/donut/update_icon()
- overlays.Cut()
+ cut_overlays()
var/i = 0
for(var/obj/item/weapon/reagent_containers/food/snacks/donut/D in contents)
- overlays += image('icons/obj/food.dmi', "[i][D.overlay_state]")
+ add_overlay("[i][D.overlay_state]")
i++
/obj/item/weapon/storage/box/donut/empty
diff --git a/code/game/objects/items/weapons/storage/secure.dm b/code/game/objects/items/weapons/storage/secure.dm
index 436b1da8c6..957a3c73f6 100644
--- a/code/game/objects/items/weapons/storage/secure.dm
+++ b/code/game/objects/items/weapons/storage/secure.dm
@@ -111,15 +111,15 @@
src.l_set = 1
else if ((src.code == src.l_code) && (src.emagged == 0) && (src.l_set == 1))
src.locked = 0
- src.overlays = null
- overlays += image('icons/obj/storage.dmi', icon_opened)
+ cut_overlays()
+ add_overlay(icon_opened)
src.code = null
else
src.code = "ERROR"
else
if ((digit == "R") && (src.emagged == 0) && (!src.l_setshort))
src.locked = 1
- src.overlays = null
+ cut_overlays()
src.code = null
src.close(usr)
else
@@ -133,10 +133,10 @@
/obj/item/weapon/storage/secure/emag_act(var/remaining_charges, var/mob/user, var/feedback)
if(!emagged)
emagged = 1
- src.overlays += image('icons/obj/storage.dmi', icon_sparking)
+ src.add_overlay(icon_sparking)
sleep(6)
- src.overlays = null
- overlays += image('icons/obj/storage.dmi', icon_locking)
+ cut_overlays()
+ add_overlay(icon_locking)
locked = 0
to_chat(user, (feedback ? feedback : "You short out the lock of \the [src]."))
return 1
diff --git a/code/game/objects/items/weapons/storage/storage.dm b/code/game/objects/items/weapons/storage/storage.dm
index 72070edf31..66e23467d5 100644
--- a/code/game/objects/items/weapons/storage/storage.dm
+++ b/code/game/objects/items/weapons/storage/storage.dm
@@ -226,7 +226,7 @@
var/stored_cap_width = 4 //length of sprite for start and end of the box representing the stored item
var/storage_width = min( round( 224 * max_storage_space/baseline_max_storage_space ,1) ,274) //length of sprite for the box representing total storage space
- storage_start.overlays.Cut()
+ storage_start.cut_overlays()
var/matrix/M = matrix()
M.Scale((storage_width-storage_cap_width*2+3)/32,1)
@@ -253,9 +253,9 @@
src.stored_start.transform = M_start
src.stored_continue.transform = M_continue
src.stored_end.transform = M_end
- storage_start.overlays += src.stored_start
- storage_start.overlays += src.stored_continue
- storage_start.overlays += src.stored_end
+ storage_start.add_overlay(stored_start)
+ storage_start.add_overlay(stored_continue)
+ storage_start.add_overlay(stored_end)
O.screen_loc = "4:[round((startpoint+endpoint)/2)+2],2:16"
O.maptext = ""
@@ -701,7 +701,7 @@
var/closed_state
/obj/item/weapon/storage/trinketbox/update_icon()
- overlays.Cut()
+ cut_overlays()
if(open)
icon_state = open_state
@@ -714,7 +714,7 @@
else if(istype(contents[1], /obj/item/clothing/accessory/medal))
contained_image = "medal_trinket"
if(contained_image)
- overlays += contained_image
+ add_overlay(contained_image)
else
icon_state = closed_state
diff --git a/code/game/objects/items/weapons/storage/wallets.dm b/code/game/objects/items/weapons/storage/wallets.dm
index 90b465efae..4161ae740b 100644
--- a/code/game/objects/items/weapons/storage/wallets.dm
+++ b/code/game/objects/items/weapons/storage/wallets.dm
@@ -67,14 +67,14 @@
update_icon()
/obj/item/weapon/storage/wallet/update_icon()
- overlays.Cut()
+ cut_overlays()
if(front_id)
var/tiny_state = "id-generic"
if("id-[front_id.icon_state]" in cached_icon_states(icon))
tiny_state = "id-"+front_id.icon_state
var/image/tiny_image = new/image(icon, icon_state = tiny_state)
tiny_image.appearance_flags = RESET_COLOR
- overlays += tiny_image
+ add_overlay(tiny_image)
/obj/item/weapon/storage/wallet/GetID()
return front_id
diff --git a/code/game/objects/items/weapons/swords_axes_etc.dm b/code/game/objects/items/weapons/swords_axes_etc.dm
index ad3c856f97..6fc53235b5 100644
--- a/code/game/objects/items/weapons/swords_axes_etc.dm
+++ b/code/game/objects/items/weapons/swords_axes_etc.dm
@@ -85,14 +85,14 @@
add_fingerprint(user)
if(blood_overlay && blood_DNA && (blood_DNA.len >= 1)) //updates blood overlay, if any
- overlays.Cut()//this might delete other item overlays as well but eeeeeeeh
+ cut_overlays()
var/icon/I = new /icon(src.icon, src.icon_state)
I.Blend(new /icon('icons/effects/blood.dmi', rgb(255,255,255)),ICON_ADD)
I.Blend(new /icon('icons/effects/blood.dmi', "itemblood"),ICON_MULTIPLY)
blood_overlay = I
- overlays += blood_overlay
+ add_overlay(blood_overlay)
return
diff --git a/code/game/objects/items/weapons/tanks/tanks.dm b/code/game/objects/items/weapons/tanks/tanks.dm
index abe2db0d53..bd6f384280 100644
--- a/code/game/objects/items/weapons/tanks/tanks.dm
+++ b/code/game/objects/items/weapons/tanks/tanks.dm
@@ -138,7 +138,7 @@ var/list/global/tank_gauge_cache = list()
to_chat(user, "You carefully begin clipping the wires that attach to the tank. ")
if(do_after(user, 100,src))
wired = 0
- src.overlays -= "bomb_assembly"
+ cut_overlay("bomb_assembly")
to_chat(user, "You cut the wire and remove the device. ")
var/obj/item/device/assembly_holder/assy = src.proxyassembly.assembly
@@ -153,7 +153,7 @@ var/list/global/tank_gauge_cache = list()
assy.a_right = null
src.proxyassembly.assembly = null
qdel(assy)
- src.overlays.Cut()
+ cut_overlays()
last_gauge_pressure = 0
update_gauge()
@@ -166,7 +166,7 @@ var/list/global/tank_gauge_cache = list()
if(do_after(user, 10, src))
to_chat(user, "You quickly clip the wire from the tank. ")
wired = 0
- src.overlays -= "bomb_assembly"
+ cut_overlay("bomb_assembly")
else
to_chat(user, "There are no wires to cut! ")
@@ -352,12 +352,12 @@ var/list/global/tank_gauge_cache = list()
/obj/item/weapon/tank/proc/add_bomb_overlay()
if(src.wired)
- src.overlays += "bomb_assembly"
+ add_overlay("bomb_assembly")
if(src.proxyassembly.assembly)
var/icon/test = getFlatIcon(src.proxyassembly.assembly)
test.Shift(SOUTH,1)
test.Shift(WEST,3)
- overlays += test
+ add_overlay(test)
/obj/item/weapon/tank/proc/update_gauge()
@@ -373,12 +373,12 @@ var/list/global/tank_gauge_cache = list()
return
last_gauge_pressure = gauge_pressure
- overlays.Cut()
+ cut_overlays()
add_bomb_overlay()
var/indicator = "[gauge_icon][(gauge_pressure == -1) ? "overload" : gauge_pressure]"
if(!tank_gauge_cache[indicator])
tank_gauge_cache[indicator] = image(icon, indicator)
- overlays += tank_gauge_cache[indicator]
+ add_overlay(tank_gauge_cache[indicator])
@@ -562,7 +562,7 @@ var/list/global/tank_gauge_cache = list()
H.update_icon()
- src.overlays += "bomb_assembly"
+ add_overlay("bomb_assembly")
/obj/item/weapon/tank/phoron/onetankbomb/New()
@@ -658,10 +658,10 @@ var/list/global/tank_gauge_cache = list()
/obj/item/device/tankassemblyproxy/update_icon()
if(assembly)
tank.update_icon()
- tank.overlays += "bomb_assembly"
+ tank.add_overlay("bomb_assembly")
else
tank.update_icon()
- tank.overlays -= "bomb_assembly"
+ tank.cut_overlay("bomb_assembly")
/obj/item/device/tankassemblyproxy/HasProximity(turf/T, atom/movable/AM, old_loc)
assembly?.HasProximity(T, AM, old_loc)
diff --git a/code/game/objects/items/weapons/tools/weldingtool.dm b/code/game/objects/items/weapons/tools/weldingtool.dm
index ac282fbded..4e7792a77c 100644
--- a/code/game/objects/items/weapons/tools/weldingtool.dm
+++ b/code/game/objects/items/weapons/tools/weldingtool.dm
@@ -208,11 +208,10 @@
/obj/item/weapon/weldingtool/update_icon()
..()
- overlays.Cut()
+ cut_overlays()
// Welding overlay.
if(welding)
- var/image/I = image(icon, src, "[icon_state]-on")
- overlays.Add(I)
+ add_overlay("[icon_state]-on")
item_state = "[initial(item_state)]1"
else
item_state = initial(item_state)
@@ -221,8 +220,7 @@
if(change_icons && get_max_fuel())
var/ratio = get_fuel() / get_max_fuel()
ratio = CEILING(ratio * 4, 1) * 25
- var/image/I = image(icon, src, "[icon_state][ratio]")
- overlays.Add(I)
+ add_overlay("[icon_state][ratio]")
// Lights
if(welding && flame_intensity)
diff --git a/code/game/objects/items/weapons/trays.dm b/code/game/objects/items/weapons/trays.dm
index 6809ae4547..3215af0a10 100644
--- a/code/game/objects/items/weapons/trays.dm
+++ b/code/game/objects/items/weapons/trays.dm
@@ -19,7 +19,7 @@
/obj/item/weapon/tray/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
user.setClickCooldown(user.get_attack_speed(src))
// Drop all the things. All of them.
- overlays.Cut()
+ cut_overlays()
for(var/obj/item/I in carrying)
I.loc = M.loc
carrying.Remove(I)
@@ -193,7 +193,7 @@
var/obj/item/weapon/material/O = I
if(O.applies_material_colour)
Img.color = O.color
- overlays += Img
+ add_overlay(Img)
/obj/item/weapon/tray/dropped(mob/user)
var/noTable = null
@@ -203,7 +203,7 @@
noTable = 1
if(isturf(loc) && !(locate(/mob/living) in src.loc))
- overlays.Cut()
+ cut_overlays()
for(var/obj/item/I in carrying)
I.forceMove(src.loc)
carrying.Remove(I)
diff --git a/code/game/objects/random/mapping.dm b/code/game/objects/random/mapping.dm
index e332ed40f7..06a5e75fd1 100644
--- a/code/game/objects/random/mapping.dm
+++ b/code/game/objects/random/mapping.dm
@@ -1345,6 +1345,28 @@
/obj/random/multiple/large_corp_crate
)
)
+//VOREStation Add - Random good, no guns gooder
+/obj/random/multiple/random_size_crate/no_weapons
+ name = "random size corporate crate (no weapons)"
+ desc = "A random size corporate crate with thematic contents: prefers small crates."
+ icon = 'icons/obj/storage.dmi'
+ icon_state = "largermetal"
+ spawn_nothing_percentage = 50
+
+/obj/random/multiple/random_size_crate/no_weapons/item_to_spawn()
+ return pick(
+ prob(85);list(
+ /obj/random/multiple/corp_crate/no_weapons
+ ),
+ prob(15);list(
+ /obj/random/multiple/large_corp_crate/no_weapons
+ )
+ )
+
+/obj/random/multiple/random_size_crate/no_weapons/nofail
+ spawn_nothing_percentage = 0
+
+//VOREStation Add End
/*
* Turf swappers.
*/
diff --git a/code/game/objects/random/misc.dm b/code/game/objects/random/misc.dm
index d670f12243..8fb4758c64 100644
--- a/code/game/objects/random/misc.dm
+++ b/code/game/objects/random/misc.dm
@@ -249,6 +249,7 @@
prob(8);/obj/item/weapon/storage/firstaid/o2,
prob(6);/obj/item/weapon/storage/firstaid/adv,
prob(8);/obj/item/weapon/storage/firstaid/fire,
+ prob(1);/obj/item/device/denecrotizer/medical, //VOREStation Add,
prob(1);/obj/item/weapon/storage/firstaid/combat)
/obj/random/contraband
diff --git a/code/game/objects/random/misc_vr.dm b/code/game/objects/random/misc_vr.dm
index d8c3df7af0..0d3a17c23f 100644
--- a/code/game/objects/random/misc_vr.dm
+++ b/code/game/objects/random/misc_vr.dm
@@ -8,4 +8,44 @@
/obj/random/explorer_shield/item_to_spawn()
return pick(/obj/item/weapon/shield/riot/explorer,
- /obj/item/weapon/shield/riot/explorer/purple)
\ No newline at end of file
+ /obj/item/weapon/shield/riot/explorer/purple)
+
+/obj/random/awayloot
+ name = "random away mission loot"
+ desc = "A list of things that people can find in away missions."
+ icon = 'icons/mob/randomlandmarks.dmi'
+ icon_state = "awayloot"
+ spawn_nothing_percentage = 50
+
+/obj/random/awayloot/item_to_spawn()
+ return pick(prob(50);/obj/item/weapon/aliencoin,
+ prob(40);/obj/item/weapon/aliencoin/silver,
+ prob(30);/obj/item/weapon/aliencoin/gold,
+ prob(20);/obj/item/weapon/aliencoin/phoron,
+ prob(10);/obj/item/device/denecrotizer,
+ prob(5);/obj/item/device/perfect_tele,
+ prob(5);/obj/item/weapon/bluespace_harpoon,
+ prob(1);/obj/item/weapon/cell/infinite,
+ prob(1);/obj/item/weapon/cell/void,
+ prob(1);/obj/item/weapon/cell/device/weapon/recharge/alien,
+ prob(1);/obj/item/clothing/shoes/boots/speed,
+ prob(1);/obj/item/device/nif,
+ prob(1);/obj/item/device/paicard,
+ prob(2);/obj/item/weapon/storage/backpack/dufflebag/syndie,
+ prob(2);/obj/item/weapon/storage/backpack/dufflebag/syndie/ammo,
+ prob(2);/obj/item/weapon/storage/backpack/dufflebag/syndie/med,
+ prob(2);/obj/item/clothing/mask/gas/voice,
+ prob(2);/obj/item/device/radio_jammer,
+ prob(1);/obj/item/toy/bosunwhistle,
+ prob(1);/obj/item/weapon/bananapeel,
+ prob(5);/obj/fiftyspawner/platinum,
+ prob(3);/obj/fiftyspawner/gold,
+ prob(3);/obj/fiftyspawner/silver,
+ prob(1);/obj/fiftyspawner/diamond,
+ prob(5);/obj/fiftyspawner/phoron,
+ prob(1);/obj/item/weapon/telecube/randomized
+ )
+
+/obj/random/awayloot/nofail
+ name = "garunteed random away mission loot"
+ spawn_nothing_percentage = 0
diff --git a/code/game/objects/random/spacesuits.dm b/code/game/objects/random/spacesuits.dm
index da380f2842..2d394625b9 100644
--- a/code/game/objects/random/spacesuits.dm
+++ b/code/game/objects/random/spacesuits.dm
@@ -257,4 +257,8 @@
prob(5);/obj/item/weapon/rig/eva,
prob(4);/obj/item/weapon/rig/light/stealth,
prob(3);/obj/item/weapon/rig/hazard,
- prob(1);/obj/item/weapon/rig/merc/empty)
\ No newline at end of file
+ prob(1);/obj/item/weapon/rig/merc/empty)
+//VOREStation Add Start
+/obj/random/rigsuit/chancetofail
+ spawn_nothing_percentage = 50
+//VOREStation Add End
\ No newline at end of file
diff --git a/code/game/objects/structures.dm b/code/game/objects/structures.dm
index f81419be75..87332c776f 100644
--- a/code/game/objects/structures.dm
+++ b/code/game/objects/structures.dm
@@ -1,6 +1,7 @@
/obj/structure
icon = 'icons/obj/structures.dmi'
w_class = ITEMSIZE_NO_CONTAINER
+ blocks_emissive = EMISSIVE_BLOCK_GENERIC
var/climbable
var/climb_delay = 3.5 SECONDS
diff --git a/code/game/objects/structures/bonfire.dm b/code/game/objects/structures/bonfire.dm
index f07fb8d1dc..8b1780f077 100644
--- a/code/game/objects/structures/bonfire.dm
+++ b/code/game/objects/structures/bonfire.dm
@@ -184,7 +184,7 @@
L.IgniteMob()
/obj/structure/bonfire/update_icon()
- overlays.Cut()
+ cut_overlays()
if(burning)
var/state
switch(get_fuel_amount())
@@ -194,14 +194,14 @@
state = "bonfire_hot"
var/image/I = image(icon, state)
I.appearance_flags = RESET_COLOR
- overlays += I
+ add_overlay(I)
if(has_buckled_mobs() && get_fuel_amount() >= 5)
I = image(icon, "bonfire_intense")
I.pixel_y = 13
I.layer = MOB_LAYER + 0.1
I.appearance_flags = RESET_COLOR
- overlays += I
+ add_overlay(I)
var/light_strength = max(get_fuel_amount() / 2, 2)
set_light(light_strength, light_strength, "#FF9933")
@@ -211,7 +211,7 @@
if(grill)
var/image/grille_image = image(icon, "bonfire_grill")
grille_image.appearance_flags = RESET_COLOR
- overlays += grille_image
+ add_overlay(grille_image)
/obj/structure/bonfire/process()
@@ -373,7 +373,7 @@
O.fire_act(null, 1000, 500)
/obj/structure/fireplace/update_icon()
- overlays.Cut()
+ cut_overlays()
if(burning)
var/state
switch(get_fuel_amount())
@@ -385,7 +385,7 @@
state = "fireplace_intense" //don't need to throw a corpse inside to make it burn hotter.
var/image/I = image(icon, state)
I.appearance_flags = RESET_COLOR
- overlays += I
+ add_overlay(I)
var/light_strength = max(get_fuel_amount() / 2, 2)
set_light(light_strength, light_strength, "#FF9933")
diff --git a/code/game/objects/structures/coathanger.dm b/code/game/objects/structures/coathanger.dm
index 848168dd08..9da45df7be 100644
--- a/code/game/objects/structures/coathanger.dm
+++ b/code/game/objects/structures/coathanger.dm
@@ -43,10 +43,10 @@
return 1
/obj/structure/coatrack/update_icon()
- overlays.Cut()
+ cut_overlays()
if (istype(coat, /obj/item/clothing/suit/storage/toggle/labcoat))
- overlays += image(icon, icon_state = "coat_lab")
+ add_overlay("coat_lab")
if (istype(coat, /obj/item/clothing/suit/storage/toggle/labcoat/cmo))
- overlays += image(icon, icon_state = "coat_cmo")
+ add_overlay("coat_cmo")
if (istype(coat, /obj/item/clothing/suit/storage/det_trench))
- overlays += image(icon, icon_state = "coat_det")
+ add_overlay("coat_det")
diff --git a/code/game/objects/structures/crates_lockers/__closets.dm b/code/game/objects/structures/crates_lockers/__closets.dm
index 85e45314de..f111d19196 100644
--- a/code/game/objects/structures/crates_lockers/__closets.dm
+++ b/code/game/objects/structures/crates_lockers/__closets.dm
@@ -7,6 +7,7 @@
density = 1
w_class = ITEMSIZE_HUGE
layer = UNDER_JUNK_LAYER
+ blocks_emissive = EMISSIVE_BLOCK_GENERIC
var/opened = 0
var/sealed = 0
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/guncabinet.dm b/code/game/objects/structures/crates_lockers/closets/secure/guncabinet.dm
index b69a3ff368..028f67f06d 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/guncabinet.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/guncabinet.dm
@@ -14,9 +14,9 @@
update_icon()
/obj/structure/closet/secure_closet/guncabinet/update_icon()
- overlays.Cut()
+ cut_overlays()
if(opened)
- overlays += icon(icon,"door_open")
+ add_overlay("door_open")
else
var/lazors = 0
var/shottas = 0
@@ -35,17 +35,17 @@
shottas--
gun.icon_state = "projectile"
gun.pixel_x = i*4
- overlays += gun
+ add_overlay(gun)
- overlays += icon(src.icon, "door")
+ add_overlay("door")
if(sealed)
- overlays += icon(src.icon,"sealed")
+ add_overlay("sealed")
if(broken)
- overlays += icon(src.icon,"broken")
+ add_overlay("broken")
else if (locked)
- overlays += icon(src.icon,"locked")
+ add_overlay("locked")
else
- overlays += icon(src.icon,"open")
+ add_overlay("open")
diff --git a/code/game/objects/structures/crates_lockers/closets/statue.dm b/code/game/objects/structures/crates_lockers/closets/statue.dm
index 2ea6372aef..dc6e92355d 100644
--- a/code/game/objects/structures/crates_lockers/closets/statue.dm
+++ b/code/game/objects/structures/crates_lockers/closets/statue.dm
@@ -6,6 +6,7 @@
density = 1
anchored = 1
health = 0 //destroying the statue kills the mob within
+ blocks_emissive = EMISSIVE_BLOCK_UNIQUE
var/intialTox = 0 //these are here to keep the mob from taking damage from things that logically wouldn't affect a rock
var/intialFire = 0 //it's a little sloppy I know but it was this or the GODMODE flag. Lesser of two evils.
var/intialBrute = 0
@@ -43,7 +44,7 @@
qdel(src)
return
- START_PROCESSING(SSobj, src)
+ START_PROCESSING(SSobj, src)
..()
/obj/structure/closet/statue/process()
diff --git a/code/game/objects/structures/crates_lockers/vehiclecage.dm b/code/game/objects/structures/crates_lockers/vehiclecage.dm
index b98636eb16..31862846ff 100644
--- a/code/game/objects/structures/crates_lockers/vehiclecage.dm
+++ b/code/game/objects/structures/crates_lockers/vehiclecage.dm
@@ -44,13 +44,13 @@
/obj/structure/vehiclecage/update_icon()
..()
- overlays.Cut()
+ cut_overlays()
underlays.Cut()
var/image/framepaint = new(icon = 'icons/obj/storage.dmi', icon_state = "[initial(icon_state)]_a", layer = MOB_LAYER + 1.1)
framepaint.plane = MOB_PLANE
framepaint.color = paint_color
- overlays += framepaint
+ add_overlay(framepaint)
for(var/obj/vehicle/V in src.contents)
var/image/showcase = new(V)
diff --git a/code/game/objects/structures/electricchair.dm b/code/game/objects/structures/electricchair.dm
index b3f174e25a..ca515e230f 100644
--- a/code/game/objects/structures/electricchair.dm
+++ b/code/game/objects/structures/electricchair.dm
@@ -6,9 +6,9 @@
var/obj/item/assembly/shock_kit/part = null
var/last_time = 1.0
-/obj/structure/bed/chair/e_chair/New()
- ..()
- overlays += image('icons/obj/objects.dmi', src, "echair_over", MOB_LAYER + 1, dir)
+/obj/structure/bed/chair/e_chair/Initialize()
+ . = ..()
+ add_overlay(image('icons/obj/objects.dmi', src, "echair_over", MOB_LAYER + 1, dir))
return
/obj/structure/bed/chair/e_chair/attackby(obj/item/weapon/W as obj, mob/user as mob)
@@ -39,8 +39,8 @@
/obj/structure/bed/chair/e_chair/rotate_clockwise()
..()
- overlays.Cut()
- overlays += image('icons/obj/objects.dmi', src, "echair_over", MOB_LAYER + 1, dir) //there's probably a better way of handling this, but eh. -Pete
+ cut_overlays()
+ add_overlay(image('icons/obj/objects.dmi', src, "echair_over", MOB_LAYER + 1, dir)) //there's probably a better way of handling this, but eh. -Pete
return
/obj/structure/bed/chair/e_chair/proc/shock()
diff --git a/code/game/objects/structures/fitness.dm b/code/game/objects/structures/fitness.dm
index 729e578ba5..f41fbfa8cf 100644
--- a/code/game/objects/structures/fitness.dm
+++ b/code/game/objects/structures/fitness.dm
@@ -29,6 +29,7 @@
name = "weightlifting machine"
desc = "A machine used to lift weights."
icon_state = "weightlifter"
+ blocks_emissive = EMISSIVE_BLOCK_UNIQUE
var/weight = 1
var/list/qualifiers = list("with ease", "without any trouble", "with great effort")
diff --git a/code/game/objects/structures/flora/flora.dm b/code/game/objects/structures/flora/flora.dm
index 9195de1767..e73e2a1758 100644
--- a/code/game/objects/structures/flora/flora.dm
+++ b/code/game/objects/structures/flora/flora.dm
@@ -313,6 +313,7 @@
light_range = 2
light_power = 0.6
light_color = "#33CCFF"
+ light_on = TRUE
catalogue_data = list(/datum/category_item/catalogue/flora/sif_tree)
/obj/structure/flora/pottedplant/orientaltree
@@ -372,6 +373,7 @@
light_range = 2
light_power = 0.6
light_color = "#FF6633"
+ light_on = TRUE
/obj/structure/flora/pottedplant/minitree
name = "potted tree"
@@ -439,6 +441,7 @@
light_range = 2
light_power = 0.6
light_color = "#FF6633"
+ light_on = TRUE
catalogue_data = list(/datum/category_item/catalogue/flora/subterranean_bulbs)
/obj/structure/flora/sif/subterranean/Initialize()
diff --git a/code/game/objects/structures/flora/moretrees_vr.dm b/code/game/objects/structures/flora/moretrees_vr.dm
new file mode 100644
index 0000000000..57947139bb
--- /dev/null
+++ b/code/game/objects/structures/flora/moretrees_vr.dm
@@ -0,0 +1,22 @@
+/obj/structure/flora/tree/bigtree
+ icon = 'icons/obj/flora/moretrees_vr.dmi'
+ icon_state = "bigtree1"
+ base_state = "tree"
+ product = /obj/item/stack/material/log
+ product_amount = 20
+ health = 2000
+ max_health = 2000
+ pixel_x = -65
+ pixel_y = -8
+ layer = MOB_LAYER - 1
+ shake_animation_degrees = 2
+
+/obj/structure/flora/tree/bigtree/choose_icon_state()
+ return "[base_state][rand(1, 4)]"
+
+/obj/structure/flora/tree/bigtree/Initialize()
+ . = ..()
+
+ var/image/i = image('icons/obj/flora/moretrees_vr.dmi', "[icon_state]-b")
+ i.plane = ABOVE_MOB_PLANE
+ add_overlay(i)
\ No newline at end of file
diff --git a/code/game/objects/structures/flora/trees.dm b/code/game/objects/structures/flora/trees.dm
index a4fb21901c..068541ac88 100644
--- a/code/game/objects/structures/flora/trees.dm
+++ b/code/game/objects/structures/flora/trees.dm
@@ -115,7 +115,7 @@
is_stump = TRUE
density = FALSE
icon_state = "[base_state]_stump"
- overlays.Cut() // For the Sif tree and other future glowy trees.
+ cut_overlays() // For the Sif tree and other future glowy trees.
set_light(0)
/obj/structure/flora/tree/ex_act(var/severity)
@@ -300,6 +300,7 @@
icon = 'icons/obj/flora/deadtrees.dmi'
icon_state = "tree_sif"
base_state = "tree_sif"
+ blocks_emissive = FALSE
product = /obj/item/stack/material/log/sif
catalogue_data = list(/datum/category_item/catalogue/flora/sif_tree)
randomize_size = TRUE
@@ -324,7 +325,10 @@
update_icon()
/obj/structure/flora/tree/sif/update_icon()
- set_light(5 - light_shift, 1, "#33ccff") // 5 variants, missing bulbs. 5th has no bulbs, so no glow.
- var/image/glow = image(icon = icon, icon_state = "[base_state][light_shift]_glow")
- glow.plane = PLANE_LIGHTING_ABOVE
- overlays = list(glow)
+ cut_overlays()
+ var/bulbs = (5 - light_shift)
+ if(bulbs > 0)
+ set_light(bulbs, 1, "#33ccff") // 5 variants, missing bulbs. 5th has no bulbs, so no glow.
+ add_overlay(mutable_appearance(icon, "[base_state][bulbs]_glow"))
+ add_overlay(emissive_appearance(icon, "[base_state][bulbs]_glow"))
+
\ No newline at end of file
diff --git a/code/game/objects/structures/holoplant.dm b/code/game/objects/structures/holoplant.dm
index dbd39361d6..01a0436be9 100644
--- a/code/game/objects/structures/holoplant.dm
+++ b/code/game/objects/structures/holoplant.dm
@@ -46,12 +46,13 @@
return
plant = prepare_icon(emagged ? "emagged" : null)
- overlays = list(plant)
+ cut_overlays()
+ add_overlay(plant)
set_light(2)
update_use_power(USE_POWER_ACTIVE)
/obj/machinery/holoplant/proc/deactivate()
- overlays.Cut()
+ cut_overlays()
QDEL_NULL(plant)
set_light(0)
update_use_power(USE_POWER_OFF)
@@ -66,16 +67,16 @@
/obj/machinery/holoplant/proc/flicker()
interference = TRUE
spawn(0)
- overlays.Cut()
+ cut_overlays()
set_light(0)
sleep(rand(2,4))
- overlays = list(plant)
+ add_overlay(plant)
set_light(2)
sleep(rand(2,4))
- overlays.Cut()
+ cut_overlays()
set_light(0)
sleep(rand(2,4))
- overlays = list(plant)
+ add_overlay(plant)
set_light(2)
interference = FALSE
diff --git a/code/game/objects/structures/janicart.dm b/code/game/objects/structures/janicart.dm
index a6dc8e42ac..fba31409f5 100644
--- a/code/game/objects/structures/janicart.dm
+++ b/code/game/objects/structures/janicart.dm
@@ -288,22 +288,22 @@ GLOBAL_LIST_BOILERPLATE(all_janitorial_carts, /obj/structure/janitorialcart)
return TRUE
/obj/structure/janitorialcart/update_icon()
- overlays.Cut()
+ cut_overlays()
if(mybucket)
- overlays += "cart_bucket"
+ add_overlay("cart_bucket")
if(mybucket.reagents.total_volume >= 1)
- overlays += "water_cart"
+ add_overlay("water_cart")
if(mybag)
- overlays += "cart_garbage"
+ add_overlay("cart_garbage")
if(mymop)
- overlays += "cart_mop"
+ add_overlay("cart_mop")
if(myspray)
- overlays += "cart_spray"
+ add_overlay("cart_spray")
if(myreplacer)
- overlays += "cart_replacer"
+ add_overlay("cart_replacer")
if(signs)
- overlays += "cart_sign[signs]"
+ add_overlay("cart_sign[signs]")
//This is called if the cart is caught in an explosion, or destroyed by weapon fire
/obj/structure/janitorialcart/proc/spill(var/chance = 100)
diff --git a/code/game/objects/structures/lattice.dm b/code/game/objects/structures/lattice.dm
index b8597d6d29..8c1879ec80 100644
--- a/code/game/objects/structures/lattice.dm
+++ b/code/game/objects/structures/lattice.dm
@@ -82,7 +82,7 @@
//if(!(istype(src.loc, /turf/space)))
// qdel(src)
spawn(1)
- overlays = list()
+ cut_overlays()
var/dir_sum = 0
diff --git a/code/game/objects/structures/medical_stand_vr.dm b/code/game/objects/structures/medical_stand_vr.dm
index eb3031eca8..3ca9999f85 100644
--- a/code/game/objects/structures/medical_stand_vr.dm
+++ b/code/game/objects/structures/medical_stand_vr.dm
@@ -29,32 +29,32 @@
update_icon()
/obj/structure/medical_stand/update_icon()
- overlays.Cut()
+ cut_overlays()
if (tank)
if (breather)
- overlays += "tube_active"
+ add_overlay("tube_active")
else
- overlays += "tube"
+ add_overlay("tube")
if(istype(tank,/obj/item/weapon/tank/anesthetic))
- overlays += "tank_anest"
+ add_overlay("tank_anest")
else if(istype(tank,/obj/item/weapon/tank/nitrogen))
- overlays += "tank_nitro"
+ add_overlay("tank_nitro")
else if(istype(tank,/obj/item/weapon/tank/oxygen))
- overlays += "tank_oxyg"
+ add_overlay("tank_oxyg")
else if(istype(tank,/obj/item/weapon/tank/phoron))
- overlays += "tank_plasma"
+ add_overlay("tank_plasma")
//else if(istype(tank,/obj/item/weapon/tank/hydrogen))
- // overlays += "tank_hydro"
+ // add_overlay("tank_hydro")
else
- overlays += "tank_other"
+ add_overlay("tank_other")
if(beaker)
- overlays += "beaker"
+ add_overlay("beaker")
if(attached)
- overlays += "line_active"
+ add_overlay("line_active")
else
- overlays += "line"
+ add_overlay("line")
var/datum/reagents/reagents = beaker.reagents
var/percent = round((reagents.total_volume / beaker.volume) * 100)
if(reagents.total_volume)
@@ -69,7 +69,7 @@
if(91 to INFINITY) filling.icon_state = "reagent100"
if (filling.icon)
filling.icon += reagents.get_color()
- overlays += filling
+ add_overlay(filling)
/obj/structure/medical_stand/Destroy()
STOP_PROCESSING(SSobj,src)
diff --git a/code/game/objects/structures/railing.dm b/code/game/objects/structures/railing.dm
index 5a4ce00a8c..e039f7806f 100644
--- a/code/game/objects/structures/railing.dm
+++ b/code/game/objects/structures/railing.dm
@@ -108,27 +108,27 @@
/obj/structure/railing/update_icon(var/UpdateNeighgors = 1)
NeighborsCheck(UpdateNeighgors)
//layer = (dir == SOUTH) ? FLY_LAYER : initial(layer) // wtf does this even do
- overlays.Cut()
+ cut_overlays()
if (!check || !anchored)//|| !anchored
icon_state = "[icon_modifier]railing0"
else
icon_state = "[icon_modifier]railing1"
if (check & 32)
- overlays += image ('icons/obj/railing.dmi', src, "[icon_modifier]corneroverlay")
+ add_overlay(image('icons/obj/railing.dmi', src, "[icon_modifier]corneroverlay"))
if ((check & 16) || !(check & 32) || (check & 64))
- overlays += image ('icons/obj/railing.dmi', src, "[icon_modifier]frontoverlay_l")
+ add_overlay(image('icons/obj/railing.dmi', src, "[icon_modifier]frontoverlay_l"))
if (!(check & 2) || (check & 1) || (check & 4))
- overlays += image ('icons/obj/railing.dmi', src, "[icon_modifier]frontoverlay_r")
+ add_overlay(image('icons/obj/railing.dmi', src, "[icon_modifier]frontoverlay_r"))
if(check & 4)
switch (src.dir)
if (NORTH)
- overlays += image ('icons/obj/railing.dmi', src, "[icon_modifier]mcorneroverlay", pixel_x = 32)
+ add_overlay(image('icons/obj/railing.dmi', src, "[icon_modifier]mcorneroverlay", pixel_x = 32))
if (SOUTH)
- overlays += image ('icons/obj/railing.dmi', src, "[icon_modifier]mcorneroverlay", pixel_x = -32)
+ add_overlay(image('icons/obj/railing.dmi', src, "[icon_modifier]mcorneroverlay", pixel_x = -32))
if (EAST)
- overlays += image ('icons/obj/railing.dmi', src, "[icon_modifier]mcorneroverlay", pixel_y = -32)
+ add_overlay(image('icons/obj/railing.dmi', src, "[icon_modifier]mcorneroverlay", pixel_y = -32))
if (WEST)
- overlays += image ('icons/obj/railing.dmi', src, "[icon_modifier]mcorneroverlay", pixel_y = 32)
+ add_overlay(image('icons/obj/railing.dmi', src, "[icon_modifier]mcorneroverlay", pixel_y = 32))
/obj/structure/railing/verb/rotate_counterclockwise()
set name = "Rotate Railing Counter-Clockwise"
diff --git a/code/game/objects/structures/simple_doors.dm b/code/game/objects/structures/simple_doors.dm
index 19ae278730..6fe2aa384a 100644
--- a/code/game/objects/structures/simple_doors.dm
+++ b/code/game/objects/structures/simple_doors.dm
@@ -12,7 +12,7 @@
var/isSwitchingStates = 0
var/hardness = 1
var/oreAmount = 7
-
+
/obj/structure/simple_door/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume)
TemperatureAct(exposed_temperature)
@@ -20,13 +20,22 @@
hardness -= material.combustion_effect(get_turf(src),temperature, 0.3)
CheckHardness()
-/obj/structure/simple_door/New(var/newloc, var/material_name)
- ..()
+/obj/structure/simple_door/Initialize(mapload, var/material_name)
+ . = ..()
+ set_material(material_name)
+ if(!material)
+ return INITIALIZE_HINT_QDEL
+
+/obj/structure/simple_door/Destroy()
+ STOP_PROCESSING(SSobj, src)
+ update_nearby_tiles()
+ return ..()
+
+/obj/structure/simple_door/proc/set_material(var/material_name)
if(!material_name)
material_name = DEFAULT_WALL_MATERIAL
material = get_material_by_name(material_name)
if(!material)
- qdel(src)
return
hardness = max(1,round(material.integrity/10))
icon_state = material.door_icon_base
@@ -40,11 +49,6 @@
START_PROCESSING(SSobj, src)
update_nearby_tiles(need_rebuild=1)
-/obj/structure/simple_door/Destroy()
- STOP_PROCESSING(SSobj, src)
- update_nearby_tiles()
- return ..()
-
/obj/structure/simple_door/get_material()
return material
@@ -198,38 +202,38 @@
return
SSradiation.radiate(src, round(material.radioactivity/3))
-/obj/structure/simple_door/iron/New(var/newloc,var/material_name)
- ..(newloc, "iron")
+/obj/structure/simple_door/iron/Initialize(mapload,var/material_name)
+ ..(mapload, material_name || "iron")
-/obj/structure/simple_door/silver/New(var/newloc,var/material_name)
- ..(newloc, "silver")
+/obj/structure/simple_door/silver/Initialize(mapload,var/material_name)
+ ..(mapload, material_name || "silver")
-/obj/structure/simple_door/gold/New(var/newloc,var/material_name)
- ..(newloc, "gold")
+/obj/structure/simple_door/gold/Initialize(mapload,var/material_name)
+ ..(mapload, material_name || "gold")
-/obj/structure/simple_door/uranium/New(var/newloc,var/material_name)
- ..(newloc, "uranium")
+/obj/structure/simple_door/uranium/Initialize(mapload,var/material_name)
+ ..(mapload, material_name || "uranium")
-/obj/structure/simple_door/sandstone/New(var/newloc,var/material_name)
- ..(newloc, "sandstone")
+/obj/structure/simple_door/sandstone/Initialize(mapload,var/material_name)
+ ..(mapload, material_name || "sandstone")
-/obj/structure/simple_door/phoron/New(var/newloc,var/material_name)
- ..(newloc, "phoron")
+/obj/structure/simple_door/phoron/Initialize(mapload,var/material_name)
+ ..(mapload, material_name || "phoron")
-/obj/structure/simple_door/diamond/New(var/newloc,var/material_name)
- ..(newloc, "diamond")
+/obj/structure/simple_door/diamond/Initialize(mapload,var/material_name)
+ ..(mapload, material_name || "diamond")
-/obj/structure/simple_door/wood/New(var/newloc,var/material_name)
- ..(newloc, MAT_WOOD)
+/obj/structure/simple_door/wood/Initialize(mapload,var/material_name)
+ ..(mapload, material_name || MAT_WOOD)
-/obj/structure/simple_door/sifwood/New(var/newloc,var/material_name)
- ..(newloc, MAT_SIFWOOD)
+/obj/structure/simple_door/sifwood/Initialize(mapload,var/material_name)
+ ..(mapload, material_name || MAT_SIFWOOD)
-/obj/structure/simple_door/resin/New(var/newloc,var/material_name)
- ..(newloc, "resin")
+/obj/structure/simple_door/resin/Initialize(mapload,var/material_name)
+ ..(mapload, material_name || "resin")
-/obj/structure/simple_door/cult/New(var/newloc,var/material_name)
- ..(newloc, "cult")
+/obj/structure/simple_door/cult/Initialize(mapload,var/material_name)
+ ..(mapload, material_name || "cult")
/obj/structure/simple_door/cult/TryToSwitchState(atom/user)
if(isliving(user))
diff --git a/code/game/objects/structures/tank_dispenser.dm b/code/game/objects/structures/tank_dispenser.dm
index 15919a754a..9a2b18e8c6 100644
--- a/code/game/objects/structures/tank_dispenser.dm
+++ b/code/game/objects/structures/tank_dispenser.dm
@@ -28,13 +28,13 @@
update_icon()
/obj/structure/dispenser/update_icon()
- overlays.Cut()
+ cut_overlays()
switch(oxygentanks)
- if(1 to 3) overlays += "oxygen-[oxygentanks]"
- if(4 to INFINITY) overlays += "oxygen-4"
+ if(1 to 3) add_overlay("oxygen-[oxygentanks]")
+ if(4 to INFINITY) add_overlay("oxygen-4")
switch(phorontanks)
- if(1 to 4) overlays += "phoron-[phorontanks]"
- if(5 to INFINITY) overlays += "phoron-5"
+ if(1 to 4) add_overlay("phoron-[phorontanks]")
+ if(5 to INFINITY) add_overlay("phoron-5")
/obj/structure/dispenser/attack_ai(mob/user)
// This looks silly, but robots also call attack_ai, and they're allowed physical state stuff.
diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm
index 6b95d90211..47a3733443 100644
--- a/code/game/objects/structures/watercloset.dm
+++ b/code/game/objects/structures/watercloset.dm
@@ -179,13 +179,13 @@
add_fingerprint(user)
/obj/machinery/shower/update_icon() //this is terribly unreadable, but basically it makes the shower mist up
- overlays.Cut() //once it's been on for a while, in addition to handling the water overlay.
+ cut_overlay() //once it's been on for a while, in addition to handling the water overlay.
if(mymist)
qdel(mymist)
mymist = null
if(on)
- overlays += image('icons/obj/watercloset.dmi', src, "water", MOB_LAYER + 1, dir)
+ add_overlay(image('icons/obj/watercloset.dmi', src, "water", MOB_LAYER + 1, dir))
if(temperature_settings[watertemp] < T20C)
return //no mist for cold water
if(!ismist)
diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm
index 2cf49eb2b5..2ae7c7adfc 100644
--- a/code/game/objects/structures/window.dm
+++ b/code/game/objects/structures/window.dm
@@ -1,689 +1,695 @@
-/obj/structure/window
- name = "window"
- desc = "A window."
- icon = 'icons/obj/structures_vr.dmi' // VOREStation Edit - New icons
- density = 1
- can_atmos_pass = ATMOS_PASS_PROC
- w_class = ITEMSIZE_NORMAL
-
- layer = WINDOW_LAYER
- pressure_resistance = 4*ONE_ATMOSPHERE
- anchored = 1.0
- flags = ON_BORDER
- var/maxhealth = 14.0
- var/maximal_heat = T0C + 100 // Maximal heat before this window begins taking damage from fire
- var/damage_per_fire_tick = 2.0 // Amount of damage per fire tick. Regular windows are not fireproof so they might as well break quickly.
- var/health
- var/force_threshold = 0
- var/ini_dir = null
- var/state = 2
- var/reinf = 0
- var/basestate
- var/shardtype = /obj/item/weapon/material/shard
- var/glasstype = null // Set this in subtypes. Null is assumed strange or otherwise impossible to dismantle, such as for shuttle glass.
- var/silicate = 0 // number of units of silicate
- var/fulltile = FALSE // Set to true on full-tile variants.
-
-/obj/structure/window/examine(mob/user)
- . = ..()
-
- if(health == maxhealth)
- . += "It looks fully intact. "
- else
- var/perc = health / maxhealth
- if(perc > 0.75)
- . += "It has a few cracks. "
- else if(perc > 0.5)
- . += "It looks slightly damaged. "
- else if(perc > 0.25)
- . += "It looks moderately damaged. "
- else
- . += "It looks heavily damaged. "
- if(silicate)
- if (silicate < 30)
- . += "It has a thin layer of silicate. "
- else if (silicate < 70)
- . += "It is covered in silicate. "
- else
- . += "There is a thick layer of silicate covering it. "
-
-/obj/structure/window/examine_icon()
- return icon(icon=initial(icon),icon_state=initial(icon_state))
-
-/obj/structure/window/take_damage(var/damage = 0, var/sound_effect = 1)
- var/initialhealth = health
-
- if(silicate)
- damage = damage * (1 - silicate / 200)
-
- health = max(0, health - damage)
-
- if(health <= 0)
- shatter()
- else
- if(sound_effect)
- playsound(src, 'sound/effects/Glasshit.ogg', 100, 1)
- if(health < maxhealth / 4 && initialhealth >= maxhealth / 4)
- visible_message("[src] looks like it's about to shatter!" )
- update_icon()
- else if(health < maxhealth / 2 && initialhealth >= maxhealth / 2)
- visible_message("[src] looks seriously damaged!" )
- update_icon()
- else if(health < maxhealth * 3/4 && initialhealth >= maxhealth * 3/4)
- visible_message("Cracks begin to appear in [src]!" )
- update_icon()
- return
-
-/obj/structure/window/proc/apply_silicate(var/amount)
- if(health < maxhealth) // Mend the damage
- health = min(health + amount * 3, maxhealth)
- if(health == maxhealth)
- visible_message("[src] looks fully repaired." )
- else // Reinforce
- silicate = min(silicate + amount, 100)
- updateSilicate()
-
-/obj/structure/window/proc/updateSilicate()
- if (overlays)
- overlays.Cut()
- update_icon()
-
- var/image/img = image(src)
- img.color = "#ffffff"
- img.alpha = silicate * 255 / 100
- overlays += img
-
-/obj/structure/window/proc/shatter(var/display_message = 1)
- playsound(src, "shatter", 70, 1)
- if(display_message)
- visible_message("[src] shatters!")
- new shardtype(loc)
- if(reinf)
- new /obj/item/stack/rods(loc)
- if(is_fulltile())
- new shardtype(loc) //todo pooling?
- if(reinf)
- new /obj/item/stack/rods(loc)
- qdel(src)
- return
-
-
-/obj/structure/window/bullet_act(var/obj/item/projectile/Proj)
-
- var/proj_damage = Proj.get_structure_damage()
- if(!proj_damage) return
-
- ..()
- take_damage(proj_damage)
- return
-
-
-/obj/structure/window/ex_act(severity)
- switch(severity)
- if(1.0)
- qdel(src)
- return
- if(2.0)
- shatter(0)
- return
- if(3.0)
- if(prob(50))
- shatter(0)
- return
-
-/obj/structure/window/blob_act()
- take_damage(50)
-
-/obj/structure/window/CanPass(atom/movable/mover, turf/target)
- if(istype(mover) && mover.checkpass(PASSGLASS))
- return TRUE
- if(is_fulltile())
- return FALSE //full tile window, you can't move into it!
- if((get_dir(loc, target) & dir) || (get_dir(mover, target) == turn(dir, 180)))
- return !density
- else
- return TRUE
-
-
-/obj/structure/window/CanZASPass(turf/T, is_zone)
- if(is_fulltile() || get_dir(T, loc) == turn(dir, 180)) // Make sure we're handling the border correctly.
- return !anchored // If it's anchored, it'll block air.
- return TRUE // Don't stop airflow from the other sides.
-
-/obj/structure/window/CheckExit(atom/movable/O as mob|obj, target as turf)
- if(istype(O) && O.checkpass(PASSGLASS))
- return 1
- if(get_dir(O.loc, target) == dir)
- return 0
- return 1
-
-/obj/structure/window/hitby(AM as mob|obj)
- ..()
- visible_message("[src] was hit by [AM]. ")
- var/tforce = 0
- if(ismob(AM))
- tforce = 40
- else if(isobj(AM))
- var/obj/item/I = AM
- tforce = I.throwforce
- if(reinf) tforce *= 0.25
- if(health - tforce <= 7 && !reinf)
- anchored = 0
- update_verbs()
- update_nearby_icons()
- step(src, get_dir(AM, src))
- take_damage(tforce)
-
-/obj/structure/window/attack_tk(mob/user as mob)
- user.visible_message("Something knocks on [src]. ")
- playsound(src, 'sound/effects/Glasshit.ogg', 50, 1)
-
-/obj/structure/window/attack_hand(mob/user as mob)
- user.setClickCooldown(user.get_attack_speed())
- if(HULK in user.mutations)
- user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!"))
- user.visible_message("[user] smashes through [src]! ")
- user.do_attack_animation(src)
- shatter()
-
- else if (usr.a_intent == I_HURT)
-
- if (istype(usr,/mob/living/carbon/human))
- var/mob/living/carbon/human/H = usr
- if(H.species.can_shred(H))
- attack_generic(H,25)
- return
-
- playsound(src, 'sound/effects/glassknock.ogg', 80, 1)
- user.do_attack_animation(src)
- usr.visible_message("\The [usr] bangs against \the [src]! ",
- "You bang against \the [src]! ",
- "You hear a banging sound.")
- else
- playsound(src, 'sound/effects/glassknock.ogg', 80, 1)
- usr.visible_message("[usr.name] knocks on the [src.name].",
- "You knock on the [src.name].",
- "You hear a knocking sound.")
- return
-
-/obj/structure/window/attack_generic(var/mob/user, var/damage)
- user.setClickCooldown(user.get_attack_speed())
- if(!damage)
- return
- if(damage >= STRUCTURE_MIN_DAMAGE_THRESHOLD)
- visible_message("[user] smashes into [src]! ")
- if(reinf)
- damage = damage / 2
- take_damage(damage)
- else
- visible_message("\The [user] bonks \the [src] harmlessly. ")
- user.do_attack_animation(src)
- return 1
-
-/obj/structure/window/attackby(obj/item/W as obj, mob/user as mob)
- if(!istype(W)) return//I really wish I did not need this
-
- // Fixing.
- if(istype(W, /obj/item/weapon/weldingtool) && user.a_intent == I_HELP)
- var/obj/item/weapon/weldingtool/WT = W
- if(health < maxhealth)
- if(WT.remove_fuel(1 ,user))
- to_chat(user, "You begin repairing [src]... ")
- playsound(src, WT.usesound, 50, 1)
- if(do_after(user, 40 * WT.toolspeed, target = src))
- health = maxhealth
- // playsound(src, 'sound/items/Welder.ogg', 50, 1)
- update_icon()
- to_chat(user, "You repair [src]. ")
- else
- to_chat(user, "[src] is already in good condition! ")
- return
-
- // Slamming.
- if (istype(W, /obj/item/weapon/grab) && get_dist(src,user)<2)
- var/obj/item/weapon/grab/G = W
- if(istype(G.affecting,/mob/living))
- var/mob/living/M = G.affecting
- var/state = G.state
- qdel(W) //gotta delete it here because if window breaks, it won't get deleted
- switch (state)
- if(1)
- M.visible_message("[user] slams [M] against \the [src]! ")
- M.apply_damage(7)
- hit(10)
- if(2)
- M.visible_message("[user] bashes [M] against \the [src]! ")
- if (prob(50))
- M.Weaken(1)
- M.apply_damage(10)
- hit(25)
- if(3)
- M.visible_message("[user] crushes [M] against \the [src]! ")
- M.Weaken(5)
- M.apply_damage(20)
- hit(50)
- return
-
- if(W.flags & NOBLUDGEON) return
-
- if(W.is_screwdriver())
- if(reinf && state >= 1)
- state = 3 - state
- update_nearby_icons()
- playsound(src, W.usesound, 75, 1)
- to_chat(user, "You have [state == 1 ? "un" : ""]fastened the window [state ? "from" : "to"] the frame. ")
- else if(reinf && state == 0)
- anchored = !anchored
- update_nearby_icons()
- update_verbs()
- playsound(src, W.usesound, 75, 1)
- to_chat(user, "You have [anchored ? "" : "un"]fastened the frame [anchored ? "to" : "from"] the floor. ")
- else if(!reinf)
- anchored = !anchored
- update_nearby_icons()
- update_verbs()
- playsound(src, W.usesound, 75, 1)
- to_chat(user, "You have [anchored ? "" : "un"]fastened the window [anchored ? "to" : "from"] the floor. ")
- else if(W.is_crowbar() && reinf && state <= 1)
- state = 1 - state
- playsound(src, W.usesound, 75, 1)
- to_chat(user, "You have pried the window [state ? "into" : "out of"] the frame. ")
- else if(W.is_wrench() && !anchored && (!state || !reinf))
- if(!glasstype)
- to_chat(user, "You're not sure how to dismantle \the [src] properly. ")
- else
- playsound(src, W.usesound, 75, 1)
- visible_message("[user] dismantles \the [src]. ")
- var/obj/item/stack/material/mats = new glasstype(loc)
- if(is_fulltile())
- mats.amount = 4
- qdel(src)
- else if(istype(W, /obj/item/stack/cable_coil) && reinf && state == 0 && !istype(src, /obj/structure/window/reinforced/polarized))
- var/obj/item/stack/cable_coil/C = W
- if (C.use(1))
- playsound(src, 'sound/effects/sparks1.ogg', 75, 1)
- user.visible_message( \
- "\The [user] begins to wire \the [src] for electrochromic tinting. ", \
- "You begin to wire \the [src] for electrochromic tinting. ", \
- "You hear sparks.")
- if(do_after(user, 20 * C.toolspeed, src) && state == 0)
- playsound(src, 'sound/items/Deconstruct.ogg', 50, 1)
- var/obj/structure/window/reinforced/polarized/P = new(loc, dir)
- if(is_fulltile())
- P.fulltile = TRUE
- P.icon_state = "fwindow"
- P.maxhealth = maxhealth
- P.health = health
- P.state = state
- P.anchored = anchored
- qdel(src)
- else if(istype(W,/obj/item/frame) && anchored)
- var/obj/item/frame/F = W
- F.try_build(src, user)
- else
- user.setClickCooldown(user.get_attack_speed(W))
- if(W.damtype == BRUTE || W.damtype == BURN)
- user.do_attack_animation(src)
- hit(W.force)
- if(health <= 7)
- anchored = 0
- update_nearby_icons()
- step(src, get_dir(user, src))
- else
- playsound(src, 'sound/effects/Glasshit.ogg', 75, 1)
- ..()
- return
-
-/obj/structure/window/proc/hit(var/damage, var/sound_effect = 1)
- if(damage < force_threshold || force_threshold < 0)
- return
- if(reinf) damage *= 0.5
- take_damage(damage)
- return
-
-
-/obj/structure/window/verb/rotate_counterclockwise()
- set name = "Rotate Window Counterclockwise"
- set category = "Object"
- set src in oview(1)
-
- if(usr.incapacitated())
- return 0
-
- if(is_fulltile())
- return 0
-
- if(anchored)
- to_chat(usr, "It is fastened to the floor therefore you can't rotate it!")
- return 0
-
- update_nearby_tiles(need_rebuild=1) //Compel updates before
- src.set_dir(turn(src.dir, 90))
- updateSilicate()
- update_nearby_tiles(need_rebuild=1)
- return
-
-
-/obj/structure/window/verb/rotate_clockwise()
- set name = "Rotate Window Clockwise"
- set category = "Object"
- set src in oview(1)
-
- if(usr.incapacitated())
- return 0
-
- if(is_fulltile())
- return 0
-
- if(anchored)
- to_chat(usr, "It is fastened to the floor therefore you can't rotate it!")
- return 0
-
- update_nearby_tiles(need_rebuild=1) //Compel updates before
- src.set_dir(turn(src.dir, 270))
- updateSilicate()
- update_nearby_tiles(need_rebuild=1)
- return
-
-/obj/structure/window/New(Loc, start_dir=null, constructed=0)
- ..()
-
- if (start_dir)
- set_dir(start_dir)
-
- //player-constructed windows
- if (constructed)
- anchored = 0
- state = 0
- update_verbs()
-
- health = maxhealth
-
- ini_dir = dir
-
- update_nearby_tiles(need_rebuild=1)
- update_nearby_icons()
-
-
-/obj/structure/window/Destroy()
- density = 0
- update_nearby_tiles()
- var/turf/location = loc
- . = ..()
- for(var/obj/structure/window/W in orange(location, 1))
- W.update_icon()
-
-/obj/structure/window/Move()
- var/ini_dir = dir
- update_nearby_tiles(need_rebuild=1)
- . = ..()
- set_dir(ini_dir)
- update_nearby_tiles(need_rebuild=1)
-
-//checks if this window is full-tile one
-/obj/structure/window/proc/is_fulltile()
- return fulltile
-
-/obj/structure/window/is_between_turfs(var/turf/origin, var/turf/target)
- if(fulltile)
- return TRUE
- return ..()
-
-//This proc is used to update the icons of nearby windows. It should not be confused with update_nearby_tiles(), which is an atmos proc!
-/obj/structure/window/proc/update_nearby_icons()
- update_icon()
- for(var/obj/structure/window/W in orange(src, 1))
- W.update_icon()
-
-//Updates the availabiliy of the rotation verbs
-/obj/structure/window/proc/update_verbs()
- if(anchored || is_fulltile())
- verbs -= /obj/structure/window/verb/rotate_counterclockwise
- verbs -= /obj/structure/window/verb/rotate_clockwise
- else if(!is_fulltile())
- verbs += /obj/structure/window/verb/rotate_counterclockwise
- verbs += /obj/structure/window/verb/rotate_clockwise
-
-//merges adjacent full-tile windows into one (blatant ripoff from game/smoothwall.dm)
-/obj/structure/window/update_icon()
- //A little cludge here, since I don't know how it will work with slim windows. Most likely VERY wrong.
- //this way it will only update full-tile ones
- overlays.Cut()
- if(!is_fulltile())
- // Rotate the sprite somewhat so non-fulltiled windows can be seen as needing repair.
- var/full_tilt_degrees = 15
- var/tilt_to_apply = abs((health / maxhealth) - 1)
- if(tilt_to_apply && prob(50))
- tilt_to_apply = -tilt_to_apply
- adjust_rotation(LERP(0, full_tilt_degrees, tilt_to_apply))
-
- icon_state = "[basestate]"
- return
- var/list/dirs = list()
- if(anchored)
- for(var/obj/structure/window/W in orange(src,1))
- if(W.anchored && W.density && W.glasstype == src.glasstype && W.is_fulltile()) //Only counts anchored, not-destroyed fill-tile windows.
- dirs += get_dir(src, W)
-
- var/list/connections = dirs_to_corner_states(dirs)
-
- icon_state = ""
- for(var/i = 1 to 4)
- var/image/I = image(icon, "[basestate][connections[i]]", dir = 1<<(i-1))
- overlays += I
-
- // Damage overlays.
- var/ratio = health / maxhealth
- ratio = CEILING(ratio * 4, 1) * 25
-
- if(ratio > 75)
- return
- var/image/I = image(icon, "damage[ratio]", layer = layer + 0.1)
- overlays += I
-
- return
-
-/obj/structure/window/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume)
- if(exposed_temperature > maximal_heat)
- hit(damage_per_fire_tick, 0)
- ..()
-
-
-
-/obj/structure/window/basic
- desc = "It looks thin and flimsy. A few knocks with... almost anything, really should shatter it."
- icon_state = "window"
- basestate = "window"
- glasstype = /obj/item/stack/material/glass
- maximal_heat = T0C + 100
- damage_per_fire_tick = 2.0
- maxhealth = 12.0
- force_threshold = 3
-
-/obj/structure/window/basic/full
- icon_state = "window-full"
- maxhealth = 24
- fulltile = TRUE
-
-/obj/structure/window/phoronbasic
- name = "phoron window"
- desc = "A borosilicate alloy window. It seems to be quite strong."
- basestate = "phoronwindow"
- icon_state = "phoronwindow"
- shardtype = /obj/item/weapon/material/shard/phoron
- glasstype = /obj/item/stack/material/glass/phoronglass
- maximal_heat = T0C + 2000
- damage_per_fire_tick = 1.0
- maxhealth = 40.0
- force_threshold = 5
-
-/obj/structure/window/phoronbasic/full
- icon_state = "phoronwindow-full"
- maxhealth = 80
- fulltile = TRUE
-
-/obj/structure/window/phoronreinforced
- name = "reinforced borosilicate window"
- desc = "A borosilicate alloy window, with rods supporting it. It seems to be very strong."
- basestate = "phoronrwindow"
- icon_state = "phoronrwindow"
- shardtype = /obj/item/weapon/material/shard/phoron
- glasstype = /obj/item/stack/material/glass/phoronrglass
- reinf = 1
- maximal_heat = T0C + 4000
- damage_per_fire_tick = 1.0 // This should last for 80 fire ticks if the window is not damaged at all. The idea is that borosilicate windows have something like ablative layer that protects them for a while.
- maxhealth = 80.0
- force_threshold = 10
-
-/obj/structure/window/phoronreinforced/full
- icon_state = "phoronrwindow-full"
- maxhealth = 160
- fulltile = TRUE
-
-/obj/structure/window/reinforced
- name = "reinforced window"
- desc = "It looks rather strong. Might take a few good hits to shatter it."
- icon_state = "rwindow"
- basestate = "rwindow"
- maxhealth = 40.0
- reinf = 1
- maximal_heat = T0C + 750
- damage_per_fire_tick = 2.0
- glasstype = /obj/item/stack/material/glass/reinforced
- force_threshold = 6
-
-/obj/structure/window/reinforced/full
- icon_state = "rwindow-full"
- maxhealth = 80
- fulltile = TRUE
-
-/obj/structure/window/reinforced/tinted
- name = "tinted window"
- desc = "It looks rather strong and opaque. Might take a few good hits to shatter it."
- icon_state = "twindow"
- basestate = "twindow"
- opacity = 1
-
-/obj/structure/window/reinforced/tinted/frosted
- name = "frosted window"
- desc = "It looks rather strong and frosted over. Looks like it might take a few less hits then a normal reinforced window."
- icon_state = "fwindow"
- basestate = "fwindow"
- maxhealth = 30
- force_threshold = 5
-
-/obj/structure/window/shuttle
- name = "shuttle window"
- desc = "It looks rather strong. Might take a few good hits to shatter it."
- icon = 'icons/obj/podwindows.dmi'
- icon_state = "window"
- basestate = "window"
- maxhealth = 40
- reinf = 1
- basestate = "w"
- dir = 5
- force_threshold = 7
-
-/obj/structure/window/reinforced/polarized
- name = "electrochromic window"
- desc = "Adjusts its tint with voltage. Might take a few good hits to shatter it."
- var/id
-
-/obj/structure/window/reinforced/polarized/full
- icon_state = "rwindow-full"
- maxhealth = 80
- fulltile = TRUE
-
-/obj/structure/window/reinforced/polarized/attackby(obj/item/W as obj, mob/user as mob)
- if(istype(W, /obj/item/device/multitool) && !anchored) // Only allow programming if unanchored!
- var/obj/item/device/multitool/MT = W
- // First check if they have a windowtint button buffered
- if(istype(MT.connectable, /obj/machinery/button/windowtint))
- var/obj/machinery/button/windowtint/buffered_button = MT.connectable
- src.id = buffered_button.id
- to_chat(user, "\The [src] is linked to \the [buffered_button]. ")
- return TRUE
- // Otherwise fall back to asking them
- var/t = sanitizeSafe(input(user, "Enter the ID for the window.", src.name, null), MAX_NAME_LEN)
- if (!t && user.get_active_hand() != W && in_range(src, user))
- src.id = t
- to_chat(user, "The new ID of \the [src] is [id] ")
- return TRUE
- . = ..()
-
-/obj/structure/window/reinforced/polarized/proc/toggle()
- if(opacity)
- animate(src, color="#FFFFFF", time=5)
- set_opacity(0)
- else
- animate(src, color="#222222", time=5)
- set_opacity(1)
-
-
-
-/obj/machinery/button/windowtint
- name = "window tint control"
- icon = 'icons/obj/stationobjs_vr.dmi' // VOREStation Edit - New icons
- icon_state = "light0"
- desc = "A remote control switch for polarized windows."
- var/range = 7
-
-/obj/machinery/button/windowtint/attack_hand(mob/user as mob)
- if(..())
- return 1
-
- toggle_tint()
-
-/obj/machinery/button/windowtint/proc/toggle_tint()
- use_power(5)
-
- active = !active
- update_icon()
-
- for(var/obj/structure/window/reinforced/polarized/W in range(src,range))
- if (W.id == src.id || !W.id)
- spawn(0)
- W.toggle()
- return
-
-/obj/machinery/button/windowtint/power_change()
- ..()
- if(active && !powered(power_channel))
- toggle_tint()
-
-/obj/machinery/button/windowtint/update_icon()
- icon_state = "light[active]"
-
-/obj/machinery/button/windowtint/attackby(obj/item/W as obj, mob/user as mob)
- if(istype(W, /obj/item/device/multitool))
- var/obj/item/device/multitool/MT = W
- if(!id)
- // If no ID is set yet (newly built button?) let them select an ID for first-time use!
- var/t = sanitizeSafe(input(user, "Enter an ID for \the [src].", src.name, null), MAX_NAME_LEN)
- if (t && user.get_active_hand() != W && in_range(src, user))
- src.id = t
- to_chat(user, "The new ID of \the [src] is [id] ")
- if(id)
- // It already has an ID (or they just set one), buffer it for copying to windows.
- to_chat(user, "You store \the [src] in \the [MT]'s buffer! ")
- MT.connectable = src
- MT.update_icon()
- return TRUE
- . = ..()
-
-/obj/structure/window/rcd_values(mob/living/user, obj/item/weapon/rcd/the_rcd, passed_mode)
- switch(passed_mode)
- if(RCD_DECONSTRUCT)
- return list(
- RCD_VALUE_MODE = RCD_DECONSTRUCT,
- RCD_VALUE_DELAY = 5 SECONDS,
- RCD_VALUE_COST = RCD_SHEETS_PER_MATTER_UNIT * 5
- )
-
-/obj/structure/window/rcd_act(mob/living/user, obj/item/weapon/rcd/the_rcd, passed_mode)
- switch(passed_mode)
- if(RCD_DECONSTRUCT)
- to_chat(user, span("notice", "You deconstruct \the [src]."))
- qdel(src)
- return TRUE
- return FALSE
+/obj/structure/window
+ name = "window"
+ desc = "A window."
+ icon = 'icons/obj/structures_vr.dmi' // VOREStation Edit - New icons
+ density = 1
+ can_atmos_pass = ATMOS_PASS_PROC
+ w_class = ITEMSIZE_NORMAL
+
+ layer = WINDOW_LAYER
+ pressure_resistance = 4*ONE_ATMOSPHERE
+ anchored = 1.0
+ flags = ON_BORDER
+ var/maxhealth = 14.0
+ var/maximal_heat = T0C + 100 // Maximal heat before this window begins taking damage from fire
+ var/damage_per_fire_tick = 2.0 // Amount of damage per fire tick. Regular windows are not fireproof so they might as well break quickly.
+ var/health
+ var/force_threshold = 0
+ var/ini_dir = null
+ var/state = 2
+ var/reinf = 0
+ var/basestate
+ var/shardtype = /obj/item/weapon/material/shard
+ var/glasstype = null // Set this in subtypes. Null is assumed strange or otherwise impossible to dismantle, such as for shuttle glass.
+ var/silicate = 0 // number of units of silicate
+ var/fulltile = FALSE // Set to true on full-tile variants.
+
+/obj/structure/window/examine(mob/user)
+ . = ..()
+
+ if(health == maxhealth)
+ . += "It looks fully intact. "
+ else
+ var/perc = health / maxhealth
+ if(perc > 0.75)
+ . += "It has a few cracks. "
+ else if(perc > 0.5)
+ . += "It looks slightly damaged. "
+ else if(perc > 0.25)
+ . += "It looks moderately damaged. "
+ else
+ . += "It looks heavily damaged. "
+ if(silicate)
+ if (silicate < 30)
+ . += "It has a thin layer of silicate. "
+ else if (silicate < 70)
+ . += "It is covered in silicate. "
+ else
+ . += "There is a thick layer of silicate covering it. "
+
+/obj/structure/window/examine_icon()
+ return icon(icon=initial(icon),icon_state=initial(icon_state))
+
+/obj/structure/window/take_damage(var/damage = 0, var/sound_effect = 1)
+ var/initialhealth = health
+
+ if(silicate)
+ damage = damage * (1 - silicate / 200)
+
+ health = max(0, health - damage)
+
+ if(health <= 0)
+ shatter()
+ else
+ if(sound_effect)
+ playsound(src, 'sound/effects/Glasshit.ogg', 100, 1)
+ if(health < maxhealth / 4 && initialhealth >= maxhealth / 4)
+ visible_message("[src] looks like it's about to shatter!" )
+ update_icon()
+ else if(health < maxhealth / 2 && initialhealth >= maxhealth / 2)
+ visible_message("[src] looks seriously damaged!" )
+ update_icon()
+ else if(health < maxhealth * 3/4 && initialhealth >= maxhealth * 3/4)
+ visible_message("Cracks begin to appear in [src]!" )
+ update_icon()
+ return
+
+/obj/structure/window/proc/apply_silicate(var/amount)
+ if(health < maxhealth) // Mend the damage
+ health = min(health + amount * 3, maxhealth)
+ if(health == maxhealth)
+ visible_message("[src] looks fully repaired." )
+ else // Reinforce
+ silicate = min(silicate + amount, 100)
+ updateSilicate()
+
+/obj/structure/window/proc/updateSilicate()
+ cut_overlays()
+ update_icon()
+
+ var/image/img = image(src)
+ img.color = "#ffffff"
+ img.alpha = silicate * 255 / 100
+ add_overlay(img)
+
+/obj/structure/window/proc/shatter(var/display_message = 1)
+ playsound(src, "shatter", 70, 1)
+ if(display_message)
+ visible_message("[src] shatters!")
+ new shardtype(loc)
+ if(reinf)
+ new /obj/item/stack/rods(loc)
+ if(is_fulltile())
+ new shardtype(loc) //todo pooling?
+ if(reinf)
+ new /obj/item/stack/rods(loc)
+ qdel(src)
+ return
+
+
+/obj/structure/window/bullet_act(var/obj/item/projectile/Proj)
+
+ var/proj_damage = Proj.get_structure_damage()
+ if(!proj_damage) return
+
+ ..()
+ take_damage(proj_damage)
+ return
+
+
+/obj/structure/window/ex_act(severity)
+ switch(severity)
+ if(1.0)
+ qdel(src)
+ return
+ if(2.0)
+ shatter(0)
+ return
+ if(3.0)
+ if(prob(50))
+ shatter(0)
+ return
+
+/obj/structure/window/blob_act()
+ take_damage(50)
+
+/obj/structure/window/CanPass(atom/movable/mover, turf/target)
+ if(istype(mover) && mover.checkpass(PASSGLASS))
+ return TRUE
+ if(is_fulltile())
+ return FALSE //full tile window, you can't move into it!
+ if((get_dir(loc, target) & dir) || (get_dir(mover, target) == turn(dir, 180)))
+ return !density
+ else
+ return TRUE
+
+
+/obj/structure/window/CanZASPass(turf/T, is_zone)
+ if(is_fulltile() || get_dir(T, loc) == turn(dir, 180)) // Make sure we're handling the border correctly.
+ return !anchored // If it's anchored, it'll block air.
+ return TRUE // Don't stop airflow from the other sides.
+
+/obj/structure/window/CheckExit(atom/movable/O as mob|obj, target as turf)
+ if(istype(O) && O.checkpass(PASSGLASS))
+ return 1
+ if(get_dir(O.loc, target) == dir)
+ return 0
+ return 1
+
+/obj/structure/window/hitby(AM as mob|obj)
+ ..()
+ visible_message("[src] was hit by [AM]. ")
+ var/tforce = 0
+ if(ismob(AM))
+ tforce = 40
+ else if(isobj(AM))
+ var/obj/item/I = AM
+ tforce = I.throwforce
+ if(reinf) tforce *= 0.25
+ if(health - tforce <= 7 && !reinf)
+ anchored = 0
+ update_verbs()
+ update_nearby_icons()
+ step(src, get_dir(AM, src))
+ take_damage(tforce)
+
+/obj/structure/window/attack_tk(mob/user as mob)
+ user.visible_message("Something knocks on [src]. ")
+ playsound(src, 'sound/effects/Glasshit.ogg', 50, 1)
+
+/obj/structure/window/attack_hand(mob/user as mob)
+ user.setClickCooldown(user.get_attack_speed())
+ if(HULK in user.mutations)
+ user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!"))
+ user.visible_message("[user] smashes through [src]! ")
+ user.do_attack_animation(src)
+ shatter()
+
+ else if (usr.a_intent == I_HURT)
+
+ if (istype(usr,/mob/living/carbon/human))
+ var/mob/living/carbon/human/H = usr
+ if(H.species.can_shred(H))
+ attack_generic(H,25)
+ return
+
+ playsound(src, 'sound/effects/glassknock.ogg', 80, 1)
+ user.do_attack_animation(src)
+ usr.visible_message("\The [usr] bangs against \the [src]! ",
+ "You bang against \the [src]! ",
+ "You hear a banging sound.")
+ else
+ playsound(src, 'sound/effects/glassknock.ogg', 80, 1)
+ usr.visible_message("[usr.name] knocks on the [src.name].",
+ "You knock on the [src.name].",
+ "You hear a knocking sound.")
+ return
+
+/obj/structure/window/attack_generic(var/mob/user, var/damage)
+ user.setClickCooldown(user.get_attack_speed())
+ if(!damage)
+ return
+ if(damage >= STRUCTURE_MIN_DAMAGE_THRESHOLD)
+ visible_message("[user] smashes into [src]! ")
+ if(reinf)
+ damage = damage / 2
+ take_damage(damage)
+ else
+ visible_message("\The [user] bonks \the [src] harmlessly. ")
+ user.do_attack_animation(src)
+ return 1
+
+/obj/structure/window/attackby(obj/item/W as obj, mob/user as mob)
+ if(!istype(W)) return//I really wish I did not need this
+
+ // Fixing.
+ if(istype(W, /obj/item/weapon/weldingtool) && user.a_intent == I_HELP)
+ var/obj/item/weapon/weldingtool/WT = W
+ if(health < maxhealth)
+ if(WT.remove_fuel(1 ,user))
+ to_chat(user, "You begin repairing [src]... ")
+ playsound(src, WT.usesound, 50, 1)
+ if(do_after(user, 40 * WT.toolspeed, target = src))
+ health = maxhealth
+ // playsound(src, 'sound/items/Welder.ogg', 50, 1)
+ update_icon()
+ to_chat(user, "You repair [src]. ")
+ else
+ to_chat(user, "[src] is already in good condition! ")
+ return
+
+ // Slamming.
+ if (istype(W, /obj/item/weapon/grab) && get_dist(src,user)<2)
+ var/obj/item/weapon/grab/G = W
+ if(istype(G.affecting,/mob/living))
+ var/mob/living/M = G.affecting
+ var/state = G.state
+ qdel(W) //gotta delete it here because if window breaks, it won't get deleted
+ switch (state)
+ if(1)
+ M.visible_message("[user] slams [M] against \the [src]! ")
+ M.apply_damage(7)
+ hit(10)
+ if(2)
+ M.visible_message("[user] bashes [M] against \the [src]! ")
+ if (prob(50))
+ M.Weaken(1)
+ M.apply_damage(10)
+ hit(25)
+ if(3)
+ M.visible_message("[user] crushes [M] against \the [src]! ")
+ M.Weaken(5)
+ M.apply_damage(20)
+ hit(50)
+ return
+
+ if(W.flags & NOBLUDGEON) return
+
+ if(W.is_screwdriver())
+ if(reinf && state >= 1)
+ state = 3 - state
+ update_nearby_icons()
+ playsound(src, W.usesound, 75, 1)
+ to_chat(user, "You have [state == 1 ? "un" : ""]fastened the window [state ? "from" : "to"] the frame. ")
+ else if(reinf && state == 0)
+ anchored = !anchored
+ update_nearby_icons()
+ update_verbs()
+ playsound(src, W.usesound, 75, 1)
+ to_chat(user, "You have [anchored ? "" : "un"]fastened the frame [anchored ? "to" : "from"] the floor. ")
+ else if(!reinf)
+ anchored = !anchored
+ update_nearby_icons()
+ update_verbs()
+ playsound(src, W.usesound, 75, 1)
+ to_chat(user, "You have [anchored ? "" : "un"]fastened the window [anchored ? "to" : "from"] the floor. ")
+ else if(W.is_crowbar() && reinf && state <= 1)
+ state = 1 - state
+ playsound(src, W.usesound, 75, 1)
+ to_chat(user, "You have pried the window [state ? "into" : "out of"] the frame. ")
+ else if(W.is_wrench() && !anchored && (!state || !reinf))
+ if(!glasstype)
+ to_chat(user, "You're not sure how to dismantle \the [src] properly. ")
+ else
+ playsound(src, W.usesound, 75, 1)
+ visible_message("[user] dismantles \the [src]. ")
+ var/obj/item/stack/material/mats = new glasstype(loc)
+ if(is_fulltile())
+ mats.amount = 4
+ qdel(src)
+ else if(istype(W, /obj/item/stack/cable_coil) && reinf && state == 0 && !istype(src, /obj/structure/window/reinforced/polarized))
+ var/obj/item/stack/cable_coil/C = W
+ if (C.use(1))
+ playsound(src, 'sound/effects/sparks1.ogg', 75, 1)
+ user.visible_message( \
+ "\The [user] begins to wire \the [src] for electrochromic tinting. ", \
+ "You begin to wire \the [src] for electrochromic tinting. ", \
+ "You hear sparks.")
+ if(do_after(user, 20 * C.toolspeed, src) && state == 0)
+ playsound(src, 'sound/items/Deconstruct.ogg', 50, 1)
+ var/obj/structure/window/reinforced/polarized/P = new(loc, dir)
+ if(is_fulltile())
+ P.fulltile = TRUE
+ P.icon_state = "fwindow"
+ P.maxhealth = maxhealth
+ P.health = health
+ P.state = state
+ P.anchored = anchored
+ qdel(src)
+ else if(istype(W,/obj/item/frame) && anchored)
+ var/obj/item/frame/F = W
+ F.try_build(src, user)
+ else
+ user.setClickCooldown(user.get_attack_speed(W))
+ if(W.damtype == BRUTE || W.damtype == BURN)
+ user.do_attack_animation(src)
+ hit(W.force)
+ if(health <= 7)
+ anchored = 0
+ update_nearby_icons()
+ step(src, get_dir(user, src))
+ else
+ playsound(src, 'sound/effects/Glasshit.ogg', 75, 1)
+ ..()
+ return
+
+/obj/structure/window/proc/hit(var/damage, var/sound_effect = 1)
+ if(damage < force_threshold || force_threshold < 0)
+ return
+ if(reinf) damage *= 0.5
+ take_damage(damage)
+ return
+
+
+/obj/structure/window/verb/rotate_counterclockwise()
+ set name = "Rotate Window Counterclockwise"
+ set category = "Object"
+ set src in oview(1)
+
+ if(usr.incapacitated())
+ return 0
+
+ if(is_fulltile())
+ return 0
+
+ if(anchored)
+ to_chat(usr, "It is fastened to the floor therefore you can't rotate it!")
+ return 0
+
+ update_nearby_tiles(need_rebuild=1) //Compel updates before
+ src.set_dir(turn(src.dir, 90))
+ updateSilicate()
+ update_nearby_tiles(need_rebuild=1)
+ return
+
+
+/obj/structure/window/verb/rotate_clockwise()
+ set name = "Rotate Window Clockwise"
+ set category = "Object"
+ set src in oview(1)
+
+ if(usr.incapacitated())
+ return 0
+
+ if(is_fulltile())
+ return 0
+
+ if(anchored)
+ to_chat(usr, "It is fastened to the floor therefore you can't rotate it!")
+ return 0
+
+ update_nearby_tiles(need_rebuild=1) //Compel updates before
+ src.set_dir(turn(src.dir, 270))
+ updateSilicate()
+ update_nearby_tiles(need_rebuild=1)
+ return
+
+/obj/structure/window/New(Loc, start_dir=null, constructed=0)
+ ..()
+
+ if (start_dir)
+ set_dir(start_dir)
+
+ //player-constructed windows
+ if (constructed)
+ anchored = 0
+ state = 0
+ update_verbs()
+
+ health = maxhealth
+
+ ini_dir = dir
+
+ update_nearby_tiles(need_rebuild=1)
+ update_nearby_icons()
+
+
+/obj/structure/window/Destroy()
+ density = 0
+ update_nearby_tiles()
+ var/turf/location = loc
+ . = ..()
+ for(var/obj/structure/window/W in orange(location, 1))
+ W.update_icon()
+
+/obj/structure/window/Move()
+ var/ini_dir = dir
+ update_nearby_tiles(need_rebuild=1)
+ . = ..()
+ set_dir(ini_dir)
+ update_nearby_tiles(need_rebuild=1)
+
+//checks if this window is full-tile one
+/obj/structure/window/proc/is_fulltile()
+ return fulltile
+
+/obj/structure/window/is_between_turfs(var/turf/origin, var/turf/target)
+ if(is_fulltile())
+ return TRUE
+ return ..()
+
+//This proc is used to update the icons of nearby windows. It should not be confused with update_nearby_tiles(), which is an atmos proc!
+/obj/structure/window/proc/update_nearby_icons()
+ update_icon()
+ for(var/obj/structure/window/W in orange(src, 1))
+ W.update_icon()
+
+//Updates the availabiliy of the rotation verbs
+/obj/structure/window/proc/update_verbs()
+ if(anchored || is_fulltile())
+ verbs -= /obj/structure/window/verb/rotate_counterclockwise
+ verbs -= /obj/structure/window/verb/rotate_clockwise
+ else if(!is_fulltile())
+ verbs += /obj/structure/window/verb/rotate_counterclockwise
+ verbs += /obj/structure/window/verb/rotate_clockwise
+
+//merges adjacent full-tile windows into one (blatant ripoff from game/smoothwall.dm)
+/obj/structure/window/update_icon()
+ //A little cludge here, since I don't know how it will work with slim windows. Most likely VERY wrong.
+ //this way it will only update full-tile ones
+ cut_overlays()
+ if(!is_fulltile())
+ // Rotate the sprite somewhat so non-fulltiled windows can be seen as needing repair.
+ var/full_tilt_degrees = 15
+ var/tilt_to_apply = abs((health / maxhealth) - 1)
+ if(tilt_to_apply && prob(50))
+ tilt_to_apply = -tilt_to_apply
+ adjust_rotation(LERP(0, full_tilt_degrees, tilt_to_apply))
+
+ icon_state = "[basestate]"
+ return
+ else
+ flags = 0 // Removes ON_BORDER and OPPOSITE_OPACITY
+ var/list/dirs = list()
+ if(anchored)
+ for(var/obj/structure/window/W in orange(src,1))
+ if(W.anchored && W.density && W.glasstype == src.glasstype && W.is_fulltile()) //Only counts anchored, not-destroyed fill-tile windows.
+ dirs += get_dir(src, W)
+
+ var/list/connections = dirs_to_corner_states(dirs)
+
+ icon_state = ""
+ for(var/i = 1 to 4)
+ var/image/I = image(icon, "[basestate][connections[i]]", dir = 1<<(i-1))
+ add_overlay(I)
+
+ // Damage overlays.
+ var/ratio = health / maxhealth
+ ratio = CEILING(ratio * 4, 1) * 25
+
+ if(ratio > 75)
+ return
+ var/image/I = image(icon, "damage[ratio]", layer = layer + 0.1)
+ add_overlay(I)
+
+ return
+
+/obj/structure/window/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume)
+ if(exposed_temperature > maximal_heat)
+ hit(damage_per_fire_tick, 0)
+ ..()
+
+
+
+/obj/structure/window/basic
+ desc = "It looks thin and flimsy. A few knocks with... almost anything, really should shatter it."
+ icon_state = "window"
+ basestate = "window"
+ glasstype = /obj/item/stack/material/glass
+ maximal_heat = T0C + 100
+ damage_per_fire_tick = 2.0
+ maxhealth = 12.0
+ force_threshold = 3
+
+/obj/structure/window/basic/full
+ icon_state = "window-full"
+ maxhealth = 24
+ fulltile = TRUE
+ flags = 0
+
+/obj/structure/window/phoronbasic
+ name = "phoron window"
+ desc = "A borosilicate alloy window. It seems to be quite strong."
+ basestate = "phoronwindow"
+ icon_state = "phoronwindow"
+ shardtype = /obj/item/weapon/material/shard/phoron
+ glasstype = /obj/item/stack/material/glass/phoronglass
+ maximal_heat = T0C + 2000
+ damage_per_fire_tick = 1.0
+ maxhealth = 40.0
+ force_threshold = 5
+
+/obj/structure/window/phoronbasic/full
+ icon_state = "phoronwindow-full"
+ maxhealth = 80
+ fulltile = TRUE
+ flags = 0
+
+/obj/structure/window/phoronreinforced
+ name = "reinforced borosilicate window"
+ desc = "A borosilicate alloy window, with rods supporting it. It seems to be very strong."
+ basestate = "phoronrwindow"
+ icon_state = "phoronrwindow"
+ shardtype = /obj/item/weapon/material/shard/phoron
+ glasstype = /obj/item/stack/material/glass/phoronrglass
+ reinf = 1
+ maximal_heat = T0C + 4000
+ damage_per_fire_tick = 1.0 // This should last for 80 fire ticks if the window is not damaged at all. The idea is that borosilicate windows have something like ablative layer that protects them for a while.
+ maxhealth = 80.0
+ force_threshold = 10
+
+/obj/structure/window/phoronreinforced/full
+ icon_state = "phoronrwindow-full"
+ maxhealth = 160
+ fulltile = TRUE
+ flags = 0
+
+/obj/structure/window/reinforced
+ name = "reinforced window"
+ desc = "It looks rather strong. Might take a few good hits to shatter it."
+ icon_state = "rwindow"
+ basestate = "rwindow"
+ maxhealth = 40.0
+ reinf = 1
+ maximal_heat = T0C + 750
+ damage_per_fire_tick = 2.0
+ glasstype = /obj/item/stack/material/glass/reinforced
+ force_threshold = 6
+
+/obj/structure/window/reinforced/full
+ icon_state = "rwindow-full"
+ maxhealth = 80
+ fulltile = TRUE
+ flags = 0
+
+/obj/structure/window/reinforced/tinted
+ name = "tinted window"
+ desc = "It looks rather strong and opaque. Might take a few good hits to shatter it."
+ icon_state = "twindow"
+ basestate = "twindow"
+ opacity = 1
+
+/obj/structure/window/reinforced/tinted/frosted
+ name = "frosted window"
+ desc = "It looks rather strong and frosted over. Looks like it might take a few less hits then a normal reinforced window."
+ icon_state = "fwindow"
+ basestate = "fwindow"
+ maxhealth = 30
+ force_threshold = 5
+
+/obj/structure/window/shuttle
+ name = "shuttle window"
+ desc = "It looks rather strong. Might take a few good hits to shatter it."
+ icon = 'icons/obj/podwindows.dmi'
+ icon_state = "window"
+ basestate = "window"
+ maxhealth = 40
+ reinf = 1
+ basestate = "w"
+ dir = 5
+ force_threshold = 7
+
+/obj/structure/window/reinforced/polarized
+ name = "electrochromic window"
+ desc = "Adjusts its tint with voltage. Might take a few good hits to shatter it."
+ var/id
+
+/obj/structure/window/reinforced/polarized/full
+ icon_state = "rwindow-full"
+ maxhealth = 80
+ fulltile = TRUE
+ flags = 0
+
+/obj/structure/window/reinforced/polarized/attackby(obj/item/W as obj, mob/user as mob)
+ if(istype(W, /obj/item/device/multitool) && !anchored) // Only allow programming if unanchored!
+ var/obj/item/device/multitool/MT = W
+ // First check if they have a windowtint button buffered
+ if(istype(MT.connectable, /obj/machinery/button/windowtint))
+ var/obj/machinery/button/windowtint/buffered_button = MT.connectable
+ src.id = buffered_button.id
+ to_chat(user, "\The [src] is linked to \the [buffered_button]. ")
+ return TRUE
+ // Otherwise fall back to asking them
+ var/t = sanitizeSafe(input(user, "Enter the ID for the window.", src.name, null), MAX_NAME_LEN)
+ if (!t && user.get_active_hand() != W && in_range(src, user))
+ src.id = t
+ to_chat(user, "The new ID of \the [src] is [id] ")
+ return TRUE
+ . = ..()
+
+/obj/structure/window/reinforced/polarized/proc/toggle()
+ if(opacity)
+ animate(src, color="#FFFFFF", time=5)
+ set_opacity(0)
+ else
+ animate(src, color="#222222", time=5)
+ set_opacity(1)
+ var/turf/T = get_turf(src)
+ T.recalculate_directional_opacity()
+
+/obj/machinery/button/windowtint
+ name = "window tint control"
+ icon = 'icons/obj/stationobjs_vr.dmi' // VOREStation Edit - New icons
+ icon_state = "light0"
+ desc = "A remote control switch for polarized windows."
+ var/range = 7
+
+/obj/machinery/button/windowtint/attack_hand(mob/user as mob)
+ if(..())
+ return 1
+
+ toggle_tint()
+
+/obj/machinery/button/windowtint/proc/toggle_tint()
+ use_power(5)
+
+ active = !active
+ update_icon()
+
+ for(var/obj/structure/window/reinforced/polarized/W in range(src,range))
+ if (W.id == src.id || !W.id)
+ spawn(0)
+ W.toggle()
+ return
+
+/obj/machinery/button/windowtint/power_change()
+ ..()
+ if(active && !powered(power_channel))
+ toggle_tint()
+
+/obj/machinery/button/windowtint/update_icon()
+ icon_state = "light[active]"
+
+/obj/machinery/button/windowtint/attackby(obj/item/W as obj, mob/user as mob)
+ if(istype(W, /obj/item/device/multitool))
+ var/obj/item/device/multitool/MT = W
+ if(!id)
+ // If no ID is set yet (newly built button?) let them select an ID for first-time use!
+ var/t = sanitizeSafe(input(user, "Enter an ID for \the [src].", src.name, null), MAX_NAME_LEN)
+ if (t && user.get_active_hand() != W && in_range(src, user))
+ src.id = t
+ to_chat(user, "The new ID of \the [src] is [id] ")
+ if(id)
+ // It already has an ID (or they just set one), buffer it for copying to windows.
+ to_chat(user, "You store \the [src] in \the [MT]'s buffer! ")
+ MT.connectable = src
+ MT.update_icon()
+ return TRUE
+ . = ..()
+
+/obj/structure/window/rcd_values(mob/living/user, obj/item/weapon/rcd/the_rcd, passed_mode)
+ switch(passed_mode)
+ if(RCD_DECONSTRUCT)
+ return list(
+ RCD_VALUE_MODE = RCD_DECONSTRUCT,
+ RCD_VALUE_DELAY = 5 SECONDS,
+ RCD_VALUE_COST = RCD_SHEETS_PER_MATTER_UNIT * 5
+ )
+
+/obj/structure/window/rcd_act(mob/living/user, obj/item/weapon/rcd/the_rcd, passed_mode)
+ switch(passed_mode)
+ if(RCD_DECONSTRUCT)
+ to_chat(user, span("notice", "You deconstruct \the [src]."))
+ qdel(src)
+ return TRUE
+ return FALSE
diff --git a/code/game/turfs/simulated/floor.dm b/code/game/turfs/simulated/floor.dm
index 2e6099aec2..1d37f4b47a 100644
--- a/code/game/turfs/simulated/floor.dm
+++ b/code/game/turfs/simulated/floor.dm
@@ -30,7 +30,6 @@
thermal_conductivity = 0.040
heat_capacity = 10000
- var/lava = 0
/turf/simulated/floor/is_plating()
return (!flooring || flooring.is_plating)
diff --git a/code/game/turfs/simulated/floor_icon.dm b/code/game/turfs/simulated/floor_icon.dm
index e82edc294d..d975f81090 100644
--- a/code/game/turfs/simulated/floor_icon.dm
+++ b/code/game/turfs/simulated/floor_icon.dm
@@ -11,10 +11,6 @@ var/image/no_ceiling_image = null
no_ceiling_image.plane = PLANE_MESONS
/turf/simulated/floor/update_icon(var/update_neighbors)
-
- if(lava)
- return
-
cut_overlays()
if(flooring)
diff --git a/code/game/turfs/simulated/floor_types.dm b/code/game/turfs/simulated/floor_types.dm
index 437912b4d2..e5c4391e64 100644
--- a/code/game/turfs/simulated/floor_types.dm
+++ b/code/game/turfs/simulated/floor_types.dm
@@ -214,11 +214,13 @@
light_range = 3
light_power = 0.6
light_color = "#66ffff" // Bright cyan.
+ light_on = TRUE
block_tele = TRUE
/turf/simulated/shuttle/floor/alien/Initialize()
. = ..()
icon_state = "alienpod[rand(1, 9)]"
+ update_light()
/turf/simulated/shuttle/floor/alienplating
icon_state = "alienplating"
diff --git a/code/game/turfs/simulated/lava.dm b/code/game/turfs/simulated/lava.dm
index 22b79272b8..67524c05ef 100644
--- a/code/game/turfs/simulated/lava.dm
+++ b/code/game/turfs/simulated/lava.dm
@@ -10,6 +10,7 @@
light_range = 2
light_power = 0.75
light_color = LIGHT_COLOR_LAVA
+ light_on = TRUE
movement_cost = 2
can_build_into_floor = TRUE
can_dirty = FALSE
@@ -23,6 +24,7 @@
if(!outdoors)
name = "magma"
update_icon()
+ update_light()
return ..()
/turf/simulated/floor/lava/make_outdoors()
diff --git a/code/game/turfs/simulated/outdoors/outdoors_vr.dm b/code/game/turfs/simulated/outdoors/outdoors_vr.dm
new file mode 100644
index 0000000000..a7233b4329
--- /dev/null
+++ b/code/game/turfs/simulated/outdoors/outdoors_vr.dm
@@ -0,0 +1,108 @@
+/turf/simulated/floor/tiled/asteroid_steel/outdoors
+ name = "weathered tiles"
+ desc = "Old tiles left out in the elements."
+ outdoors = 1
+ edge_blending_priority = 1
+
+/turf/simulated/floor/outdoors/newdirt
+ name = "dirt"
+ desc = "Looks dirty."
+ icon = 'icons/turf/outdoors_vr.dmi'
+ icon_state = "dirt0"
+ edge_blending_priority = 2
+ initial_flooring = /decl/flooring/outdoors/newdirt
+
+/decl/flooring/outdoors/newdirt
+ name = "dirt"
+ desc = "Looks dirty."
+ icon = 'icons/turf/outdoors_vr.dmi'
+ icon_base = "dirt0"
+ footstep_sounds = list("human" = list(
+ 'sound/effects/footstep/asteroid1.ogg',
+ 'sound/effects/footstep/asteroid2.ogg',
+ 'sound/effects/footstep/asteroid3.ogg',
+ 'sound/effects/footstep/asteroid4.ogg',
+ 'sound/effects/footstep/asteroid5.ogg',
+ 'sound/effects/footstep/MedDirt1.ogg',
+ 'sound/effects/footstep/MedDirt2.ogg',
+ 'sound/effects/footstep/MedDirt3.ogg',
+ 'sound/effects/footstep/MedDirt4.ogg'))
+
+/turf/simulated/floor/outdoors/newdirt/Initialize(mapload)
+ var/possibledirts = list(
+ "dirt0" = 150,
+ "dirt1" = 25,
+ "dirt2" = 25,
+ "dirt3" = 10,
+ "dirt4" = 3,
+ "dirt5" = 3,
+ "dirt6" = 1,
+ "dirt7" = 25,
+ "dirt8" = 10,
+ "dirt9" = 25
+ )
+ flooring_override = pickweight(possibledirts)
+ return ..()
+
+
+/turf/simulated/floor/outdoors/newdirt_nograss
+ name = "dirt"
+ desc = "Looks dirty."
+ icon = 'icons/turf/outdoors_vr.dmi'
+ icon_state = "dirt0"
+ edge_blending_priority = 2
+ initial_flooring = /decl/flooring/outdoors/newdirt
+
+/turf/simulated/floor/outdoors/newdirt_nograss/Initialize(mapload)
+ var/possibledirts = list(
+ "dirt0" = 200,
+ "dirt3" = 20,
+ "dirt4" = 3,
+ "dirt5" = 3,
+ "dirt6" = 1
+ )
+ flooring_override = pickweight(possibledirts)
+ return ..()
+
+/turf/simulated/floor/outdoors/sidewalk
+ name = "sidewalk"
+ desc = "Concrete shaped into a path!"
+ icon = 'icons/turf/outdoors_vr.dmi'
+ icon_state = "sidewalk"
+ edge_blending_priority = 1
+ movement_cost = -0.5
+ initial_flooring = /decl/flooring/outdoors/sidewalk
+
+/decl/flooring/outdoors/sidewalk
+ name = "sidewalk"
+ desc = "Concrete shaped into a path!"
+ icon = 'icons/turf/outdoors_vr.dmi'
+ icon_base = "sidewalk"
+ footstep_sounds = list("human" = list(
+ 'sound/effects/footstep/LightStone1.ogg',
+ 'sound/effects/footstep/LightStone2.ogg',
+ 'sound/effects/footstep/LightStone3.ogg',
+ 'sound/effects/footstep/LightStone4.ogg',))
+
+/turf/simulated/floor/outdoors/sidewalk/Initialize(mapload)
+ var/possibledirts = list(
+ "[initial(icon_state)]" = 150,
+ "[initial(icon_state)]1" = 3,
+ "[initial(icon_state)]2" = 3,
+ "[initial(icon_state)]3" = 3,
+ "[initial(icon_state)]4" = 3,
+ "[initial(icon_state)]5" = 3,
+ "[initial(icon_state)]6" = 2,
+ "[initial(icon_state)]7" = 2,
+ "[initial(icon_state)]8" = 2,
+ "[initial(icon_state)]9" = 2,
+ "[initial(icon_state)]10" = 2
+ )
+ flooring_override = pickweight(possibledirts)
+ return ..()
+
+/turf/simulated/floor/outdoors/sidewalk/side
+ icon_state = "side-walk"
+
+/turf/simulated/floor/outdoors/sidewalk/slab
+ icon_state = "slab"
diff --git a/code/game/turfs/simulated/wall_types.dm b/code/game/turfs/simulated/wall_types.dm
index d3a44b6eff..d7cad99f5a 100644
--- a/code/game/turfs/simulated/wall_types.dm
+++ b/code/game/turfs/simulated/wall_types.dm
@@ -172,8 +172,13 @@
light_range = 3
light_power = 0.75
light_color = "#ff0066" // Pink-ish
+ light_on = TRUE
block_tele = TRUE // Will be used for dungeons so this is needed to stop cheesing with handteles.
+/turf/simulated/shuttle/wall/alien/Initialize()
+ . = ..()
+ update_light()
+
/turf/simulated/shuttle/wall/alien/hard_corner
name = "hardcorner wall"
icon_state = "alien-hc"
diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm
index 9cacb36eaf..db8947b056 100644
--- a/code/game/turfs/turf.dm
+++ b/code/game/turfs/turf.dm
@@ -41,7 +41,9 @@
//Lighting related
luminosity = !(dynamic_lighting)
- has_opaque_atom |= (opacity)
+
+ if(opacity)
+ directional_opacity = ALL_CARDINALS
//Pathfinding related
if(movement_cost && pathweight == 1) // This updates pathweight automatically.
diff --git a/code/game/turfs/turf_changing.dm b/code/game/turfs/turf_changing.dm
index b3988f3f77..efbea4ffb3 100644
--- a/code/game/turfs/turf_changing.dm
+++ b/code/game/turfs/turf_changing.dm
@@ -32,11 +32,13 @@
N = /turf/simulated/open
var/obj/fire/old_fire = fire
- var/old_opacity = opacity
var/old_dynamic_lighting = dynamic_lighting
- var/old_affecting_lights = affecting_lights
- var/old_lighting_overlay = lighting_overlay
- var/old_corners = corners
+ var/old_lighting_object = lighting_object
+ var/old_lighting_corner_NE = lighting_corner_NE
+ var/old_lighting_corner_SE = lighting_corner_SE
+ var/old_lighting_corner_SW = lighting_corner_SW
+ var/old_lighting_corner_NW = lighting_corner_NW
+ var/old_directional_opacity = directional_opacity
var/old_outdoors = outdoors
var/old_dangerous_objects = dangerous_objects
@@ -94,21 +96,29 @@
W.post_change()
. = W
- recalc_atom_opacity()
-
dangerous_objects = old_dangerous_objects
- if(lighting_overlays_initialised)
- lighting_overlay = old_lighting_overlay
- affecting_lights = old_affecting_lights
- corners = old_corners
- if((old_opacity != opacity) || (dynamic_lighting != old_dynamic_lighting))
- reconsider_lights()
- if(dynamic_lighting != old_dynamic_lighting)
- if(dynamic_lighting)
+ lighting_corner_NE = old_lighting_corner_NE
+ lighting_corner_SE = old_lighting_corner_SE
+ lighting_corner_SW = old_lighting_corner_SW
+ lighting_corner_NW = old_lighting_corner_NW
+
+ if(SSlighting.subsystem_initialized)
+ lighting_object = old_lighting_object
+
+ directional_opacity = old_directional_opacity
+ recalculate_directional_opacity()
+
+ if (dynamic_lighting != old_dynamic_lighting)
+ if (IS_DYNAMIC_LIGHTING(src))
lighting_build_overlay()
else
lighting_clear_overlay()
+ else if(lighting_object && !lighting_object.needs_update)
+ lighting_object.update()
+
+ for(var/turf/space/space_tile in RANGE_TURFS(1, src))
+ space_tile.update_starlight()
if(preserve_outdoors)
outdoors = old_outdoors
diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm
index e7c3a34c11..9676143751 100644
--- a/code/modules/admin/admin.dm
+++ b/code/modules/admin/admin.dm
@@ -1609,7 +1609,7 @@ datum/admins/var/obj/item/weapon/paper/admin/faxreply // var to hold fax replies
if(!P.stamped)
P.stamped = new
P.stamped += /obj/item/weapon/stamp/centcomm
- P.overlays += stampoverlay
+ P.add_overlay(stampoverlay)
var/obj/item/rcvdcopy
rcvdcopy = destination.copy(P)
diff --git a/code/modules/ai/ai_holder_movement.dm b/code/modules/ai/ai_holder_movement.dm
index bc5916917a..5062492684 100644
--- a/code/modules/ai/ai_holder_movement.dm
+++ b/code/modules/ai/ai_holder_movement.dm
@@ -126,7 +126,7 @@
if(path_display)
var/turf/T = src.path[1]
- T.overlays -= path_overlay
+ T.cut_overlay(path_overlay)
// step_towards(holder, src.path[1])
if(holder.IMove(get_step_towards(holder, src.path[1])) != MOVEMENT_ON_COOLDOWN)
diff --git a/code/modules/ai/ai_holder_pathfinding.dm b/code/modules/ai/ai_holder_pathfinding.dm
index 1a20c6f682..fed867ee24 100644
--- a/code/modules/ai/ai_holder_pathfinding.dm
+++ b/code/modules/ai/ai_holder_pathfinding.dm
@@ -14,7 +14,7 @@
ai_log("forget_path() : Entering.", AI_LOG_DEBUG)
if(path_display)
for(var/turf/T in path)
- T.overlays -= path_overlay
+ T.cut_overlay(path_overlay)
path.Cut()
ai_log("forget_path() : Exiting.", AI_LOG_DEBUG)
@@ -49,7 +49,7 @@
ai_log("get_path() : Made new path.",AI_LOG_DEBUG)
if(path_display)
for(var/turf/T in path)
- T.overlays |= path_overlay
+ T.add_overlay(path_overlay)
else
ai_log("get_path() : Failed to make new path. Exiting.",AI_LOG_DEBUG)
return 0
diff --git a/code/modules/ai/ai_holder_targeting.dm b/code/modules/ai/ai_holder_targeting.dm
index 3b3878babe..a243ab8a58 100644
--- a/code/modules/ai/ai_holder_targeting.dm
+++ b/code/modules/ai/ai_holder_targeting.dm
@@ -222,17 +222,17 @@
lose_target_position()
if(last_turf_display && target_last_seen_turf)
- target_last_seen_turf.overlays -= last_turf_overlay
+ target_last_seen_turf.cut_overlay(last_turf_overlay)
target_last_seen_turf = get_turf(target)
if(last_turf_display)
- target_last_seen_turf.overlays += last_turf_overlay
+ target_last_seen_turf.add_overlay(last_turf_overlay)
// Resets the last known position to null.
/datum/ai_holder/proc/lose_target_position()
if(last_turf_display && target_last_seen_turf)
- target_last_seen_turf.overlays -= last_turf_overlay
+ target_last_seen_turf.cut_overlay(last_turf_overlay)
ai_log("lose_target_position() : Last position is being reset.", AI_LOG_INFO)
target_last_seen_turf = null
diff --git a/code/modules/assembly/timer.dm b/code/modules/assembly/timer.dm
index fa8b783815..30f002de7d 100644
--- a/code/modules/assembly/timer.dm
+++ b/code/modules/assembly/timer.dm
@@ -53,10 +53,10 @@
time = 10
/obj/item/device/assembly/timer/update_icon()
- overlays.Cut()
+ cut_overlays()
attached_overlays = list()
if(timing)
- overlays += "timer_timing"
+ add_overlay("timer_timing")
attached_overlays += "timer_timing"
if(holder)
holder.update_icon()
diff --git a/code/modules/asset_cache/asset_list_items.dm b/code/modules/asset_cache/asset_list_items.dm
index c71aafef7b..3c4540679c 100644
--- a/code/modules/asset_cache/asset_list_items.dm
+++ b/code/modules/asset_cache/asset_list_items.dm
@@ -1,11 +1,18 @@
//DEFINITIONS FOR ASSET DATUMS START HERE.
+/datum/asset/simple/tgui_common
+ // keep_local_name = TRUE
+ assets = list(
+ "tgui-common.bundle.js" = file("tgui/public/tgui-common.bundle.js"),
+ )
/datum/asset/simple/tgui
+ // keep_local_name = TRUE
assets = list(
- "tgui.bundle.js" = 'tgui/packages/tgui/public/tgui.bundle.js',
- "tgui.bundle.css" = 'tgui/packages/tgui/public/tgui.bundle.css',
+ "tgui.bundle.js" = file("tgui/public/tgui.bundle.js"),
+ "tgui.bundle.css" = file("tgui/public/tgui.bundle.css"),
)
+
/datum/asset/simple/headers
assets = list(
"alarm_green.gif" = 'icons/program_icons/alarm_green.gif',
@@ -175,6 +182,14 @@
"v4shim.css" = 'html/font-awesome/css/v4-shims.min.css'
)
+/datum/asset/simple/tgfont
+ assets = list(
+ "tgfont.eot" = file("tgui/packages/tgfont/dist/tgfont.eot"),
+ "tgfont.woff2" = file("tgui/packages/tgfont/dist/tgfont.woff2"),
+ "tgfont.css" = file("tgui/packages/tgfont/dist/tgfont.css"),
+ )
+
+
// /datum/asset/spritesheet/goonchat
// name = "chat"
diff --git a/code/modules/awaymissions/gateway.dm b/code/modules/awaymissions/gateway.dm
index daf964e443..1d1b4c4a8e 100644
--- a/code/modules/awaymissions/gateway.dm
+++ b/code/modules/awaymissions/gateway.dm
@@ -148,6 +148,13 @@ obj/machinery/gateway/centerstation/process()
if(dest)
M.forceMove(dest.loc)
M.set_dir(SOUTH)
+ //VOREStation Addition Start: Mcguffin time!
+ if(istype(M, /mob/living/carbon/human))
+ var/mob/living/carbon/human/H = M
+ if(!H.client)
+ awaygate.entrydetect()
+ //VOREStation Addition End: Mcguffin time!
+
//VOREStation Addition Start: Abduction!
if(istype(M, /mob/living) && dest.abductor)
var/mob/living/L = M
@@ -318,4 +325,4 @@ obj/machinery/gateway/centerstation/process()
else
to_chat(user, "Recalibration successful! : This gate's systems have been fine tuned. Travel to this gate will now be on target. ")
calibrated = 1
- return
+ return
\ No newline at end of file
diff --git a/code/modules/awaymissions/gateway_vr.dm b/code/modules/awaymissions/gateway_vr.dm
new file mode 100644
index 0000000000..86ff8e5e13
--- /dev/null
+++ b/code/modules/awaymissions/gateway_vr.dm
@@ -0,0 +1,79 @@
+//This gateway type takes a special item that you will have to find on the map to activate, instead of using a multitool//
+
+/obj/machinery/gateway/centeraway/mcguffin
+ icon = 'icons/obj/machines/gateway_vr.dmi'
+ calibrated = 0
+ var/mcguffin_type = /obj/item/device/mcguffin/brass //you should be able to change the var to be whatever kind of path you like, so maybe you can use other things on it sometimes
+ var/key //holds a ref to the key we spawned
+
+/obj/machinery/gateway/centeraway/mcguffin/attackby(obj/item/device/W as obj, mob/user as mob)
+ if(calibrated && stationgate)
+ to_chat(user, "The gate is already configured, you should be able to activate it. ")
+ return
+ else if(!stationgate)
+ to_chat(user, "Error: Configuration failed. No destination found... That can't be good. ")
+ return
+
+ if(istype(W,mcguffin_type) && !calibrated)
+ to_chat(user, "As the device nears the gateway, mechanical clunks and whirrs can be heard. Configuration successful! This gate's systems have been fine tuned. Travel to this gate will now be on target. ")
+ calibrated = 1
+ return
+ else
+ to_chat(user, "This device does not seem to interface correctly with the gateway. Perhaps you should try something else. ")
+ return
+
+//If you use this kind of gateway you NEED one of these on the map or the players won't be able to leave//
+//You should use the random spawner though so it won't always be in the same place//
+/obj/item/device/mcguffin/brass
+ name = "mysterious brass device"
+ desc = "A curious object made of what appears to be brass and silver. Its purpose is unclear by looking at it. Perhaps it should be used with something of similar materials?"
+ icon = 'icons/obj/machines/gateway_vr.dmi'
+ icon_state = "mcguffin"
+ drop_sound = 'sound/items/drop/wrench.ogg'
+ pickup_sound = 'sound/items/pickup/wrench.ogg'
+
+/obj/effect/landmark/mcguffin_spawner
+ name = "gateway key spawner"
+ icon = 'icons/mob/randomlandmarks.dmi'
+ icon_state = "key"
+
+/obj/machinery/gateway/centeraway/proc/entrydetect()
+ return
+
+/obj/machinery/gateway/centeraway/mcguffin/entrydetect()
+ if(key)
+ return
+
+ var/list/spawners = list()
+ for(var/obj/effect/landmark/mcguffin_spawner/sp in world)
+ spawners += sp
+
+ var/obj/effect/landmark/mcguffin_spawner/the_cool_one = pick(spawners)
+
+ var/atom/destination = get_turf(the_cool_one)
+ var/obj/structure/closet/CL = locate() in destination
+ if(CL)
+ destination = CL
+
+ if(!destination)
+ warning("A gateway is trying to spawn it's mcguffin but there are no mapped in spawner landmarks")
+ destination = get_turf(src)
+
+ key = new mcguffin_type(destination)
+
+/obj/machinery/gateway/centeraway/mcguffin/Bumped(atom/movable/M as mob|obj)
+ if(!ready) return
+ if(!active) return
+ M.forceMove(get_step(stationgate.loc, SOUTH))
+ M.set_dir(SOUTH)
+ M << 'sound/effects/swooshygate.ogg'
+ playsound(src, 'sound/effects/swooshygate.ogg', 100, 1)
+
+/obj/machinery/gateway/brass
+ name = "mysterious brass gateway"
+ desc = "A gateway of strange construction. It appears to be made primarily of materials resembling brass and silver."
+ icon = 'icons/obj/machines/gateway_vr.dmi'
+
+//No, you can't digest the key to leave the gateway.
+/obj/item/device/mcguffin/digest_act(var/atom/movable/item_storage = null)
+ return FALSE
\ No newline at end of file
diff --git a/code/modules/blob2/blobs/core.dm b/code/modules/blob2/blobs/core.dm
index b3633b406e..cd4a68a308 100644
--- a/code/modules/blob2/blobs/core.dm
+++ b/code/modules/blob2/blobs/core.dm
@@ -119,14 +119,14 @@ var/list/blob_cores = list()
return ..()
/obj/structure/blob/core/update_icon()
- overlays.Cut()
+ cut_overlays()
color = null
var/mutable_appearance/blob_overlay = mutable_appearance('icons/mob/blob.dmi', "blob")
if(overmind)
blob_overlay.color = overmind.blob_type.color
name = "[overmind.blob_type.name] [base_name]"
- overlays += blob_overlay
- overlays += mutable_appearance('icons/mob/blob.dmi', "blob_core_overlay")
+ add_overlay(blob_overlay)
+ add_overlay("blob_core_overlay")
/obj/structure/blob/core/process()
set waitfor = FALSE
diff --git a/code/modules/blob2/blobs/node.dm b/code/modules/blob2/blobs/node.dm
index 5f54b6b80a..072769b73a 100644
--- a/code/modules/blob2/blobs/node.dm
+++ b/code/modules/blob2/blobs/node.dm
@@ -21,14 +21,14 @@ var/list/blob_nodes = list()
return ..()
/obj/structure/blob/node/update_icon()
- overlays.Cut()
+ cut_overlays()
color = null
var/mutable_appearance/blob_overlay = mutable_appearance('icons/mob/blob.dmi', "blob")
if(overmind)
name = "[overmind.blob_type.name] [base_name]"
blob_overlay.color = overmind.blob_type.color
- overlays += blob_overlay
- overlays += mutable_appearance('icons/mob/blob.dmi', "blob_node_overlay")
+ add_overlay(blob_overlay)
+ add_overlay("blob_node_overlay")
/obj/structure/blob/node/process()
set waitfor = FALSE
diff --git a/code/modules/blob2/mobs/spore.dm b/code/modules/blob2/mobs/spore.dm
index 5d8808c57f..732db9a4da 100644
--- a/code/modules/blob2/mobs/spore.dm
+++ b/code/modules/blob2/mobs/spore.dm
@@ -61,14 +61,14 @@
set_light(0)
if(is_infesting)
- overlays.Cut()
+ cut_overlays()
icon = infested.icon
- overlays = infested.overlays
+ add_overlay(infested.overlays)
var/mutable_appearance/blob_head_overlay = mutable_appearance('icons/mob/blob.dmi', "blob_head")
if(overmind)
blob_head_overlay.color = overmind.blob_type.complementary_color
color = initial(color)//looks better.
- overlays += blob_head_overlay
+ add_overlay(blob_head_overlay)
/mob/living/simple_mob/hostile/blob/spore/Life()
if(can_infest && !is_infesting && isturf(src.loc))
diff --git a/code/modules/client/preference_setup/loadout/loadout_accessories_vr.dm b/code/modules/client/preference_setup/loadout/loadout_accessories_vr.dm
index f7fdf0f5b8..172223ce7c 100644
--- a/code/modules/client/preference_setup/loadout/loadout_accessories_vr.dm
+++ b/code/modules/client/preference_setup/loadout/loadout_accessories_vr.dm
@@ -112,3 +112,11 @@
/datum/gear/accessory/flops/New()
..()
gear_tweaks += gear_tweak_free_color_choice
+
+/*
+Talon pin
+*/
+/datum/gear/accessory/talonpin
+ display_name = "ITV pin"
+ description = "A small enamel pin of the ITV logo."
+ path = /obj/item/clothing/accessory/talon
\ No newline at end of file
diff --git a/code/modules/client/preference_setup/loadout/loadout_head_vr.dm b/code/modules/client/preference_setup/loadout/loadout_head_vr.dm
index d7add786c5..5dfabc578c 100644
--- a/code/modules/client/preference_setup/loadout/loadout_head_vr.dm
+++ b/code/modules/client/preference_setup/loadout/loadout_head_vr.dm
@@ -47,4 +47,16 @@
/datum/gear/head/tigerpeltpink
display_name = "pink tiger pelt"
- path = /obj/item/clothing/head/pelt/tigerpeltpink
\ No newline at end of file
+ path = /obj/item/clothing/head/pelt/tigerpeltpink
+
+/*
+Talon hats
+*/
+/datum/gear/head/cap/talon
+ display_name = "cap, ITV"
+ path = /obj/item/clothing/head/soft/talon
+
+/datum/gear/head/beret/talon
+ display_name = "beret, ITV"
+ path = /obj/item/clothing/head/beret
+
diff --git a/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm b/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm
index 25dc8d4511..881d4dd8b3 100644
--- a/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm
+++ b/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm
@@ -72,4 +72,11 @@
/datum/gear/suit/oversize/New()
..()
- gear_tweaks += gear_tweak_free_color_choice
\ No newline at end of file
+ gear_tweaks += gear_tweak_free_color_choice
+
+/*
+Talon winter coat
+*/
+/datum/gear/suit/wintercoat/talon
+ display_name = "winter coat, ITV"
+ path = /obj/item/clothing/suit/storage/hooded/wintercoat/talon
\ No newline at end of file
diff --git a/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm b/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm
index 4f811c217e..bf41330812 100644
--- a/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm
+++ b/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm
@@ -215,4 +215,12 @@ Bluespace jumpsuit
/datum/gear/uniform/hfjumpsuit
display_name = "HYPER jumpsuit"
path = /obj/item/clothing/under/hyperfiber
- cost = 2
\ No newline at end of file
+ cost = 2
+
+/*
+Talon jumpsuit
+*/
+/datum/gear/uniform/talonbasic
+ display_name = "ITV Jumpsuit"
+ description = "A jumpsuit that is usually issued to ITV contractors, however others can purchase it to show their support towards ITV."
+ path = /obj/item/clothing/under/rank/talon/basic
\ No newline at end of file
diff --git a/code/modules/client/preference_setup/loadout/loadout_utility_vr.dm b/code/modules/client/preference_setup/loadout/loadout_utility_vr.dm
index 192dcbfebd..d8746ee4ec 100644
--- a/code/modules/client/preference_setup/loadout/loadout_utility_vr.dm
+++ b/code/modules/client/preference_setup/loadout/loadout_utility_vr.dm
@@ -61,6 +61,10 @@
path = /obj/item/weapon/storage/backpack/dufflebag/explorer
allowed_roles = list("Pathfinder","Explorer")
+/datum/gear/utility/dufflebag/talon
+ display_name = "ITV dufflebag"
+ path = /obj/item/weapon/storage/backpack/dufflebag/explorer
+
/datum/gear/utility/ID
display_name = "contractor identification card"
path = /obj/item/weapon/card/id/event/polymorphic/altcard
diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm
index 04f1f26bd9..097f03b857 100644
--- a/code/modules/client/preferences.dm
+++ b/code/modules/client/preferences.dm
@@ -86,7 +86,8 @@ datum/preferences
"2" = "character_preview_map:2,5",
"4" = "character_preview_map:2,3",
"8" = "character_preview_map:2,1",
- "BG" = "character_preview_map:1,1 to 3,8"
+ "BG" = "character_preview_map:1,1 to 3,8",
+ "PMH" = "character_preview_map:2,7"
)
//Jobs, uses bitflags
@@ -273,6 +274,13 @@ datum/preferences
if(!client)
return
+ var/obj/screen/setup_preview/pm_helper/PMH = LAZYACCESS(char_render_holders, "PMH")
+ if(!PMH)
+ PMH = new
+ LAZYSET(char_render_holders, "PMH", PMH)
+ client.screen |= PMH
+ PMH.screen_loc = preview_screen_locs["PMH"]
+
var/obj/screen/setup_preview/bg/BG = LAZYACCESS(char_render_holders, "BG")
if(!BG)
BG = new
diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm
index fbc6cb8141..6d76e44777 100644
--- a/code/modules/clothing/clothing.dm
+++ b/code/modules/clothing/clothing.dm
@@ -56,7 +56,7 @@
//VOREStation edit start
/obj/item/clothing/update_icon()
- overlays.Cut() //This removes all the overlays on the sprite and then goes down a checklist adding them as required.
+ cut_overlays() //This removes all the overlays on the sprite and then goes down a checklist adding them as required.
if(blood_DNA)
add_blood()
. = ..()
@@ -463,10 +463,10 @@
w_class = ITEMSIZE_SMALL
blood_sprite_state = "helmetblood"
+ light_system = MOVABLE_LIGHT_DIRECTIONAL
+ light_cone_y_offset = 11
+
var/light_overlay = "helmet_light"
- var/light_applied
- var/brightness_on
- var/on = 0
var/image/helmet_light
sprite_sheets = list(
@@ -477,23 +477,21 @@
pickup_sound = 'sound/items/pickup/hat.ogg'
/obj/item/clothing/head/attack_self(mob/user)
- if(brightness_on)
+ if(light_range)
if(!isturf(user.loc))
- to_chat(user, "You cannot turn the light on while in this [user.loc]")
+ to_chat(user, "You cannot toggle the light while in this [user.loc]")
return
- on = !on
- to_chat(user, "You [on ? "enable" : "disable"] the helmet light.")
update_flashlight(user)
+ to_chat(user, "You [light_on ? "enable" : "disable"] the helmet light.")
else
return ..(user)
/obj/item/clothing/head/proc/update_flashlight(var/mob/user = null)
- if(on && !light_applied)
- set_light(brightness_on)
- light_applied = 1
- else if(!on && light_applied)
- set_light(0)
- light_applied = 0
+ set_light_on(!light_on)
+
+ if(light_system == STATIC_LIGHT)
+ update_light()
+
update_icon(user)
user.update_action_buttons()
@@ -537,7 +535,7 @@
if(ishuman(user))
H = user
- if(on)
+ if(light_on)
// Generate object icon.
if(!light_overlay_cache["[light_overlay]_icon"])
light_overlay_cache["[light_overlay]_icon"] = image(icon = 'icons/obj/light_overlays.dmi', icon_state = "[light_overlay]")
@@ -580,7 +578,8 @@
SPECIES_VOX = 'icons/mob/species/vox/masks.dmi',
SPECIES_TAJ = 'icons/mob/species/tajaran/mask.dmi',
SPECIES_UNATHI = 'icons/mob/species/unathi/mask.dmi',
- SPECIES_GREY_YW = 'icons/mob/species/grey/mask.dmi'/*ywedit*/)
+ SPECIES_GREY_YW = 'icons/mob/species/grey/mask.dmi'/*ywedit*/
+ )
var/voicechange = 0
var/list/say_messages
@@ -651,7 +650,7 @@
usr.visible_message("\The [usr] pulls a knife out of their boot! ")
playsound(src, 'sound/weapons/holster/sheathout.ogg', 25)
holding = null
- overlays -= image(icon, "[icon_state]_knife")
+ cut_overlay("[icon_state]_knife")
else
to_chat(usr, "Your need an empty, unbroken hand to do that. ")
holding.forceMove(src)
@@ -698,9 +697,9 @@
/obj/item/clothing/shoes/update_icon()
. = ..()
if(holding)
- overlays += image(icon, "[icon_state]_knife")
+ add_overlay("[icon_state]_knife")
if(contaminated)
- overlays += contamination_overlay
+ add_overlay(contamination_overlay)
if(gurgled) //VOREStation Edit Start
decontaminate()
gurgle_contaminate() //VOREStation Edit End
@@ -857,7 +856,6 @@
var/worn_state = null
valid_accessory_slots = (\
ACCESSORY_SLOT_UTILITY\
- |SLOT_HOLSTER\
|ACCESSORY_SLOT_WEAPON\
|ACCESSORY_SLOT_ARMBAND\
|ACCESSORY_SLOT_DECOR\
@@ -869,7 +867,6 @@
|ACCESSORY_SLOT_OVER)
restricted_accessory_slots = (\
ACCESSORY_SLOT_UTILITY\
- |SLOT_HOLSTER\
|ACCESSORY_SLOT_WEAPON\
|ACCESSORY_SLOT_ARMBAND\
|ACCESSORY_SLOT_TIE\
diff --git a/code/modules/clothing/clothing_icons.dm b/code/modules/clothing/clothing_icons.dm
index 2adfbfa0b9..1762d09201 100644
--- a/code/modules/clothing/clothing_icons.dm
+++ b/code/modules/clothing/clothing_icons.dm
@@ -19,7 +19,7 @@
//HELMET: May have a lighting overlay
/obj/item/clothing/head/make_worn_icon(var/body_type,var/slot_name,var/inhands,var/default_icon,var/default_layer = 0,var/icon/clip_mask = null)
var/image/standing = ..()
- if(on && slot_name == slot_head_str)
+ if(light_on && slot_name == slot_head_str)
var/cache_key = "[light_overlay][LAZYACCESS(sprite_sheets,body_type) ? "_[body_type]" : ""]"
if(standing && light_overlay_cache[cache_key])
standing.add_overlay(light_overlay_cache[cache_key])
diff --git a/code/modules/clothing/head/hardhat.dm b/code/modules/clothing/head/hardhat.dm
index f974c321c0..47a5b89f1a 100644
--- a/code/modules/clothing/head/hardhat.dm
+++ b/code/modules/clothing/head/hardhat.dm
@@ -2,7 +2,8 @@
name = "hard hat"
desc = "A piece of headgear used in dangerous working conditions to protect the head. Comes with a built-in flashlight."
icon_state = "hardhat0_yellow"
- brightness_on = 4 //luminosity when on
+ light_range = 4 //luminosity when on
+ light_cone_y_offset = 14
light_overlay = "hardhat_light"
armor = list(melee = 30, bullet = 5, laser = 20,energy = 10, bomb = 20, bio = 10, rad = 20)
flags_inv = 0
diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm
index 8cf8a6292e..cf0527c6a6 100644
--- a/code/modules/clothing/head/helmet.dm
+++ b/code/modules/clothing/head/helmet.dm
@@ -111,7 +111,7 @@
icon_state = "flexitac"
armor = list(melee = 40, bullet = 40, laser = 60, energy = 35, bomb = 30, bio = 0, rad = 0)
siemens_coefficient = 0.6
- brightness_on = 6
+ light_range = 6
light_overlay = "helmet_light_dual_green"
action_button_name = "Toggle Head-light"
min_cold_protection_temperature = T0C - 20
diff --git a/code/modules/clothing/head/hood.dm b/code/modules/clothing/head/hood.dm
index 1fb1394bce..28bc8a8a54 100644
--- a/code/modules/clothing/head/hood.dm
+++ b/code/modules/clothing/head/hood.dm
@@ -152,6 +152,7 @@
light_range = 3
light_power = 1
light_color = "#B18B25" //clockwork slab background top color
+ light_on = TRUE
/obj/item/clothing/head/hood/winter/narsie
name = "runed winter hood"
diff --git a/code/modules/clothing/head/hood_vr.dm b/code/modules/clothing/head/hood_vr.dm
index 8c8b4f7368..c1de0bafc3 100644
--- a/code/modules/clothing/head/hood_vr.dm
+++ b/code/modules/clothing/head/hood_vr.dm
@@ -2,17 +2,17 @@
name = "techpriest hood"
armor = list(melee = 20, bullet = 10, laser = 10, energy = 10, bomb = 25, bio = 50, rad = 25)
-// Armor versions here
+// Armor versions here
/obj/item/clothing/head/hood/galahad
name = "galahad hood"
armor = list(melee = 80, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0)
siemens_coefficient = 2
-
+
/obj/item/clothing/head/hood/lancelot
name = "lancelot hood"
armor = list(melee = 80, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0)
siemens_coefficient = 2
-
+
/obj/item/clothing/head/hood/robin
name = "robin hood"
armor = list(melee = 80, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0)
@@ -21,9 +21,16 @@
// Costume Versions Here
/obj/item/clothing/head/hood/galahad_costume
name = "galahad costume hood"
-
+
/obj/item/clothing/head/hood/lancelot_costume
name = "lancelot costume hood"
-
+
/obj/item/clothing/head/hood/robin_costume
- name = "robin costume hood"
\ No newline at end of file
+ name = "robin costume hood"
+
+// Talon Winter Hood
+/obj/item/clothing/head/hood/winter/talon
+ name = "ITV winter hood"
+ desc = "A cozy winter hood attached to a heavy winter jacket."
+ icon_override = 'icons/mob/head_vr.dmi'
+ icon_state = "winterhood_talon"
\ No newline at end of file
diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm
index 6ef9ee2be6..dbb5f6d939 100644
--- a/code/modules/clothing/head/misc_special.dm
+++ b/code/modules/clothing/head/misc_special.dm
@@ -167,7 +167,7 @@
icon_state = "hardhat0_pumpkin"//Could stand to be renamed
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|BLOCKHAIR
body_parts_covered = HEAD|FACE|EYES
- brightness_on = 2
+ light_range = 2
light_overlay = "jackolantern"
w_class = ITEMSIZE_NORMAL
drop_sound = 'sound/items/drop/herb.ogg'
diff --git a/code/modules/clothing/head/misc_vr.dm b/code/modules/clothing/head/misc_vr.dm
index a0f50830ae..0b63416887 100644
--- a/code/modules/clothing/head/misc_vr.dm
+++ b/code/modules/clothing/head/misc_vr.dm
@@ -93,4 +93,39 @@
desc = "A fancy visor showing alignment to pizza delivery service. Extremely risky career choice."
icon_state = "pizzadelivery"
icon = 'icons/obj/clothing/hats_vr.dmi'
- icon_override = 'icons/mob/head_vr.dmi'
\ No newline at end of file
+ icon_override = 'icons/mob/head_vr.dmi'
+
+//////////TALON HATS//////////
+
+/obj/item/clothing/head/soft/talon
+ name = "ITV baseball cap"
+ desc = "It's a ballcap bearing the colors of ITV."
+ icon = 'icons/obj/clothing/hats_vr.dmi'
+ icon_override = 'icons/mob/head_vr.dmi'
+ icon_state = "talonsoft"
+ item_state = "talonsoft"
+ item_state_slots = list(slot_r_hand_str = "blacksoft", slot_l_hand_str = "blacksoft")
+
+/obj/item/clothing/head/caphat/talon
+ name = "ITV nautical hat"
+ desc = "It's a classic nautical hat bearing the colors of ITV. Perfect for commanding the Talon."
+ icon = 'icons/obj/clothing/hats_vr.dmi'
+ icon_override = 'icons/mob/head_vr.dmi'
+ icon_state = "talon_captain_cap"
+ item_state = "taloncaptaincap"
+
+obj/item/clothing/head/beret/talon
+ name = "ITV beret"
+ desc = "It's a basic baret colored to match ITV's uniforms."
+ icon = 'icons/obj/clothing/hats_vr.dmi'
+ icon_override = 'icons/mob/head_vr.dmi'
+ icon_state = "beret_talon"
+ item_state = "baret_talon"
+
+obj/item/clothing/head/beret/talon/command
+ name = "ITV officer beret"
+ desc = "It's a basic baret colored to match ITV's uniforms with a badge pinned on the front. Perfect for commanders."
+ icon = 'icons/obj/clothing/hats_vr.dmi'
+ icon_override = 'icons/mob/head_vr.dmi'
+ icon_state = "beret_talon_officer"
+ item_state = "baret_talon_command"
\ No newline at end of file
diff --git a/code/modules/clothing/head/pilot_helmet_vr.dm b/code/modules/clothing/head/pilot_helmet_vr.dm
index 34f6c3293d..55afe6f713 100644
--- a/code/modules/clothing/head/pilot_helmet_vr.dm
+++ b/code/modules/clothing/head/pilot_helmet_vr.dm
@@ -44,3 +44,24 @@
src.icon_state = initial(icon_state)
to_chat(user, "You lower the visor on the pilot helmet.")
update_clothing_icon() //so our mob-overlays update
+
+//////////Talon Pilot Headgear//////////
+
+/obj/item/clothing/head/pilot_vr/talon
+ name = "ITV pilot helmet"
+ desc = "An ITV version of the standard pilot helmet. Protects the head from impacts. This one has a retractable visor"
+ icon_state = "pilot3"
+ item_icons = list(slot_head_str = 'icons/mob/head_vr.dmi')
+ sprite_sheets = list(
+ SPECIES_TESHARI = 'icons/mob/species/teshari/helmet_vr.dmi'
+ )
+ action_button_name = "Toggle Visor"
+
+/obj/item/clothing/head/pilot_vr/alt/attack_self(mob/user as mob)
+ if(src.icon_state == initial(icon_state))
+ src.icon_state = "[icon_state]up"
+ to_chat(user, "You raise the visor on the pilot helmet.")
+ else
+ src.icon_state = initial(icon_state)
+ to_chat(user, "You lower the visor on the pilot helmet.")
+ update_clothing_icon() //so our mob-overlays update
diff --git a/code/modules/clothing/spacesuits/rig/rig.dm b/code/modules/clothing/spacesuits/rig/rig.dm
index 75f5e4af3c..6ac7ef9a3a 100644
--- a/code/modules/clothing/spacesuits/rig/rig.dm
+++ b/code/modules/clothing/spacesuits/rig/rig.dm
@@ -585,8 +585,7 @@
/obj/item/weapon/rig/update_icon(var/update_mob_icon)
- //TODO: Maybe consider a cache for this (use mob_icon as blank canvas, use suit icon overlay).
- overlays.Cut()
+ cut_overlays()
if(!mob_icon || update_mob_icon)
var/species_icon = 'icons/mob/rig_back.dmi'
// Since setting mob_icon will override the species checks in
@@ -598,7 +597,7 @@
if(installed_modules.len)
for(var/obj/item/rig_module/module in installed_modules)
if(module.suit_overlay)
- chest.overlays += image("icon" = 'icons/mob/rig_modules.dmi', "icon_state" = "[module.suit_overlay]", "dir" = SOUTH)
+ chest.add_overlay(image('icons/mob/rig_modules.dmi', icon_state = "[module.suit_overlay]", dir = SOUTH))
if(wearer)
wearer.update_inv_shoes()
diff --git a/code/modules/clothing/spacesuits/rig/rig_pieces.dm b/code/modules/clothing/spacesuits/rig/rig_pieces.dm
index cc76771d45..3c1843698c 100644
--- a/code/modules/clothing/spacesuits/rig/rig_pieces.dm
+++ b/code/modules/clothing/spacesuits/rig/rig_pieces.dm
@@ -9,7 +9,7 @@
body_parts_covered = HEAD|FACE|EYES
heat_protection = HEAD|FACE|EYES
cold_protection = HEAD|FACE|EYES
- brightness_on = 4
+ light_range = 4
sprite_sheets = list(
SPECIES_TAJ = 'icons/mob/species/tajaran/helmet.dmi',
SPECIES_SKRELL = 'icons/mob/species/skrell/helmet.dmi',
diff --git a/code/modules/clothing/spacesuits/spacesuits.dm b/code/modules/clothing/spacesuits/spacesuits.dm
index 162b097aa7..4cd8ade06e 100644
--- a/code/modules/clothing/spacesuits/spacesuits.dm
+++ b/code/modules/clothing/spacesuits/spacesuits.dm
@@ -29,8 +29,7 @@
action_button_name = "Toggle Helmet Light"
light_overlay = "helmet_light"
- brightness_on = 4
- on = 0
+ light_range = 4
/obj/item/clothing/head/helmet/space/Initialize()
. = ..()
diff --git a/code/modules/clothing/spacesuits/void/ert_vr.dm b/code/modules/clothing/spacesuits/void/ert_vr.dm
index a123238c79..9624329029 100644
--- a/code/modules/clothing/spacesuits/void/ert_vr.dm
+++ b/code/modules/clothing/spacesuits/void/ert_vr.dm
@@ -20,7 +20,7 @@
/obj/item/clothing/suit/space/void/responseteam/command/Initialize()
..()
- helmet = new /obj/item/clothing/head/helmet/space/void/responseteam/command //autoinstall the helmet
+ attach_helmet(new /obj/item/clothing/head/helmet/space/void/responseteam/command) //autoinstall the helmet
/obj/item/clothing/suit/space/void/responseteam/medical
name = "Mark VII-M Emergency Medical Response Suit"
@@ -29,7 +29,7 @@
/obj/item/clothing/suit/space/void/responseteam/medical/Initialize()
..()
- helmet = new /obj/item/clothing/head/helmet/space/void/responseteam/medical //autoinstall the helmet
+ attach_helmet(new /obj/item/clothing/head/helmet/space/void/responseteam/medical) //autoinstall the helmet
/obj/item/clothing/suit/space/void/responseteam/engineer
name = "Mark VII-E Emergency Engineering Response Suit"
@@ -38,7 +38,7 @@
/obj/item/clothing/suit/space/void/responseteam/engineer/Initialize()
..()
- helmet = new /obj/item/clothing/head/helmet/space/void/responseteam/engineer //autoinstall the helmet
+ attach_helmet(new /obj/item/clothing/head/helmet/space/void/responseteam/engineer) //autoinstall the helmet
/obj/item/clothing/suit/space/void/responseteam/security
name = "Mark VII-S Emergency Security Response Suit"
@@ -47,7 +47,7 @@
/obj/item/clothing/suit/space/void/responseteam/security/Initialize()
..()
- helmet = new /obj/item/clothing/head/helmet/space/void/responseteam/security //autoinstall the helmet
+ attach_helmet(new /obj/item/clothing/head/helmet/space/void/responseteam/security) //autoinstall the helmet
/obj/item/clothing/suit/space/void/responseteam/janitor
name = "Mark VII-J Emergency Cleanup Response Suit"
@@ -59,7 +59,7 @@
/obj/item/clothing/suit/space/void/responseteam/janitor/Initialize()
..()
- helmet = new /obj/item/clothing/head/helmet/space/void/responseteam/janitor //autoinstall the helmet
+ attach_helmet(new /obj/item/clothing/head/helmet/space/void/responseteam/janitor) //autoinstall the helmet
//override the attackby screwdriver proc so that people can't remove the helmet
diff --git a/code/modules/clothing/spacesuits/void/void.dm b/code/modules/clothing/spacesuits/void/void.dm
index 3a92bd2be1..926365c5c1 100644
--- a/code/modules/clothing/spacesuits/void/void.dm
+++ b/code/modules/clothing/spacesuits/void/void.dm
@@ -120,7 +120,6 @@
to_chat(M, "Your suit's cooling unit deploys.")
cooler.canremove = 0
-
/obj/item/clothing/suit/space/void/dropped()
..()
@@ -150,6 +149,22 @@
cooler.canremove = 1
cooler.forceMove(src)
+/obj/item/clothing/suit/space/void/proc/attach_helmet(var/obj/item/clothing/head/helmet/space/void/helm)
+ if(!istype(helm) || helmet)
+ return
+
+ helm.forceMove(src)
+ helm.set_light_flags(helm.light_flags | LIGHT_ATTACHED)
+ helmet = helm
+
+/obj/item/clothing/suit/space/void/proc/remove_helmet()
+ if(!helmet)
+ return
+
+ helmet.forceMove(get_turf(src))
+ helmet.set_light_flags(helmet.light_flags & ~LIGHT_ATTACHED)
+ helmet = null
+
/obj/item/clothing/suit/space/void/verb/toggle_helmet()
set name = "Toggle Helmet"
@@ -243,9 +258,8 @@
src.cooler = null
else if(choice == helmet)
to_chat(user, "You detach \the [helmet] from \the [src]'s helmet mount.")
- helmet.forceMove(get_turf(src))
+ remove_helmet()
playsound(src, W.usesound, 50, 1)
- src.helmet = null
else if(choice == boots)
to_chat(user, "You detach \the [boots] from \the [src]'s boot mounts.")
boots.forceMove(get_turf(src))
@@ -260,8 +274,7 @@
else
to_chat(user, "You attach \the [W] to \the [src]'s helmet mount.")
user.drop_item()
- W.forceMove(src)
- src.helmet = W
+ attach_helmet(W)
return
else if(istype(W,/obj/item/clothing/shoes/magboots))
if(boots)
diff --git a/code/modules/clothing/suits/hooded.dm b/code/modules/clothing/suits/hooded.dm
index 550dfea0d0..cff2cb9ac6 100644
--- a/code/modules/clothing/suits/hooded.dm
+++ b/code/modules/clothing/suits/hooded.dm
@@ -322,6 +322,7 @@
light_range = 3
light_power = 1
light_color = "#B18B25" //clockwork slab background top color
+ light_on = TRUE
/obj/item/clothing/suit/storage/hooded/wintercoat/narsie
name = "runed winter coat"
@@ -336,6 +337,7 @@
hoodtype = /obj/item/clothing/head/hood/winter/cosmic
light_power = 1.8
light_range = 1.2
+ light_on = TRUE
// winter coats end here
diff --git a/code/modules/clothing/suits/hooded_vr.dm b/code/modules/clothing/suits/hooded_vr.dm
index e89a43e50b..8d0b6a9c38 100644
--- a/code/modules/clothing/suits/hooded_vr.dm
+++ b/code/modules/clothing/suits/hooded_vr.dm
@@ -67,4 +67,14 @@
name = "crusader's armor"
desc = "ye olde knight, risen again. This one seems slightly faster than the rest, but weaker."
icon_state = "robin"
- hoodtype = /obj/item/clothing/head/hood/robin_costume
\ No newline at end of file
+ hoodtype = /obj/item/clothing/head/hood/robin_costume
+
+// Talon Winter Coat
+/obj/item/clothing/suit/storage/hooded/wintercoat/talon
+ name = "ITV winter coat"
+ desc = "A cozy winter coat, covered in thick fur and baring the colors of ITV."
+ icon = 'icons/obj/clothing/suits_vr.dmi'
+ icon_override = 'icons/mob/suit_vr.dmi'
+ icon_state = "taloncoat"
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
+ hoodtype = /obj/item/clothing/head/hood/winter/talon
diff --git a/code/modules/clothing/suits/miscellaneous_vr.dm b/code/modules/clothing/suits/miscellaneous_vr.dm
index 2f4ae0c5a7..6a6554b51c 100644
--- a/code/modules/clothing/suits/miscellaneous_vr.dm
+++ b/code/modules/clothing/suits/miscellaneous_vr.dm
@@ -100,3 +100,12 @@
icon_override = 'icons/mob/suit_vr.dmi'
icon_state = "cyberpunksleek_long"
item_state = "cyberpunksleek_long"
+
+//Talon Hoodie
+/obj/item/clothing/suit/storage/toggle/hoodie/talon
+ name = "ITV hoodie"
+ desc = "A warm, blue sweatshirt bearing ITV markings."
+ icon = 'icons/obj/clothing/suits_vr.dmi'
+ icon_override = 'icons/mob/suit_vr.dmi'
+ icon_state = "talonhoodie"
+ item_state_slots = list(slot_r_hand_str = "suit_blue", slot_l_hand_str = "suit_blue")
\ No newline at end of file
diff --git a/code/modules/clothing/under/accessories/accessory_vr.dm b/code/modules/clothing/under/accessories/accessory_vr.dm
index ba532f62a9..85cce94e5f 100644
--- a/code/modules/clothing/under/accessories/accessory_vr.dm
+++ b/code/modules/clothing/under/accessories/accessory_vr.dm
@@ -366,3 +366,12 @@
item_state = "silverthree"
overlay_state = "silverthree"
desc = "A silver medal awarded to a group which has demonstrated exceptional teamwork to achieve a notable feat. This one has three bronze service stars, denoting that it has been awarded four times."
+
+/obj/item/clothing/accessory/talon
+ name = "ITV pin"
+ desc = "A collectable enamel pin that resembles ITV's company logo."
+ icon = 'icons/obj/clothing/ties_vr.dmi'
+ icon_override = 'icons/mob/ties_vr.dmi'
+ icon_state = "talon_pin"
+ item_state = "talonpin"
+ overlay_state = "talonpin"
\ No newline at end of file
diff --git a/code/modules/clothing/under/miscellaneous_vr.dm b/code/modules/clothing/under/miscellaneous_vr.dm
index ef772e6253..01ea32c032 100644
--- a/code/modules/clothing/under/miscellaneous_vr.dm
+++ b/code/modules/clothing/under/miscellaneous_vr.dm
@@ -146,3 +146,60 @@
icon_state = "pizzadelivery"
item_state = "pizzadelivery"
rolled_down = 0
+
+//////////////////////TALON JUMPSUITS//////////////////////
+
+/obj/item/clothing/under/rank/talon/basic
+ name = "ITV jumpsuit"
+ desc = "A basic jumpsuit that bares the ITV logo on the breast."
+ icon = 'icons/obj/clothing/uniforms_vr.dmi'
+ index = "vr"
+ rolled_down_icon = 'icons/mob/uniform_rolled_down_vr.dmi'
+ icon_override = 'icons/mob/uniform_vr.dmi'
+ icon_state = "talon_basic"
+ item_state = "talon_basic"
+ rolled_sleeves = 0
+
+/obj/item/clothing/under/rank/talon/proper
+ name = "ITV proper jumpsuit"
+ desc = "A neat and proper uniform for a proper company."
+ icon = 'icons/obj/clothing/uniforms_vr.dmi'
+ index = "vr"
+ rolled_down_icon = 'icons/mob/uniform_rolled_down_vr.dmi'
+ icon_override = 'icons/mob/uniform_vr.dmi'
+ icon_state = "talon_jumpsuit"
+ item_state = "talon_jumpsuit"
+ rolled_sleeves = 0
+
+/obj/item/clothing/under/rank/talon/security
+ name = "ITV security jumpsuit"
+ desc = "A sleek, streamlined version of ITV's standard jumpsuit that bares security markings."
+ icon = 'icons/obj/clothing/uniforms_vr.dmi'
+ index = "vr"
+ rolled_down_icon = 'icons/mob/uniform_rolled_down_vr.dmi'
+ icon_override = 'icons/mob/uniform_vr.dmi'
+ icon_state = "talon_security"
+ item_state = "talon_security"
+ rolled_sleeves = 0
+
+/obj/item/clothing/under/rank/talon/pilot
+ name = "ITV pilot jumpsuit"
+ desc = "A sleek, streamlined version of ITV's standard jumpsuit. Made from cushioned fabric to handle intense flight."
+ icon = 'icons/obj/clothing/uniforms_vr.dmi'
+ index = "vr"
+ rolled_down_icon = 'icons/mob/uniform_rolled_down_vr.dmi'
+ icon_override = 'icons/mob/uniform_vr.dmi'
+ icon_state = "talon_pilot"
+ item_state = "talon_pilot"
+ rolled_sleeves = 0
+
+/obj/item/clothing/under/rank/talon/command
+ name = "ITV command jumpsuit"
+ desc = "A commanding jumpsuit fit for a commanding officer."
+ icon = 'icons/obj/clothing/uniforms_vr.dmi'
+ index = "vr"
+ rolled_down_icon = 'icons/mob/uniform_rolled_down_vr.dmi'
+ icon_override = 'icons/mob/uniform_vr.dmi'
+ icon_state = "talon_captain"
+ item_state = "talon_captain"
+ rolled_sleeves = 0
\ No newline at end of file
diff --git a/code/modules/compass/compass_holder.dm b/code/modules/compass/compass_holder.dm
index 1a2148d5c4..44f981e8ed 100644
--- a/code/modules/compass/compass_holder.dm
+++ b/code/modules/compass/compass_holder.dm
@@ -75,7 +75,7 @@
var/set_overlays = (compass_static_labels | compass_waypoint_markers)
if(show_heading)
set_overlays |= compass_heading_marker
- overlays = set_overlays
+ overlays = set_overlays // ???
/obj/compass_holder/proc/clear_waypoint(var/id)
LAZYREMOVE(compass_waypoints, id)
diff --git a/code/modules/detectivework/microscope/dnascanner.dm b/code/modules/detectivework/microscope/dnascanner.dm
index b87639cce6..9af65789fe 100644
--- a/code/modules/detectivework/microscope/dnascanner.dm
+++ b/code/modules/detectivework/microscope/dnascanner.dm
@@ -111,7 +111,8 @@
var/obj/item/weapon/paper/P = new(src)
P.name = "[src] report #[++report_num]: [bloodsamp.name]"
P.stamped = list(/obj/item/weapon/stamp)
- P.overlays = list("paper_stamped")
+ P.cut_overlays()
+ P.add_overlay("paper_stamped")
//dna data itself
var/data = "No scan information available."
if(bloodsamp.dna != null)
diff --git a/code/modules/detectivework/tools/evidencebag.dm b/code/modules/detectivework/tools/evidencebag.dm
index 3a651d8669..846528a8f9 100644
--- a/code/modules/detectivework/tools/evidencebag.dm
+++ b/code/modules/detectivework/tools/evidencebag.dm
@@ -62,8 +62,8 @@
var/image/img = image("icon"=I, "layer"=FLOAT_LAYER) //take a snapshot. (necessary to stop the underlays appearing under our inventory-HUD slots ~Carn
I.pixel_x = xx //and then return it
I.pixel_y = yy
- overlays += img
- overlays += "evidence" //should look nicer for transparent stuff. not really that important, but hey.
+ add_overlay(img)
+ add_overlay("evidence") //should look nicer for transparent stuff. not really that important, but hey.
desc = "An evidence bag containing [I]."
I.loc = src
@@ -77,7 +77,7 @@
var/obj/item/I = contents[1]
user.visible_message("[user] takes [I] out of [src]", "You take [I] out of [src].",\
"You hear someone rustle around in a plastic bag, and remove something.")
- overlays.Cut() //remove the overlays
+ cut_overlays() //remove the overlays
user.put_in_hands(I)
stored_item = null
diff --git a/code/modules/detectivework/tools/uvlight.dm b/code/modules/detectivework/tools/uvlight.dm
index 6d14b48087..c59b3cb578 100644
--- a/code/modules/detectivework/tools/uvlight.dm
+++ b/code/modules/detectivework/tools/uvlight.dm
@@ -42,7 +42,7 @@
stored_alpha.Cut()
if(reset_objects.len)
for(var/obj/item/I in reset_objects)
- I.overlays -= I.blood_overlay
+ I.cut_overlay(I.blood_overlay)
if(I.fluorescent == 2) I.fluorescent = 1
reset_objects.Cut()
@@ -66,5 +66,5 @@
if(istype(A, /obj/item))
var/obj/item/O = A
if(O.was_bloodied && !(O.blood_overlay in O.overlays))
- O.overlays |= O.blood_overlay
+ O.add_overlay(O.blood_overlay)
reset_objects |= O
\ No newline at end of file
diff --git a/code/modules/economy/ATM.dm b/code/modules/economy/ATM.dm
index d6224638c3..128dd0e449 100644
--- a/code/modules/economy/ATM.dm
+++ b/code/modules/economy/ATM.dm
@@ -379,7 +379,7 @@ log transactions
if(!R.stamped)
R.stamped = new
R.stamped += /obj/item/weapon/stamp
- R.overlays += stampoverlay
+ R.add_overlay(stampoverlay)
R.stamps += "This paper has been stamped by the Automatic Teller Machine. "
if(prob(50))
@@ -421,7 +421,7 @@ log transactions
if(!R.stamped)
R.stamped = new
R.stamped += /obj/item/weapon/stamp
- R.overlays += stampoverlay
+ R.add_overlay(stampoverlay)
R.stamps += "This paper has been stamped by the Automatic Teller Machine. "
if(prob(50))
diff --git a/code/modules/economy/Accounts.dm b/code/modules/economy/Accounts.dm
index 4c1890e78a..a1cd0d5f30 100644
--- a/code/modules/economy/Accounts.dm
+++ b/code/modules/economy/Accounts.dm
@@ -69,7 +69,7 @@
if(!R.stamped)
R.stamped = new
R.stamped += /obj/item/weapon/stamp
- R.overlays += stampoverlay
+ R.add_overlay(stampoverlay)
R.stamps += "This paper has been stamped by the Accounts Database. "
//add the account
diff --git a/code/modules/economy/EFTPOS.dm b/code/modules/economy/EFTPOS.dm
index f526dcf7ce..ecf9ff4688 100644
--- a/code/modules/economy/EFTPOS.dm
+++ b/code/modules/economy/EFTPOS.dm
@@ -44,7 +44,7 @@
R.offset_y += 0
R.ico += "paper_stamp-cent"
R.stamped += /obj/item/weapon/stamp
- R.overlays += stampoverlay
+ R.add_overlay(stampoverlay)
R.stamps += "This paper has been stamped by the EFTPOS device. "
/obj/item/device/eftpos/Destroy()
@@ -64,7 +64,7 @@
if(!R.stamped)
R.stamped = new
R.stamped += /obj/item/weapon/stamp
- R.overlays += stampoverlay
+ R.add_overlay(stampoverlay)
R.stamps += "This paper has been stamped by the EFTPOS device. "
var/obj/item/smallDelivery/D = new(R.loc)
R.loc = D
diff --git a/code/modules/economy/cash.dm b/code/modules/economy/cash.dm
index f13684642c..d84132ca86 100644
--- a/code/modules/economy/cash.dm
+++ b/code/modules/economy/cash.dm
@@ -36,7 +36,7 @@
qdel(src)
/obj/item/weapon/spacecash/update_icon()
- overlays.Cut()
+ cut_overlays()
name = "[worth] [initial_name]\s"
if(worth in list(1000,500,200,100,50,20,10,1))
icon_state = "spacecash[worth]"
@@ -53,14 +53,14 @@
M.Translate(rand(-6, 6), rand(-4, 8))
M.Turn(pick(-45, -27.5, 0, 0, 0, 0, 0, 0, 0, 27.5, 45))
banknote.transform = M
- src.overlays += banknote
+ add_overlay(banknote)
if(num == 0) // Less than one thaler, let's just make it look like 1 for ease
var/image/banknote = image('icons/obj/items.dmi', "spacecash1")
var/matrix/M = matrix()
M.Translate(rand(-6, 6), rand(-4, 8))
M.Turn(pick(-45, -27.5, 0, 0, 0, 0, 0, 0, 0, 27.5, 45))
banknote.transform = M
- src.overlays += banknote
+ add_overlay(banknote)
src.desc = "They are worth [worth] [initial_name]s."
/obj/item/weapon/spacecash/proc/adjust_worth(var/adjust_worth = 0, var/update = 1)
diff --git a/code/modules/economy/cash_register.dm b/code/modules/economy/cash_register.dm
index 8184229c8b..29ccd38ebb 100644
--- a/code/modules/economy/cash_register.dm
+++ b/code/modules/economy/cash_register.dm
@@ -50,7 +50,7 @@
if(cash_stored)
spawn_money(cash_stored, loc, user)
cash_stored = 0
- overlays -= "register_cash"
+ cut_overlay("register_cash")
else
open_cash_box()
else
@@ -181,7 +181,7 @@
if(cash_open)
to_chat(user, "You neatly sort the cash into the box.")
cash_stored += SC.worth
- overlays |= "register_cash"
+ add_overlay("register_cash")
if(ishuman(user))
var/mob/living/carbon/human/H = user
H.drop_from_inventory(SC)
@@ -468,15 +468,15 @@
if(cash_open)
cash_open = 0
- overlays -= "register_approve"
- overlays -= "register_open"
- overlays -= "register_cash"
+ cut_overlay("register_approve")
+ cut_overlay("register_open")
+ cut_overlay("register_cash")
else if(!cash_locked)
cash_open = 1
- overlays += "register_approve"
- overlays += "register_open"
+ add_overlay("register_approve")
+ add_overlay("register_open")
if(cash_stored)
- overlays += "register_cash"
+ add_overlay("register_cash")
else
to_chat(usr, "The cash box is locked. ")
diff --git a/code/modules/economy/coins.dm b/code/modules/economy/coins.dm
index dd30cc24b6..8f95a424b7 100644
--- a/code/modules/economy/coins.dm
+++ b/code/modules/economy/coins.dm
@@ -65,7 +65,7 @@
to_chat(user, "There already is a string attached to this coin. ")
return
if (CC.use(1))
- overlays += image('icons/obj/items.dmi',"coin_string_overlay")
+ add_overlay("coin_string_overlay")
string_attached = 1
to_chat(user, "You attach a string to the coin. ")
else
@@ -79,7 +79,7 @@
var/obj/item/stack/cable_coil/CC = new/obj/item/stack/cable_coil(user.loc)
CC.amount = 1
CC.update_icon()
- overlays = list()
+ cut_overlays()
string_attached = null
to_chat(user, "You detach the string from the coin. ")
else ..()
diff --git a/code/modules/economy/coins_vr.dm b/code/modules/economy/coins_vr.dm
new file mode 100644
index 0000000000..a042e75708
--- /dev/null
+++ b/code/modules/economy/coins_vr.dm
@@ -0,0 +1,55 @@
+//Weird coins that I would prefer didn't work with normal vending machines. Might use them to make weird vending machines later.
+
+/obj/item/weapon/aliencoin
+ icon = 'icons/obj/aliencoins.dmi'
+ name = "curious coin"
+ desc = "A curious triangular coin made primarily of some kind of dark, smooth metal. "
+ icon_state = "triangle"
+ randpixel = 8
+ force = 0.5
+ throwforce = 0.5
+ w_class = ITEMSIZE_TINY
+ slot_flags = SLOT_EARS
+ var/sides = 2
+ var/value = 1
+ drop_sound = 'sound/items/drop/ring.ogg'
+ pickup_sound = 'sound/items/pickup/ring.ogg'
+
+/obj/item/weapon/aliencoin/New()
+ randpixel_xy()
+
+/obj/item/weapon/aliencoin/gold
+ name = "curious coin"
+ icon_state = "triangle-g"
+ desc = "A curious triangular coin made primarily of some kind of dark, smooth metal. This one's markings appear to reveal a golden material underneath."
+ value = 3
+
+/obj/item/weapon/aliencoin/silver
+ name = "curious coin"
+ icon_state = "triangle-s"
+ desc = "A curious triangular coin made primarily of some kind of dark, smooth metal. This one's markings appear to reveal a silver material underneath."
+ value = 2
+
+/obj/item/weapon/aliencoin/phoron
+ name = "curious coin"
+ icon_state = "triangle-p"
+ desc = "A curious triangular coin made primarily of some kind of dark, smooth metal. This one's markings appear to reveal a purple material underneath."
+ value = 4
+
+
+/obj/item/weapon/aliencoin/attack_self(mob/user as mob)
+ var/result = rand(1, sides)
+ var/comment = ""
+ if(result == 1)
+ comment = "tails"
+ else if(result == 2)
+ comment = "heads"
+ user.visible_message("[user] has thrown [src]. It lands on [comment]! ", runemessage = "[src] landed on [comment]")
+ if(rand(1,20) == 1)
+ user.visible_message("[user] fumbled the [src]! ", runemessage = "fumbles [src]")
+ user.remove_from_mob(src)
+
+/obj/item/weapon/aliencoin/examine(var/mob/user)
+ . = ..()
+ if(Adjacent(user))
+ . += "It has some writing along its edge that seems to be some language that you are not familiar with. The face of the coin is very smooth, with what appears to be some kind of angular logo along the left side, and a couple of lines of the alien text along the opposite side. The reverse side is similarly smooth, the top of it features what appears to be some kind of vortex, surrounded by six stars, three on either side, with further swirls and intricate patterns along the bottom sections of this face. Looking closely, you can see that there is more text hidden among the swirls. "
diff --git a/code/modules/emotes/definitions/audible.dm b/code/modules/emotes/definitions/audible.dm
index 679b2dd0b3..c233cc1ccc 100644
--- a/code/modules/emotes/definitions/audible.dm
+++ b/code/modules/emotes/definitions/audible.dm
@@ -12,7 +12,7 @@
emote_message_radio_synthetic = emote_message_synthetic_3p
/decl/emote/audible/deathgasp_alien
- key = "deathgasp"
+ key = "adeathgasp"
emote_message_3p = "lets out a waning guttural screech, green blood bubbling from its maw."
/decl/emote/audible/whimper
@@ -29,7 +29,7 @@
emote_message_3p = "scretches."
/decl/emote/audible/choke
- key ="choke"
+ key = "choke"
emote_message_3p = "chokes."
conscious = FALSE
@@ -63,7 +63,7 @@
emote_message_3p = "boops."
/decl/emote/audible/beep
- key = "beep"
+ key = "bbeep"
emote_message_3p = "You beep."
emote_message_3p = "beeps."
emote_sound = 'sound/machines/twobeep.ogg'
@@ -133,18 +133,18 @@
emote_message_3p = "grunts."
/decl/emote/audible/bug_hiss
- key ="hiss"
+ key = "bhiss"
emote_message_3p_target = "hisses at TARGET."
emote_message_3p = "hisses."
emote_sound = 'sound/voice/BugHiss.ogg'
/decl/emote/audible/bug_buzz
- key ="buzz"
+ key = "bbuzz"
emote_message_3p = "buzzes its wings."
emote_sound = 'sound/voice/BugBuzz.ogg'
/decl/emote/audible/bug_chitter
- key ="chitter"
+ key = "chitter"
emote_message_3p = "chitters."
emote_sound = 'sound/voice/Bug.ogg'
@@ -213,7 +213,7 @@
emote_sound = 'sound/voice/teshsqueak.ogg' // Copyright CC BY 3.0 InspectorJ (freesound.org) for the source audio.
/decl/emote/audible/teshchirp
- key = "tchirp" // VOREStation Edit
+ key = "tchirp"
emote_message_1p = "You chirp!"
emote_message_3p = "chirps!"
emote_message_1p_target = "You chirp at TARGET!"
diff --git a/code/modules/emotes/definitions/slimes.dm b/code/modules/emotes/definitions/slimes.dm
index bde5b580aa..65f50b069d 100644
--- a/code/modules/emotes/definitions/slimes.dm
+++ b/code/modules/emotes/definitions/slimes.dm
@@ -12,21 +12,21 @@
return ..() && isslime(user)
/decl/emote/slime/pout
- key = "pout"
+ key = "mpout"
mood = "pout"
/decl/emote/slime/sad
- key = "sad"
+ key = "msad"
mood = "sad"
/decl/emote/slime/angry
- key = "angry"
+ key = "mangry"
mood = "angry"
/decl/emote/slime/frown
- key = "frown"
+ key = "mfrown"
mood = "mischevous"
/decl/emote/slime/smile
- key = "smile"
+ key = "msmile"
mood = ":3"
diff --git a/code/modules/emotes/definitions/visible.dm b/code/modules/emotes/definitions/visible.dm
index fa19ac257a..d37058626d 100644
--- a/code/modules/emotes/definitions/visible.dm
+++ b/code/modules/emotes/definitions/visible.dm
@@ -1,5 +1,5 @@
/decl/emote/visible
- key ="tail"
+ key = "tail"
emote_message_3p = "waves USER_THEIR tail."
message_type = VISIBLE_MESSAGE
@@ -9,48 +9,48 @@
emote_message_3p = "scratches."
/decl/emote/visible/drool
- key ="drool"
+ key = "drool"
emote_message_3p = "drools."
conscious = FALSE
/decl/emote/visible/nod
- key ="nod"
+ key = "nod"
emote_message_3p_target = "nods USER_THEIR head at TARGET."
emote_message_3p = "nods USER_THEIR head."
/decl/emote/visible/sway
- key ="sway"
+ key = "sways"
emote_message_3p = "sways around dizzily."
/decl/emote/visible/sulk
- key ="sulk"
+ key = "sulk"
emote_message_3p = "sulks down sadly."
/decl/emote/visible/dance
- key ="dance"
+ key = "dance"
check_restraints = TRUE
emote_message_3p = "dances around happily."
/decl/emote/visible/roll
- key ="roll"
+ key = "roll"
check_restraints = TRUE
emote_message_3p = "rolls."
/decl/emote/visible/shake
- key ="shake"
+ key = "shake"
emote_message_3p = "shakes USER_THEIR head."
/decl/emote/visible/jump
- key ="jump"
+ key = "jump"
emote_message_3p = "jumps!"
/decl/emote/visible/shiver
- key ="shiver"
+ key = "shiver"
emote_message_3p = "shivers."
conscious = FALSE
/decl/emote/visible/collapse
- key ="collapse"
+ key = "collapse"
emote_message_3p = "collapses!"
/decl/emote/visible/collapse/do_extra(var/mob/user)
@@ -216,7 +216,7 @@
emote_message_3p = "vibrates!"
/decl/emote/visible/deathgasp_robot
- key = "deathgasp"
+ key = "rdeathgasp"
emote_message_3p = "shudders violently for a moment, then becomes motionless, USER_THEIR eyes slowly darkening."
/decl/emote/visible/handshake
diff --git a/code/modules/emotes/emote_mob.dm b/code/modules/emotes/emote_mob.dm
index bd1dfc0bd6..d017325872 100644
--- a/code/modules/emotes/emote_mob.dm
+++ b/code/modules/emotes/emote_mob.dm
@@ -79,7 +79,7 @@
return
if(!use_emote.mob_can_use(src))
- to_chat(src, SPAN_WARNING("You cannot use the emote '[act]'. Type say *help for a list of usable emotes."))
+ to_chat(src, SPAN_WARNING("You cannot use the emote '[act]'. Type say *help for a list of usable emotes."))
return
if(m_type != use_emote.message_type && use_emote.conscious && stat != CONSCIOUS)
diff --git a/code/modules/fishing/fishing_net.dm b/code/modules/fishing/fishing_net.dm
index ab1e35ea6a..39c5e92eef 100644
--- a/code/modules/fishing/fishing_net.dm
+++ b/code/modules/fishing/fishing_net.dm
@@ -78,7 +78,7 @@
/obj/item/weapon/material/fishing_net/update_icon() // Also updates name and desc
underlays.Cut()
- overlays.Cut()
+ cut_overlays()
..()
diff --git a/code/modules/fishing/fishing_rod.dm b/code/modules/fishing/fishing_rod.dm
index ea4571442f..ae089d26a2 100644
--- a/code/modules/fishing/fishing_rod.dm
+++ b/code/modules/fishing/fishing_rod.dm
@@ -78,10 +78,10 @@
return ..()
/obj/item/weapon/material/fishing_rod/update_icon()
- overlays.Cut()
+ cut_overlays()
..()
if(strung)
- overlays += image(icon, "[icon_state]_string")
+ add_overlay("[icon_state]_string")
/obj/item/weapon/material/fishing_rod/proc/update_bait()
if(istype(Bait, bait_type))
diff --git a/code/modules/food/food/drinks/drinkingglass.dm b/code/modules/food/food/drinks/drinkingglass.dm
index 7324dc8ad8..85e8de0705 100644
--- a/code/modules/food/food/drinks/drinkingglass.dm
+++ b/code/modules/food/food/drinks/drinkingglass.dm
@@ -118,7 +118,7 @@
matter = list("glass" = 175)
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/on_reagent_change()
- overlays.Cut()
+ cut_overlays()
if(reagents.total_volume)
var/image/filling = image('icons/obj/reagentfillings.dmi', src, "[icon_state]1")
@@ -129,7 +129,7 @@
if(8 to INFINITY) filling.icon_state = "[icon_state]12"
filling.color += reagents.get_color()
- overlays += filling
+ add_overlay(filling)
name = "shot glass of " + reagents.get_master_reagent_name() //No matter what, the glass will tell you the reagent's name. Might be too abusable in the future.
else
name = "shot glass"
@@ -146,7 +146,7 @@
icon_state = pick("fitness-cup_black", "fitness-cup_red", "fitness-cup_black")
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/on_reagent_change()
- overlays.Cut()
+ cut_overlays()
if(reagents.total_volume)
var/image/filling = image('icons/obj/reagentfillings.dmi', src, "fitness-cup10")
@@ -164,7 +164,7 @@
if(90 to INFINITY) filling.icon_state = "fitness-cup100"
filling.color += reagents.get_color()
- overlays += filling
+ add_overlay(filling)
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake
name = "protein shake"
diff --git a/code/modules/food/food/sandwich.dm b/code/modules/food/food/sandwich.dm
index 6929586c05..738e3f4a46 100644
--- a/code/modules/food/food/sandwich.dm
+++ b/code/modules/food/food/sandwich.dm
@@ -46,7 +46,7 @@
var/fullname = "" //We need to build this from the contents of the var.
var/i = 0
- overlays.Cut()
+ cut_overlays()
for(var/obj/item/weapon/reagent_containers/food/snacks/O in ingredients)
@@ -62,12 +62,12 @@
I.color = O.filling_color
I.pixel_x = pick(list(-1,0,1))
I.pixel_y = (i*2)+1
- overlays += I
+ add_overlay(I)
var/image/T = new(src.icon, "sandwich_top")
T.pixel_x = pick(list(-1,0,1))
T.pixel_y = (ingredients.len * 2)+1
- overlays += T
+ add_overlay(T)
name = lowertext("[fullname] sandwich")
if(length(name) > 80) name = "[pick(list("absurd","colossal","enormous","ridiculous"))] sandwich"
diff --git a/code/modules/food/food/snacks.dm b/code/modules/food/food/snacks.dm
index c0968f3381..6c7d9186f2 100644
--- a/code/modules/food/food/snacks.dm
+++ b/code/modules/food/food/snacks.dm
@@ -189,11 +189,11 @@
)
src.bitecount++
- U.overlays.Cut()
+ U.cut_overlays()
U.loaded = "[src]"
var/image/I = new(U.icon, "loadedfood")
I.color = src.filling_color
- U.overlays += I
+ U.add_overlay(I)
reagents.trans_to_obj(U, min(reagents.total_volume,5))
@@ -3166,7 +3166,7 @@
/obj/item/pizzabox/update_icon()
- overlays = list()
+ cut_overlays()
// Set appropriate description
if( open && pizza )
@@ -3194,7 +3194,7 @@
if( pizza )
var/image/pizzaimg = image(icon = pizza.icon, icon_state = pizza.icon_state) //VOREStation Edit: Icons for bad pizza
pizzaimg.pixel_y = -3
- overlays += pizzaimg
+ add_overlay(pizzaimg)
return
else
@@ -3211,7 +3211,7 @@
if( doimgtag )
var/image/tagimg = image("food.dmi", icon_state = "pizzabox_tag")
tagimg.pixel_y = boxes.len * 3
- overlays += tagimg
+ add_overlay(tagimg)
icon_state = "pizzabox[boxes.len+1]"
@@ -4238,7 +4238,7 @@
J.alpha = 200
J.blend_mode = BLEND_OVERLAY
J.tag = "coating"
- overlays += J
+ add_overlay(J)
if (user)
user.visible_message(span("notice", "[user] dips \the [src] into \the [coating.name]"), span("notice", "You dip \the [src] into \the [coating.name]"))
@@ -4269,7 +4269,7 @@
var/image/J = image(I)
J.alpha = 200
J.tag = "coating"
- overlays += J
+ add_overlay(J)
if (do_coating_prefix == 1)
diff --git a/code/modules/food/food/thecake.dm b/code/modules/food/food/thecake.dm
index 3387699962..0b45d1eeb6 100644
--- a/code/modules/food/food/thecake.dm
+++ b/code/modules/food/food/thecake.dm
@@ -1,8 +1,8 @@
// Chaos cake
/datum/recipe/chaoscake_layerone
- reagents = list("flour" = 300,"milk" = 200, "sugar" = 100, "egg" = 30)
- fruit = list("poisonberries" = 15, "cherries" = 15)
+ reagents = list("flour" = 30,"milk" = 20, "sugar" = 10, "egg" = 9)
+ fruit = list("poisonberries" = 2, "cherries" = 2)
items = list(
/obj/item/weapon/reagent_containers/food/snacks/meat/,
/obj/item/weapon/reagent_containers/food/snacks/meat/,
@@ -12,8 +12,8 @@
result = /obj/structure/chaoscake
/datum/recipe/chaoscake_layertwo
- reagents = list("flour" = 300, "milk" = 200, "sugar" = 100, "egg" = 30, )
- fruit = list("vanilla" = 15, "banana" = 15)
+ reagents = list("flour" = 30, "milk" = 20, "sugar" = 10, "egg" = 9, )
+ fruit = list("vanilla" = 2, "banana" = 2)
items = list(
/obj/item/weapon/reagent_containers/food/snacks/dough,
/obj/item/weapon/reagent_containers/food/snacks/dough,
@@ -23,8 +23,8 @@
result = /obj/item/weapon/chaoscake_layer
/datum/recipe/chaoscake_layerthree
- reagents = list("flour" = 240, "milk" = 150, "sugar" = 80, "egg" = 24, "deathbell" = 100)
- fruit = list("grapes" = 30)
+ reagents = list("flour" = 25, "milk" = 15, "sugar" = 10, "egg" = 6, "deathbell" = 10)
+ fruit = list("grapes" = 3)
items = list(
/obj/item/weapon/reagent_containers/food/snacks/dough,
/obj/item/weapon/reagent_containers/food/snacks/dough,
@@ -33,8 +33,8 @@
result = /obj/item/weapon/chaoscake_layer/three
/datum/recipe/chaoscake_layerfour
- reagents = list("flour" = 240, "milk" = 150, "sugar" = 80, "egg" = 24, "milkshake" = 300)
- fruit = list("rice" = 30)
+ reagents = list("flour" = 25, "milk" = 15, "sugar" = 10, "egg" = 6, "milkshake" = 30)
+ fruit = list("rice" = 3)
items = list(
/obj/item/weapon/reagent_containers/food/snacks/dough,
/obj/item/weapon/reagent_containers/food/snacks/dough,
@@ -43,14 +43,14 @@
result = /obj/item/weapon/chaoscake_layer/four
/datum/recipe/chaoscake_layerfive
- reagents = list("flour" = 180, "milk" = 100, "sugar" = 60, "egg" = 18, "blood" = 300)
- fruit = list("tomato" = 20)
+ reagents = list("flour" = 20, "milk" = 10, "sugar" = 10, "egg" = 6, "blood" = 30)
+ fruit = list("tomato" = 2)
items = list() //supposed to be made with lobster, still has to be ported.
result = /obj/item/weapon/chaoscake_layer/five
/datum/recipe/chaoscake_layersix
- reagents = list("flour" = 180, "milk" = 100, "sugar" = 60, "egg" = 18, "sprinkles" = 10)
- fruit = list("apple" = 30)
+ reagents = list("flour" = 20, "milk" = 10, "sugar" = 10, "egg" = 6, "sprinkles" = 5)
+ fruit = list("apple" = 2)
items = list(
/obj/item/weapon/reagent_containers/food/snacks/dough,
/obj/item/weapon/reagent_containers/food/snacks/dough,
@@ -62,8 +62,8 @@
result = /obj/item/weapon/chaoscake_layer/six
/datum/recipe/chaoscake_layerseven
- reagents = list("flour" = 120, "milk" = 50, "sugar" = 40, "egg" = 12, "devilskiss" = 200)
- fruit = list("potato" = 10)
+ reagents = list("flour" = 15, "milk" = 10, "sugar" = 5, "egg" = 3, "devilskiss" = 20)
+ fruit = list("potato" = 1)
items = list(
/obj/item/weapon/reagent_containers/food/snacks/dough,
/obj/item/weapon/reagent_containers/food/snacks/dough,
@@ -72,8 +72,8 @@
result = /obj/item/weapon/chaoscake_layer/seven
/datum/recipe/chaoscake_layereight
- reagents = list("flour" = 120, "milk" = 50, "sugar" = 40, "egg" = 12, "cream" = 200)
- fruit = list("lemon" = 10)
+ reagents = list("flour" = 15, "milk" = 10, "sugar" = 5, "egg" = 3, "cream" = 20)
+ fruit = list("lemon" = 1)
items = list(
/obj/item/weapon/reagent_containers/food/snacks/dough,
/obj/item/weapon/reagent_containers/food/snacks/dough,
@@ -82,8 +82,8 @@
result = /obj/item/weapon/chaoscake_layer/eight
/datum/recipe/chaoscake_layernine
- reagents = list("water" = 100, "blood" = 100)
- fruit = list("goldapple" = 50)
+ reagents = list("water" = 10, "blood" = 10)
+ fruit = list("goldapple" = 1)
items = list()
result = /obj/item/weapon/chaoscake_layer/nine
diff --git a/code/modules/food/food/z_custom_food_vr.dm b/code/modules/food/food/z_custom_food_vr.dm
index 16bff57f0d..bc466d3a44 100644
--- a/code/modules/food/food/z_custom_food_vr.dm
+++ b/code/modules/food/food/z_custom_food_vr.dm
@@ -55,14 +55,14 @@ var/global/ingredientLimit = 20000
ingredients += S
if(src.addTop)
- overlays -= topping //thank you Comic
- if(!fullyCustom && !stackIngredients && overlays.len)
- overlays -= filling //we can't directly modify the overlay, so we have to remove it and then add it again
+ cut_overlay(topping)
+ if(!fullyCustom && !stackIngredients && our_overlays.len)
+ cut_overlay(filling) //we can't directly modify the overlay, so we have to remove it and then add it again
var/newcolor = S.filling_color != "#FFFFFF" ? S.filling_color : AverageColor(getFlatIcon(S, S.dir, 0), 1, 1)
filling.color = BlendRGB(filling.color, newcolor, 1/ingredients.len)
- overlays += filling
+ add_overlay(filling)
else
- overlays += generateFilling(S)
+ add_overlay(generateFilling(S))
if(addTop)
drawTopping()
@@ -129,7 +129,7 @@ var/global/ingredientLimit = 20000
/obj/item/weapon/reagent_containers/food/snacks/customizable/proc/drawTopping()
var/image/I = topping
I.pixel_y = (ingredients.len+1)*2
- overlays += I
+ add_overlay(I)
// Sandwiches //////////////////////////////////////////////////
diff --git a/code/modules/food/glass/bottle.dm b/code/modules/food/glass/bottle.dm
index f372a2facf..a3c511df48 100644
--- a/code/modules/food/glass/bottle.dm
+++ b/code/modules/food/glass/bottle.dm
@@ -35,7 +35,7 @@
icon_state = "bottle-[rand(1,4)]"
/obj/item/weapon/reagent_containers/glass/bottle/update_icon()
- overlays.Cut()
+ cut_overlays()
if(reagents.total_volume && (icon_state == "bottle-1" || icon_state == "bottle-2" || icon_state == "bottle-3" || icon_state == "bottle-4"))
var/image/filling = image('icons/obj/reagentfillings.dmi', src, "[icon_state]10")
@@ -51,11 +51,11 @@
if(91 to INFINITY) filling.icon_state = "[icon_state]-100"
filling.color = reagents.get_color()
- overlays += filling
+ add_overlay(filling)
if (!is_open_container())
var/image/lid = image(icon, src, "lid_bottle")
- overlays += lid
+ add_overlay(lid)
/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline
name = "inaprovaline bottle"
diff --git a/code/modules/food/kitchen/cooking_machines/cereal.dm b/code/modules/food/kitchen/cooking_machines/cereal.dm
index 3aa90c05ba..eb428a0340 100644
--- a/code/modules/food/kitchen/cooking_machines/cereal.dm
+++ b/code/modules/food/kitchen/cooking_machines/cereal.dm
@@ -36,10 +36,10 @@
var/image/food_image = image(CI.object.icon, CI.object.icon_state)
food_image.color = CI.object.color
- food_image.overlays += CI.object.overlays
+ food_image.add_overlay(CI.object.overlays)
food_image.transform *= 0.7
- product.overlays += food_image
+ product.add_overlay(food_image)
*/
/obj/machinery/appliance/mixer/cereal/update_icon()
@@ -83,4 +83,4 @@
result.color = result.filling_color
for (var/i in images)
- result.overlays += images[i]
+ result.add_overlay(images[i])
diff --git a/code/modules/food/kitchen/gibber.dm b/code/modules/food/kitchen/gibber.dm
index 6402a432ae..cb52a0ca7b 100644
--- a/code/modules/food/kitchen/gibber.dm
+++ b/code/modules/food/kitchen/gibber.dm
@@ -58,20 +58,20 @@
/obj/machinery/gibber/New()
..()
- src.overlays += image('icons/obj/kitchen.dmi', "grjam")
+ add_overlay("grjam")
/obj/machinery/gibber/update_icon()
- overlays.Cut()
+ cut_overlays()
if (dirty)
- src.overlays += image('icons/obj/kitchen.dmi', "grbloody")
+ add_overlay("grbloody")
if(stat & (NOPOWER|BROKEN))
return
if (!occupant)
- src.overlays += image('icons/obj/kitchen.dmi', "grjam")
+ add_overlay("grjam")
else if (operating)
- src.overlays += image('icons/obj/kitchen.dmi', "gruse")
+ add_overlay("gruse")
else
- src.overlays += image('icons/obj/kitchen.dmi', "gridle")
+ add_overlay("gridle")
/obj/machinery/gibber/relaymove(mob/user as mob)
src.go_out()
diff --git a/code/modules/food/kitchen/icecream.dm b/code/modules/food/kitchen/icecream.dm
index 2b53b657ce..02335c8a9e 100644
--- a/code/modules/food/kitchen/icecream.dm
+++ b/code/modules/food/kitchen/icecream.dm
@@ -183,7 +183,7 @@
/obj/item/weapon/reagent_containers/food/snacks/icecream/proc/add_ice_cream(var/flavour_name)
name = "[flavour_name] icecream"
- src.overlays += "icecream_[flavour_name]"
+ add_overlay("icecream_[flavour_name]")
desc = "Delicious [cone_type] cone with a dollop of [flavour_name] ice cream."
ice_creamed = 1
diff --git a/code/modules/games/cards.dm b/code/modules/games/cards.dm
index 0b58b5110f..0165c9315f 100644
--- a/code/modules/games/cards.dm
+++ b/code/modules/games/cards.dm
@@ -410,7 +410,7 @@
name = "a playing card"
desc = "A playing card."
- overlays.Cut()
+ cut_overlays()
if(cards.len == 1)
@@ -418,7 +418,7 @@
var/image/I = new(src.icon, (concealed ? "[P.back_icon]" : "[P.card_icon]") )
I.pixel_x += (-5+rand(10))
I.pixel_y += (-5+rand(10))
- overlays += I
+ add_overlay(I)
return
var/offset = FLOOR(20/cards.len, 1)
@@ -450,7 +450,7 @@
else
I.pixel_x = -7+(offset*i)
I.transform = M
- overlays += I
+ add_overlay(I)
i++
/obj/item/weapon/hand/dropped(mob/user as mob)
diff --git a/code/modules/holomap/holomap_datum.dm b/code/modules/holomap/holomap_datum.dm
index af4cc6f274..f6d4f61bba 100644
--- a/code/modules/holomap/holomap_datum.dm
+++ b/code/modules/holomap/holomap_datum.dm
@@ -20,15 +20,15 @@
legend.pixel_x = HOLOMAP_LEGEND_X(T.z)
legend.pixel_y = HOLOMAP_LEGEND_Y(T.z)
- station_map.overlays |= cursor
- station_map.overlays |= legend
+ station_map.add_overlay(cursor)
+ station_map.add_overlay(legend)
/datum/station_holomap/proc/initialize_holomap_bogus()
station_map = image('icons/480x480.dmi', "stationmap")
legend = image('icons/effects/64x64.dmi', "notfound")
legend.pixel_x = 7 * WORLD_ICON_SIZE
legend.pixel_y = 7 * WORLD_ICON_SIZE
- station_map.overlays |= legend
+ station_map.add_overlay(legend)
// TODO - Strategic Holomap support
// /datum/station_holomap/strategic/initialize_holomap(var/turf/T, var/isAI=null, var/mob/user=null)
@@ -37,4 +37,4 @@
// legend = image('icons/effects/64x64.dmi', "strategic")
// legend.pixel_x = 3*WORLD_ICON_SIZE
// legend.pixel_y = 3*WORLD_ICON_SIZE
-// station_map.overlays |= legend
+// station_map.add_overlay(legend)
diff --git a/code/modules/holomap/mapper.dm b/code/modules/holomap/mapper.dm
index 4746020868..430a4176ba 100644
--- a/code/modules/holomap/mapper.dm
+++ b/code/modules/holomap/mapper.dm
@@ -265,7 +265,7 @@
markerImage.appearance_flags = RESET_COLOR|PIXEL_SCALE
markerImage.pixel_x = holomarker.x+holomarker.offset_x
markerImage.pixel_y = holomarker.y+holomarker.offset_y
- map_app.overlays += markerImage
+ map_app.add_overlay(markerImage)
var/obj/screen/mapper/map/tmp = new()
tmp.appearance = map_app
@@ -286,13 +286,10 @@
continue
var/mob_indicator = HOLOMAP_ERROR
var/turf/TU = get_turf(HC)
- if(TU.z != T_z)
+ // Mapper not on a turf or elsewhere
+ if(!TU || (TU.z != T_z))
continue
-
- // Marker not on a turf
- if(!TU)
- continue
-
+
// We're the marker
if(HC == src)
mob_indicator = HOLOMAP_YOU
@@ -342,26 +339,27 @@
handle_marker(mark,TU.x,TU.y)
extras += mark
- // Marker beacon items
- for(var/hb in mapping_beacons)
- var/obj/item/device/holomap_beacon/HB = hb
- if(HB.mapper_filter != mapper_filter)
- continue
-
- var/turf/TB = get_turf(HB)
- if(TU.z != T_z)
- continue
-
- var/marker_cache_key = "\ref[HB]_marker"
- if(!(marker_cache_key in icon_image_cache))
- var/obj/screen/mapper/marker/mark = new()
- mark.icon_state = "beacon"
- mark.layer = 1
- icon_image_cache[marker_cache_key] = mark
-
- var/obj/screen/mapper/marker/mark = icon_image_cache[marker_cache_key]
- handle_marker(mark,TB.x,TB.y)
- extras += mark
+ // Marker beacon items
+ for(var/hb in mapping_beacons)
+ var/obj/item/device/holomap_beacon/HB = hb
+ if(HB.mapper_filter != mapper_filter)
+ continue
+
+ var/turf/TB = get_turf(HB)
+ // Marker beacon not on a turf or elsewhere
+ if(!TB || (TB.z != T_z))
+ continue
+
+ var/marker_cache_key = "\ref[HB]_marker"
+ if(!(marker_cache_key in icon_image_cache))
+ var/obj/screen/mapper/marker/mark = new()
+ mark.icon_state = "beacon"
+ mark.layer = 1
+ icon_image_cache[marker_cache_key] = mark
+
+ var/obj/screen/mapper/marker/mark = icon_image_cache[marker_cache_key]
+ handle_marker(mark,TB.x,TB.y)
+ extras += mark
if(badmap)
var/obj/O = icon_image_cache["bad"]
@@ -419,7 +417,7 @@
else
in_list = FALSE
mapping_beacons -= src
- icon_state = initial(icon_state) + in_list ? "_on" : ""
+ icon_state = "[initial(icon_state)][in_list ? "_on" : ""]"
to_chat(user,SPAN_NOTICE("The [src] is now [in_list ? "broadcasting" : "disabled"]."))
/obj/item/device/holomap_beacon/Destroy()
diff --git a/code/modules/holomap/station_holomap.dm b/code/modules/holomap/station_holomap.dm
index dc15dabb46..9d56943856 100644
--- a/code/modules/holomap/station_holomap.dm
+++ b/code/modules/holomap/station_holomap.dm
@@ -169,7 +169,7 @@
if(!holomap_datum)
return //Not yet.
- overlays.Cut()
+ cut_overlays()
if(stat & BROKEN)
icon_state = "station_mapb"
else if((stat & NOPOWER) || !anchored)
@@ -180,8 +180,8 @@
if(bogus)
holomap_datum.initialize_holomap_bogus()
else
- small_station_map.icon = SSholomaps.extraMiniMaps["[HOLOMAP_EXTRA_STATIONMAPSMALL]_[original_zLevel]"]
- overlays |= small_station_map
+ small_station_map = image(SSholomaps.extraMiniMaps["[HOLOMAP_EXTRA_STATIONMAPSMALL]_[original_zLevel]"], dir = src.dir)
+ add_overlay(small_station_map)
holomap_datum.initialize_holomap(get_turf(src))
// Put the little "map" overlay down where it looks nice
@@ -189,12 +189,12 @@
floor_markings.dir = src.dir
floor_markings.pixel_x = -src.pixel_x
floor_markings.pixel_y = -src.pixel_y
- overlays += floor_markings
+ add_overlay(floor_markings)
if(panel_open)
- overlays += "station_map-panel"
+ add_overlay("station_map-panel")
else
- overlays -= "station_map-panel"
+ cut_overlay("station_map-panel")
/obj/machinery/station_map/attackby(obj/item/weapon/W as obj, mob/user as mob)
src.add_fingerprint(user)
diff --git a/code/modules/hydroponics/beekeeping/beehive.dm b/code/modules/hydroponics/beekeeping/beehive.dm
index dcef997e36..f514ff8b6a 100644
--- a/code/modules/hydroponics/beekeeping/beehive.dm
+++ b/code/modules/hydroponics/beekeeping/beehive.dm
@@ -13,22 +13,22 @@
var/maxFrames = 5
/obj/machinery/beehive/update_icon()
- overlays.Cut()
+ cut_overlays()
icon_state = "beehive"
if(closed)
- overlays += "lid"
+ add_overlay("lid")
if(frames)
- overlays += "empty[frames]"
+ add_overlay("empty[frames]")
if(honeycombs >= 100)
- overlays += "full[round(honeycombs / 100)]"
+ add_overlay("full[round(honeycombs / 100)]")
if(!smoked)
switch(bee_count)
if(1 to 40)
- overlays += "bees1"
+ add_overlay("bees1")
if(41 to 80)
- overlays += "bees2"
+ add_overlay("bees2")
if(81 to 100)
- overlays += "bees3"
+ add_overlay("bees3")
/obj/machinery/beehive/examine(var/mob/user)
. = ..()
@@ -217,7 +217,7 @@
/obj/item/honey_frame/filled/New()
..()
- overlays += "honeycomb"
+ add_overlay("honeycomb")
/obj/item/beehive_assembly
name = "beehive assembly"
@@ -269,18 +269,18 @@ var/global/list/datum/stack_recipe/wax_recipes = list( \
/obj/item/bee_pack/New()
..()
- overlays += "beepack-full"
+ add_overlay("beepack-full")
/obj/item/bee_pack/proc/empty()
full = 0
name = "empty bee pack"
desc = "A stasis pack for moving bees. It's empty."
- overlays.Cut()
- overlays += "beepack-empty"
+ cut_overlays()
+ add_overlay("beepack-empty")
/obj/item/bee_pack/proc/fill()
full = initial(full)
name = initial(name)
desc = initial(desc)
- overlays.Cut()
- overlays += "beepack-full"
\ No newline at end of file
+ cut_overlays()
+ add_overlay("beepack-full")
\ No newline at end of file
diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm
index 96b4385a08..8e262bb69f 100644
--- a/code/modules/hydroponics/grown.dm
+++ b/code/modules/hydroponics/grown.dm
@@ -125,7 +125,7 @@
/obj/item/weapon/reagent_containers/food/snacks/grown/update_icon()
if(!seed || !SSplants || !SSplants.plant_icon_cache)
return
- overlays.Cut()
+ cut_overlays()
var/image/plant_icon
var/icon_key = "fruit-[seed.get_trait(TRAIT_PRODUCT_ICON)]-[seed.get_trait(TRAIT_PRODUCT_COLOUR)]-[seed.get_trait(TRAIT_PLANT_COLOUR)]"
if(SSplants.plant_icon_cache[icon_key])
@@ -134,13 +134,13 @@
plant_icon = image('icons/obj/hydroponics_products.dmi',"blank")
var/image/fruit_base = image('icons/obj/hydroponics_products.dmi',"[seed.get_trait(TRAIT_PRODUCT_ICON)]-product")
fruit_base.color = "[seed.get_trait(TRAIT_PRODUCT_COLOUR)]"
- plant_icon.overlays |= fruit_base
+ plant_icon.add_overlay(fruit_base)
if("[seed.get_trait(TRAIT_PRODUCT_ICON)]-leaf" in cached_icon_states('icons/obj/hydroponics_products.dmi'))
var/image/fruit_leaves = image('icons/obj/hydroponics_products.dmi',"[seed.get_trait(TRAIT_PRODUCT_ICON)]-leaf")
fruit_leaves.color = "[seed.get_trait(TRAIT_PLANT_COLOUR)]"
- plant_icon.overlays |= fruit_leaves
+ add_overlay(fruit_leaves)
SSplants.plant_icon_cache[icon_key] = plant_icon
- overlays |= plant_icon
+ add_overlay(plant_icon)
/obj/item/weapon/reagent_containers/food/snacks/grown/Crossed(var/mob/living/M)
if(M.is_incorporeal())
@@ -363,9 +363,9 @@ var/list/fruit_icon_cache = list()
var/image/I = image(icon,"fruit_rind")
I.color = rind_colour
fruit_icon_cache["rind-[rind_colour]"] = I
- overlays |= fruit_icon_cache["rind-[rind_colour]"]
+ add_overlay(fruit_icon_cache["rind-[rind_colour]"])
if(!fruit_icon_cache["slice-[rind_colour]"])
var/image/I = image(icon,"fruit_slice")
I.color = flesh_colour
fruit_icon_cache["slice-[rind_colour]"] = I
- overlays |= fruit_icon_cache["slice-[rind_colour]"]
+ add_overlay(fruit_icon_cache["slice-[rind_colour]"])
diff --git a/code/modules/hydroponics/seed_packets.dm b/code/modules/hydroponics/seed_packets.dm
index cb5bb5c68f..08eea609bf 100644
--- a/code/modules/hydroponics/seed_packets.dm
+++ b/code/modules/hydroponics/seed_packets.dm
@@ -28,7 +28,7 @@ GLOBAL_LIST_BOILERPLATE(all_seed_packs, /obj/item/seeds)
if(!seed) return
// Update icon.
- overlays.Cut()
+ cut_overlays()
var/is_seeds = ((seed.seed_noun in list("seeds","pits","nodes")) ? 1 : 0)
var/image/seed_mask
var/seed_base_key = "base-[is_seeds ? seed.get_trait(TRAIT_PLANT_COLOUR) : "spores"]"
@@ -49,8 +49,8 @@ GLOBAL_LIST_BOILERPLATE(all_seed_packs, /obj/item/seeds)
seed_overlay.color = seed.get_trait(TRAIT_PRODUCT_COLOUR)
plant_seed_sprites[seed_overlay_key] = seed_overlay
- overlays |= seed_mask
- overlays |= seed_overlay
+ add_overlay(seed_mask)
+ add_overlay(seed_overlay)
if(is_seeds)
src.name = "packet of [seed.seed_name] [seed.seed_noun]"
diff --git a/code/modules/hydroponics/seed_storage.dm b/code/modules/hydroponics/seed_storage.dm
index 392accde8f..8034e3d9ff 100644
--- a/code/modules/hydroponics/seed_storage.dm
+++ b/code/modules/hydroponics/seed_storage.dm
@@ -405,9 +405,9 @@
panel_open = !panel_open
to_chat(user, "You [panel_open ? "open" : "close"] the maintenance panel.")
playsound(src, O.usesound, 50, 1)
- overlays.Cut()
+ cut_overlays()
if(panel_open)
- overlays += image(icon, "[initial(icon_state)]-panel")
+ add_overlay("[initial(icon_state)]-panel")
else if((O.is_wirecutter() || istype(O, /obj/item/device/multitool)) && panel_open)
wires.Interact(user)
diff --git a/code/modules/lighting/emissive_blocker.dm b/code/modules/lighting/emissive_blocker.dm
new file mode 100644
index 0000000000..690b9b5216
--- /dev/null
+++ b/code/modules/lighting/emissive_blocker.dm
@@ -0,0 +1,46 @@
+/**
+ * Internal atom that copies an appearance on to the blocker plane
+ *
+ * Copies an appearance vis render_target and render_source on to the emissive blocking plane.
+ * This means that the atom in question will block any emissive sprites.
+ * This should only be used internally. If you are directly creating more of these, you're
+ * almost guaranteed to be doing something wrong.
+ */
+/atom/movable/emissive_blocker
+ name = "emissive blocker"
+ plane = PLANE_EMISSIVE
+ layer = FLOAT_LAYER
+ mouse_opacity = MOUSE_OPACITY_TRANSPARENT
+ //Why?
+ //render_targets copy the transform of the target as well, but vis_contents also applies the transform
+ //to what's in it. Applying RESET_TRANSFORM here makes vis_contents not apply the transform.
+ //Since only render_target handles transform we don't get any applied transform "stacking"
+ appearance_flags = RESET_TRANSFORM
+
+/atom/movable/emissive_blocker/Initialize(mapload, source)
+ . = ..()
+ verbs.Cut() //Cargo culting from lighting object, this maybe affects memory usage?
+
+ render_source = source
+ color = GLOB.em_block_color
+
+
+/atom/movable/emissive_blocker/ex_act(severity)
+ return FALSE
+
+/atom/movable/emissive_blocker/singularity_act()
+ return
+
+/atom/movable/emissive_blocker/singularity_pull()
+ return
+
+/atom/movable/emissive_blocker/blob_act()
+ return
+
+/atom/movable/emissive_blocker/onTransitZ()
+ return
+
+//Prevents people from moving these after creation, because they shouldn't be.
+/atom/movable/emissive_blocker/forceMove(atom/destination, no_tp=FALSE, harderforce = FALSE)
+ if(harderforce)
+ return ..()
diff --git a/code/modules/lighting/lighting_atom.dm b/code/modules/lighting/lighting_atom.dm
index 39894b1394..ec33bc962a 100644
--- a/code/modules/lighting/lighting_atom.dm
+++ b/code/modules/lighting/lighting_atom.dm
@@ -1,110 +1,218 @@
/atom
- var/light_power = 1 // intensity of the light
- var/light_range = 0 // range in tiles of the light
- var/light_color // Hexadecimal RGB string representing the colour of the light
+ ///Light systems, both shouldn't be active at the same time.
+ var/light_system = STATIC_LIGHT
+ ///Range of the light in tiles. Zero means no light.
+ var/light_range = 0
+ ///Intensity of the light. The stronger, the less shadows you will see on the lit area.
+ var/light_power = 1
+ ///Hexadecimal RGB string representing the colour of the light. White by default.
+ var/light_color = COLOR_WHITE
+ ///Boolean variable for toggleable lights. Has no effect without the proper light_system, light_range and light_power values.
+ var/light_on = FALSE
+ ///Bitflags to determine lighting-related atom properties.
+ var/light_flags = NONE
+ ///Our light source. Don't fuck with this directly unless you have a good reason!
+ var/tmp/datum/light_source/light
+ ///Any light sources that are "inside" of us, for example, if src here was a mob that's carrying a flashlight, that flashlight's light source would be part of this list.
+ var/tmp/list/light_sources
- var/datum/light_source/light
- var/list/light_sources
+/atom/movable
+ ///Hint for directional light cone positioning. X is relevant when facing north/south (this setting is for south and inverted for north)
+ var/light_cone_x_offset // When facing south, inverted when facing north
+ ///Hint for directional light cone positioning. Y is relevant when facing east/west (same value used for both east and west)
+ var/light_cone_y_offset // When facing east/west, ignored for north/south (uses 16 in those cases)
+ ///Highest-intensity light affecting us, which determines our visibility.
+ var/affecting_dynamic_lumi = 0
+ ///Lazylist to keep track on the sources of illumination.
+ var/list/affected_dynamic_lights
+ ///Either FALSE, [EMISSIVE_BLOCK_GENERIC], or [EMISSIVE_BLOCK_UNIQUE]
+ var/blocks_emissive = FALSE
+ ///Internal holder for emissive blocker object, do not use directly use blocks_emissive
+ var/atom/movable/emissive_blocker/em_block
-// Nonsensical value for l_color default, so we can detect if it gets set to null.
+// The proc you should always use to set the light of this atom.
+// Nonesensical value for l_color default, so we can detect if it gets set to null.
#define NONSENSICAL_VALUE -99999
-/atom/proc/set_light(l_range, l_power, l_color = NONSENSICAL_VALUE)
- . = 0 //make it less costly if nothing's changed
+/atom/proc/set_light(l_range, l_power, l_color = NONSENSICAL_VALUE, l_on)
+ if(l_range > 0 && l_range < MINIMUM_USEFUL_LIGHT_RANGE)
+ l_range = MINIMUM_USEFUL_LIGHT_RANGE //Brings the range up to 1.4, which is just barely brighter than the soft lighting that surrounds players.
+
+ if(SEND_SIGNAL(src, COMSIG_ATOM_SET_LIGHT, l_range, l_power, l_color, l_on) & COMPONENT_BLOCK_LIGHT_UPDATE)
+ return
+
+ // Legacy behavior helper
+ if(l_range == 0)
+ l_on = FALSE
+ else if(l_range > 0)
+ l_on = TRUE
+
+ var/needs_update = FALSE
+ if(!isnull(l_power) && l_power != light_power)
+ if(!isnull(set_light_power(l_power)))
+ needs_update = TRUE
+
+ if(!isnull(l_range) && l_range != light_range)
+ if(!isnull(set_light_range(l_range)))
+ needs_update = TRUE
- if(l_power != null && l_power != light_power)
- light_power = l_power
- . = 1
- if(l_range != null && l_range != light_range)
- light_range = l_range
- . = 1
if(l_color != NONSENSICAL_VALUE && l_color != light_color)
- light_color = l_color
- . = 1
+ if(!isnull(set_light_color(l_color)))
+ needs_update = TRUE
- if(.) update_light()
+ if(!isnull(l_on) && l_on != light_on)
+ if(!isnull(set_light_on(l_on)))
+ needs_update = TRUE
+
+ if(needs_update)
+ update_light()
#undef NONSENSICAL_VALUE
+// Will update the light (duh).
+// Creates or destroys it if needed, makes it update values, makes sure it's got the correct source turf...
/atom/proc/update_light()
set waitfor = FALSE
+ if (QDELETED(src))
+ return
- if(!light_power || !light_range)
- if(light)
- light.destroy()
- light = null
+ if(light_system != STATIC_LIGHT)
+ CRASH("update_light() for [src] with following light_system value: [light_system]")
+
+ if (!light_on || !light_power || !light_range) // We won't emit light anyways, destroy the light source.
+ QDEL_NULL(light)
else
- if(!istype(loc, /atom/movable))
+ if (!ismovable(loc)) // We choose what atom should be the top atom of the light here.
. = src
else
. = loc
- if(light)
+ if (light) // Update the light or create it if it does not exist.
light.update(.)
else
- light = new /datum/light_source(src, .)
+ light = new/datum/light_source(src, .)
-/atom/New()
- . = ..()
-
- if(light_power && light_range)
- update_light()
-
- if(opacity && isturf(loc))
- var/turf/T = loc
- T.has_opaque_atom = TRUE // No need to recalculate it in this case, it's guranteed to be on afterwards anyways.
-
-/atom/Destroy()
- if(light)
- light.destroy()
- light = null
- return ..()
-
-/atom/movable/Destroy()
- var/turf/T = loc
- if(opacity && istype(T))
- T.reconsider_lights()
- return ..()
-
-/atom/movable/Moved(atom/old_loc, direction, forced = FALSE)
- . = ..()
-
- for(var/datum/light_source/L in light_sources)
- L.source_atom.update_light()
-
- var/turf/new_turf = loc
- var/turf/old_turf = old_loc
- if(istype(old_turf) && opacity)
- old_turf.reconsider_lights()
-
- if(istype(new_turf) && opacity)
- new_turf.reconsider_lights()
+/**
+ * Updates the atom's opacity value.
+ *
+ * This exists to act as a hook for associated behavior.
+ * It notifies (potentially) affected light sources so they can update (if needed).
+ */
/atom/proc/set_opacity(new_opacity)
if(new_opacity == opacity)
return
-
+ SEND_SIGNAL(src, COMSIG_ATOM_SET_OPACITY, new_opacity)
+ . = opacity
opacity = new_opacity
- var/turf/T = isturf(src) ? src : loc
- if(!isturf(T))
+
+
+/atom/movable/set_opacity(new_opacity)
+ . = ..()
+ if(isnull(.) || !isturf(loc))
return
- if(new_opacity == TRUE)
- T.has_opaque_atom = TRUE
- T.reconsider_lights()
+ if(opacity)
+ AddElement(/datum/element/light_blocking)
else
- var/old_has_opaque_atom = T.has_opaque_atom
- T.recalc_atom_opacity()
- if(old_has_opaque_atom != T.has_opaque_atom)
- T.reconsider_lights()
+ RemoveElement(/datum/element/light_blocking)
-/obj/item/equipped()
- . = ..()
- update_light()
-/obj/item/pickup()
+/turf/set_opacity(new_opacity)
. = ..()
- update_light()
+ if(isnull(.))
+ return
+ recalculate_directional_opacity()
-/obj/item/dropped()
- . = ..()
- update_light()
+/atom/proc/flash_lighting_fx(_range = FLASH_LIGHT_RANGE, _power = FLASH_LIGHT_POWER, _color = COLOR_WHITE, _duration = FLASH_LIGHT_DURATION)
+ return
+
+
+/turf/flash_lighting_fx(_range = FLASH_LIGHT_RANGE, _power = FLASH_LIGHT_POWER, _color = COLOR_WHITE, _duration = FLASH_LIGHT_DURATION)
+ if(!_duration)
+ stack_trace("Lighting FX obj created on a turf without a duration")
+ new /obj/effect/dummy/lighting_obj (src, _range, _power, _color, _duration)
+
+
+/obj/flash_lighting_fx(_range = FLASH_LIGHT_RANGE, _power = FLASH_LIGHT_POWER, _color = COLOR_WHITE, _duration = FLASH_LIGHT_DURATION)
+ if(!_duration)
+ stack_trace("Lighting FX obj created on a obj without a duration")
+ new /obj/effect/dummy/lighting_obj (get_turf(src), _range, _power, _color, _duration)
+
+
+/mob/living/flash_lighting_fx(_range = FLASH_LIGHT_RANGE, _power = FLASH_LIGHT_POWER, _color = COLOR_WHITE, _duration = FLASH_LIGHT_DURATION)
+ mob_light(_range, _power, _color, _duration)
+
+
+/mob/living/proc/mob_light(_range, _power, _color, _duration)
+ var/obj/effect/dummy/lighting_obj/moblight/mob_light_obj = new (src, _range, _power, _color, _duration)
+ return mob_light_obj
+
+/// Setter for the light power of this atom.
+/atom/proc/set_light_power(new_power)
+ if(new_power == light_power)
+ return
+ if(SEND_SIGNAL(src, COMSIG_ATOM_SET_LIGHT_POWER, new_power) & COMPONENT_BLOCK_LIGHT_UPDATE)
+ return
+ . = light_power
+ light_power = new_power
+ SEND_SIGNAL(src, COMSIG_ATOM_UPDATE_LIGHT_POWER, .)
+
+/// Setter for the light range of this atom.
+/atom/proc/set_light_range(new_range)
+ if(new_range == light_range)
+ return
+ if(SEND_SIGNAL(src, COMSIG_ATOM_SET_LIGHT_RANGE, new_range) & COMPONENT_BLOCK_LIGHT_UPDATE)
+ return
+ . = light_range
+ light_range = new_range
+ SEND_SIGNAL(src, COMSIG_ATOM_UPDATE_LIGHT_RANGE, .)
+
+/// Setter for the light color of this atom.
+/atom/proc/set_light_color(new_color)
+ if(new_color == light_color)
+ return
+ if(SEND_SIGNAL(src, COMSIG_ATOM_SET_LIGHT_COLOR, new_color) & COMPONENT_BLOCK_LIGHT_UPDATE)
+ return
+ . = light_color
+ light_color = new_color
+ SEND_SIGNAL(src, COMSIG_ATOM_UPDATE_LIGHT_COLOR, .)
+
+/// Setter for whether or not this atom's light is on.
+/atom/proc/set_light_on(new_value)
+ if(new_value == light_on)
+ return
+ if(SEND_SIGNAL(src, COMSIG_ATOM_SET_LIGHT_ON, new_value) & COMPONENT_BLOCK_LIGHT_UPDATE)
+ return
+ . = light_on
+ light_on = new_value
+ SEND_SIGNAL(src, COMSIG_ATOM_UPDATE_LIGHT_ON, .)
+
+/// Setter for the light flags of this atom.
+/atom/proc/set_light_flags(new_value)
+ if(new_value == light_flags)
+ return
+ if(SEND_SIGNAL(src, COMSIG_ATOM_SET_LIGHT_FLAGS, new_value) & COMPONENT_BLOCK_LIGHT_UPDATE)
+ return
+ . = light_flags
+ light_flags = new_value
+ SEND_SIGNAL(src, COMSIG_ATOM_UPDATE_LIGHT_FLAGS, .)
+
+///Keeps track of the sources of dynamic luminosity and updates our visibility with the highest.
+/atom/movable/proc/update_dynamic_luminosity()
+ var/highest = 0
+ for(var/i in affected_dynamic_lights)
+ if(affected_dynamic_lights[i] <= highest)
+ continue
+ highest = affected_dynamic_lights[i]
+ if(highest == affecting_dynamic_lumi)
+ return
+ luminosity -= affecting_dynamic_lumi
+ affecting_dynamic_lumi = highest
+ luminosity += affecting_dynamic_lumi
+
+
+///Helper to change several lighting overlay settings.
+/atom/movable/proc/set_light_range_power_color(range, power, color)
+ set_light_range(range)
+ set_light_power(power)
+ set_light_color(color)
diff --git a/code/modules/lighting/lighting_corner.dm b/code/modules/lighting/lighting_corner.dm
index 30230a69e0..e02e04b0f7 100644
--- a/code/modules/lighting/lighting_corner.dm
+++ b/code/modules/lighting/lighting_corner.dm
@@ -1,41 +1,37 @@
-/var/total_lighting_corners = 0
-/var/datum/lighting_corner/dummy/dummy_lighting_corner = new
-// Because we can control each corner of every lighting overlay.
+// Because we can control each corner of every lighting object.
// And corners get shared between multiple turfs (unless you're on the corners of the map, then 1 corner doesn't).
// For the record: these should never ever ever be deleted, even if the turf doesn't have dynamic lighting.
-// This list is what the code that assigns corners listens to, the order in this list is the order in which corners are added to the /turf/corners list.
-/var/list/LIGHTING_CORNER_DIAGONAL = list(NORTHEAST, SOUTHEAST, SOUTHWEST, NORTHWEST)
-
/datum/lighting_corner
- var/list/turf/masters = list()
- var/list/datum/light_source/affecting = list() // Light sources affecting us.
- var/active = FALSE // TRUE if one of our masters has dynamic lighting.
+ var/list/datum/light_source/affecting // Light sources affecting us.
- var/x = 0
- var/y = 0
- var/z = 0
+ var/x = 0
+ var/y = 0
+ var/turf/master_NE
+ var/turf/master_SE
+ var/turf/master_SW
+ var/turf/master_NW
+
+ //"raw" color values, changed by update_lumcount()
var/lum_r = 0
var/lum_g = 0
var/lum_b = 0
+ //true color values, guaranteed to be between 0 and 1
+ var/cache_r = LIGHTING_SOFT_THRESHOLD
+ var/cache_g = LIGHTING_SOFT_THRESHOLD
+ var/cache_b = LIGHTING_SOFT_THRESHOLD
+
+ ///the maximum of lum_r, lum_g, and lum_b. if this is > 1 then the three cached color values are divided by this
+ var/largest_color_luminosity = 0
+
+ ///whether we are to be added to SSlighting's corners_queue list for an update
var/needs_update = FALSE
- var/cache_r = LIGHTING_SOFT_THRESHOLD
- var/cache_g = LIGHTING_SOFT_THRESHOLD
- var/cache_b = LIGHTING_SOFT_THRESHOLD
- var/cache_mx = 0
-
- var/update_gen = 0
-
-/datum/lighting_corner/New(var/turf/new_turf, var/diagonal)
+/datum/lighting_corner/New(turf/new_turf, diagonal)
. = ..()
-
- total_lighting_corners++
-
- masters[new_turf] = turn(diagonal, 180)
- z = new_turf.z
+ save_master(new_turf, turn(diagonal, 180))
var/vertical = diagonal & ~(diagonal - 1) // The horizontal directions (4 and 8) are bigger than the vertical ones (1 and 2), so we can reliably say the lsb is the horizontal direction.
var/horizontal = diagonal & ~vertical // Now that we know the horizontal one we can get the vertical one.
@@ -46,69 +42,75 @@
// My initial plan was to make this loop through a list of all the dirs (horizontal, vertical, diagonal).
// Issue being that the only way I could think of doing it was very messy, slow and honestly overengineered.
// So we'll have this hardcode instead.
- var/turf/T
- var/i
+ var/turf/new_master_turf
// Diagonal one is easy.
- T = get_step(new_turf, diagonal)
- if (T) // In case we're on the map's border.
- if (!T.corners)
- T.corners = list(null, null, null, null)
-
- masters[T] = diagonal
- i = LIGHTING_CORNER_DIAGONAL.Find(turn(diagonal, 180))
- T.corners[i] = src
+ new_master_turf = get_step(new_turf, diagonal)
+ if (new_master_turf) // In case we're on the map's border.
+ save_master(new_master_turf, diagonal)
// Now the horizontal one.
- T = get_step(new_turf, horizontal)
- if (T) // Ditto.
- if (!T.corners)
- T.corners = list(null, null, null, null)
-
- masters[T] = ((T.x > x) ? EAST : WEST) | ((T.y > y) ? NORTH : SOUTH) // Get the dir based on coordinates.
- i = LIGHTING_CORNER_DIAGONAL.Find(turn(masters[T], 180))
- T.corners[i] = src
+ new_master_turf = get_step(new_turf, horizontal)
+ if (new_master_turf) // Ditto.
+ save_master(new_master_turf, ((new_master_turf.x > x) ? EAST : WEST) | ((new_master_turf.y > y) ? NORTH : SOUTH)) // Get the dir based on coordinates.
// And finally the vertical one.
- T = get_step(new_turf, vertical)
- if (T)
- if (!T.corners)
- T.corners = list(null, null, null, null)
+ new_master_turf = get_step(new_turf, vertical)
+ if (new_master_turf)
+ save_master(new_master_turf, ((new_master_turf.x > x) ? EAST : WEST) | ((new_master_turf.y > y) ? NORTH : SOUTH)) // Get the dir based on coordinates.
- masters[T] = ((T.x > x) ? EAST : WEST) | ((T.y > y) ? NORTH : SOUTH) // Get the dir based on coordinates.
- i = LIGHTING_CORNER_DIAGONAL.Find(turn(masters[T], 180))
- T.corners[i] = src
+/datum/lighting_corner/proc/save_master(turf/master, dir)
+ switch (dir)
+ if (NORTHEAST)
+ master_NE = master
+ master.lighting_corner_SW = src
+ if (SOUTHEAST)
+ master_SE = master
+ master.lighting_corner_NW = src
+ if (SOUTHWEST)
+ master_SW = master
+ master.lighting_corner_NE = src
+ if (NORTHWEST)
+ master_NW = master
+ master.lighting_corner_SE = src
- update_active()
+/datum/lighting_corner/proc/self_destruct_if_idle()
+ if (!LAZYLEN(affecting))
+ qdel(src, force = TRUE)
-/datum/lighting_corner/proc/update_active()
- active = FALSE
- for (var/turf/T in masters)
- if (T.lighting_overlay)
- active = TRUE
+/datum/lighting_corner/proc/vis_update()
+ for (var/datum/light_source/light_source as anything in affecting)
+ light_source.vis_update()
+
+/datum/lighting_corner/proc/full_update()
+ for (var/datum/light_source/light_source as anything in affecting)
+ light_source.recalc_corner(src)
// God that was a mess, now to do the rest of the corner code! Hooray!
-/datum/lighting_corner/proc/update_lumcount(var/delta_r, var/delta_g, var/delta_b)
+/datum/lighting_corner/proc/update_lumcount(delta_r, delta_g, delta_b)
+ if (!(delta_r || delta_g || delta_b)) // 0 is falsey ok
+ return
+
lum_r += delta_r
lum_g += delta_g
lum_b += delta_b
if (!needs_update)
needs_update = TRUE
- lighting_update_corners += src
+ SSlighting.corners_queue += src
-/datum/lighting_corner/proc/update_overlays()
- // Cache these values a head of time so 4 individual lighting overlays don't all calculate them individually.
- var/lum_r = src.lum_r > 0 ? LIGHTING_MULT_FACTOR * sqrt(src.lum_r) : src.lum_r
- var/lum_g = src.lum_g > 0 ? LIGHTING_MULT_FACTOR * sqrt(src.lum_g) : src.lum_g
- var/lum_b = src.lum_b > 0 ? LIGHTING_MULT_FACTOR * sqrt(src.lum_b) : src.lum_b
- var/mx = max(lum_r, lum_g, lum_b) // Scale it so 1 is the strongest lum, if it is above 1.
+/datum/lighting_corner/proc/update_objects()
+ // Cache these values ahead of time so 4 individual lighting objects don't all calculate them individually.
+ var/lum_r = src.lum_r
+ var/lum_g = src.lum_g
+ var/lum_b = src.lum_b
+ var/largest_color_luminosity = max(lum_r, lum_g, lum_b) // Scale it so one of them is the strongest lum, if it is above 1.
. = 1 // factor
- if (mx > 1)
- . = 1 / mx
+ if (largest_color_luminosity > 1)
+ . = 1 / largest_color_luminosity
#if LIGHTING_SOFT_THRESHOLD != 0
- else if (mx < LIGHTING_SOFT_THRESHOLD)
+ else if (largest_color_luminosity < LIGHTING_SOFT_THRESHOLD)
. = 0 // 0 means soft lighting.
cache_r = round(lum_r * ., LIGHTING_ROUND_VALUE) || LIGHTING_SOFT_THRESHOLD
@@ -119,21 +121,56 @@
cache_g = round(lum_g * ., LIGHTING_ROUND_VALUE)
cache_b = round(lum_b * ., LIGHTING_ROUND_VALUE)
#endif
- cache_mx = round(mx, LIGHTING_ROUND_VALUE)
- for (var/TT in masters)
- var/turf/T = TT
- if (T.lighting_overlay)
- if (!T.lighting_overlay.needs_update)
- T.lighting_overlay.needs_update = TRUE
- lighting_update_overlays += T.lighting_overlay
+ src.largest_color_luminosity = round(largest_color_luminosity, LIGHTING_ROUND_VALUE)
+
+ var/datum/lighting_object/lighting_object = master_NE?.lighting_object
+ if (lighting_object && !lighting_object.needs_update)
+ lighting_object.needs_update = TRUE
+ SSlighting.objects_queue += lighting_object
+
+ lighting_object = master_SE?.lighting_object
+ if (lighting_object && !lighting_object.needs_update)
+ lighting_object.needs_update = TRUE
+ SSlighting.objects_queue += lighting_object
+
+ lighting_object = master_SW?.lighting_object
+ if (lighting_object && !lighting_object.needs_update)
+ lighting_object.needs_update = TRUE
+ SSlighting.objects_queue += lighting_object
+
+ lighting_object = master_NW?.lighting_object
+ if (lighting_object && !lighting_object.needs_update)
+ lighting_object.needs_update = TRUE
+ SSlighting.objects_queue += lighting_object
+
+ self_destruct_if_idle()
/datum/lighting_corner/dummy/New()
return
-/datum/lighting_corner/Destroy(var/force)
+/datum/lighting_corner/Destroy(force)
if (!force)
return QDEL_HINT_LETMELIVE
- crash_with("Who decided to force qdel() a lighting corner? Why did you do this?")
+
+ for (var/datum/light_source/light_source as anything in affecting)
+ LAZYREMOVE(light_source.effect_str, src)
+ affecting = null
+
+ if (master_NE)
+ master_NE.lighting_corner_SW = null
+ master_NE.lighting_corners_initialised = FALSE
+ if (master_SE)
+ master_SE.lighting_corner_NW = null
+ master_SE.lighting_corners_initialised = FALSE
+ if (master_SW)
+ master_SW.lighting_corner_NE = null
+ master_SW.lighting_corners_initialised = FALSE
+ if (master_NW)
+ master_NW.lighting_corner_SE = null
+ master_NW.lighting_corners_initialised = FALSE
+ if(needs_update)
+ SSlighting.corners_queue -= src
+
return ..()
diff --git a/code/modules/lighting/lighting_fake_sun_vr.dm b/code/modules/lighting/lighting_fake_sun_vr.dm
index 898532d8c2..15b743578e 100644
--- a/code/modules/lighting/lighting_fake_sun_vr.dm
+++ b/code/modules/lighting/lighting_fake_sun_vr.dm
@@ -3,6 +3,7 @@
desc = "Deletes itself, but first updates all the lighting on outdoor turfs."
icon = 'icons/effects/effects_vr.dmi'
icon_state = "fakesun"
+ var/datum/light_source/sun/fake_sun
var/list/possible_light_setups = list(
list(
@@ -17,6 +18,22 @@
"brightness" = 2.5,
"color" = "#EE9AC6"
),
+ list(
+ "brightness" = 1.5,
+ "color" = "#F07AD8"
+ ),
+ list(
+ "brightness" = 1.5,
+ "color" = "#61AEF3"
+ ),
+ list(
+ "brightness" = 1,
+ "color" = "#f3932d"
+ ),
+ list(
+ "brightness" = 1,
+ "color" = "#631E8A"
+ ),
list(
"brightness" = 1.0,
"color" = "#A3A291"
@@ -66,28 +83,97 @@
/obj/effect/fake_sun/LateInitialize()
. = ..()
+ var/list/choice = pick(possible_light_setups)
+ if(choice["brightness"] <= LIGHTING_SOFT_THRESHOLD) // dark!
+ return
- var/list/our_choice = pick(possible_light_setups)
+ fake_sun = new
+ fake_sun.light_color = choice["color"]
+ fake_sun.light_power = choice["brightness"]
+
+ var/list/zees = GetConnectedZlevels()
+ var/min = z
+ var/max = z
+ for(var/zee in zees)
+ if(zee < min)
+ min = z
+ if(zee > max)
+ max = z
+
+ var/list/all_turfs = block(locate(1, 1, min), locate(world.maxx, world.maxy, max))
+ var/list/turfs_to_use = list()
+ for(var/turf/T as anything in all_turfs)
+ if(T.outdoors)
+ turfs_to_use += T
- // Calculate new values to apply
- var/new_brightness = our_choice["brightness"]
- var/new_color = our_choice["color"]
- var/lum_r = new_brightness * GetRedPart (new_color) / 255
- var/lum_g = new_brightness * GetGreenPart(new_color) / 255
- var/lum_b = new_brightness * GetBluePart (new_color) / 255
- var/static/update_gen = -1 // Used to prevent double-processing corners. Otherwise would happen when looping over adjacent turfs.
-
- var/list/turfs = block(locate(1,1,z),locate(world.maxx,world.maxy,z))
-
- for(var/turf/simulated/T as anything in turfs)
- if(!T.lighting_overlay)
- T.lighting_build_overlay()
- if(!T.outdoors)
- continue
- for(var/C in T.get_corners())
- var/datum/lighting_corner/LC = C
- if(LC.update_gen != update_gen && LC.active)
- LC.update_gen = update_gen
- LC.update_lumcount(lum_r, lum_g, lum_b)
- update_gen--
- qdel(src)
\ No newline at end of file
+ if(!turfs_to_use.len)
+ warning("Fake sun placed on a level where it can't find any outdoor turfs to color at [x],[y],[z].")
+ return
+
+ fake_sun.update_corners(turfs_to_use)
+
+/obj/effect/fake_sun/warm
+ name = "warm fake sun"
+ desc = "Deletes itself, but first updates all the lighting on outdoor turfs to warm colors."
+
+ possible_light_setups = list(
+
+ list(
+ "brightness" = 6.0,
+ "color" = "#E9FFB8"
+ ),
+
+ list(
+ "brightness" = 4.0,
+ "color" = "#F4EA55"
+ ),
+ list(
+ "brightness" = 1.0,
+ "color" = "#F07AD8"
+ ),
+ list(
+ "brightness" = 1.0,
+ "color" = "#b4361f"
+ ),
+
+ list(
+ "brightness" = 0.7,
+ "color" = "#f3932d"
+ ),
+
+ list(
+ "brightness" = 0.1,
+ "color" = "#B92B00"
+ )
+ )
+
+/obj/effect/fake_sun/cool
+ name = "fake sun"
+ desc = "Deletes itself, but first updates all the lighting on outdoor turfs to cool colors."
+ possible_light_setups = list(
+
+ list(
+ "brightness" = 6.0,
+ "color" = "#abfff7"
+ ),
+ list(
+ "brightness" = 4.0,
+ "color" = "#2e30c9"
+ ),
+ list(
+ "brightness" = 1.0,
+ "color" = "#61AEF3"
+ ),
+ list(
+ "brightness" = 1.0,
+ "color" = "#61ddf3"
+ ),
+ list(
+ "brightness" = 0.3,
+ "color" = "#253682"
+ ),
+ list(
+ "brightness" = 0.1,
+ "color" = "#27024B"
+ )
+ )
diff --git a/code/modules/lighting/lighting_overlay.dm b/code/modules/lighting/lighting_overlay.dm
index eb5097cf5b..abf3c39ba6 100644
--- a/code/modules/lighting/lighting_overlay.dm
+++ b/code/modules/lighting/lighting_overlay.dm
@@ -1,51 +1,51 @@
-/var/total_lighting_overlays = 0
-/atom/movable/lighting_overlay
- name = ""
- mouse_opacity = 0
- simulated = 0
- anchored = 1
- icon = LIGHTING_ICON
- plane = PLANE_LIGHTING
- //invisibility = INVISIBILITY_LIGHTING
- color = LIGHTING_BASE_MATRIX
- icon_state = "light1"
- //auto_init = 0 // doesn't need special init
- blend_mode = BLEND_OVERLAY
-
- var/lum_r = 0
- var/lum_g = 0
- var/lum_b = 0
+/datum/lighting_object
+ ///the underlay we are currently applying to our turf to apply light
+ var/mutable_appearance/current_underlay
+ ///whether we are already in the SSlighting.objects_queue list
var/needs_update = FALSE
-/atom/movable/lighting_overlay/Initialize()
- // doesn't need special init
- initialized = TRUE
- return INITIALIZE_HINT_NORMAL
+ ///the turf that our light is applied to
+ var/turf/affected_turf
-/atom/movable/lighting_overlay/New(var/atom/loc, var/no_update = FALSE)
- . = ..()
- verbs.Cut()
- total_lighting_overlays++
-
- var/turf/T = loc //If this runtimes atleast we'll know what's creating overlays outside of turfs.
- T.lighting_overlay = src
- T.luminosity = 0
- if(no_update)
+/datum/lighting_object/New(turf/source)
+ if(!SSlighting.subsystem_initialized)
+ stack_trace("lighting_object created before SSlighting up!")
return
- update_overlay()
-
-/atom/movable/lighting_overlay/proc/update_overlay()
- set waitfor = FALSE
- var/turf/T = loc
-
- if(!istype(T))
- if(loc)
- log_debug("A lighting overlay realised its loc was NOT a turf (actual loc: [loc][loc ? ", " + loc.type : "null"]) in update_overlay() and got qdel'ed!")
- else
- log_debug("A lighting overlay realised it was in nullspace in update_overlay() and got pooled!")
+ if(!isturf(source))
qdel(src, force=TRUE)
+ stack_trace("a lighting object was assigned to [source], a non turf! ")
return
+ . = ..()
+
+ current_underlay = mutable_appearance(LIGHTING_ICON, "transparent", source.z, PLANE_LIGHTING, 255, RESET_COLOR | RESET_ALPHA | RESET_TRANSFORM)
+
+ affected_turf = source
+ if (affected_turf.lighting_object)
+ qdel(affected_turf.lighting_object, force = TRUE)
+ stack_trace("a lighting object was assigned to a turf that already had a lighting object!")
+
+ affected_turf.lighting_object = src
+ affected_turf.luminosity = 0
+
+ for(var/turf/space/space_tile in RANGE_TURFS(1, affected_turf))
+ space_tile.update_starlight()
+
+ needs_update = TRUE
+ SSlighting.objects_queue += src
+
+/datum/lighting_object/Destroy(force)
+ if (!force)
+ return QDEL_HINT_LETMELIVE
+ SSlighting.objects_queue -= src
+ if (isturf(affected_turf))
+ affected_turf.lighting_object = null
+ affected_turf.luminosity = 1
+ affected_turf.underlays -= current_underlay
+ affected_turf = null
+ return ..()
+
+/datum/lighting_object/proc/update()
// To the future coder who sees this and thinks
// "Why didn't he just use a loop?"
@@ -55,50 +55,54 @@
// Oh it's also shorter line wise.
// Including with these comments.
- // See LIGHTING_CORNER_DIAGONAL in lighting_corner.dm for why these values are what they are.
- // No I seriously cannot think of a more efficient method, fuck off Comic.
+ var/static/datum/lighting_corner/dummy/dummy_lighting_corner = new
- var/datum/lighting_corner/cr = LAZYACCESS(T.corners,3) || dummy_lighting_corner
- var/datum/lighting_corner/cg = LAZYACCESS(T.corners,2) || dummy_lighting_corner
- var/datum/lighting_corner/cb = LAZYACCESS(T.corners,4) || dummy_lighting_corner
- var/datum/lighting_corner/ca = LAZYACCESS(T.corners,1) || dummy_lighting_corner
+ var/datum/lighting_corner/red_corner = affected_turf.lighting_corner_SW || dummy_lighting_corner
+ var/datum/lighting_corner/green_corner = affected_turf.lighting_corner_SE || dummy_lighting_corner
+ var/datum/lighting_corner/blue_corner = affected_turf.lighting_corner_NW || dummy_lighting_corner
+ var/datum/lighting_corner/alpha_corner = affected_turf.lighting_corner_NE || dummy_lighting_corner
- var/max = max(cr.cache_mx, cg.cache_mx, cb.cache_mx, ca.cache_mx)
+ var/max = max(red_corner.largest_color_luminosity, green_corner.largest_color_luminosity, blue_corner.largest_color_luminosity, alpha_corner.largest_color_luminosity)
- var/rr = cr.cache_r
- var/rg = cr.cache_g
- var/rb = cr.cache_b
+ var/rr = red_corner.cache_r
+ var/rg = red_corner.cache_g
+ var/rb = red_corner.cache_b
- var/gr = cg.cache_r
- var/gg = cg.cache_g
- var/gb = cg.cache_b
+ var/gr = green_corner.cache_r
+ var/gg = green_corner.cache_g
+ var/gb = green_corner.cache_b
- var/br = cb.cache_r
- var/bg = cb.cache_g
- var/bb = cb.cache_b
+ var/br = blue_corner.cache_r
+ var/bg = blue_corner.cache_g
+ var/bb = blue_corner.cache_b
- var/ar = ca.cache_r
- var/ag = ca.cache_g
- var/ab = ca.cache_b
+ var/ar = alpha_corner.cache_r
+ var/ag = alpha_corner.cache_g
+ var/ab = alpha_corner.cache_b
#if LIGHTING_SOFT_THRESHOLD != 0
var/set_luminosity = max > LIGHTING_SOFT_THRESHOLD
#else
- // Because of floating points, it won't even be a flat 0.
+ // Because of floating points™?, it won't even be a flat 0.
// This number is mostly arbitrary.
var/set_luminosity = max > 1e-6
#endif
if((rr & gr & br & ar) && (rg + gg + bg + ag + rb + gb + bb + ab == 8))
- //anything that passes the first case is very likely to pass the second, and addition is a little faster in this case
- icon_state = "transparent"
- color = null
+ //anything that passes the first case is very likely to pass the second, and addition is a little faster in this case
+ affected_turf.underlays -= current_underlay
+ current_underlay.icon_state = "transparent"
+ current_underlay.color = null
+ affected_turf.underlays += current_underlay
else if(!set_luminosity)
- icon_state = LIGHTING_ICON_STATE_DARK
- color = null
+ affected_turf.underlays -= current_underlay
+ current_underlay.icon_state = "dark"
+ current_underlay.color = null
+ affected_turf.underlays += current_underlay
else
- icon_state = null
- color = list(
+ affected_turf.underlays -= current_underlay
+ current_underlay.icon_state = "gradient"
+ current_underlay.color = list(
rr, rg, rb, 00,
gr, gg, gb, 00,
br, bg, bb, 00,
@@ -106,38 +110,12 @@
00, 00, 00, 01
)
- luminosity = set_luminosity
+ affected_turf.underlays += current_underlay
-// Variety of overrides so the overlays don't get affected by weird things.
-/atom/movable/lighting_overlay/ex_act()
- return
+ affected_turf.luminosity = set_luminosity
-/atom/movable/lighting_overlay/singularity_act()
- return
+/datum/lighting_object/proc/removefromturf()
+ affected_turf.underlays -= current_underlay
-/atom/movable/lighting_overlay/singularity_pull()
- return
-
-/atom/movable/lighting_overlay/forceMove()
- return 0 //should never move
-
-/atom/movable/lighting_overlay/Move()
- return 0
-
-/atom/movable/lighting_overlay/throw_at()
- return 0
-
-/atom/movable/lighting_overlay/Destroy(var/force)
- if (force)
- total_lighting_overlays--
- global.lighting_update_overlays -= src
- LAZYREMOVE(SSlighting.currentrun, src)
-
- var/turf/T = loc
- if(istype(T))
- T.lighting_overlay = null
- T.luminosity = 1
-
- return ..()
- else
- return QDEL_HINT_LETMELIVE
+/datum/lighting_object/proc/addtoturf()
+ affected_turf.underlays += current_underlay
diff --git a/code/modules/lighting/lighting_setup.dm b/code/modules/lighting/lighting_setup.dm
index ad014b013d..b6473f36dd 100644
--- a/code/modules/lighting/lighting_setup.dm
+++ b/code/modules/lighting/lighting_setup.dm
@@ -1,24 +1,6 @@
// Create lighting overlays on all turfs with dynamic lighting in areas with dynamic lighting.
-/proc/create_all_lighting_overlays()
- for(var/area/A in world)
- if(!A.dynamic_lighting)
- continue
- for(var/turf/T in A)
- if(!T.dynamic_lighting)
- continue
- new /atom/movable/lighting_overlay(T, TRUE)
- CHECK_TICK
+/proc/create_all_lighting_objects()
+ var/list/all_turfs = block(locate(1,1,1), locate(world.maxx, world.maxy, world.maxz))
+ for(var/turf/T as anything in all_turfs)
+ T.lighting_build_overlay()
CHECK_TICK
-
-/proc/create_lighting_overlays_zlevel(var/zlevel)
- ASSERT(zlevel)
-
- for(var/turf/T in block(locate(1, 1, zlevel), locate(world.maxx, world.maxy, zlevel)))
- if(!T.dynamic_lighting)
- continue
-
- var/area/A = T.loc
- if(!A.dynamic_lighting)
- continue
-
- new /atom/movable/lighting_overlay(T, TRUE)
\ No newline at end of file
diff --git a/code/modules/lighting/lighting_source.dm b/code/modules/lighting/lighting_source.dm
index 451b8273c8..4f863bf34a 100644
--- a/code/modules/lighting/lighting_source.dm
+++ b/code/modules/lighting/lighting_source.dm
@@ -1,15 +1,22 @@
-/var/total_lighting_sources = 0
// This is where the fun begins.
// These are the main datums that emit light.
/datum/light_source
- var/atom/top_atom // The atom we're emitting light from(for example a mob if we're from a flashlight that's being held).
- var/atom/source_atom // The atom that we belong to.
+ ///The atom we're emitting light from (for example a mob if we're from a flashlight that's being held).
+ var/atom/top_atom
+ ///The atom that we belong to.
+ var/atom/source_atom
- var/turf/source_turf // The turf under the above.
- var/light_power // Intensity of the emitter light.
- var/light_range // The range of the emitted light.
- var/light_color // The colour of the light, string, decomposed by parse_light_color()
+ ///The turf under the source atom.
+ var/turf/source_turf
+ ///The turf the top_atom appears to over.
+ var/turf/pixel_turf
+ ///Intensity of the emitter light.
+ var/light_power
+ /// The range of the emitted light.
+ var/light_range
+ /// The colour of the light, string, decomposed by parse_light_color()
+ var/light_color
// Variables for keeping track of the colour.
var/lum_r
@@ -21,142 +28,83 @@
var/tmp/applied_lum_g
var/tmp/applied_lum_b
- var/list/datum/lighting_corner/effect_str // List used to store how much we're affecting corners.
- var/list/turf/affecting_turfs
+ /// List used to store how much we're affecting corners.
+ var/list/datum/lighting_corner/effect_str
- var/applied = FALSE // Whether we have applied our light yet or not.
+ /// Whether we have applied our light yet or not.
+ var/applied = FALSE
- var/vis_update // Whether we should smartly recalculate visibility. and then only update tiles that became(in)visible to us.
- var/needs_update // Whether we are queued for an update.
- var/destroyed // Whether we are destroyed and need to stop emitting light.
- var/force_update
+ /// whether we are to be added to SSlighting's sources_queue list for an update
+ var/needs_update = LIGHTING_NO_UPDATE
-/datum/light_source/New(var/atom/owner, var/atom/top)
- total_lighting_sources++
+
+/datum/light_source/New(atom/owner, atom/top)
source_atom = owner // Set our new owner.
- if(!source_atom.light_sources)
- source_atom.light_sources = list()
-
- source_atom.light_sources += src // Add us to the lights of our owner.
+ LAZYADD(source_atom.light_sources, src)
top_atom = top
- if(top_atom != source_atom)
- if(!top.light_sources)
- top.light_sources = list()
-
- top_atom.light_sources += src
+ if (top_atom != source_atom)
+ LAZYADD(top_atom.light_sources, src)
source_turf = top_atom
+ pixel_turf = get_turf_pixel(top_atom) || source_turf
+
light_power = source_atom.light_power
light_range = source_atom.light_range
light_color = source_atom.light_color
- parse_light_color()
-
- effect_str = list()
- affecting_turfs = list()
+ PARSE_LIGHT_COLOR(src)
update()
+/datum/light_source/Destroy(force)
+ remove_lum()
+ if (source_atom)
+ LAZYREMOVE(source_atom.light_sources, src)
+
+ if (top_atom)
+ LAZYREMOVE(top_atom.light_sources, src)
+
+ if (needs_update)
+ SSlighting.sources_queue -= src
+
+ top_atom = null
+ source_atom = null
+ source_turf = null
+ pixel_turf = null
return ..()
-// Kill ourselves.
-/datum/light_source/proc/destroy()
- total_lighting_sources--
- destroyed = TRUE
- force_update()
- if(source_atom)
- if(!source_atom.light_sources)
- log_runtime(EXCEPTION("Atom [source_atom] was a light source, but lacked a light source list!\n"), source_atom)
- else
- source_atom.light_sources -= src
+// Yes this doesn't align correctly on anything other than 4 width tabs.
+// If you want it to go switch everybody to elastic tab stops.
+// Actually that'd be great if you could!
+#define EFFECT_UPDATE(level) \
+ if (needs_update == LIGHTING_NO_UPDATE) \
+ SSlighting.sources_queue += src; \
+ if (needs_update < level) \
+ needs_update = level; \
- if(top_atom)
- top_atom.light_sources -= src
-
-// Call it dirty, I don't care.
-// This is here so there's no performance loss on non-instant updates from the fact that the engine can also do instant updates.
-// If you're wondering what's with the "BYOND" argument: BYOND won't let me have a() macro that has no arguments :|.
-#define effect_update(BYOND) \
- if(!needs_update) \
- { \
- lighting_update_lights += src; \
- needs_update = TRUE; \
- }
// This proc will cause the light source to update the top atom, and add itself to the update queue.
-/datum/light_source/proc/update(var/atom/new_top_atom)
+/datum/light_source/proc/update(atom/new_top_atom)
// This top atom is different.
- if(new_top_atom && new_top_atom != top_atom)
- if(top_atom != source_atom) // Remove ourselves from the light sources of that top atom.
- top_atom.light_sources -= src
+ if (new_top_atom && new_top_atom != top_atom)
+ if(top_atom != source_atom && top_atom.light_sources) // Remove ourselves from the light sources of that top atom.
+ LAZYREMOVE(top_atom.light_sources, src)
top_atom = new_top_atom
- if(top_atom != source_atom)
- if(!top_atom.light_sources)
- top_atom.light_sources = list()
+ if (top_atom != source_atom)
+ LAZYADD(top_atom.light_sources, src) // Add ourselves to the light sources of our new top atom.
- top_atom.light_sources += src // Add ourselves to the light sources of our new top atom.
-
- effect_update(null)
+ EFFECT_UPDATE(LIGHTING_CHECK_UPDATE)
// Will force an update without checking if it's actually needed.
/datum/light_source/proc/force_update()
- force_update = 1
-
- effect_update(null)
+ EFFECT_UPDATE(LIGHTING_FORCE_UPDATE)
// Will cause the light source to recalculate turfs that were removed or added to visibility only.
/datum/light_source/proc/vis_update()
- vis_update = 1
-
- effect_update(null)
-
-// Will check if we actually need to update, and update any variables that may need to be updated.
-/datum/light_source/proc/check()
- if(!source_atom || !light_range || !light_power)
- destroy()
- return 1
-
- if(!top_atom)
- top_atom = source_atom
- . = 1
-
- if(isturf(top_atom))
- if(source_turf != top_atom)
- source_turf = top_atom
- . = 1
- else if(top_atom.loc != source_turf)
- source_turf = top_atom.loc
- . = 1
-
- if(source_atom.light_power != light_power)
- light_power = source_atom.light_power
- . = 1
-
- if(source_atom.light_range != light_range)
- light_range = source_atom.light_range
- . = 1
-
- if(light_range && light_power && !applied)
- . = 1
-
- if(source_atom.light_color != light_color)
- light_color = source_atom.light_color
- parse_light_color()
- . = 1
-
-// Decompile the hexadecimal colour into lumcounts of each perspective.
-/datum/light_source/proc/parse_light_color()
- if(light_color)
- lum_r = GetRedPart (light_color) / 255
- lum_g = GetGreenPart(light_color) / 255
- lum_b = GetBluePart (light_color) / 255
- else
- lum_r = 1
- lum_g = 1
- lum_b = 1
+ EFFECT_UPDATE(LIGHTING_VIS_UPDATE)
// Macro that applies light to a new corner.
// It is a macro in the interest of speed, yet not having to copy paste it.
@@ -164,127 +112,264 @@
// As such this all gets counted as a single line.
// The braces and semicolons are there to be able to do this on a single line.
-#define APPLY_CORNER(C) \
- . = LUM_FALLOFF(C, source_turf); \
- \
- . *= light_power; \
- \
- effect_str[C] = .; \
- \
- C.update_lumcount \
- ( \
- . * applied_lum_r, \
- . * applied_lum_g, \
- . * applied_lum_b \
+// /tg/ falloff alg
+#define LUM_FALLOFF(C, T) (1 - CLAMP01(sqrt((C.x - T.x) ** 2 + (C.y - T.y) ** 2 + LIGHTING_HEIGHT) / max(1, light_range)))
+
+// Bay/Polaris falloff alg
+//#define LUM_FALLOFF(C, T)(1 - CLAMP01(((C.x - T.x) ** 2 +(C.y - T.y) ** 2 + LIGHTING_HEIGHT) ** 0.6 / max(1, light_range)))
+
+#define APPLY_CORNER(C) \
+ . = LUM_FALLOFF(C, pixel_turf); \
+ . *= light_power; \
+ var/OLD = effect_str[C]; \
+ \
+ C.update_lumcount \
+ ( \
+ (. * lum_r) - (OLD * applied_lum_r), \
+ (. * lum_g) - (OLD * applied_lum_g), \
+ (. * lum_b) - (OLD * applied_lum_b) \
+ ); \
+
+#define REMOVE_CORNER(C) \
+ . = -effect_str[C]; \
+ C.update_lumcount \
+ ( \
+ . * applied_lum_r, \
+ . * applied_lum_g, \
+ . * applied_lum_b \
);
-// I don't need to explain what this does, do I?
-#define REMOVE_CORNER(C) \
- . = -effect_str[C]; \
- C.update_lumcount \
- ( \
- . * applied_lum_r, \
- . * applied_lum_g, \
- . * applied_lum_b \
- );
+#define APPLY_CORNER_SIMPLE(C) \
+ . = light_power; \
+ var/OLD = effect_str[C]; \
+ \
+ C.update_lumcount \
+ ( \
+ (. * lum_r) - (OLD * applied_lum_r), \
+ (. * lum_g) - (OLD * applied_lum_g), \
+ (. * lum_b) - (OLD * applied_lum_b) \
+ ); \
-// This is the define used to calculate falloff.
-#define LUM_FALLOFF(C, T)(1 - CLAMP01(((C.x - T.x) ** 2 +(C.y - T.y) ** 2 + LIGHTING_HEIGHT) ** 0.6 / max(1, light_range)))
-/datum/light_source/proc/apply_lum()
- var/static/update_gen = 1
- applied = 1
+/datum/light_source/proc/remove_lum()
+ applied = FALSE
+ for (var/datum/lighting_corner/corner as anything in effect_str)
+ REMOVE_CORNER(corner)
+ LAZYREMOVE(corner.affecting, src)
+
+ effect_str = null
+
+/datum/light_source/proc/recalc_corner(datum/lighting_corner/corner)
+ LAZYINITLIST(effect_str)
+ if (effect_str[corner]) // Already have one.
+ REMOVE_CORNER(corner)
+ effect_str[corner] = 0
+
+ APPLY_CORNER(corner)
+ effect_str[corner] = .
+
+/datum/light_source/proc/get_turfs_in_range()
+ return view(CEILING(light_range, 1), source_turf)
+
+/datum/light_source/proc/update_corners()
+ var/update = FALSE
+ var/atom/source_atom = src.source_atom
+
+ if (QDELETED(source_atom))
+ qdel(src)
+ return
+
+ if (source_atom.light_power != light_power)
+ light_power = source_atom.light_power
+ update = TRUE
+
+ if (source_atom.light_range != light_range)
+ light_range = source_atom.light_range
+ update = TRUE
+
+ if (!top_atom)
+ top_atom = source_atom
+ update = TRUE
+
+ if (!light_range || !light_power)
+ qdel(src)
+ return
+
+ if (isturf(top_atom))
+ if (source_turf != top_atom)
+ source_turf = top_atom
+ pixel_turf = source_turf
+ update = TRUE
+ else if (top_atom.loc != source_turf)
+ source_turf = top_atom.loc
+ pixel_turf = get_turf_pixel(top_atom)
+ update = TRUE
+ else
+ var/pixel_loc = get_turf_pixel(top_atom)
+ if (pixel_loc != pixel_turf)
+ pixel_turf = pixel_loc
+ update = TRUE
+
+ if (!isturf(source_turf))
+ if (applied)
+ remove_lum()
+ return
+
+ if (light_range && light_power && !applied)
+ update = TRUE
+
+ if (source_atom.light_color != light_color)
+ light_color = source_atom.light_color
+ PARSE_LIGHT_COLOR(src)
+ update = TRUE
+
+ else if (applied_lum_r != lum_r || applied_lum_g != lum_g || applied_lum_b != lum_b)
+ update = TRUE
+
+ if (update)
+ needs_update = LIGHTING_CHECK_UPDATE
+ applied = TRUE
+ else if (needs_update == LIGHTING_CHECK_UPDATE)
+ return //nothing's changed
+
+ var/list/datum/lighting_corner/corners = list()
+ var/list/turf/turfs = list()
+
+ if (source_turf)
+ var/oldlum = source_turf.luminosity
+ source_turf.luminosity = CEILING(light_range, 1)
+ for(var/turf/T in get_turfs_in_range())
+ if(!IS_OPAQUE_TURF(T))
+ if (!T.lighting_corners_initialised)
+ T.generate_missing_corners()
+ corners[T.lighting_corner_NE] = 0
+ corners[T.lighting_corner_SE] = 0
+ corners[T.lighting_corner_SW] = 0
+ corners[T.lighting_corner_NW] = 0
+ turfs += T
+ source_turf.luminosity = oldlum
+
+ var/list/datum/lighting_corner/new_corners = (corners - effect_str)
+ LAZYINITLIST(effect_str)
+ if (needs_update == LIGHTING_VIS_UPDATE)
+ for (var/datum/lighting_corner/corner as anything in new_corners)
+ APPLY_CORNER(corner)
+ if (. != 0)
+ LAZYADD(corner.affecting, src)
+ effect_str[corner] = .
+ else
+ for (var/datum/lighting_corner/corner as anything in new_corners)
+ APPLY_CORNER(corner)
+ if (. != 0)
+ LAZYADD(corner.affecting, src)
+ effect_str[corner] = .
+
+ for (var/datum/lighting_corner/corner as anything in corners - new_corners) // Existing corners
+ APPLY_CORNER(corner)
+ if (. != 0)
+ effect_str[corner] = .
+ else
+ LAZYREMOVE(corner.affecting, src)
+ effect_str -= corner
+
+ var/list/datum/lighting_corner/gone_corners = effect_str - corners
+ for (var/datum/lighting_corner/corner as anything in gone_corners)
+ REMOVE_CORNER(corner)
+ LAZYREMOVE(corner.affecting, src)
+ effect_str -= gone_corners
- // Keep track of the last applied lum values so that the lighting can be reversed
applied_lum_r = lum_r
applied_lum_g = lum_g
applied_lum_b = lum_b
- FOR_DVIEW(var/turf/T, light_range, source_turf, INVISIBILITY_LIGHTING)
- if(!T.lighting_corners_initialised)
- T.generate_missing_corners()
+ UNSETEMPTY(effect_str)
- for(var/datum/lighting_corner/C in T.get_corners())
- if(C.update_gen == update_gen)
- continue
+// For planets and fake suns
+/datum/light_source/sun
+ light_range = 1
+ light_color = "#FFFFFF"
+ light_power = 2
+ var/applied_power = 2
- C.update_gen = update_gen
- C.affecting += src
+/datum/light_source/sun/New()
+ return
- if(!C.active)
- effect_str[C] = 0
- continue
+/datum/light_source/sun/force_update()
+ return
- APPLY_CORNER(C)
+/datum/light_source/sun/vis_update()
+ return
- if(!T.affecting_lights)
- T.affecting_lights = list()
+/datum/light_source/sun/update_corners(var/list/turfs_to_update)
+ if(!LAZYLEN(turfs_to_update))
+ stack_trace("Planet sun tried to update with no turfs given")
+ return
- T.affecting_lights += src
- affecting_turfs += T
+ // Update lum_r/g/b from our light_color
+ PARSE_LIGHT_COLOR(src)
+
+ // Noop update
+ if(lum_r == applied_lum_r && lum_g == applied_lum_g && lum_b == applied_lum_b && light_power == applied_power)
+ return
+
+ // No reason to unapply on the first run or if previous run was 0 power
+ if(applied)
+ remove_lum()
- update_gen++
+ // Entirely dark, just stop now that we've remove_lum()'d
+ if(!light_power)
+ applied = FALSE
+ return
-/datum/light_source/proc/remove_lum()
- applied = FALSE
+ LAZYINITLIST(effect_str)
- for(var/turf/T in affecting_turfs)
- if(!T.affecting_lights)
- T.affecting_lights = list()
- else
- T.affecting_lights -= src
-
- affecting_turfs.Cut()
-
- for(var/datum/lighting_corner/C in effect_str)
- REMOVE_CORNER(C)
-
- C.affecting -= src
-
- effect_str.Cut()
-
-/datum/light_source/proc/recalc_corner(var/datum/lighting_corner/C)
- if(effect_str.Find(C)) // Already have one.
- REMOVE_CORNER(C)
-
- APPLY_CORNER(C)
-
-/datum/light_source/proc/smart_vis_update()
var/list/datum/lighting_corner/corners = list()
- var/list/turf/turfs = list()
- FOR_DVIEW(var/turf/T, light_range, source_turf, 0)
- if(!T.lighting_corners_initialised)
- T.generate_missing_corners()
- corners |= T.get_corners()
- turfs += T
+ for(var/turf/T as anything in turfs_to_update)
+ if(!IS_OPAQUE_TURF(T))
+ if(!T.lighting_corners_initialised)
+ T.generate_missing_corners()
+
+ var/datum/lighting_corner/LC = T.lighting_corner_NE
+ if(!corners[LC])
+ corners[LC] = 1
+ APPLY_CORNER_SIMPLE(LC)
+ LAZYADD(LC.affecting, src)
+ effect_str[LC] = .
+
+ LC = T.lighting_corner_SE
+ if(!corners[LC])
+ corners[LC] = 1
+ APPLY_CORNER_SIMPLE(LC)
+ LAZYADD(LC.affecting, src)
+ effect_str[LC] = .
+
+ LC = T.lighting_corner_NW
+ if(!corners[LC])
+ corners[LC] = 1
+ APPLY_CORNER_SIMPLE(LC)
+ LAZYADD(LC.affecting, src)
+ effect_str[LC] = .
+
+ LC = T.lighting_corner_SW
+ if(!corners[LC])
+ corners[LC] = 1
+ APPLY_CORNER_SIMPLE(LC)
+ LAZYADD(LC.affecting, src)
+ effect_str[LC] = .
- var/list/L = turfs - affecting_turfs // New turfs, add us to the affecting lights of them.
- affecting_turfs += L
- for(var/turf/T in L)
- if(!T.affecting_lights)
- T.affecting_lights = list(src)
- else
- T.affecting_lights += src
+ CHECK_TICK
- L = affecting_turfs - turfs // Now-gone turfs, remove us from the affecting lights.
- affecting_turfs -= L
- for(var/turf/T in L)
- T.affecting_lights -= src
+ applied_lum_r = lum_r
+ applied_lum_g = lum_g
+ applied_lum_b = lum_b
+ applied_power = light_power
+ applied = TRUE // remove_lum() now necessary in the future
- for(var/datum/lighting_corner/C in corners - effect_str) // New corners
- C.affecting += src
- if(!C.active)
- effect_str[C] = 0
- continue
+ UNSETEMPTY(effect_str)
- APPLY_CORNER(C)
-
- for(var/datum/lighting_corner/C in effect_str - corners) // Old, now gone, corners.
- REMOVE_CORNER(C)
- C.affecting -= src
- effect_str -= C
-
-#undef effect_update
+#undef EFFECT_UPDATE
#undef LUM_FALLOFF
#undef REMOVE_CORNER
#undef APPLY_CORNER
+#undef REMOVE_CORNER_SIMPLE
+#undef APPLY_CORNER_SIMPLE
\ No newline at end of file
diff --git a/code/modules/lighting/lighting_turf.dm b/code/modules/lighting/lighting_turf.dm
index b8a29fc43a..59732b5d60 100644
--- a/code/modules/lighting/lighting_turf.dm
+++ b/code/modules/lighting/lighting_turf.dm
@@ -1,96 +1,142 @@
/turf
- var/dynamic_lighting = TRUE // Does the turf use dynamic lighting?
- luminosity = 1
+ ///Lumcount added by sources other than lighting datum objects, such as the overlay lighting component.
+ var/dynamic_lumcount = 0
+
+ var/dynamic_lighting = TRUE
var/tmp/lighting_corners_initialised = FALSE
- var/tmp/list/datum/light_source/affecting_lights // List of light sources affecting this turf.
- var/tmp/atom/movable/lighting_overlay/lighting_overlay // Our lighting overlay.
- var/tmp/list/datum/lighting_corner/corners
- var/tmp/has_opaque_atom = FALSE // Not to be confused with opacity, this will be TRUE if there's any opaque atom on the tile.
+ ///Our lighting object.
+ var/tmp/datum/lighting_object/lighting_object
+ ///Lighting Corner datums.
+ var/tmp/datum/lighting_corner/lighting_corner_NE
+ var/tmp/datum/lighting_corner/lighting_corner_SE
+ var/tmp/datum/lighting_corner/lighting_corner_SW
+ var/tmp/datum/lighting_corner/lighting_corner_NW
+
+ ///Which directions does this turf block the vision of, taking into account both the turf's opacity and the movable opacity_sources.
+ var/directional_opacity = NONE
+ ///Lazylist of movable atoms providing opacity sources.
+ var/list/atom/movable/opacity_sources
// Causes any affecting light sources to be queued for a visibility update, for example a door got opened.
/turf/proc/reconsider_lights()
- for(var/datum/light_source/L in affecting_lights)
- L.vis_update()
+ lighting_corner_NE?.vis_update()
+ lighting_corner_SE?.vis_update()
+ lighting_corner_SW?.vis_update()
+ lighting_corner_NW?.vis_update()
/turf/proc/lighting_clear_overlay()
- if(lighting_overlay)
- qdel(lighting_overlay, force = TRUE)
+ if(lighting_object)
+ qdel(lighting_object, force=TRUE)
- for(var/datum/lighting_corner/C in corners)
- C.update_active()
-
-// Builds a lighting overlay for us, but only if our area is dynamic.
+// Builds a lighting object for us, but only if our area is dynamic.
/turf/proc/lighting_build_overlay()
- if(lighting_overlay)
+ if(!has_dynamic_lighting())
return
- var/area/A = loc
- if(A.dynamic_lighting && dynamic_lighting)
- if(!lighting_corners_initialised)
- generate_missing_corners()
-
- new /atom/movable/lighting_overlay(src)
-
- for(var/datum/lighting_corner/C in corners)
- if(!C.active) // We would activate the corner, calculate the lighting for it.
- for(var/L in C.affecting)
- var/datum/light_source/S = L
- S.recalc_corner(C)
-
- C.active = TRUE
+ lighting_clear_overlay()
+ new/datum/lighting_object(src)
// Used to get a scaled lumcount.
-/turf/proc/get_lumcount(var/minlum = 0, var/maxlum = 1)
- if(!lighting_overlay)
+/turf/proc/get_lumcount(minlum = 0, maxlum = 1)
+ if (!lighting_object)
return 1
var/totallums = 0
- for(var/datum/lighting_corner/L in corners)
- totallums += max(L.lum_r, L.lum_g, L.lum_b)
+ var/datum/lighting_corner/L
+ L = lighting_corner_NE
+ if (L)
+ totallums += L.lum_r + L.lum_b + L.lum_g
+ L = lighting_corner_SE
+ if (L)
+ totallums += L.lum_r + L.lum_b + L.lum_g
+ L = lighting_corner_SW
+ if (L)
+ totallums += L.lum_r + L.lum_b + L.lum_g
+ L = lighting_corner_NW
+ if (L)
+ totallums += L.lum_r + L.lum_b + L.lum_g
- totallums /= 4 // 4 corners, max channel selected, return the average
- totallums =(totallums - minlum) /(maxlum - minlum)
+ totallums /= 12 // 4 corners, each with 3 channels, get the average.
+
+ totallums = (totallums - minlum) / (maxlum - minlum)
+
+ totallums += dynamic_lumcount
return CLAMP01(totallums)
-// Can't think of a good name, this proc will recalculate the has_opaque_atom variable.
-/turf/proc/recalc_atom_opacity()
- has_opaque_atom = FALSE
- for(var/atom/A in src.contents + src) // Loop through every movable atom on our tile PLUS ourselves (we matter too...)
- if(A.opacity)
- has_opaque_atom = TRUE
+// Returns a boolean whether the turf is on soft lighting.
+// Soft lighting being the threshold at which point the overlay considers
+// itself as too dark to allow sight and see_in_dark becomes useful.
+// So basically if this returns true the tile is unlit black.
+/turf/proc/is_softly_lit()
+ if (!lighting_object)
+ return FALSE
-// If an opaque movable atom moves around we need to potentially update visibility.
-/turf/Entered(var/atom/movable/Obj, var/atom/OldLoc)
- . = ..()
+ return !(luminosity || dynamic_lumcount)
- if(Obj && Obj.opacity)
- has_opaque_atom = TRUE // Make sure to do this before reconsider_lights(), incase we're on instant updates. Guaranteed to be on in this case.
- reconsider_lights()
-/turf/Exited(var/atom/movable/Obj, var/atom/newloc)
- . = ..()
+///Proc to add movable sources of opacity on the turf and let it handle lighting code.
+/turf/proc/add_opacity_source(atom/movable/new_source)
+ LAZYADD(opacity_sources, new_source)
+ if(opacity)
+ return
+ recalculate_directional_opacity()
- if(Obj && Obj.opacity)
- recalc_atom_opacity() // Make sure to do this before reconsider_lights(), incase we're on instant updates.
- reconsider_lights()
-/turf/proc/get_corners()
- if(has_opaque_atom)
- return null // Since this proc gets used in a for loop, null won't be looped though.
+///Proc to remove movable sources of opacity on the turf and let it handle lighting code.
+/turf/proc/remove_opacity_source(atom/movable/old_source)
+ LAZYREMOVE(opacity_sources, old_source)
+ if(opacity) //Still opaque, no need to worry on updating.
+ return
+ recalculate_directional_opacity()
- return corners
+
+///Calculate on which directions this turfs block view.
+/turf/proc/recalculate_directional_opacity()
+ . = directional_opacity
+ if(opacity)
+ directional_opacity = ALL_CARDINALS
+ if(. != directional_opacity)
+ reconsider_lights()
+ return
+ directional_opacity = NONE
+ for(var/atom/movable/opacity_source as anything in opacity_sources)
+ if(opacity_source.flags & ON_BORDER)
+ directional_opacity |= opacity_source.dir
+ else //If fulltile and opaque, then the whole tile blocks view, no need to continue checking.
+ directional_opacity = ALL_CARDINALS
+ break
+ if(. != directional_opacity && (. == ALL_CARDINALS || directional_opacity == ALL_CARDINALS))
+ reconsider_lights() //The lighting system only cares whether the tile is fully concealed from all directions or not.
+
+
+/turf/proc/change_area(area/old_area, area/new_area)
+ if(SSlighting.subsystem_initialized)
+ if (new_area.dynamic_lighting != old_area.dynamic_lighting)
+ if (new_area.dynamic_lighting)
+ lighting_build_overlay()
+ else
+ lighting_clear_overlay()
+
+/turf/proc/has_dynamic_lighting()
+ var/area/A = loc
+ return (IS_DYNAMIC_LIGHTING(src) && IS_DYNAMIC_LIGHTING(A))
/turf/proc/generate_missing_corners()
+
+ if (!lighting_corner_NE)
+ lighting_corner_NE = new/datum/lighting_corner(src, NORTH|EAST)
+
+ if (!lighting_corner_SE)
+ lighting_corner_SE = new/datum/lighting_corner(src, SOUTH|EAST)
+
+ if (!lighting_corner_SW)
+ lighting_corner_SW = new/datum/lighting_corner(src, SOUTH|WEST)
+
+ if (!lighting_corner_NW)
+ lighting_corner_NW = new/datum/lighting_corner(src, NORTH|WEST)
+
lighting_corners_initialised = TRUE
- if(!corners)
- corners = list(null, null, null, null)
-
- for(var/i = 1 to 4)
- if(corners[i]) // Already have a corner on this direction.
- continue
-
- corners[i] = new /datum/lighting_corner(src, LIGHTING_CORNER_DIAGONAL[i])
diff --git a/code/modules/lighting/~lighting_undefs.dm b/code/modules/lighting/~lighting_undefs.dm
deleted file mode 100644
index 2f863b73d5..0000000000
--- a/code/modules/lighting/~lighting_undefs.dm
+++ /dev/null
@@ -1,7 +0,0 @@
-#undef LIGHTING_FALLOFF
-#undef LIGHTING_LAMBERTIAN
-#undef LIGHTING_HEIGHT
-
-#undef LIGHTING_ICON
-
-#undef LIGHTING_BASE_MATRIX
diff --git a/code/modules/maps/tg/map_template_vr.dm b/code/modules/maps/tg/map_template_vr.dm
index 6f12c85ba9..77424f5ec2 100644
--- a/code/modules/maps/tg/map_template_vr.dm
+++ b/code/modules/maps/tg/map_template_vr.dm
@@ -4,7 +4,7 @@
for(var/turf/simulated/T in block(locate(1,1,z), locate(world.maxx, world.maxy, z)))
T.update_air_properties()
//We missed sslighting init!
- if(lighting_overlays_initialised)
+ if(SSlighting.subsystem_initialized)
for(var/Trf in block(locate(1,1,z), locate(world.maxx, world.maxy, z)))
var/turf/T = Trf //faster than implicit istype with typed for loop
T.lighting_build_overlay()
diff --git a/code/modules/maps/tg/reader.dm b/code/modules/maps/tg/reader.dm
index aa0bd51b89..542a0b9582 100644
--- a/code/modules/maps/tg/reader.dm
+++ b/code/modules/maps/tg/reader.dm
@@ -159,7 +159,6 @@ GLOBAL_DATUM_INIT(_preloader, /dmm_suite/preloader, new)
var/model_key = copytext(line, tpos, tpos + key_len)
line_keys[++line_keys.len] = model_key
#ifdef TESTING
- else
++turfsSkipped
#endif
CHECK_TICK
diff --git a/code/modules/materials/materials/_materials.dm b/code/modules/materials/materials/_materials.dm
index 4ff29932b0..890eab5722 100644
--- a/code/modules/materials/materials/_materials.dm
+++ b/code/modules/materials/materials/_materials.dm
@@ -49,6 +49,24 @@ var/list/name_to_material
if(material)
return material.name
+
+/**
+ * Returns the material composition of the atom.
+ *
+ * Used when recycling items, specifically to turn alloys back into their component mats.
+ *
+ * Exists because I'd need to add a way to un-alloy alloys or otherwise deal
+ * with people converting the entire stations material supply into alloys.
+ *
+ * Arguments:
+ * - breakdown_flags: A set of flags determining how exactly the materials are broken down. (unused)
+ */
+/obj/proc/get_material_composition(breakdown_flags=NONE)
+ . = list()
+ for(var/mat in matter)
+ var/datum/material/M = GET_MATERIAL_REF(mat)
+ .[M] = matter[mat]
+
// Builds the datum list above.
/proc/populate_material_list(force_remake=0)
if(name_to_material && !force_remake) return // Already set up!
@@ -72,6 +90,73 @@ var/list/name_to_material
return material.display_name
return null
+/** Fetches a cached material singleton when passed sufficient arguments.
+ *
+ * Arguments:
+ * - [arguments][/list]: The list of arguments used to fetch the material ref.
+ * - The first element is a material datum, text string, or material type.
+ * - [Material datums][/datum/material] are assumed to be references to the cached datum and are returned
+ * - Text is assumed to be the text ID of a material and the corresponding material is fetched from the cache
+ * - A material type is checked for bespokeness:
+ * - If the material type is not bespoke the type is assumed to be the id for a material and the corresponding material is loaded from the cache.
+ * - If the material type is bespoke a text ID is generated from the arguments list and used to load a material datum from the cache.
+ * - The following elements are used to generate bespoke IDs
+ */
+/proc/_GetMaterialRef(list/arguments)
+ if(!name_to_material)
+ populate_material_list()
+
+ var/datum/material/key = arguments[1]
+ if(istype(key))
+ return key // we want to convert anything we're given to a material
+
+ if(istext(key)) // text ID
+ . = name_to_material[key]
+ if(!.)
+ warning("Attempted to fetch material ref with invalid text id '[key]'")
+ return
+
+ if(!ispath(key, /datum/material))
+ CRASH("Attempted to fetch material ref with invalid key [key]")
+
+ key = GetIdFromArguments(arguments)
+ . = name_to_material[key]
+ if(!.)
+ warning("Attempted to fetch nonexistent material with key [key]")
+
+/** I'm not going to lie, this was swiped from [SSdcs][/datum/controller/subsystem/processing/dcs].
+ * Credit does to ninjanomnom
+ *
+ * Generates an id for bespoke ~~elements~~ materials when given the argument list
+ * Generating the id here is a bit complex because we need to support named arguments
+ * Named arguments can appear in any order and we need them to appear after ordered arguments
+ * We assume that no one will pass in a named argument with a value of null
+ **/
+/proc/GetIdFromArguments(list/arguments)
+ var/datum/material/mattype = arguments[1]
+ var/list/fullid = list("[initial(mattype.name) || mattype]")
+ var/list/named_arguments = list()
+ for(var/i in 2 to length(arguments))
+ var/key = arguments[i]
+ var/value
+ if(istext(key))
+ value = arguments[key]
+ if(!(istext(key) || isnum(key)))
+ key = REF(key)
+ key = "[key]" // Key is stringified so numbers dont break things
+ if(!isnull(value))
+ if(!(istext(value) || isnum(value)))
+ value = REF(value)
+ named_arguments["[key]"] = value
+ else
+ fullid += "[key]"
+
+ if(length(named_arguments))
+ named_arguments = sortList(named_arguments)
+ fullid += named_arguments
+ return replacetext(list2params(fullid), "+", " ")
+
+
// Material definition and procs follow.
/datum/material
var/name // Unique name for use in indexing the list.
@@ -131,7 +216,7 @@ var/list/name_to_material
var/tableslam_noise = 'sound/weapons/tablehit1.ogg'
// Noise made when a simple door made of this material opens or closes.
var/dooropen_noise = 'sound/effects/stonedoor_openclose.ogg'
- // Path to resulting stacktype. Todo remove need for this.
+ // Path to resulting stacktype.
var/stack_type
// Wallrot crumble message.
var/rotting_touch_message = "crumbles under your touch"
diff --git a/code/modules/materials/sheets/organic/tanning/tanning_rack.dm b/code/modules/materials/sheets/organic/tanning/tanning_rack.dm
index 96d70d9096..885b65dd8f 100644
--- a/code/modules/materials/sheets/organic/tanning/tanning_rack.dm
+++ b/code/modules/materials/sheets/organic/tanning/tanning_rack.dm
@@ -27,14 +27,12 @@
. += "\The [drying] is [drying.get_dryness_text()]."
/obj/structure/tanning_rack/update_icon()
- overlays.Cut()
+ cut_overlays()
if(drying)
- var/image/I
if(drying.wetness)
- I = image(icon, "leather_wet")
+ add_overlay("leather_wet")
else
- I = image(icon, "leather_dry")
- add_overlay(I)
+ add_overlay("leather_dry")
/obj/structure/tanning_rack/attackby(var/atom/A, var/mob/user)
if(istype(A, /obj/item/stack/wetleather))
diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm
index 2c784ad886..e43a6e8d9b 100644
--- a/code/modules/mining/mine_items.dm
+++ b/code/modules/mining/mine_items.dm
@@ -4,7 +4,7 @@
name = "lantern"
icon_state = "lantern"
desc = "A mining lantern."
- brightness_on = 6 // luminosity when on
+ light_range = 6 // luminosity when on
light_color = "FF9933" // A slight yellow/orange color.
/*****************************Pickaxe********************************/
diff --git a/code/modules/mining/mine_outcrops.dm b/code/modules/mining/mine_outcrops.dm
index 5ce5c5bc94..989b172e1e 100644
--- a/code/modules/mining/mine_outcrops.dm
+++ b/code/modules/mining/mine_outcrops.dm
@@ -14,7 +14,7 @@
/obj/structure/outcrop/Initialize()
. = ..()
if(prob(1))
- overlays += image(icon, "[initial(icon_state)]-egg")
+ add_overlay("[initial(icon_state)]-egg")
/obj/structure/outcrop/diamond
name = "shiny outcrop"
diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm
index de46c7a4ae..5881428b8a 100644
--- a/code/modules/mining/mine_turfs.dm
+++ b/code/modules/mining/mine_turfs.dm
@@ -134,7 +134,7 @@ turf/simulated/mineral/floor/light_corner
/turf/simulated/mineral/proc/update_general()
update_icon(1)
- recalc_atom_opacity()
+ recalculate_directional_opacity()
if(ticker && ticker.current_state == GAME_STATE_PLAYING)
reconsider_lights()
if(air_master)
diff --git a/code/modules/mining/shelter_atoms_vr.dm b/code/modules/mining/shelter_atoms_vr.dm
index 09bd7911c8..66e237147d 100644
--- a/code/modules/mining/shelter_atoms_vr.dm
+++ b/code/modules/mining/shelter_atoms_vr.dm
@@ -266,6 +266,7 @@ GLOBAL_LIST_EMPTY(unique_deployable)
light_range = 5
light_power = 1.2
light_color = "#DDFFD3"
+ light_on = TRUE
pixel_y = -4
max_n_of_items = 100
@@ -330,6 +331,7 @@ GLOBAL_LIST_EMPTY(unique_deployable)
light_range = 3
light_power = 1
light_color = "#FFFFFF"
+ light_on = TRUE
/obj/structure/fans/hardlight/ex_act()
return
diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm
index 53cecf1f63..290db13b15 100644
--- a/code/modules/mob/dead/observer/observer.dm
+++ b/code/modules/mob/dead/observer/observer.dm
@@ -905,7 +905,7 @@ mob/observer/dead/MayRespawn(var/feedback = 0)
if(choice)
icon = 'icons/mob/ghost.dmi'
- overlays.Cut()
+ cut_overlays()
if(icon_state && icon)
previous_state = icon_state
@@ -936,9 +936,9 @@ mob/observer/dead/MayRespawn(var/feedback = 0)
if(PP.pai == null)
count++
PP.icon = 'icons/obj/pda_vr.dmi' // VOREStation Edit
- PP.overlays += "pai-ghostalert"
+ PP.add_overlay("pai-ghostalert")
spawn(54)
- PP.overlays.Cut()
+ PP.cut_overlays()
to_chat(usr,"Flashing the displays of [count] unoccupied PAIs. ")
else
to_chat(usr,"You have 'Be pAI' disabled in your character prefs, so we can't help you. ")
diff --git a/code/modules/mob/holder.dm b/code/modules/mob/holder.dm
index 6813ae45e9..65fddd1d68 100644
--- a/code/modules/mob/holder.dm
+++ b/code/modules/mob/holder.dm
@@ -87,14 +87,14 @@ var/list/holder_mob_icon_cache = list()
/obj/item/weapon/holder/proc/sync(var/mob/living/M)
dir = 2
- overlays.Cut()
+ overlays.Cut() // Not using SSoverlays for this due to performance
icon = M.icon
icon_state = M.icon_state
item_state = M.item_state
color = M.color
name = M.name
desc = M.desc
- overlays |= M.overlays
+ overlays |= M.overlays // Not using SSoverlays for this due to performance
var/mob/living/carbon/human/H = loc
if(istype(H))
if(H.l_hand == src)
diff --git a/code/modules/mob/living/bot/medbot.dm b/code/modules/mob/living/bot/medbot.dm
index 6592c37e0c..42f3bff06c 100644
--- a/code/modules/mob/living/bot/medbot.dm
+++ b/code/modules/mob/living/bot/medbot.dm
@@ -187,9 +187,9 @@
update_icons()
/mob/living/bot/medbot/update_icons()
- overlays.Cut()
+ cut_overlays()
if(skin)
- overlays += image('icons/obj/aibots.dmi', "medskin_[skin]")
+ add_overlay("medskin_[skin]")
if(busy)
icon_state = "medibots"
else
@@ -530,7 +530,7 @@
/obj/item/weapon/firstaid_arm_assembly/Initialize()
. = ..()
if(skin)
- overlays += image('icons/obj/aibots.dmi', "kit_skin_[src.skin]")
+ add_overlay("kit_skin_[src.skin]")
/obj/item/weapon/firstaid_arm_assembly/attackby(obj/item/weapon/W as obj, mob/user as mob)
..()
@@ -550,7 +550,7 @@
build_step++
to_chat(user, "You add the health sensor to [src]. ")
name = "First aid/robot arm/health analyzer assembly"
- overlays += image('icons/obj/aibots.dmi', "na_scanner")
+ add_overlay("na_scanner")
if(1)
if(isprox(W))
diff --git a/code/modules/mob/living/bot/mulebot.dm b/code/modules/mob/living/bot/mulebot.dm
index 04878bf727..d36dda3cd2 100644
--- a/code/modules/mob/living/bot/mulebot.dm
+++ b/code/modules/mob/living/bot/mulebot.dm
@@ -303,7 +303,7 @@
C.pixel_y += 9
if(C.layer < layer)
C.layer = layer + 0.1
- overlays += C
+ add_overlay(C)
busy = 0
@@ -312,7 +312,7 @@
return
busy = 1
- overlays.Cut()
+ cut_overlays()
load.forceMove(loc)
load.pixel_y -= 9
diff --git a/code/modules/mob/living/bot/secbot.dm b/code/modules/mob/living/bot/secbot.dm
index 9e2ce96412..9855d0efd4 100644
--- a/code/modules/mob/living/bot/secbot.dm
+++ b/code/modules/mob/living/bot/secbot.dm
@@ -367,7 +367,7 @@
var/obj/item/weapon/secbot_assembly/Sa = new /obj/item/weapon/secbot_assembly(Tsec)
Sa.build_step = 1
- Sa.overlays += image('icons/obj/aibots.dmi', "hs_hole")
+ Sa.add_overlay("hs_hole")
Sa.created_name = name
new /obj/item/device/assembly/prox_sensor(Tsec)
new used_weapon(Tsec)
@@ -439,14 +439,14 @@
var/obj/item/weapon/weldingtool/WT = W
if(WT.remove_fuel(0, user))
build_step = 1
- overlays += image('icons/obj/aibots.dmi', "hs_hole")
+ add_overlay("hs_hole")
to_chat(user, "You weld a hole in \the [src].")
else if(isprox(W) && (build_step == 1))
user.drop_item()
build_step = 2
to_chat(user, "You add \the [W] to [src].")
- overlays += image('icons/obj/aibots.dmi', "hs_eye")
+ add_overlay("hs_eye")
name = "helmet/signaler/prox sensor assembly"
qdel(W)
@@ -455,7 +455,7 @@
build_step = 3
to_chat(user, "You add \the [W] to [src].")
name = "helmet/signaler/prox sensor/robot arm assembly"
- overlays += image('icons/obj/aibots.dmi', "hs_arm")
+ add_overlay("hs_arm")
qdel(W)
else if(istype(W, /obj/item/weapon/melee/baton) && build_step == 3)
diff --git a/code/modules/mob/living/carbon/alien/alien.dm b/code/modules/mob/living/carbon/alien/alien.dm
index 03a878e32d..132be55859 100644
--- a/code/modules/mob/living/carbon/alien/alien.dm
+++ b/code/modules/mob/living/carbon/alien/alien.dm
@@ -7,6 +7,7 @@
health = 100
maxHealth = 100
mob_size = 4
+ blocks_emissive = EMISSIVE_BLOCK_UNIQUE
inventory_panel_type = null // Disable inventory
diff --git a/code/modules/mob/living/carbon/alien/diona/update_icons.dm b/code/modules/mob/living/carbon/alien/diona/update_icons.dm
index 1d694cf624..9fc10ab4a8 100644
--- a/code/modules/mob/living/carbon/alien/diona/update_icons.dm
+++ b/code/modules/mob/living/carbon/alien/diona/update_icons.dm
@@ -7,6 +7,6 @@
else
icon_state = "[initial(icon_state)]"
- overlays.Cut()
+ cut_overlays()
if(hat)
- overlays |= get_hat_icon(hat, 0, -8)
\ No newline at end of file
+ add_overlay(get_hat_icon(hat, 0, -8))
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/alien/update_icons.dm b/code/modules/mob/living/carbon/alien/update_icons.dm
index 7bb90a4d9e..a91445cc44 100644
--- a/code/modules/mob/living/carbon/alien/update_icons.dm
+++ b/code/modules/mob/living/carbon/alien/update_icons.dm
@@ -1,5 +1,5 @@
/mob/living/carbon/alien/regenerate_icons()
- overlays = list()
+ cut_overlays()
update_icons()
/mob/living/carbon/alien/update_icons()
diff --git a/code/modules/mob/living/carbon/carbon_defines.dm b/code/modules/mob/living/carbon/carbon_defines.dm
index 07cd72fce9..a5230484ed 100644
--- a/code/modules/mob/living/carbon/carbon_defines.dm
+++ b/code/modules/mob/living/carbon/carbon_defines.dm
@@ -1,5 +1,6 @@
/mob/living/carbon
gender = MALE
+ blocks_emissive = EMISSIVE_BLOCK_UNIQUE // BLEH, this could be improved for transparent species and stuff! And blocks glowing eyes?!
var/datum/species/species //Contains icon generation and language information, set during New().
var/list/stomach_contents = list()
var/list/datum/disease2/disease/virus2 = list()
diff --git a/code/modules/mob/living/carbon/human/death_vr.dm b/code/modules/mob/living/carbon/human/death_vr.dm
index 78a2c4ea48..ca319be6e4 100644
--- a/code/modules/mob/living/carbon/human/death_vr.dm
+++ b/code/modules/mob/living/carbon/human/death_vr.dm
@@ -28,3 +28,10 @@
//Hooks need to return true otherwise they're considered having failed
return TRUE
+
+//For making sure that if a mob is able to be joined by ghosts, that ghosts can't join it if it dies
+/mob/living/simple_mob/death()
+ ..()
+ ghostjoin = 0
+ active_ghost_pods -= src
+ ghostjoin_icon()
diff --git a/code/modules/mob/living/carbon/human/human_species.dm b/code/modules/mob/living/carbon/human/human_species.dm
index 90949f401f..3c6451fc99 100644
--- a/code/modules/mob/living/carbon/human/human_species.dm
+++ b/code/modules/mob/living/carbon/human/human_species.dm
@@ -2,6 +2,7 @@
real_name = "Test Dummy"
status_flags = GODMODE|CANPUSH
has_huds = FALSE
+ blocks_emissive = FALSE
/mob/living/carbon/human/dummy/Initialize()
. = ..()
diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm
index 4d2f350cc6..5cfaf0ec20 100644
--- a/code/modules/mob/living/carbon/human/life.dm
+++ b/code/modules/mob/living/carbon/human/life.dm
@@ -1252,7 +1252,7 @@
else if(no_damage)
health_images += image('icons/mob/screen1_health.dmi',"fullhealth")
- healths_ma.overlays += health_images
+ healths_ma.add_overlay(health_images)
healths.appearance = healths_ma
diff --git a/code/modules/mob/living/carbon/human/species/shadekin/shadekin_abilities.dm b/code/modules/mob/living/carbon/human/species/shadekin/shadekin_abilities.dm
index 16f620ce20..739d456bad 100644
--- a/code/modules/mob/living/carbon/human/species/shadekin/shadekin_abilities.dm
+++ b/code/modules/mob/living/carbon/human/species/shadekin/shadekin_abilities.dm
@@ -93,7 +93,7 @@
var/obj/belly/B = belly
B.escapable = initial(B.escapable)
- //overlays.Cut()
+ //cut_overlays()
invisibility = initial(invisibility)
see_invisible = initial(see_invisible)
incorporeal_move = initial(incorporeal_move)
@@ -148,7 +148,7 @@
sleep(5)
invisibility = INVISIBILITY_LEVEL_TWO
see_invisible = INVISIBILITY_LEVEL_TWO
- //overlays.Cut()
+ //cut_overlays()
update_icon()
alpha = 127
diff --git a/code/modules/mob/living/carbon/human/species/species_shapeshift_vr.dm b/code/modules/mob/living/carbon/human/species/species_shapeshift_vr.dm
index c5d2d72fff..6d09868707 100644
--- a/code/modules/mob/living/carbon/human/species/species_shapeshift_vr.dm
+++ b/code/modules/mob/living/carbon/human/species/species_shapeshift_vr.dm
@@ -175,4 +175,5 @@
var/obj/item/organ/external/L = limb
L.transparent = !L.transparent
visible_message("\The [src]'s interal composition seems to change. ")
- update_icons_body()
\ No newline at end of file
+ update_icons_body()
+ update_hair()
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_embryo.dm b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_embryo.dm
index 59ba73446d..88efb6d355 100644
--- a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_embryo.dm
+++ b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_embryo.dm
@@ -90,9 +90,9 @@
return
if(affected_mob.lying)
- affected_mob.overlays += image('icons/mob/alien.dmi', loc = affected_mob, icon_state = "burst_lie")
+ affected_mob.add_overlay("burst_lie")
else
- affected_mob.overlays += image('icons/mob/alien.dmi', loc = affected_mob, icon_state = "burst_stand")
+ affected_mob.add_overlay("burst_stand")
spawn(6)
var/mob/living/carbon/alien/larva/new_xeno = new(affected_mob.loc)
new_xeno.key = picked
diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm
index b4836d168f..8f57d6443d 100644
--- a/code/modules/mob/living/carbon/human/update_icons.dm
+++ b/code/modules/mob/living/carbon/human/update_icons.dm
@@ -207,7 +207,7 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon()
else
DI = damage_icon_parts[cache_index]
- standing_image.overlays += DI
+ standing_image.add_overlay(DI)
overlays_standing[DAMAGE_LAYER] = standing_image
apply_layer(DAMAGE_LAYER)
@@ -472,14 +472,21 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon()
face_standing.Blend(hair_s, ICON_OVERLAY)
- if(head_organ.nonsolid || head_organ.transparent)
+ if(head_organ.transparent) //VOREStation Edit: Prometheans are not ALWAYS transparent
face_standing += rgb(,,,120)
var/icon/ears_s = get_ears_overlay()
+ var/image/em_block_ears
if(ears_s)
face_standing.Blend(ears_s, ICON_OVERLAY)
+ if(ear_style?.em_block)
+ em_block_ears = em_block_image_generic(image(ears_s))
+
+ var/image/semifinal = image(face_standing, layer = BODY_LAYER+HAIR_LAYER, "pixel_y" = head_organ.head_offset)
+ if(em_block_ears)
+ semifinal.overlays += em_block_ears // Leaving this as overlays +=
- overlays_standing[HAIR_LAYER] = image(face_standing, layer = BODY_LAYER+HAIR_LAYER, "pixel_y" = head_organ.head_offset)
+ overlays_standing[HAIR_LAYER] = semifinal
apply_layer(HAIR_LAYER)
//return //VOREStation Edit
@@ -532,6 +539,7 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon()
else
eyes_icon.Blend(rgb(128,0,0), ICON_ADD)
+ // Convert to emissive at some point
var/image/eyes_image = image(eyes_icon)
eyes_image.plane = PLANE_LIGHTING_ABOVE
eyes_image.appearance_flags = appearance_flags
@@ -566,7 +574,7 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon()
for(var/mut in mutations)
if(mut == LASER)
- standing.overlays += "lasereyes_s" //TODO
+ standing.overlays += "lasereyes_s" // Leaving this as overlays +=
overlays_standing[MUTATIONS_LAYER] = standing
apply_layer(MUTATIONS_LAYER)
@@ -1067,7 +1075,7 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon()
for(var/datum/modifier/M in modifiers)
if(M.mob_overlay_state)
var/image/I = image(icon = 'icons/mob/modifier_effects.dmi', icon_state = M.mob_overlay_state)
- effects.overlays += I //TODO, this compositing is annoying.
+ effects.overlays += I // Leaving this as overlays +=
overlays_standing[MODIFIER_EFFECTS_LAYER] = effects
@@ -1113,7 +1121,7 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon()
for(var/obj/item/organ/external/E in organs)
if(E.open)
var/image/I = image(icon = 'icons/mob/surgery.dmi', icon_state = "[E.icon_name][round(E.open)]", layer = BODY_LAYER+SURGERY_LAYER)
- total.overlays += I //TODO: This compositing is annoying
+ total.overlays += I // Leaving this as overlays +=
if(total.overlays.len)
overlays_standing[SURGERY_LAYER] = total
@@ -1127,7 +1135,9 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon()
if(synthetic && synthetic.includes_wing && !wing_style && !wings_hidden) //VOREStation Edit
var/icon/wing_s = new/icon("icon" = synthetic.icon, "icon_state" = "wing") //I dunno. If synths have some custom wing?
wing_s.Blend(rgb(src.r_skin, src.g_skin, src.b_skin), species.color_mult ? ICON_MULTIPLY : ICON_ADD)
- return image(wing_s)
+ var/image/working = image(wing_s)
+ working.overlays += em_block_image_generic(working) // Leaving this as overlays +=
+ return working
//If you have custom wings selected
if(wing_style && !(wear_suit && wear_suit.flags_inv & HIDETAIL) && !wings_hidden) //VOREStation Edit
@@ -1150,7 +1160,10 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon()
overlay.Blend(rgb(src.r_wing3, src.g_wing3, src.b_wing3), wing_style.color_blend_mode)
wing_s.Blend(overlay, ICON_OVERLAY)
qdel(overlay)
- return image(wing_s)
+ var/image/working = image(wing_s)
+ if(wing_style.em_block)
+ working.overlays += em_block_image_generic(working) // Leaving this as overlays +=
+ return working
/mob/living/carbon/human/proc/get_ears_overlay()
if(ear_style && !(head && (head.flags_inv & BLOCKHEADHAIR)))
@@ -1208,15 +1221,20 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon()
tail_s.Blend(overlay, ICON_OVERLAY)
qdel(overlay)
+ var/image/working = image(tail_s)
+ if(tail_style.em_block)
+ working.overlays += em_block_image_generic(working) // Leaving this as overlays +=
+
if(isTaurTail(tail_style))
var/datum/sprite_accessory/tail/taur/taurtype = tail_style
+ working.pixel_x = -16
if(taurtype.can_ride && !riding_datum)
riding_datum = new /datum/riding/taur(src)
verbs |= /mob/living/carbon/human/proc/taur_mount
verbs |= /mob/living/proc/toggle_rider_reins
- return image(tail_s, "pixel_x" = -16)
+ return working
else
- return image(tail_s)
+ return working
return null
// TODO - Move this to where it should go ~Leshana
diff --git a/code/modules/mob/living/life.dm b/code/modules/mob/living/life.dm
index a88a434d96..90bec77cb7 100644
--- a/code/modules/mob/living/life.dm
+++ b/code/modules/mob/living/life.dm
@@ -238,10 +238,6 @@
set_light(distance, distance * 4, l_color = "#660066")
return TRUE
- else if(on_fire)
- set_light(min(round(fire_stacks), 3), round(fire_stacks), l_color = "#FF9933")
- return TRUE
-
else if(glow_toggle)
set_light(glow_range, glow_intensity, glow_color)
diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm
index b6e6ffc03f..589d9ac6a3 100644
--- a/code/modules/mob/living/living_defense.dm
+++ b/code/modules/mob/living/living_defense.dm
@@ -366,7 +366,7 @@
/mob/living/proc/IgniteMob()
if(fire_stacks > 0 && !on_fire)
on_fire = 1
- handle_light()
+ new/obj/effect/dummy/lighting_obj/moblight/fire(src)
throw_alert("fire", /obj/screen/alert/fire)
update_fire()
@@ -374,7 +374,8 @@
if(on_fire)
on_fire = 0
fire_stacks = 0
- handle_light()
+ for(var/obj/effect/dummy/lighting_obj/moblight/fire/F in src)
+ qdel(F)
clear_alert("fire")
update_fire()
diff --git a/code/modules/mob/living/silicon/ai/multicam.dm b/code/modules/mob/living/silicon/ai/multicam.dm
index c6fd56cb6e..6f83805372 100644
--- a/code/modules/mob/living/silicon/ai/multicam.dm
+++ b/code/modules/mob/living/silicon/ai/multicam.dm
@@ -70,7 +70,7 @@
M.Scale(x_scale, y_scale)
M.Translate(x_off, y_off)
dir.transform = M
- overlays += dir
+ add_overlay(dir)
/obj/screen/movable/pic_in_pic/ai/set_view_size(width, height, do_refresh = TRUE)
if(!aiEye) // Exploit fix
@@ -102,7 +102,7 @@
qdel(src)
return
highlighted = TRUE
- overlays.Cut()
+ cut_overlays()
add_background()
add_buttons()
@@ -113,7 +113,7 @@
qdel(src)
return
highlighted = FALSE
- overlays.Cut()
+ cut_overlays()
add_background()
add_buttons()
diff --git a/code/modules/mob/living/silicon/robot/drone/drone.dm b/code/modules/mob/living/silicon/robot/drone/drone.dm
index b578f18c23..802da6788f 100644
--- a/code/modules/mob/living/silicon/robot/drone/drone.dm
+++ b/code/modules/mob/living/silicon/robot/drone/drone.dm
@@ -143,13 +143,13 @@ var/list/mob_hat_cache = list()
/mob/living/silicon/robot/drone/updateicon()
- overlays.Cut()
+ cut_overlays()
if(stat == 0)
- overlays += "eyes-[icon_state]"
+ add_overlay("eyes-[icon_state]")
else
- overlays -= "eyes"
+ cut_overlay("eyes")
if(hat) // Let the drones wear hats.
- overlays |= get_hat_icon(hat, hat_x_offset, hat_y_offset)
+ add_overlay(get_hat_icon(hat, hat_x_offset, hat_y_offset))
/mob/living/silicon/robot/drone/choose_icon()
return
diff --git a/code/modules/mob/living/silicon/robot/examine_vr.dm b/code/modules/mob/living/silicon/robot/examine_vr.dm
index 9ea0c6c1da..2bebab2665 100644
--- a/code/modules/mob/living/silicon/robot/examine_vr.dm
+++ b/code/modules/mob/living/silicon/robot/examine_vr.dm
@@ -3,7 +3,9 @@
var/list/message_list = list()
for(var/belly in vore_organs)
var/obj/belly/B = belly
- message_list += B.get_examine_msg()
- message_list += B.get_examine_msg_absorbed()
+ var/bellymessage = B.get_examine_msg()
+ if(bellymessage) message_list += bellymessage
+ bellymessage = B.get_examine_msg_absorbed()
+ if(bellymessage) message_list += bellymessage
- return message_list
\ No newline at end of file
+ return message_list
diff --git a/code/modules/mob/living/silicon/robot/life.dm b/code/modules/mob/living/silicon/robot/life.dm
index a34d2f65e7..83bf0a8b1e 100644
--- a/code/modules/mob/living/silicon/robot/life.dm
+++ b/code/modules/mob/living/silicon/robot/life.dm
@@ -359,9 +359,9 @@
return canmove
/mob/living/silicon/robot/update_fire()
- overlays -= image("icon"='icons/mob/OnFire.dmi', "icon_state" = get_fire_icon_state())
+ cut_overlay(image(icon = 'icons/mob/OnFire.dmi', icon_state = get_fire_icon_state()))
if(on_fire)
- overlays += image("icon"='icons/mob/OnFire.dmi', "icon_state" = get_fire_icon_state())
+ add_overlay(image(icon = 'icons/mob/OnFire.dmi', icon_state = get_fire_icon_state()))
/mob/living/silicon/robot/fire_act()
if(!on_fire) //Silicons don't gain stacks from hotspots, but hotspots can ignite them
diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm
index 82bc2e2498..4164b13e24 100644
--- a/code/modules/mob/living/silicon/robot/robot.dm
+++ b/code/modules/mob/living/silicon/robot/robot.dm
@@ -12,6 +12,8 @@
mob_swap_flags = ~HEAVY
mob_push_flags = ~HEAVY //trundle trundle
+ blocks_emissive = EMISSIVE_BLOCK_UNIQUE
+
var/lights_on = 0 // Is our integrated light on?
var/used_power_this_tick = 0
var/sight_mode = 0
diff --git a/code/modules/mob/living/silicon/robot/robot_items.dm b/code/modules/mob/living/silicon/robot/robot_items.dm
index e8077db22f..cbf2caf765 100644
--- a/code/modules/mob/living/silicon/robot/robot_items.dm
+++ b/code/modules/mob/living/silicon/robot/robot_items.dm
@@ -211,7 +211,7 @@
I.loc = src
carrying.Add(I)
- overlays += image("icon" = I.icon, "icon_state" = I.icon_state, "layer" = 30 + I.layer)
+ add_overlay(image("icon" = I.icon, "icon_state" = I.icon_state, "layer" = 30 + I.layer))
addedSomething = 1
if ( addedSomething )
user.visible_message("[user] loads some items onto their service tray. ")
diff --git a/code/modules/mob/living/silicon/robot/subtypes/gravekeeper.dm b/code/modules/mob/living/silicon/robot/subtypes/gravekeeper.dm
index 23e4aa81ea..684dd9feee 100644
--- a/code/modules/mob/living/silicon/robot/subtypes/gravekeeper.dm
+++ b/code/modules/mob/living/silicon/robot/subtypes/gravekeeper.dm
@@ -14,7 +14,7 @@
mmi = new /obj/item/device/mmi/digital/robot(src) // Explicitly a drone.
module = new /obj/item/weapon/robot_module/robot/gravekeeper(src)
- overlays.Cut()
+ cut_overlays()
init_id()
updatename("Gravekeeper")
diff --git a/code/modules/mob/living/silicon/robot/subtypes/lost_drone.dm b/code/modules/mob/living/silicon/robot/subtypes/lost_drone.dm
index 0460226f3f..a485d9cc8a 100644
--- a/code/modules/mob/living/silicon/robot/subtypes/lost_drone.dm
+++ b/code/modules/mob/living/silicon/robot/subtypes/lost_drone.dm
@@ -13,7 +13,7 @@
mmi = new /obj/item/device/mmi/digital/robot(src) // Explicitly a drone.
module = new /obj/item/weapon/robot_module/robot/lost(src)
- overlays.Cut()
+ cut_overlays()
init_id()
updatename("Lost")
diff --git a/code/modules/mob/living/silicon/robot/subtypes/lost_drone_vr.dm b/code/modules/mob/living/silicon/robot/subtypes/lost_drone_vr.dm
index 68c778f0be..ae34c725bd 100644
--- a/code/modules/mob/living/silicon/robot/subtypes/lost_drone_vr.dm
+++ b/code/modules/mob/living/silicon/robot/subtypes/lost_drone_vr.dm
@@ -13,7 +13,7 @@
mmi = new /obj/item/device/mmi/digital/robot(src) // Explicitly a drone.
module = new /obj/item/weapon/robot_module/robot/stray(src)
- overlays.Cut()
+ cut_overlays()
init_id()
updatename("Stray")
diff --git a/code/modules/mob/living/silicon/robot/subtypes/syndicate.dm b/code/modules/mob/living/silicon/robot/subtypes/syndicate.dm
index 00e75248c7..630e0e7cd5 100644
--- a/code/modules/mob/living/silicon/robot/subtypes/syndicate.dm
+++ b/code/modules/mob/living/silicon/robot/subtypes/syndicate.dm
@@ -12,7 +12,7 @@
aiCamera = new/obj/item/device/camera/siliconcam/robot_camera(src)
mmi = new /obj/item/device/mmi/digital/robot(src) // Explicitly a drone.
- overlays.Cut()
+ cut_overlays()
init_id()
updatename("Syndicate")
diff --git a/code/modules/mob/living/silicon/robot/syndicate.dm b/code/modules/mob/living/silicon/robot/syndicate.dm
index c52755e696..18d2b9ce80 100644
--- a/code/modules/mob/living/silicon/robot/syndicate.dm
+++ b/code/modules/mob/living/silicon/robot/syndicate.dm
@@ -18,7 +18,7 @@
aiCamera = new/obj/item/device/camera/siliconcam/robot_camera(src)
laws = new /datum/ai_laws/syndicate_override
- overlays.Cut()
+ cut_overlays()
init_id()
new /obj/item/weapon/robot_module/robot/syndicate(src)
diff --git a/code/modules/mob/living/simple_mob/simple_hud.dm b/code/modules/mob/living/simple_mob/simple_hud.dm
index 5f0c2b3746..513ac1d4e0 100644
--- a/code/modules/mob/living/simple_mob/simple_hud.dm
+++ b/code/modules/mob/living/simple_mob/simple_hud.dm
@@ -166,8 +166,8 @@
zone_sel.icon = ui_style
zone_sel.color = ui_color
zone_sel.alpha = ui_alpha
- zone_sel.overlays.Cut()
- zone_sel.overlays += image('icons/mob/zone_sel.dmi', "[zone_sel.selecting]")
+ zone_sel.cut_overlays()
+ zone_sel.add_overlay(image('icons/mob/zone_sel.dmi', "[zone_sel.selecting]"))
hud_elements |= zone_sel
//Hand things
diff --git a/code/modules/mob/living/simple_mob/simple_mob_vr.dm b/code/modules/mob/living/simple_mob/simple_mob_vr.dm
index 2728e99e23..0914326cf2 100644
--- a/code/modules/mob/living/simple_mob/simple_mob_vr.dm
+++ b/code/modules/mob/living/simple_mob/simple_mob_vr.dm
@@ -106,7 +106,7 @@
if(vore_ignores_undigestable && !M.digestable) //Don't eat people with nogurgle prefs
//ai_log("vr/wont eat [M] because I am picky", 3) //VORESTATION AI TEMPORARY REMOVAL
return 0
- if(!M.allowmobvore) // Don't eat people who don't want to be ate by mobs
+ if(!M.allowmobvore || !M.devourable) // Don't eat people who don't want to be ate by mobs
//ai_log("vr/wont eat [M] because they don't allow mob vore", 3) //VORESTATION AI TEMPORARY REMOVAL
return 0
if(M in prey_excludes) // They're excluded
diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/fish.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/fish.dm
index fe23b86bf7..a4fb4f4078 100644
--- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/fish.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/fish.dm
@@ -180,7 +180,7 @@
update_icon()
/mob/living/simple_mob/animal/passive/fish/icebass/update_icon()
- overlays.Cut()
+ cut_overlays()
..()
if(!dorsal_image)
@@ -253,7 +253,7 @@
update_icon()
/mob/living/simple_mob/animal/passive/fish/rockfish/update_icon()
- overlays.Cut()
+ cut_overlays()
..()
if(!head_image)
head_image = image(icon, "[icon_state]_mask")
diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/pets/cat_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/pets/cat_vr.dm
index a63140ac8a..cac9780d9b 100644
--- a/code/modules/mob/living/simple_mob/subtypes/animal/pets/cat_vr.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/animal/pets/cat_vr.dm
@@ -74,7 +74,7 @@
//Emergency teleport - Until a spriter makes something better
/mob/living/simple_mob/animal/passive/cat/tabiranth/death(gibbed, deathmessage = "teleports away!")
- overlays = list()
+ cut_overlays()
icon_state = ""
flick("kphaseout",src)
spawn(1 SECOND)
diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/pets/dog.dm b/code/modules/mob/living/simple_mob/subtypes/animal/pets/dog.dm
index 189216c32d..2a579487ed 100644
--- a/code/modules/mob/living/simple_mob/subtypes/animal/pets/dog.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/animal/pets/dog.dm
@@ -41,7 +41,7 @@
..()
/mob/living/simple_mob/animal/passive/dog/regenerate_icons()
- overlays = list()
+ cut_overlays()
if(inventory_head)
var/head_icon_state = inventory_head.icon_state
@@ -50,7 +50,7 @@
var/icon/head_icon = image('icons/mob/corgi_head.dmi',head_icon_state)
if(head_icon)
- overlays += head_icon
+ add_overlay(head_icon)
if(inventory_back)
var/back_icon_state = inventory_back.icon_state
@@ -59,7 +59,7 @@
var/icon/back_icon = image('icons/mob/corgi_back.dmi',back_icon_state)
if(back_icon)
- overlays += back_icon
+ add_overlay(back_icon)
return
diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm
index 02a3b9013f..23792b907b 100644
--- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm
@@ -140,7 +140,7 @@
..()
/mob/living/simple_mob/animal/sif/sakimm/update_icon()
- overlays.Cut()
+ cut_overlays()
..()
if(hat)
var/hat_state = hat.item_state ? hat.item_state : hat.icon_state
diff --git a/code/modules/mob/living/simple_mob/subtypes/blob/spore.dm b/code/modules/mob/living/simple_mob/subtypes/blob/spore.dm
index 879db190d8..fa48f57ecf 100644
--- a/code/modules/mob/living/simple_mob/subtypes/blob/spore.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/blob/spore.dm
@@ -87,12 +87,10 @@
if(is_infesting)
icon = infested.icon
copy_overlays(infested)
- // overlays = infested.overlays
var/mutable_appearance/blob_head_overlay = mutable_appearance('icons/mob/blob.dmi', "blob_head")
if(overmind)
blob_head_overlay.color = overmind.blob_type.complementary_color
color = initial(color)//looks better.
- // overlays += blob_head_overlay
add_overlay(blob_head_overlay, TRUE)
/mob/living/simple_mob/blob/spore/handle_special()
diff --git a/code/modules/mob/living/simple_mob/subtypes/occult/constructs/_construct.dm b/code/modules/mob/living/simple_mob/subtypes/occult/constructs/_construct.dm
index ac9e3d20ff..0a0f36d516 100644
--- a/code/modules/mob/living/simple_mob/subtypes/occult/constructs/_construct.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/occult/constructs/_construct.dm
@@ -150,9 +150,9 @@
/mob/living/simple_mob/construct/proc/add_glow()
var/image/eye_glow = image(icon,"glow-[icon_state]")
eye_glow.plane = PLANE_LIGHTING_ABOVE
- overlays += eye_glow
+ add_overlay(eye_glow)
set_light(2, -2, l_color = "#FFFFFF")
/mob/living/simple_mob/construct/proc/remove_glow()
- overlays.Cut()
+ cut_overlays()
*/
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon_abilities.dm b/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon_abilities.dm
index 87200c0caf..56214bf58c 100644
--- a/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon_abilities.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon_abilities.dm
@@ -36,7 +36,7 @@
var/obj/belly/B = belly
B.escapable = initial(B.escapable)
- overlays.Cut()
+ cut_overlays()
alpha = initial(alpha)
invisibility = initial(invisibility)
see_invisible = initial(see_invisible)
@@ -93,7 +93,7 @@
var/obj/belly/B = belly
B.escapable = FALSE
- overlays.Cut()
+ cut_overlays()
flick("phaseout",src)
sleep(30)
invisibility = INVISIBILITY_LEVEL_TWO
@@ -149,7 +149,7 @@
var/obj/belly/B = belly
B.escapable = FALSE
- overlays.Cut()
+ cut_overlays()
flick("phaseout",src)
sleep(30)
invisibility = INVISIBILITY_LEVEL_TWO
@@ -170,7 +170,7 @@
var/obj/belly/B = belly
B.escapable = initial(B.escapable)
- overlays.Cut()
+ cut_overlays()
alpha = initial(alpha)
invisibility = initial(invisibility)
see_invisible = initial(see_invisible)
diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm b/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm
index 319c063f9b..660631471b 100644
--- a/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm
@@ -66,11 +66,11 @@
name = "Virgo 3b Fauna - Phoron Dragon"
desc = "Classification: Phoron Draconinae\
\
- A cousin to the dragons of space, Phoron Dragons are a rare and rather unique site to see in the wilds of Virgo 3b. \
+ A cousin to the dragons of space, Phoron Dragons are a rare and rather unique sight to see in the wilds of Virgo 3b. \
Their terrifying appearance isn't just for looks, the black scales with mutated Phoron deposits in the skin are meant \
- to intimidate and frighten potential prey. They are mainly carnivorus in nature but can survive off of a mixed diet \
- of meats and plant based foods in certain circumstances - usually these circumstances are not ideal for the preadator. \
- It is unknown still how the Phoron Dragon came to be but scientist speculate that common Dragons such as Red Dragons \
+ to intimidate and frighten potential prey. They are mainly carnivorous in nature but can survive off of a mixed diet \
+ of meats and plant based foods in certain circumstances - usually these circumstances are not ideal for the predator. \
+ It is unknown still how the Phoron Dragon came to be but scientists speculate that common Dragons such as Red Dragons \
somehow ended up on Virgo 3b and through a period of evolutionary mutation became the modern day Phoron Dragon.\
\
Female dragons will often lay a clutch of eggs similar to that of other reptilian species after she is properly mated. \
@@ -78,8 +78,8 @@
this time of season have been known to be increasingly hostile. Travellers are warned against traversing in the wilds \
during these seasons because of the increased hostility.\
\
- Unlike their more fiery cousins, these dragons do not breathe flame as it would ignite both the surrounding Phoron and \
- the internal Phoron deposits of its body. Scientist still do not know how or when in the evolutionary chain they devolved \
+ Unlike their more fiery cousins, these dragons do not breathe flames as it would ignite both the surrounding Phoron and \
+ the internal Phoron deposits of its body. Scientists still do not know how or when in the evolutionary chain they lost \
their signature fire breath but it was likely very early in the chain otherwise the entire species would be extinct."
value = CATALOGUER_REWARD_HARD
diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/c_shift.dm b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/c_shift.dm
index 5c37f269d7..bf56fd4e0e 100644
--- a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/c_shift.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/c_shift.dm
@@ -26,7 +26,7 @@
name = real_name
- overlays.Cut()
+ cut_overlays()
alpha = initial(alpha)
invisibility = initial(invisibility)
see_invisible = initial(see_invisible)
@@ -60,7 +60,7 @@
real_name = name
name = "Something"
- overlays.Cut()
+ cut_overlays()
flick("tp_out",src)
sleep(5)
invisibility = INVISIBILITY_LEVEL_TWO
diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/ability_procs.dm b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/ability_procs.dm
index 7020fccd34..689f6cce7b 100644
--- a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/ability_procs.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/ability_procs.dm
@@ -25,7 +25,7 @@
var/obj/belly/B = belly
B.escapable = initial(B.escapable)
- overlays.Cut()
+ cut_overlays()
alpha = initial(alpha)
invisibility = initial(invisibility)
see_invisible = initial(see_invisible)
@@ -80,7 +80,7 @@
var/obj/belly/B = belly
B.escapable = FALSE
- overlays.Cut()
+ cut_overlays()
flick("tp_out",src)
sleep(5)
invisibility = INVISIBILITY_LEVEL_TWO
diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm
index a494d00590..2f275db0f1 100644
--- a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm
@@ -221,7 +221,7 @@
//They phase back to the dark when killed
/mob/living/simple_mob/shadekin/death(gibbed, deathmessage = "phases to somewhere far away!")
- overlays = list()
+ cut_overlays()
icon_state = ""
flick("tp_out",src)
spawn(1 SECOND)
diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/softdog.dm b/code/modules/mob/living/simple_mob/subtypes/vore/softdog.dm
index 6eeeff5c7f..61147bf9b4 100644
--- a/code/modules/mob/living/simple_mob/subtypes/vore/softdog.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/vore/softdog.dm
@@ -129,7 +129,7 @@
B.digest_brute = 0.05
B.digest_burn = 0.05
B.mode_flags = 8
- B.belly_fullscreen = "base"
+ B.belly_fullscreen = "a_tumby"
B.struggle_messages_inside = list(
"Your struggling only causes %pred's doughy gut to smother you against those wrinkled walls...",
"As you squirm, %pred's %belly flexxes over you heavily, forming you back into a small ball...",
@@ -169,6 +169,7 @@
icon_living = "cass"
icon_dead = "cass_dead"
icon_rest = "cass_rest"
+ ic_revivable = 0
faction = "theatre"
gender = PLURAL
@@ -244,4 +245,21 @@
ai_holder_type = /datum/ai_holder/simple_mob/ranged/kiting/threatening/woof
projectiletype = /obj/item/projectile/forcebolt/harmless/awoobolt
- projectilesound = 'sound/voice/long_awoo.ogg'
\ No newline at end of file
+ projectilesound = 'sound/voice/long_awoo.ogg'
+
+/mob/living/simple_mob/vore/woof/cass/attack_hand(mob/living/carbon/human/M as mob)
+ if(stat != DEAD)
+ return ..()
+ if(M.a_intent == I_HELP)
+ M.visible_message("[M] pets [src].", runemessage = "pets [src]")
+ if(do_after(M, 30 SECONDS, exclusive = 1, target = src))
+ faction = M.faction
+ revive()
+ sight = initial(sight)
+ see_in_dark = initial(see_in_dark)
+ see_invisible = initial(see_invisible)
+ update_icon()
+ visible_message("[src] stops playing dead.", runemessage = "[src] stops playing dead")
+ else
+ M.visible_message("The petting was interrupted!!!", runemessage = "The petting was interrupted")
+ return
\ No newline at end of file
diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm
index 90f6943a8c..a0ca4cd492 100644
--- a/code/modules/mob/mob_defines.dm
+++ b/code/modules/mob/mob_defines.dm
@@ -3,6 +3,7 @@
layer = MOB_LAYER
plane = MOB_PLANE
animate_movement = 2
+ blocks_emissive = EMISSIVE_BLOCK_GENERIC
var/datum/mind/mind
var/stat = 0 //Whether a mob is alive or dead. TODO: Move this to living - Nodrak
diff --git a/code/modules/mob/mob_planes.dm b/code/modules/mob/mob_planes.dm
index 1d557e4e51..cfd4a91729 100644
--- a/code/modules/mob/mob_planes.dm
+++ b/code/modules/mob/mob_planes.dm
@@ -16,6 +16,8 @@
// 'Utility' planes
plane_masters[VIS_FULLBRIGHT] = new /obj/screen/plane_master/fullbright //Lighting system (lighting_overlay objects)
plane_masters[VIS_LIGHTING] = new /obj/screen/plane_master/lighting //Lighting system (but different!)
+ plane_masters[VIS_O_LIGHT] = new /obj/screen/plane_master/o_light_visual //Object lighting (using masks)
+ plane_masters[VIS_EMISSIVE] = new /obj/screen/plane_master/emissive //Emissive overlays
plane_masters[VIS_GHOSTS] = new /obj/screen/plane_master/ghosts //Ghosts!
plane_masters[VIS_AI_EYE] = new /obj/screen/plane_master{plane = PLANE_AI_EYE} //AI Eye!
@@ -48,6 +50,9 @@
..()
+ for(var/obj/screen/plane_master/PM as anything in plane_masters)
+ PM.backdrop(my_mob)
+
/datum/plane_holder/Destroy()
my_mob = null
QDEL_LIST_NULL(plane_masters) //Goodbye my children, be free
@@ -106,14 +111,17 @@
for(var/SP in subplanes)
alter_values(SP, values)
+
+
+
////////////////////
// The Plane Master
////////////////////
/obj/screen/plane_master
- screen_loc = "1,1"
+ screen_loc = "CENTER"
plane = -100 //Dodge just in case someone instantiates one of these accidentally, don't end up on 0 with plane_master
appearance_flags = PLANE_MASTER
- mouse_opacity = 0 //Normally unclickable
+ mouse_opacity = MOUSE_OPACITY_TRANSPARENT //Normally unclickable
alpha = 0 //Hidden from view
var/desired_alpha = 255 //What we go to when we're enabled
var/invis_toggle = FALSE
@@ -122,6 +130,8 @@
/obj/screen/plane_master/New()
..(null) //Never be in anything ever.
+/obj/screen/plane_master/proc/backdrop(mob/mymob)
+
/obj/screen/plane_master/proc/set_desired_alpha(var/new_alpha)
if(new_alpha != alpha && new_alpha > 0 && new_alpha <= 255)
desired_alpha = new_alpha
@@ -176,6 +186,43 @@
blend_mode = BLEND_MULTIPLY
alpha = 255
+/obj/screen/plane_master/lighting/backdrop(mob/mymob)
+ /* I'm unconvinced.
+ mymob.overlay_fullscreen("lighting_backdrop_lit", /obj/screen/fullscreen/lighting_backdrop/lit)
+ mymob.overlay_fullscreen("lighting_backdrop_unlit", /obj/screen/fullscreen/lighting_backdrop/unlit)
+ */
+
+/*!
+ * This system works by exploiting BYONDs color matrix filter to use layers to handle emissive blockers.
+ *
+ * Emissive overlays are pasted with an atom color that converts them to be entirely some specific color.
+ * Emissive blockers are pasted with an atom color that converts them to be entirely some different color.
+ * Emissive overlays and emissive blockers are put onto the same plane.
+ * The layers for the emissive overlays and emissive blockers cause them to mask eachother similar to normal BYOND objects.
+ * A color matrix filter is applied to the emissive plane to mask out anything that isn't whatever the emissive color is.
+ * This is then used to alpha mask the lighting plane.
+ */
+
+/obj/screen/plane_master/lighting/Initialize()
+ . = ..()
+ add_filter("emissives", 1, alpha_mask_filter(render_source = EMISSIVE_RENDER_TARGET, flags = MASK_INVERSE))
+ add_filter("object_lighting", 2, alpha_mask_filter(render_source = O_LIGHTING_VISUAL_RENDER_TARGET, flags = MASK_INVERSE))
+
+/obj/screen/plane_master/o_light_visual
+ plane = PLANE_O_LIGHTING_VISUAL
+ render_target = O_LIGHTING_VISUAL_RENDER_TARGET
+ blend_mode = BLEND_MULTIPLY
+ alpha = 255
+
+/obj/screen/plane_master/emissive
+ plane = PLANE_EMISSIVE
+ render_target = EMISSIVE_RENDER_TARGET
+ alpha = 255
+
+/obj/screen/plane_master/emissive/Initialize()
+ . = ..()
+ add_filter("em_block_masking", 1, color_matrix_filter(GLOB.em_mask_matrix))
+
/////////////////
//Ghosts has a special alpha level
/obj/screen/plane_master/ghosts
diff --git a/code/modules/mob/mob_planes_vr.dm b/code/modules/mob/mob_planes_vr.dm
index 5d41209b19..1c47b13e72 100644
--- a/code/modules/mob/mob_planes_vr.dm
+++ b/code/modules/mob/mob_planes_vr.dm
@@ -1,11 +1,12 @@
/datum/plane_holder/New(mob/this_guy)
- ..()
+ my_mob = this_guy
plane_masters[VIS_CH_STATUS_R] = new /obj/screen/plane_master{plane = PLANE_CH_STATUS_R} //Right-side status icon
plane_masters[VIS_CH_HEALTH_VR] = new /obj/screen/plane_master{plane = PLANE_CH_HEALTH_VR} //Health bar but transparent at 100
plane_masters[VIS_CH_BACKUP] = new /obj/screen/plane_master{plane = PLANE_CH_BACKUP} //Backup implant status
plane_masters[VIS_CH_VANTAG] = new /obj/screen/plane_master{plane = PLANE_CH_VANTAG} //Vore Antags
plane_masters[VIS_AUGMENTED] = new /obj/screen/plane_master/augmented(my_mob) //Augmented reality
+ ..()
/////////////////
//AR planemaster does some special image handling
diff --git a/code/modules/mob/new_player/sprite_accessories.dm b/code/modules/mob/new_player/sprite_accessories.dm
index 1a13a7ed62..1e7184f965 100644
--- a/code/modules/mob/new_player/sprite_accessories.dm
+++ b/code/modules/mob/new_player/sprite_accessories.dm
@@ -39,6 +39,9 @@
// Ckey of person allowed to use this, if defined.
var/list/ckeys_allowed = null
+ /// Should this sprite block emissives?
+ var/em_block = FALSE
+
/*
////////////////////////////
/ =--------------------= /
@@ -1519,6 +1522,7 @@ shaved
/datum/sprite_accessory/facial_hair
icon = 'icons/mob/Human_face.dmi'
color_blend_mode = ICON_ADD
+ em_block = TRUE
/datum/sprite_accessory/facial_hair/shaved
name = "Shaved"
diff --git a/code/modules/mob/new_player/sprite_accessories_ear.dm b/code/modules/mob/new_player/sprite_accessories_ear.dm
index 24e82043e4..fbf59a0fec 100644
--- a/code/modules/mob/new_player/sprite_accessories_ear.dm
+++ b/code/modules/mob/new_player/sprite_accessories_ear.dm
@@ -14,6 +14,7 @@
var/extra_overlay // Icon state of an additional overlay to blend in.
var/extra_overlay2
var/desc = "You should not see this..."
+ em_block = TRUE
species_allowed = list(SPECIES_EVENT1, SPECIES_EVENT2, SPECIES_EVENT3)
diff --git a/code/modules/mob/new_player/sprite_accessories_tail.dm b/code/modules/mob/new_player/sprite_accessories_tail.dm
index dec9513974..f2d6fce636 100644
--- a/code/modules/mob/new_player/sprite_accessories_tail.dm
+++ b/code/modules/mob/new_player/sprite_accessories_tail.dm
@@ -11,6 +11,7 @@
do_colouration = 0 //Set to 1 to enable coloration using the tail color.
color_blend_mode = ICON_ADD // Only appliciable if do_coloration = 1
+ em_block = TRUE
var/extra_overlay // Icon state of an additional overlay to blend in.
var/extra_overlay2 //Tertiary.
var/show_species_tail = 0 // If false, do not render species' tail.
diff --git a/code/modules/mob/new_player/sprite_accessories_taur.dm b/code/modules/mob/new_player/sprite_accessories_taur.dm
index dad54ed188..59f8f8f4d7 100644
--- a/code/modules/mob/new_player/sprite_accessories_taur.dm
+++ b/code/modules/mob/new_player/sprite_accessories_taur.dm
@@ -123,6 +123,7 @@
icon = 'icons/mob/human_races/sprite_accessories/taurs.dmi'
do_colouration = 1 // Yes color, using tail color
color_blend_mode = ICON_MULTIPLY // The sprites for taurs are designed for ICON_MULTIPLY
+ em_block = TRUE
var/icon/suit_sprites = null //File for suit sprites, if any.
var/icon/under_sprites = null
diff --git a/code/modules/mob/new_player/sprite_accessories_wing.dm b/code/modules/mob/new_player/sprite_accessories_wing.dm
index 486e81f4b1..85bdedd04a 100644
--- a/code/modules/mob/new_player/sprite_accessories_wing.dm
+++ b/code/modules/mob/new_player/sprite_accessories_wing.dm
@@ -11,6 +11,7 @@
do_colouration = 0 //Set to 1 to enable coloration using the tail color.
color_blend_mode = ICON_ADD // Only appliciable if do_coloration = 1
+ em_block = TRUE
var/extra_overlay // Icon state of an additional overlay to blend in.
var/extra_overlay2 //Tertiary.
var/clothing_can_hide = 1 // If true, clothing with HIDETAIL hides it. If the clothing is bulky enough to hide a tail, it should also hide wings.
diff --git a/code/modules/modular_computers/computers/modular_computer/core.dm b/code/modules/modular_computers/computers/modular_computer/core.dm
index d4b311e8e2..8639aadb63 100644
--- a/code/modules/modular_computers/computers/modular_computer/core.dm
+++ b/code/modules/modular_computers/computers/modular_computer/core.dm
@@ -72,22 +72,34 @@
/obj/item/modular_computer/update_icon()
icon_state = icon_state_unpowered
- overlays.Cut()
+ cut_overlays()
+
+ . = list()
+
if(bsod)
- overlays += image(icon = overlay_icon, icon_state = "bsod")
- return
+ . += mutable_appearance(overlay_icon, "bsod")
+ . += emissive_appearance(overlay_icon, "bsod")
+ return add_overlay(.)
if(!enabled)
if(icon_state_screensaver)
- overlays += image(icon = overlay_icon, icon_state = icon_state_screensaver)
+ . += mutable_appearance(overlay_icon, icon_state_screensaver)
+ . += emissive_appearance(overlay_icon, icon_state_screensaver)
set_light(0)
- return
+ return add_overlay(.)
+
set_light(light_strength)
+
if(active_program)
- overlays += image(icon = overlay_icon, icon_state = active_program.program_icon_state ? active_program.program_icon_state : icon_state_menu)
+ var/program_state = active_program.program_icon_state ? active_program.program_icon_state : icon_state_menu
+ . += mutable_appearance(overlay_icon, program_state)
+ . += emissive_appearance(overlay_icon, program_state)
if(active_program.program_key_state)
- overlays += image(icon = overlay_icon, icon_state = active_program.program_key_state)
+ . += mutable_appearance(overlay_icon, active_program.program_key_state)
else
- overlays += image(icon = overlay_icon, icon_state = icon_state_menu)
+ . += mutable_appearance(overlay_icon, icon_state_menu)
+ . += emissive_appearance(overlay_icon, icon_state_menu)
+
+ return add_overlay(.)
/obj/item/modular_computer/proc/turn_on(var/mob/user)
if(bsod)
diff --git a/code/modules/modular_computers/computers/modular_computer/variables.dm b/code/modules/modular_computers/computers/modular_computer/variables.dm
index 373d2ad3e1..59c45f993a 100644
--- a/code/modules/modular_computers/computers/modular_computer/variables.dm
+++ b/code/modules/modular_computers/computers/modular_computer/variables.dm
@@ -24,6 +24,7 @@
// If you create a program which is limited to Laptops and Consoles you don't have to add it's icon_state overlay for Tablets too, for example.
icon = null // This thing isn't meant to be used on it's own. Subtypes should supply their own icon.
+ blocks_emissive = FALSE
var/overlay_icon = null // Icon file used for overlays
icon_state = null
center_of_mass = null // No pixelshifting by placing on tables, etc.
diff --git a/code/modules/modular_computers/computers/subtypes/dev_laptop.dm b/code/modules/modular_computers/computers/subtypes/dev_laptop.dm
index 156d67525b..a09b432af8 100644
--- a/code/modules/modular_computers/computers/subtypes/dev_laptop.dm
+++ b/code/modules/modular_computers/computers/subtypes/dev_laptop.dm
@@ -41,7 +41,7 @@
if(anchored)
..()
else
- overlays.Cut()
+ cut_overlays()
set_light(0) // No glow from closed laptops
icon_state = icon_state_closed
diff --git a/code/modules/multiz/turf.dm b/code/modules/multiz/turf.dm
index 77885e7ce5..15c000cdc5 100644
--- a/code/modules/multiz/turf.dm
+++ b/code/modules/multiz/turf.dm
@@ -127,7 +127,7 @@
temp2.icon_state = null
temp2.plane = src.plane
temp2.color = O.color
- temp2.overlays += O.overlays
+ temp2.overlays = get_overlays(O, TRUE)
// TODO Is pixelx/y needed?
o_img += temp2
add_overlay(o_img)
diff --git a/code/modules/multiz/zshadow.dm b/code/modules/multiz/zshadow.dm
index e43ab21939..3b6efa34d0 100644
--- a/code/modules/multiz/zshadow.dm
+++ b/code/modules/multiz/zshadow.dm
@@ -117,10 +117,10 @@
if(!typing_indicator)
init_typing_indicator("typing")
if(state && !typing)
- overlays += typing_indicator
+ add_overlay(typing_indicator)
typing = 1
else if(!state && typing)
- overlays -= typing_indicator
+ cut_overlay(typing_indicator)
typing = 0
if(shadow)
shadow.set_typing_indicator(state)
diff --git a/code/modules/organs/blood.dm b/code/modules/organs/blood.dm
index f1214708f1..f0d1c826ec 100644
--- a/code/modules/organs/blood.dm
+++ b/code/modules/organs/blood.dm
@@ -361,7 +361,7 @@ proc/blood_splatter(var/target,var/datum/reagent/blood/source,var/large)
var/obj/effect/decal/cleanable/blood/drip/drop = B
if(istype(drop) && drips && drips.len && !large)
- drop.overlays |= drips
+ drop.add_overlay(drips)
drop.drips |= drips
// If there's no data to copy, call it quits here.
diff --git a/code/modules/organs/organ_icon.dm b/code/modules/organs/organ_icon.dm
index 43b4e35788..7216540734 100644
--- a/code/modules/organs/organ_icon.dm
+++ b/code/modules/organs/organ_icon.dm
@@ -9,7 +9,7 @@ var/global/list/limb_icon_cache = list()
for(var/obj/item/organ/external/organ in contents)
if(organ.children && organ.children.len)
for(var/obj/item/organ/external/child in organ.children)
- overlays += child.mob_icon
+ add_overlay(child.mob_icon)
add_overlay(organ.mob_icon)
/obj/item/organ/external/proc/sync_colour_to_human(var/mob/living/carbon/human/human)
diff --git a/code/modules/overmap/overmap_planet.dm b/code/modules/overmap/overmap_planet.dm
index 28a8bf10d1..dcb8fc1af3 100644
--- a/code/modules/overmap/overmap_planet.dm
+++ b/code/modules/overmap/overmap_planet.dm
@@ -22,29 +22,29 @@
/obj/effect/overmap/visitable/planet/get_skybox_representation()
var/image/skybox_image = image('icons/skybox/planet.dmi', "")
- skybox_image.overlays += get_base_image()
+ skybox_image.add_overlay(get_base_image())
// for(var/datum/exoplanet_theme/theme in themes)
-// skybox_image.overlays += theme.get_planet_image_extra()
+// skybox_image.add_overlay(theme.get_planet_image_extra())
if(mountain_color)
var/image/mountains = image('icons/skybox/planet.dmi', "mountains")
mountains.color = mountain_color
mountains.appearance_flags = PIXEL_SCALE
- skybox_image.overlays += mountains
+ skybox_image.add_overlay(mountains)
if(water_color)
var/image/water = image('icons/skybox/planet.dmi', "water")
water.color = water_color
water.appearance_flags = PIXEL_SCALE
// water.transform = water.transform.Turn(rand(0,360))
- skybox_image.overlays += water
+ skybox_image.add_overlay(water)
if(icecaps)
var/image/ice = image('icons/skybox/planet.dmi', icecaps)
ice.color = ice_color
ice.appearance_flags = PIXEL_SCALE
- skybox_image.overlays += ice
+ skybox_image.add_overlay(ice)
if(atmosphere && atmosphere.return_pressure() > SOUND_MINIMUM_PRESSURE)
@@ -55,20 +55,20 @@
var/image/clouds = image('icons/skybox/planet.dmi', "weak_clouds")
if(water_color)
- clouds.overlays += image('icons/skybox/planet.dmi', "clouds")
+ clouds.add_overlay(image('icons/skybox/planet.dmi', "clouds"))
clouds.color = atmo_color
- skybox_image.overlays += clouds
+ skybox_image.add_overlay(clouds)
var/image/atmo = image('icons/skybox/planet.dmi', "atmoring")
skybox_image.underlays += atmo
var/image/shadow = image('icons/skybox/planet.dmi', "shadow")
shadow.blend_mode = BLEND_MULTIPLY
- skybox_image.overlays += shadow
+ skybox_image.add_overlay(shadow)
var/image/light = image('icons/skybox/planet.dmi', "lightrim")
- skybox_image.overlays += light
+ skybox_image.add_overlay(light)
if(has_rings)
var/image/rings = image('icons/skybox/planet_rings.dmi')
@@ -79,7 +79,7 @@
rings.color = ring_color
rings.pixel_x = -128
rings.pixel_y = -128
- skybox_image.overlays += rings
+ skybox_image.add_overlay(rings)
skybox_image.pixel_x = rand(0,64) + skybox_offset_x
skybox_image.pixel_y = rand(128,256) + skybox_offset_y
diff --git a/code/modules/paperwork/clipboard.dm b/code/modules/paperwork/clipboard.dm
index 64f02d2188..5aeb72639b 100644
--- a/code/modules/paperwork/clipboard.dm
+++ b/code/modules/paperwork/clipboard.dm
@@ -34,13 +34,13 @@
return
/obj/item/weapon/clipboard/update_icon()
- overlays.Cut()
+ cut_overlays()
if(toppaper)
- overlays += toppaper.icon_state
- overlays += toppaper.overlays
+ add_overlay(toppaper.icon_state)
+ add_overlay(toppaper.overlays)
if(haspen)
- overlays += "clipboard_pen"
- overlays += "clipboard_over"
+ add_overlay("clipboard_pen")
+ add_overlay("clipboard_over")
return
/obj/item/weapon/clipboard/attackby(obj/item/weapon/W as obj, mob/user as mob)
diff --git a/code/modules/paperwork/folders.dm b/code/modules/paperwork/folders.dm
index 4b36c81ceb..c8869817ce 100644
--- a/code/modules/paperwork/folders.dm
+++ b/code/modules/paperwork/folders.dm
@@ -57,9 +57,9 @@
icon_state = "folder_hos"
/obj/item/weapon/folder/update_icon()
- overlays.Cut()
+ cut_overlays()
if(contents.len)
- overlays += "folder_paper"
+ add_overlay("folder_paper")
return
/obj/item/weapon/folder/attackby(obj/item/weapon/W as obj, mob/user as mob)
diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm
index 4d3b2d27c5..f0a27983e6 100644
--- a/code/modules/paperwork/paper.dm
+++ b/code/modules/paperwork/paper.dm
@@ -318,7 +318,7 @@
stamps = null
free_space = MAX_PAPER_MESSAGE_LEN
stamped = list()
- overlays.Cut()
+ cut_overlays()
updateinfolinks()
update_icon()
@@ -625,7 +625,7 @@
if(!stamped)
stamped = new
stamped += P.type
- overlays += stampoverlay
+ add_overlay(stampoverlay)
playsound(src, 'sound/bureaucracy/stamp.ogg', 50, 1)
to_chat(user, "You stamp the paper with your rubber stamp. ")
diff --git a/code/modules/paperwork/paper_bundle.dm b/code/modules/paperwork/paper_bundle.dm
index 5c5eb14a57..24aeae6c71 100644
--- a/code/modules/paperwork/paper_bundle.dm
+++ b/code/modules/paperwork/paper_bundle.dm
@@ -217,7 +217,7 @@
/obj/item/weapon/paper_bundle/update_icon()
var/obj/item/weapon/paper/P = pages[1]
icon_state = P.icon_state
- overlays = P.overlays
+ copy_overlays(P)
underlays = 0
var/i = 0
var/photo
@@ -235,12 +235,12 @@
var/obj/item/weapon/photo/Ph = O
img = Ph.tiny
photo = 1
- overlays += img
+ add_overlay(img)
if(i>1)
desc = "[i] papers clipped to each other."
else
desc = "A single sheet of paper."
if(photo)
desc += "\nThere is a photo attached to it."
- overlays += image('icons/obj/bureaucracy.dmi', "clip")
+ add_overlay(image('icons/obj/bureaucracy.dmi', "clip"))
return
\ No newline at end of file
diff --git a/code/modules/paperwork/paperplane.dm b/code/modules/paperwork/paperplane.dm
index 3b4833a533..65c3bff6bf 100644
--- a/code/modules/paperwork/paperplane.dm
+++ b/code/modules/paperwork/paperplane.dm
@@ -35,7 +35,7 @@
return ..()
/obj/item/weapon/paperplane/update_icon()
- overlays.Cut()
+ cut_overlays()
var/list/stamped = internalPaper.stamped
if(!stamped)
stamped = new
@@ -43,7 +43,7 @@
for(var/S in stamped)
var/obj/item/weapon/stamp/ = S
var/image/stampoverlay = image('icons/obj/bureaucracy.dmi', "paperplane_[initial(stamp.icon_state)]")
- overlays += stampoverlay
+ add_overlay(stampoverlay)
/obj/item/weapon/paperplane/attack_self(mob/user)
to_chat(user, "You unfold [src]. ")
diff --git a/code/modules/paperwork/papershredder.dm b/code/modules/paperwork/papershredder.dm
index f5fae97d83..223608f0aa 100644
--- a/code/modules/paperwork/papershredder.dm
+++ b/code/modules/paperwork/papershredder.dm
@@ -126,15 +126,15 @@
update_icon()
/obj/machinery/papershredder/update_icon()
- overlays.Cut()
+ cut_overlays()
if(operable())
icon_state = "shredder-on"
else
icon_state = "shredder-off"
// Fullness overlay
- overlays += "shredder-[max(0,min(5,FLOOR(paperamount/max_paper*5, 1)))]"
+ add_overlay("shredder-[max(0,min(5,FLOOR(paperamount/max_paper*5, 1)))]")
if (panel_open)
- overlays += "panel_open"
+ add_overlay("panel_open")
//
// Shredded Paper Item
diff --git a/code/modules/paperwork/photocopier.dm b/code/modules/paperwork/photocopier.dm
index 441b0bcbb6..0ac1a96e19 100644
--- a/code/modules/paperwork/photocopier.dm
+++ b/code/modules/paperwork/photocopier.dm
@@ -220,7 +220,7 @@
img = image('icons/obj/bureaucracy.dmi', "paper_stamp-dots")
img.pixel_x = copy.offset_x[j]
img.pixel_y = copy.offset_y[j]
- c.overlays += img
+ c.add_overlay(img)
c.updateinfolinks()
if(need_toner)
toner--
diff --git a/code/modules/pda/app.dm b/code/modules/pda/app.dm
index 99c9822019..93245c2a85 100644
--- a/code/modules/pda/app.dm
+++ b/code/modules/pda/app.dm
@@ -41,14 +41,14 @@
pda.play_ringtone()
if(blink && !(src in pda.notifying_programs))
- pda.overlays += image(icon, "pda-r")
+ pda.add_overlay("pda-r")
pda.notifying_programs |= src
/datum/data/pda/proc/unnotify()
if(src in pda.notifying_programs)
pda.notifying_programs -= src
if(!pda.notifying_programs.len)
- pda.overlays -= image(icon, "pda-r")
+ pda.cut_overlay("pda-r")
// An app has a button on the home screen and its own UI
/datum/data/pda/app
diff --git a/code/modules/pda/pda.dm b/code/modules/pda/pda.dm
index 298e8efd13..2755e09d3f 100644
--- a/code/modules/pda/pda.dm
+++ b/code/modules/pda/pda.dm
@@ -300,7 +300,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
if(can_use(usr))
start_program(find_program(/datum/data/pda/app/main_menu))
notifying_programs.Cut()
- overlays -= image(icon, "pda-r")
+ cut_overlay("pda-r")
to_chat(usr, "You press the reset button on \the [src]. ")
else
to_chat(usr, "You cannot do this while restrained. ")
diff --git a/code/modules/persistence/noticeboard.dm b/code/modules/persistence/noticeboard.dm
index 760c0979ed..8730416435 100644
--- a/code/modules/persistence/noticeboard.dm
+++ b/code/modules/persistence/noticeboard.dm
@@ -178,33 +178,33 @@
P.name = "Memo RE: proper analysis procedure"
P.info = " We keep test dummies in pens here for a reason, so standard procedure should be to activate newfound alien artifacts and place the two in close proximity. Promising items I might even approve monkey testing on."
P.stamped = list(/obj/item/weapon/stamp/rd)
- P.overlays = list("paper_stamped_rd")
+ P.add_overlay("paper_stamped_rd")
contents += P
P = new()
P.name = "Memo RE: materials gathering"
P.info = "Corasang, the hands-on approach to gathering our samples may very well be slow at times, but it's safer than allowing the blundering miners to roll willy-nilly over our dig sites in their mechs, destroying everything in the process. And don't forget the escavation tools on your way out there! - R.W"
P.stamped = list(/obj/item/weapon/stamp/rd)
- P.overlays = list("paper_stamped_rd")
+ P.add_overlay("paper_stamped_rd")
contents += P
P = new()
P.name = "Memo RE: ethical quandaries"
P.info = "Darion- I don't care what his rank is, our business is that of science and knowledge - questions of moral application do not come into this. Sure, so there are those who would employ the energy-wave particles my modified device has managed to abscond for their own personal gain, but I can hardly see the practical benefits of some of these artifacts our benefactors left behind. Ward--"
P.stamped = list(/obj/item/weapon/stamp/rd)
- P.overlays = list("paper_stamped_rd")
+ P.add_overlay("paper_stamped_rd")
contents += P
P = new()
P.name = "READ ME! Before you people destroy any more samples"
P.info = "how many times do i have to tell you people, these xeno-arch samples are del-i-cate, and should be handled so! careful application of a focussed, concentrated heat or some corrosive liquids should clear away the extraneous carbon matter, while application of an energy beam will most decidedly destroy it entirely - like someone did to the chemical dispenser! W, the one who signs your paychecks "
P.stamped = list(/obj/item/weapon/stamp/rd)
- P.overlays = list("paper_stamped_rd")
+ P.add_overlay("paper_stamped_rd")
contents += P
P = new()
P.name = "Reminder regarding the anomalous material suits"
P.info = "Do you people think the anomaly suits are cheap to come by? I'm about a hair trigger away from instituting a log book for the damn things. Only wear them if you're going out for a dig, and for god's sake don't go tramping around in them unless you're field testing something, R"
P.stamped = list(/obj/item/weapon/stamp/rd)
- P.overlays = list("paper_stamped_rd")
+ P.add_overlay("paper_stamped_rd")
contents += P
\ No newline at end of file
diff --git a/code/modules/planet/planet.dm b/code/modules/planet/planet.dm
index b069e2fdda..293a64c9fb 100644
--- a/code/modules/planet/planet.dm
+++ b/code/modules/planet/planet.dm
@@ -10,10 +10,10 @@
var/sun_last_process = null // world.time
var/datum/weather_holder/weather_holder
+ var/datum/sun_holder/sun_holder
var/sun_position = 0 // 0 means midnight, 1 means noon.
- var/list/sun = list("range","brightness","color","lum_r","lum_g","lum_b")
- var/list/datum/lighting_corner/sunlit_corners = list()
+ var/list/sun = list("range","brightness","color")
var/list/expected_z_levels = list()
var/turf/unsimulated/wall/planetary/planetary_wall_type = /turf/unsimulated/wall/planetary
@@ -31,6 +31,7 @@
/datum/planet/New()
..()
weather_holder = new(src)
+ sun_holder = new(src)
current_time = current_time.make_random_time()
if(moon_name)
moon_phase = pick(list(
diff --git a/code/modules/planet/sif.dm b/code/modules/planet/sif.dm
index cefc549d2a..96cfb548ac 100644
--- a/code/modules/planet/sif.dm
+++ b/code/modules/planet/sif.dm
@@ -1,8 +1,5 @@
var/datum/planet/sif/planet_sif = null
-/datum/planet/sif
- name = "Sif"
-
/datum/planet/sif
name = "Sif"
desc = "Sif is a terrestrial planet in the Vir system. It is somewhat earth-like, in that it has oceans, a \
diff --git a/code/modules/planet/sun.dm b/code/modules/planet/sun.dm
new file mode 100644
index 0000000000..55f739d217
--- /dev/null
+++ b/code/modules/planet/sun.dm
@@ -0,0 +1,53 @@
+/datum/sun_holder
+ var/atom/movable/sun_visuals/sun = new
+ var/datum/planet/our_planet
+
+/datum/sun_holder/New(var/source)
+ our_planet = source
+
+/datum/sun_holder/proc/update_color(new_color)
+ sun.color = new_color
+
+/datum/sun_holder/proc/update_brightness(new_brightness)
+ sun.alpha = round(CLAMP01(new_brightness)*255,1)
+
+/datum/sun_holder/proc/apply_to_turf(turf/T)
+ if(sun in T.vis_contents)
+ warning("Was asked to add fake sun to [T.x], [T.y], [T.z] despite already having us in it's vis contents")
+ return
+ T.vis_contents += sun
+
+/datum/sun_holder/proc/remove_from_turf(turf/T)
+ if(!(sun in T.vis_contents))
+ warning("Was asked to remove fake sun from [T.x], [T.y], [T.z] despite it not having us in it's vis contents")
+ return
+ T.vis_contents -= sun
+
+/datum/sun_holder/proc/rainbow()
+ var/end = world.time + 30 SECONDS
+
+ var/col_index = 1
+
+ var/list/colors = list("#ff5d5d","#ffd17b","#ffff5e","#7eff7e","#6868ff","#b753ff","#d08fff","#ffffff")
+ var/original_brightness = sun.alpha/255
+ var/original_color = sun.color
+
+ update_brightness(0.8)
+
+ while(world.time < end)
+ update_color(colors[col_index])
+ if(++col_index > colors.len)
+ col_index = 1
+ sleep(3)
+
+ update_brightness(original_brightness)
+ update_color(original_color)
+
+// Holds a full white icon that can be mutated to make sun on the O_LIGHTING plane
+/atom/movable/sun_visuals
+ icon = 'icons/mob/screen_gen.dmi'
+ icon_state = "flash"
+ plane = PLANE_O_LIGHTING_VISUAL
+ mouse_opacity = 0
+ alpha = 0
+ color = "#FFFFFF"
diff --git a/code/modules/planet/weather.dm b/code/modules/planet/weather.dm
index c5202ab067..48953a97f1 100644
--- a/code/modules/planet/weather.dm
+++ b/code/modules/planet/weather.dm
@@ -23,6 +23,20 @@
visuals = new()
special_visuals = new()
+/datum/weather_holder/proc/apply_to_turf(turf/T)
+ if(visuals in T.vis_contents)
+ warning("Was asked to add weather to [T.x], [T.y], [T.z] despite already having us in it's vis contents")
+ return
+ T.vis_contents += visuals
+ T.vis_contents += special_visuals
+
+/datum/weather_holder/proc/remove_from_turf(turf/T)
+ if(!(visuals in T.vis_contents))
+ warning("Was asked to remove weather from [T.x], [T.y], [T.z] despite it not having us in it's vis contents")
+ return
+ T.vis_contents -= visuals
+ T.vis_contents -= special_visuals
+
/datum/weather_holder/proc/change_weather(var/new_weather)
var/old_light_modifier = null
var/datum/weather/old_weather = null
diff --git a/code/modules/power/antimatter/shielding.dm b/code/modules/power/antimatter/shielding.dm
index 2b7b881b09..5c39d8e150 100644
--- a/code/modules/power/antimatter/shielding.dm
+++ b/code/modules/power/antimatter/shielding.dm
@@ -108,14 +108,14 @@ proc/cardinalrange(var/center)
/obj/machinery/am_shielding/update_icon()
- overlays.Cut()
+ cut_overlays()
for(var/direction in alldirs)
var/machine = locate(/obj/machinery, get_step(loc, direction))
if((istype(machine, /obj/machinery/am_shielding) && machine:control_unit == control_unit)||(istype(machine, /obj/machinery/power/am_control_unit) && machine == control_unit))
- overlays += "shield_[direction]"
+ add_overlay("shield_[direction]")
if(core_check())
- overlays += "core"
+ add_overlay("core")
if(!processing) setup_core()
else if(processing) shutdown_core()
diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm
index 3b228d5ad7..eb26ea848e 100644
--- a/code/modules/power/apc.dm
+++ b/code/modules/power/apc.dm
@@ -85,6 +85,7 @@ GLOBAL_LIST_EMPTY(apcs)
use_power = USE_POWER_OFF
clicksound = "switch"
req_access = list(access_engine_equip)
+ blocks_emissive = FALSE
var/area/area
var/areastring = null
var/obj/item/weapon/cell/cell
@@ -128,10 +129,6 @@ GLOBAL_LIST_EMPTY(apcs)
var/failure_timer = 0
var/force_update = 0
var/updating_icon = 0
- var/global/list/status_overlays_lock
- var/global/list/status_overlays_charging
- var/global/list/status_overlays_equipment
- var/global/list/status_overlays_lighting
var/global/list/status_overlays_environ
var/alarms_hidden = FALSE //If power alarms from this APC are visible on consoles
@@ -306,42 +303,6 @@ GLOBAL_LIST_EMPTY(apcs)
// update the APC icon to show the three base states
// also add overlays for indicator lights
/obj/machinery/power/apc/update_icon()
- if(!status_overlays)
- status_overlays = 1
- status_overlays_lock = new
- status_overlays_charging = new
- status_overlays_equipment = new
- status_overlays_lighting = new
- status_overlays_environ = new
-
- status_overlays_lock.len = 2
- status_overlays_charging.len = 3
- status_overlays_equipment.len = 4
- status_overlays_lighting.len = 4
- status_overlays_environ.len = 4
-
- status_overlays_lock[1] = image(icon, "apcox-0") // 0=blue 1=red
- status_overlays_lock[2] = image(icon, "apcox-1")
-
- status_overlays_charging[1] = image(icon, "apco3-0")
- status_overlays_charging[2] = image(icon, "apco3-1")
- status_overlays_charging[3] = image(icon, "apco3-2")
-
- status_overlays_equipment[1] = image(icon, "apco0-0")
- status_overlays_equipment[2] = image(icon, "apco0-1")
- status_overlays_equipment[3] = image(icon, "apco0-2")
- status_overlays_equipment[4] = image(icon, "apco0-3")
-
- status_overlays_lighting[1] = image(icon, "apco1-0")
- status_overlays_lighting[2] = image(icon, "apco1-1")
- status_overlays_lighting[3] = image(icon, "apco1-2")
- status_overlays_lighting[4] = image(icon, "apco1-3")
-
- status_overlays_environ[1] = image(icon, "apco2-0")
- status_overlays_environ[2] = image(icon, "apco2-1")
- status_overlays_environ[3] = image(icon, "apco2-2")
- status_overlays_environ[4] = image(icon, "apco2-3")
-
var/update = check_updates() //returns 0 if no need to update icons.
// 1 if we need to update the icon_state
// 2 if we need to update the overlays
@@ -368,20 +329,25 @@ GLOBAL_LIST_EMPTY(apcs)
icon_state = "apcemag"
if(!(update_state & UPDATE_ALLGOOD))
- if(overlays.len)
- overlays = 0
- return
+ cut_overlays()
+ return
if(update & 2)
- if(overlays.len)
- overlays.len = 0
+ cut_overlays()
if(!(stat & (BROKEN|MAINT)) && update_state & UPDATE_ALLGOOD)
- overlays += status_overlays_lock[locked+1]
- overlays += status_overlays_charging[charging+1]
+ var/list/new_overlays = list()
+ new_overlays += mutable_appearance(icon, "apcox-[locked]")
+ new_overlays += emissive_appearance(icon, "apcox-[locked]")
+ new_overlays += mutable_appearance(icon, "apco3-[charging]")
+ new_overlays += emissive_appearance(icon, "apco3-[charging]")
if(operating)
- overlays += status_overlays_equipment[equipment+1]
- overlays += status_overlays_lighting[lighting+1]
- overlays += status_overlays_environ[environ+1]
+ new_overlays += mutable_appearance(icon, "apco0-[equipment]")
+ new_overlays += emissive_appearance(icon, "apco0-[equipment]")
+ new_overlays += mutable_appearance(icon, "apco1-[lighting]")
+ new_overlays += emissive_appearance(icon, "apco1-[lighting]")
+ new_overlays += mutable_appearance(icon, "apco2-[environ]")
+ new_overlays += emissive_appearance(icon, "apco2-[environ]")
+ add_overlay(new_overlays)
if(update & 3)
if(update_state & UPDATE_BLUESCREEN)
diff --git a/code/modules/power/batteryrack.dm b/code/modules/power/batteryrack.dm
index dc1dbe7e58..ae42d8c727 100644
--- a/code/modules/power/batteryrack.dm
+++ b/code/modules/power/batteryrack.dm
@@ -62,22 +62,22 @@
return ..()
/obj/machinery/power/smes/batteryrack/update_icon()
- overlays.Cut()
+ cut_overlays()
icon_update = 0
var/cellcount = 0
var/charge_level = between(0, round(Percentage() / 12), 7)
- overlays += "charge[charge_level]"
+ add_overlay("charge[charge_level]")
for(var/obj/item/weapon/cell/C in internal_cells)
cellcount++
- overlays += "cell[cellcount]"
+ add_overlay("cell[cellcount]")
if(C.fully_charged())
- overlays += "cell[cellcount]f"
+ add_overlay("cell[cellcount]f")
else if(!C.charge)
- overlays += "cell[cellcount]e"
+ add_overlay("cell[cellcount]e")
// Recalculate maxcharge and similar variables.
/obj/machinery/power/smes/batteryrack/proc/update_maxcharge()
diff --git a/code/modules/power/cells/power_cells.dm b/code/modules/power/cells/power_cells.dm
index 052813ade7..9183616ac5 100644
--- a/code/modules/power/cells/power_cells.dm
+++ b/code/modules/power/cells/power_cells.dm
@@ -112,7 +112,8 @@
var/used = FALSE
/obj/item/device/fbp_backup_cell/Initialize()
- overlays += image(icon,"[icon_state]1")
+ . = ..()
+ add_overlay("[icon_state]1")
/obj/item/device/fbp_backup_cell/attack(mob/living/M as mob, mob/user as mob)
if(!used && ishuman(M))
@@ -134,7 +135,7 @@
return
used = TRUE
desc += " This one has already been used."
- overlays.Cut()
+ cut_overlays()
target.adjust_nutrition(amount)
user.custom_emote(message = "connects \the [src] to [user == target ? "their" : "[target]'s"] charging port, expending it.")
diff --git a/code/modules/power/fusion/fuel_assembly/fuel_assembly.dm b/code/modules/power/fusion/fuel_assembly/fuel_assembly.dm
index 9a74cbddc1..7993e5e843 100644
--- a/code/modules/power/fusion/fuel_assembly/fuel_assembly.dm
+++ b/code/modules/power/fusion/fuel_assembly/fuel_assembly.dm
@@ -38,7 +38,7 @@
icon_state = "blank"
var/image/I = image(icon, "fuel_assembly")
I.color = fuel_colour
- overlays += list(I, image(icon, "fuel_assembly_bracket"))
+ add_overlay(list(I, image(icon, "fuel_assembly_bracket")))
rod_quantities[fuel_type] = initial_amount
/obj/item/weapon/fuel_assembly/process()
diff --git a/code/modules/power/generator_type2.dm b/code/modules/power/generator_type2.dm
index a52675b706..32f213f95f 100644
--- a/code/modules/power/generator_type2.dm
+++ b/code/modules/power/generator_type2.dm
@@ -24,12 +24,12 @@
/obj/machinery/power/generator_type2/proc/updateicon()
if(stat & (NOPOWER|BROKEN))
- overlays.Cut()
+ cut_overlays()
else
- overlays.Cut()
+ cut_overlays()
if(lastgenlev != 0)
- overlays += image('icons/obj/power.dmi', "teg-op[lastgenlev]")
+ add_overlay("teg-op[lastgenlev]")
#define GENRATE 800 // generator output coefficient from Q
diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm
index 6f3d3144e8..1443d20f92 100644
--- a/code/modules/power/lighting.dm
+++ b/code/modules/power/lighting.dm
@@ -283,7 +283,7 @@ var/global/list/light_type_cache = list()
plane = OBJ_PLANE
layer = OBJ_LAYER
desc = "A floor lamp."
- light_type = /obj/item/weapon/light/bulb
+ light_type = /obj/item/weapon/light/bulb/large
construct_type = /obj/machinery/light_construct/flamp
shows_alerts = FALSE //VOREStation Edit
var/lamp_shade = 1
@@ -894,20 +894,34 @@ var/global/list/light_type_cache = list()
force = 2
throwforce = 5
w_class = ITEMSIZE_TINY
- var/status = 0 // LIGHT_OK, LIGHT_BURNED or LIGHT_BROKEN
- var/base_state
- var/switchcount = 0 // number of times switched
matter = list(DEFAULT_WALL_MATERIAL = 60)
- var/rigged = 0 // true if rigged to explode
+
+ ///LIGHT_OK, LIGHT_BURNED or LIGHT_BROKEN
+ var/status = LIGHT_OK
+ ///Base icon_state name to append suffixes for status
+ var/base_state
+ ///Number of times switched on/off
+ var/switchcount = 0
+ ///Is this light set to explode
+ var/rigged = 0
+ ///The chance (prob()) that this light will be broken at roundstart
var/broken_chance = 2
- var/brightness_range = 2 //how much light it gives off
+ ///The raidus in turfs this light will reach. It will be at it's most dim this many turfs away.
+ /// This is also used in power draw calculation for machinery/lights.
+ var/brightness_range = 8
+ ///The light will fall off over more/less range based on this. The formula is complicated.
var/brightness_power = 1
+ ///The color of the light emitted.
var/brightness_color = LIGHT_COLOR_INCANDESCENT_TUBE
+ ///Replaces brightness_range during nightshifts.
var/nightshift_range = 8
- var/nightshift_power = 1
+ ///Replaces brightness_power during nightshifts.
+ var/nightshift_power = 0.45
+ ///Replaces brightness_color during nightshifts.
var/nightshift_color = LIGHT_COLOR_NIGHTSHIFT
+
drop_sound = 'sound/items/drop/glass.ogg'
pickup_sound = 'sound/items/pickup/glass.ogg'
@@ -918,14 +932,14 @@ var/global/list/light_type_cache = list()
base_state = "ltube"
item_state = "c_tube"
matter = list("glass" = 100)
- brightness_range = 10 // luminosity when on, also used in power calculation //VOREStation Edit
- brightness_power = 6
+ brightness_range = 7
+ brightness_power = 2
/obj/item/weapon/light/tube/large
w_class = ITEMSIZE_SMALL
name = "large light tube"
brightness_range = 15
- brightness_power = 9
+ brightness_power = 4
nightshift_range = 10
nightshift_power = 1.5
@@ -938,12 +952,21 @@ var/global/list/light_type_cache = list()
item_state = "contvapour"
matter = list("glass" = 100)
brightness_range = 5
- brightness_power = 4
+ brightness_power = 1
brightness_color = LIGHT_COLOR_INCANDESCENT_BULB
nightshift_range = 3
nightshift_power = 0.5
+// For 'floor lamps' in outdoor use and such
+/obj/item/weapon/light/bulb/large
+ name = "large light bulb"
+ brightness_range = 7
+ brightness_power = 1.5
+
+ nightshift_range = 4
+ nightshift_power = 0.75
+
/obj/item/weapon/light/throw_impact(atom/hit_atom)
..()
shatter()
diff --git a/code/modules/power/lighting_vr.dm b/code/modules/power/lighting_vr.dm
index fb4a15a883..b7ea9a0fbd 100644
--- a/code/modules/power/lighting_vr.dm
+++ b/code/modules/power/lighting_vr.dm
@@ -17,3 +17,35 @@
//Vorestation addition, so large mobs stop looking stupid in front of lights.
if (dir == SOUTH) // Lights are backwards, SOUTH lights face north (they are on south wall)
layer = ABOVE_MOB_LAYER
+
+// Wall tube lights
+/obj/item/weapon/light/tube
+ brightness_range = 6
+ brightness_power = 1
+
+ nightshift_range = 6
+ nightshift_power = 0.45
+
+// Big tubes, unused I think
+/obj/item/weapon/light/tube/large
+ brightness_range = 8
+ brightness_power = 2
+
+ nightshift_range = 8
+ nightshift_power = 1
+
+// Small wall lights
+/obj/item/weapon/light/bulb
+ brightness_range = 4
+ brightness_power = 1
+
+ nightshift_range = 4
+ nightshift_power = 0.45
+
+// Floor lamps
+/obj/item/weapon/light/bulb/large
+ brightness_range = 6
+ brightness_power = 1
+
+ nightshift_range = 6
+ nightshift_power = 0.45
diff --git a/code/modules/power/singularity/collector.dm b/code/modules/power/singularity/collector.dm
index b296b8916c..c036cf0368 100644
--- a/code/modules/power/singularity/collector.dm
+++ b/code/modules/power/singularity/collector.dm
@@ -138,13 +138,13 @@ var/global/list/rad_collectors = list()
/obj/machinery/power/rad_collector/proc/update_icons()
- overlays.Cut()
+ cut_overlays()
if(P)
- overlays += image('icons/obj/singularity.dmi', "ptank")
+ add_overlay("ptank")
if(stat & (NOPOWER|BROKEN))
return
if(active)
- overlays += image('icons/obj/singularity.dmi', "on")
+ add_overlay("on")
/obj/machinery/power/rad_collector/proc/toggle_power()
diff --git a/code/modules/power/singularity/field_generator.dm b/code/modules/power/singularity/field_generator.dm
index 6112da7b00..f6c7407b4e 100644
--- a/code/modules/power/singularity/field_generator.dm
+++ b/code/modules/power/singularity/field_generator.dm
@@ -38,19 +38,19 @@ field_generator power level display
/obj/machinery/field_generator/update_icon()
- overlays.Cut()
+ cut_overlays()
if(!active)
if(warming_up)
- overlays += "+a[warming_up]"
+ add_overlay("+a[warming_up]")
if(fields.len)
- overlays += "+on"
+ add_overlay("+on")
// Power level indicator
// Scale % power to % num_power_levels and truncate value
var/level = round(num_power_levels * power / field_generator_max_power)
// Clamp between 0 and num_power_levels for out of range power values
level = between(0, level, num_power_levels)
if(level)
- overlays += "+p[level]"
+ add_overlay("+p[level]")
return
diff --git a/code/modules/power/singularity/singularity.dm b/code/modules/power/singularity/singularity.dm
index bdcc0ce66f..61fae18c42 100644
--- a/code/modules/power/singularity/singularity.dm
+++ b/code/modules/power/singularity/singularity.dm
@@ -465,15 +465,15 @@ GLOBAL_LIST_BOILERPLATE(all_singularities, /obj/singularity)
move_self = 0
switch (current_size)
if(STAGE_ONE)
- overlays += image('icons/obj/singularity.dmi',"chain_s1")
+ add_overlay(image('icons/obj/singularity.dmi',"chain_s1"))
if(STAGE_TWO)
- overlays += image('icons/effects/96x96.dmi',"chain_s3")
+ add_overlay(image('icons/effects/96x96.dmi',"chain_s3"))
if(STAGE_THREE)
- overlays += image('icons/effects/160x160.dmi',"chain_s5")
+ add_overlay(image('icons/effects/160x160.dmi',"chain_s5"))
if(STAGE_FOUR)
- overlays += image('icons/effects/224x224.dmi',"chain_s7")
+ add_overlay(image('icons/effects/224x224.dmi',"chain_s7"))
if(STAGE_FIVE)
- overlays += image('icons/effects/288x288.dmi',"chain_s9")
+ add_overlay(image('icons/effects/288x288.dmi',"chain_s9"))
/obj/singularity/proc/on_release()
chained = 0
diff --git a/code/modules/power/smes_construction.dm b/code/modules/power/smes_construction.dm
index 45b44d64f8..326e9ecd23 100644
--- a/code/modules/power/smes_construction.dm
+++ b/code/modules/power/smes_construction.dm
@@ -286,8 +286,8 @@
// Description: Allows us to use special icon overlay for critical SMESs
/obj/machinery/power/smes/buildable/update_icon()
if (failing)
- overlays.Cut()
- overlays += image('icons/obj/power.dmi', "smes-crit")
+ cut_overlays()
+ add_overlay("smes-crit")
else
..()
diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm
index ec059bc5f4..52ed673196 100644
--- a/code/modules/power/solar.dm
+++ b/code/modules/power/solar.dm
@@ -88,11 +88,11 @@ GLOBAL_LIST_EMPTY(solars_list)
/obj/machinery/power/solar/update_icon()
..()
- overlays.Cut()
+ cut_overlays()
if(stat & BROKEN)
- overlays += image('icons/obj/power.dmi', icon_state = "solar_panel-b", layer = FLY_LAYER)
+ add_overlay("solar_panel-b")
else
- overlays += image('icons/obj/power.dmi', icon_state = "solar_panel", layer = FLY_LAYER)
+ add_overlay("solar_panel")
src.set_dir(angle2dir(adir))
return
@@ -367,16 +367,16 @@ GLOBAL_LIST_EMPTY(solars_list)
/obj/machinery/power/solar_control/update_icon()
if(stat & BROKEN)
icon_state = "broken"
- overlays.Cut()
+ cut_overlays()
return
if(stat & NOPOWER)
icon_state = "c_unpowered"
- overlays.Cut()
+ cut_overlays()
return
icon_state = "solar"
- overlays.Cut()
+ cut_overlays()
if(cdir > -1)
- overlays += image('icons/obj/computer.dmi', "solcon-o", FLY_LAYER, angle2dir(cdir))
+ add_overlay(image('icons/obj/computer.dmi', "solcon-o", FLY_LAYER, angle2dir(cdir)))
return
/obj/machinery/power/solar_control/attack_hand(mob/user)
diff --git a/code/modules/power/turbine.dm b/code/modules/power/turbine.dm
index e93ee62c71..4766864ec1 100644
--- a/code/modules/power/turbine.dm
+++ b/code/modules/power/turbine.dm
@@ -150,7 +150,7 @@
return
if(!starter)
return
- overlays.Cut()
+ cut_overlays()
rpm = 0.9* rpm + 0.1 * rpmtarget
var/datum/gas_mixture/environment = inturf.return_air()
@@ -172,13 +172,13 @@
rpmtarget = 0
if(rpm>50000)
- overlays += image('icons/obj/pipes.dmi', "comp-o4", FLY_LAYER)
+ add_overlay(image('icons/obj/pipes.dmi', "comp-o4", FLY_LAYER))
else if(rpm>10000)
- overlays += image('icons/obj/pipes.dmi', "comp-o3", FLY_LAYER)
+ add_overlay(image('icons/obj/pipes.dmi', "comp-o3", FLY_LAYER))
else if(rpm>2000)
- overlays += image('icons/obj/pipes.dmi', "comp-o2", FLY_LAYER)
+ add_overlay(image('icons/obj/pipes.dmi', "comp-o2", FLY_LAYER))
else if(rpm>500)
- overlays += image('icons/obj/pipes.dmi', "comp-o1", FLY_LAYER)
+ add_overlay(image('icons/obj/pipes.dmi', "comp-o1", FLY_LAYER))
//TODO: DEFERRED
@@ -248,7 +248,7 @@
return
if(!compressor.starter)
return
- overlays.Cut()
+ cut_overlays()
// This is the power generation function. If anything is needed it's good to plot it in EXCEL before modifying
// the TURBGENQ and TURBGENG values
@@ -271,7 +271,7 @@
// If it works, put an overlay that it works!
if(lastgen > 100)
- overlays += image('icons/obj/pipes.dmi', "turb-o", FLY_LAYER)
+ add_overlay(image('icons/obj/pipes.dmi', "turb-o", FLY_LAYER))
updateDialog()
diff --git a/code/modules/projectiles/guns/energy/gunsword_vr.dm b/code/modules/projectiles/guns/energy/gunsword_vr.dm
index fcf1fcfe26..2b8b45a9fe 100644
--- a/code/modules/projectiles/guns/energy/gunsword_vr.dm
+++ b/code/modules/projectiles/guns/energy/gunsword_vr.dm
@@ -123,4 +123,4 @@
return (BRUTELOSS|FIRELOSS)
/obj/item/weapon/cell/device/weapon/gunsword/update_icon()
- overlays.Cut()
\ No newline at end of file
+ cut_overlays()
\ No newline at end of file
diff --git a/code/modules/projectiles/guns/energy/laser_vr.dm b/code/modules/projectiles/guns/energy/laser_vr.dm
index 4256cb50d4..500239e8e0 100644
--- a/code/modules/projectiles/guns/energy/laser_vr.dm
+++ b/code/modules/projectiles/guns/energy/laser_vr.dm
@@ -356,3 +356,27 @@
req_access = newlist() //for toggling safety
locked = 0
lockable = 0
+
+///phaser bow///
+
+/obj/item/weapon/gun/energy/locked/frontier/handbow
+ name = "phaser handbow"
+ desc = "An minaturized weapon that fires a bolt of engery. Includes a built-in crank charger for recharging away from civilization. This one has a safety interlock that prevents firing while in proximity to the facility."
+ icon = 'icons/obj/gun_vr.dmi'
+ icon_state = "handbowkill"
+ item_state = null
+ phase_power = 100
+
+ w_class = ITEMSIZE_SMALL
+ charge_cost = 600
+ modifystate = "handbowkill"
+ firemodes = list(
+ list(mode_name="lethal", fire_delay=12, projectile_type=/obj/item/projectile/energy/bolt/heavy, modifystate="handbowkill", charge_cost = 600),
+ list(mode_name="low-power", fire_delay=8, projectile_type=/obj/item/projectile/energy/bolt, modifystate="handbowstun", charge_cost = 160),
+ )
+
+/obj/item/weapon/gun/energy/locked/frontier/holdout/unlocked
+ desc = "An minaturized weapon that fires a bolt of engery. Includes a built-in crank charger for recharging away from civilization."
+ req_access = newlist() //for toggling safety
+ locked = 0
+ lockable = 0
\ No newline at end of file
diff --git a/code/modules/projectiles/guns/energy/protector_vr.dm b/code/modules/projectiles/guns/energy/protector_vr.dm
index eff6ff1b7a..e1cf9bb853 100644
--- a/code/modules/projectiles/guns/energy/protector_vr.dm
+++ b/code/modules/projectiles/guns/energy/protector_vr.dm
@@ -57,7 +57,7 @@
//Update icons from /tg/, so fancy! Use this more!
/obj/item/weapon/gun/energy/gun/protector/update_icon()
- overlays.Cut()
+ cut_overlays()
var/ratio = 0
/* Don't have one for this gun
@@ -68,7 +68,7 @@
var/iconState = "[icon_state]_charge"
if (modifystate)
- overlays += "[icon_state]_[modifystate]"
+ add_overlay("[icon_state]_[modifystate]")
iconState += "_[modifystate]"
/* Don't have one for this gun
if(itemState)
@@ -78,21 +78,21 @@
ratio = CEILING(((power_supply.charge / power_supply.maxcharge) * charge_sections), 1)
if(power_supply.charge < charge_cost)
- overlays += "[icon_state]_empty"
+ add_overlay("[icon_state]_empty")
else
if(!shaded_charge)
var/mutable_appearance/charge_overlay = mutable_appearance(icon, iconState)
for(var/i = ratio, i >= 1, i--)
charge_overlay.pixel_x = ammo_x_offset * (i - 1)
- overlays += charge_overlay
+ add_overlay(charge_overlay)
else
- overlays += "[icon_state]_[modifystate][ratio]"
+ add_overlay("[icon_state]_[modifystate][ratio]")
if(can_flashlight & gun_light)
var/mutable_appearance/flashlight_overlay = mutable_appearance(icon, light_state)
flashlight_overlay.pixel_x = flight_x_offset
flashlight_overlay.pixel_y = flight_y_offset
- overlays += flashlight_overlay
+ add_overlay(flashlight_overlay)
/* Don't have one for this gun
if(itemState)
diff --git a/code/modules/projectiles/guns/projectile/automatic_vr.dm b/code/modules/projectiles/guns/projectile/automatic_vr.dm
index 148045b562..ec1e45e5e8 100644
--- a/code/modules/projectiles/guns/projectile/automatic_vr.dm
+++ b/code/modules/projectiles/guns/projectile/automatic_vr.dm
@@ -145,11 +145,11 @@
if(ratio < 0.25 && ratio != 0)
ratio = 0.25
ratio = round(ratio, 0.25) * 100
- overlays += "smg_[ratio]"
+ add_overlay("smg_[ratio]")
/obj/item/weapon/gun/projectile/automatic/sol/update_icon()
icon_state = (ammo_magazine)? "SMG-IS" : "SMG-IS-empty"
- overlays.Cut()
+ cut_overlays()
update_charge()
//--------------- StG-60 ----------------
diff --git a/code/modules/projectiles/guns/projectile/pistol_vr.dm b/code/modules/projectiles/guns/projectile/pistol_vr.dm
index 66d70ff5be..91b28b9569 100644
--- a/code/modules/projectiles/guns/projectile/pistol_vr.dm
+++ b/code/modules/projectiles/guns/projectile/pistol_vr.dm
@@ -28,12 +28,12 @@
origin_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 4)
/obj/item/weapon/gun/projectile/lamia/update_icon()
- overlays.Cut()
+ cut_overlays()
if(!ammo_magazine)
return
var/ratio = ammo_magazine.stored_ammo.len * 100 / ammo_magazine.max_ammo
ratio = round(ratio, 33)
- overlays += "deagle_[ratio]"
+ add_overlay("deagle_[ratio]")
//Civilian gun
/obj/item/weapon/gun/projectile/giskard
diff --git a/code/modules/projectiles/guns/projectile/revolver_vr.dm b/code/modules/projectiles/guns/projectile/revolver_vr.dm
index 3537cc4865..8eff9739bf 100644
--- a/code/modules/projectiles/guns/projectile/revolver_vr.dm
+++ b/code/modules/projectiles/guns/projectile/revolver_vr.dm
@@ -12,13 +12,13 @@
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3)
/obj/item/weapon/gun/projectile/revolver/consul/proc/update_charge()
+ cut_overlays()
if(loaded.len==0)
- overlays += "inspector_off"
+ add_overlay("inspector_off")
else
- overlays += "inspector_on"
+ add_overlay("inspector_on")
/obj/item/weapon/gun/projectile/revolver/consul/update_icon()
- overlays.Cut()
update_charge()
//.357 special ammo
diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm
index 6cd885f0c1..17dae5c90e 100644
--- a/code/modules/projectiles/projectile.dm
+++ b/code/modules/projectiles/projectile.dm
@@ -11,6 +11,9 @@
pass_flags = PASSTABLE
mouse_opacity = 0
hitsound = 'sound/weapons/pierce.ogg'
+
+ blocks_emissive = EMISSIVE_BLOCK_GENERIC
+
var/hitsound_wall = null // Played when something hits a wall, or anything else that isn't a mob.
////TG PROJECTILE SYTSEM
@@ -49,6 +52,7 @@
var/datum/beam_components_cache/beam_components
//Fancy hitscan lighting effects!
+ light_on = TRUE
var/hitscan_light_intensity = 1.5
var/hitscan_light_range = 0.75
var/hitscan_light_color_override
diff --git a/code/modules/projectiles/projectile/energy_vr.dm b/code/modules/projectiles/projectile/energy_vr.dm
index 5148c831bd..b0e9bebb69 100644
--- a/code/modules/projectiles/projectile/energy_vr.dm
+++ b/code/modules/projectiles/projectile/energy_vr.dm
@@ -8,4 +8,18 @@
flash_range = 1
/obj/item/projectile/energy/flash/flare
- flash_range = 2
\ No newline at end of file
+ flash_range = 2
+
+/obj/item/projectile/energy/bolt
+ name = "engergy bolt"
+ icon_state = "cbbolt"
+ damage = 20
+
+
+/obj/item/projectile/energy/bolt/heavy
+ damage = 30
+ icon_state = "cbbolt"
+
+/obj/item/projectile/energy/bolt/stun
+ name = "stun bolt"
+ agony = 30
diff --git a/code/modules/reagents/machinery/dispenser/reagent_tank.dm b/code/modules/reagents/machinery/dispenser/reagent_tank.dm
index 6444ac85a2..d194793b9e 100644
--- a/code/modules/reagents/machinery/dispenser/reagent_tank.dm
+++ b/code/modules/reagents/machinery/dispenser/reagent_tank.dm
@@ -193,7 +193,7 @@
var/icon/test = getFlatIcon(W)
test.Shift(NORTH,1)
test.Shift(EAST,6)
- overlays += test
+ add_overlay(test)
return ..()
@@ -389,12 +389,9 @@
/obj/structure/reagent_dispensers/water_cooler/update_icon()
icon_state = "water_cooler"
- overlays.Cut()
- var/image/I
+ cut_overlays()
if(bottle)
- I = image(icon, "water_cooler_bottle")
- overlays += I
- return
+ add_overlay("water_cooler_bottle")
/obj/structure/reagent_dispensers/beerkeg
name = "beer keg"
diff --git a/code/modules/reagents/reactions/instant/drinks_vr.dm b/code/modules/reagents/reactions/instant/drinks_vr.dm
index 261934c2e6..f234184d86 100644
--- a/code/modules/reagents/reactions/instant/drinks_vr.dm
+++ b/code/modules/reagents/reactions/instant/drinks_vr.dm
@@ -161,10 +161,10 @@
required_reagents = list("monstertamer" = 2, "nutriment" = 1)
result_amount = 3
-/decl/chemical_reaction/instant/drinks/pink_moo
- name = "Pink Moo"
- id = "pinkmoo"
- result = "pinkmoo"
+/decl/chemical_reaction/instant/drinks/pink_russian
+ name = "Pink Russian"
+ id = "pinkrussian"
+ result = "pinkrussian"
required_reagents = list("blackrussian" = 2, "berryshake" = 1)
result_amount = 3
diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm
index 9e7eb5a575..906b8411b7 100644
--- a/code/modules/reagents/reagent_containers/glass.dm
+++ b/code/modules/reagents/reagent_containers/glass.dm
@@ -180,7 +180,7 @@
update_icon()
/obj/item/weapon/reagent_containers/glass/beaker/update_icon()
- overlays.Cut()
+ cut_overlays()
if(reagents.total_volume)
var/image/filling = image('icons/obj/reagentfillings.dmi', src, "[icon_state]10")
@@ -196,11 +196,10 @@
if(91 to INFINITY) filling.icon_state = "[icon_state]100"
filling.color = reagents.get_color()
- overlays += filling
+ add_overlay(filling)
if (!is_open_container())
- var/image/lid = image(icon, src, "lid_[initial(icon_state)]")
- overlays += lid
+ add_overlay("lid_[initial(icon_state)]")
/obj/item/weapon/reagent_containers/glass/beaker/large
name = "large beaker"
@@ -307,10 +306,9 @@
return ..()
/obj/item/weapon/reagent_containers/glass/bucket/update_icon()
- overlays.Cut()
+ cut_overlays()
if (!is_open_container())
- var/image/lid = image(icon, src, "lid_[initial(icon_state)]")
- overlays += lid
+ add_overlay("lid_[initial(icon_state)]")
obj/item/weapon/reagent_containers/glass/bucket/wood
desc = "An old wooden bucket."
diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm
index 1098c5e713..24c39dce43 100644
--- a/code/modules/reagents/reagent_containers/spray.dm
+++ b/code/modules/reagents/reagent_containers/spray.dm
@@ -232,7 +232,7 @@
/obj/item/weapon/reagent_containers/spray/chemsprayer/hosed/update_icon()
..()
- overlays.Cut()
+ cut_overlays()
if(!hose_overlay)
hose_overlay = new icon(icon, "[icon_state]+hose")
diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm
index fe50843852..f05edfd7e1 100644
--- a/code/modules/reagents/reagent_containers/syringes.dm
+++ b/code/modules/reagents/reagent_containers/syringes.dm
@@ -232,7 +232,7 @@
return
/* VOREStation Edit - See syringes_vr.dm
/obj/item/weapon/reagent_containers/syringe/update_icon()
- overlays.Cut()
+ cut_overlays()
if(mode == SYRINGE_BROKEN)
icon_state = "broken"
@@ -246,7 +246,7 @@
injoverlay = "draw"
if (SYRINGE_INJECT)
injoverlay = "inject"
- overlays += injoverlay
+ add_overlay(injoverlay)
icon_state = "[rounded_vol]"
item_state = "syringe_[rounded_vol]"
@@ -256,7 +256,7 @@
filling.icon_state = "syringe[rounded_vol]"
filling.color = reagents.get_color()
- overlays += filling
+ add_overlay(filling)
*/
/obj/item/weapon/reagent_containers/syringe/proc/syringestab(mob/living/carbon/target as mob, mob/living/carbon/user as mob)
if(istype(target, /mob/living/carbon/human))
diff --git a/code/modules/reagents/reagents/food_drinks_vr.dm b/code/modules/reagents/reagents/food_drinks_vr.dm
index 1a8f15de86..715e0fa735 100644
--- a/code/modules/reagents/reagents/food_drinks_vr.dm
+++ b/code/modules/reagents/reagents/food_drinks_vr.dm
@@ -67,16 +67,16 @@
glass_name = "Monster Tamer"
glass_desc = "This looks like a vaguely-alcoholic slurry of meat. Gross."
-/datum/reagent/ethanol/pink_moo
- name = "Pink Moo"
- id = "pinkmoo"
+/datum/reagent/ethanol/pink_russian
+ name = "Pink Russian"
+ id = "pinkrussian"
description = "Like a White Russian but with 100% more pink!"
taste_description = "strawberry icecream, with a coffee kick"
color = "#d789bd"
strength = 15
- glass_name = "Pink Moo"
- glass_desc = "A very familiar looking drink. ...moo?"
+ glass_name = "Pink Russian"
+ glass_desc = "A very pink drink, yet with strong sense of power to it."
/datum/reagent/ethanol/originalsin
name = "Original Sin"
diff --git a/code/modules/reagents/reagents/other.dm b/code/modules/reagents/reagents/other.dm
index 2b7eb8912c..6f005999b6 100644
--- a/code/modules/reagents/reagents/other.dm
+++ b/code/modules/reagents/reagents/other.dm
@@ -402,7 +402,7 @@
if(istype(T, /turf/simulated/wall))
var/turf/simulated/wall/W = T
W.thermite = 1
- W.overlays += image('icons/effects/effects.dmi',icon_state = "#673910")
+ W.add_overlay(image('icons/effects/effects.dmi',icon_state = "#673910")) // What??
remove_self(5)
return
diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm
index 2372be085a..7127ed9ff5 100644
--- a/code/modules/recycling/disposal.dm
+++ b/code/modules/recycling/disposal.dm
@@ -385,7 +385,7 @@
// update the icon & overlays to reflect mode & status
/obj/machinery/disposal/proc/update()
- overlays.Cut()
+ cut_overlays()
if(stat & BROKEN)
icon_state = "disposal-broken"
mode = 0
@@ -394,7 +394,7 @@
// flush handle
if(flush)
- overlays += image(src.icon, "[initial(icon_state)]-handle")
+ add_overlay("[initial(icon_state)]-handle")
// only handle is shown if no power
if(stat & NOPOWER || mode == -1)
@@ -402,13 +402,13 @@
// check for items in disposal - occupied light
if(contents.len > 0)
- overlays += image(src.icon, "[initial(icon_state)]-full")
+ add_overlay("[initial(icon_state)]-full")
// charging and ready light
if(mode == 1)
- overlays += image(src.icon, "[initial(icon_state)]-charge")
+ add_overlay("[initial(icon_state)]-charge")
else if(mode == 2)
- overlays += image(src.icon, "[initial(icon_state)]-ready")
+ add_overlay("[initial(icon_state)]-ready")
// timed process
// charge the gas reservoir and perform flush if ready
diff --git a/code/modules/recycling/sortingmachinery.dm b/code/modules/recycling/sortingmachinery.dm
index 08d68d8956..2bfab50bbb 100755
--- a/code/modules/recycling/sortingmachinery.dm
+++ b/code/modules/recycling/sortingmachinery.dm
@@ -73,7 +73,7 @@
return
/obj/structure/bigDelivery/update_icon()
- overlays = new()
+ cut_overlays()
if(nameset || examtext)
var/image/I = new/image('icons/obj/storage.dmi',"delivery_label")
if(icon_state == "deliverycloset")
@@ -86,7 +86,7 @@
label_x = rand(-8, 6)
I.pixel_x = label_x
I.pixel_y = -3
- overlays += I
+ add_overlay(I)
if(src.sortTag)
var/image/I = new/image('icons/obj/storage.dmi',"delivery_tag")
if(icon_state == "deliverycloset")
@@ -99,7 +99,7 @@
tag_x = rand(-8, 6)
I.pixel_x = tag_x
I.pixel_y = -3
- overlays += I
+ add_overlay(I)
/obj/structure/bigDelivery/examine(mob/user)
. = ..()
@@ -185,12 +185,12 @@
return
/obj/item/smallDelivery/update_icon()
- overlays = new()
+ cut_overlays()
if((nameset || examtext) && icon_state != "deliverycrate1")
var/image/I = new/image('icons/obj/storage.dmi',"delivery_label")
if(icon_state == "deliverycrate5")
I.pixel_y = -1
- overlays += I
+ add_overlay(I)
if(src.sortTag)
var/image/I = new/image('icons/obj/storage.dmi',"delivery_tag")
switch(icon_state)
@@ -207,7 +207,7 @@
I.pixel_y = 3
if("deliverycrate5")
I.pixel_y = -3
- overlays += I
+ add_overlay(I)
/obj/item/smallDelivery/examine(mob/user)
. = ..()
diff --git a/code/modules/research/circuitprinter.dm b/code/modules/research/circuitprinter.dm
index d419829bab..3e3207fdb9 100644
--- a/code/modules/research/circuitprinter.dm
+++ b/code/modules/research/circuitprinter.dm
@@ -152,9 +152,9 @@ using metal and glass, it uses glass and reagents (usually sulphuric acid).
if(materials[S.material.name] + amnt <= max_res_amount)
if(S && S.get_amount() >= 1)
var/count = 0
- overlays += "fab-load-metal"
+ add_overlay("fab-load-metal")
spawn(10)
- overlays -= "fab-load-metal"
+ cut_overlay("fab-load-metal")
while(materials[S.material.name] + amnt <= max_res_amount && S.get_amount() >= 1)
materials[S.material.name] += amnt
S.use(1)
diff --git a/code/modules/research/protolathe.dm b/code/modules/research/protolathe.dm
index 97a8274391..35e804c30e 100644
--- a/code/modules/research/protolathe.dm
+++ b/code/modules/research/protolathe.dm
@@ -106,7 +106,7 @@
/obj/machinery/r_n_d/protolathe/update_icon()
- overlays.Cut()
+ cut_overlays()
icon_state = initial(icon_state)
@@ -175,9 +175,9 @@
var/stacktype = S.type
var/t = getMaterialName(stacktype)
- overlays += "protolathe_[t]"
+ add_overlay("protolathe_[t]")
spawn(10)
- overlays -= "protolathe_[t]"
+ cut_overlay("protolathe_[t]")
updateUsrDialog()
return
diff --git a/code/modules/resleeving/sleevecard.dm b/code/modules/resleeving/sleevecard.dm
index 086468de0f..60ee622e24 100644
--- a/code/modules/resleeving/sleevecard.dm
+++ b/code/modules/resleeving/sleevecard.dm
@@ -34,7 +34,7 @@
/obj/item/device/sleevecard/New()
..()
- overlays += "pai-off"
+ add_overlay("pai-off")
radio = new(src)
/obj/item/device/sleevecard/Destroy()
@@ -83,13 +83,13 @@
/obj/item/device/sleevecard/proc/turnOff()
if(infomorph)
infomorph.close_up()
- overlays.Cut()
+ cut_overlays()
name = "[initial(name)]"
/obj/item/device/sleevecard/proc/setEmotion(var/emotion)
if(infomorph && emotion)
- overlays.Cut()
- overlays += emotion
+ cut_overlays()
+ add_overlay(emotion)
current_emotion = emotion
/obj/item/device/sleevecard/emp_act(severity)
diff --git a/code/modules/rogueminer_vr/zonemaster.dm b/code/modules/rogueminer_vr/zonemaster.dm
index 8f2eba8426..2b1f3728f5 100644
--- a/code/modules/rogueminer_vr/zonemaster.dm
+++ b/code/modules/rogueminer_vr/zonemaster.dm
@@ -395,7 +395,7 @@
for(var/atom/I in myarea.contents)
if(I.type == /turf/space)
- I.overlays.Cut()
+ I.cut_overlays()
continue
else if(!I.simulated)
continue
@@ -407,7 +407,7 @@
//A deletion so nice that I give it twice
for(var/atom/I in myarea.contents)
if(I.type == /turf/space)
- I.overlays.Cut()
+ I.cut_overlays()
continue
else if(!I.simulated)
continue
diff --git a/code/modules/shieldgen/directional_shield.dm b/code/modules/shieldgen/directional_shield.dm
index d3d943297a..828db3f6cb 100644
--- a/code/modules/shieldgen/directional_shield.dm
+++ b/code/modules/shieldgen/directional_shield.dm
@@ -86,6 +86,7 @@
icon_state = "signmaker_sec"
light_range = 4
light_power = 4
+ light_on = TRUE
var/active = FALSE // If it's on.
var/shield_health = 400 // How much damage the shield blocks before breaking. This is a shared health pool for all shields attached to this projector.
var/max_shield_health = 400 // Ditto. This is fairly high, but shields are really big, you can't miss them, and laser carbines pump out so much hurt.
diff --git a/code/modules/shieldgen/energy_field.dm b/code/modules/shieldgen/energy_field.dm
index 87d07cceaf..7176baf23b 100644
--- a/code/modules/shieldgen/energy_field.dm
+++ b/code/modules/shieldgen/energy_field.dm
@@ -114,7 +114,7 @@
update_nearby_tiles()
/obj/effect/energy_field/update_icon(var/update_neightbors = 0)
- overlays.Cut()
+ cut_overlays()
var/list/adjacent_shields_dir = list()
for(var/direction in cardinal)
var/turf/T = get_step(src, direction)
@@ -134,7 +134,7 @@
// Edge overlays
for(var/found_dir in adjacent_shields_dir)
- overlays += image(src.icon, src, icon_state = "shield_edge", dir = found_dir)
+ add_overlay(image(src.icon, src, icon_state = "shield_edge", dir = found_dir))
// Small visual effect, makes the shield tiles brighten up by becoming more opaque for a moment, and spreads to nearby shields.
diff --git a/code/modules/shieldgen/energy_shield.dm b/code/modules/shieldgen/energy_shield.dm
index 6170768252..6c11eb62e2 100644
--- a/code/modules/shieldgen/energy_shield.dm
+++ b/code/modules/shieldgen/energy_shield.dm
@@ -29,7 +29,7 @@
if(disabled_for || diffused_for)
icon_state = "shield_broken"
- overlays.Cut() //NOT ssoverlays
+ overlays.Cut() // Snowflake handling, avoiding SSoverlays
else
icon_state = enabled_icon_state
flags |= OVERLAY_QUEUED //Trick SSoverlays
diff --git a/code/modules/tables/tables.dm b/code/modules/tables/tables.dm
index 32aca8f090..952e7af45a 100644
--- a/code/modules/tables/tables.dm
+++ b/code/modules/tables/tables.dm
@@ -353,31 +353,31 @@ var/list/table_icon_cache = list()
/obj/structure/table/update_icon()
if(flipped != 1)
icon_state = "blank"
- overlays.Cut()
+ cut_overlays()
// Base frame shape. Mostly done for glass/diamond tables, where this is visible.
for(var/i = 1 to 4)
var/image/I = get_table_image(icon, connections[i], 1<<(i-1))
- overlays += I
+ add_overlay(I)
// Standard table image
if(material)
for(var/i = 1 to 4)
var/image/I = get_table_image(icon, "[material.icon_base]_[connections[i]]", 1<<(i-1), material.icon_colour, 255 * material.opacity)
- overlays += I
+ add_overlay(I)
// Reinforcements
if(reinforced)
for(var/i = 1 to 4)
var/image/I = get_table_image(icon, "[reinforced.icon_reinf]_[connections[i]]", 1<<(i-1), reinforced.icon_colour, 255 * reinforced.opacity)
- overlays += I
+ add_overlay(I)
if(carpeted)
for(var/i = 1 to 4)
var/image/I = get_table_image(icon, "carpet_[connections[i]]", 1<<(i-1))
- overlays += I
+ add_overlay(I)
else
- overlays.Cut()
+ cut_overlays()
var/type = 0
var/tabledirs = 0
for(var/direction in list(turn(dir,90), turn(dir,-90)) )
@@ -398,7 +398,7 @@ var/list/table_icon_cache = list()
var/image/I = image(icon, "[material.icon_base]_flip[type]")
I.color = material.icon_colour
I.alpha = 255 * material.opacity
- overlays += I
+ add_overlay(I)
name = "[material.display_name] table"
else
name = "table frame"
@@ -407,10 +407,10 @@ var/list/table_icon_cache = list()
var/image/I = image(icon, "[reinforced.icon_reinf]_flip[type]")
I.color = reinforced.icon_colour
I.alpha = 255 * reinforced.opacity
- overlays += I
+ add_overlay(I)
if(carpeted)
- overlays += "carpet_flip[type]"
+ add_overlay("carpet_flip[type]")
#define CORNER_NONE 0
diff --git a/code/modules/telesci/gps_advanced.dm b/code/modules/telesci/gps_advanced.dm
index 59711deced..92f2e7a4cf 100644
--- a/code/modules/telesci/gps_advanced.dm
+++ b/code/modules/telesci/gps_advanced.dm
@@ -18,7 +18,7 @@
..()
GPS_list.Add(src)
name = "global positioning system ([gpstag])"
- overlays += "working"
+ add_overlay("working")
/obj/item/device/gps/advanced/Destroy()
GPS_list.Remove(src)
@@ -26,12 +26,12 @@
/obj/item/device/gps/advanced/emp_act(severity)
emped = 1
- overlays -= "working"
- overlays += "emp"
+ cut_overlay("working")
+ add_overlay("emp")
spawn(300)
emped = 0
- overlays -= "emp"
- overlays += "working"
+ cut_overlay("emp")
+ add_overlay("working")
/obj/item/device/gps/advanced/attack_self(mob/user as mob)
diff --git a/code/modules/tgui/external.dm b/code/modules/tgui/external.dm
index 6f9a3fc8e3..d6c663871e 100644
--- a/code/modules/tgui/external.dm
+++ b/code/modules/tgui/external.dm
@@ -76,6 +76,8 @@
* return bool If the UI should be updated or not.
*/
/datum/proc/tgui_act(action, list/params, datum/tgui/ui, datum/tgui_state/state)
+ SHOULD_CALL_PARENT(TRUE)
+ SEND_SIGNAL(src, COMSIG_UI_ACT, usr, action)
// If UI is not interactive or usr calling Topic is not the UI user, bail.
if(!ui || ui.status != STATUS_INTERACTIVE)
return TRUE
@@ -133,6 +135,13 @@
*/
/client/var/list/tgui_windows = list()
+/**
+ * global
+ *
+ * TRUE if cache was reloaded by tgui dev server at least once.
+ */
+/client/var/tgui_cache_reloaded = FALSE
+
/**
* public
*
@@ -193,6 +202,22 @@
// Unconditionally collect tgui logs
if(type == "log")
log_tgui(usr, href_list["message"])
+ // Reload all tgui windows
+ if(type == "cacheReloaded")
+ // Note: Find a solution for the below causing asset CDN to stop working
+ // which doesn't prevent players from using the dev server on prod
+ // whenever the asset CDN is actually used (currently using rsc only)
+ if(/* !check_rights(R_ADMIN) || */ usr.client.tgui_cache_reloaded)
+ return TRUE
+ // Mark as reloaded
+ usr.client.tgui_cache_reloaded = TRUE
+ // Notify windows
+ var/list/windows = usr.client.tgui_windows
+ for(var/window_id in windows)
+ var/datum/tgui_window/window = windows[window_id]
+ if (window.status == TGUI_WINDOW_READY)
+ window.on_message(type, null, href_list)
+ return TRUE
// Locate window
var/window_id = href_list["window_id"]
var/datum/tgui_window/window
diff --git a/code/modules/tgui/tgui.dm b/code/modules/tgui/tgui.dm
index eb128a129b..5b62af468b 100644
--- a/code/modules/tgui/tgui.dm
+++ b/code/modules/tgui/tgui.dm
@@ -90,12 +90,16 @@
opened_at = world.time
window.acquire_lock(src)
if(!window.is_ready())
- window.initialize(inline_assets = list(
+ window.initialize(
+ fancy = user.client.prefs.tgui_fancy,
+ inline_assets = list(
+ get_asset_datum(/datum/asset/simple/tgui_common),
get_asset_datum(/datum/asset/simple/tgui)
))
else
window.send_message("ping")
window.send_asset(get_asset_datum(/datum/asset/simple/fontawesome))
+ window.send_asset(get_asset_datum(/datum/asset/simple/tgfont))
for(var/datum/asset/asset in src_object.ui_assets(user))
window.send_asset(asset)
window.send_message("update", get_payload(
@@ -159,8 +163,8 @@
*/
/datum/tgui/proc/send_asset(datum/asset/asset)
if(!window)
- CRASH("send_asset() can only be called after open().")
- window.send_asset(asset)
+ CRASH("send_asset() was called either without calling open() first or when open() did not return TRUE.")
+ return window.send_asset(asset)
/**
* public
@@ -216,6 +220,11 @@
"fancy" = user.client.prefs.tgui_fancy,
"locked" = user.client.prefs.tgui_lock,
),
+ "client" = list(
+ "ckey" = user.client.ckey,
+ "address" = user.client.address,
+ "computer_id" = user.client.computer_id,
+ ),
"user" = list(
"name" = "[user]",
"ckey" = "[user.ckey]",
@@ -295,8 +304,10 @@
/datum/tgui/proc/on_message(type, list/payload, list/href_list)
// Pass act type messages to tgui_act
if(type && copytext(type, 1, 5) == "act/")
+ var/act_type = copytext(type, 5)
+ log_tgui(user, "Action: [act_type] [href_list["payload"]], Window: [window.id], Source: [src_object]")
process_status()
- if(src_object.tgui_act(copytext(type, 5), payload, src, state))
+ if(src_object.tgui_act(act_type, payload, src, state))
SStgui.update_uis(src_object)
return FALSE
switch(type)
diff --git a/code/modules/tgui/tgui_window.dm b/code/modules/tgui/tgui_window.dm
index c78eda86d3..55a08f8808 100644
--- a/code/modules/tgui/tgui_window.dm
+++ b/code/modules/tgui/tgui_window.dm
@@ -8,12 +8,18 @@
var/client/client
var/pooled
var/pool_index
+ var/is_browser = FALSE
var/status = TGUI_WINDOW_CLOSED
var/locked = FALSE
var/datum/tgui/locked_by
+ var/datum/subscriber_object
+ var/subscriber_delegate
var/fatally_errored = FALSE
var/message_queue
var/sent_assets = list()
+ // Vars passed to initialize proc (and saved for later)
+ var/inline_assets
+ var/fancy
/**
* public
@@ -26,11 +32,12 @@
/datum/tgui_window/New(client/client, id, pooled = FALSE)
src.id = id
src.client = client
+ src.client.tgui_windows[id] = src
src.pooled = pooled
if(pooled)
- client.tgui_windows[id] = src
src.pool_index = TGUI_WINDOW_INDEX(id)
+
/**
* public
*
@@ -39,43 +46,54 @@
* will be put into the queue until the window finishes loading.
*
* optional inline_assets list List of assets to inline into the html.
+ * optional inline_html string Custom HTML to inject.
+ * optional fancy bool If TRUE, will hide the window titlebar.
*/
-/datum/tgui_window/proc/initialize(inline_assets = list())
- log_tgui(client, "[id]/initialize")
+/datum/tgui_window/proc/initialize(
+ inline_assets = list(),
+ inline_html = "",
+ fancy = FALSE)
+ log_tgui(client, "[id]/initiailize ([src])")
if(!client)
return
+ src.inline_assets = inline_assets
+ src.fancy = fancy
status = TGUI_WINDOW_LOADING
fatally_errored = FALSE
- message_queue = null
// Build window options
var/options = "file=[id].html;can_minimize=0;auto_format=0;"
// Remove titlebar and resize handles for a fancy window
- if(client.prefs.tgui_fancy)
+ if(fancy)
options += "titlebar=0;can_resize=0;"
else
options += "titlebar=1;can_resize=1;"
// Generate page html
var/html = SStgui.basehtml
html = replacetextEx(html, "\[tgui:windowId]", id)
- // Process inline assets
- var/inline_styles = ""
- var/inline_scripts = ""
+ // Inject inline assets
+ var/inline_assets_str = ""
for(var/datum/asset/asset in inline_assets)
var/mappings = asset.get_url_mappings()
for(var/name in mappings)
var/url = mappings[name]
- // Not urlencoding since asset strings are considered safe
+ // Not encoding since asset strings are considered safe
if(copytext(name, -4) == ".css")
- inline_styles += " \n"
+ inline_assets_str += "Byond.loadCss('[url]', true);\n"
else if(copytext(name, -3) == ".js")
- inline_scripts += "\n"
- asset.send()
- html = replacetextEx(html, "\n", inline_styles)
- html = replacetextEx(html, "\n", inline_scripts)
+ inline_assets_str += "Byond.loadJs('[url]', true);\n"
+ asset.send(client)
+ if(length(inline_assets_str))
+ inline_assets_str = "\n"
+ html = replacetextEx(html, "\n", inline_assets_str)
+ // Inject custom HTML
+ html = replacetextEx(html, "\n", inline_html)
// Open the window
client << browse(html, "window=[id];[options]")
+ // Detect whether the control is a browser
+ is_browser = winexists(client, id) == "BROWSER"
// Instruct the client to signal UI when the window is closed.
- winset(client, id, "on-close=\"uiclose [id]\"")
+ if(!is_browser)
+ winset(client, id, "on-close=\"uiclose [id]\"")
/**
* public
@@ -126,6 +144,28 @@
locked = FALSE
locked_by = null
+/**
+ * public
+ *
+ * Subscribes the datum to consume window messages on a specified proc.
+ *
+ * Note, that this supports only one subscriber, because code for that
+ * is simpler and therefore faster. If necessary, this can be rewritten
+ * to support multiple subscribers.
+ */
+/datum/tgui_window/proc/subscribe(datum/object, delegate)
+ subscriber_object = object
+ subscriber_delegate = delegate
+
+/**
+ * public
+ *
+ * Unsubscribes the datum. Do not forget to call this when cleaning up.
+ */
+/datum/tgui_window/proc/unsubscribe(datum/object)
+ subscriber_object = null
+ subscriber_delegate = null
+
/**
* public
*
@@ -157,6 +197,7 @@
client << browse(null, "window=[id]")
if(!logout && client)
winset(client, null, "mapwindow.map.focus=true")
+
/**
* public
*
@@ -166,25 +207,40 @@
* required payload list Message payload
* optional force bool Send regardless of the ready status.
*/
-/datum/tgui_window/proc/send_message(type, list/payload, force)
+/datum/tgui_window/proc/send_message(type, payload, force)
if(!client)
return
- var/message = json_encode(list(
- "type" = type,
- "payload" = payload,
- ))
- // Strip #255/improper.
- message = replacetext(message, "\proper", "")
- message = replacetext(message, "\improper", "")
- // Pack for sending via output()
- message = url_encode(message)
+ var/message = TGUI_CREATE_MESSAGE(type, payload)
// Place into queue if window is still loading
if(!force && status != TGUI_WINDOW_READY)
if(!message_queue)
message_queue = list()
message_queue += list(message)
return
- client << output(message, "[id].browser:update")
+ client << output(message, is_browser \
+ ? "[id]:update" \
+ : "[id].browser:update")
+
+/**
+ * public
+ *
+ * Sends a raw payload to tgui window.
+ *
+ * required message string JSON+urlencoded blob to send.
+ * optional force bool Send regardless of the ready status.
+ */
+/datum/tgui_window/proc/send_raw_message(message, force)
+ if(!client)
+ return
+ // Place into queue if window is still loading
+ if(!force && status != TGUI_WINDOW_READY)
+ if(!message_queue)
+ message_queue = list()
+ message_queue += list(message)
+ return
+ client << output(message, is_browser \
+ ? "[id]:update" \
+ : "[id].browser:update")
/**
* public
@@ -192,16 +248,18 @@
* Makes an asset available to use in tgui.
*
* required asset datum/asset
+ *
+ * return bool - TRUE if any assets had to be sent to the client
*/
/datum/tgui_window/proc/send_asset(datum/asset/asset)
if(!client || !asset)
return
+ sent_assets |= list(asset)
+ . = asset.send(client)
if(istype(asset, /datum/asset/spritesheet))
var/datum/asset/spritesheet/spritesheet = asset
send_message("asset/stylesheet", spritesheet.css_filename())
send_message("asset/mappings", asset.get_url_mappings())
- sent_assets += list(asset)
- asset.send(client)
/**
* private
@@ -212,34 +270,56 @@
if(!client || !message_queue)
return
for(var/message in message_queue)
- client << output(message, "[id].browser:update")
+ client << output(message, is_browser \
+ ? "[id]:update" \
+ : "[id].browser:update")
message_queue = null
+
/**
* private
*
* Callback for handling incoming tgui messages.
*/
-/datum/tgui_window/proc/on_message(type, list/payload, list/href_list)
- switch(type)
- if("ready")
- // Status can be READY if user has refreshed the window.
- if(status == TGUI_WINDOW_READY)
- // Resend the assets
- for(var/asset in sent_assets)
- send_asset(asset)
- status = TGUI_WINDOW_READY
- if("log")
- if(href_list["fatal"])
- fatally_errored = TRUE
+/datum/tgui_window/proc/on_message(type, payload, href_list)
+ // Status can be READY if user has refreshed the window.
+ if(type == "ready" && status == TGUI_WINDOW_READY)
+ // Resend the assets
+ for(var/asset in sent_assets)
+ send_asset(asset)
+ // Mark this window as fatally errored which prevents it from
+ // being suspended.
+ if(type == "log" && href_list["fatal"])
+ fatally_errored = TRUE
+ // Mark window as ready since we received this message from somewhere
+ if(status != TGUI_WINDOW_READY)
+ status = TGUI_WINDOW_READY
+ flush_message_queue()
// Pass message to UI that requested the lock
if(locked && locked_by)
- locked_by.on_message(type, payload, href_list)
- flush_message_queue()
- return
+ var/prevent_default = locked_by.on_message(type, payload, href_list)
+ if(prevent_default)
+ return
+ // Pass message to the subscriber
+ else if(subscriber_object)
+ var/prevent_default = call(
+ subscriber_object,
+ subscriber_delegate)(type, payload, href_list)
+ if(prevent_default)
+ return
// If not locked, handle these message types
switch(type)
+ if("ping")
+ send_message("pingReply", payload)
if("suspend")
close(can_be_suspended = TRUE)
if("close")
close(can_be_suspended = FALSE)
+ if("openLink")
+ client << link(href_list["url"])
+ if("cacheReloaded")
+ // Reinitialize
+ initialize(inline_assets = inline_assets, fancy = fancy)
+ // Resend the assets
+ for(var/asset in sent_assets)
+ send_asset(asset)
\ No newline at end of file
diff --git a/code/modules/vehicles/Securitrain_vr.dm b/code/modules/vehicles/Securitrain_vr.dm
index e8b1750691..1c52b6a4ea 100644
--- a/code/modules/vehicles/Securitrain_vr.dm
+++ b/code/modules/vehicles/Securitrain_vr.dm
@@ -64,7 +64,7 @@
cell = new /obj/item/weapon/cell/high(src)
key = new key_type(src)
var/image/I = new(icon = 'icons/obj/vehicles.dmi', icon_state = "cargo_engine_overlay", layer = src.layer + 0.2) //over mobs
- overlays += I
+ add_overlay(I)
turn_off() //so engine verbs are correctly set
/obj/vehicle/train/security/engine/Move(var/turf/destination)
@@ -319,7 +319,7 @@
C.pixel_y += load_offset_y
C.layer = layer
- overlays += C
+ add_overlay(C)
//we can set these back now since we have already cloned the icon into the overlay
C.pixel_x = initial(C.pixel_x)
@@ -332,7 +332,7 @@
load = dummy_load.actual_load
dummy_load.actual_load = null
qdel(dummy_load)
- overlays.Cut()
+ cut_overlays()
..()
//-------------------------------------------
diff --git a/code/modules/vehicles/bike.dm b/code/modules/vehicles/bike.dm
index fe059b9e07..ebfde69976 100644
--- a/code/modules/vehicles/bike.dm
+++ b/code/modules/vehicles/bike.dm
@@ -181,21 +181,21 @@
..()
/obj/vehicle/bike/update_icon()
- overlays.Cut()
+ cut_overlays()
if(custom_icon)
if(on)
var/image/bodypaint = image('icons/obj/custom_items_vehicle.dmi', "[bike_icon]_on_a", src.layer)
bodypaint.color = paint_color
- overlays += bodypaint
+ add_overlay(bodypaint)
var/image/overmob = image('icons/obj/custom_items_vehicle.dmi', "[bike_icon]_on_overlay", MOB_LAYER + 1)
var/image/overmob_color = image('icons/obj/custom_items_vehicle.dmi', "[bike_icon]_on_overlay_a", MOB_LAYER + 1)
overmob.plane = MOB_PLANE
overmob_color.plane = MOB_PLANE
overmob_color.color = paint_color
- overlays += overmob
- overlays += overmob_color
+ add_overlay(overmob)
+ add_overlay(overmob_color)
if(open)
icon_state = "[bike_icon]_on-open"
else
@@ -203,15 +203,15 @@
else
var/image/bodypaint = image('icons/obj/custom_items_vehicle.dmi', "[bike_icon]_off_a", src.layer)
bodypaint.color = paint_color
- overlays += bodypaint
+ add_overlay(bodypaint)
var/image/overmob = image('icons/obj/custom_items_vehicle.dmi', "[bike_icon]_off_overlay", MOB_LAYER + 1)
var/image/overmob_color = image('icons/obj/custom_items_vehicle.dmi', "[bike_icon]_off_overlay_a", MOB_LAYER + 1)
overmob.plane = MOB_PLANE
overmob_color.plane = MOB_PLANE
overmob_color.color = paint_color
- overlays += overmob
- overlays += overmob_color
+ add_overlay(overmob)
+ add_overlay(overmob_color)
if(open)
icon_state = "[bike_icon]_off-open"
else
@@ -222,15 +222,15 @@
if(on)
var/image/bodypaint = image('icons/obj/bike.dmi', "[bike_icon]_on_a", src.layer)
bodypaint.color = paint_color
- overlays += bodypaint
+ add_overlay(bodypaint)
var/image/overmob = image('icons/obj/bike.dmi', "[bike_icon]_on_overlay", MOB_LAYER + 1)
var/image/overmob_color = image('icons/obj/bike.dmi', "[bike_icon]_on_overlay_a", MOB_LAYER + 1)
overmob.plane = MOB_PLANE
overmob_color.plane = MOB_PLANE
overmob_color.color = paint_color
- overlays += overmob
- overlays += overmob_color
+ add_overlay(overmob)
+ add_overlay(overmob_color)
if(open)
icon_state = "[bike_icon]_on-open"
else
@@ -238,15 +238,15 @@
else
var/image/bodypaint = image('icons/obj/bike.dmi', "[bike_icon]_off_a", src.layer)
bodypaint.color = paint_color
- overlays += bodypaint
+ add_overlay(bodypaint)
var/image/overmob = image('icons/obj/bike.dmi', "[bike_icon]_off_overlay", MOB_LAYER + 1)
var/image/overmob_color = image('icons/obj/bike.dmi', "[bike_icon]_off_overlay_a", MOB_LAYER + 1)
overmob.plane = MOB_PLANE
overmob_color.plane = MOB_PLANE
overmob_color.color = paint_color
- overlays += overmob
- overlays += overmob_color
+ add_overlay(overmob)
+ add_overlay(overmob_color)
if(open)
icon_state = "[bike_icon]_off-open"
else
diff --git a/code/modules/vehicles/cargo_train.dm b/code/modules/vehicles/cargo_train.dm
index a118b1c258..37da72f536 100644
--- a/code/modules/vehicles/cargo_train.dm
+++ b/code/modules/vehicles/cargo_train.dm
@@ -47,7 +47,7 @@
cell = new /obj/item/weapon/cell/high(src)
key = new key_type(src)
var/image/I = new(icon = 'icons/obj/vehicles_vr.dmi', icon_state = "cargo_engine_overlay", layer = src.layer + 0.2) //over mobs //VOREStation edit
- overlays += I
+ add_overlay(I)
turn_off() //so engine verbs are correctly set
/obj/vehicle/train/engine/Move(var/turf/destination)
@@ -320,7 +320,7 @@
C.pixel_y += load_offset_y
C.layer = layer
- overlays += C
+ add_overlay(C)
//we can set these back now since we have already cloned the icon into the overlay
C.pixel_x = initial(C.pixel_x)
@@ -333,7 +333,7 @@
load = dummy_load.actual_load
dummy_load.actual_load = null
qdel(dummy_load)
- overlays.Cut()
+ cut_overlays()
..()
//-------------------------------------------
@@ -392,11 +392,11 @@
// VOREStation Edit Start - Overlay stuff for the chair-like effect
/obj/vehicle/train/engine/update_icon()
..()
- overlays = null
+ cut_overlays()
var/image/O = image(icon = 'icons/obj/vehicles_vr.dmi', icon_state = "cargo_engine_overlay", dir = src.dir)
O.layer = FLY_LAYER
O.plane = MOB_PLANE
- overlays += O
+ add_overlay(O)
/obj/vehicle/train/engine/set_dir()
..()
diff --git a/code/modules/vehicles/quad.dm b/code/modules/vehicles/quad.dm
index 3524895ba2..2e83164b91 100644
--- a/code/modules/vehicles/quad.dm
+++ b/code/modules/vehicles/quad.dm
@@ -83,11 +83,11 @@
/obj/vehicle/train/engine/quadbike/update_icon()
..()
- overlays.Cut()
+ cut_overlays()
if(custom_frame)
var/image/Bodypaint = new(icon = 'icons/obj/custom_items_vehicle.dmi', icon_state = "[frame_state]_a", layer = src.layer)
Bodypaint.color = paint_color
- overlays += Bodypaint
+ add_overlay(Bodypaint)
var/image/Overmob = new(icon = 'icons/obj/custom_items_vehicle.dmi', icon_state = "[frame_state]_overlay", layer = src.layer + 0.2) //over mobs
var/image/Overmob_color = new(icon = 'icons/obj/custom_items_vehicle.dmi', icon_state = "[frame_state]_overlay_a", layer = src.layer + 0.2) //over the over mobs, gives the color.
@@ -95,13 +95,13 @@
Overmob_color.plane = MOB_PLANE
Overmob_color.color = paint_color
- overlays += Overmob
- overlays += Overmob_color
+ add_overlay(Overmob)
+ add_overlay(Overmob_color)
return
var/image/Bodypaint = new(icon = 'icons/obj/vehicles_64x64.dmi', icon_state = "[frame_state]_a", layer = src.layer)
Bodypaint.color = paint_color
- overlays += Bodypaint
+ add_overlay(Bodypaint)
var/image/Overmob = new(icon = 'icons/obj/vehicles_64x64.dmi', icon_state = "[frame_state]_overlay", layer = src.layer + 0.2) //over mobs
var/image/Overmob_color = new(icon = 'icons/obj/vehicles_64x64.dmi', icon_state = "[frame_state]_overlay_a", layer = src.layer + 0.2) //over the over mobs, gives the color.
@@ -109,8 +109,8 @@
Overmob_color.plane = MOB_PLANE
Overmob_color.color = paint_color
- overlays += Overmob
- overlays += Overmob_color
+ add_overlay(Overmob)
+ add_overlay(Overmob_color)
/obj/vehicle/train/engine/quadbike/Bump(atom/Obstacle)
if(!istype(Obstacle, /atom/movable))
@@ -242,11 +242,11 @@
/obj/vehicle/train/trolley/trailer/update_icon()
..()
- overlays.Cut()
+ cut_overlays()
var/image/Bodypaint = new(icon = 'icons/obj/vehicles_64x64.dmi', icon_state = "[initial(icon_state)]_a", layer = src.layer)
Bodypaint.color = paint_color
- overlays += Bodypaint
+ add_overlay(Bodypaint)
/obj/vehicle/train/trolley/trailer/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(istype(W, /obj/item/device/multitool) && open)
diff --git a/code/modules/vehicles/rover_vr.dm b/code/modules/vehicles/rover_vr.dm
index a3225eb4aa..1367408743 100644
--- a/code/modules/vehicles/rover_vr.dm
+++ b/code/modules/vehicles/rover_vr.dm
@@ -332,7 +332,7 @@
C.pixel_y += load_offset_y
C.layer = layer
- overlays += C
+ add_overlay(C)
//we can set these back now since we have already cloned the icon into the overlay
C.pixel_x = initial(C.pixel_x)
@@ -345,7 +345,7 @@
load = dummy_load.actual_load
dummy_load.actual_load = null
qdel(dummy_load)
- overlays.Cut()
+ cut_overlays()
..()
//-------------------------------------------
diff --git a/code/modules/virus2/biohazard destroyer.dm b/code/modules/virus2/biohazard destroyer.dm
index 2e9136f1e2..7d05c2f607 100644
--- a/code/modules/virus2/biohazard destroyer.dm
+++ b/code/modules/virus2/biohazard destroyer.dm
@@ -11,7 +11,7 @@
if(I.type in typesof(path))
user.drop_item()
qdel(I)
- overlays += image('icons/obj/pipes/disposal.dmi', "dispover-handle")
+ add_overlay("dispover-handle")
return
user.drop_item()
I.loc = src.loc
diff --git a/code/modules/vore/eating/contaminate_vr.dm b/code/modules/vore/eating/contaminate_vr.dm
index 2a9f9ac05f..d82ae4bcd4 100644
--- a/code/modules/vore/eating/contaminate_vr.dm
+++ b/code/modules/vore/eating/contaminate_vr.dm
@@ -32,7 +32,7 @@ var/list/gurgled_overlays = list(
if(!gurgled)
gurgled = TRUE
gurgled_color = contamination_color
- overlays += gurgled_overlays[gurgled_color]
+ add_overlay(gurgled_overlays[gurgled_color])
var/list/pickfrom = contamination_flavors[contamination_flavor]
var/gurgleflavor = pick(pickfrom)
cleanname = src.name
@@ -54,7 +54,7 @@ var/list/gurgled_overlays = list(
/obj/item/decontaminate() //Decontaminate the sogginess as well.
..()
gurgled = FALSE
- overlays -= gurgled_overlays[gurgled_color]
+ cut_overlay(gurgled_overlays[gurgled_color])
if(cleanname)
name = cleanname
if(cleandesc)
diff --git a/code/modules/vore/eating/digest_act_vr.dm b/code/modules/vore/eating/digest_act_vr.dm
index 3e3ed7f737..d480a89ce3 100644
--- a/code/modules/vore/eating/digest_act_vr.dm
+++ b/code/modules/vore/eating/digest_act_vr.dm
@@ -26,7 +26,7 @@
if(isbelly(item_storage))
var/obj/belly/B = item_storage
- g_damage = 0.25 * (B.digest_brute + B.digest_burn + (B.digest_oxy)/2)
+ g_damage = 0.25 * (B.digest_brute + B.digest_burn)
if(digest_stage > 0)
if(g_damage > digest_stage)
@@ -91,7 +91,7 @@
var/obj/belly/B = item_storage
if(ishuman(B.owner))
var/mob/living/carbon/human/H = B.owner
- reagents.trans_to_holder(H.ingested, (reagents.total_volume * 0.3), 1, 0)
+ reagents.trans_to_holder(H.ingested, (reagents.total_volume * 0.5), 1, 0)
else if(isrobot(B.owner))
var/mob/living/silicon/robot/R = B.owner
R.cell.charge += 150
diff --git a/code/modules/vore/eating/vorepanel_vr.dm b/code/modules/vore/eating/vorepanel_vr.dm
index 96d3947d03..a54987f615 100644
--- a/code/modules/vore/eating/vorepanel_vr.dm
+++ b/code/modules/vore/eating/vorepanel_vr.dm
@@ -4,8 +4,8 @@
#define BELLIES_MAX 40
#define BELLIES_NAME_MIN 2
-#define BELLIES_NAME_MAX 20
-#define BELLIES_DESC_MAX 2048
+#define BELLIES_NAME_MAX 40
+#define BELLIES_DESC_MAX 4096
#define FLAVOR_MAX 40
/mob/living
diff --git a/code/modules/vore/fluffstuff/custom_clothes_vr.dm b/code/modules/vore/fluffstuff/custom_clothes_vr.dm
index ab00618828..23e24a0260 100644
--- a/code/modules/vore/fluffstuff/custom_clothes_vr.dm
+++ b/code/modules/vore/fluffstuff/custom_clothes_vr.dm
@@ -751,9 +751,9 @@
item_state = "pom_mob"
w_class = ITEMSIZE_SMALL
- on = 0
- brightness_on = 5
+ light_range = 5
light_overlay = null
+ light_system = MOVABLE_LIGHT
action_button_name = "Toggle pom-pom"
@@ -768,15 +768,13 @@
// to_chat(user, "You cannot turn the light on while in this [user.loc]")
// return
- switch(on)
+ switch(light_on)
if(0)
- on = 1
to_chat(user, "You light up your pom-pom.")
icon_state = "pom-on"
item_state = "pom-on_mob"
if(1)
- on = 0
to_chat(user, "You dim your pom-pom.")
icon_state = "pom"
item_state = "pom_mob"
diff --git a/code/modules/xenoarcheaology/sampling.dm b/code/modules/xenoarcheaology/sampling.dm
index 8c2a99a570..3cdea12960 100644
--- a/code/modules/xenoarcheaology/sampling.dm
+++ b/code/modules/xenoarcheaology/sampling.dm
@@ -143,8 +143,8 @@
//update the sample bag
filled_bag.icon_state = "evidence"
var/image/I = image("icon"=R, "layer"=FLOAT_LAYER)
- filled_bag.overlays += I
- filled_bag.overlays += "evidence"
+ add_overlay(I)
+ add_overlay("evidence")
filled_bag.w_class = ITEMSIZE_TINY
to_chat(user, "You take a core sample of the [item_to_sample]. ")
diff --git a/code/modules/xenoarcheaology/tools/artifact_analyser.dm b/code/modules/xenoarcheaology/tools/artifact_analyser.dm
index ef09ce0f6d..090bef1c28 100644
--- a/code/modules/xenoarcheaology/tools/artifact_analyser.dm
+++ b/code/modules/xenoarcheaology/tools/artifact_analyser.dm
@@ -109,7 +109,7 @@
P.info += " "
P.info += "[bicon(scanned_object)] [results]"
P.stamped = list(/obj/item/weapon/stamp)
- P.overlays = list("paper_stamped")
+ P.add_overlay("paper_stamped")
if(scanned_object && istype(scanned_object, /obj/machinery/artifact))
var/obj/machinery/artifact/A = scanned_object
diff --git a/code/modules/xenoarcheaology/tools/geosample_scanner.dm b/code/modules/xenoarcheaology/tools/geosample_scanner.dm
index f905d65606..26645416d4 100644
--- a/code/modules/xenoarcheaology/tools/geosample_scanner.dm
+++ b/code/modules/xenoarcheaology/tools/geosample_scanner.dm
@@ -303,7 +303,7 @@
var/obj/item/weapon/paper/P = new(src)
P.name = "[src] report #[++report_num]: [scanned_item.name]"
P.stamped = list(/obj/item/weapon/stamp)
- P.overlays = list("paper_stamped")
+ P.add_overlay("paper_stamped")
//work out data
var/data = " - Mundane object: [scanned_item.desc ? scanned_item.desc : "No information on record."] "
diff --git a/code/modules/xenoarcheaology/tools/suspension_generator.dm b/code/modules/xenoarcheaology/tools/suspension_generator.dm
index 53a864e7db..cd39d0e181 100644
--- a/code/modules/xenoarcheaology/tools/suspension_generator.dm
+++ b/code/modules/xenoarcheaology/tools/suspension_generator.dm
@@ -29,7 +29,7 @@
for(var/obj/item/I in T)
if(!suspension_field.contents.len)
suspension_field.icon_state = "energynet"
- suspension_field.overlays += "shield2"
+ suspension_field.add_overlay("shield2")
I.forceMove(suspension_field)
else
deactivate()
@@ -150,7 +150,7 @@
if(collected)
suspension_field.icon_state = "energynet"
- suspension_field.overlays += "shield2"
+ suspension_field.add_overlay("shield2")
visible_message("[bicon(suspension_field)] [suspension_field] gently absconds [collected > 1 ? "something" : "several things"]. ")
else
if(istype(T,/turf/simulated/mineral) || istype(T,/turf/simulated/wall))
diff --git a/code/modules/xenobio2/mob/slime/slime life.dm b/code/modules/xenobio2/mob/slime/slime life.dm
index ca5075f705..cc784a63d1 100644
--- a/code/modules/xenobio2/mob/slime/slime life.dm
+++ b/code/modules/xenobio2/mob/slime/slime life.dm
@@ -36,7 +36,7 @@ Slime specific life events go here.
I.icon_state = "aslime-sad"
else
I.icon_state = "aslime-angry"
- overlays += I
+ add_overlay(I)
emote_on = 1
spawn(30)
GenerateAdultIcon()
@@ -46,7 +46,7 @@ Slime specific life events go here.
if(is_child)
icon_state = "slime baby dead"
else
- overlays.Cut()
+ cut_overlays()
icon_state = "slime adult dead"
color = traitdat.traits[TRAIT_XENO_COLOR]
diff --git a/code/modules/xenobio2/mob/slime/slime procs.dm b/code/modules/xenobio2/mob/slime/slime procs.dm
index bd74562d9f..ac03f788c3 100644
--- a/code/modules/xenobio2/mob/slime/slime procs.dm
+++ b/code/modules/xenobio2/mob/slime/slime procs.dm
@@ -61,7 +61,7 @@ Slime specific procs go here.
GenerateAdult()
/mob/living/simple_mob/xeno/slime/proc/GenerateChild()
- overlays.Cut()
+ cut_overlays()
name = "[nameVar] baby slime"
real_name = "[nameVar] baby slime"
desc = "A shifting blob of [nameVar] goo."
@@ -75,7 +75,7 @@ Slime specific procs go here.
return 1
/mob/living/simple_mob/xeno/slime/proc/GenerateAdult()
- overlays.Cut()
+ cut_overlays()
name = "[nameVar] slime"
real_name = "[nameVar] slime"
desc = "A shifting mass of [nameVar] goo."
@@ -85,12 +85,12 @@ Slime specific procs go here.
GenerateAdultIcon()
/mob/living/simple_mob/xeno/slime/proc/GenerateAdultIcon() //Hack and slash adventure game to make slimes have no color on light effects later
- overlays.Cut()
+ cut_overlays()
var/image/Img = new(src.icon)
Img.icon_state = "slime adult"
Img.color = traitdat.traits[TRAIT_XENO_COLOR]
Img.layer = src.layer
- overlays += Img
+ add_overlay(Img)
switch(overlay)
if(SHINYOVERLAY)
@@ -99,7 +99,7 @@ Slime specific procs go here.
I.icon_state = "slime shiny"
I.layer = src.layer + 0.1
I.color = "#FFFFFF"
- overlays += I
+ add_overlay(I)
if(LIGHTOVERLAY)
var/image/I = new(src.icon)
I.icon = src.icon
@@ -107,7 +107,7 @@ Slime specific procs go here.
I.icon_state = "slime light"
I.layer = src.layer + 0.1
I.color = "#FFFFFF"
- overlays += I
+ add_overlay(I)
/mob/living/simple_mob/xeno/slime/handle_reagents()
if(!stasis)
diff --git a/code/unit_tests/decl_tests.dm b/code/unit_tests/decl_tests.dm
new file mode 100644
index 0000000000..4879fa5bc4
--- /dev/null
+++ b/code/unit_tests/decl_tests.dm
@@ -0,0 +1,26 @@
+/datum/unit_test/emotes_shall_have_unique_keys
+ name = "DECLS: Emotes Shall Have Unique Keys"
+
+/datum/unit_test/emotes_shall_have_unique_keys/start_test()
+
+ var/list/keys = list()
+ var/list/duplicates = list()
+
+ var/list/all_emotes = decls_repository.get_decls_of_subtype(/decl/emote)
+ for(var/etype in all_emotes)
+ var/decl/emote/emote = all_emotes[etype]
+ if(!emote.key)
+ continue
+ if(emote.key in keys)
+ if(!duplicates[emote.key])
+ duplicates[emote.key] = list()
+ duplicates[emote.key] += etype
+ else
+ keys += emote.key
+
+ if(length(duplicates))
+ fail("[length(duplicates)] emote\s had overlapping keys: [english_list(duplicates)].")
+ else
+ pass("All emotes had unique keys.")
+
+ return TRUE
diff --git a/code/unit_tests/map_tests.dm b/code/unit_tests/map_tests.dm
index 8edf36fd4d..6dfec2bd60 100644
--- a/code/unit_tests/map_tests.dm
+++ b/code/unit_tests/map_tests.dm
@@ -115,9 +115,42 @@
var/list/edge_log = list()
if(active_edges)
for(var/connection_edge/E in air_master.active_edges)
+ var/a_temp = E.A.air.temperature
+ var/a_moles = E.A.air.total_moles
+ var/a_vol = E.A.air.volume
+ var/a_gas = ""
+ for(var/gas in E.A.air.gas)
+ a_gas += "[gas]=[E.A.air.gas[gas]]"
+
+ var/b_temp
+ var/b_moles
+ var/b_vol
+ var/b_gas = ""
+
+ // Two zones mixing
+ if(istype(E, /connection_edge/zone))
+ var/connection_edge/zone/Z = E
+ b_temp = Z.B.air.temperature
+ b_moles = Z.B.air.total_moles
+ b_vol = Z.B.air.volume
+ for(var/gas in Z.B.air.gas)
+ b_gas += "[gas]=[Z.B.air.gas[gas]]"
+
+ // Zone and unsimulated turfs mixing
+ if(istype(E, /connection_edge/unsimulated))
+ var/connection_edge/unsimulated/U = E
+ b_temp = U.B.temperature
+ b_moles = "Unsim"
+ b_vol = "Unsim"
+ for(var/gas in U.air.gas)
+ b_gas += "[gas]=[U.air.gas[gas]]"
+
edge_log += "Active Edge [E] ([E.type])"
+ edge_log += "Edge side A: T:[a_temp], Mol:[a_moles], Vol:[a_vol], Gas:[a_gas]"
+ edge_log += "Edge side B: T:[b_temp], Mol:[b_moles], Vol:[b_vol], Gas:[b_gas]"
+
for(var/turf/T in E.connecting_turfs)
- edge_log += "+--- Connecting Turf [T] @ [T.x], [T.y], [T.z]"
+ edge_log += "+--- Connecting Turf [T] ([T.type]) @ [T.x], [T.y], [T.z] ([T.loc])"
if(active_edges)
fail("Maps contained [active_edges] active edges at round-start.\n" + edge_log.Join("\n"))
diff --git a/icons/_nanomaps/tether_nanomap_z4.png b/icons/_nanomaps/tether_nanomap_z4.png
index a695194be3..c5bb7a9a86 100644
Binary files a/icons/_nanomaps/tether_nanomap_z4.png and b/icons/_nanomaps/tether_nanomap_z4.png differ
diff --git a/icons/effects/light_overlays/light_128.dmi b/icons/effects/light_overlays/light_128.dmi
new file mode 100644
index 0000000000..22dc0b0108
Binary files /dev/null and b/icons/effects/light_overlays/light_128.dmi differ
diff --git a/icons/effects/light_overlays/light_160.dmi b/icons/effects/light_overlays/light_160.dmi
new file mode 100644
index 0000000000..26dfa453c5
Binary files /dev/null and b/icons/effects/light_overlays/light_160.dmi differ
diff --git a/icons/effects/light_overlays/light_192.dmi b/icons/effects/light_overlays/light_192.dmi
new file mode 100644
index 0000000000..aca94ee0ca
Binary files /dev/null and b/icons/effects/light_overlays/light_192.dmi differ
diff --git a/icons/effects/light_overlays/light_224.dmi b/icons/effects/light_overlays/light_224.dmi
new file mode 100644
index 0000000000..9fab531d1a
Binary files /dev/null and b/icons/effects/light_overlays/light_224.dmi differ
diff --git a/icons/effects/light_overlays/light_256.dmi b/icons/effects/light_overlays/light_256.dmi
new file mode 100644
index 0000000000..701562efcd
Binary files /dev/null and b/icons/effects/light_overlays/light_256.dmi differ
diff --git a/icons/effects/light_overlays/light_288.dmi b/icons/effects/light_overlays/light_288.dmi
new file mode 100644
index 0000000000..b6eac180f7
Binary files /dev/null and b/icons/effects/light_overlays/light_288.dmi differ
diff --git a/icons/effects/light_overlays/light_32.dmi b/icons/effects/light_overlays/light_32.dmi
new file mode 100644
index 0000000000..5269b1fba3
Binary files /dev/null and b/icons/effects/light_overlays/light_32.dmi differ
diff --git a/icons/effects/light_overlays/light_320.dmi b/icons/effects/light_overlays/light_320.dmi
new file mode 100644
index 0000000000..bf263c4b29
Binary files /dev/null and b/icons/effects/light_overlays/light_320.dmi differ
diff --git a/icons/effects/light_overlays/light_352.dmi b/icons/effects/light_overlays/light_352.dmi
new file mode 100644
index 0000000000..f895792da4
Binary files /dev/null and b/icons/effects/light_overlays/light_352.dmi differ
diff --git a/icons/effects/light_overlays/light_64.dmi b/icons/effects/light_overlays/light_64.dmi
new file mode 100644
index 0000000000..37fc5084ab
Binary files /dev/null and b/icons/effects/light_overlays/light_64.dmi differ
diff --git a/icons/effects/light_overlays/light_96.dmi b/icons/effects/light_overlays/light_96.dmi
new file mode 100644
index 0000000000..b689a13701
Binary files /dev/null and b/icons/effects/light_overlays/light_96.dmi differ
diff --git a/icons/effects/light_overlays/light_cone.dmi b/icons/effects/light_overlays/light_cone.dmi
new file mode 100644
index 0000000000..75f322a937
Binary files /dev/null and b/icons/effects/light_overlays/light_cone.dmi differ
diff --git a/icons/effects/lighting_object.dmi b/icons/effects/lighting_object.dmi
new file mode 100644
index 0000000000..4b75e0f6c9
Binary files /dev/null and b/icons/effects/lighting_object.dmi differ
diff --git a/icons/effects/lighting_overlay.dmi b/icons/effects/lighting_overlay.dmi
deleted file mode 100644
index 80807db1e6..0000000000
Binary files a/icons/effects/lighting_overlay.dmi and /dev/null differ
diff --git a/icons/effects/map_effects.dmi b/icons/effects/map_effects.dmi
index 0f28f9d2da..8b2dc22e3c 100644
Binary files a/icons/effects/map_effects.dmi and b/icons/effects/map_effects.dmi differ
diff --git a/icons/misc/title_vr.dmi b/icons/misc/title_vr.dmi
index fbdf1aa104..7089d239e1 100644
Binary files a/icons/misc/title_vr.dmi and b/icons/misc/title_vr.dmi differ
diff --git a/icons/mob/back_vr.dmi b/icons/mob/back_vr.dmi
index 823222a96f..d5e2ef5adf 100644
Binary files a/icons/mob/back_vr.dmi and b/icons/mob/back_vr.dmi differ
diff --git a/icons/mob/head_vr.dmi b/icons/mob/head_vr.dmi
index 77aeb8bff7..417faba92c 100644
Binary files a/icons/mob/head_vr.dmi and b/icons/mob/head_vr.dmi differ
diff --git a/icons/mob/hud_vr.dmi b/icons/mob/hud_vr.dmi
index 0233dd84fb..5a5cc23522 100644
Binary files a/icons/mob/hud_vr.dmi and b/icons/mob/hud_vr.dmi differ
diff --git a/icons/mob/randomlandmarks.dmi b/icons/mob/randomlandmarks.dmi
new file mode 100644
index 0000000000..5cdaf35cb6
Binary files /dev/null and b/icons/mob/randomlandmarks.dmi differ
diff --git a/icons/mob/screen_gen.dmi b/icons/mob/screen_gen.dmi
index 75ba00f026..00dc3f02a6 100644
Binary files a/icons/mob/screen_gen.dmi and b/icons/mob/screen_gen.dmi differ
diff --git a/icons/mob/species/teshari/helmet_vr.dmi b/icons/mob/species/teshari/helmet_vr.dmi
index 757bfea1f2..ec34ef23f1 100644
Binary files a/icons/mob/species/teshari/helmet_vr.dmi and b/icons/mob/species/teshari/helmet_vr.dmi differ
diff --git a/icons/mob/suit_vr.dmi b/icons/mob/suit_vr.dmi
index e3d9079bbf..77862540b3 100644
Binary files a/icons/mob/suit_vr.dmi and b/icons/mob/suit_vr.dmi differ
diff --git a/icons/mob/ties_vr.dmi b/icons/mob/ties_vr.dmi
index 2b45005380..c5e7908d71 100644
Binary files a/icons/mob/ties_vr.dmi and b/icons/mob/ties_vr.dmi differ
diff --git a/icons/mob/uniform_rolled_down_vr.dmi b/icons/mob/uniform_rolled_down_vr.dmi
index feda2342c3..726708d822 100644
Binary files a/icons/mob/uniform_rolled_down_vr.dmi and b/icons/mob/uniform_rolled_down_vr.dmi differ
diff --git a/icons/mob/uniform_vr.dmi b/icons/mob/uniform_vr.dmi
index b43925b3f3..cd9683972e 100644
Binary files a/icons/mob/uniform_vr.dmi and b/icons/mob/uniform_vr.dmi differ
diff --git a/icons/obj/aliencoins.dmi b/icons/obj/aliencoins.dmi
new file mode 100644
index 0000000000..53bfd53d04
Binary files /dev/null and b/icons/obj/aliencoins.dmi differ
diff --git a/icons/obj/clothing/backpack_vr.dmi b/icons/obj/clothing/backpack_vr.dmi
index d9bf6376e8..8e5af1c2af 100644
Binary files a/icons/obj/clothing/backpack_vr.dmi and b/icons/obj/clothing/backpack_vr.dmi differ
diff --git a/icons/obj/clothing/hats_vr.dmi b/icons/obj/clothing/hats_vr.dmi
index e46e524ad6..bc6cd12245 100644
Binary files a/icons/obj/clothing/hats_vr.dmi and b/icons/obj/clothing/hats_vr.dmi differ
diff --git a/icons/obj/clothing/helmets_vr.dmi b/icons/obj/clothing/helmets_vr.dmi
index 4d8beae127..3b210b9980 100644
Binary files a/icons/obj/clothing/helmets_vr.dmi and b/icons/obj/clothing/helmets_vr.dmi differ
diff --git a/icons/obj/clothing/suits_vr.dmi b/icons/obj/clothing/suits_vr.dmi
index 738f0a8d5b..31083070be 100644
Binary files a/icons/obj/clothing/suits_vr.dmi and b/icons/obj/clothing/suits_vr.dmi differ
diff --git a/icons/obj/clothing/ties_vr.dmi b/icons/obj/clothing/ties_vr.dmi
index 537da3aa5f..fdb8608648 100644
Binary files a/icons/obj/clothing/ties_vr.dmi and b/icons/obj/clothing/ties_vr.dmi differ
diff --git a/icons/obj/clothing/uniforms_vr.dmi b/icons/obj/clothing/uniforms_vr.dmi
index 17204c732e..4dc173cff2 100644
Binary files a/icons/obj/clothing/uniforms_vr.dmi and b/icons/obj/clothing/uniforms_vr.dmi differ
diff --git a/icons/obj/device_vr.dmi b/icons/obj/device_vr.dmi
index 378e138a54..80e190b64e 100644
Binary files a/icons/obj/device_vr.dmi and b/icons/obj/device_vr.dmi differ
diff --git a/icons/obj/flora/moretrees_vr.dmi b/icons/obj/flora/moretrees_vr.dmi
new file mode 100644
index 0000000000..e705c6472c
Binary files /dev/null and b/icons/obj/flora/moretrees_vr.dmi differ
diff --git a/icons/obj/food.dmi b/icons/obj/food.dmi
index 54517842e1..618566f6e2 100644
Binary files a/icons/obj/food.dmi and b/icons/obj/food.dmi differ
diff --git a/icons/obj/gun_vr.dmi b/icons/obj/gun_vr.dmi
index a794ff88a3..e274e2c1fd 100644
Binary files a/icons/obj/gun_vr.dmi and b/icons/obj/gun_vr.dmi differ
diff --git a/icons/obj/machines/gateway_vr.dmi b/icons/obj/machines/gateway_vr.dmi
new file mode 100644
index 0000000000..60f4fdf486
Binary files /dev/null and b/icons/obj/machines/gateway_vr.dmi differ
diff --git a/icons/obj/monitors.dmi b/icons/obj/monitors.dmi
index 268fa41af9..6454490dba 100644
Binary files a/icons/obj/monitors.dmi and b/icons/obj/monitors.dmi differ
diff --git a/icons/turf/outdoors_edge.dmi b/icons/turf/outdoors_edge.dmi
index bb334272fb..1c852ecaeb 100644
Binary files a/icons/turf/outdoors_edge.dmi and b/icons/turf/outdoors_edge.dmi differ
diff --git a/icons/turf/outdoors_edge_vr.dmi b/icons/turf/outdoors_edge_vr.dmi
new file mode 100644
index 0000000000..7c3636a3bb
Binary files /dev/null and b/icons/turf/outdoors_edge_vr.dmi differ
diff --git a/icons/turf/outdoors_vr.dmi b/icons/turf/outdoors_vr.dmi
new file mode 100644
index 0000000000..2629d85a43
Binary files /dev/null and b/icons/turf/outdoors_vr.dmi differ
diff --git a/maps/gateway_vr/eggnogtown.dm b/maps/gateway_vr/eggnogtown.dm
new file mode 100644
index 0000000000..9626fd1409
--- /dev/null
+++ b/maps/gateway_vr/eggnogtown.dm
@@ -0,0 +1,169 @@
+/obj/effect/overmap/visitable/sector/tether_gateway/eggnogtown
+ name = "bluespace shimmer"
+ desc = "The shimmering reflection of some sort of bluespace phenomena."
+ scanner_desc = @{"It is difficult to tell just what is beyond this strange shimmering shape. The air beyond seems breathable, if cold."}
+ icon = 'icons/obj/overmap_vr.dmi'
+ icon_state = "shimmer"
+ color = "#171DFF" //bloo
+ in_space = 0
+
+/datum/map_template/tether_lateload/gateway/eggnogtown/on_map_loaded(z)
+ . = ..()
+ new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, z, world.maxx - 4, world.maxy - 4) // Create the mining Z-level.
+ new /datum/random_map/noise/ore(null, 1, 1, z, 64, 64) // Create the mining ore distribution map.
+
+/datum/map_template/tether_lateload/gateway/eggnogtownunderground/on_map_loaded(z)
+ . = ..()
+ new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, z, world.maxx - 4, world.maxy - 4) // Create the mining Z-level.
+ new /datum/random_map/noise/ore(null, 1, 1, z, 64, 64) // Create the mining ore distribution map.
+
+
+/obj/effect/landmark/map_data/eggnogtown
+ height = 2
+
+//Areas//
+
+/area/gateway/eggnogtown
+ name = "Eggnog Town"
+ icon = 'icons/turf/areas_vr.dmi'
+ icon_state = "purwhicir"
+ requires_power = FALSE
+ dynamic_lighting = TRUE
+ flags = RAD_SHIELDED
+ base_turf = /turf/simulated/floor/outdoors/newdirt
+
+
+/area/gateway/eggnogtown/gateway
+ name = "Eggnog Town Gateway"
+ icon_state = "cyawhisqu"
+
+/area/gateway/eggnogtown/bar
+ name = "Heart's Hearth Bar"
+ icon_state = "cyawhisqu"
+
+/area/gateway/eggnogtown/hall
+ name = "Eggnog Town Event Hall"
+ icon_state = "cyawhisqu"
+/area/gateway/eggnogtown/hall/north
+ name = "Eggnog Town Event Hall north"
+ icon_state = "cyawhisqu"
+/area/gateway/eggnogtown/hall/south
+ name = "Eggnog Town Event Hall south"
+ icon_state = "cyawhisqu"
+
+/area/gateway/eggnogtown/dining
+ name = "Eggnog Town Dining Hall"
+ icon_state = "cyawhisqu"
+/area/gateway/eggnogtown/dining/kitchen
+ name = "Eggnog Town Dining Hall Kitchen"
+ icon_state = "cyawhisqu"
+/area/gateway/eggnogtown/dining/botany
+ name = "Eggnog Town Dining Hall Botany"
+ icon_state = "cyawhisqu"
+/area/gateway/eggnogtown/dining/storage
+ name = "Eggnog Town Dining Hall Storage"
+ icon_state = "cyawhisqu"
+
+/area/gateway/eggnogtown/storage
+ name = "Eggnog Town Storage Shed"
+ icon_state = "cyawhisqu"
+
+/area/gateway/eggnogtown/visitorlounge
+ name = "Eggnog Town Visitor Lounge"
+ icon_state = "cyawhisqu"
+/area/gateway/eggnogtown/visitorlounge/room1
+ name = "Eggnog Town Visitor Lounge Room 1"
+/area/gateway/eggnogtown/visitorlounge/room2
+ name = "Eggnog Town Visitor Lounge Room 2"
+
+/area/gateway/eggnogtown/houserhomestead
+ name = "Houser Homestead"
+ icon_state = "redwhisqu"
+/area/gateway/eggnogtown/houserhomestead/basement
+ name = "Houser Homestead Basement"
+
+/area/gateway/eggnogtown/teshnest
+ name = "Je'rehi's Nest"
+ icon_state = "redwhisqu"
+
+/area/gateway/eggnogtown/arturoswolfden
+ name = "Arturo's Wolf Den"
+ icon_state = "redwhisqu"
+
+/area/gateway/eggnogtown/kitchihome
+ name = "Kitchi's House"
+ icon_state = "redwhisqu"
+/area/gateway/eggnogtown/kitchihome/bedroom
+ name = "Kitchi's Bedroom"
+/area/gateway/eggnogtown/kitchihome/kitchen
+ name = "Kitchi's Kitchen"
+/area/gateway/eggnogtown/kitchihome/diningroom
+ name = "Kitchi's Dining Room"
+/area/gateway/eggnogtown/kitchihome/guestroom
+ name = "Kitchi's Guest Room"
+/area/gateway/eggnogtown/kitchihome/den
+ name = "Kitchi's House's Den"
+
+/area/gateway/eggnogtown/alipad
+ name = "Ali's Kickass Pad of Awesomeness"
+ icon_state = "redwhisqu"
+/area/gateway/eggnogtown/alipad/bedroom
+ name = "Ali's Bedroom"
+
+/area/gateway/eggnogtown/loniabode
+ name = "Loni Nesumi's Humble Abode"
+ icon_state = "redwhisqu"
+
+/area/gateway/eggnogtown/vibeout
+ name = "Voided Vibeout"
+ icon_state = "redwhisqu"
+/area/gateway/eggnogtown/vibeout/underground
+ name = "Voided Vibeout Underground"
+
+/area/gateway/eggnogtown/stokeswashere
+ name = "Underground Sneakzone"
+ icon_state = "redwhisqu"
+/area/gateway/eggnogtown/stokeswashere/bathroom
+ name = "Underground Sneakzone Bathroom"
+/area/gateway/eggnogtown/stokeswashere/bedroom
+ name = "Underground Sneakzone Bedroom"
+
+/area/gateway/eggnogtown/cavehome
+ name = "Cave Home"
+ icon_state = "redwhisqu"
+/area/gateway/eggnogtown/cavehome/office
+ name = "Cave Home Office"
+/area/gateway/eggnogtown/cavehome/bedroom
+ name = "Cave Home Bedroom"
+
+/area/gateway/eggnogtown/sigloo
+ name = "Southern Igloo"
+ icon_state = "cyawhisqu"
+
+/area/gateway/eggnogtown/nigloo
+ name = "Northern Igloo"
+ icon_state = "redwhisqu"
+
+/area/gateway/eggnogtown/eastcaveland
+ name = "Cave Lounge"
+ icon_state = "redwhisqu"
+
+/area/gateway/eggnogtown/hotspring
+ name = "Eggnog Town Hotspring"
+ icon_state = "redwhisqu"
+
+/area/gateway/eggnogtown/caves
+ name = "caves"
+ icon_state = "purblacir"
+
+/area/gateway/eggnogtown/underground
+ name = "underground"
+ icon_state = "purblacir"
+
+/area/gateway/eggnogtown/hotsprings
+ name = "Eggnog Town Hotsprings"
+ icon_state = "cyawhisqu"
+
+/area/gateway/eggnogtown/greenhouse
+ name = "Eggnog Town Greenhouse"
+ icon_state = "cyawhisqu"
diff --git a/maps/gateway_vr/eggnogtown.dmm b/maps/gateway_vr/eggnogtown.dmm
new file mode 100644
index 0000000000..502a92bf54
--- /dev/null
+++ b/maps/gateway_vr/eggnogtown.dmm
@@ -0,0 +1,24116 @@
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"aa" = (
+/turf/unsimulated/wall/planetary/normal{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"ab" = (
+/obj/machinery/recharge_station,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/bar)
+"ac" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/vibeout)
+"ad" = (
+/obj/effect/floor_decal/spline/plain{
+ dir = 8
+ },
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"ae" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"af" = (
+/obj/structure/table/fancyblack,
+/obj/item/weapon/reagent_containers/food/drinks/cup{
+ pixel_x = -5;
+ pixel_y = 9
+ },
+/obj/item/weapon/reagent_containers/food/drinks/cup{
+ pixel_x = 6;
+ pixel_y = 9
+ },
+/obj/item/weapon/reagent_containers/food/drinks/cup{
+ pixel_x = 6;
+ pixel_y = -1
+ },
+/obj/machinery/alarm/alarms_hidden{
+ pixel_y = 21
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome)
+"ag" = (
+/obj/machinery/vending/boozeomat{
+ req_access = list()
+ },
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"ah" = (
+/obj/machinery/camera/network/civilian{
+ c_tag = "Heart's Hearth Bar"
+ },
+/obj/structure/table/marble,
+/obj/machinery/chemical_dispenser/bar_alc/full,
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"ai" = (
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/eggnogtown)
+"aj" = (
+/obj/structure/table/marble,
+/obj/machinery/chemical_dispenser/bar_coffee/full,
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"ak" = (
+/obj/structure/table/marble,
+/obj/machinery/chemical_dispenser/bar_soft/full,
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"al" = (
+/obj/structure/bonfire,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/nigloo)
+"am" = (
+/obj/structure/bed/double/padded,
+/obj/item/weapon/bedsheet/purpledouble,
+/obj/random/awayloot,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/nigloo)
+"an" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/dining)
+"ao" = (
+/obj/structure/noticeboard{
+ pixel_y = 32
+ },
+/obj/item/weapon/paper{
+ info = "Loni Nesumi's humbble abode, feel free to rest inside if the lights are out, please go change the cell in the maint room otherwise enjoy your stay and please don't take anything"
+ },
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/loniabode)
+"ap" = (
+/obj/structure/table/marble,
+/obj/item/weapon/flame/lighter/zippo,
+/obj/item/weapon/tool/screwdriver,
+/obj/item/clothing/head/that{
+ pixel_x = 4;
+ pixel_y = 6
+ },
+/obj/item/weapon/reagent_containers/spray/cleaner,
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"aq" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"ar" = (
+/obj/effect/floor_decal/spline/plain{
+ dir = 4
+ },
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"as" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/outdoors/newdirt_nograss{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/bar)
+"at" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/outdoors/newdirt_nograss{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/bar)
+"au" = (
+/obj/machinery/light_switch{
+ dir = 4;
+ on = 0;
+ pixel_x = -25;
+ pixel_y = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"av" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/bar)
+"aw" = (
+/obj/structure/bonfire,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/eggnogtown)
+"ax" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/bar)
+"ay" = (
+/turf/simulated/floor/outdoors/ice{
+ outdoors = 0;
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/caves)
+"az" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"aA" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"aB" = (
+/obj/structure/bed/chair/bay/chair/padded/red/bignest,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/teshnest)
+"aC" = (
+/obj/structure/bed/chair/wood,
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/obj/structure/fans/tiny{
+ alpha = 0;
+ name = "window"
+ },
+/turf/simulated/floor/carpet/turcarpet,
+/area/gateway/eggnogtown/bar)
+"aD" = (
+/obj/structure/bed/double/padded,
+/obj/item/weapon/bedsheet/browndouble,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/teshnest)
+"aE" = (
+/obj/structure/bonfire/sifwood,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/teshnest)
+"aF" = (
+/obj/structure/bed/chair/wood,
+/turf/simulated/floor/carpet/turcarpet,
+/area/gateway/eggnogtown/bar)
+"aG" = (
+/obj/structure/bed/chair/wood,
+/obj/structure/window/reinforced{
+ dir = 4
+ },
+/obj/structure/fans/tiny{
+ alpha = 0;
+ name = "window"
+ },
+/turf/simulated/floor/carpet/turcarpet,
+/area/gateway/eggnogtown/bar)
+"aH" = (
+/obj/structure/table/woodentable,
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/obj/structure/fans/tiny{
+ alpha = 0;
+ name = "window"
+ },
+/turf/simulated/floor/carpet/turcarpet,
+/area/gateway/eggnogtown/bar)
+"aI" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/bar)
+"aJ" = (
+/obj/structure/table/woodentable,
+/obj/structure/window/reinforced{
+ dir = 4
+ },
+/obj/structure/fans/tiny{
+ alpha = 0;
+ name = "window"
+ },
+/turf/simulated/floor/carpet/turcarpet,
+/area/gateway/eggnogtown/bar)
+"aK" = (
+/obj/structure/bed/chair/wood{
+ dir = 1
+ },
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/obj/structure/fans/tiny{
+ alpha = 0;
+ name = "window"
+ },
+/turf/simulated/floor/carpet/turcarpet,
+/area/gateway/eggnogtown/bar)
+"aL" = (
+/turf/simulated/floor/outdoors/ice{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"aM" = (
+/obj/structure/bed/chair/wood{
+ dir = 1
+ },
+/turf/simulated/floor/carpet/turcarpet,
+/area/gateway/eggnogtown/bar)
+"aN" = (
+/obj/structure/bed/chair/wood{
+ dir = 1
+ },
+/obj/structure/window/reinforced{
+ dir = 4
+ },
+/obj/structure/fans/tiny{
+ alpha = 0;
+ name = "window"
+ },
+/turf/simulated/floor/carpet/turcarpet,
+/area/gateway/eggnogtown/bar)
+"aO" = (
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/bar)
+"aP" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/bar)
+"aQ" = (
+/obj/structure/railing/grey{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/kitchihome)
+"aR" = (
+/obj/structure/table/woodentable,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/bar)
+"aS" = (
+/obj/structure/closet,
+/obj/random/awayloot,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad/bedroom)
+"aT" = (
+/obj/structure/bed/chair/backed_grey{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"aU" = (
+/obj/structure/table/darkglass,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"aV" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/bar)
+"aW" = (
+/obj/structure/table/fancyblack,
+/obj/item/device/flashlight/lantern{
+ pixel_x = 3;
+ pixel_y = 12
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/den)
+"aX" = (
+/obj/structure/bed/chair/backed_grey,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"aY" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/den)
+"aZ" = (
+/obj/item/clothing/accessory/scarf/purple,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"ba" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/bedroom)
+"bb" = (
+/obj/structure/dogbed,
+/mob/living/simple_mob/animal/passive/fox,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/den)
+"bc" = (
+/obj/machinery/computer/arcade/battle,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/den)
+"bd" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/den)
+"be" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/den)
+"bf" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/dining/kitchen)
+"bg" = (
+/obj/structure/table/fancyblack,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/den)
+"bk" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 1;
+ pixel_y = -20
+ },
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"bm" = (
+/turf/simulated/wall/wood{
+ can_open = 1
+ },
+/area/gateway/eggnogtown/vibeout)
+"bn" = (
+/turf/simulated/floor/wmarble,
+/area/gateway/eggnogtown/visitorlounge)
+"bo" = (
+/obj/machinery/door/airlock{
+ id_tag = "wintera";
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/visitorlounge/room1)
+"bq" = (
+/obj/structure/table/bench/padded,
+/turf/simulated/floor/carpet/gaycarpet{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"br" = (
+/obj/structure/catwalk,
+/obj/structure/window/basic/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"bt" = (
+/obj/structure/musician/piano,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"bu" = (
+/obj/structure/table/wooden_reinforced,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room2)
+"bv" = (
+/turf/simulated/floor/carpet/gaycarpet{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"bw" = (
+/obj/structure/table/woodentable,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/clothing/glasses/welding,
+/obj/item/clothing/glasses/welding,
+/obj/item/weapon/shovel,
+/obj/random/tool/power,
+/obj/item/weapon/pickaxe/drill,
+/obj/item/device/flashlight,
+/obj/item/device/flashlight,
+/obj/item/device/flashlight,
+/obj/item/device/flashlight,
+/turf/simulated/floor/tiled/techmaint{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/storage)
+"bx" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/storage)
+"bz" = (
+/turf/simulated/floor/tiled/techmaint{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/storage)
+"bA" = (
+/obj/machinery/vending/fitness,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/bar)
+"bH" = (
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/medical,
+/obj/random/maintenance/medical,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/random/contraband/nofail,
+/obj/random/drinkbottle,
+/obj/random/drinkbottle,
+/obj/random/firstaid,
+/obj/random/mre,
+/obj/random/mre,
+/obj/structure/closet/walllocker_double{
+ dir = 4;
+ pixel_x = 26
+ },
+/turf/simulated/floor/tiled/techmaint{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/storage)
+"bL" = (
+/obj/structure/table/rack,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/turf/simulated/floor/tiled/techmaint{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/storage)
+"bM" = (
+/obj/structure/table/woodentable,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/clothing/glasses/welding,
+/obj/item/clothing/glasses/welding,
+/obj/item/weapon/shovel,
+/obj/item/weapon/pickaxe/drill,
+/obj/item/device/flashlight,
+/obj/item/device/flashlight,
+/obj/item/device/flashlight,
+/obj/item/device/flashlight,
+/obj/machinery/light/small,
+/turf/simulated/floor/tiled/techmaint{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/storage)
+"bO" = (
+/obj/structure/table/woodentable,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/weapon/storage/toolbox/mechanical,
+/obj/item/clothing/glasses/welding,
+/obj/item/clothing/glasses/welding,
+/obj/item/weapon/reagent_containers/spray/cleaner,
+/obj/item/weapon/reagent_containers/spray/cleaner,
+/obj/item/weapon/reagent_containers/spray/cleaner,
+/obj/item/weapon/reagent_containers/spray/cleaner,
+/obj/item/weapon/reagent_containers/spray/cleaner,
+/obj/item/weapon/shovel,
+/obj/random/tool/alien,
+/obj/item/weapon/pickaxe/drill,
+/obj/item/device/flashlight,
+/obj/item/device/flashlight,
+/obj/item/device/flashlight,
+/obj/item/device/flashlight,
+/turf/simulated/floor/tiled/techmaint{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/storage)
+"bT" = (
+/obj/machinery/alarm/alarms_hidden{
+ pixel_y = 21
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/den)
+"bU" = (
+/obj/structure/bed/chair/sofa/beige/right{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/sigloo)
+"bW" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"bX" = (
+/obj/machinery/light_switch{
+ dir = 4;
+ on = 0;
+ pixel_x = -25
+ },
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hall/north)
+"ca" = (
+/obj/structure/bed/chair/sofa/beige/corner{
+ dir = 1
+ },
+/turf/simulated/floor/wmarble,
+/area/gateway/eggnogtown/arturoswolfden)
+"cj" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/cavehome/office)
+"cn" = (
+/obj/structure/bed/chair/sofa/black/right{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"cq" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/dining/botany)
+"cv" = (
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"cx" = (
+/obj/structure/table/fancyblack,
+/obj/item/device/flashlight/lantern{
+ pixel_x = 15;
+ pixel_y = 10
+ },
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/kitchihome)
+"cz" = (
+/obj/machinery/light_switch{
+ dir = 1;
+ pixel_x = 28;
+ pixel_y = -26
+ },
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/eggnogtown/greenhouse)
+"cD" = (
+/obj/structure/bonfire,
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/arturoswolfden)
+"cF" = (
+/obj/structure/cable/yellow{
+ icon_state = "2-9"
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"cJ" = (
+/obj/structure/closet/walllocker_double{
+ pixel_y = 28
+ },
+/obj/fiftyspawner/log,
+/obj/fiftyspawner/log,
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hall)
+"cL" = (
+/obj/structure/table/woodentable,
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/random/maintenance,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad/bedroom)
+"cN" = (
+/obj/random/maintenance,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/teshnest)
+"cQ" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/caves)
+"cZ" = (
+/obj/machinery/light,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/eggnogtown/greenhouse)
+"da" = (
+/obj/structure/table/woodentable,
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/fiftyspawner/log,
+/obj/fiftyspawner/log,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"dh" = (
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"di" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/loniabode)
+"dj" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/loniabode)
+"dm" = (
+/obj/structure/lattice,
+/turf/simulated/open,
+/area/gateway/eggnogtown/storage)
+"do" = (
+/obj/structure/bed/chair/sofa/black/right{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"dp" = (
+/obj/machinery/seed_storage/garden{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/monotile,
+/area/gateway/eggnogtown/dining/botany)
+"dq" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/vibeout)
+"dr" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"dv" = (
+/obj/structure/railing{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/sigloo)
+"dy" = (
+/obj/item/weapon/stool/padded,
+/obj/effect/floor_decal/spline/plain{
+ dir = 8
+ },
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"dz" = (
+/obj/structure/railing,
+/obj/structure/bonfire/sifwood,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/loniabode)
+"dB" = (
+/obj/structure/table/woodentable,
+/obj/random/maintenance,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad/bedroom)
+"dK" = (
+/turf/simulated/wall/snowbrick{
+ can_open = 1
+ },
+/area/gateway/eggnogtown/nigloo)
+"dL" = (
+/obj/structure/sink/puddle,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/eggnogtown/greenhouse)
+"dM" = (
+/obj/structure/bed/chair/sofa/beige/left{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/sigloo)
+"dN" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"dV" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/visitorlounge)
+"dX" = (
+/obj/structure/table/woodentable,
+/obj/item/weapon/reagent_containers/food/snacks/lasagna,
+/obj/item/weapon/reagent_containers/food/snacks/lasagna,
+/obj/item/weapon/reagent_containers/food/snacks/lasagna,
+/obj/item/weapon/reagent_containers/food/snacks/lasagna,
+/obj/item/weapon/reagent_containers/food/snacks/lasagna,
+/obj/item/device/flashlight/lamp/green,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"ea" = (
+/obj/machinery/button/windowtint{
+ id = "winterwindowa";
+ layer = 3.3;
+ name = "Window Tint Control";
+ pixel_x = -27;
+ pixel_y = -29;
+ range = 10
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room1)
+"ef" = (
+/obj/effect/fake_sun/cool,
+/turf/simulated/mineral/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/caves)
+"ek" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/cavehome/bedroom)
+"es" = (
+/obj/structure/table/bench/wooden,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/bar)
+"ew" = (
+/obj/structure/table/woodentable,
+/obj/item/device/flashlight/lamp,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere/bedroom)
+"ex" = (
+/obj/structure/table/fancyblack,
+/obj/item/weapon/reagent_containers/food/drinks/cup{
+ pixel_x = 6;
+ pixel_y = -1
+ },
+/obj/item/weapon/reagent_containers/food/drinks/cup{
+ pixel_x = -5;
+ pixel_y = -1
+ },
+/obj/item/weapon/reagent_containers/food/drinks/cup{
+ pixel_x = 6;
+ pixel_y = 9
+ },
+/obj/item/weapon/reagent_containers/food/drinks/cup{
+ pixel_x = -5;
+ pixel_y = 9
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome)
+"ez" = (
+/obj/structure/bed/chair/sofa/beige/left{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"eE" = (
+/obj/machinery/vending/hydronutrients{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/monotile,
+/area/gateway/eggnogtown/dining/botany)
+"eF" = (
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome/office)
+"eI" = (
+/turf/simulated/wall,
+/area/gateway/eggnogtown/caves)
+"eL" = (
+/obj/structure/table/woodentable,
+/obj/random/maintenance,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome)
+"eO" = (
+/obj/structure/bed/chair/sofa/beige/right{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"eY" = (
+/obj/structure/bed/double/padded,
+/obj/item/weapon/bedsheet/double,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome/bedroom)
+"fa" = (
+/turf/simulated/wall/sandstone,
+/area/gateway/eggnogtown/stokeswashere)
+"fb" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/bar)
+"fe" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/machinery/vending/hydroseeds{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ outdoors = 0
+ },
+/area/gateway/eggnogtown/greenhouse)
+"fh" = (
+/obj/structure/curtain/open/shower/security,
+/obj/effect/catwalk_plated,
+/obj/machinery/shower,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"fj" = (
+/obj/structure/bed/double/padded,
+/obj/item/weapon/bedsheet/iandouble,
+/obj/structure/curtain/black,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room2)
+"ft" = (
+/obj/structure/noticeboard{
+ pixel_x = -32
+ },
+/obj/item/weapon/paper{
+ info = "Ali's Kickass Pad of Awesomeness"
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"fu" = (
+/obj/structure/bed/chair/sofa/right{
+ dir = 4
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"fx" = (
+/obj/structure/bed/chair/backed_grey{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"fB" = (
+/obj/structure/table/woodentable,
+/turf/simulated/floor/carpet/turcarpet,
+/area/gateway/eggnogtown/bar)
+"fI" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/visitorlounge/room1)
+"fS" = (
+/obj/machinery/portable_atmospherics/hydroponics/soil,
+/obj/machinery/light,
+/turf/simulated/floor/outdoors/grass/forest{
+ outdoors = 0
+ },
+/area/gateway/eggnogtown/greenhouse)
+"fX" = (
+/obj/structure/grille,
+/obj/structure/window/titanium,
+/obj/structure/window/titanium{
+ dir = 1
+ },
+/obj/structure/window/titanium{
+ dir = 4
+ },
+/obj/structure/window/titanium{
+ dir = 8
+ },
+/obj/structure/window/titanium/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/kitchihome/bedroom)
+"ge" = (
+/obj/structure/bed/chair/comfy/black{
+ dir = 8
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/eggnogtown/loniabode)
+"gk" = (
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/small/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/small/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/small/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/small/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/spacespice,
+/obj/item/weapon/reagent_containers/food/condiment/spacespice,
+/obj/item/weapon/reagent_containers/food/condiment/spacespice,
+/obj/item/weapon/reagent_containers/food/condiment/spacespice,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/structure/closet,
+/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker,
+/obj/item/weapon/reagent_containers/food/condiment/small/peppermill,
+/obj/machinery/alarm/alarms_hidden{
+ pixel_y = 21
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"gs" = (
+/obj/structure/table/steel_reinforced,
+/obj/machinery/reagentgrinder,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"gA" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/loniabode)
+"gB" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/cavehome)
+"gG" = (
+/obj/structure/railing,
+/obj/structure/railing{
+ dir = 8
+ },
+/obj/structure/railing{
+ dir = 4
+ },
+/obj/structure/railing{
+ dir = 1
+ },
+/turf/simulated/floor/reinforced{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"gH" = (
+/obj/item/clothing/gloves/black,
+/obj/structure/table/rack/shelf/steel,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome)
+"gJ" = (
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome)
+"gK" = (
+/obj/structure/bed/chair/sofa/black{
+ dir = 4
+ },
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/kitchihome/den)
+"gP" = (
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/eggnogtown/greenhouse)
+"gS" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/eastcaveland)
+"gV" = (
+/obj/structure/table/marble,
+/obj/item/device/flashlight/lantern{
+ pixel_y = 25
+ },
+/obj/item/weapon/storage/box/beakers,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"hd" = (
+/obj/machinery/light_switch{
+ dir = 1;
+ pixel_y = -23
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"he" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/tiled,
+/area/gateway/eggnogtown/stokeswashere/bathroom)
+"hg" = (
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hall/north)
+"hj" = (
+/turf/unsimulated/mineral{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"hl" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"ho" = (
+/obj/structure/table/woodentable,
+/obj/random/maintenance,
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome)
+"hr" = (
+/obj/structure/table/rack,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/turf/simulated/floor/tiled/techmaint,
+/area/gateway/eggnogtown/dining/storage)
+"hy" = (
+/obj/structure/bonfire,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/dining)
+"hC" = (
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere/bedroom)
+"hF" = (
+/obj/structure/bed/chair/comfy/black{
+ dir = 1
+ },
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/kitchihome)
+"hG" = (
+/turf/simulated/wall/shull,
+/area/gateway/eggnogtown/gateway)
+"hO" = (
+/turf/simulated/floor/carpet/turcarpet,
+/area/gateway/eggnogtown/bar)
+"hR" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome)
+"hS" = (
+/obj/item/weapon/reagent_containers/glass/bucket/wood,
+/turf/simulated/floor/outdoors/grass{
+ outdoors = 0
+ },
+/area/gateway/eggnogtown/greenhouse)
+"if" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 4;
+ pixel_x = -21
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room2)
+"ig" = (
+/obj/structure/bed/chair/sofa/black{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"iq" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/greenhouse)
+"iw" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room1)
+"ix" = (
+/obj/structure/table/wooden_reinforced,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/bedroom)
+"iz" = (
+/obj/structure/table/fancyblack,
+/obj/machinery/chemical_dispenser/bar_coffee/full,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome)
+"iU" = (
+/obj/structure/flora/pottedplant/minitree,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"iZ" = (
+/obj/structure/simple_door/gold,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/vibeout)
+"jb" = (
+/obj/structure/table/fancyblack,
+/obj/item/device/flashlight/lantern{
+ pixel_x = 3;
+ pixel_y = 12
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/guestroom)
+"jd" = (
+/turf/simulated/wall/log,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"jp" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/dining)
+"js" = (
+/obj/machinery/gateway{
+ dir = 9
+ },
+/obj/effect/floor_decal/industrial/warning{
+ dir = 9
+ },
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/gateway)
+"jt" = (
+/obj/structure/fans/tiny,
+/obj/structure/simple_door/iron,
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/arturoswolfden)
+"jB" = (
+/obj/structure/table/woodentable,
+/obj/item/toy/plushie/black_fox,
+/obj/item/device/flashlight/lamp/green,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"jK" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/arturoswolfden)
+"jO" = (
+/obj/machinery/light_switch{
+ on = 0;
+ pixel_y = 27
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"jP" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/cavehome)
+"jV" = (
+/obj/structure/table/woodentable,
+/obj/random/drinkbottle,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"kb" = (
+/obj/machinery/portable_atmospherics/hydroponics/soil,
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/outdoors/grass/forest{
+ outdoors = 0
+ },
+/area/gateway/eggnogtown/greenhouse)
+"kG" = (
+/obj/machinery/telecomms/relay/preset/tether,
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/gateway)
+"kI" = (
+/obj/machinery/gateway{
+ dir = 1
+ },
+/obj/effect/floor_decal/industrial/warning{
+ dir = 1
+ },
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/gateway)
+"kL" = (
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"kO" = (
+/obj/random/junk,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"kQ" = (
+/obj/structure/fans/tiny,
+/obj/structure/simple_door/iron,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"kX" = (
+/obj/structure/bed/chair/sofa/left{
+ dir = 8
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"ld" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/dining)
+"lg" = (
+/turf/simulated/wall/snowbrick,
+/area/gateway/eggnogtown/caves)
+"lo" = (
+/obj/structure/table/fancyblack,
+/obj/random/awayloot,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"lB" = (
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/hall/south)
+"lF" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"lI" = (
+/obj/structure/closet/secure_closet/freezer/meat,
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/techmaint,
+/area/gateway/eggnogtown/dining/storage)
+"lK" = (
+/obj/item/weapon/bedsheet/yellowdouble,
+/obj/structure/curtain/black,
+/obj/structure/bed/double/padded,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/guestroom)
+"lL" = (
+/obj/machinery/light,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"lO" = (
+/obj/structure/bed/chair/wood{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"lR" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/dining)
+"lS" = (
+/obj/structure/bed/chair/sofa/black/right{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad/bedroom)
+"lT" = (
+/obj/effect/decal/writing{
+ message = "Stokes Was Here"
+ },
+/obj/machinery/light_switch{
+ dir = 4;
+ on = 0;
+ pixel_x = -25;
+ pixel_y = -26
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/eggnogtown/stokeswashere/bathroom)
+"ma" = (
+/obj/effect/overmap/visitable/sector/tether_gateway/eggnogtown,
+/turf/simulated/mineral/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/caves)
+"mc" = (
+/obj/structure/table/marble,
+/obj/machinery/reagentgrinder,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"mf" = (
+/obj/structure/bed/chair/sofa/corner{
+ dir = 1
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"mp" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/north)
+"mt" = (
+/obj/structure/table/woodentable,
+/obj/item/weapon/material/ashtray,
+/obj/random/awayloot,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"mv" = (
+/obj/structure/bed/chair/sofa/black/corner,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"mw" = (
+/obj/structure/closet,
+/obj/item/device/camera,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere/bedroom)
+"mx" = (
+/obj/structure/bed/chair/comfy/black{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"mC" = (
+/obj/structure/table/rack,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/fiftyspawner/log,
+/obj/fiftyspawner/log,
+/obj/fiftyspawner/log,
+/obj/fiftyspawner/log,
+/obj/fiftyspawner/log,
+/turf/simulated/floor/tiled/techmaint{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/storage)
+"mK" = (
+/obj/structure/railing/grey{
+ dir = 1
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/kitchihome)
+"mM" = (
+/obj/structure/table/rack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/turf/simulated/floor/tiled/techmaint,
+/area/gateway/eggnogtown/dining/storage)
+"mP" = (
+/obj/structure/table/fancyblack,
+/obj/item/device/flashlight/lantern{
+ pixel_x = 3;
+ pixel_y = 12
+ },
+/obj/machinery/alarm/alarms_hidden{
+ dir = 4;
+ pixel_x = -21
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"mZ" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/visitorlounge)
+"nd" = (
+/obj/structure/bed/double,
+/obj/structure/lattice,
+/turf/simulated/open,
+/area/gateway/eggnogtown/houserhomestead)
+"ne" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/storage)
+"ng" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"nj" = (
+/turf/simulated/open{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"nt" = (
+/obj/structure/table/woodentable,
+/obj/random/maintenance,
+/obj/random/awayloot,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"nE" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/guestroom)
+"nI" = (
+/obj/structure/toilet,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"nJ" = (
+/obj/structure/table/darkglass,
+/obj/random/awayloot,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"nN" = (
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"nQ" = (
+/obj/item/weapon/material/minihoe,
+/obj/item/device/analyzer/plant_analyzer,
+/obj/item/weapon/reagent_containers/glass/bucket,
+/obj/item/robot_parts/l_arm,
+/obj/item/weapon/material/knife/machete/hatchet,
+/obj/item/weapon/material/minihoe,
+/obj/structure/closet,
+/turf/simulated/floor/tiled/monotile,
+/area/gateway/eggnogtown/dining/botany)
+"nZ" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/polarized/full{
+ id = "winterwindowb";
+ name = "Tintable Window"
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/visitorlounge/room2)
+"oc" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/loniabode)
+"os" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/loniabode)
+"ot" = (
+/obj/machinery/camera/network/civilian{
+ c_tag = "Heart's Hearth West";
+ dir = 8
+ },
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/bar)
+"ou" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 1;
+ pixel_y = -20
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ outdoors = 0
+ },
+/area/gateway/eggnogtown/greenhouse)
+"oz" = (
+/obj/item/trash/candle,
+/obj/structure/cable/yellow{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"oC" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"oJ" = (
+/obj/machinery/portable_atmospherics/hydroponics,
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/monotile,
+/area/gateway/eggnogtown/dining/botany)
+"oN" = (
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ outdoors = 0
+ },
+/area/gateway/eggnogtown/greenhouse)
+"oQ" = (
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/caves)
+"pa" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/den)
+"pj" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/teshnest)
+"pw" = (
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/obj/structure/fans/tiny,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"pL" = (
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hall)
+"pM" = (
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/hall/north)
+"pN" = (
+/obj/structure/sink{
+ pixel_y = 21
+ },
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"pP" = (
+/obj/structure/table/woodentable,
+/obj/random/maintenance,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"pT" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/arturoswolfden)
+"pV" = (
+/obj/effect/floor_decal/spline/plain{
+ dir = 10
+ },
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"pY" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/houserhomestead)
+"qc" = (
+/obj/machinery/alarm/alarms_hidden{
+ pixel_y = 21
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/guestroom)
+"qn" = (
+/obj/effect/floor_decal/spline/plain{
+ dir = 8
+ },
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"qA" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"qB" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/visitorlounge)
+"qC" = (
+/obj/structure/closet,
+/obj/random/awayloot,
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/loniabode)
+"qD" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"qJ" = (
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/kitchihome/den)
+"qN" = (
+/obj/structure/bed/chair/sofa/black{
+ dir = 8
+ },
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"rd" = (
+/obj/machinery/gateway{
+ dir = 5
+ },
+/obj/effect/floor_decal/industrial/warning{
+ dir = 5
+ },
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/gateway)
+"rh" = (
+/obj/structure/railing/grey{
+ dir = 8
+ },
+/obj/structure/railing/grey{
+ dir = 1
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/kitchihome)
+"rk" = (
+/obj/structure/railing,
+/obj/structure/railing{
+ dir = 8
+ },
+/obj/structure/railing{
+ dir = 4
+ },
+/obj/structure/railing{
+ dir = 1
+ },
+/obj/structure/bonfire,
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"rm" = (
+/obj/effect/floor_decal/spline/plain{
+ dir = 6
+ },
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"rr" = (
+/obj/machinery/light_switch{
+ on = 0;
+ pixel_y = 27
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"rv" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/guestroom)
+"rz" = (
+/obj/item/trash/candle,
+/obj/structure/cable/yellow{
+ dir = 1
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"rL" = (
+/turf/simulated/floor/outdoors/newdirt_nograss{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/visitorlounge)
+"rN" = (
+/obj/structure/sink/kitchen{
+ dir = 4;
+ pixel_x = -14;
+ pixel_y = 10
+ },
+/turf/simulated/floor/tiled/monotile,
+/area/gateway/eggnogtown/dining/botany)
+"rQ" = (
+/obj/structure/table/standard,
+/obj/item/weapon/material/kitchen/utensil/spoon,
+/obj/item/weapon/material/knife,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"rS" = (
+/obj/structure/bed/chair/sofa/black{
+ dir = 4
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"sb" = (
+/obj/random/awayloot,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/teshnest)
+"sp" = (
+/obj/machinery/door/airlock/glass,
+/obj/structure/fans/tiny,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/greenhouse)
+"sr" = (
+/obj/machinery/gateway{
+ dir = 8
+ },
+/obj/effect/floor_decal/industrial/warning{
+ dir = 8
+ },
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/gateway)
+"su" = (
+/obj/machinery/appliance/cooker/fryer,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"sv" = (
+/obj/machinery/light,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/loniabode)
+"sD" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/alipad/bedroom)
+"sE" = (
+/obj/structure/bed/chair/sofa/black/left{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"sF" = (
+/obj/structure/bed/chair/sofa/black/right{
+ dir = 1
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"sH" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/polarized/full{
+ id = "winterwindowa";
+ name = "Tintable Window"
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/visitorlounge/room1)
+"sI" = (
+/obj/machinery/camera/network/civilian{
+ c_tag = "Hearth's Heart East";
+ dir = 4
+ },
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/bar)
+"sK" = (
+/obj/structure/railing/grey{
+ dir = 8
+ },
+/obj/structure/bonfire,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/kitchihome/den)
+"sN" = (
+/obj/structure/table/steel_reinforced,
+/obj/machinery/microwave,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"sP" = (
+/turf/simulated/wall/snowbrick,
+/area/gateway/eggnogtown/sigloo)
+"sR" = (
+/obj/item/toy/plushie/red_fox,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"sS" = (
+/obj/machinery/light_switch{
+ on = 0;
+ pixel_y = 27
+ },
+/turf/simulated/floor/tiled/techmaint,
+/area/gateway/eggnogtown/dining/storage)
+"tc" = (
+/turf/simulated/floor/outdoors/grass/forest{
+ outdoors = 0
+ },
+/area/gateway/eggnogtown/greenhouse)
+"te" = (
+/obj/machinery/gateway/centeraway,
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/gateway)
+"tj" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hall/south)
+"tp" = (
+/obj/machinery/smartfridge/drying_rack,
+/turf/simulated/floor/tiled/techmaint,
+/area/gateway/eggnogtown/dining/storage)
+"ty" = (
+/obj/structure/reagent_dispensers/watertank,
+/turf/simulated/floor/tiled/monotile,
+/area/gateway/eggnogtown/dining/botany)
+"tA" = (
+/turf/simulated/wall/log,
+/area/gateway/eggnogtown/kitchihome/den)
+"tB" = (
+/obj/machinery/light_switch{
+ dir = 4;
+ on = 0;
+ pixel_x = -25
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"tC" = (
+/obj/structure/table/marble,
+/obj/item/weapon/reagent_containers/glass/rag,
+/obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask,
+/obj/item/weapon/book/manual/barman_recipes,
+/obj/random/awayloot,
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"tE" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/visitorlounge/room2)
+"tG" = (
+/obj/structure/closet/wardrobe,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/guestroom)
+"tU" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/dining/kitchen)
+"tX" = (
+/obj/structure/closet/wardrobe,
+/obj/random/awayloot,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/guestroom)
+"tY" = (
+/obj/machinery/gateway{
+ dir = 4
+ },
+/obj/effect/floor_decal/industrial/warning{
+ dir = 4
+ },
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/gateway)
+"ua" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/north)
+"uf" = (
+/obj/structure/lattice,
+/turf/simulated/open,
+/area/gateway/eggnogtown/vibeout)
+"uh" = (
+/obj/machinery/portable_atmospherics/hydroponics/soil,
+/obj/machinery/light{
+ dir = 4
+ },
+/obj/machinery/alarm/alarms_hidden{
+ pixel_y = 21
+ },
+/turf/simulated/floor/outdoors/grass/forest{
+ outdoors = 0
+ },
+/area/gateway/eggnogtown/greenhouse)
+"uk" = (
+/obj/machinery/light_switch{
+ dir = 4;
+ on = 0;
+ pixel_x = -24
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome/office)
+"uw" = (
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hall/south)
+"uM" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"uT" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/obj/structure/window/reinforced{
+ dir = 4
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"uX" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/material/kitchen/rollingpin,
+/obj/item/weapon/book/manual/chef_recipes,
+/obj/item/weapon/reagent_containers/food/condiment/enzyme{
+ layer = 5
+ },
+/obj/item/weapon/reagent_containers/glass/bucket,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"uY" = (
+/obj/structure/closet,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/machinery/light/small,
+/turf/simulated/floor/tiled/techmaint,
+/area/gateway/eggnogtown/dining/storage)
+"va" = (
+/obj/machinery/shower{
+ pixel_y = 10
+ },
+/obj/structure/curtain/open/shower,
+/turf/simulated/floor/tiled,
+/area/gateway/eggnogtown/stokeswashere/bathroom)
+"vb" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/nigloo)
+"vc" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/item/weapon/material/knife/butch,
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"vn" = (
+/obj/structure/table/standard,
+/obj/item/weapon/material/ashtray,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/arturoswolfden)
+"vq" = (
+/obj/machinery/light_switch{
+ dir = 1;
+ pixel_y = -23
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"vy" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/kitchihome)
+"vz" = (
+/obj/machinery/gateway{
+ dir = 10
+ },
+/obj/effect/floor_decal/industrial/warning{
+ dir = 10
+ },
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/gateway)
+"vE" = (
+/obj/item/trash/candle,
+/obj/structure/cable/yellow,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"vH" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/north)
+"vL" = (
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/obj/structure/table/rack/shelf,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"vP" = (
+/obj/machinery/door/airlock/glass,
+/obj/structure/fans/tiny,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/bar)
+"vQ" = (
+/obj/machinery/portable_atmospherics/hydroponics/soil,
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/outdoors/grass/forest{
+ outdoors = 0
+ },
+/area/gateway/eggnogtown/greenhouse)
+"wj" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/dining/storage)
+"wn" = (
+/obj/structure/bookcase,
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome/office)
+"wp" = (
+/turf/simulated/wall/snowbrick,
+/area/gateway/eggnogtown)
+"wt" = (
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/eggnogtown/greenhouse)
+"wu" = (
+/obj/machinery/vending/coffee,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/bar)
+"wx" = (
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"wN" = (
+/obj/fiftyspawner/log,
+/obj/fiftyspawner/log,
+/obj/structure/closet/walllocker_double{
+ dir = 8;
+ pixel_x = -28
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/dining)
+"wP" = (
+/obj/item/weapon/deck/cards,
+/obj/item/weapon/storage/dicecup,
+/obj/item/weapon/storage/pill_bottle/dice_nerd,
+/obj/item/weapon/deck/cah,
+/obj/item/weapon/deck/cah/black,
+/obj/item/weapon/deck/tarot,
+/obj/structure/closet,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"wR" = (
+/obj/structure/bed/chair/sofa/black/right{
+ dir = 4
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"wT" = (
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/obj/structure/fans/tiny,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"xk" = (
+/obj/structure/toilet{
+ dir = 4
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/eggnogtown/stokeswashere/bathroom)
+"xn" = (
+/obj/structure/table/glass,
+/obj/item/device/flashlight/lamp/green,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/loniabode)
+"xq" = (
+/obj/structure/bed/chair/sofa/beige/corner{
+ dir = 8
+ },
+/turf/simulated/floor/wmarble,
+/area/gateway/eggnogtown/arturoswolfden)
+"xy" = (
+/obj/structure/railing{
+ dir = 4
+ },
+/obj/structure/bonfire/sifwood,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"xA" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome)
+"xN" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/gateway)
+"xS" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/alipad)
+"xU" = (
+/obj/structure/closet/wardrobe,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/bedroom)
+"yb" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome)
+"ym" = (
+/obj/machinery/vending/snack,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/bar)
+"ys" = (
+/obj/structure/bed/chair/sofa/beige/corner,
+/turf/simulated/floor/wmarble,
+/area/gateway/eggnogtown/arturoswolfden)
+"yt" = (
+/obj/structure/table/woodentable,
+/obj/random/awayloot,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome)
+"yv" = (
+/obj/effect/floor_decal/spline/plain{
+ dir = 4
+ },
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"yD" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere/bedroom)
+"yG" = (
+/obj/machinery/vending/wallmed1/public{
+ dir = 4;
+ pixel_x = -22
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/bar)
+"yL" = (
+/obj/machinery/door/airlock/external,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/loniabode)
+"yN" = (
+/obj/structure/closet,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"yR" = (
+/obj/structure/bed/chair/bay/comfy/red{
+ dir = 1
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"zh" = (
+/obj/machinery/light/small,
+/obj/item/clothing/suit/storage/hooded/wintercoat/solgov/fleet,
+/obj/structure/table/rack/shelf/steel,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome)
+"zo" = (
+/obj/structure/bonfire,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/sigloo)
+"zr" = (
+/obj/structure/bed/chair/sofa/black/right,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome)
+"zx" = (
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/kitchihome)
+"zG" = (
+/obj/structure/bed/chair/wood/wings{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/dining)
+"zJ" = (
+/obj/structure/table/woodentable,
+/obj/item/device/flashlight/lamp,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"zK" = (
+/turf/simulated/wall/log_sif,
+/area/gateway/eggnogtown/teshnest)
+"zR" = (
+/obj/structure/closet/walllocker_double{
+ dir = 1;
+ pixel_y = -27
+ },
+/obj/fiftyspawner/log,
+/obj/fiftyspawner/log,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"zU" = (
+/obj/structure/bed/chair/sofa/black/left{
+ dir = 4
+ },
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/kitchihome/den)
+"zV" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 8;
+ pixel_x = 20
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room1)
+"zZ" = (
+/obj/structure/bed/chair/sofa/left{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"Aa" = (
+/obj/structure/bed/chair/wood{
+ dir = 1
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"Ae" = (
+/obj/structure/lattice,
+/turf/simulated/open,
+/area/gateway/eggnogtown/caves)
+"Af" = (
+/turf/simulated/floor/tiled,
+/area/gateway/eggnogtown/loniabode)
+"At" = (
+/obj/structure/bed/chair/comfy/black,
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/kitchihome)
+"Ax" = (
+/obj/structure/bed/chair/wood{
+ dir = 4
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"AE" = (
+/obj/machinery/gibber,
+/turf/simulated/floor/tiled/techmaint,
+/area/gateway/eggnogtown/dining/storage)
+"AM" = (
+/obj/machinery/button/windowtint{
+ id = "winterwindowb";
+ layer = 3.3;
+ name = "Window Tint Control";
+ pixel_x = -27;
+ pixel_y = -29;
+ range = 10
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room2)
+"AO" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/hall)
+"AS" = (
+/obj/machinery/vending/dinnerware{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"AT" = (
+/obj/structure/bed/chair/comfy/black,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"AV" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/machinery/light_switch{
+ dir = 4;
+ on = 0;
+ pixel_x = -25
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room1)
+"AY" = (
+/obj/structure/bed/chair/sofa/corner,
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"AZ" = (
+/obj/structure/table/fancyblack,
+/obj/item/device/flashlight/lantern{
+ pixel_x = 3;
+ pixel_y = 12
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/bedroom)
+"Bb" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome/bedroom)
+"Bd" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome)
+"Bf" = (
+/obj/structure/railing,
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hall)
+"Bh" = (
+/obj/structure/curtain,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/arturoswolfden)
+"Bn" = (
+/obj/machinery/light_switch{
+ dir = 4;
+ on = 0;
+ pixel_x = -25
+ },
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hall/south)
+"BD" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"BG" = (
+/obj/structure/bed/chair/sofa/beige{
+ dir = 8
+ },
+/turf/simulated/floor/wmarble,
+/area/gateway/eggnogtown/arturoswolfden)
+"BO" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"BR" = (
+/obj/item/weapon/stool/baystool,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"BW" = (
+/obj/structure/grille,
+/obj/structure/window/titanium,
+/obj/structure/window/titanium{
+ dir = 1
+ },
+/obj/structure/window/titanium{
+ dir = 4
+ },
+/obj/structure/window/titanium{
+ dir = 8
+ },
+/obj/structure/window/titanium/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/kitchihome)
+"BY" = (
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome/bedroom)
+"Cc" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"Cd" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/hotsprings)
+"Co" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/cavehome)
+"Cs" = (
+/turf/simulated/floor/tiled/techmaint,
+/area/gateway/eggnogtown/dining/storage)
+"Cx" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/dining/botany)
+"CC" = (
+/obj/machinery/light_switch{
+ dir = 1;
+ pixel_x = 23;
+ pixel_y = -23
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/guestroom)
+"CD" = (
+/obj/structure/noticeboard{
+ pixel_x = -32
+ },
+/obj/item/weapon/paper{
+ info = "Arturo's Wolf Den"
+ },
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/arturoswolfden)
+"CL" = (
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"CO" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/bedroom)
+"CP" = (
+/obj/structure/bed/chair/sofa/black/left{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad/bedroom)
+"Dd" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/dining)
+"Df" = (
+/turf/simulated/wall/log,
+/area/gateway/eggnogtown/teshnest)
+"Dj" = (
+/obj/structure/table/darkglass,
+/obj/item/weapon/deck/cards,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"DG" = (
+/obj/structure/bonfire/sifwood,
+/turf/simulated/floor/beach/sand{
+ outdoors = 1;
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"DH" = (
+/obj/structure/table/marble,
+/obj/machinery/microwave/advanced,
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"DK" = (
+/obj/structure/bed/chair/sofa/beige{
+ dir = 4
+ },
+/turf/simulated/floor/wmarble,
+/area/gateway/eggnogtown/arturoswolfden)
+"DM" = (
+/turf/simulated/floor/outdoors/newdirt_nograss{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hall)
+"DP" = (
+/obj/machinery/light_switch{
+ dir = 4;
+ on = 0;
+ pixel_x = -25
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room2)
+"DR" = (
+/obj/structure/bed/chair/sofa/black/left{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"DS" = (
+/obj/structure/table/woodentable,
+/obj/random/maintenance,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome/office)
+"DW" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/eggnogtown/stokeswashere/bathroom)
+"Er" = (
+/obj/structure/bonfire,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome)
+"Ew" = (
+/obj/structure/table/marble,
+/obj/item/weapon/storage/box/donkpockets,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/loniabode)
+"Ey" = (
+/obj/structure/bookcase,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/arturoswolfden)
+"Ez" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/sigloo)
+"EC" = (
+/obj/structure/table/marble,
+/obj/item/weapon/storage/fancy/egg_box,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"EI" = (
+/obj/structure/bed/double/padded,
+/obj/item/weapon/bedsheet/purpledouble,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/kitchihome/bedroom)
+"EK" = (
+/obj/structure/bonfire,
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/hall)
+"ES" = (
+/obj/structure/bed/chair/sofa/black/left,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"EZ" = (
+/obj/structure/bed/chair/sofa,
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Fd" = (
+/obj/structure/bonfire/permanent,
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/eggnogtown/greenhouse)
+"Fe" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/dining)
+"Fj" = (
+/obj/machinery/vending/cola/soft,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/bar)
+"Fk" = (
+/obj/structure/bed/chair/sofa/black,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Fm" = (
+/obj/machinery/cell_charger,
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/loniabode)
+"Ft" = (
+/turf/simulated/floor/tiled/monotile,
+/area/gateway/eggnogtown/dining/botany)
+"Fu" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"FF" = (
+/turf/simulated/floor/beach/sand{
+ outdoors = 1;
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"FH" = (
+/obj/structure/bed/chair/sofa/beige{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"FL" = (
+/obj/structure/bed/chair/sofa/black/left{
+ dir = 4
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"FQ" = (
+/obj/structure/closet/walllocker_double{
+ pixel_y = 28
+ },
+/obj/fiftyspawner/log/sif,
+/obj/fiftyspawner/log/sif,
+/obj/item/weapon/flame/lighter/random,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"FR" = (
+/obj/structure/table/fancyblack,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"FY" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/visitorlounge)
+"Ga" = (
+/obj/structure/table/woodentable,
+/obj/random/maintenance,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Gh" = (
+/obj/machinery/chem_master/condimaster,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"Gl" = (
+/turf/simulated/wall/r_wall,
+/area/gateway/eggnogtown/kitchihome/den)
+"Gq" = (
+/obj/structure/table/marble,
+/obj/machinery/microwave,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/loniabode)
+"Gz" = (
+/obj/structure/table/woodentable,
+/obj/random/maintenance,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"GA" = (
+/obj/effect/decal/remains/ribcage,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"GG" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/stokeswashere/bedroom)
+"GL" = (
+/obj/structure/bookcase,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/loniabode)
+"GQ" = (
+/obj/structure/barricade/cutout,
+/obj/structure/cable/yellow{
+ dir = 1
+ },
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/item/clothing/accessory/sweater/uglyxmas,
+/obj/effect/decal/cleanable/crayon,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"GW" = (
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/hall/south)
+"GY" = (
+/obj/structure/closet/secure_closet/freezer/meat,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"Hj" = (
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/alipad/bedroom)
+"Hl" = (
+/obj/structure/bookcase,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/bedroom)
+"Hr" = (
+/turf/simulated/wall/log,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"Hw" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/bar)
+"HC" = (
+/obj/structure/bed/chair/comfy/black{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"HG" = (
+/obj/structure/railing{
+ dir = 8
+ },
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hall)
+"HJ" = (
+/obj/structure/table/woodentable,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"HK" = (
+/obj/structure/table/woodentable,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"HM" = (
+/obj/structure/bed/chair/sofa/beige{
+ dir = 1
+ },
+/turf/simulated/floor/wmarble,
+/area/gateway/eggnogtown/arturoswolfden)
+"HP" = (
+/obj/machinery/gateway,
+/obj/effect/floor_decal/industrial/warning,
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/gateway)
+"HR" = (
+/obj/machinery/light_switch{
+ dir = 8;
+ pixel_x = 24
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome)
+"HT" = (
+/obj/structure/railing{
+ dir = 4
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/sigloo)
+"Ie" = (
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/loniabode)
+"If" = (
+/obj/structure/railing{
+ dir = 4
+ },
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hall)
+"Iq" = (
+/turf/simulated/floor/outdoors/newdirt_nograss{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/greenhouse)
+"It" = (
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/alipad)
+"Iw" = (
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hotsprings)
+"IA" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 4;
+ pixel_x = -21
+ },
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hall)
+"II" = (
+/obj/item/weapon/stool/padded,
+/obj/effect/floor_decal/spline/plain{
+ dir = 4
+ },
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"IJ" = (
+/obj/structure/table/standard,
+/obj/machinery/microwave,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"IO" = (
+/obj/machinery/vending/hydronutrients{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ outdoors = 0
+ },
+/area/gateway/eggnogtown/greenhouse)
+"IR" = (
+/obj/structure/closet,
+/obj/random/awayloot,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/arturoswolfden)
+"IW" = (
+/obj/structure/bed/chair/sofa/black/left,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"Jc" = (
+/obj/structure/table/rack,
+/obj/item/weapon/reagent_containers/spray/cleaner,
+/obj/item/weapon/reagent_containers/spray/cleaner,
+/obj/item/weapon/reagent_containers/spray/cleaner,
+/obj/item/weapon/reagent_containers/spray/cleaner,
+/obj/item/weapon/reagent_containers/spray/cleaner,
+/turf/simulated/floor/tiled/techmaint,
+/area/gateway/eggnogtown/dining/storage)
+"Jk" = (
+/obj/machinery/biogenerator,
+/turf/simulated/floor/tiled/monotile,
+/area/gateway/eggnogtown/dining/botany)
+"Jm" = (
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/eggnogtown/greenhouse)
+"Jp" = (
+/obj/machinery/door/airlock{
+ id_tag = "winterb";
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/visitorlounge)
+"JE" = (
+/obj/structure/table/standard,
+/obj/item/trash/bowl,
+/obj/item/weapon/material/kitchen/utensil/fork,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"JF" = (
+/turf/simulated/floor/beach/sand{
+ outdoors = 1;
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"JM" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome)
+"JT" = (
+/obj/structure/bed/chair/comfy/black,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/kitchihome)
+"JW" = (
+/obj/structure/closet/secure_closet/freezer/fridge,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"JX" = (
+/obj/machinery/light_switch{
+ dir = 4;
+ on = 0;
+ pixel_x = -25
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad/bedroom)
+"Ka" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/drinkbottle,
+/obj/random/drinkbottle,
+/obj/random/drinkbottle,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"Kb" = (
+/obj/machinery/light/flamp,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"Kf" = (
+/obj/structure/bed/chair/comfy/black{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"Kj" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"Kl" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/dining/botany)
+"Ky" = (
+/obj/structure/bed/chair/comfy{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"KE" = (
+/obj/structure/bed/chair/sofa/black{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"KI" = (
+/obj/structure/bed/chair/sofa/black/left{
+ dir = 1
+ },
+/obj/item/weapon/card/id{
+ access = list(777);
+ name = "Houser's secret hidde keycard";
+ registered_name = "Houser"
+ },
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"KN" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced,
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/obj/structure/window/reinforced{
+ dir = 4
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"KS" = (
+/obj/structure/railing{
+ dir = 1
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/sigloo)
+"La" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"Lb" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/dining/kitchen)
+"Lg" = (
+/obj/structure/table/rack/steel,
+/obj/random/awayloot,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/north)
+"LJ" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hotsprings)
+"LL" = (
+/obj/random/drinkbottle,
+/obj/random/drinkbottle,
+/obj/random/drinkbottle,
+/obj/structure/closet,
+/obj/random/drinksoft,
+/obj/random/drinksoft,
+/obj/random/drinksoft,
+/obj/random/drinksoft,
+/obj/random/drinksoft,
+/obj/random/drinksoft,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"LT" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hotsprings)
+"LX" = (
+/obj/structure/table/wooden_reinforced,
+/obj/machinery/button/remote/airlock{
+ id = "winterb";
+ name = "Door Lock";
+ pixel_y = 29;
+ specialfunctions = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room2)
+"Mf" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/caves)
+"Mg" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hall/north)
+"Mi" = (
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/loniabode)
+"Ml" = (
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Mn" = (
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/sigloo)
+"Mp" = (
+/obj/structure/railing{
+ dir = 4
+ },
+/obj/structure/bonfire/sifwood,
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/alipad)
+"Mr" = (
+/obj/structure/table/marble,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"Mx" = (
+/obj/structure/flora/tree/pine,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"My" = (
+/obj/machinery/light_switch{
+ pixel_x = 22;
+ pixel_y = 26
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome)
+"MA" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"MB" = (
+/obj/structure/bed/chair/sofa/black{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"MD" = (
+/obj/structure/railing,
+/obj/structure/bonfire/sifwood,
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/alipad/bedroom)
+"MH" = (
+/obj/machinery/light_switch{
+ dir = 8;
+ on = 0;
+ pixel_x = 26;
+ pixel_y = -26
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"MI" = (
+/obj/structure/bed/chair/sofa/black/right,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"MN" = (
+/obj/structure/railing{
+ dir = 4
+ },
+/turf/simulated/open{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"MO" = (
+/turf/simulated/wall/log,
+/area/gateway/eggnogtown/kitchihome/bedroom)
+"MV" = (
+/obj/structure/bed/pod,
+/obj/structure/curtain/open/bed,
+/obj/item/weapon/bedsheet/purple,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room1)
+"MZ" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/hall)
+"Na" = (
+/obj/structure/bed/chair/wood/wings{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/dining)
+"Nc" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome/office)
+"Nd" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/hall/north)
+"Nl" = (
+/obj/machinery/hologram/holopad,
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"Nm" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/dining)
+"Nr" = (
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/obj/structure/fans/tiny,
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/loniabode)
+"Nt" = (
+/obj/structure/noticeboard{
+ pixel_y = 32
+ },
+/obj/item/weapon/paper{
+ info = "Houser Homestead. Private Property. Trespassers will be eaten"
+ },
+/turf/simulated/floor/beach/sand{
+ outdoors = 1;
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"Nw" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/stokeswashere/bathroom)
+"Nz" = (
+/obj/machinery/appliance/cooker/grill,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"NA" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/stokeswashere)
+"NI" = (
+/obj/machinery/appliance/cooker/fryer,
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"NX" = (
+/obj/structure/bed/chair/bay/chair/padded/red/bignest,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"Og" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/greenhouse)
+"Ok" = (
+/obj/item/clothing/shoes/boots/winter/climbing,
+/obj/structure/table/rack/shelf/steel,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome)
+"Oq" = (
+/obj/structure/bed/chair/sofa/black/right{
+ dir = 4
+ },
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/kitchihome/den)
+"Ov" = (
+/obj/structure/table/woodentable,
+/obj/random/maintenance,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/arturoswolfden)
+"OC" = (
+/turf/simulated/wall/log,
+/area/gateway/eggnogtown/kitchihome/guestroom)
+"OD" = (
+/obj/structure/railing/grey{
+ dir = 4
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/kitchihome)
+"OF" = (
+/obj/structure/table/standard,
+/obj/random/maintenance,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/arturoswolfden)
+"OH" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/greenhouse)
+"OM" = (
+/obj/structure/closet/walllocker_double{
+ dir = 1;
+ pixel_y = -27
+ },
+/obj/fiftyspawner/log,
+/obj/fiftyspawner/log,
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hall)
+"ON" = (
+/obj/item/trash/candle,
+/obj/structure/cable/yellow{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"OO" = (
+/obj/machinery/appliance/cooker/oven,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"Pa" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"Pc" = (
+/obj/structure/table/standard,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"Pe" = (
+/obj/structure/bonfire,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/visitorlounge)
+"Pi" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 4;
+ pixel_x = -21
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/bar)
+"Po" = (
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/kitchihome/bedroom)
+"Ps" = (
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/dining/botany)
+"Pt" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 4;
+ pixel_x = -21
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"Pu" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/alipad)
+"Px" = (
+/obj/machinery/light_switch{
+ pixel_x = 28;
+ pixel_y = 26
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/den)
+"Py" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/guestroom)
+"PB" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"PD" = (
+/obj/structure/fans/tiny,
+/obj/structure/simple_door/iron,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"PJ" = (
+/obj/structure/railing/grey{
+ dir = 4
+ },
+/obj/structure/railing/grey{
+ dir = 1
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/kitchihome)
+"PM" = (
+/obj/structure/closet,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome/bedroom)
+"PN" = (
+/obj/structure/bed/chair/comfy/black{
+ dir = 4
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/eggnogtown/loniabode)
+"PO" = (
+/obj/structure/closet/secure_closet/freezer/fridge,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"PP" = (
+/obj/structure/cable/yellow{
+ icon_state = "0-6"
+ },
+/obj/structure/cable/yellow{
+ icon_state = "0-10"
+ },
+/obj/structure/cable/yellow,
+/obj/item/weapon/paper{
+ info = "Dear Santa Talon. Please make this Christmas run with red. Because red is a real flappin nice colour. Like a strawberry. Or a cranberry river. From your biggest friendo, Xinxim! P.S. Please make those real spooky snow ghosts go away. They're scary! P.P.S. Here are some offerings to make sure I don't get haunted when I'm trying to roost!";
+ name = "Christmasacrifice"
+ },
+/obj/item/weapon/tray,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"PU" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/caves)
+"PV" = (
+/obj/machinery/button/remote/airlock{
+ id = "wintera";
+ name = "Door Lock";
+ pixel_y = 29;
+ specialfunctions = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room1)
+"PX" = (
+/obj/structure/sink{
+ dir = 4;
+ pixel_x = 13
+ },
+/obj/structure/mirror{
+ pixel_x = 26;
+ pixel_y = 5
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/eggnogtown/stokeswashere/bathroom)
+"PY" = (
+/obj/structure/table/darkglass,
+/obj/item/weapon/storage/pill_bottle/dice_nerd,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"Qh" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/hall/south)
+"Qr" = (
+/obj/structure/cable/yellow{
+ icon_state = "2-5"
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"QD" = (
+/obj/effect/landmark/map_data/eggnogtown,
+/turf/unsimulated/mineral{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"QL" = (
+/obj/structure/table/woodentable,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/hall/north)
+"QM" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"QT" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/hotsprings)
+"QV" = (
+/obj/machinery/gateway{
+ dir = 6
+ },
+/obj/effect/floor_decal/industrial/warning{
+ dir = 6
+ },
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/gateway)
+"QW" = (
+/obj/structure/bed/chair/sofa{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"QY" = (
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"Rd" = (
+/obj/structure/table/marble,
+/obj/item/weapon/material/kitchen/rollingpin,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/yeast,
+/obj/item/weapon/reagent_containers/food/condiment/spacespice,
+/obj/item/weapon/reagent_containers/food/condiment/yeast,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"Ri" = (
+/obj/machinery/light_switch{
+ on = 0;
+ pixel_y = 27
+ },
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/loniabode)
+"Rn" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"Rq" = (
+/obj/effect/floor_decal/spline/plain,
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"Ru" = (
+/obj/structure/bed/chair/comfy/beige{
+ dir = 1
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"RD" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/hatch{
+ name = "Telecomms Access";
+ req_one_access = list()
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/gateway)
+"RM" = (
+/obj/structure/bed/chair/sofa/black{
+ dir = 4
+ },
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"RN" = (
+/obj/structure/bed/double/padded,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad/bedroom)
+"RU" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room2)
+"Sa" = (
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"Sd" = (
+/obj/structure/bed/chair/comfy/black{
+ dir = 4
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome/office)
+"Sj" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hall)
+"SA" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/kitchihome/bedroom)
+"SF" = (
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"SG" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hall)
+"SP" = (
+/obj/structure/table/woodentable,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/arturoswolfden)
+"SS" = (
+/obj/machinery/light_switch{
+ dir = 4;
+ on = 0;
+ pixel_x = -24
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome/bedroom)
+"SU" = (
+/obj/structure/closet/secure_closet/freezer/kitchen,
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"SX" = (
+/obj/machinery/appliance/cooker/oven,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"SY" = (
+/turf/simulated/wall/log,
+/area/gateway/eggnogtown/kitchihome)
+"Ta" = (
+/obj/structure/window/basic/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/alipad)
+"Td" = (
+/obj/structure/bed/chair/bay/chair/padded/red/bignest,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/loniabode)
+"Tf" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/visitorlounge)
+"Th" = (
+/obj/structure/table/marble,
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"Tn" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"Tv" = (
+/turf/simulated/floor/tiled/monotile,
+/area/gateway/eggnogtown/dining)
+"Tz" = (
+/obj/structure/table/woodentable,
+/obj/random/awayloot,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/hall/south)
+"TD" = (
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/loniabode)
+"TH" = (
+/obj/structure/bed/chair/sofa/black/right,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"TI" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/loniabode)
+"TL" = (
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"TN" = (
+/obj/machinery/door/airlock/maintenance,
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/loniabode)
+"TR" = (
+/obj/structure/table/rack,
+/obj/random/awayloot,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/turf/simulated/floor/tiled/techmaint{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/storage)
+"TV" = (
+/obj/structure/closet/secure_closet/freezer/meat,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"TZ" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/cavehome)
+"Ua" = (
+/obj/structure/flora/pottedplant/xmas,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/dining)
+"Uk" = (
+/obj/structure/railing{
+ dir = 1
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"Um" = (
+/obj/structure/railing,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/sigloo)
+"Un" = (
+/obj/structure/table/woodentable,
+/obj/item/clothing/head/helmet/space/santahat,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/hall/south)
+"Uu" = (
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"UK" = (
+/obj/item/weapon/material/minihoe,
+/obj/item/weapon/material/knife/machete/hatchet,
+/turf/simulated/floor/outdoors/grass{
+ outdoors = 0
+ },
+/area/gateway/eggnogtown/greenhouse)
+"UL" = (
+/obj/machinery/portable_atmospherics/hydroponics,
+/turf/simulated/floor/tiled/monotile,
+/area/gateway/eggnogtown/dining/botany)
+"UO" = (
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/diningroom)
+"UR" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"US" = (
+/obj/structure/bed/double/padded,
+/obj/item/weapon/bedsheet/iandouble,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere/bedroom)
+"UV" = (
+/obj/structure/table/rack/steel,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/north)
+"UW" = (
+/obj/structure/table/woodentable,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad/bedroom)
+"UX" = (
+/obj/structure/flora/pottedplant/minitree,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/north)
+"UY" = (
+/obj/structure/bed/chair/wood,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"Ve" = (
+/turf/simulated/wall/snowbrick,
+/area/gateway/eggnogtown/nigloo)
+"Vi" = (
+/obj/structure/table/wooden_reinforced,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/kitchihome/den)
+"Vm" = (
+/obj/machinery/light_switch{
+ pixel_x = 22;
+ pixel_y = 26
+ },
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"Vq" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/glass,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/gateway)
+"Vx" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/alipad)
+"Vz" = (
+/obj/structure/bookcase,
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad/bedroom)
+"VC" = (
+/obj/structure/bookcase,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"VJ" = (
+/obj/structure/closet,
+/obj/item/weapon/cell/hyper,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown/loniabode)
+"VM" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/arturoswolfden)
+"VP" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"VQ" = (
+/obj/structure/railing,
+/turf/simulated/floor/tiled,
+/area/gateway/eggnogtown/cavehome)
+"VZ" = (
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"Wd" = (
+/obj/structure/table/marble,
+/obj/item/weapon/tape_roll,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/loniabode)
+"Wf" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/cavehome)
+"Wr" = (
+/turf/simulated/floor/outdoors/newdirt_nograss{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"Ww" = (
+/obj/structure/table/fancyblack,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/dining)
+"WF" = (
+/obj/structure/bed/double/padded,
+/obj/item/weapon/bedsheet/bluedouble,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead)
+"WH" = (
+/obj/structure/window/basic/full,
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+"WM" = (
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/bar)
+"WS" = (
+/obj/structure/simple_door/wood,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad/bedroom)
+"Xb" = (
+/turf/simulated/mineral/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/caves)
+"Xc" = (
+/obj/structure/flora/pottedplant/xmas,
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"Xh" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/loniabode)
+"Xm" = (
+/obj/structure/bed/chair/sofa/black/left,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome)
+"Xp" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown)
+"Xq" = (
+/obj/structure/table/glass,
+/obj/machinery/light_switch{
+ dir = 4;
+ on = 0;
+ pixel_x = -25
+ },
+/obj/item/clothing/head/hardhat,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/loniabode)
+"Xx" = (
+/obj/structure/bed/chair/wood{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad/bedroom)
+"XA" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced{
+ dir = 1
+ },
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/obj/structure/window/reinforced{
+ dir = 4
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"XB" = (
+/obj/machinery/appliance/cooker/grill,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/eggnogtown/dining/kitchen)
+"XE" = (
+/obj/machinery/portable_atmospherics/hydroponics/soil,
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/outdoors/grass/forest{
+ outdoors = 0
+ },
+/area/gateway/eggnogtown/greenhouse)
+"XF" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown)
+"XK" = (
+/obj/effect/map_effect/perma_light/gateway{
+ light_color = "#fc8c03";
+ light_power = .5
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/bar)
+"XU" = (
+/obj/structure/bed/chair/backed_grey{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge)
+"Yb" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad/bedroom)
+"Yc" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/greenhouse)
+"Yd" = (
+/turf/simulated/floor/tiled,
+/area/gateway/eggnogtown/cavehome)
+"Ym" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/visitorlounge/room2)
+"Yo" = (
+/obj/machinery/light_switch{
+ on = 0;
+ pixel_y = 27
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/dining)
+"Yq" = (
+/obj/structure/bed/chair/sofa/beige{
+ dir = 8
+ },
+/obj/random/awayloot,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/sigloo)
+"Yr" = (
+/obj/machinery/vending/dinnerware{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"Yv" = (
+/obj/machinery/light_switch{
+ on = 0;
+ pixel_y = 27
+ },
+/turf/simulated/floor/tiled/techmaint{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/storage)
+"Yw" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/alipad/bedroom)
+"YB" = (
+/obj/structure/bed/chair/sofa/black,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/cavehome)
+"YD" = (
+/obj/structure/bed/chair/sofa/black/corner{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/hall/south)
+"YE" = (
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/loniabode)
+"YO" = (
+/turf/simulated/floor/reinforced,
+/area/gateway/eggnogtown)
+"YP" = (
+/obj/structure/bed/chair/sofa/beige/corner{
+ dir = 4
+ },
+/turf/simulated/floor/wmarble,
+/area/gateway/eggnogtown/arturoswolfden)
+"YS" = (
+/obj/structure/bed/chair/sofa/beige,
+/turf/simulated/floor/wmarble,
+/area/gateway/eggnogtown/arturoswolfden)
+"YZ" = (
+/turf/simulated/floor/outdoors/grass{
+ outdoors = 0
+ },
+/area/gateway/eggnogtown/greenhouse)
+"Zh" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/stokeswashere)
+"Zl" = (
+/obj/structure/table/marble,
+/obj/item/weapon/reagent_containers/food/condiment/ketchup,
+/obj/item/weapon/reagent_containers/food/condiment/hotsauce,
+/obj/item/weapon/reagent_containers/food/condiment/enzyme,
+/obj/item/weapon/reagent_containers/food/condiment/soysauce,
+/turf/simulated/floor/tiled/eris/white/monofloor,
+/area/gateway/eggnogtown/kitchihome/kitchen)
+"Zm" = (
+/obj/structure/bed/chair/comfy{
+ dir = 4
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Zo" = (
+/obj/structure/table/marble,
+/obj/item/weapon/storage/firstaid,
+/turf/simulated/floor/lino,
+/area/gateway/eggnogtown/bar)
+"Zr" = (
+/obj/structure/bed/chair/wood/wings{
+ dir = 8
+ },
+/obj/machinery/alarm/alarms_hidden{
+ dir = 8;
+ pixel_x = 20
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/dining)
+"Zs" = (
+/obj/structure/railing{
+ dir = 1
+ },
+/turf/simulated/floor/bmarble,
+/area/gateway/eggnogtown/hall)
+"ZE" = (
+/obj/structure/bed/chair/sofa/right{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/alipad)
+"ZG" = (
+/obj/machinery/light_switch{
+ dir = 4;
+ on = 0;
+ pixel_x = -25;
+ pixel_y = -24
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/kitchihome/bedroom)
+"ZJ" = (
+/obj/structure/table/fancyblack,
+/obj/item/weapon/reagent_containers/food/condiment/small/peppermill{
+ pixel_x = 3
+ },
+/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{
+ pixel_x = -3
+ },
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/dining)
+"ZM" = (
+/obj/structure/table/fancyblack,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/kitchihome)
+"ZO" = (
+/obj/structure/bed/chair/bay/chair/padded/red/bignest,
+/turf/simulated/floor/wood,
+/area/gateway/eggnogtown/arturoswolfden)
+"ZS" = (
+/turf/simulated/wall,
+/area/gateway/eggnogtown/loniabode)
+"ZU" = (
+/obj/structure/table/woodentable,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/eggnogtown/hall/south)
+"ZW" = (
+/obj/structure/table/bench/wooden,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/eastcaveland)
+
+(1,1,1) = {"
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+QD
+"}
+(2,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+jP
+jP
+jP
+jP
+jP
+jP
+jP
+jP
+jP
+jP
+jP
+jP
+jP
+jP
+jP
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+ef
+hj
+"}
+(3,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+jP
+gJ
+gJ
+gJ
+yb
+gJ
+gJ
+gJ
+jP
+gJ
+eL
+yt
+ho
+gJ
+jP
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+ma
+hj
+"}
+(4,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+jP
+gJ
+gJ
+gJ
+gJ
+gJ
+gJ
+gJ
+hR
+gJ
+gJ
+gJ
+gJ
+gJ
+jP
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(5,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+jP
+gJ
+gJ
+gJ
+gJ
+gJ
+gJ
+gJ
+jP
+gJ
+gJ
+gJ
+gJ
+gJ
+jP
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(6,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+NA
+NA
+NA
+fa
+fa
+fa
+NA
+NA
+NA
+Xb
+Xb
+ek
+ek
+ek
+Bb
+cj
+Nc
+cj
+cj
+jP
+xA
+gJ
+gJ
+zr
+Yd
+Wf
+Wf
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(7,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+NA
+VC
+VC
+fa
+xy
+fa
+VC
+VC
+NA
+Xb
+Xb
+ek
+BY
+SS
+BY
+cj
+eF
+uk
+Sd
+jP
+gJ
+gJ
+gJ
+YB
+VQ
+Er
+Wf
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(8,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Xb
+NA
+cv
+cv
+cv
+cv
+cv
+cv
+cv
+NA
+Xb
+Xb
+ek
+eY
+PM
+BY
+cj
+eF
+wn
+DS
+jP
+gJ
+gJ
+HR
+Xm
+Yd
+Wf
+Wf
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(9,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Mf
+pw
+cv
+cv
+mt
+jV
+jV
+Ru
+cv
+NA
+Xb
+Xb
+ek
+ek
+ek
+ek
+cj
+cj
+cj
+cj
+jP
+jP
+TZ
+jP
+jP
+jP
+jP
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(10,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Mf
+Xb
+Xb
+NA
+jO
+cv
+cv
+cv
+cv
+cv
+cv
+NA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+jP
+Co
+jP
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(11,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Mf
+Xb
+Xb
+NA
+Zh
+cv
+eO
+FH
+ez
+cv
+BD
+NA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+jP
+gB
+jP
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(12,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Xb
+Xb
+Xb
+Xb
+NA
+cv
+cv
+XA
+uT
+KN
+cv
+cv
+NA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(13,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+QT
+QT
+QT
+QT
+QT
+QT
+QT
+QT
+QT
+QT
+QT
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Xb
+GG
+GG
+GG
+GG
+cv
+cv
+cv
+cv
+cv
+cv
+cv
+NA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(14,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+QT
+nj
+nj
+nj
+nj
+nj
+nj
+nj
+nj
+nj
+QT
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Xb
+GG
+mw
+hC
+yD
+cv
+cv
+cv
+cv
+cv
+cv
+IJ
+NA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(15,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+QT
+nj
+nj
+nj
+nj
+nj
+nj
+nj
+nj
+nj
+QT
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Xb
+GG
+hC
+hC
+GG
+Kb
+cv
+cv
+TV
+rQ
+JE
+Pc
+NA
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(16,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+QT
+nj
+nj
+nj
+nj
+nj
+nj
+nj
+nj
+nj
+QT
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Xb
+GG
+ew
+US
+GG
+Nw
+he
+Nw
+Nw
+NA
+NA
+NA
+NA
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+sP
+sP
+sP
+sP
+sP
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(17,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+QT
+MN
+MN
+MN
+nj
+MN
+nj
+MN
+MN
+MN
+QT
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Xb
+Xb
+GG
+GG
+GG
+GG
+va
+lT
+xk
+Nw
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+sP
+sP
+Mn
+Mn
+Mn
+sP
+sP
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(18,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+QT
+LJ
+Iw
+Iw
+Iw
+Iw
+Iw
+Iw
+Iw
+LT
+QT
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Xb
+Xb
+Xb
+Xb
+Xb
+Nw
+va
+DW
+PX
+Nw
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+sP
+Mn
+Mn
+HT
+Mn
+Mn
+sP
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(19,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+QT
+QT
+Iw
+Iw
+Iw
+Iw
+Iw
+Iw
+Iw
+QT
+QT
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Xb
+Xb
+Xb
+Xb
+Xb
+Nw
+Nw
+Nw
+Nw
+Nw
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Wr
+Wr
+Ez
+Mn
+Um
+zo
+KS
+Mn
+sP
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(20,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+QT
+QT
+QT
+Cd
+QT
+Cd
+QT
+QT
+QT
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+sP
+Mn
+Mn
+dv
+Mn
+Mn
+sP
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(21,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+oC
+Wr
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+sP
+sP
+bU
+Yq
+dM
+sP
+sP
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(22,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Wr
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+sP
+sP
+sP
+sP
+sP
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(23,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+wp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(24,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+lg
+lg
+Xp
+Xp
+Wr
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+oz
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(25,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Mf
+Mf
+lg
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+wx
+CL
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(26,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Yc
+Yc
+iq
+iq
+Yc
+iq
+iq
+Yc
+Yc
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+eI
+Mf
+Mf
+Mf
+Mf
+lg
+lg
+Xp
+Wr
+Xp
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+CL
+wx
+CL
+Qr
+vE
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(27,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Yc
+Yc
+vQ
+wt
+wt
+kb
+wt
+wt
+cZ
+Yc
+Yc
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+oQ
+oQ
+oQ
+oQ
+Xb
+Mf
+Mf
+Mf
+Xb
+Xb
+oQ
+Mf
+Mf
+Mf
+Mf
+Mf
+lg
+Xp
+Wr
+Xp
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+rz
+aq
+GQ
+PP
+CL
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(28,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Yc
+kb
+tc
+tc
+YZ
+YZ
+YZ
+wt
+oN
+fe
+Yc
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+oQ
+Ae
+Ae
+oQ
+Mf
+Mf
+Mf
+Mf
+Mf
+Mf
+oQ
+Mf
+Mf
+Mf
+Mf
+Mf
+cQ
+Wr
+Wr
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+CL
+wx
+CL
+cF
+vE
+Xp
+Xp
+Xp
+Xp
+Xp
+aa
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(29,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+iq
+wt
+tc
+hS
+YZ
+gP
+YZ
+YZ
+oN
+IO
+iq
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+oQ
+Ae
+Ae
+oQ
+Mf
+Mf
+Mf
+Mf
+Mf
+Mf
+oQ
+Mf
+Mf
+Mf
+Mf
+Mf
+lg
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+wx
+CL
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(30,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+iq
+wt
+YZ
+YZ
+Jm
+Jm
+Jm
+YZ
+YZ
+ou
+Yc
+Og
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+oQ
+oQ
+oQ
+oQ
+Mf
+Mf
+Mf
+Mf
+Mf
+Mf
+oQ
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+ON
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(31,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+iq
+dL
+YZ
+gP
+Jm
+Fd
+Jm
+Jm
+Jm
+cz
+sp
+Iq
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Mf
+Mf
+Mf
+Mf
+Mf
+Mf
+Mf
+eI
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(32,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+iq
+wt
+YZ
+UK
+Jm
+Jm
+Jm
+YZ
+YZ
+tc
+Yc
+OH
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Mf
+Mf
+Mf
+Mf
+Mf
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(33,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+iq
+wt
+tc
+YZ
+YZ
+gP
+YZ
+YZ
+tc
+wt
+iq
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+eI
+oQ
+oQ
+oQ
+oQ
+oQ
+oQ
+oQ
+eI
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(34,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Yc
+uh
+tc
+tc
+YZ
+YZ
+YZ
+tc
+tc
+XE
+Yc
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Mx
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Mf
+Mf
+Mf
+Mf
+Mf
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(35,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Mx
+Xp
+Xp
+Yc
+Yc
+vQ
+wt
+wt
+XE
+wt
+wt
+fS
+Yc
+Yc
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Mf
+Mf
+Mf
+Mf
+Mf
+Mf
+Mf
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(36,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Yc
+Yc
+iq
+iq
+Yc
+iq
+iq
+Yc
+Yc
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+lg
+lg
+Mf
+Mf
+Mf
+Mf
+Mf
+lg
+lg
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(37,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xp
+lg
+lg
+lg
+cQ
+lg
+lg
+lg
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(38,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(39,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(40,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(41,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(42,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(43,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(44,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Nd
+Nd
+Mg
+Mg
+Mg
+Nd
+Nd
+Nd
+Xp
+Xp
+Xp
+Qh
+Qh
+Qh
+tj
+tj
+tj
+Qh
+Qh
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(45,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Nd
+Nd
+Lg
+UV
+vH
+vH
+ua
+vH
+Nd
+MZ
+MZ
+MZ
+Qh
+YD
+RM
+KE
+cn
+vL
+LL
+Qh
+Qh
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(46,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Nd
+UX
+vH
+vH
+vH
+vH
+vH
+vH
+Nd
+pL
+IA
+pL
+Qh
+IW
+Tn
+Tn
+Tn
+Tn
+Tn
+iU
+Qh
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+OC
+OC
+OC
+OC
+OC
+OC
+jd
+jd
+jd
+jd
+jd
+jd
+tA
+tA
+tA
+tA
+tA
+tA
+tA
+tA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(47,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+az
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Nd
+pM
+pM
+pM
+pM
+pM
+pM
+Nd
+Nd
+pL
+If
+pL
+Qh
+Qh
+GW
+GW
+lB
+lB
+GW
+GW
+Qh
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+OC
+jb
+rv
+nE
+tX
+tG
+jd
+Rn
+Rn
+La
+Rn
+mP
+tA
+aW
+bd
+aY
+aY
+bd
+aW
+tA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(48,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+az
+az
+az
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Wr
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Mg
+pM
+pM
+QL
+QL
+pM
+pM
+bX
+hg
+Bf
+EK
+Zs
+uw
+Bn
+GW
+lB
+ZU
+Tz
+lB
+GW
+tj
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+OC
+qc
+rv
+rv
+rv
+CC
+lF
+Rn
+mx
+mx
+mx
+Rn
+tA
+aY
+qJ
+qJ
+qJ
+qJ
+aY
+tA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(49,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+az
+az
+az
+Xb
+hG
+hG
+hG
+hG
+hG
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mg
+pM
+pM
+QL
+QL
+pM
+pM
+hg
+hg
+Bf
+EK
+Zs
+uw
+uw
+GW
+lB
+Un
+ZU
+lB
+GW
+tj
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+OC
+rv
+lK
+Py
+lK
+rv
+jd
+Rn
+FR
+FR
+FR
+Rn
+pa
+Px
+qJ
+qJ
+qJ
+qJ
+bg
+tA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(50,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+az
+az
+kO
+Xb
+hG
+js
+sr
+vz
+hG
+xN
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Nd
+pM
+pM
+pM
+pM
+pM
+pM
+Nd
+Nd
+pL
+HG
+pL
+Qh
+Qh
+GW
+GW
+lB
+lB
+GW
+GW
+Qh
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+OC
+OC
+OC
+OC
+OC
+OC
+jd
+qA
+FR
+lo
+FR
+MA
+tA
+aY
+qJ
+qJ
+qJ
+qJ
+bg
+tA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(51,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xb
+Xb
+JF
+JF
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+az
+Xb
+Xb
+hG
+kI
+te
+HP
+Vq
+xN
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Xp
+Xp
+Xp
+Nd
+UX
+vH
+vH
+vH
+vH
+vH
+vH
+Nd
+cJ
+pL
+OM
+Qh
+MI
+Tn
+Tn
+Tn
+Tn
+Tn
+iU
+Qh
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+jd
+nI
+UO
+Fu
+Rn
+HC
+HC
+HC
+Rn
+tA
+bT
+qJ
+qJ
+qJ
+qJ
+aY
+tA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(52,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xb
+Xb
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+kO
+az
+az
+Xb
+hG
+rd
+tY
+QV
+hG
+xN
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Nd
+Nd
+UV
+UV
+vH
+vH
+mp
+vH
+Nd
+MZ
+AO
+MZ
+Qh
+mv
+qN
+ig
+DR
+vL
+wP
+Qh
+Qh
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Kj
+Kj
+Kj
+FY
+Kj
+Kj
+Kj
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+jd
+fh
+qD
+jd
+Rn
+Rn
+MH
+Rn
+Rn
+tA
+aY
+zU
+gK
+gK
+Oq
+aY
+tA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(53,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xb
+az
+az
+kO
+Xb
+hG
+hG
+hG
+hG
+hG
+RD
+hG
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Nd
+Nd
+Mg
+Mg
+Mg
+Nd
+Nd
+Nd
+SG
+DM
+Sj
+Qh
+Qh
+Qh
+tj
+tj
+tj
+Qh
+Qh
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Kj
+Kj
+NX
+uM
+uM
+uM
+Pt
+Kj
+fI
+fI
+fI
+fI
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+rh
+aQ
+SY
+SY
+SY
+SY
+SY
+Hr
+Hr
+Hr
+dr
+Hr
+Hr
+Hr
+bb
+qJ
+Vi
+Vi
+qJ
+aY
+tA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(54,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+kO
+kO
+kO
+Xb
+Xb
+Xb
+Xb
+Xb
+hG
+kG
+hG
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Kj
+ng
+uM
+uM
+uM
+uM
+uM
+uM
+fI
+AV
+MV
+fI
+fI
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+mK
+zx
+BW
+JT
+cx
+hF
+Bd
+Hr
+DH
+QY
+QY
+QY
+QY
+Hr
+bc
+be
+aY
+aY
+be
+aY
+tA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(55,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hG
+hG
+hG
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Wr
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+qB
+uM
+uM
+uM
+uM
+uM
+uM
+uM
+bo
+iw
+ea
+iw
+sH
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+mK
+zx
+SY
+At
+ZM
+hF
+Bd
+Hr
+pN
+QY
+Zl
+mc
+VP
+Hr
+tA
+Gl
+sK
+sK
+Gl
+tA
+tA
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(56,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+qB
+uM
+uM
+uM
+aT
+aT
+uM
+uM
+fI
+PV
+zV
+iw
+sH
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+zx
+zx
+JM
+My
+Bd
+Bd
+Bd
+Pa
+Vm
+QY
+Mr
+gV
+QY
+Hr
+Xb
+Gl
+Gl
+Gl
+Gl
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(57,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Tf
+Kj
+rr
+uM
+aX
+aU
+aU
+XU
+uM
+fI
+fI
+fI
+fI
+fI
+Xp
+Xp
+Wr
+Xp
+Wr
+Xp
+Xp
+mK
+vy
+SY
+iz
+Bd
+Bd
+Ok
+Hr
+Nz
+QY
+Rd
+EC
+bk
+Hr
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(58,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+rL
+FY
+uM
+uM
+aX
+PY
+Dj
+XU
+lL
+Kj
+DP
+if
+fj
+tE
+tE
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+mK
+zx
+SY
+af
+Bd
+Bd
+zh
+Hr
+SX
+QY
+QY
+QY
+QY
+Hr
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(59,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Wr
+Mx
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Xp
+mZ
+Kj
+uM
+uM
+aX
+nJ
+aU
+XU
+uM
+Kj
+Ym
+RU
+AM
+RU
+nZ
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+PJ
+OD
+SY
+ex
+Bd
+Bd
+gH
+Hr
+su
+QY
+Cc
+QY
+Yr
+Hr
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(60,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Wr
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+qB
+uM
+uM
+uM
+fx
+fx
+uM
+uM
+Jp
+RU
+RU
+RU
+RU
+nZ
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+MO
+MO
+CO
+MO
+MO
+MO
+Hr
+Hr
+Hr
+Uu
+Hr
+Hr
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(61,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+fb
+aC
+aH
+aH
+aK
+fb
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+qB
+uM
+uM
+uM
+uM
+uM
+uM
+uM
+Kj
+LX
+bu
+bu
+tE
+tE
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+MO
+xU
+ZG
+ba
+Hl
+MO
+aZ
+Hr
+QY
+QY
+QY
+Hr
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(62,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+aL
+aL
+JF
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+jK
+jK
+jK
+Xp
+Xp
+Xp
+Xp
+fb
+fb
+fb
+fb
+fb
+aF
+fB
+fB
+aM
+fb
+fb
+fb
+ot
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Wr
+Wr
+Wr
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Kj
+Xc
+uM
+uM
+uM
+uM
+uM
+zR
+Kj
+tE
+nZ
+tE
+tE
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+fX
+ba
+Po
+Po
+ba
+MO
+sR
+Hr
+PO
+SU
+GY
+Hr
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(63,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+ay
+ay
+Xb
+Xb
+Xb
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+jK
+VM
+jK
+Xp
+Xp
+Xp
+Xp
+fb
+bA
+Pi
+Hw
+av
+Hw
+Hw
+Hw
+Hw
+av
+yG
+fb
+fb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Xp
+Xp
+Xp
+Mx
+Xp
+Kj
+Kj
+bt
+BR
+uM
+bn
+bn
+bn
+Kj
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+MO
+AZ
+SA
+EI
+ix
+MO
+Hr
+Hr
+Hr
+Hr
+Hr
+Hr
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(64,1,1) = {"
+hj
+Xb
+Xb
+ay
+ay
+ay
+ay
+Xb
+Xb
+Xp
+Xp
+Xp
+YO
+YO
+Wr
+Wr
+Wr
+Wr
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+jK
+jK
+jK
+jK
+jK
+jK
+jK
+VM
+jK
+Xp
+Xp
+Xp
+Xp
+fb
+wu
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+vP
+as
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Xp
+Xp
+Wr
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Kj
+Kj
+qB
+Kj
+dV
+Pe
+dV
+Kj
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+MO
+MO
+MO
+MO
+MO
+MO
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(65,1,1) = {"
+aa
+ay
+Xb
+ay
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+ac
+br
+dq
+dq
+br
+ac
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+jK
+ZO
+Bh
+jK
+vn
+OF
+VM
+VM
+jK
+Xp
+Xp
+Xp
+Xp
+fb
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+es
+Hw
+Hw
+fb
+fb
+fb
+fb
+fb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+dV
+dV
+dV
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Df
+Df
+Df
+Df
+Df
+Df
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(66,1,1) = {"
+aa
+ay
+ay
+ay
+Xb
+Xb
+Xb
+Xb
+ac
+ac
+ac
+Ml
+Ml
+Ml
+Zm
+ac
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+jK
+VM
+VM
+jK
+VM
+VM
+VM
+VM
+jK
+Xp
+Xp
+Xp
+Xp
+fb
+ab
+fb
+ad
+dy
+dy
+dy
+qn
+pV
+aR
+Hw
+Hw
+aP
+aO
+WM
+WM
+fb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Df
+pj
+pj
+aD
+pj
+Df
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(67,1,1) = {"
+aa
+ay
+ay
+Xb
+Xb
+Xb
+Xb
+Xb
+ac
+Ga
+Ml
+Ml
+bv
+bv
+Ga
+ac
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+jK
+VM
+VM
+jK
+VM
+VM
+VM
+VM
+jK
+Xp
+Xp
+Xp
+Xp
+fb
+fb
+fb
+SF
+Zo
+Th
+Th
+Sa
+Rq
+es
+Hw
+aO
+WM
+WM
+WM
+aO
+fb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Df
+pj
+pj
+aD
+aD
+Df
+Df
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(68,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+ac
+TH
+bq
+bv
+bv
+bv
+Ky
+ac
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+jK
+Ey
+VM
+VM
+VM
+ca
+DK
+YP
+jK
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+aI
+SF
+SF
+SF
+Th
+Sa
+Rq
+Hw
+Hw
+hO
+hO
+aO
+hO
+hO
+fb
+fb
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Fe
+Fe
+Fe
+jp
+jp
+jp
+jp
+jp
+Fe
+Fe
+Fe
+Xp
+Xp
+Xp
+Xp
+ne
+ne
+ne
+ne
+ne
+ne
+ne
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+az
+aA
+az
+az
+aA
+pj
+pj
+aB
+aE
+aB
+pj
+zK
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(69,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+ac
+Fk
+bq
+bv
+bv
+bv
+Ml
+ac
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+jK
+jK
+jK
+jK
+VM
+YS
+cD
+HM
+jK
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+aI
+ag
+SF
+SF
+Th
+Sa
+Rq
+Hw
+Hw
+hO
+aO
+aO
+aO
+hO
+WM
+fb
+fb
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Mx
+Xp
+Fe
+Ua
+Nm
+Nm
+zG
+zG
+zG
+Nm
+Nm
+wN
+Fe
+Xp
+Xp
+Xp
+Xp
+ne
+bL
+bL
+bL
+TR
+bL
+ne
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+az
+Xb
+Xb
+Xb
+Xb
+Df
+pj
+aB
+aB
+aB
+cN
+zK
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(70,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+ac
+ES
+bq
+bv
+bv
+bv
+zJ
+ac
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+jK
+VM
+ys
+BG
+xq
+jK
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+fb
+ah
+SF
+Nl
+Th
+Sa
+Rq
+Hw
+XK
+aO
+aO
+aO
+aO
+aO
+WM
+WM
+aI
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Fe
+ld
+Nm
+Nm
+Ww
+ZJ
+Ww
+Nm
+Nm
+Dd
+Fe
+Xp
+Xp
+Xp
+Xp
+ne
+bz
+bz
+bz
+bz
+bz
+ne
+ne
+ne
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Df
+pj
+pj
+pj
+pj
+zK
+zK
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(71,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+ac
+Ml
+Ml
+Ml
+Ml
+Ga
+HK
+ac
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+jK
+VM
+VM
+VM
+VM
+jK
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+aI
+aj
+SF
+SF
+Th
+Sa
+Rq
+Hw
+Hw
+hO
+aO
+aO
+aO
+hO
+WM
+fb
+fb
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+hl
+Fe
+Yo
+Nm
+Nm
+Na
+Na
+Na
+Nm
+Nm
+Nm
+Fe
+BO
+Xp
+Xp
+Xp
+ne
+Yv
+bL
+mC
+bL
+dm
+dm
+bw
+ne
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Df
+Df
+cN
+sb
+pj
+zK
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(72,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+ac
+ac
+ac
+ac
+iZ
+ac
+ac
+ac
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+jK
+jK
+VM
+VM
+VM
+VM
+jK
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+aI
+ak
+SF
+SF
+Th
+Sa
+Rq
+Hw
+Hw
+hO
+hO
+aO
+hO
+hO
+fb
+fb
+Mx
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Wr
+lR
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+lR
+Wr
+Wr
+Wr
+Wr
+bx
+bz
+bz
+bz
+bz
+bz
+bz
+bM
+ne
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Df
+Df
+Df
+Df
+zK
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(73,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+ac
+Ml
+ae
+Ml
+au
+Ml
+ac
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+jK
+jK
+jK
+VM
+VM
+VM
+VM
+VM
+jK
+Xp
+Xp
+Xp
+Xp
+fb
+fb
+fb
+ap
+tC
+Th
+Th
+Sa
+Rq
+es
+Hw
+aO
+WM
+WM
+WM
+aO
+fb
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Wr
+Wr
+Xp
+Xp
+Fe
+Nm
+Nm
+Nm
+zG
+zG
+zG
+Nm
+Nm
+Tv
+an
+an
+Xp
+Xp
+Xp
+ne
+bz
+bL
+mC
+bL
+dm
+dm
+bO
+ne
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(74,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+bm
+Ml
+mf
+fu
+dh
+Ml
+ac
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+jK
+IR
+VM
+VM
+VM
+VM
+VM
+VM
+jK
+Xp
+Xp
+Xp
+Xp
+fb
+ab
+fb
+ar
+II
+II
+II
+yv
+rm
+aR
+Hw
+Hw
+aV
+aO
+WM
+WM
+fb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Fe
+ld
+Nm
+Nm
+Ww
+ZJ
+Ww
+Nm
+Nm
+Tv
+hy
+an
+Xp
+Xp
+Xp
+ne
+bz
+bz
+bz
+bz
+bz
+ne
+ne
+ne
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(75,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+ac
+uf
+EZ
+rk
+yR
+Ml
+ac
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+jK
+jK
+jK
+Ov
+SP
+SP
+VM
+VM
+jK
+Xp
+Xp
+Xp
+Xp
+fb
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+es
+Hw
+Hw
+fb
+fb
+fb
+fb
+fb
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Fe
+Ua
+Nm
+Nm
+Na
+Zr
+Na
+Nm
+Nm
+Tv
+an
+an
+Xp
+Xp
+Xp
+ne
+TR
+bH
+bH
+bL
+bL
+ne
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(76,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+ac
+Ml
+AY
+kX
+dh
+Ml
+ac
+Xb
+Xp
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+jK
+jK
+jK
+jK
+VM
+jK
+jK
+Xp
+Xp
+Xp
+Xp
+fb
+Fj
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+vP
+at
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Lb
+Lb
+Lb
+tU
+Lb
+Lb
+Cx
+Cx
+Kl
+Cx
+Cx
+Xp
+Xp
+Xp
+Xp
+ne
+ne
+ne
+ne
+ne
+ne
+ne
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(77,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+ac
+Ml
+Ml
+Ml
+bW
+Ml
+ac
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+jK
+jt
+jK
+Xp
+Xp
+Xp
+Xp
+Xp
+fb
+ym
+Hw
+Hw
+ax
+Hw
+Hw
+Hw
+Hw
+ax
+Hw
+fb
+fb
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Wr
+Xp
+Xp
+Xp
+Lb
+JW
+tB
+VZ
+AS
+Lb
+oJ
+rN
+Ft
+dp
+Cx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(78,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+CD
+pT
+pT
+Xp
+Xp
+Xp
+Xp
+Xp
+fb
+fb
+fb
+fb
+fb
+aF
+fB
+fB
+aM
+fb
+fb
+fb
+sI
+Xp
+Xp
+Mx
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Lb
+NI
+VZ
+VZ
+XB
+Lb
+UL
+Ft
+Ft
+nQ
+Cx
+wj
+wj
+wj
+wj
+wj
+wj
+wj
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(79,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+fb
+aG
+aJ
+aJ
+aN
+fb
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Lb
+uX
+VZ
+VZ
+OO
+Lb
+UL
+Ft
+Ft
+Jk
+Cx
+lI
+mM
+hr
+Cs
+tp
+uY
+wj
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(80,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Lb
+gk
+VZ
+VZ
+sN
+Lb
+UL
+Ft
+Ft
+ty
+Cx
+sS
+Cs
+Cs
+Cs
+Cs
+Cs
+wj
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(81,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Lb
+vc
+VZ
+VZ
+VZ
+VZ
+Ft
+Ft
+Ft
+Ft
+Ps
+Cs
+Cs
+Cs
+Cs
+Cs
+Cs
+wj
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(82,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Wr
+Xp
+Xp
+Lb
+Ka
+VZ
+Gh
+gs
+Lb
+oJ
+Ft
+UL
+eE
+Cx
+lI
+mM
+Jc
+AE
+tp
+uY
+wj
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(83,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Lb
+bf
+bf
+bf
+bf
+Lb
+cq
+cq
+cq
+cq
+Cx
+wj
+wj
+wj
+wj
+wj
+wj
+wj
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(84,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Mx
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+wp
+wp
+wp
+wp
+wp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(85,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xb
+Xb
+Xp
+Xp
+Xp
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+wp
+wp
+Xp
+Xp
+Xp
+wp
+wp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(86,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+wp
+Xp
+Xp
+Xp
+Xp
+Xp
+wp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(87,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+wp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(88,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+wp
+Xp
+Xp
+Xp
+Xp
+Xp
+wp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Wr
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+JF
+JF
+Xp
+Xp
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(89,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+ZS
+ZS
+ZS
+ZS
+ZS
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+wp
+wp
+Xp
+Xp
+Xp
+wp
+wp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+nN
+XF
+JF
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(90,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+ZS
+qC
+Fm
+Ie
+ZS
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+wp
+wp
+wp
+wp
+wp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+nN
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(91,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+ZS
+Ri
+gA
+VJ
+ZS
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+nN
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(92,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+ZS
+TN
+ZS
+ZS
+ZS
+az
+ai
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+nN
+XF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(93,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+ZS
+oc
+Mi
+Nr
+di
+az
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+nN
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(94,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+ZS
+ZS
+ZS
+yL
+ZS
+ZS
+ao
+az
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+nN
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(95,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+os
+os
+PN
+Xq
+YE
+Wd
+TI
+az
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+nN
+XF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(96,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+os
+dz
+Af
+YE
+YE
+Ew
+TI
+az
+az
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+nN
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(97,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+os
+os
+ge
+YE
+YE
+Gq
+TI
+az
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(98,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+ZS
+YE
+YE
+YE
+ZS
+ZS
+Xb
+Xb
+Xb
+Xb
+Pu
+Pu
+Pu
+Pu
+Pu
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(99,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Mx
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xh
+dj
+TD
+sv
+Xh
+Xb
+Xb
+Xb
+xS
+xS
+Pu
+Mp
+Pu
+Mp
+Pu
+xS
+xS
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+nN
+nN
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(100,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xh
+Td
+xn
+GL
+Xh
+Xb
+Xb
+Xb
+xS
+da
+It
+It
+It
+It
+It
+PB
+xS
+Xb
+Xb
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+XF
+nN
+nN
+XF
+Xp
+JF
+JF
+JF
+JF
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(101,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xh
+Xh
+Xh
+Xh
+Xh
+Yw
+Yw
+Yw
+Yw
+dN
+dN
+dN
+dN
+dN
+dN
+dN
+xS
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+JF
+nN
+nN
+JF
+JF
+JF
+aL
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(102,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Yw
+cL
+Xx
+JX
+RN
+dB
+Yw
+dN
+ZE
+QW
+QW
+QW
+zZ
+dN
+xS
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+nN
+nN
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(103,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Yw
+UW
+Xx
+Yb
+Yb
+Yb
+Yw
+dN
+dN
+dN
+dN
+dN
+dN
+dN
+xS
+xS
+xS
+xS
+Vx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+nN
+nN
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(104,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+sD
+sD
+Hj
+Yb
+Yb
+Yb
+Yb
+WS
+dN
+dN
+dN
+dN
+dN
+dN
+dN
+QM
+dN
+ft
+wT
+Vx
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+nN
+nN
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(105,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+sD
+MD
+Hj
+CP
+Yb
+Yb
+Yb
+Yw
+dN
+dN
+dN
+dN
+dN
+dN
+dN
+xS
+xS
+xS
+xS
+Vx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+nN
+nN
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+pY
+pY
+pY
+pY
+pY
+pY
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(106,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+sD
+sD
+Hj
+lS
+Yb
+aS
+Vz
+Yw
+yN
+UR
+AT
+Gz
+Kf
+UR
+vq
+xS
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+nN
+nN
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+pY
+DG
+Uk
+KI
+nd
+pY
+pY
+pY
+Nt
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(107,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xb
+Xb
+Xb
+Xb
+Yw
+Yw
+Yw
+Yw
+Yw
+Yw
+Yw
+xS
+xS
+Ta
+Ta
+Ta
+xS
+xS
+xS
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+nN
+nN
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+pY
+DG
+Uk
+sF
+kL
+kL
+kL
+PD
+FF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(108,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+az
+az
+az
+az
+az
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+nN
+nN
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+pY
+pY
+kL
+kL
+kL
+kL
+hd
+pY
+FF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(109,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xb
+Xp
+Xp
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+nN
+nN
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+pY
+FQ
+kL
+kL
+Ax
+kL
+pY
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(110,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Mx
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+XF
+nN
+nN
+XF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+ai
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+pY
+kL
+kL
+UY
+dX
+Aa
+pY
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(111,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+nN
+nN
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+ai
+ai
+ai
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+pY
+jB
+WF
+kL
+lO
+pY
+pY
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(112,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+ai
+ai
+aw
+ai
+ai
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+pY
+pY
+pY
+pY
+pY
+pY
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(113,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Ve
+Ve
+Ve
+Ve
+Ve
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Wr
+Wr
+Xp
+Wr
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+ai
+ai
+ai
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(114,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Ve
+Ve
+vb
+vb
+vb
+Ve
+Ve
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Wr
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+ai
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(115,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Ve
+vb
+vb
+vb
+vb
+vb
+Ve
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(116,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+dK
+vb
+vb
+al
+vb
+vb
+Ve
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(117,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Ve
+vb
+vb
+vb
+vb
+vb
+Ve
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(118,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Ve
+Ve
+vb
+am
+vb
+Ve
+Ve
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(119,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Ve
+Ve
+Ve
+Ve
+Ve
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(120,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(121,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(122,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(123,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xb
+Xb
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(124,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+JF
+JF
+aL
+aL
+aL
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(125,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+aL
+aL
+aL
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(126,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+JF
+JF
+JF
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(127,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+JF
+JF
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(128,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Mx
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(129,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(130,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(131,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+PU
+WH
+WH
+kQ
+WH
+WH
+PU
+Xb
+Xp
+Xb
+Xb
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(132,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+gS
+HJ
+nt
+TL
+pP
+pP
+gS
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xp
+Xp
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(133,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+gS
+ZW
+ZW
+TL
+ZW
+ZW
+gS
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(134,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+gS
+TL
+TL
+TL
+TL
+TL
+gS
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(135,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+gS
+TL
+FL
+rS
+wR
+TL
+gS
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(136,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+gS
+TL
+TL
+gG
+TL
+TL
+gS
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(137,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+gS
+TL
+do
+MB
+sE
+TL
+gS
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(138,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+gS
+TL
+TL
+TL
+TL
+GA
+gS
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(139,1,1) = {"
+hj
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+gS
+gS
+gS
+gS
+gS
+gS
+gS
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+Xb
+hj
+"}
+(140,1,1) = {"
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+hj
+"}
diff --git a/maps/gateway_vr/eggnogtownunderground.dmm b/maps/gateway_vr/eggnogtownunderground.dmm
new file mode 100644
index 0000000000..953d6e60d1
--- /dev/null
+++ b/maps/gateway_vr/eggnogtownunderground.dmm
@@ -0,0 +1,20756 @@
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"ab" = (
+/turf/simulated/mineral/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/underground)
+"ad" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/underground)
+"ae" = (
+/obj/machinery/light/small,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"af" = (
+/obj/machinery/light/small{
+ dir = 8;
+ pixel_x = 0
+ },
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/underground)
+"ag" = (
+/obj/machinery/camera/network/civilian{
+ dir = 8
+ },
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/underground)
+"ah" = (
+/obj/machinery/camera/network/civilian{
+ dir = 5
+ },
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/underground)
+"ai" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/underground)
+"ba" = (
+/obj/structure/table/wooden_reinforced,
+/obj/machinery/chemical_dispenser/bar_alc/full,
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"bX" = (
+/obj/structure/railing,
+/obj/structure/railing{
+ dir = 1
+ },
+/obj/structure/railing{
+ dir = 4
+ },
+/obj/structure/railing{
+ dir = 8
+ },
+/obj/structure/catwalk,
+/obj/structure/bonfire,
+/turf/simulated/floor/plating,
+/area/gateway/eggnogtown/hotspring)
+"cb" = (
+/turf/simulated/floor/bmarble{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"de" = (
+/obj/structure/closet/walllocker{
+ dir = 1;
+ pixel_y = -26
+ },
+/obj/item/clothing/under/swimsuit/fluff/science,
+/obj/random/awayloot,
+/turf/simulated/floor/bmarble{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"dn" = (
+/obj/machinery/turretid/stun{
+ ailock = 1;
+ check_arrest = 0;
+ check_down = 0;
+ check_records = 0;
+ control_area = /area/submap/admin_upload/lo/pow;
+ desc = "A firewall prevents AIs from interacting with this device.";
+ lethal_is_configurable = 0;
+ name = "DEATH RAY CONTROL";
+ req_access = list(777);
+ req_one_access = list(777)
+ },
+/turf/simulated/floor/plating{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"eo" = (
+/obj/structure/bed/chair/sofa/corner,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"eK" = (
+/obj/structure/bed/chair/bay/comfy/black{
+ dir = 8
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"eY" = (
+/obj/structure/table/borosilicate,
+/obj/random/awayloot,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"fV" = (
+/obj/structure/closet/walllocker{
+ dir = 1;
+ pixel_y = -26
+ },
+/obj/item/clothing/under/swimsuit/fluff/engineering,
+/turf/simulated/floor/bmarble{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"gf" = (
+/obj/structure/bed/chair/bay/comfy/black{
+ dir = 1
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"gA" = (
+/turf/unsimulated/beach/water{
+ name = "hot spring";
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/underground)
+"gE" = (
+/obj/structure/bed/chair/bay/comfy/black,
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"gF" = (
+/obj/machinery/porta_turret,
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"gP" = (
+/obj/structure/closet,
+/obj/random/awayloot,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"hz" = (
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/underground)
+"hM" = (
+/obj/structure/curtain,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"iu" = (
+/obj/structure/table/wooden_reinforced,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"iB" = (
+/obj/structure/stairs/spawner/east,
+/turf/simulated/floor/bmarble{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"iV" = (
+/obj/structure/closet/walllocker{
+ pixel_y = 26
+ },
+/obj/item/clothing/under/swimsuit/earth,
+/turf/simulated/floor/bmarble{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"jz" = (
+/obj/random/awayloot,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/underground)
+"kA" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/underground)
+"kF" = (
+/obj/structure/closet/walllocker{
+ dir = 1;
+ pixel_y = -26
+ },
+/obj/item/clothing/under/swimsuit/fluff/medical,
+/turf/simulated/floor/bmarble{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"kK" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/hotsprings)
+"kS" = (
+/obj/structure/bed/chair/sofa/black/right,
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"kV" = (
+/obj/machinery/light/small{
+ dir = 8;
+ pixel_x = 0
+ },
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"lo" = (
+/obj/structure/bed/chair/sofa/right,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"lq" = (
+/turf/unsimulated/mineral{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/underground)
+"lz" = (
+/turf/unsimulated/wall/planetary/normal{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/underground)
+"lX" = (
+/obj/structure/table/woodentable,
+/obj/item/device/flashlight/lamp,
+/obj/item/toy/mecha/honk,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"ma" = (
+/obj/machinery/light/small{
+ dir = 8;
+ pixel_x = 0
+ },
+/turf/unsimulated/beach/water{
+ name = "hot spring";
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"mf" = (
+/obj/structure/simple_door/silver,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/hotspring)
+"mF" = (
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate/c,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/underground)
+"nh" = (
+/obj/structure/bed/chair/sofa/black/corner,
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"nD" = (
+/obj/structure/table/glass,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"ob" = (
+/obj/random/mob/semirandom_mob_spawner/vore/hostile,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/underground)
+"pn" = (
+/obj/structure/bed/chair/bay/comfy/red{
+ dir = 1
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"qb" = (
+/obj/machinery/light/small{
+ dir = 4;
+ pixel_y = 0
+ },
+/turf/simulated/floor/bmarble{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"qr" = (
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/tiled/dark{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"qv" = (
+/obj/structure/musician/piano{
+ dir = 4
+ },
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"rj" = (
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"rZ" = (
+/obj/structure/bed/chair/bay/comfy/red{
+ dir = 4
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"sc" = (
+/obj/random/mob/semirandom_mob_spawner/vore/passive,
+/turf/unsimulated/beach/water{
+ name = "hot spring";
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/underground)
+"sj" = (
+/obj/structure/table/gamblingtable,
+/turf/simulated/floor/reinforced{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"sm" = (
+/obj/structure/bed/chair/bay/chair/padded/red/bignest,
+/obj/machinery/light_switch{
+ pixel_x = -8;
+ pixel_y = 25
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"sq" = (
+/obj/machinery/vending/boozeomat{
+ dir = 4;
+ req_access = list()
+ },
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"su" = (
+/obj/structure/table/bench/padded,
+/turf/simulated/floor/carpet/bcarpet{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"tf" = (
+/turf/simulated/floor/carpet/bcarpet{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"tI" = (
+/turf/simulated/floor/tiled/dark{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"uh" = (
+/turf/simulated/wall/wood,
+/area/gateway/eggnogtown/hotspring)
+"up" = (
+/obj/structure/railing,
+/obj/structure/table/wooden_reinforced,
+/turf/simulated/floor/tiled/dark{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"uG" = (
+/obj/structure/table/bench/wooden,
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"uM" = (
+/obj/structure/bed/chair/sofa/left{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"vg" = (
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"vs" = (
+/obj/machinery/light/small{
+ dir = 4;
+ pixel_y = 0
+ },
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"vv" = (
+/obj/machinery/media/jukebox,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"vJ" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced,
+/obj/structure/window/reinforced{
+ dir = 1
+ },
+/turf/simulated/floor/plating,
+/area/gateway/eggnogtown/hotspring)
+"vR" = (
+/obj/structure/table/steel,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"vW" = (
+/obj/structure/table/borosilicate,
+/obj/item/device/flashlight/lamp/green,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"vZ" = (
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/underground)
+"ws" = (
+/obj/structure/railing,
+/obj/structure/railing{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/dark{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"wu" = (
+/obj/structure/bed/chair/bay/chair/padded/red/smallnest,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"xk" = (
+/obj/structure/bed/chair/comfy/red{
+ dir = 4
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"xA" = (
+/obj/structure/table/steel,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"xH" = (
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"yD" = (
+/turf/simulated/mineral/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"yM" = (
+/obj/structure/table/bench/wooden,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"zz" = (
+/obj/structure/railing,
+/turf/simulated/floor/tiled/dark{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Aw" = (
+/obj/structure/bed/chair/sofa/black/corner{
+ dir = 8
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"AJ" = (
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Ce" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/vibeout)
+"Da" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/underground)
+"Ds" = (
+/obj/structure/closet/walllocker{
+ pixel_y = 26
+ },
+/obj/item/clothing/under/swimsuit/blue,
+/turf/simulated/floor/bmarble{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"DZ" = (
+/obj/structure/railing,
+/obj/structure/table/wooden_reinforced,
+/obj/item/weapon/material/ashtray,
+/obj/item/device/flashlight/lamp/green,
+/turf/simulated/floor/tiled/dark{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Gq" = (
+/obj/structure/bed/chair/bay/comfy/red,
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Gs" = (
+/obj/structure/table/wooden_reinforced,
+/obj/machinery/light_switch{
+ dir = 4;
+ pixel_x = -1;
+ pixel_y = 2
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Gy" = (
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate/b,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/underground)
+"GM" = (
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate/c,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/underground)
+"GR" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/houserhomestead/basement)
+"Hk" = (
+/obj/item/weapon/bedsheet/mimedouble,
+/obj/structure/bed/double/padded,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"HV" = (
+/obj/structure/fans/tiny,
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/eggnogtown/hotspring)
+"Jv" = (
+/obj/structure/table/wooden_reinforced,
+/obj/item/weapon/material/ashtray,
+/obj/item/device/flashlight/lamp/green,
+/obj/item/toy/plushie/orange_fox,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Jz" = (
+/obj/machinery/vending/boozeomat{
+ req_access = list()
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Ki" = (
+/obj/structure/railing{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/dark{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Kk" = (
+/turf/simulated/wall/iron,
+/area/gateway/eggnogtown/hotsprings)
+"KY" = (
+/obj/structure/bed/chair/sofa/black{
+ dir = 8
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Mb" = (
+/obj/structure/table/steel,
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"Oa" = (
+/obj/structure/bed/chair/bay/comfy/black{
+ dir = 4
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Ot" = (
+/obj/structure/bed/chair/bay/comfy/red{
+ dir = 8
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Ou" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced,
+/obj/structure/window/reinforced{
+ dir = 1
+ },
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/turf/simulated/floor/plating,
+/area/gateway/eggnogtown/hotspring)
+"Oy" = (
+/obj/structure/bed/chair/comfy/red{
+ dir = 4
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"OL" = (
+/obj/structure/bed/chair/comfy/red{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"Pb" = (
+/obj/item/weapon/bedsheet/piratedouble,
+/obj/structure/bed/double/padded,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Pc" = (
+/obj/structure/table/bench/steel,
+/turf/simulated/floor/bmarble{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"Qe" = (
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate/b,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/underground)
+"Rv" = (
+/obj/structure/railing,
+/obj/structure/bonfire,
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Tx" = (
+/obj/structure/table/wooden_reinforced,
+/obj/item/device/flashlight/lamp/green,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"TN" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced,
+/obj/structure/window/reinforced{
+ dir = 1
+ },
+/obj/structure/window/reinforced{
+ dir = 4
+ },
+/turf/simulated/floor/plating,
+/area/gateway/eggnogtown/hotspring)
+"TU" = (
+/obj/machinery/light/flamp,
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"UJ" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"UX" = (
+/obj/structure/table/bench/padded,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Va" = (
+/obj/structure/table/steel,
+/obj/machinery/chemical_dispenser/bar_soft/full{
+ dir = 8
+ },
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"We" = (
+/obj/structure/table/woodentable,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"Wr" = (
+/obj/structure/table/borosilicate,
+/obj/item/device/flashlight/lamp/green,
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"Xm" = (
+/obj/machinery/light_switch{
+ dir = 4;
+ on = 0;
+ pixel_x = -25
+ },
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"Xs" = (
+/obj/structure/table/steel,
+/obj/fiftyspawner/log,
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"XC" = (
+/obj/structure/bed/chair/sofa{
+ dir = 8
+ },
+/turf/simulated/floor/wood{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/hotspring)
+"XJ" = (
+/obj/structure/bed/chair/wood{
+ dir = 8
+ },
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"XV" = (
+/obj/structure/table/steel,
+/obj/machinery/chemical_dispenser/bar_alc/full{
+ dir = 8
+ },
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"YF" = (
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"YH" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/obj/structure/table/steel,
+/obj/machinery/chemical_dispenser/bar_coffee/full{
+ dir = 8
+ },
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"YK" = (
+/obj/structure/table/steel,
+/obj/item/weapon/storage/box/glasses/mug,
+/obj/random/drinkbottle,
+/obj/random/drinkbottle,
+/obj/random/drinkbottle,
+/obj/random/cigarettes,
+/obj/item/weapon/book/manual/barman_recipes,
+/turf/simulated/floor/tiled{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/houserhomestead/basement)
+"YM" = (
+/obj/structure/curtain/black,
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+"YO" = (
+/obj/structure/closet/walllocker{
+ pixel_y = 26
+ },
+/obj/item/clothing/under/swimsuit/black,
+/obj/random/awayloot,
+/turf/simulated/floor/bmarble{
+ temperature = 303.15
+ },
+/area/gateway/eggnogtown/hotsprings)
+"ZR" = (
+/obj/structure/bed/chair/sofa/black/left{
+ dir = 1
+ },
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/eggnogtown/vibeout)
+
+(1,1,1) = {"
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lz
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+"}
+(2,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+kA
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(3,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+Da
+Da
+kV
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+kA
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+ab
+ab
+kA
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(4,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ma
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+Da
+Da
+kV
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(5,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+Da
+Da
+gA
+gA
+gA
+Da
+Da
+ab
+ab
+gA
+gA
+gA
+gA
+ab
+ab
+ab
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(6,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+ab
+gA
+gA
+sc
+gA
+gA
+ab
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(7,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+ab
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(8,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(9,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+ab
+Da
+gA
+gA
+gA
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(10,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+Da
+Da
+Da
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(11,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+cb
+cb
+cb
+cb
+cb
+cb
+cb
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(12,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+cb
+cb
+cb
+cb
+cb
+cb
+cb
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(13,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+Kk
+iV
+cb
+cb
+cb
+cb
+cb
+de
+Kk
+ab
+ab
+Da
+Da
+gA
+gA
+gA
+gA
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(14,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+gA
+Da
+Da
+Da
+ab
+Kk
+Ds
+cb
+cb
+cb
+cb
+cb
+kF
+Kk
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(15,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+vs
+Da
+ab
+ab
+ab
+Kk
+YO
+cb
+cb
+qb
+cb
+cb
+fV
+Kk
+ab
+ab
+ab
+ab
+Da
+vs
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(16,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+kA
+ab
+ab
+ab
+ab
+Kk
+Pc
+cb
+cb
+Kk
+cb
+cb
+Pc
+Kk
+ab
+ab
+ab
+ab
+ab
+kA
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(17,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+GM
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Kk
+Pc
+cb
+iB
+Kk
+iB
+cb
+Pc
+Kk
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(18,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+Kk
+Pc
+cb
+Kk
+Kk
+Kk
+cb
+Pc
+Kk
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(19,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+Kk
+cb
+cb
+Kk
+Kk
+Kk
+cb
+cb
+Kk
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(20,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+Kk
+Kk
+kK
+Kk
+Kk
+Kk
+Kk
+Kk
+Kk
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(21,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(22,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(23,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(24,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(25,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+GM
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(26,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(27,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+GM
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+GM
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+kA
+kA
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(28,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+GM
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ad
+af
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(29,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ag
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(30,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+GM
+ad
+ab
+ab
+kA
+kA
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(31,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(32,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+GM
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+GM
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(33,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(34,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+GM
+ad
+ad
+GM
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(35,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(36,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(37,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+GM
+ad
+ad
+ad
+GM
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(38,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+GM
+ad
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(39,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+GM
+GM
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ad
+GM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(40,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(41,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+GM
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ad
+GM
+GM
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(42,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+GM
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(43,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(44,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(45,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+Gy
+ad
+Gy
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(46,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(47,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(48,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(49,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(50,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(51,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(52,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Gy
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+Gy
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(53,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+Gy
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(54,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ad
+Gy
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(55,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(56,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(57,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ab
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(58,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ad
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+Gy
+ab
+ad
+Gy
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(59,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(60,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ad
+ab
+ab
+ad
+ad
+ab
+ab
+ad
+ad
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(61,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(62,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(63,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+hz
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(64,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(65,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(66,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+yD
+yD
+yD
+yD
+yD
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ad
+ad
+hz
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(67,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+yD
+vW
+Hk
+UX
+yD
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(68,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+yD
+eY
+rj
+UX
+yD
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(69,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+yD
+AJ
+AJ
+AJ
+yD
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+Gy
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(70,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+yD
+yD
+yD
+YM
+YM
+YM
+yD
+yD
+yD
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+kA
+kA
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(71,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+yD
+rj
+rj
+rj
+rj
+rj
+rj
+rj
+yD
+yD
+yD
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+uh
+uh
+uh
+uh
+uh
+uh
+uh
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ah
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(72,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+rj
+tf
+tf
+tf
+tf
+tf
+tf
+su
+Gs
+rj
+yD
+yD
+ab
+ab
+ab
+ad
+ad
+ad
+uh
+yM
+yM
+yM
+xH
+gP
+uh
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+Gy
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(73,1,1) = {"
+lq
+yD
+yD
+yD
+yD
+yD
+yD
+yD
+rj
+tf
+TU
+rZ
+AJ
+Oa
+TU
+su
+Tx
+rj
+Jz
+yD
+ab
+ab
+ab
+ad
+ad
+ad
+uh
+yM
+bX
+xH
+xH
+xH
+mf
+Da
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+hz
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ai
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(74,1,1) = {"
+lq
+yD
+Ce
+Ce
+xk
+Jv
+rj
+YM
+rj
+tf
+gE
+sj
+sj
+sj
+pn
+su
+iu
+rj
+ba
+yD
+ab
+ab
+ad
+ad
+ae
+uh
+uh
+uG
+xH
+xH
+Xs
+uh
+uh
+Da
+Da
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+hz
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+kA
+kA
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(75,1,1) = {"
+lq
+yD
+Ce
+Rv
+rj
+tf
+rj
+YM
+rj
+tf
+AJ
+sj
+gf
+sj
+AJ
+su
+iu
+rj
+yD
+yD
+yD
+ab
+ad
+ad
+ad
+HV
+xH
+xH
+xH
+xH
+xA
+Ou
+Da
+Da
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(76,1,1) = {"
+lq
+yD
+Ce
+Ce
+rj
+rj
+rj
+YM
+rj
+tf
+Gq
+sj
+sj
+sj
+gf
+tf
+rj
+rj
+yD
+tI
+zz
+ad
+ad
+ad
+uh
+uh
+sm
+xH
+xH
+xH
+Oy
+vJ
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+ob
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(77,1,1) = {"
+lq
+yD
+yD
+yD
+hM
+hM
+yD
+yD
+rj
+tf
+TU
+eK
+AJ
+Ot
+TU
+tf
+rj
+rj
+tI
+tI
+zz
+ad
+ad
+ad
+uh
+lo
+nD
+xH
+xH
+xH
+We
+vJ
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+Gy
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(78,1,1) = {"
+lq
+ab
+ab
+yD
+Pb
+lX
+yD
+ab
+rj
+tf
+tf
+tf
+tf
+tf
+tf
+tf
+rj
+yD
+tI
+qr
+up
+ad
+ad
+ad
+uh
+eo
+XC
+uM
+xH
+xH
+OL
+TN
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+gA
+gA
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(79,1,1) = {"
+lq
+ab
+ab
+yD
+yD
+yD
+yD
+ab
+yD
+rj
+rj
+rj
+rj
+rj
+vv
+wu
+yD
+yD
+tI
+qr
+DZ
+ad
+ad
+ad
+uh
+uh
+uh
+uh
+uh
+uh
+uh
+uh
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+mF
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+hz
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(80,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+yD
+yD
+yD
+YM
+YM
+YM
+yD
+yD
+yD
+yD
+tI
+qr
+up
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+jz
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(81,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+yD
+AJ
+AJ
+AJ
+yD
+ab
+ab
+yD
+Ki
+Ki
+ws
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Gy
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(82,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+yD
+kS
+Wr
+ZR
+yD
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(83,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+yD
+nh
+KY
+Aw
+yD
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+Da
+Da
+vZ
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(84,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+yD
+yD
+yD
+yD
+yD
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(85,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+Da
+Da
+gA
+gA
+gA
+Da
+ab
+ab
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(86,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+ob
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(87,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Qe
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+hz
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(88,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(89,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(90,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+hz
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(91,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(92,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(93,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+gA
+gA
+gA
+gA
+gA
+gA
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(94,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+gA
+gA
+gA
+gA
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(95,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+gA
+gA
+Da
+ab
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(96,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Da
+Da
+Da
+Da
+Da
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(97,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(98,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(99,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(100,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(101,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(102,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(103,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(104,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(105,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+GR
+GR
+GR
+GR
+GR
+GR
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(106,1,1) = {"
+lz
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+GR
+qv
+vg
+Xm
+dn
+GR
+GR
+GR
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(107,1,1) = {"
+lz
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+GR
+XJ
+vg
+vg
+vg
+vg
+gF
+GR
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(108,1,1) = {"
+lz
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+hz
+ad
+ad
+ad
+ad
+ad
+hz
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+GR
+GR
+UJ
+vg
+vg
+vg
+vg
+GR
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(109,1,1) = {"
+lq
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+GR
+YF
+YF
+YF
+YF
+vg
+GR
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(110,1,1) = {"
+lq
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+GR
+YK
+Mb
+Mb
+vR
+vg
+GR
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(111,1,1) = {"
+lq
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+hz
+ad
+ad
+ad
+hz
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+GR
+vg
+vg
+vg
+vg
+vg
+GR
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(112,1,1) = {"
+lq
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+GR
+sq
+Va
+YH
+XV
+GR
+GR
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(113,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+GR
+GR
+GR
+GR
+GR
+GR
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(114,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(115,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(116,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(117,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(118,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(119,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(120,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(121,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(122,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(123,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(124,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(125,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+hz
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(126,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(127,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(128,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(129,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(130,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(131,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(132,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(133,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(134,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(135,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(136,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(137,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(138,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(139,1,1) = {"
+lq
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+lq
+"}
+(140,1,1) = {"
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lz
+lz
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+lq
+"}
diff --git a/maps/gateway_vr/variable/arynthilake.dm b/maps/gateway_vr/variable/arynthilake.dm
new file mode 100644
index 0000000000..a1f414b3da
--- /dev/null
+++ b/maps/gateway_vr/variable/arynthilake.dm
@@ -0,0 +1,80 @@
+/obj/effect/overmap/visitable/sector/tether_gateway/arynthilake
+ name = "bluespace shimmer"
+ desc = "The shimmering reflection of some sort of bluespace phenomena."
+ scanner_desc = @{"It is difficult to tell just what is beyond this strange shimmering shape. The air beyond seems breathable."}
+ icon = 'icons/obj/overmap_vr.dmi'
+ icon_state = "shimmer"
+ color = "#171DFF" //bloo
+ in_space = 0
+
+/datum/map_template/tether_lateload/gateway/arynthilake/on_map_loaded(z)
+ . = ..()
+ new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, z, world.maxx - 4, world.maxy - 4) // Create the mining Z-level.
+ new /datum/random_map/noise/ore(null, 1, 1, z, 64, 64) // Create the mining ore distribution map.
+
+/datum/map_template/tether_lateload/gateway/arynthilakeunderground/on_map_loaded(z)
+ . = ..()
+ new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, z, world.maxx - 4, world.maxy - 4) // Create the mining Z-level.
+ new /datum/random_map/noise/ore(null, 1, 1, z, 64, 64) // Create the mining ore distribution map.
+
+/datum/map_template/tether_lateload/gateway/arynthilake_b/on_map_loaded(z)
+ . = ..()
+ new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, z, world.maxx - 4, world.maxy - 4) // Create the mining Z-level.
+ new /datum/random_map/noise/ore(null, 1, 1, z, 64, 64) // Create the mining ore distribution map.
+
+/datum/map_template/tether_lateload/gateway/arynthilakeunderground_b/on_map_loaded(z)
+ . = ..()
+ new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, z, world.maxx - 4, world.maxy - 4) // Create the mining Z-level.
+ new /datum/random_map/noise/ore(null, 1, 1, z, 64, 64) // Create the mining ore distribution map.
+
+
+/obj/effect/landmark/map_data/arynthilake
+ height = 2
+
+
+//Areas//
+
+/area/gateway/arynthilake
+ name = "Arynthi Lake"
+ icon = 'icons/turf/areas_vr.dmi'
+ icon_state = "bluwhicir"
+ requires_power = TRUE
+ dynamic_lighting = TRUE
+ flags = RAD_SHIELDED
+ base_turf = /turf/simulated/floor/outdoors/newdirt
+
+/area/gateway/arynthilake/dome
+ name = "Dome Power Grid"
+ icon_state = "cyawhisqu"
+
+/area/gateway/arynthilake/caves
+ name = "caves"
+ icon_state = "purblacir"
+
+/area/gateway/arynthilake/gateway
+ name = "gateway"
+ icon_state = "cyawhisqu"
+
+/area/gateway/arynthilake/caveruins
+ icon_state = "cyawhisqu"
+
+/area/gateway/arynthilake/oldcabin
+ icon_state = "cyawhisqu"
+
+/area/gateway/arynthilake/engine
+ name = "Power Plant"
+ icon_state = "orawhisqu"
+
+/area/gateway/arynthilake/underground
+ icon_state = "purblacir"
+
+/area/gateway/arynthilake/underground/maintenance
+ name = "Underground Maintenance"
+ icon_state = "bluwhisqu"
+
+/area/gateway/arynthilake/underground/intocave
+ icon_state = "redwhisqu"
+
+/obj/item/weapon/paper/gateway/arynthilake
+ name = "Maintenance Tunnel Notes"
+ info = "Please be advised Beyond this point the underground maintenance tunnels are dangerous. Monsters have taken to making their nests in the tunnels. As such we have installed an automatic defense system.
The turrets and supply caches in the tunnels are powered by this facility. Should there be undesired creatures or personnel in the tunnels, the turrets exist to keep them clear.
The turret control system is situated within the local administration building. It is advised that you never enter the tunnels outside of regulatly scheduled maintenance windows, and never without secturity escort.
If you should need to enter the tunnels outside of regularly scheduled maintenance windows, it is advised that you contact the administration building to disable the turrets, and when you are done, contact them again to re-enable them.
Your safety is important to us. Should you end up within the tunnels when dangerous entities are present, it is advised to seek out the supply caches scattered throughout. Survival equipment can be obtained from within.
"
\ No newline at end of file
diff --git a/maps/gateway_vr/variable/arynthilake_a.dmm b/maps/gateway_vr/variable/arynthilake_a.dmm
new file mode 100644
index 0000000000..03fa9a9ce3
--- /dev/null
+++ b/maps/gateway_vr/variable/arynthilake_a.dmm
@@ -0,0 +1,22368 @@
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"aa" = (
+/turf/unsimulated/mineral,
+/area/gateway/arynthilake)
+"ac" = (
+/turf/simulated/mineral/ignore_cavegen,
+/area/gateway/arynthilake)
+"ae" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/gateway/brass{
+ density = 0;
+ dir = 1;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"af" = (
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake)
+"ag" = (
+/turf/simulated/wall/r_wall,
+/area/gateway/arynthilake/engine)
+"aj" = (
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"al" = (
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake)
+"am" = (
+/obj/structure/girder,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"an" = (
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"ap" = (
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caves)
+"ar" = (
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"as" = (
+/turf/simulated/floor/outdoors/grass{
+ outdoors = 0
+ },
+/area/gateway/arynthilake/caves)
+"au" = (
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"av" = (
+/obj/structure/catwalk,
+/obj/structure/railing{
+ dir = 4
+ },
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake)
+"aw" = (
+/obj/structure/catwalk,
+/obj/structure/railing{
+ dir = 1
+ },
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake/caveruins)
+"ax" = (
+/obj/structure/catwalk,
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake/caveruins)
+"az" = (
+/turf/simulated/wall/wood,
+/area/gateway/arynthilake/caveruins)
+"aA" = (
+/obj/machinery/door/airlock,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"aB" = (
+/obj/structure/catwalk,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"aC" = (
+/obj/structure/bed/chair{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"aD" = (
+/obj/structure/table/woodentable,
+/obj/item/weapon/lampshade,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"aG" = (
+/turf/simulated/floor/beach/sand/desert,
+/area/gateway/arynthilake/caves)
+"aH" = (
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake/caves)
+"aI" = (
+/obj/structure/lattice,
+/turf/simulated/open,
+/area/gateway/arynthilake/caves)
+"aJ" = (
+/obj/item/stack/material/steel,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"aK" = (
+/obj/item/stack/material/steel,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake)
+"aL" = (
+/obj/structure/barricade,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"aM" = (
+/turf/simulated/wall/sifwood,
+/area/gateway/arynthilake/oldcabin)
+"aN" = (
+/obj/structure/bed/pod,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/wood/sif,
+/area/gateway/arynthilake/oldcabin)
+"aO" = (
+/turf/simulated/floor/wood/sif,
+/area/gateway/arynthilake/oldcabin)
+"aP" = (
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/oldcabin)
+"aQ" = (
+/obj/structure/barricade,
+/turf/simulated/floor,
+/area/gateway/arynthilake/oldcabin)
+"aR" = (
+/turf/simulated/floor/wood/sif/broken,
+/area/gateway/arynthilake/oldcabin)
+"aS" = (
+/turf/simulated/floor,
+/area/gateway/arynthilake/oldcabin)
+"aT" = (
+/obj/item/stack/material/steel,
+/turf/simulated/floor/wood/sif,
+/area/gateway/arynthilake/oldcabin)
+"aU" = (
+/obj/structure/bed/pod,
+/turf/simulated/floor/wood/sif/broken,
+/area/gateway/arynthilake/oldcabin)
+"aV" = (
+/obj/item/weapon/lampshade,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"aX" = (
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"aY" = (
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"aZ" = (
+/obj/machinery/door/airlock/sandstone{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/dome)
+"ba" = (
+/turf/simulated/wall,
+/area/gateway/arynthilake/dome)
+"bb" = (
+/obj/structure/noticeboard,
+/turf/simulated/wall,
+/area/gateway/arynthilake)
+"bc" = (
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"bd" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor,
+/area/gateway/arynthilake/engine)
+"be" = (
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"bf" = (
+/turf/simulated/floor/tiled/eris/white,
+/area/gateway/arynthilake/dome)
+"bg" = (
+/turf/simulated/floor/tiled/eris/white/techfloor,
+/area/gateway/arynthilake/dome)
+"bh" = (
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"bi" = (
+/obj/structure/table/steel,
+/obj/item/roller,
+/turf/simulated/floor/tiled{
+ edge_blending_priority = 1;
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"bj" = (
+/turf/simulated/floor/tiled{
+ edge_blending_priority = 1;
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"bk" = (
+/obj/structure/table/steel,
+/obj/random/awayloot,
+/turf/simulated/floor/plating,
+/area/gateway/arynthilake)
+"bl" = (
+/obj/structure/table/steel,
+/obj/random/firstaid,
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"bm" = (
+/obj/structure/table/steel,
+/turf/simulated/floor/tiled{
+ edge_blending_priority = 1;
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"bn" = (
+/obj/structure/table/steel,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"bo" = (
+/obj/structure/table,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"bp" = (
+/obj/machinery/gateway/brass{
+ density = 0;
+ dir = 5;
+ pixel_y = 6;
+ plane = -24
+ },
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"bq" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"br" = (
+/obj/machinery/gateway/centeraway/mcguffin{
+ pixel_y = 6;
+ plane = -24
+ },
+/obj/effect/map_effect/perma_light/gateway,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"bs" = (
+/obj/structure/table/woodentable,
+/obj/item/stack/material/wood{
+ amount = 50
+ },
+/obj/random/awayloot,
+/obj/random/awayloot,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"bv" = (
+/obj/machinery/gateway/brass{
+ dir = 4;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"bx" = (
+/obj/machinery/gateway/brass{
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"by" = (
+/obj/structure/closet/coffin,
+/obj/item/stack/material/steel{
+ amount = 50
+ },
+/obj/random/awayloot,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"bz" = (
+/obj/structure/table,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"bB" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"bC" = (
+/obj/machinery/gateway/brass{
+ dir = 6;
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"bD" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"bE" = (
+/obj/effect/floor_decal/techfloor,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"bF" = (
+/obj/structure/bed/chair{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"bG" = (
+/obj/structure/catwalk,
+/obj/machinery/light/flamp/noshade,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"bH" = (
+/turf/simulated/wall/shull,
+/area/gateway/arynthilake/gateway)
+"bI" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 10
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"bJ" = (
+/obj/item/stack/material/steel{
+ amount = 50
+ },
+/turf/simulated/mineral/floor/ignore_cavegen{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"bL" = (
+/obj/machinery/door/airlock/glass_centcom{
+ hackProof = 1;
+ locked = 1
+ },
+/turf/simulated/floor/plating,
+/area/gateway/arynthilake/gateway)
+"bM" = (
+/obj/structure/bed,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"bN" = (
+/obj/structure/filingcabinet,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"bP" = (
+/obj/machinery/door/airlock,
+/obj/structure/catwalk,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"bQ" = (
+/obj/structure/catwalk,
+/obj/structure/railing,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"bR" = (
+/obj/structure/railing{
+ dir = 8
+ },
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"bS" = (
+/obj/structure/catwalk,
+/obj/structure/railing{
+ dir = 4
+ },
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"bT" = (
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 5
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 6
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"bV" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/outdoors/sidewalk/side,
+/area/gateway/arynthilake/dome)
+"bW" = (
+/obj/structure/table/sifwooden_reinforced,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/arynthilake/dome)
+"cl" = (
+/obj/structure/cable/green{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 1;
+ locked = 0;
+ operating = 0;
+ pixel_y = 22;
+ req_access = list();
+ start_charge = 0
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"cm" = (
+/obj/random/awayloot,
+/turf/simulated/floor/wood/sif,
+/area/gateway/arynthilake/oldcabin)
+"cx" = (
+/obj/structure/curtain/open/shower,
+/obj/machinery/shower{
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"cG" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/manual/mass_spectrometry,
+/obj/item/weapon/book/manual/materials_chemistry_analysis,
+/obj/item/weapon/book/manual/medical_cloning,
+/obj/item/weapon/book/manual/medical_diagnostics_manual,
+/obj/item/weapon/book/manual/nuclear,
+/obj/item/weapon/book/manual/research_and_development,
+/obj/item/weapon/book/manual/resleeving,
+/obj/item/weapon/book/manual/ripley_build_and_repair,
+/obj/item/weapon/book/manual/robotics_cyborgs,
+/obj/item/weapon/book/manual/rust_engine,
+/obj/item/weapon/book/manual/security_space_law,
+/obj/item/weapon/book/manual/standard_operating_procedure,
+/obj/item/weapon/book/manual/stasis,
+/obj/item/weapon/book/manual/supermatter_engine,
+/obj/item/weapon/book/manual/tesla_engine,
+/turf/simulated/floor/wood{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"dg" = (
+/obj/structure/table/wooden_reinforced,
+/obj/item/device/flashlight/lamp,
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"dB" = (
+/obj/structure/table/marble,
+/obj/machinery/door/blast/gate/thin{
+ dir = 2;
+ id = "grasslandkitchen";
+ layer = 3.3
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"dI" = (
+/obj/structure/table/darkglass,
+/obj/item/weapon/paper_bin{
+ pixel_x = -3;
+ pixel_y = 9
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"dL" = (
+/obj/structure/toilet{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/dome)
+"ea" = (
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/obj/structure/cable/green{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"ej" = (
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"ek" = (
+/obj/random/mob/semirandom_mob_spawner/monster/b,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"eo" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/custom_library/religious/storyoflordganesha,
+/obj/item/weapon/book/custom_library/religious/sungoddessofkorea,
+/obj/item/weapon/book/custom_library/religious/wayofbleedingswan,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"er" = (
+/obj/machinery/gateway/brass{
+ dir = 8;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"ev" = (
+/obj/structure/filingcabinet/filingcabinet,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"ex" = (
+/obj/machinery/light,
+/obj/item/device/flash,
+/obj/item/weapon/stamp,
+/obj/structure/closet/walllocker{
+ dir = 4;
+ pixel_x = 27
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"eV" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"eW" = (
+/obj/item/device/analyzer/plant_analyzer,
+/obj/item/weapon/material/minihoe,
+/obj/item/weapon/material/minihoe,
+/obj/structure/closet,
+/obj/item/weapon/reagent_containers/glass/bucket,
+/obj/item/weapon/reagent_containers/glass/bucket,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"eZ" = (
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 10
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 9
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"fo" = (
+/turf/simulated/floor/outdoors/sidewalk/side,
+/area/gateway/arynthilake/dome)
+"fu" = (
+/obj/structure/table/darkglass,
+/obj/item/weapon/pen,
+/obj/item/weapon/folder/red,
+/obj/item/weapon/paper_bin{
+ pixel_x = -3;
+ pixel_y = 9
+ },
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"fE" = (
+/obj/structure/table/rack,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"fJ" = (
+/obj/random/mob/semirandom_mob_spawner/animal/f,
+/turf/simulated/floor/outdoors/grass/forest{
+ outdoors = 0
+ },
+/area/gateway/arynthilake)
+"fO" = (
+/obj/structure/table/standard{
+ color = "#b8e4ff"
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"fV" = (
+/obj/effect/landmark/map_data/arynthilake,
+/turf/unsimulated/mineral,
+/area/gateway/arynthilake)
+"fY" = (
+/obj/structure/mopbucket,
+/obj/item/weapon/mop,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"gu" = (
+/turf/simulated/floor/outdoors/newdirt{
+ outdoors = 0
+ },
+/area/gateway/arynthilake/caves)
+"gE" = (
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"hm" = (
+/obj/structure/bed/pod,
+/obj/structure/curtain/black,
+/obj/random/awayloot,
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/dome)
+"hs" = (
+/obj/random/mob/semirandom_mob_spawner/animal/b,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"hw" = (
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/dome)
+"hE" = (
+/obj/structure/closet,
+/obj/item/clothing/under/color/darkred,
+/obj/item/clothing/under/color/lightred,
+/obj/item/clothing/under/croptop/red,
+/obj/item/clothing/under/cuttop/red,
+/obj/item/clothing/under/dress/darkred,
+/obj/item/clothing/under/dress/cropdress,
+/obj/item/clothing/under/dress/blacktango/alt,
+/obj/item/clothing/under/dress/blacktango,
+/obj/item/clothing/under/dress/festivedress,
+/obj/item/clothing/under/dress/dress_saloon,
+/obj/item/clothing/under/dress/lilacdress,
+/obj/item/clothing/under/dress/littleblackdress,
+/obj/item/clothing/under/dress/qipao/red,
+/obj/item/clothing/under/dress/red_swept_dress,
+/obj/item/clothing/under/dress/redeveninggown,
+/obj/item/clothing/under/dress/sailordress,
+/obj/item/clothing/under/shorts/red,
+/obj/item/clothing/under/skirt/red,
+/obj/item/clothing/under/suit_jacket/burgundy,
+/obj/item/clothing/under/wedding/bride_red,
+/obj/item/clothing/gloves/red,
+/obj/item/clothing/gloves/boxing,
+/obj/item/clothing/gloves/black,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"hV" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake)
+"ii" = (
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 1
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 8
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"il" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/manual/security_space_law,
+/obj/item/weapon/book/bundle/custom_library/nonfiction/viabilityofcorporategov,
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"iI" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/dome)
+"iN" = (
+/obj/structure/bed/chair/comfy/brown{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"iW" = (
+/obj/machinery/light,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"iX" = (
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/structure/table/rack/steel,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"jm" = (
+/turf/simulated/floor/outdoors/sidewalk/side,
+/area/gateway/arynthilake)
+"jz" = (
+/obj/structure/table/rack,
+/obj/machinery/light/small,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"jG" = (
+/turf/simulated/floor/carpet{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"jI" = (
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"jK" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tech_supply,
+/obj/random/maintenance/engineering,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"jX" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/structure/table/wooden_reinforced,
+/obj/item/device/flashlight/lamp/green,
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"jZ" = (
+/obj/structure/table/wooden_reinforced,
+/obj/item/weapon/reagent_containers/glass/bucket,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"kf" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"ki" = (
+/obj/structure/table/wooden_reinforced,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"kk" = (
+/obj/structure/bed/double/padded,
+/obj/item/weapon/bedsheet/bluedouble,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"kl" = (
+/obj/structure/table/wooden_reinforced,
+/obj/item/weapon/storage/box/cups,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"ko" = (
+/obj/structure/curtain/open/shower,
+/obj/machinery/shower{
+ dir = 1
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"kt" = (
+/obj/structure/flora/pottedplant/minitree,
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"kK" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/reference/recyclingprocedures,
+/obj/item/weapon/book/custom_library/reference/securityguidelines,
+/obj/item/weapon/book/custom_library/reference/spacesurvivalguidedespressurization,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"kX" = (
+/obj/structure/cable/green,
+/obj/machinery/power/apc/alarms_hidden{
+ locked = 0;
+ operating = 0;
+ pixel_y = -22;
+ req_access = list();
+ start_charge = 0
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/underground/maintenance)
+"la" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"lh" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/obj/structure/bed/chair/comfy/blue,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"ll" = (
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 5
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 6
+ },
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"lr" = (
+/obj/structure/filingcabinet/chestdrawer,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"lt" = (
+/obj/structure/table/standard{
+ color = "#b8e4ff"
+ },
+/obj/item/weapon/folder/blue,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"lI" = (
+/turf/simulated/floor/carpet/bcarpet{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"lO" = (
+/obj/structure/table/darkglass,
+/obj/item/weapon/pen,
+/obj/item/weapon/folder/blue,
+/obj/item/weapon/paper_bin{
+ pixel_x = -3;
+ pixel_y = 9
+ },
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"lX" = (
+/obj/random/mob/semirandom_mob_spawner/monster/b,
+/turf/simulated/floor/tiled/eris{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/engine)
+"mm" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 8
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"mn" = (
+/obj/random/mob/semirandom_mob_spawner/fish,
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"mo" = (
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"mp" = (
+/obj/machinery/button/remote/blast_door{
+ id = "grasslandkitchen";
+ name = "Kitchen shutters";
+ pixel_x = 26;
+ pixel_y = 28
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"mt" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/white,
+/area/gateway/arynthilake/dome)
+"mA" = (
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/dome)
+"mC" = (
+/obj/structure/flora/tree/sif,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"mL" = (
+/obj/structure/table/darkglass,
+/obj/item/device/flashlight/lamp/green,
+/obj/random/snack,
+/obj/random/snack,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"mN" = (
+/obj/machinery/seed_storage/garden,
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"mP" = (
+/obj/structure/bed/chair/sofa/brown,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"mT" = (
+/obj/random/mob/semirandom_mob_spawner/fish/b,
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"nc" = (
+/obj/random/awayloot,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"np" = (
+/obj/random/mob/semirandom_mob_spawner/animal/e,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"nr" = (
+/obj/effect/fake_sun,
+/turf/simulated/mineral/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"nx" = (
+/obj/machinery/door/airlock/engineering,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/engine)
+"nB" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/engine)
+"nI" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/random/awayloot,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"oi" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"ot" = (
+/obj/structure/table/rack/steel,
+/obj/item/clothing/shoes/laceup,
+/obj/item/clothing/shoes/laceup/brown,
+/obj/item/clothing/shoes/laceup/grey,
+/obj/item/clothing/shoes/boots/jackboots/toeless,
+/obj/item/clothing/shoes/boots/winter,
+/obj/item/clothing/shoes/boots/winter/security,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"ov" = (
+/obj/structure/closet/walllocker{
+ dir = 8;
+ pixel_x = -27
+ },
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/medical,
+/obj/random/maintenance/medical,
+/obj/random/maintenance/medical,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"oy" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/beach/sand/desert,
+/area/gateway/arynthilake/caves)
+"oO" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/outdoors/newdirt{
+ outdoors = 0
+ },
+/area/gateway/arynthilake/caves)
+"oX" = (
+/obj/machinery/light,
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 4
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10,
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"oZ" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/maintenance/engineering,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"pa" = (
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/floor/tiled/eris/white/brown_platform{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"pb" = (
+/turf/simulated/floor/tiled/eris/white/brown_platform{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"pe" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/awayloot,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"pi" = (
+/obj/random/mob/semirandom_mob_spawner/fish/c,
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"ps" = (
+/obj/fiftyspawner/log,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake)
+"pu" = (
+/obj/machinery/appliance/cooker/fryer,
+/turf/simulated/floor/tiled/eris/cafe{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"pD" = (
+/obj/structure/flora/tree/jungle,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"pV" = (
+/obj/machinery/vending/dinnerware{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/cafe{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"pW" = (
+/obj/structure/cable/green{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/machinery/light,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"qm" = (
+/obj/random/mob/semirandom_mob_spawner/animal/b,
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake)
+"qo" = (
+/obj/random/mob/semirandom_mob_spawner/fish/d,
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"qz" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 4
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"qF" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"qK" = (
+/obj/structure/table/steel_reinforced,
+/obj/machinery/microwave,
+/turf/simulated/floor/tiled/eris/cafe{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"qM" = (
+/turf/simulated/wall/r_wall,
+/area/gateway/arynthilake/dome)
+"qW" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/reference/ThermodynamicReactionsandResearch,
+/obj/item/weapon/book/bundle/custom_library/reference/fbpandprostheticmaintenance,
+/obj/item/weapon/book/custom_library/reference/fistfulofd6splayersguide,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"rm" = (
+/turf/simulated/floor/carpet/sblucarpet{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"rs" = (
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1
+ },
+/area/gateway/arynthilake/gateway)
+"rz" = (
+/obj/structure/closet,
+/obj/item/clothing/under/schoolgirl,
+/obj/item/clothing/under/color/blackf,
+/obj/item/clothing/under/color/blackjumpskirt,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"rA" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/dome)
+"rP" = (
+/obj/random/mob/semirandom_mob_spawner/animal,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake)
+"rU" = (
+/obj/structure/closet/secure_closet/freezer/fridge,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/spacespice,
+/obj/item/weapon/reagent_containers/food/condiment/spacespice,
+/obj/item/weapon/reagent_containers/food/condiment/spacespice,
+/obj/item/weapon/reagent_containers/food/condiment/yeast,
+/obj/item/weapon/reagent_containers/food/condiment/yeast,
+/obj/item/weapon/reagent_containers/food/condiment/yeast,
+/obj/item/weapon/storage/fancy/egg_box,
+/obj/item/weapon/storage/fancy/egg_box,
+/obj/random/awayloot,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/cafe{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"se" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/maintenance/engineering,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"sl" = (
+/obj/effect/overmap/visitable/sector/tether_gateway/arynthilake,
+/turf/simulated/mineral/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"sA" = (
+/obj/structure/table/rack/steel,
+/obj/item/clothing/shoes/flats/blue,
+/obj/item/clothing/shoes/flats,
+/obj/item/clothing/shoes/flats/brown,
+/obj/item/clothing/shoes/flats/white,
+/obj/item/clothing/shoes/blue,
+/obj/item/clothing/shoes/boots/jackboots,
+/obj/item/clothing/shoes/boots/winter/medical,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"sD" = (
+/obj/structure/bed/chair/comfy/brown{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"sJ" = (
+/obj/structure/table/standard{
+ color = "#ffb8b8"
+ },
+/obj/item/weapon/paper_bin{
+ pixel_x = -3;
+ pixel_y = 9
+ },
+/obj/item/weapon/pen,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"sO" = (
+/obj/effect/floor_decal/industrial/warning/dust,
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"sQ" = (
+/obj/structure/flora/tree/bigtree,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"to" = (
+/obj/structure/table/sifwooden_reinforced,
+/obj/item/weapon/paper_bin{
+ pixel_x = -3;
+ pixel_y = 9
+ },
+/obj/item/weapon/pen,
+/obj/random/awayloot,
+/turf/simulated/floor/carpet{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"tv" = (
+/turf/simulated/floor/outdoors/sidewalk,
+/area/gateway/arynthilake/dome)
+"tM" = (
+/obj/machinery/portable_atmospherics/hydroponics,
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"tN" = (
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/caves)
+"tU" = (
+/obj/structure/table/steel_reinforced,
+/obj/machinery/reagentgrinder,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"tX" = (
+/obj/machinery/shower{
+ pixel_y = 6
+ },
+/obj/structure/curtain/open/shower,
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"ug" = (
+/obj/machinery/telecomms/relay/preset/tether,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"uo" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 4
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10,
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"uV" = (
+/turf/simulated/floor/outdoors/sidewalk/slab,
+/area/gateway/arynthilake/dome)
+"vt" = (
+/obj/structure/table/standard{
+ color = "#b8e4ff"
+ },
+/obj/item/weapon/paper_bin{
+ pixel_x = -3;
+ pixel_y = 9
+ },
+/obj/item/weapon/pen,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"vy" = (
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"vz" = (
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 5
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 6
+ },
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"vG" = (
+/obj/structure/closet/walllocker_double{
+ pixel_y = 26
+ },
+/obj/item/device/flashlight/lantern,
+/obj/item/device/flashlight/lantern,
+/obj/item/device/flashlight/lantern,
+/obj/item/device/flashlight/lantern,
+/obj/item/device/flashlight/lantern,
+/obj/item/device/multitool,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool/power,
+/obj/random/awayloot,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"wa" = (
+/turf/simulated/open,
+/area/gateway/arynthilake/engine)
+"wb" = (
+/obj/structure/bed/double/padded,
+/obj/item/weapon/bedsheet/reddouble,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"wd" = (
+/obj/random/mob/semirandom_mob_spawner/animal/e,
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake)
+"wl" = (
+/obj/structure/sink{
+ dir = 4;
+ pixel_x = 12;
+ pixel_y = 4
+ },
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"wm" = (
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"wq" = (
+/obj/random/mob/semirandom_mob_spawner/animal/c,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake)
+"wA" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 1
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"wI" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/structure/reagent_dispensers/water_cooler/full{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"xd" = (
+/obj/structure/table/wooden_reinforced,
+/obj/random/awayloot,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"xr" = (
+/obj/structure/bed/chair{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"xu" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/fiction/manfromsnowyriver,
+/obj/item/weapon/book/bundle/custom_library/fiction/metalglen,
+/obj/item/weapon/book/bundle/custom_library/fiction/poemsforarainyday,
+/obj/item/weapon/book/bundle/custom_library/fiction/raissue142,
+/obj/item/weapon/book/bundle/custom_library/fiction/raissue147,
+/obj/item/weapon/book/bundle/custom_library/fiction/silence,
+/obj/item/weapon/book/bundle/custom_library/fiction/taleoftherainbowcat,
+/obj/item/weapon/book/custom_library/fiction/starsandsometimesfallingones,
+/obj/item/weapon/book/custom_library/fiction/truelovehathmyheart,
+/obj/item/weapon/book/custom_library/fiction/woodysgotwood,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"xv" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/tiled/eris/white/techfloor,
+/area/gateway/arynthilake/dome)
+"yb" = (
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"ye" = (
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake/dome)
+"yf" = (
+/turf/simulated/floor/wood{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"yl" = (
+/obj/structure/bed/chair/sofa/brown/right{
+ dir = 4
+ },
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"yE" = (
+/obj/structure/table/wooden_reinforced,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"yY" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor,
+/area/gateway/arynthilake/dome)
+"zP" = (
+/obj/machinery/shower{
+ dir = 1
+ },
+/obj/structure/curtain/open/shower,
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"zQ" = (
+/obj/structure/table/fancyblack,
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"zW" = (
+/obj/structure/toilet{
+ dir = 8
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"An" = (
+/obj/structure/table/rack,
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"At" = (
+/obj/structure/table/fancyblack,
+/obj/item/weapon/flame/candle/candelabra,
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"Ax" = (
+/obj/structure/bed/chair/wood,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"AC" = (
+/obj/structure/table/wooden_reinforced,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"AJ" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/obj/structure/bed/chair/comfy/red,
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"AM" = (
+/obj/machinery/light,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"AN" = (
+/obj/machinery/portable_atmospherics/hydroponics,
+/turf/simulated/floor/tiled/eris/techmaint_cargo{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"AQ" = (
+/obj/structure/bed/chair/wood/wings{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"Bg" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/fiction/ghostship,
+/obj/item/weapon/book/manual/security_space_law,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"Bv" = (
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 9
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 10
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"BH" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 9
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"BM" = (
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/arynthilake/dome)
+"BX" = (
+/obj/structure/bed/chair/sofa/brown/corner,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"Cl" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"Cp" = (
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door";
+ req_one_access = list(10)
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/engine)
+"CQ" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"Dn" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/dome)
+"Do" = (
+/obj/structure/bed/chair/office/light{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"DL" = (
+/turf/simulated/floor/outdoors/grass/forest{
+ outdoors = 0
+ },
+/area/gateway/arynthilake)
+"DP" = (
+/obj/machinery/appliance/cooker/grill,
+/turf/simulated/floor/tiled/eris/cafe{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"DR" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/white,
+/area/gateway/arynthilake/dome)
+"Eb" = (
+/obj/structure/table/wooden_reinforced,
+/obj/random/snack,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"Eg" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"Ej" = (
+/obj/structure/cable/green{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/obj/structure/cable/green{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/obj/structure/cable/green{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Er" = (
+/obj/structure/bed/chair/wood/wings{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"Eu" = (
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"EB" = (
+/obj/structure/table/darkglass,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"EG" = (
+/obj/machinery/gateway/brass{
+ dir = 10;
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"Fk" = (
+/obj/structure/table/sifwooden_reinforced,
+/obj/item/device/flashlight/lamp/green,
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/arynthilake/dome)
+"Fm" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"Fq" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/religious/zoroastrianism,
+/obj/item/weapon/book/custom_library/religious/feastofkubera,
+/turf/simulated/floor/wood{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"Fy" = (
+/obj/structure/bed/chair{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"FC" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"FI" = (
+/obj/structure/table/bench/marble,
+/turf/simulated/floor/tiled/eris/white/techfloor,
+/area/gateway/arynthilake/dome)
+"FR" = (
+/obj/structure/ladder,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"FW" = (
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"FZ" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"Gc" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/book/manual/chef_recipes,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"Gh" = (
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/arynthilake/dome)
+"Gp" = (
+/obj/structure/bonfire,
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake)
+"Gs" = (
+/obj/structure/table/standard{
+ color = "#ffb8b8"
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"GG" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake)
+"GJ" = (
+/turf/simulated/floor/outdoors/sidewalk/side,
+/area/gateway/arynthilake/engine)
+"GK" = (
+/obj/structure/railing,
+/turf/simulated/open,
+/area/gateway/arynthilake/engine)
+"GP" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/dome)
+"Hp" = (
+/obj/structure/bed/chair/sofa/brown/corner{
+ dir = 1
+ },
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"HG" = (
+/obj/machinery/vending/hydronutrients,
+/turf/simulated/floor/tiled/eris/techmaint_cargo{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"HJ" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake)
+"HR" = (
+/obj/structure/bed/chair/sofa/brown/left{
+ dir = 8
+ },
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"Ih" = (
+/obj/structure/railing{
+ dir = 1
+ },
+/turf/simulated/open,
+/area/gateway/arynthilake/engine)
+"Ip" = (
+/turf/simulated/floor/tiled/eris{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/engine)
+"Iq" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"Ir" = (
+/turf/simulated/floor/tiled/eris/techmaint_cargo{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"Iu" = (
+/obj/structure/bed/chair/office/dark{
+ dir = 8
+ },
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Iy" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/gateway/brass{
+ density = 0;
+ dir = 9;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"Iz" = (
+/obj/structure/cable/green{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"IZ" = (
+/obj/structure/table/bench/marble,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/white/techfloor,
+/area/gateway/arynthilake/dome)
+"Jc" = (
+/turf/simulated/floor/water,
+/area/gateway/arynthilake/caves)
+"Jf" = (
+/obj/structure/table/darkglass,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"JA" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"JK" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"JQ" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/manual/anomaly_spectroscopy,
+/obj/item/weapon/book/manual/anomaly_testing,
+/obj/item/weapon/book/manual/atmospipes,
+/obj/item/weapon/book/manual/bar_guide,
+/obj/item/weapon/book/manual/barman_recipes,
+/obj/item/weapon/book/manual/chef_recipes,
+/obj/item/weapon/book/manual/command_guide,
+/obj/item/weapon/book/manual/cook_guide,
+/obj/item/weapon/book/manual/detective,
+/obj/item/weapon/book/manual/engineering_construction,
+/obj/item/weapon/book/manual/engineering_guide,
+/obj/item/weapon/book/manual/engineering_hacking,
+/obj/item/weapon/book/manual/engineering_particle_accelerator,
+/obj/item/weapon/book/manual/engineering_singularity_safety,
+/obj/item/weapon/book/manual/evaguide,
+/obj/item/weapon/book/manual/excavation,
+/obj/item/weapon/book/manual/hydroponics_pod_people,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"Kc" = (
+/obj/random/mob/semirandom_mob_spawner/animal,
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/oldcabin)
+"Ko" = (
+/obj/random/mob/semirandom_mob_spawner/animal,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"Kz" = (
+/obj/machinery/appliance/cooker/oven,
+/turf/simulated/floor/tiled/eris/cafe{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"KE" = (
+/obj/random/mob/semirandom_mob_spawner/animal/b,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake)
+"KK" = (
+/obj/machinery/light,
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/dome)
+"Lo" = (
+/obj/structure/lattice,
+/obj/structure/cable/green{
+ d1 = 32;
+ d2 = 8;
+ icon_state = "32-8"
+ },
+/turf/simulated/open,
+/area/gateway/arynthilake/engine)
+"Lq" = (
+/obj/structure/table/marble,
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/machinery/chemical_dispenser/bar_soft/full{
+ dir = 4
+ },
+/obj/machinery/door/blast/gate/thin{
+ dir = 2;
+ id = "grasslandkitchen";
+ layer = 3.3
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"Lr" = (
+/obj/item/weapon/storage/box/lights/mixed,
+/obj/structure/table/rack/steel,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"LC" = (
+/obj/machinery/door/airlock/sandstone{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/outdoors/sidewalk/side,
+/area/gateway/arynthilake/dome)
+"LH" = (
+/obj/structure/bed/pod,
+/obj/structure/curtain/black,
+/obj/random/awayloot,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"LQ" = (
+/obj/structure/table/sifwooden_reinforced,
+/obj/item/weapon/paper_bin{
+ pixel_x = 5;
+ pixel_y = 9
+ },
+/obj/item/weapon/pen{
+ pixel_x = -4;
+ pixel_y = -2
+ },
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/arynthilake/dome)
+"LR" = (
+/obj/structure/table/sifwooden_reinforced,
+/obj/item/weapon/newspaper,
+/obj/item/weapon/dice/d20,
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/arynthilake/dome)
+"Md" = (
+/obj/structure/bed/pod,
+/obj/structure/curtain/black,
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/dome)
+"Ml" = (
+/obj/machinery/door/airlock/sandstone{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/dome)
+"Mq" = (
+/obj/item/weapon/stool/padded,
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/arynthilake/dome)
+"MD" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/caves)
+"MG" = (
+/obj/structure/table/darkglass,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"MH" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/manual,
+/obj/item/weapon/book/manual/anomaly_spectroscopy,
+/obj/item/weapon/book/manual/anomaly_testing,
+/obj/item/weapon/book/manual/atmospipes,
+/obj/item/weapon/book/manual/bar_guide,
+/obj/item/weapon/book/manual/barman_recipes,
+/obj/item/weapon/book/manual/chef_recipes,
+/obj/item/weapon/book/manual/command_guide,
+/obj/item/weapon/book/manual/cook_guide,
+/obj/item/weapon/book/manual/detective,
+/obj/item/weapon/book/manual/engineering_construction,
+/obj/item/weapon/book/manual/engineering_guide,
+/obj/item/weapon/book/manual/engineering_hacking,
+/obj/item/weapon/book/manual/engineering_particle_accelerator,
+/obj/item/weapon/book/manual/engineering_singularity_safety,
+/obj/item/weapon/book/manual/evaguide,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"MS" = (
+/obj/structure/table/darkglass,
+/obj/machinery/recharger,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"MX" = (
+/obj/structure/cable/green{
+ d2 = 2;
+ icon_state = "0-2"
+ },
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 1;
+ locked = 0;
+ operating = 0;
+ pixel_y = 22;
+ req_access = list();
+ start_charge = 0
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/dome)
+"MY" = (
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"Ng" = (
+/obj/structure/table/darkglass,
+/obj/item/weapon/pen,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Nm" = (
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake/dome)
+"No" = (
+/obj/structure/cable/green{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/obj/machinery/power/apc/alarms_hidden{
+ locked = 0;
+ operating = 0;
+ pixel_y = -22;
+ req_access = list();
+ start_charge = 0
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/gateway)
+"NE" = (
+/obj/structure/flora/tree/bigtree,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake/dome)
+"NG" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 6
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"NI" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"NK" = (
+/obj/random/mob/semirandom_mob_spawner/monster/e,
+/turf/simulated/floor/beach/sand/desert,
+/area/gateway/arynthilake/caves)
+"Oc" = (
+/obj/structure/table/marble,
+/obj/machinery/light{
+ dir = 4
+ },
+/obj/machinery/door/blast/gate/thin{
+ dir = 2;
+ id = "grasslandkitchen";
+ layer = 3.3
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"Oe" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/obj/structure/flora/pottedplant/orientaltree,
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"Og" = (
+/obj/machinery/light,
+/obj/item/device/flash,
+/obj/item/weapon/stamp,
+/obj/structure/closet/walllocker{
+ dir = 8;
+ pixel_x = -27
+ },
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"Oh" = (
+/obj/structure/bed/chair/wood{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"OC" = (
+/turf/simulated/floor/carpet/blucarpet{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"OO" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 10
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"Pf" = (
+/obj/machinery/light,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"Pu" = (
+/obj/machinery/turretid/stun{
+ ailock = 1;
+ check_access = 0;
+ check_all = 1;
+ check_anomalies = 0;
+ check_arrest = 0;
+ check_down = 0;
+ check_records = 0;
+ control_area = /area/gateway/grasslands/underground/maintenance;
+ desc = "A firewall prevents AIs from interacting with this device.";
+ lethal = 1;
+ locked = 0;
+ name = "Underground Maintenance turret control";
+ pixel_y = 30;
+ req_access = list();
+ req_one_access = list()
+ },
+/turf/simulated/floor/tiled/eris/white,
+/area/gateway/arynthilake/dome)
+"PC" = (
+/obj/structure/cable/green{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"PS" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/obj/machinery/portable_atmospherics/hydroponics,
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"PV" = (
+/obj/structure/table/rack/steel,
+/obj/item/clothing/shoes/footwraps,
+/obj/item/clothing/shoes/heels,
+/obj/item/clothing/shoes/hitops/blue,
+/obj/item/clothing/shoes/hitops/red,
+/obj/item/clothing/shoes/black/cuffs/blue,
+/obj/item/clothing/shoes/black/cuffs/red,
+/obj/item/clothing/shoes/boots/cowboy/snakeskin,
+/obj/item/clothing/shoes/boots/workboots/toeless,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"Qc" = (
+/obj/structure/table/glass,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Qh" = (
+/obj/random/mob/semirandom_mob_spawner/animal/f,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"Qj" = (
+/obj/machinery/door/airlock/glass,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/engine)
+"Qr" = (
+/turf/simulated/mineral/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"Qx" = (
+/obj/random/mob/semirandom_mob_spawner/robot/retaliate,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"QH" = (
+/turf/simulated/floor/outdoors/sidewalk,
+/area/gateway/arynthilake)
+"QI" = (
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"QK" = (
+/obj/structure/bed/pod,
+/obj/structure/curtain/black,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"QL" = (
+/turf/simulated/floor/tiled/eris/white{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"QV" = (
+/obj/structure/bed/chair/office/light,
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"Rh" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"Rl" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/food/condiment/enzyme{
+ layer = 5
+ },
+/obj/item/weapon/material/kitchen/rollingpin,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"Rm" = (
+/obj/structure/table/fancyblack,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"RB" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"RL" = (
+/obj/random/mob/semirandom_mob_spawner/animal/d,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"RW" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/nonfiction/viabilityofcorporategov,
+/obj/item/weapon/book/custom_library/nonfiction/freesirisailightbulbs,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"Sb" = (
+/turf/simulated/floor/outdoors/sidewalk/slab,
+/area/gateway/arynthilake)
+"Sg" = (
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"Ss" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 9
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"Sw" = (
+/turf/simulated/floor/lino,
+/area/gateway/arynthilake/dome)
+"SH" = (
+/obj/structure/bookcase,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"SP" = (
+/obj/random/mob/semirandom_mob_spawner/fish/e,
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"SQ" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"ST" = (
+/obj/structure/toilet{
+ dir = 4
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"SZ" = (
+/obj/structure/sink{
+ dir = 4;
+ pixel_x = 13;
+ plane = -34
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"TI" = (
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"TR" = (
+/turf/unsimulated/wall/planetary/normal{
+ desc = "Why would you want to go this way??!?";
+ name = "the end"
+ },
+/area/gateway/arynthilake)
+"TT" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"Um" = (
+/obj/structure/table/darkglass,
+/obj/item/device/flashlight/lamp/green,
+/obj/random/awayloot,
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"Uu" = (
+/obj/structure/bed/chair/wood/wings{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"UJ" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/nonfiction/riseandfallofpersianempire,
+/obj/item/weapon/book/bundle/custom_library/nonfiction/skrelliancastesystem,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"UY" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/fiction/apurrrrfectman,
+/obj/item/weapon/book/bundle/custom_library/fiction/beyondthedoor,
+/obj/item/weapon/book/bundle/custom_library/fiction/chroniclesofmargatavol1,
+/obj/item/weapon/book/bundle/custom_library/fiction/coldmountain,
+/obj/item/weapon/book/bundle/custom_library/fiction/ghostship,
+/obj/item/weapon/book/custom_library/fiction/blacksmithandkinglybloke,
+/obj/item/weapon/book/custom_library/fiction/irishairmanforseesdeath,
+/obj/item/weapon/book/custom_library/fiction/myrock,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"UZ" = (
+/turf/simulated/mineral/ignore_cavegen,
+/area/gateway/arynthilake/caveruins)
+"Vf" = (
+/obj/structure/closet,
+/obj/item/clothing/under/color/blue,
+/obj/item/clothing/under/color/darkblue,
+/obj/item/clothing/under/croptop/grey,
+/obj/item/clothing/under/cuttop,
+/obj/item/clothing/under/dress/bluedress,
+/obj/item/clothing/under/dress/dress_hop,
+/obj/item/clothing/under/dress/stripeddress,
+/obj/item/clothing/under/dress/sundress_blue,
+/obj/item/clothing/under/dress/vneck,
+/obj/item/clothing/under/dress/wench,
+/obj/item/clothing/under/dress/white,
+/obj/item/clothing/under/haltertop,
+/obj/item/clothing/under/hephaestus,
+/obj/item/clothing/under/lawyer/blue,
+/obj/item/clothing/under/lawyer/bluesuit,
+/obj/item/clothing/under/lawyer/bluesuit/skirt,
+/obj/item/clothing/under/sheerblue,
+/obj/item/clothing/under/shorts/blue,
+/obj/item/clothing/under/skirt/blue,
+/obj/item/clothing/under/suit_jacket/navy,
+/obj/item/clothing/under/utility/blue,
+/obj/item/clothing/under/wedding/bride_blue,
+/obj/item/clothing/gloves/blue,
+/obj/item/clothing/gloves/boxing/blue,
+/obj/item/clothing/gloves/black,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"Vo" = (
+/obj/item/weapon/storage/box/sinpockets,
+/obj/structure/table/rack/steel,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"VF" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"VI" = (
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"We" = (
+/obj/random/mob/semirandom_mob_spawner/monster/e,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"Wj" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"Wl" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/obj/structure/flora/pottedplant/unusual,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"Wm" = (
+/obj/machinery/chem_master/condimaster,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"WD" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/structure/table/wooden_reinforced,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"WL" = (
+/obj/structure/table/standard{
+ color = "#ffb8b8"
+ },
+/obj/item/weapon/folder/red,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"WV" = (
+/obj/structure/cable/green{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Xe" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake/dome)
+"Xf" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/structure/bed/chair/sofa/brown,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"Xq" = (
+/obj/structure/toilet,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/dome)
+"Xv" = (
+/obj/random/mob/semirandom_mob_spawner/animal/c,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"XJ" = (
+/obj/machinery/light,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"Yj" = (
+/obj/machinery/seed_extractor,
+/turf/simulated/floor/tiled/eris/techmaint_cargo{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"Yq" = (
+/obj/structure/table/wooden_reinforced,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"YD" = (
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/dome)
+"YE" = (
+/obj/structure/closet/walllocker{
+ dir = 8;
+ pixel_x = -27
+ },
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"YL" = (
+/obj/machinery/shower{
+ pixel_y = 6
+ },
+/obj/structure/curtain/open/shower,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/dome)
+"YX" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 5
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"Zr" = (
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake)
+"Zs" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/dome)
+"ZD" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"ZE" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"ZT" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/outdoors/sidewalk/slab,
+/area/gateway/arynthilake/dome)
+
+(1,1,1) = {"
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+fV
+"}
+(2,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+nr
+aa
+"}
+(3,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+sl
+aa
+"}
+(4,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+UZ
+UZ
+UZ
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(5,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+qM
+qM
+qM
+qM
+qM
+qM
+qM
+qM
+qM
+qM
+qM
+qM
+qM
+qM
+qM
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+Qr
+au
+au
+al
+al
+al
+al
+al
+al
+al
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+UZ
+UZ
+UZ
+UZ
+bN
+UZ
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+Qr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(6,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+qM
+WD
+dg
+ba
+cx
+Bv
+FI
+FI
+bT
+ko
+ba
+Yq
+jX
+qM
+dL
+qM
+qM
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+aw
+az
+UZ
+UZ
+UZ
+UZ
+UZ
+aB
+bM
+bM
+VI
+UZ
+aB
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+We
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+jI
+jI
+Qr
+Qr
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aM
+aM
+aM
+aM
+aM
+aM
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(7,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+Xq
+Ml
+ar
+Do
+ba
+ii
+MY
+bg
+bg
+MY
+ii
+ba
+QV
+ar
+qM
+Ml
+qM
+qM
+qM
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+Zr
+ax
+az
+aB
+VI
+VI
+by
+bF
+aB
+VI
+vy
+vy
+am
+bQ
+jI
+jI
+jI
+jI
+aG
+aG
+aG
+aG
+aG
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+aG
+aG
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+jI
+We
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+aM
+aN
+aR
+aP
+aP
+aM
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(8,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+qM
+qM
+qM
+ar
+ar
+aZ
+bg
+bg
+bg
+xv
+bg
+bg
+aZ
+ar
+oi
+ar
+ar
+ar
+ov
+qM
+qM
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+Zr
+av
+ax
+aA
+VI
+aB
+aB
+VI
+aB
+aB
+VI
+aB
+aB
+am
+VI
+bR
+jI
+aG
+aG
+aG
+aG
+aG
+aG
+aG
+aG
+aG
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+jI
+aG
+aG
+jI
+jI
+jI
+jI
+jI
+Qr
+aG
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+al
+aM
+aO
+Kc
+aP
+aT
+aM
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(9,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+Eu
+YE
+Eu
+Eu
+Eu
+Eu
+ba
+uo
+MY
+bg
+bg
+MY
+oX
+ba
+YD
+YD
+YD
+YD
+YD
+YD
+YD
+qM
+qM
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+al
+aw
+am
+aB
+aB
+VI
+aB
+aB
+aB
+aB
+aB
+aB
+bP
+aB
+bS
+aG
+aG
+aG
+aG
+aG
+aG
+aG
+aG
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+jI
+aG
+aG
+jI
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+Qr
+jI
+jI
+Qr
+Qr
+Qr
+jI
+Qr
+Qr
+Qr
+Qr
+au
+au
+aJ
+al
+al
+aM
+cm
+aP
+aP
+aO
+aM
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(10,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+ba
+QK
+Eu
+QK
+kf
+Eu
+LH
+ba
+tX
+eZ
+IZ
+FI
+bT
+zP
+ba
+Md
+YD
+Md
+YD
+hm
+YD
+Md
+ba
+qM
+qM
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+UZ
+az
+VI
+aC
+vy
+bz
+aB
+VI
+VI
+vy
+aB
+az
+bQ
+aG
+aG
+jI
+aG
+jI
+aG
+aG
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+jI
+Qr
+jI
+aG
+aG
+aG
+aG
+jI
+jI
+jI
+Qr
+Qr
+Qr
+au
+au
+Ko
+al
+al
+al
+aM
+aP
+aP
+aO
+aU
+aM
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(11,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+hw
+ba
+RB
+Eu
+Eu
+Eu
+Eu
+AM
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+GP
+YD
+YD
+YD
+YD
+YD
+KK
+ba
+hw
+qM
+qM
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+UZ
+VI
+vy
+VI
+vy
+aB
+bz
+UZ
+UZ
+UZ
+UZ
+aB
+jI
+jI
+jI
+jI
+jI
+aG
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+aG
+aG
+jI
+Qr
+Qr
+Qr
+Qr
+au
+au
+al
+aK
+al
+aM
+aQ
+aS
+aQ
+aQ
+aM
+JK
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(12,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+hw
+hw
+ba
+LH
+jG
+QK
+Eu
+Eu
+QK
+ba
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+ba
+Md
+rm
+YD
+YD
+YD
+rm
+Md
+ba
+hw
+hw
+qM
+qM
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+al
+au
+UZ
+UZ
+aD
+bs
+vy
+bG
+UZ
+UZ
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+aV
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+aG
+aG
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+au
+au
+al
+al
+al
+al
+al
+al
+au
+au
+au
+JK
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(13,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+hw
+hw
+Nm
+ba
+ba
+yY
+ba
+aZ
+ba
+ba
+ba
+hw
+hw
+hw
+hw
+hw
+hw
+ba
+ba
+yY
+ba
+aZ
+ba
+yY
+ba
+ba
+Nm
+hw
+hw
+qM
+qM
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+au
+Zr
+au
+au
+au
+al
+al
+UZ
+UZ
+UZ
+UZ
+UZ
+UZ
+Qr
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+aG
+aG
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+al
+au
+au
+bJ
+MD
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(14,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+qM
+hw
+Nm
+Nm
+Nm
+Nm
+Nm
+iI
+tv
+tv
+tv
+tv
+tv
+tv
+tv
+ZT
+tv
+tv
+tv
+tv
+tv
+tv
+tv
+iI
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+qM
+qM
+Qr
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+aG
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+JK
+JK
+Qr
+Qr
+Qr
+jI
+jI
+aG
+jI
+jI
+Qr
+jI
+aG
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+al
+al
+au
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+aa
+"}
+(15,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+kk
+qM
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+hw
+hw
+hw
+hw
+hw
+fo
+hw
+hw
+hw
+hw
+hw
+hw
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+qM
+qM
+al
+al
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+al
+al
+al
+al
+au
+au
+Zr
+au
+au
+au
+au
+al
+al
+al
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+oy
+aG
+jI
+jI
+aG
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+JK
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+aG
+jI
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+al
+rP
+au
+au
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+aa
+"}
+(16,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+lh
+aX
+qM
+Nm
+Nm
+Nm
+Nm
+Nm
+ba
+ba
+yY
+yY
+yY
+ba
+ba
+Nm
+hw
+fo
+hw
+Nm
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+yY
+yY
+al
+al
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+np
+au
+au
+au
+al
+al
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+We
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+mC
+au
+au
+au
+Qr
+Qr
+jI
+Qr
+Qr
+jI
+jI
+Qr
+Qr
+aG
+aG
+aG
+aG
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+Qr
+Qr
+aa
+"}
+(17,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+mL
+aX
+lI
+yY
+Nm
+Nm
+Nm
+Nm
+ba
+ba
+be
+pb
+pb
+pb
+XJ
+ba
+Nm
+hw
+fo
+hw
+Nm
+ba
+tM
+Eg
+tM
+gE
+tM
+Eg
+tM
+ba
+Nm
+Nm
+Nm
+Nm
+NE
+hw
+hw
+qM
+qM
+al
+al
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+al
+al
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+Qr
+Qr
+aG
+aG
+ap
+ap
+ap
+aG
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+Qr
+Qr
+aa
+"}
+(18,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+qM
+lO
+aX
+lI
+yY
+Nm
+Nm
+Nm
+ba
+ba
+be
+be
+be
+be
+be
+pb
+yY
+Nm
+hw
+fo
+hw
+Nm
+yY
+AN
+gE
+tM
+gE
+tM
+gE
+tM
+yY
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+yY
+yY
+al
+al
+au
+Cl
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+aG
+jI
+aG
+ap
+aI
+ap
+NK
+aG
+Qr
+Qr
+Qr
+aL
+au
+bb
+aL
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+Qr
+Qr
+aa
+"}
+(19,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+ST
+qM
+Bg
+aX
+lI
+yY
+Nm
+hw
+Dn
+ba
+be
+be
+Ax
+yE
+Eb
+Oh
+pb
+yY
+Nm
+hw
+fo
+hw
+Nm
+yY
+Ir
+gE
+gE
+gE
+gE
+gE
+gE
+yY
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+yY
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+sQ
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+We
+aG
+ap
+ap
+ap
+aG
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+Qr
+Qr
+aa
+"}
+(20,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+YL
+ll
+Ml
+aX
+aX
+Wl
+qM
+hw
+tv
+tv
+aZ
+be
+be
+Ax
+yE
+ki
+Oh
+qF
+ba
+Nm
+hw
+fo
+hw
+Nm
+yY
+Yj
+gE
+gE
+gE
+gE
+gE
+gE
+yY
+Nm
+Nm
+NE
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+yY
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+jI
+aG
+aG
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+aG
+aG
+aG
+aG
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+Qr
+Qr
+aa
+"}
+(21,1,1) = {"
+aa
+Qr
+Qr
+Qr
+qM
+qM
+qM
+qM
+qM
+qM
+qM
+aZ
+qM
+qM
+hw
+fo
+hw
+ba
+TT
+be
+Ax
+Eb
+yE
+Oh
+pb
+yY
+Nm
+hw
+fo
+hw
+Nm
+yY
+HG
+gE
+FC
+gE
+gE
+tM
+gE
+yY
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+qM
+qM
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+jI
+aG
+aG
+aG
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+Qr
+jI
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+nc
+jI
+jI
+jI
+jI
+Qr
+Qr
+aa
+"}
+(22,1,1) = {"
+aa
+Qr
+Qr
+Qr
+qM
+rz
+Vf
+hE
+qM
+kt
+Wj
+bc
+kt
+qM
+hw
+fo
+hw
+ba
+fY
+be
+be
+be
+be
+be
+pb
+yY
+Nm
+hw
+fo
+hw
+Nm
+ba
+mN
+JA
+eW
+gE
+wl
+PS
+gE
+ba
+Nm
+Nm
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+hw
+hw
+qM
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+au
+au
+Qr
+Qr
+jI
+jI
+aG
+aG
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Zr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+jI
+jI
+jI
+nc
+jI
+Qr
+Qr
+aa
+"}
+(23,1,1) = {"
+aa
+Qr
+Qr
+Qr
+qM
+Rh
+an
+an
+qM
+bc
+bc
+bc
+pb
+yY
+hw
+fo
+hw
+ba
+jZ
+be
+be
+be
+be
+pb
+XJ
+ba
+Nm
+hw
+fo
+hw
+Nm
+ba
+ba
+ba
+ba
+aZ
+ba
+ba
+ba
+ba
+Nm
+Nm
+ba
+an
+UY
+nI
+qW
+an
+JQ
+ba
+hw
+hw
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+sQ
+au
+au
+Qr
+Qr
+Qr
+au
+au
+Qr
+Qr
+jI
+aG
+aG
+jI
+jI
+jI
+Qr
+Qr
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+Qr
+Qr
+aa
+"}
+(24,1,1) = {"
+aa
+Qr
+Qr
+Qr
+qM
+sA
+an
+an
+aZ
+bc
+wm
+bc
+pb
+yY
+hw
+fo
+hw
+ba
+ba
+ba
+aZ
+ba
+ba
+yY
+ba
+ba
+Nm
+hw
+fo
+hw
+hw
+hw
+hw
+hw
+iI
+fo
+hw
+hw
+hw
+hw
+hw
+Dn
+ba
+an
+xu
+an
+kK
+an
+cG
+yY
+hw
+hw
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+au
+au
+au
+Qr
+Qr
+Qr
+jI
+oy
+aG
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+Qr
+Qr
+Qr
+aa
+"}
+(25,1,1) = {"
+aa
+Qr
+Qr
+Qr
+qM
+PV
+an
+an
+qM
+bc
+bc
+bc
+bc
+qM
+hw
+fo
+hw
+Nm
+ba
+bf
+bf
+mt
+ba
+Nm
+Nm
+Nm
+Nm
+hw
+uV
+tv
+tv
+tv
+tv
+tv
+tv
+uV
+tv
+tv
+tv
+tv
+uV
+tv
+aZ
+an
+BM
+BM
+BM
+BM
+yf
+yY
+hw
+hw
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+Qr
+Qr
+Qr
+We
+jI
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(26,1,1) = {"
+aa
+Qr
+Qr
+Qr
+qM
+ot
+an
+FZ
+qM
+Uu
+Uu
+bc
+bc
+aZ
+tv
+tv
+hw
+Nm
+yY
+QL
+bf
+QL
+yY
+Nm
+Nm
+Nm
+Nm
+mA
+fo
+hw
+hw
+hw
+hw
+hw
+hw
+hw
+hw
+hw
+hw
+hw
+fo
+hw
+ba
+an
+Mq
+Fk
+LQ
+Gh
+an
+ba
+hw
+hw
+qM
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+Zr
+au
+Zr
+Zr
+Zr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(27,1,1) = {"
+aa
+Qr
+Qr
+Qr
+qM
+an
+an
+an
+qM
+zQ
+zQ
+Er
+bc
+qM
+rA
+hw
+Nm
+Nm
+yY
+QL
+bf
+QL
+yY
+Nm
+Nm
+Nm
+hw
+fo
+uV
+bV
+hw
+hw
+ba
+ba
+ba
+yY
+yY
+yY
+ba
+ba
+fo
+hw
+yY
+yf
+Gh
+LR
+bW
+Gh
+an
+ba
+hw
+hw
+qM
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+ac
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(28,1,1) = {"
+aa
+Qr
+Qr
+Qr
+qM
+qM
+aZ
+qM
+qM
+At
+Rm
+Er
+pb
+yY
+Nm
+Nm
+Nm
+Nm
+ba
+bf
+bf
+bf
+ba
+Nm
+Nm
+Nm
+hw
+fo
+Nm
+fo
+hw
+hw
+Sw
+Sw
+ba
+DP
+Kz
+pu
+Wm
+ba
+fo
+hw
+yY
+yf
+BM
+BM
+BM
+BM
+yf
+yY
+hw
+hw
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+sQ
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(29,1,1) = {"
+aa
+Qr
+Qr
+Qr
+qM
+aY
+aY
+iX
+qM
+zQ
+zQ
+Er
+pb
+yY
+Nm
+Nm
+Nm
+Nm
+ba
+Pu
+bf
+bf
+ba
+Nm
+Nm
+Nm
+hw
+fo
+NE
+fo
+hw
+hw
+Sw
+Sw
+Lq
+ej
+ej
+ej
+Pf
+ba
+fo
+hw
+yY
+yf
+UJ
+an
+SH
+an
+Fq
+yY
+hw
+hw
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+au
+au
+Qr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(30,1,1) = {"
+aa
+Qr
+Qr
+Qr
+qM
+vG
+TI
+Vo
+qM
+AQ
+AQ
+bc
+pa
+yY
+Nm
+Xe
+Nm
+Nm
+yY
+QL
+bf
+QL
+yY
+Nm
+Nm
+Nm
+hw
+fo
+Nm
+fo
+hw
+ye
+Sw
+Sw
+dB
+ej
+ej
+Gc
+ej
+ba
+fo
+hw
+ba
+an
+RW
+ZE
+SH
+an
+eo
+ba
+hw
+hw
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(31,1,1) = {"
+aa
+Qr
+Qr
+Qr
+qM
+FR
+VF
+Lr
+qM
+kt
+ZD
+bc
+kt
+qM
+Nm
+Nm
+Nm
+Nm
+yY
+QL
+bf
+QL
+yY
+Nm
+Nm
+Nm
+hw
+bV
+uV
+fo
+tv
+tv
+Sw
+Sw
+dB
+ej
+ej
+tU
+ej
+aZ
+fo
+hw
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+hw
+hw
+qM
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+al
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+Ko
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(32,1,1) = {"
+aa
+Qr
+Qr
+Qr
+qM
+qM
+qM
+qM
+qM
+qM
+qM
+aZ
+qM
+qM
+Nm
+Nm
+Nm
+Nm
+ba
+DR
+bf
+bf
+ba
+Nm
+Nm
+Nm
+Nm
+hw
+fo
+hw
+hw
+ye
+Sw
+Sw
+dB
+ej
+ej
+Rl
+ej
+ba
+rA
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+qM
+qM
+al
+al
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+rP
+au
+au
+au
+Zr
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(33,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+YL
+vz
+Ml
+mo
+mo
+Oe
+qM
+Nm
+Nm
+Nm
+ba
+ba
+ba
+aZ
+ba
+ba
+yY
+ba
+ba
+Nm
+hw
+fo
+hw
+Nm
+hw
+Sw
+Sw
+Oc
+mp
+ej
+ej
+Pf
+ba
+Nm
+Nm
+Nm
+Nm
+NE
+Nm
+Nm
+Nm
+hw
+hw
+yY
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(34,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+zW
+qM
+il
+mo
+OC
+yY
+Nm
+Nm
+Nm
+ba
+AC
+be
+be
+be
+sD
+pb
+Og
+ba
+Nm
+hw
+fo
+hw
+Nm
+hw
+Sw
+Sw
+ba
+qK
+rU
+pV
+SZ
+ba
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+yY
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+Zr
+au
+au
+au
+sQ
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(35,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+qM
+fu
+mo
+OC
+yY
+Nm
+Nm
+Nm
+ba
+xd
+be
+be
+lt
+fO
+vt
+be
+ba
+Nm
+hw
+fo
+hw
+hw
+hw
+ba
+ba
+ba
+yY
+yY
+yY
+ba
+ba
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+yY
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+al
+au
+au
+Cl
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(36,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+Um
+mo
+OC
+yY
+Nm
+Nm
+Nm
+ba
+wI
+be
+be
+be
+Fy
+be
+be
+ba
+hw
+hw
+uV
+tv
+tv
+tv
+tv
+tv
+fo
+hw
+Nm
+Nm
+Nm
+Nm
+Nm
+NE
+Nm
+Nm
+Nm
+hw
+hw
+qM
+qM
+al
+al
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(37,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+AJ
+mo
+qM
+Nm
+Nm
+Nm
+ba
+kl
+be
+be
+be
+be
+be
+be
+aZ
+tv
+tv
+uV
+hw
+hw
+hw
+hw
+hw
+fo
+Zs
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+yY
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Ko
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(38,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+wb
+qM
+Nm
+Nm
+Nm
+ba
+yE
+be
+be
+be
+xr
+be
+be
+ba
+rA
+hw
+fo
+hw
+Nm
+ba
+ba
+ba
+aZ
+ba
+ba
+ba
+ba
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+yY
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+al
+Ko
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(39,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+qM
+hw
+Nm
+Nm
+ba
+ba
+lr
+be
+WL
+Gs
+sJ
+be
+ba
+Nm
+hw
+fo
+hw
+Nm
+ba
+Hp
+yl
+Eu
+Eu
+jG
+MH
+ba
+Nm
+Nm
+Nm
+hw
+hw
+yY
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+au
+au
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(40,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+hw
+hw
+Nm
+Nm
+ba
+ba
+be
+pb
+iN
+pb
+ex
+ba
+Nm
+hw
+fo
+hw
+Nm
+ba
+mP
+Eu
+kf
+Eu
+jG
+yY
+ba
+Nm
+Nm
+hw
+hw
+yY
+qM
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+Ko
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+au
+au
+Qr
+au
+Qh
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(41,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+qM
+qM
+hw
+hw
+Nm
+Nm
+ba
+ba
+yY
+yY
+yY
+ba
+ba
+Nm
+hw
+fo
+hw
+Nm
+ba
+Xf
+Eu
+Eu
+to
+yY
+yY
+Nm
+Nm
+hw
+hw
+yY
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(42,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+Qr
+Qr
+Qr
+qM
+yY
+hw
+hw
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+fo
+hw
+Nm
+ba
+mP
+Eu
+jG
+yY
+yY
+Nm
+Nm
+hw
+hw
+yY
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(43,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+al
+al
+yY
+qM
+hw
+hw
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+fo
+hw
+Nm
+ba
+BX
+HR
+yY
+yY
+Nm
+Nm
+hw
+hw
+qM
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(44,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+al
+al
+qM
+yY
+hw
+hw
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+fo
+hw
+Nm
+ba
+ba
+ba
+ba
+Nm
+Nm
+hw
+hw
+yY
+qM
+al
+al
+au
+au
+au
+au
+au
+RL
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+al
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(45,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+al
+al
+yY
+yY
+hw
+hw
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+fo
+ZT
+fo
+hw
+Nm
+Nm
+Nm
+Nm
+Nm
+hw
+hw
+yY
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(46,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+al
+al
+yY
+yY
+hw
+hw
+hw
+hw
+hw
+hw
+hw
+fo
+uV
+fo
+hw
+hw
+hw
+hw
+hw
+hw
+hw
+yY
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(47,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aH
+au
+sQ
+au
+au
+au
+au
+au
+au
+al
+al
+yY
+qM
+hw
+hw
+hw
+hw
+hw
+hw
+fo
+hw
+fo
+hw
+hw
+hw
+hw
+hw
+hw
+qM
+yY
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+Qr
+Qr
+au
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+au
+sQ
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(48,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+RL
+au
+au
+au
+au
+au
+au
+al
+al
+qM
+qM
+yY
+yY
+yY
+yY
+qM
+LC
+qM
+LC
+qM
+yY
+yY
+yY
+yY
+qM
+qM
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+al
+al
+rP
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+al
+al
+al
+al
+au
+al
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(49,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+jm
+al
+jm
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+JK
+JK
+JK
+pi
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+JK
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+au
+al
+al
+al
+au
+al
+al
+al
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+sQ
+au
+au
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+Qr
+DL
+DL
+Qr
+Qr
+aa
+"}
+(50,1,1) = {"
+aa
+Qr
+Qr
+Qr
+JK
+JK
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+hV
+al
+al
+Zr
+al
+Zr
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+JK
+au
+au
+au
+au
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+al
+al
+al
+Zr
+Zr
+al
+al
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+Qr
+Qr
+DL
+DL
+Qr
+Qr
+aa
+"}
+(51,1,1) = {"
+aa
+Qr
+Qr
+Qr
+JK
+JK
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+au
+au
+au
+Cl
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+JK
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+JK
+aj
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+au
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+Ko
+au
+al
+al
+al
+al
+Zr
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+Qh
+au
+Qr
+Qr
+Qr
+DL
+DL
+Qr
+aa
+"}
+(52,1,1) = {"
+aa
+Qr
+Qr
+Qr
+DL
+DL
+JK
+Qr
+Qr
+au
+Sb
+QH
+QH
+QH
+QH
+QH
+QH
+QH
+QH
+QH
+QH
+QH
+Sb
+au
+au
+au
+au
+au
+Zr
+au
+au
+Zr
+Zr
+au
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+au
+au
+au
+JK
+JK
+JK
+au
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+al
+au
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+DL
+DL
+DL
+Qr
+aa
+"}
+(53,1,1) = {"
+aa
+Qr
+Qr
+Qr
+DL
+DL
+Qr
+Qr
+Qr
+au
+jm
+Ss
+mm
+mm
+mm
+mm
+mm
+mm
+mm
+mm
+mm
+OO
+jm
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+pi
+aj
+aj
+aj
+aj
+pi
+JK
+JK
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+JK
+JK
+pi
+aj
+aj
+aj
+aj
+JK
+JK
+al
+al
+al
+al
+au
+au
+au
+au
+au
+sQ
+au
+Qr
+Qr
+au
+au
+au
+au
+al
+al
+al
+al
+al
+Zr
+Zr
+Zr
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+DL
+fJ
+DL
+Qr
+aa
+"}
+(54,1,1) = {"
+aa
+Qr
+Qr
+Qr
+JK
+DL
+Qr
+Qr
+Qr
+au
+jm
+wA
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+sO
+jm
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+pi
+aj
+aj
+JK
+JK
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+JK
+JK
+JK
+JK
+aj
+aj
+pi
+JK
+JK
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+al
+al
+al
+al
+Zr
+GG
+Zr
+Zr
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+DL
+DL
+DL
+Qr
+aa
+"}
+(55,1,1) = {"
+aa
+Qr
+Qr
+Qr
+JK
+DL
+DL
+Qr
+Qr
+au
+jm
+wA
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+sO
+jm
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+RL
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+af
+af
+au
+af
+aj
+aj
+aj
+JK
+au
+Qr
+Qr
+Qr
+bH
+bH
+bH
+bH
+bH
+bH
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+JK
+JK
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+Qr
+au
+au
+au
+au
+al
+al
+al
+al
+Zr
+Zr
+Zr
+al
+al
+al
+al
+au
+au
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+DL
+DL
+DL
+Qr
+Qr
+aa
+"}
+(56,1,1) = {"
+aa
+Qr
+Qr
+Qr
+JK
+JK
+JK
+Qr
+Qr
+au
+jm
+wA
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+sO
+jm
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+JK
+aj
+aj
+aj
+af
+af
+au
+au
+au
+au
+aj
+aj
+JK
+Qr
+Qr
+Qr
+Qr
+Qr
+bH
+BH
+bB
+bB
+bI
+bH
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+JK
+al
+au
+al
+au
+au
+au
+au
+au
+au
+au
+Qr
+au
+au
+au
+au
+al
+al
+al
+Zr
+al
+Zr
+al
+al
+al
+al
+al
+au
+al
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+DL
+fJ
+DL
+DL
+Qr
+aa
+"}
+(57,1,1) = {"
+aa
+Qr
+Qr
+Qr
+JK
+JK
+JK
+au
+Qr
+au
+jm
+wA
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+sO
+jm
+Zr
+Zr
+RL
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+af
+al
+al
+au
+au
+au
+au
+aj
+aj
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+bH
+Iy
+er
+EG
+bE
+bH
+MD
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+JK
+JK
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+Zr
+al
+al
+al
+al
+al
+au
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+DL
+DL
+DL
+Qr
+aa
+"}
+(58,1,1) = {"
+aa
+Qr
+Qr
+Qr
+JK
+JK
+JK
+au
+au
+au
+jm
+wA
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+sO
+jm
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+JK
+aj
+af
+af
+au
+al
+al
+al
+au
+au
+af
+aj
+Qr
+Qr
+Qr
+Zr
+Qr
+Qr
+Zr
+bH
+ae
+br
+bx
+bE
+bH
+rs
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+aj
+aj
+aj
+JK
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+DL
+DL
+DL
+fJ
+Qr
+aa
+"}
+(59,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+JK
+JK
+au
+au
+au
+jm
+wA
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+sO
+jm
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+JK
+aj
+aj
+af
+Zr
+au
+al
+au
+al
+al
+au
+aj
+aj
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+Zr
+bH
+bp
+bv
+bC
+bE
+bL
+rs
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+JK
+aj
+aj
+aj
+JK
+al
+al
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+Ko
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+DL
+DL
+Qr
+Qr
+aa
+"}
+(60,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+JK
+au
+au
+au
+jm
+wA
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+Sg
+sO
+jm
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+JK
+aj
+aj
+qo
+af
+Zr
+Zr
+Zr
+Zr
+al
+au
+al
+au
+aj
+aj
+Qr
+Zr
+Zr
+Zr
+Zr
+JK
+JK
+bH
+bq
+bD
+bD
+Fm
+bH
+rs
+Zr
+au
+au
+Qr
+au
+au
+au
+au
+au
+au
+JK
+aj
+aj
+JK
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+au
+al
+al
+al
+al
+al
+al
+au
+au
+al
+au
+al
+au
+au
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(61,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+JK
+JK
+au
+au
+jm
+YX
+qz
+qz
+qz
+qz
+qz
+qz
+qz
+qz
+qz
+NG
+jm
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+al
+al
+al
+Zr
+Zr
+al
+au
+al
+af
+aj
+aj
+Qr
+Zr
+Zr
+Zr
+JK
+JK
+Zr
+bH
+bH
+bH
+bH
+bH
+bH
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+al
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(62,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+JK
+JK
+au
+au
+Sb
+QH
+QH
+QH
+QH
+QH
+QH
+QH
+QH
+QH
+QH
+QH
+Sb
+au
+au
+au
+au
+au
+au
+au
+au
+RL
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+al
+al
+al
+al
+Zr
+Zr
+al
+af
+aj
+aj
+aj
+Qr
+Zr
+Zr
+Zr
+Zr
+JK
+JK
+Zr
+Zr
+Zr
+au
+au
+au
+au
+Zr
+Zr
+au
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+JK
+aj
+aj
+aj
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(63,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+aj
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+af
+al
+al
+al
+au
+af
+af
+aj
+aj
+aj
+JK
+JK
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+JK
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+Zr
+au
+Zr
+Qr
+Zr
+au
+au
+au
+JK
+aj
+aj
+aj
+JK
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(64,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+aj
+JK
+au
+au
+au
+au
+au
+au
+JK
+JK
+JK
+JK
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+JK
+qo
+aj
+aj
+aj
+af
+af
+af
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+Zr
+Zr
+Zr
+au
+Zr
+Zr
+Iq
+JK
+JK
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+JK
+JK
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(65,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+aj
+SP
+JK
+au
+au
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+qo
+aj
+aj
+JK
+JK
+JK
+au
+au
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+Qr
+JK
+Zr
+Zr
+Zr
+au
+au
+Zr
+JK
+JK
+JK
+JK
+JK
+Zr
+Zr
+Zr
+HJ
+au
+au
+au
+Zr
+Qr
+Zr
+au
+au
+au
+JK
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(66,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+aj
+aj
+aj
+aj
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+au
+aj
+aj
+aj
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+aj
+qo
+aj
+aj
+aj
+JK
+JK
+au
+Qr
+Qr
+Zr
+Zr
+Qr
+au
+Zr
+Zr
+Zr
+bJ
+JK
+JK
+JK
+JK
+JK
+Zr
+Zr
+au
+au
+au
+Zr
+Qr
+Zr
+au
+au
+au
+JK
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Ko
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(67,1,1) = {"
+TR
+Jc
+Qr
+Jc
+aj
+SP
+aj
+aj
+aj
+aj
+aj
+aj
+SP
+aj
+au
+au
+au
+au
+au
+aj
+SP
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+al
+JK
+JK
+JK
+aj
+aj
+JK
+JK
+JK
+JK
+Zr
+au
+au
+al
+au
+Zr
+Zr
+Qr
+Qr
+Zr
+Zr
+Zr
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+Zr
+au
+au
+au
+au
+Qr
+au
+au
+au
+au
+JK
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(68,1,1) = {"
+TR
+Jc
+Jc
+Jc
+Jc
+Qr
+Qr
+aj
+aj
+aj
+JK
+JK
+aj
+aj
+aj
+SP
+aj
+au
+au
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+al
+al
+al
+JK
+JK
+JK
+JK
+al
+al
+al
+Zr
+Zr
+Zr
+au
+Zr
+Zr
+Zr
+au
+Qr
+Qr
+Zr
+Zr
+Zr
+JK
+JK
+bn
+Iq
+JK
+JK
+Zr
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+JK
+aj
+aj
+JK
+JK
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+Ko
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(69,1,1) = {"
+TR
+Jc
+Qr
+Qr
+Qr
+Qr
+Qr
+aj
+JK
+JK
+au
+JK
+JK
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+aj
+aj
+JK
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+Zr
+al
+Zr
+Zr
+Zr
+Qr
+Qr
+au
+au
+JK
+JK
+JK
+JK
+bo
+JK
+JK
+JK
+Zr
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+JK
+JK
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(70,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+JK
+JK
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+al
+al
+Zr
+au
+Qr
+Qr
+bh
+bi
+bk
+bh
+bh
+JK
+JK
+JK
+JK
+Zr
+Zr
+au
+au
+sQ
+au
+au
+Qr
+au
+au
+au
+au
+JK
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(71,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+al
+al
+au
+au
+au
+Qr
+Qr
+bh
+bj
+bj
+bj
+bl
+JK
+JK
+JK
+JK
+Zr
+Zr
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+JK
+aj
+pi
+aj
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(72,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+JK
+JK
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+JK
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+al
+Zr
+au
+Qr
+Qr
+Qr
+bh
+bh
+bj
+bm
+JK
+JK
+JK
+JK
+Zr
+Zr
+Zr
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+JK
+aj
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(73,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+JK
+aj
+aj
+aj
+JK
+JK
+JK
+au
+au
+au
+JK
+JK
+JK
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+bh
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+JK
+JK
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(74,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+qo
+aj
+JK
+JK
+JK
+JK
+JK
+aj
+aj
+qo
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Zr
+Zr
+Qr
+Qr
+Zr
+Zr
+JK
+JK
+Zr
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+JK
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(75,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+al
+au
+au
+Qr
+Qr
+Qr
+Qr
+Zr
+Zr
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Ko
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(76,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+Qr
+Qr
+Qr
+Qr
+Qr
+Zr
+Zr
+au
+au
+au
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+JK
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(77,1,1) = {"
+aa
+Qr
+Qr
+Qr
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+JK
+aj
+aj
+aj
+qo
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+Qr
+au
+Zr
+au
+Qr
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+JK
+JK
+aj
+aj
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(78,1,1) = {"
+aa
+Qr
+Qr
+Qr
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+JK
+aj
+aj
+aj
+JK
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(79,1,1) = {"
+aa
+Qr
+Qr
+Qr
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+Qr
+Zr
+Zr
+Zr
+Zr
+au
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+JK
+aj
+aj
+JK
+JK
+al
+al
+al
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(80,1,1) = {"
+aa
+Qr
+Qr
+Qr
+JK
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+JK
+aj
+aj
+aj
+JK
+JK
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(81,1,1) = {"
+aa
+Qr
+Qr
+Qr
+JK
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+au
+au
+Zr
+Zr
+Zr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+al
+al
+JK
+JK
+aj
+aj
+aj
+JK
+al
+al
+Qr
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(82,1,1) = {"
+aa
+Qr
+Qr
+Qr
+JK
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+as
+as
+jI
+as
+as
+Qr
+Qr
+Qr
+ac
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+JK
+aj
+aj
+aj
+JK
+al
+al
+Qr
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(83,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+as
+tN
+au
+ac
+ac
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+pD
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+au
+au
+au
+au
+Zr
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+JK
+aj
+aj
+aj
+JK
+al
+al
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(84,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+aH
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+Zr
+al
+al
+al
+al
+JK
+aj
+aj
+aj
+JK
+JK
+al
+al
+Qr
+Qr
+Qr
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(85,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+as
+aH
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+Zr
+al
+al
+al
+al
+JK
+aj
+aj
+aj
+aj
+JK
+al
+al
+al
+Qr
+Qr
+Qr
+al
+al
+al
+al
+au
+au
+sQ
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(86,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+as
+jI
+jI
+as
+tN
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+np
+au
+au
+Zr
+al
+al
+al
+Zr
+al
+al
+al
+JK
+JK
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(87,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+as
+jI
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+hs
+au
+au
+au
+au
+au
+au
+al
+al
+au
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+Zr
+Zr
+al
+al
+Zr
+Zr
+al
+al
+Zr
+JK
+JK
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+JK
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(88,1,1) = {"
+aa
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+jI
+gu
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+ac
+ac
+au
+sQ
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+Zr
+al
+al
+al
+Zr
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+JK
+JK
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(89,1,1) = {"
+aa
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+gu
+gu
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+ac
+ac
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+Zr
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+mT
+aj
+aj
+aj
+aj
+aj
+JK
+Zr
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(90,1,1) = {"
+aa
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+gu
+gu
+jI
+jI
+jI
+nc
+Qr
+Qr
+au
+au
+au
+au
+sQ
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+JK
+JK
+JK
+aj
+mT
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+Zr
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(91,1,1) = {"
+aa
+Qr
+Qr
+au
+Xv
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+gu
+gu
+gu
+gu
+jI
+jI
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+al
+al
+al
+al
+Zr
+Zr
+JK
+JK
+aj
+aj
+aj
+mT
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+Zr
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(92,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+gu
+gu
+gu
+gu
+jI
+jI
+Qr
+Qr
+au
+au
+au
+Zr
+au
+au
+au
+sQ
+au
+au
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+Zr
+JK
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+al
+al
+al
+al
+al
+al
+au
+Zr
+Zr
+au
+au
+Zr
+Zr
+au
+Zr
+Zr
+Zr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(93,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+gu
+oO
+gu
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+Zr
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+aj
+aj
+JK
+mT
+aj
+aj
+aj
+JK
+JK
+al
+al
+al
+al
+al
+al
+au
+Zr
+Zr
+Zr
+Zr
+au
+Zr
+au
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(94,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+nc
+jI
+jI
+jI
+jI
+nc
+Qr
+Qr
+au
+au
+Xv
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+Zr
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+JK
+Zr
+al
+Zr
+Zr
+al
+al
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(95,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+al
+au
+au
+al
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+Zr
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+al
+al
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+al
+al
+Zr
+al
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+au
+Zr
+Zr
+Zr
+Zr
+wd
+Zr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(96,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+al
+al
+al
+al
+Zr
+JK
+JK
+JK
+aj
+aj
+mT
+aj
+aj
+aj
+JK
+al
+al
+al
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+al
+Zr
+Zr
+al
+au
+au
+au
+au
+Zr
+Zr
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(97,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+hs
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+Zr
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+al
+CQ
+al
+JK
+aj
+aj
+aj
+aj
+aj
+mT
+aj
+JK
+JK
+al
+Zr
+Zr
+Zr
+Zr
+Zr
+al
+au
+au
+Zr
+Zr
+Zr
+Zr
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(98,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+Qr
+Qr
+Qr
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+al
+al
+al
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+al
+Zr
+Zr
+Zr
+al
+Zr
+al
+al
+Zr
+au
+Zr
+Zr
+Zr
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(99,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+al
+al
+al
+JK
+aj
+mT
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+al
+al
+Zr
+Zr
+al
+Zr
+Zr
+al
+al
+Zr
+au
+Zr
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(100,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+Xv
+au
+au
+al
+al
+au
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+al
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+al
+al
+Zr
+Zr
+al
+al
+Zr
+al
+Zr
+Zr
+al
+au
+Zr
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(101,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+Zr
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+al
+al
+Zr
+Zr
+al
+al
+Zr
+Zr
+al
+Zr
+al
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(102,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+wq
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+sQ
+au
+hs
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+Zr
+Zr
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+mn
+aj
+aj
+aj
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+al
+al
+al
+al
+al
+al
+Zr
+al
+al
+al
+au
+au
+au
+Zr
+Zr
+Zr
+au
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+aa
+"}
+(103,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+JK
+JK
+aj
+aj
+aj
+mn
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+aj
+aj
+mT
+aj
+aj
+aj
+JK
+JK
+Zr
+al
+Zr
+Zr
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(104,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+Zr
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+Zr
+al
+al
+Zr
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+Zr
+au
+Zr
+Zr
+Zr
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(105,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+au
+au
+sQ
+au
+au
+al
+al
+al
+al
+au
+au
+au
+Zr
+Zr
+au
+Zr
+Zr
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+Zr
+JK
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+aj
+aj
+aj
+JK
+JK
+JK
+JK
+Zr
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(106,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+au
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+Zr
+al
+al
+Zr
+JK
+JK
+JK
+JK
+JK
+aj
+aj
+mT
+aj
+aj
+aj
+aj
+JK
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+JK
+Zr
+Zr
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(107,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+au
+Zr
+Zr
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+Zr
+Zr
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+JK
+Zr
+Zr
+Zr
+Zr
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(108,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+al
+al
+al
+al
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+Qr
+Qr
+nc
+jI
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+hs
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+Zr
+Zr
+Zr
+Gp
+Zr
+Zr
+al
+al
+al
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(109,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+al
+al
+al
+al
+au
+Zr
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+Qr
+Qr
+Qr
+jI
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+al
+al
+au
+al
+Zr
+JK
+JK
+JK
+aj
+aj
+mn
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+al
+Zr
+Zr
+Zr
+Zr
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+Zr
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(110,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+Xv
+al
+al
+al
+al
+Zr
+Zr
+al
+al
+al
+al
+al
+al
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+Qr
+Qr
+Qr
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+Zr
+Zr
+au
+al
+JK
+JK
+aj
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+ps
+Zr
+Zr
+al
+al
+al
+au
+au
+au
+sQ
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+Zr
+Zr
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(111,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+al
+al
+al
+Zr
+Zr
+Zr
+al
+al
+al
+al
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+Qr
+Qr
+Qr
+jI
+jI
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+al
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+mn
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(112,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+al
+al
+al
+jm
+Sb
+jm
+au
+al
+al
+al
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+eV
+Qr
+Qr
+jI
+jI
+jI
+jI
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+al
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(113,1,1) = {"
+aa
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+al
+al
+al
+GJ
+nB
+GJ
+au
+al
+al
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+SP
+aj
+aj
+JK
+JK
+al
+al
+al
+al
+al
+au
+au
+au
+au
+sQ
+au
+Zr
+Zr
+Zr
+qm
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(114,1,1) = {"
+aa
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+al
+ag
+ag
+Qj
+ag
+Qj
+ag
+ag
+al
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+JK
+JK
+aj
+mn
+aj
+aj
+mn
+aj
+aj
+aj
+SP
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(115,1,1) = {"
+aa
+Qr
+Qr
+au
+au
+au
+au
+au
+ag
+bd
+ag
+FW
+Ip
+FW
+Ip
+FW
+ag
+bd
+ag
+au
+au
+au
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+jI
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+JK
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(116,1,1) = {"
+aa
+Qr
+Qr
+au
+au
+au
+ag
+bd
+ag
+Ip
+SQ
+FW
+FW
+Qx
+FW
+FW
+SQ
+Ip
+ag
+bd
+ag
+au
+al
+wq
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+jI
+Qr
+au
+au
+au
+au
+Qh
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+JK
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(117,1,1) = {"
+aa
+Qr
+Qr
+au
+au
+au
+ag
+Ip
+FW
+FW
+FW
+FW
+FW
+FW
+FW
+FW
+FW
+FW
+FW
+lX
+ag
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+jI
+Qr
+Qr
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+JK
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+aj
+JK
+JK
+al
+al
+al
+al
+al
+KE
+al
+al
+al
+al
+au
+au
+au
+au
+Zr
+Zr
+Zr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(118,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+bd
+lX
+FW
+FW
+FW
+MS
+dI
+Ng
+EB
+EB
+FW
+FW
+FW
+Ip
+bd
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+al
+JK
+JK
+JK
+JK
+JK
+aj
+aj
+aj
+JK
+JK
+JK
+JK
+JK
+aj
+aj
+aj
+aj
+JK
+JK
+Zr
+al
+al
+Zr
+al
+al
+al
+al
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(119,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+bd
+Ip
+FW
+FW
+FW
+MG
+FW
+Iu
+FW
+Jf
+FW
+FW
+FW
+Ip
+bd
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+jI
+jI
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+aj
+aj
+aj
+JK
+JK
+Zr
+al
+Zr
+al
+al
+al
+al
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(120,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+ag
+la
+FW
+FW
+FW
+EB
+ev
+FW
+FW
+FW
+FW
+FW
+FW
+iW
+ag
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+jI
+au
+jI
+jI
+jI
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+hs
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+JK
+JK
+JK
+JK
+JK
+JK
+JK
+Zr
+Zr
+al
+Zr
+Zr
+Zr
+al
+al
+au
+au
+au
+au
+Zr
+Zr
+Zr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(121,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+au
+bd
+Ip
+FW
+FW
+ag
+ag
+ag
+ag
+ag
+ag
+ag
+FW
+FW
+Ip
+bd
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+jI
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+JK
+JK
+Zr
+Zr
+al
+al
+Zr
+Zr
+Zr
+Zr
+al
+al
+au
+au
+au
+au
+au
+Zr
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(122,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+au
+bd
+FW
+NI
+FW
+ag
+pe
+Ih
+wa
+GK
+ug
+ag
+FW
+NI
+FW
+bd
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+al
+au
+au
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+Qr
+Qr
+al
+Qr
+Qr
+al
+al
+al
+al
+al
+al
+al
+al
+al
+Zr
+al
+al
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(123,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+au
+ag
+Qc
+FW
+FW
+ag
+FW
+Ih
+wa
+GK
+FW
+ag
+FW
+FW
+Qc
+ag
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+jI
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+Qr
+Qr
+Qr
+al
+al
+al
+al
+al
+al
+al
+al
+al
+Zr
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(124,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+ag
+ag
+Cp
+ag
+ag
+cl
+Ih
+wa
+GK
+No
+ag
+ag
+Cp
+ag
+ag
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+au
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(125,1,1) = {"
+aa
+Qr
+Qr
+Qr
+au
+au
+ag
+fE
+FW
+FW
+ag
+Iz
+FW
+FW
+FW
+pW
+ag
+FW
+FW
+fE
+ag
+al
+al
+al
+al
+au
+au
+au
+au
+au
+Xv
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+Zr
+al
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(126,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+ag
+An
+FW
+FW
+nx
+PC
+QI
+ea
+QI
+yb
+nx
+FW
+FW
+jz
+ag
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+Qr
+Qr
+Zr
+Zr
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+al
+al
+al
+KE
+al
+au
+au
+au
+au
+au
+Zr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(127,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+ag
+jK
+se
+jK
+ag
+FW
+ek
+WV
+FW
+FW
+ag
+jK
+oZ
+jK
+ag
+au
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Zr
+Zr
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+qm
+au
+au
+au
+au
+al
+al
+al
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(128,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+ag
+ag
+ag
+ag
+ag
+ag
+MX
+Ej
+kX
+ag
+ag
+ag
+ag
+ag
+ag
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+sQ
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+al
+al
+al
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(129,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+ag
+ag
+Lo
+ag
+ag
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+al
+Zr
+Zr
+KE
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(130,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+ag
+ag
+ag
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+al
+al
+al
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+au
+au
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(131,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Xv
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+al
+Zr
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+Zr
+Zr
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(132,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+al
+al
+Zr
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Zr
+Zr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(133,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+al
+al
+al
+al
+al
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(134,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+sQ
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+Zr
+Qr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+al
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(135,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+Zr
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+al
+au
+sQ
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(136,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+Zr
+al
+al
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(137,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+au
+au
+au
+au
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+au
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Zr
+Zr
+Zr
+Zr
+Zr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(138,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(139,1,1) = {"
+aa
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+Qr
+aa
+"}
+(140,1,1) = {"
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+"}
diff --git a/maps/gateway_vr/variable/arynthilake_b.dmm b/maps/gateway_vr/variable/arynthilake_b.dmm
new file mode 100644
index 0000000000..0b1878a26e
--- /dev/null
+++ b/maps/gateway_vr/variable/arynthilake_b.dmm
@@ -0,0 +1,22338 @@
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"ao" = (
+/obj/item/stack/material/steel{
+ amount = 50
+ },
+/turf/simulated/mineral/floor/ignore_cavegen{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"av" = (
+/obj/item/stack/material/steel,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"ax" = (
+/obj/random/mob/semirandom_mob_spawner/monster/d,
+/turf/simulated/floor/outdoors/sidewalk/slab,
+/area/gateway/arynthilake/dome)
+"az" = (
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/caves)
+"aG" = (
+/obj/item/weapon/storage/box/lights/mixed,
+/obj/structure/table/rack/steel,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"aS" = (
+/obj/structure/bed/chair{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"bb" = (
+/obj/random/mob/semirandom_mob_spawner/monster/d,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"bj" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"bm" = (
+/obj/structure/toilet,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/dome)
+"bs" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"bw" = (
+/obj/structure/table/sifwooden_reinforced,
+/obj/item/weapon/newspaper,
+/obj/item/weapon/dice/d20,
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/arynthilake/dome)
+"bI" = (
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"bM" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/white,
+/area/gateway/arynthilake/dome)
+"bN" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/dome)
+"bO" = (
+/obj/structure/table/sifwooden_reinforced,
+/obj/item/device/flashlight/lamp/green,
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/arynthilake/dome)
+"cg" = (
+/turf/simulated/mineral/ignore_cavegen,
+/area/gateway/arynthilake)
+"ch" = (
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"cu" = (
+/turf/simulated/floor/lino,
+/area/gateway/arynthilake/dome)
+"cy" = (
+/obj/machinery/gateway/brass{
+ dir = 6;
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"cH" = (
+/obj/item/stack/material/steel,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake)
+"cL" = (
+/obj/structure/table/wooden_reinforced,
+/obj/item/device/flashlight/lamp,
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"cN" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/c,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"cQ" = (
+/obj/random/mob/semirandom_mob_spawner/fish/e,
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"cS" = (
+/obj/machinery/appliance/cooker/grill,
+/turf/simulated/floor/tiled/eris/cafe{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"cZ" = (
+/obj/item/stack/material/steel,
+/turf/simulated/floor/wood/sif,
+/area/gateway/arynthilake/oldcabin)
+"de" = (
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"dh" = (
+/obj/structure/bed/chair/comfy/brown{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"dl" = (
+/obj/structure/closet/secure_closet/freezer/fridge,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/flour,
+/obj/item/weapon/reagent_containers/food/condiment/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/sugar,
+/obj/item/weapon/reagent_containers/food/condiment/spacespice,
+/obj/item/weapon/reagent_containers/food/condiment/spacespice,
+/obj/item/weapon/reagent_containers/food/condiment/spacespice,
+/obj/item/weapon/reagent_containers/food/condiment/yeast,
+/obj/item/weapon/reagent_containers/food/condiment/yeast,
+/obj/item/weapon/reagent_containers/food/condiment/yeast,
+/obj/item/weapon/storage/fancy/egg_box,
+/obj/item/weapon/storage/fancy/egg_box,
+/obj/random/awayloot,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/cafe{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"dn" = (
+/obj/structure/bed/chair/comfy/red,
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"dx" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/white,
+/area/gateway/arynthilake/dome)
+"dz" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 4
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10,
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"dC" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/tiled/eris/white/techfloor,
+/area/gateway/arynthilake/dome)
+"dR" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/food/condiment/enzyme{
+ layer = 5
+ },
+/obj/item/weapon/material/kitchen/rollingpin,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"dV" = (
+/obj/machinery/appliance/cooker/oven,
+/turf/simulated/floor/tiled/eris/cafe{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"eg" = (
+/obj/random/mob/semirandom_mob_spawner/fish/b,
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"ei" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/maintenance/engineering,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"ek" = (
+/turf/simulated/mineral/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"eq" = (
+/obj/structure/lattice,
+/obj/structure/cable/green{
+ d1 = 32;
+ d2 = 4;
+ icon_state = "32-4"
+ },
+/turf/simulated/open,
+/area/gateway/arynthilake/engine)
+"eE" = (
+/obj/structure/flora/pottedplant/minitree,
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"eN" = (
+/obj/effect/fake_sun,
+/turf/simulated/mineral/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"eP" = (
+/obj/structure/table/standard{
+ color = "#b8e4ff"
+ },
+/obj/item/weapon/paper_bin{
+ pixel_x = -3;
+ pixel_y = 9
+ },
+/obj/item/weapon/pen,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"eT" = (
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"fh" = (
+/obj/structure/table/rack/steel,
+/obj/item/clothing/shoes/flats/blue,
+/obj/item/clothing/shoes/flats,
+/obj/item/clothing/shoes/flats/brown,
+/obj/item/clothing/shoes/flats/white,
+/obj/item/clothing/shoes/blue,
+/obj/item/clothing/shoes/boots/jackboots,
+/obj/item/clothing/shoes/boots/winter/medical,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"fm" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/b,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"fr" = (
+/obj/structure/table/steel,
+/obj/random/awayloot,
+/turf/simulated/floor/plating,
+/area/gateway/arynthilake)
+"fs" = (
+/turf/simulated/wall/r_wall,
+/area/gateway/arynthilake/engine)
+"fA" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/manual/mass_spectrometry,
+/obj/item/weapon/book/manual/materials_chemistry_analysis,
+/obj/item/weapon/book/manual/medical_cloning,
+/obj/item/weapon/book/manual/medical_diagnostics_manual,
+/obj/item/weapon/book/manual/nuclear,
+/obj/item/weapon/book/manual/research_and_development,
+/obj/item/weapon/book/manual/resleeving,
+/obj/item/weapon/book/manual/ripley_build_and_repair,
+/obj/item/weapon/book/manual/robotics_cyborgs,
+/obj/item/weapon/book/manual/rust_engine,
+/obj/item/weapon/book/manual/security_space_law,
+/obj/item/weapon/book/manual/standard_operating_procedure,
+/obj/item/weapon/book/manual/stasis,
+/obj/item/weapon/book/manual/supermatter_engine,
+/obj/item/weapon/book/manual/tesla_engine,
+/turf/simulated/floor/wood{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"fC" = (
+/obj/effect/overmap/visitable/sector/tether_gateway/arynthilake,
+/turf/simulated/mineral/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"fX" = (
+/obj/structure/table/standard{
+ color = "#b8e4ff"
+ },
+/obj/item/weapon/folder/blue,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"gm" = (
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"gs" = (
+/obj/random/mob/semirandom_mob_spawner/fish,
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"gu" = (
+/obj/structure/bed/pod,
+/obj/structure/curtain/black,
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/dome)
+"gB" = (
+/obj/structure/catwalk,
+/obj/random/mob/semirandom_mob_spawner/monster/e,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"gK" = (
+/obj/structure/closet,
+/obj/item/clothing/under/schoolgirl,
+/obj/item/clothing/under/color/blackf,
+/obj/item/clothing/under/color/blackjumpskirt,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"gL" = (
+/obj/structure/closet,
+/obj/item/clothing/under/color/blue,
+/obj/item/clothing/under/color/darkblue,
+/obj/item/clothing/under/croptop/grey,
+/obj/item/clothing/under/cuttop,
+/obj/item/clothing/under/dress/bluedress,
+/obj/item/clothing/under/dress/dress_hop,
+/obj/item/clothing/under/dress/stripeddress,
+/obj/item/clothing/under/dress/sundress_blue,
+/obj/item/clothing/under/dress/vneck,
+/obj/item/clothing/under/dress/wench,
+/obj/item/clothing/under/dress/white,
+/obj/item/clothing/under/haltertop,
+/obj/item/clothing/under/hephaestus,
+/obj/item/clothing/under/lawyer/blue,
+/obj/item/clothing/under/lawyer/bluesuit,
+/obj/item/clothing/under/lawyer/bluesuit/skirt,
+/obj/item/clothing/under/sheerblue,
+/obj/item/clothing/under/shorts/blue,
+/obj/item/clothing/under/skirt/blue,
+/obj/item/clothing/under/suit_jacket/navy,
+/obj/item/clothing/under/utility/blue,
+/obj/item/clothing/under/wedding/bride_blue,
+/obj/item/clothing/gloves/blue,
+/obj/item/clothing/gloves/boxing/blue,
+/obj/item/clothing/gloves/black,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"gT" = (
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 5
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 6
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"hb" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/maintenance/engineering,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"hl" = (
+/turf/simulated/floor/outdoors/sidewalk/side,
+/area/gateway/arynthilake)
+"hr" = (
+/obj/structure/flora/tree/sif,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"hH" = (
+/turf/simulated/wall,
+/area/gateway/arynthilake/dome)
+"hN" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/engine)
+"hP" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"hR" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 10
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"hU" = (
+/obj/structure/catwalk,
+/obj/structure/railing{
+ dir = 4
+ },
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"hV" = (
+/obj/structure/closet/walllocker_double{
+ pixel_y = 26
+ },
+/obj/item/device/flashlight/lantern,
+/obj/item/device/flashlight/lantern,
+/obj/item/device/flashlight/lantern,
+/obj/item/device/flashlight/lantern,
+/obj/item/device/flashlight/lantern,
+/obj/item/device/multitool,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool/power,
+/obj/random/awayloot,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"ip" = (
+/obj/structure/bed/pod,
+/obj/structure/curtain/black,
+/obj/random/awayloot,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"iw" = (
+/obj/structure/bed/pod,
+/turf/simulated/floor/wood/sif/broken,
+/area/gateway/arynthilake/oldcabin)
+"iG" = (
+/turf/simulated/floor/outdoors/sidewalk/side,
+/area/gateway/arynthilake/dome)
+"iI" = (
+/turf/simulated/floor/tiled{
+ edge_blending_priority = 1;
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"iL" = (
+/obj/machinery/gateway/brass{
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"iX" = (
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake)
+"jh" = (
+/obj/structure/cable/green{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/machinery/light,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"jq" = (
+/obj/structure/toilet{
+ dir = 8
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"jt" = (
+/obj/machinery/gateway/brass{
+ dir = 4;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"jz" = (
+/obj/machinery/turretid/stun{
+ ailock = 1;
+ check_access = 0;
+ check_all = 1;
+ check_anomalies = 0;
+ check_arrest = 0;
+ check_down = 0;
+ check_records = 0;
+ control_area = /area/gateway/grasslands/underground/maintenance;
+ desc = "A firewall prevents AIs from interacting with this device.";
+ lethal = 1;
+ locked = 0;
+ name = "Underground Maintenance turret control";
+ pixel_y = 30;
+ req_access = list();
+ req_one_access = list()
+ },
+/turf/simulated/floor/tiled/eris/white,
+/area/gateway/arynthilake/dome)
+"jP" = (
+/obj/structure/table/sifwooden_reinforced,
+/obj/item/weapon/paper_bin{
+ pixel_x = -3;
+ pixel_y = 9
+ },
+/obj/item/weapon/pen,
+/obj/random/awayloot,
+/turf/simulated/floor/carpet{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"jU" = (
+/obj/machinery/gateway/brass{
+ dir = 10;
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"jW" = (
+/obj/structure/table/wooden_reinforced,
+/obj/random/snack,
+/obj/random/snack,
+/obj/random/snack,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"kf" = (
+/turf/unsimulated/wall/planetary/normal{
+ desc = "Why would you want to go this way??!?";
+ name = "the end"
+ },
+/area/gateway/arynthilake)
+"kt" = (
+/obj/structure/bed/chair/comfy/brown{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"ku" = (
+/obj/structure/bed/chair/sofa/brown/right{
+ dir = 4
+ },
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"kv" = (
+/obj/structure/table/fancyblack,
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"kE" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/c,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake)
+"kJ" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 10
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"lj" = (
+/obj/structure/table/wooden_reinforced,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"lk" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"ll" = (
+/turf/simulated/floor/wood/sif,
+/area/gateway/arynthilake/oldcabin)
+"lo" = (
+/obj/machinery/door/airlock/sandstone{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/outdoors/sidewalk/side,
+/area/gateway/arynthilake/dome)
+"lt" = (
+/obj/effect/floor_decal/techfloor,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"lw" = (
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caves)
+"lF" = (
+/turf/simulated/floor/wood{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"lQ" = (
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake/dome)
+"mc" = (
+/obj/structure/catwalk,
+/obj/structure/railing,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"mi" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/dome)
+"mp" = (
+/obj/structure/cable/green{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/obj/structure/cable/green{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/obj/structure/cable/green{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"mq" = (
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/structure/table/rack/steel,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"mv" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"mx" = (
+/obj/machinery/light,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"mU" = (
+/obj/effect/landmark/map_data/arynthilake,
+/turf/unsimulated/mineral,
+/area/gateway/arynthilake)
+"mX" = (
+/obj/machinery/door/airlock/engineering,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/engine)
+"nd" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor,
+/area/gateway/arynthilake/engine)
+"ng" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/dome)
+"nk" = (
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"nq" = (
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/obj/structure/cable/green{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"nB" = (
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"nC" = (
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/dome)
+"nF" = (
+/turf/unsimulated/mineral,
+/area/gateway/arynthilake)
+"nH" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"nK" = (
+/obj/structure/table/steel,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"nP" = (
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"nT" = (
+/obj/structure/table/steel_reinforced,
+/obj/machinery/reagentgrinder,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"nZ" = (
+/turf/simulated/floor/outdoors/newdirt{
+ outdoors = 0
+ },
+/area/gateway/arynthilake/caves)
+"om" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 5
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"oz" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/structure/table/wooden_reinforced,
+/obj/item/device/flashlight/lamp/green,
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"oH" = (
+/obj/structure/table/darkglass,
+/obj/item/weapon/paper_bin{
+ pixel_x = -3;
+ pixel_y = 9
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"oI" = (
+/turf/simulated/floor/carpet/bcarpet{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"oQ" = (
+/obj/structure/barricade,
+/turf/simulated/floor,
+/area/gateway/arynthilake/oldcabin)
+"oS" = (
+/turf/simulated/floor/outdoors/grass{
+ outdoors = 0
+ },
+/area/gateway/arynthilake/caves)
+"oW" = (
+/obj/structure/girder,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"oX" = (
+/obj/structure/cable/green{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"pa" = (
+/obj/machinery/gateway/centeraway/mcguffin{
+ pixel_y = 6;
+ plane = -24
+ },
+/obj/effect/map_effect/perma_light/gateway,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"pl" = (
+/obj/item/device/analyzer/plant_analyzer,
+/obj/item/weapon/material/minihoe,
+/obj/item/weapon/material/minihoe,
+/obj/structure/closet,
+/obj/item/weapon/reagent_containers/glass/bucket,
+/obj/item/weapon/reagent_containers/glass/bucket,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"pu" = (
+/obj/structure/table/darkglass,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"pI" = (
+/obj/structure/mopbucket,
+/obj/item/weapon/mop,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"pM" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"pS" = (
+/obj/random/awayloot,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"pT" = (
+/obj/structure/bed/double/padded,
+/obj/item/weapon/bedsheet/bluedouble,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"qy" = (
+/obj/structure/table/fancyblack,
+/obj/item/weapon/flame/candle/candelabra,
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"qG" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"qR" = (
+/obj/item/weapon/storage/box/sinpockets,
+/obj/structure/table/rack/steel,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"qS" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/structure/table/wooden_reinforced,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"qZ" = (
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"rj" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"rl" = (
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/oldcabin)
+"rm" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/beach/sand/desert,
+/area/gateway/arynthilake/caves)
+"rt" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"rz" = (
+/turf/simulated/floor/beach/sand/desert,
+/area/gateway/arynthilake/caves)
+"rF" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/reference/ThermodynamicReactionsandResearch,
+/obj/item/weapon/book/bundle/custom_library/reference/fbpandprostheticmaintenance,
+/obj/item/weapon/book/custom_library/reference/fistfulofd6splayersguide,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"rI" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/gateway/brass{
+ density = 0;
+ dir = 9;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"rS" = (
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake/caves)
+"sg" = (
+/obj/structure/table/sifwooden_reinforced,
+/obj/item/weapon/paper_bin{
+ pixel_x = 5;
+ pixel_y = 9
+ },
+/obj/item/weapon/pen{
+ pixel_x = -4;
+ pixel_y = -2
+ },
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/arynthilake/dome)
+"si" = (
+/obj/structure/table,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"ss" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/awayloot,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"sA" = (
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/dome)
+"sP" = (
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake)
+"sY" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/reference/recyclingprocedures,
+/obj/item/weapon/book/custom_library/reference/securityguidelines,
+/obj/item/weapon/book/custom_library/reference/spacesurvivalguidedespressurization,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"tk" = (
+/turf/simulated/floor/outdoors/sidewalk/side,
+/area/gateway/arynthilake/engine)
+"tu" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/religious/zoroastrianism,
+/obj/item/weapon/book/custom_library/religious/feastofkubera,
+/turf/simulated/floor/wood{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"ty" = (
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"tz" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 8
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"uj" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/dome)
+"um" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"ur" = (
+/turf/simulated/floor/tiled/eris/techmaint_cargo{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"uB" = (
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"uD" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 4
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"uI" = (
+/turf/simulated/floor/tiled/eris{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/engine)
+"uQ" = (
+/obj/structure/railing,
+/turf/simulated/open,
+/area/gateway/arynthilake/engine)
+"vv" = (
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"vz" = (
+/obj/structure/barricade,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"vB" = (
+/obj/machinery/light,
+/obj/item/device/flash,
+/obj/item/weapon/stamp,
+/obj/structure/closet/walllocker{
+ dir = 8;
+ pixel_x = -27
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"vF" = (
+/obj/structure/toilet{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/dome)
+"vH" = (
+/obj/structure/bed/chair/sofa/brown/left{
+ dir = 8
+ },
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"vL" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake)
+"vN" = (
+/obj/machinery/light,
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 4
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10,
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"vS" = (
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/effect/landmark/mcguffin_spawner,
+/obj/structure/closet/walllocker{
+ dir = 4;
+ pixel_x = 27
+ },
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"wa" = (
+/obj/structure/railing{
+ dir = 1
+ },
+/turf/simulated/open,
+/area/gateway/arynthilake/engine)
+"wL" = (
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"wM" = (
+/obj/structure/table/steel,
+/turf/simulated/floor/tiled{
+ edge_blending_priority = 1;
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"xd" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"xj" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/tiled/eris{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/engine)
+"xk" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/dome)
+"xm" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/structure/reagent_dispensers/water_cooler/full{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"xr" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"xz" = (
+/obj/machinery/seed_extractor,
+/turf/simulated/floor/tiled/eris/techmaint_cargo{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"xC" = (
+/obj/structure/bed/chair/comfy/blue,
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"xN" = (
+/obj/structure/table/darkglass,
+/obj/item/device/flashlight/lamp/green,
+/obj/random/snack,
+/obj/random/snack,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"xQ" = (
+/obj/structure/bed/pod,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/wood/sif,
+/area/gateway/arynthilake/oldcabin)
+"xT" = (
+/obj/structure/bed/chair/wood/wings{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"xW" = (
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"yt" = (
+/obj/structure/table/wooden_reinforced,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"yv" = (
+/obj/effect/floor_decal/industrial/warning/dust,
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"yY" = (
+/obj/structure/table/steel_reinforced,
+/obj/machinery/microwave,
+/turf/simulated/floor/tiled/eris/cafe{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"yZ" = (
+/turf/simulated/floor/outdoors/grass/forest{
+ outdoors = 0
+ },
+/area/gateway/arynthilake)
+"zk" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"zo" = (
+/turf/simulated/floor/outdoors/sidewalk/slab,
+/area/gateway/arynthilake/dome)
+"zp" = (
+/turf/simulated/floor/water,
+/area/gateway/arynthilake/caves)
+"zs" = (
+/turf/simulated/mineral/ignore_cavegen,
+/area/gateway/arynthilake/caveruins)
+"zt" = (
+/obj/structure/table/rack,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"zI" = (
+/obj/structure/catwalk,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"zU" = (
+/obj/structure/table/marble,
+/obj/machinery/door/blast/gate/thin{
+ dir = 2;
+ id = "grasslandkitchen";
+ layer = 3.3
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"zW" = (
+/obj/structure/bed/chair{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"Ao" = (
+/obj/structure/filingcabinet/chestdrawer,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"Ar" = (
+/obj/structure/table/wooden_reinforced,
+/obj/item/weapon/storage/box/cups,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"AA" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/structure/bed/chair/sofa/brown,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"AI" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/outdoors/newdirt{
+ outdoors = 0
+ },
+/area/gateway/arynthilake/caves)
+"AM" = (
+/obj/machinery/chem_master/condimaster,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"AO" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/dome)
+"AR" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/gateway/brass{
+ density = 0;
+ dir = 1;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"Bg" = (
+/obj/machinery/telecomms/relay/preset/tether,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Bz" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 1
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"BH" = (
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"BY" = (
+/obj/structure/table/wooden_reinforced,
+/obj/random/snack,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"Cr" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"CD" = (
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake)
+"CK" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/fiction/ghostship,
+/obj/item/weapon/book/manual/security_space_law,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"CM" = (
+/obj/structure/table/standard{
+ color = "#b8e4ff"
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"CY" = (
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 9
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 10
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"Dk" = (
+/obj/machinery/door/airlock/sandstone{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/dome)
+"Dy" = (
+/obj/structure/bed/chair/sofa/brown,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"DH" = (
+/turf/simulated/floor/wood/sif/broken,
+/area/gateway/arynthilake/oldcabin)
+"DR" = (
+/obj/structure/bed/pod,
+/obj/structure/curtain/black,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"DX" = (
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake)
+"Ev" = (
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"Ew" = (
+/obj/machinery/vending/dinnerware{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/cafe{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"EG" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake/dome)
+"EP" = (
+/obj/machinery/door/airlock/sandstone{
+ name = "Automatic Door"
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/dome)
+"EX" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/fiction/apurrrrfectman,
+/obj/item/weapon/book/bundle/custom_library/fiction/beyondthedoor,
+/obj/item/weapon/book/bundle/custom_library/fiction/chroniclesofmargatavol1,
+/obj/item/weapon/book/bundle/custom_library/fiction/coldmountain,
+/obj/item/weapon/book/bundle/custom_library/fiction/ghostship,
+/obj/item/weapon/book/custom_library/fiction/blacksmithandkinglybloke,
+/obj/item/weapon/book/custom_library/fiction/irishairmanforseesdeath,
+/obj/item/weapon/book/custom_library/fiction/myrock,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"Fc" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake)
+"Fg" = (
+/obj/structure/ladder,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"Fi" = (
+/obj/structure/bed/chair/wood/wings{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"Fp" = (
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 5
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 6
+ },
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"Ft" = (
+/turf/simulated/floor/tiled/eris/white,
+/area/gateway/arynthilake/dome)
+"Fx" = (
+/obj/structure/table/wooden_reinforced,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"FA" = (
+/obj/structure/table/darkglass,
+/obj/item/weapon/pen,
+/obj/item/weapon/folder/red,
+/obj/item/weapon/paper_bin{
+ pixel_x = -3;
+ pixel_y = 9
+ },
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"FD" = (
+/obj/machinery/shower{
+ dir = 1
+ },
+/obj/structure/curtain/open/shower,
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"FH" = (
+/turf/simulated/floor,
+/area/gateway/arynthilake/oldcabin)
+"FI" = (
+/obj/structure/table/woodentable,
+/obj/item/weapon/lampshade,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"Gg" = (
+/obj/structure/bed/chair{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"Gy" = (
+/obj/machinery/power/apc/alarms_hidden{
+ locked = 0;
+ operating = 0;
+ pixel_y = -22;
+ req_access = list();
+ start_charge = 0
+ },
+/obj/structure/cable/green{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/gateway)
+"GO" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tech_supply,
+/obj/random/maintenance/engineering,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Hm" = (
+/obj/machinery/light,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"Hp" = (
+/obj/machinery/door/airlock,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"Hw" = (
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"HK" = (
+/obj/machinery/light,
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/dome)
+"HN" = (
+/obj/random/mob/semirandom_mob_spawner/monster/d,
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"Ia" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor,
+/area/gateway/arynthilake/dome)
+"Ic" = (
+/obj/structure/table/darkglass,
+/obj/item/weapon/pen,
+/obj/item/weapon/folder/blue,
+/obj/item/weapon/paper_bin{
+ pixel_x = -3;
+ pixel_y = 9
+ },
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"If" = (
+/obj/structure/table/marble,
+/obj/machinery/door/blast/gate/thin{
+ dir = 2;
+ id = "grasslandkitchen";
+ layer = 3.3
+ },
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"Ih" = (
+/turf/simulated/wall/wood,
+/area/gateway/arynthilake/caveruins)
+"Ix" = (
+/turf/simulated/wall/shull,
+/area/gateway/arynthilake/gateway)
+"II" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 9
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"IP" = (
+/obj/machinery/seed_storage/garden,
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"IR" = (
+/obj/structure/table/darkglass,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"IY" = (
+/obj/structure/bed/chair/wood{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"IZ" = (
+/obj/structure/table/wooden_reinforced,
+/obj/item/weapon/reagent_containers/glass/bucket,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"Jn" = (
+/obj/machinery/door/airlock,
+/obj/structure/catwalk,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"Jq" = (
+/turf/simulated/floor/tiled/eris/white{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"Jv" = (
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 1
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 8
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"JB" = (
+/obj/item/weapon/lampshade,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"JK" = (
+/obj/structure/table/marble,
+/obj/machinery/door/blast/gate/thin{
+ dir = 2;
+ id = "grasslandkitchen";
+ layer = 3.3
+ },
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/machinery/chemical_dispenser/bar_soft/full{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"JT" = (
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"JW" = (
+/obj/machinery/shower{
+ pixel_y = 6
+ },
+/obj/structure/curtain/open/shower,
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"JY" = (
+/obj/structure/table,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"Kd" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"Kg" = (
+/obj/structure/railing{
+ dir = 8
+ },
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"Km" = (
+/obj/structure/bed/pod,
+/obj/structure/curtain/black,
+/obj/random/awayloot,
+/turf/simulated/floor/carpet/sblucarpet,
+/area/gateway/arynthilake/dome)
+"Kp" = (
+/obj/structure/table/darkglass,
+/obj/item/device/flashlight/lamp/green,
+/obj/random/awayloot,
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"Kw" = (
+/turf/simulated/floor/tiled/eris/white/brown_platform{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"Ky" = (
+/turf/simulated/floor/outdoors/sidewalk,
+/area/gateway/arynthilake/dome)
+"Kz" = (
+/obj/structure/table/glass,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"KF" = (
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 1;
+ locked = 0;
+ operating = 0;
+ pixel_y = 22;
+ req_access = list();
+ start_charge = 0
+ },
+/obj/structure/cable/green{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"KI" = (
+/obj/machinery/door/airlock/glass_centcom{
+ hackProof = 1;
+ locked = 1
+ },
+/turf/simulated/floor/plating,
+/area/gateway/arynthilake/gateway)
+"KK" = (
+/turf/simulated/floor/carpet/sblucarpet{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"KN" = (
+/obj/structure/flora/tree/bigtree,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"KQ" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/caves)
+"KY" = (
+/obj/structure/filingcabinet/filingcabinet,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Li" = (
+/obj/structure/table/darkglass,
+/obj/item/weapon/pen,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Lx" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"LF" = (
+/obj/machinery/gateway/brass{
+ density = 0;
+ dir = 5;
+ pixel_y = 6;
+ plane = -24
+ },
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"LI" = (
+/obj/structure/closet/coffin,
+/obj/item/stack/material/steel{
+ amount = 50
+ },
+/obj/random/awayloot,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"LR" = (
+/obj/random/mob/semirandom_mob_spawner/monster/f,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"LY" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/c,
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake)
+"LZ" = (
+/obj/machinery/light,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"Ma" = (
+/obj/structure/table/steel,
+/obj/random/firstaid,
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"Mk" = (
+/obj/structure/table/standard{
+ color = "#ffb8b8"
+ },
+/obj/item/weapon/folder/red,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"Ml" = (
+/obj/structure/table/steel,
+/obj/item/roller,
+/turf/simulated/floor/tiled{
+ edge_blending_priority = 1;
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"Mz" = (
+/obj/machinery/light,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"MD" = (
+/obj/structure/table/rack/steel,
+/obj/item/clothing/shoes/laceup,
+/obj/item/clothing/shoes/laceup/brown,
+/obj/item/clothing/shoes/laceup/grey,
+/obj/item/clothing/shoes/boots/jackboots/toeless,
+/obj/item/clothing/shoes/boots/winter,
+/obj/item/clothing/shoes/boots/winter/security,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"MJ" = (
+/obj/structure/table/sifwooden_reinforced,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/arynthilake/dome)
+"MO" = (
+/obj/structure/flora/pottedplant/orientaltree,
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"MP" = (
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1
+ },
+/area/gateway/arynthilake/gateway)
+"MQ" = (
+/obj/structure/sink{
+ dir = 8;
+ pixel_x = -13;
+ plane = -34
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"MZ" = (
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake/dome)
+"Nb" = (
+/obj/structure/flora/pottedplant/unusual,
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/carpet/bcarpet,
+/area/gateway/arynthilake/dome)
+"Nh" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/nonfiction/viabilityofcorporategov,
+/obj/item/weapon/book/custom_library/nonfiction/freesirisailightbulbs,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"Nl" = (
+/obj/structure/closet,
+/obj/item/clothing/under/color/darkred,
+/obj/item/clothing/under/color/lightred,
+/obj/item/clothing/under/croptop/red,
+/obj/item/clothing/under/cuttop/red,
+/obj/item/clothing/under/dress/darkred,
+/obj/item/clothing/under/dress/cropdress,
+/obj/item/clothing/under/dress/blacktango/alt,
+/obj/item/clothing/under/dress/blacktango,
+/obj/item/clothing/under/dress/festivedress,
+/obj/item/clothing/under/dress/dress_saloon,
+/obj/item/clothing/under/dress/lilacdress,
+/obj/item/clothing/under/dress/littleblackdress,
+/obj/item/clothing/under/dress/qipao/red,
+/obj/item/clothing/under/dress/red_swept_dress,
+/obj/item/clothing/under/dress/redeveninggown,
+/obj/item/clothing/under/dress/sailordress,
+/obj/item/clothing/under/shorts/red,
+/obj/item/clothing/under/skirt/red,
+/obj/item/clothing/under/suit_jacket/burgundy,
+/obj/item/clothing/under/wedding/bride_red,
+/obj/item/clothing/gloves/red,
+/obj/item/clothing/gloves/boxing,
+/obj/item/clothing/gloves/black,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"NI" = (
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"NR" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"NS" = (
+/obj/random/mob/semirandom_mob_spawner/fish/d,
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"NV" = (
+/obj/structure/table/bench/marble,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/white/techfloor,
+/area/gateway/arynthilake/dome)
+"NX" = (
+/obj/random/mob/semirandom_mob_spawner/monster/e,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"Ob" = (
+/obj/structure/catwalk,
+/obj/machinery/light/flamp/noshade,
+/turf/simulated/floor/plating/external,
+/area/gateway/arynthilake/caveruins)
+"Of" = (
+/obj/random/awayloot,
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"Oo" = (
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"Oz" = (
+/obj/structure/flora/tree/bigtree,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake/dome)
+"OF" = (
+/obj/fiftyspawner/log,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake)
+"OK" = (
+/obj/structure/noticeboard,
+/turf/simulated/wall,
+/area/gateway/arynthilake)
+"OM" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"Pb" = (
+/turf/simulated/open,
+/area/gateway/arynthilake/engine)
+"Pg" = (
+/obj/machinery/vending/hydronutrients,
+/turf/simulated/floor/tiled/eris/techmaint_cargo{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"Pk" = (
+/obj/structure/catwalk,
+/obj/structure/railing{
+ dir = 4
+ },
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake)
+"Pn" = (
+/obj/structure/table/bench/marble,
+/turf/simulated/floor/tiled/eris/white/techfloor,
+/area/gateway/arynthilake/dome)
+"Pt" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/manual/security_space_law,
+/obj/item/weapon/book/bundle/custom_library/nonfiction/viabilityofcorporategov,
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"Pv" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/manual,
+/obj/item/weapon/book/manual/anomaly_spectroscopy,
+/obj/item/weapon/book/manual/anomaly_testing,
+/obj/item/weapon/book/manual/atmospipes,
+/obj/item/weapon/book/manual/bar_guide,
+/obj/item/weapon/book/manual/barman_recipes,
+/obj/item/weapon/book/manual/chef_recipes,
+/obj/item/weapon/book/manual/command_guide,
+/obj/item/weapon/book/manual/cook_guide,
+/obj/item/weapon/book/manual/detective,
+/obj/item/weapon/book/manual/engineering_construction,
+/obj/item/weapon/book/manual/engineering_guide,
+/obj/item/weapon/book/manual/engineering_hacking,
+/obj/item/weapon/book/manual/engineering_particle_accelerator,
+/obj/item/weapon/book/manual/engineering_singularity_safety,
+/obj/item/weapon/book/manual/evaguide,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"Py" = (
+/obj/structure/curtain/open/shower,
+/obj/machinery/shower{
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"PF" = (
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/arynthilake/dome)
+"PL" = (
+/obj/machinery/portable_atmospherics/hydroponics,
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"PQ" = (
+/obj/machinery/button/remote/blast_door{
+ id = "grasslandkitchen";
+ name = "Kitchen shutters";
+ pixel_x = 26;
+ pixel_y = 28
+ },
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"PW" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/dome)
+"PX" = (
+/obj/structure/bed/chair{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"Qi" = (
+/obj/structure/table/darkglass,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Qm" = (
+/turf/simulated/wall/r_wall,
+/area/gateway/arynthilake/dome)
+"Qw" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"QA" = (
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"QL" = (
+/obj/structure/bed,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"QR" = (
+/obj/machinery/gateway/brass{
+ dir = 8;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"Rb" = (
+/obj/structure/sink{
+ dir = 8;
+ pixel_x = -13;
+ plane = -34
+ },
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"Rc" = (
+/obj/structure/bonfire,
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake)
+"Rk" = (
+/turf/simulated/floor/carpet/blucarpet{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"Rs" = (
+/obj/machinery/light,
+/obj/item/device/flash,
+/obj/item/weapon/stamp,
+/obj/effect/landmark/mcguffin_spawner,
+/obj/structure/closet/walllocker{
+ dir = 4;
+ pixel_x = 27
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"Rx" = (
+/obj/structure/bed/chair/office/light{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"RK" = (
+/obj/structure/table/fancyblack,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"RX" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/fiction/manfromsnowyriver,
+/obj/item/weapon/book/bundle/custom_library/fiction/metalglen,
+/obj/item/weapon/book/bundle/custom_library/fiction/poemsforarainyday,
+/obj/item/weapon/book/bundle/custom_library/fiction/raissue142,
+/obj/item/weapon/book/bundle/custom_library/fiction/raissue147,
+/obj/item/weapon/book/bundle/custom_library/fiction/silence,
+/obj/item/weapon/book/bundle/custom_library/fiction/taleoftherainbowcat,
+/obj/item/weapon/book/custom_library/fiction/starsandsometimesfallingones,
+/obj/item/weapon/book/custom_library/fiction/truelovehathmyheart,
+/obj/item/weapon/book/custom_library/fiction/woodysgotwood,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"Sc" = (
+/obj/structure/bed/chair/office/light,
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"Si" = (
+/obj/structure/lattice,
+/turf/simulated/open,
+/area/gateway/arynthilake/caves)
+"Sk" = (
+/obj/structure/cable/green,
+/obj/machinery/power/apc/alarms_hidden{
+ locked = 0;
+ operating = 0;
+ pixel_y = -22;
+ req_access = list();
+ start_charge = 0
+ },
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/underground/maintenance)
+"Sq" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/bundle/custom_library/nonfiction/riseandfallofpersianempire,
+/obj/item/weapon/book/bundle/custom_library/nonfiction/skrelliancastesystem,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"Sr" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/outdoors/grass,
+/area/gateway/arynthilake/dome)
+"St" = (
+/obj/structure/table/rack,
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"SG" = (
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 5
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 6
+ },
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"SP" = (
+/obj/structure/table/rack,
+/obj/machinery/light/small,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Ta" = (
+/obj/random/mob/semirandom_mob_spawner/monster/e,
+/turf/simulated/floor/beach/sand/desert,
+/area/gateway/arynthilake/caves)
+"Ty" = (
+/turf/simulated/floor/carpet{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"TD" = (
+/obj/structure/bed/chair/sofa/brown/corner{
+ dir = 1
+ },
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"TY" = (
+/turf/simulated/floor/tiled/eris/white/techfloor,
+/area/gateway/arynthilake/dome)
+"Ui" = (
+/obj/structure/cable/green{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Uj" = (
+/obj/effect/landmark/mcguffin_spawner,
+/obj/structure/bed/chair/sofa/brown/corner,
+/turf/simulated/floor/carpet,
+/area/gateway/arynthilake/dome)
+"Uk" = (
+/obj/machinery/shower{
+ pixel_y = 6
+ },
+/obj/structure/curtain/open/shower,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/dome)
+"Uq" = (
+/obj/random/mob/semirandom_mob_spawner/monster/b,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/caves)
+"UA" = (
+/turf/simulated/wall/sifwood,
+/area/gateway/arynthilake/oldcabin)
+"UH" = (
+/obj/machinery/door/airlock/glass,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/engine)
+"UI" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 9
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"UL" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/manual/anomaly_spectroscopy,
+/obj/item/weapon/book/manual/anomaly_testing,
+/obj/item/weapon/book/manual/atmospipes,
+/obj/item/weapon/book/manual/bar_guide,
+/obj/item/weapon/book/manual/barman_recipes,
+/obj/item/weapon/book/manual/chef_recipes,
+/obj/item/weapon/book/manual/command_guide,
+/obj/item/weapon/book/manual/cook_guide,
+/obj/item/weapon/book/manual/detective,
+/obj/item/weapon/book/manual/engineering_construction,
+/obj/item/weapon/book/manual/engineering_guide,
+/obj/item/weapon/book/manual/engineering_hacking,
+/obj/item/weapon/book/manual/engineering_particle_accelerator,
+/obj/item/weapon/book/manual/engineering_singularity_safety,
+/obj/item/weapon/book/manual/evaguide,
+/obj/item/weapon/book/manual/excavation,
+/obj/item/weapon/book/manual/hydroponics_pod_people,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"UU" = (
+/obj/machinery/door/airlock/freezer{
+ name = "Automatic Door";
+ req_one_access = list(10)
+ },
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/engine)
+"UY" = (
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/medical,
+/obj/random/maintenance/medical,
+/obj/random/maintenance/medical,
+/obj/effect/landmark/mcguffin_spawner,
+/obj/structure/closet/walllocker{
+ dir = 4;
+ pixel_x = 27
+ },
+/turf/simulated/floor/tiled/eris/steel/gray_platform,
+/area/gateway/arynthilake/dome)
+"UZ" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"Vb" = (
+/obj/structure/toilet{
+ dir = 4
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"Vh" = (
+/obj/structure/bed/chair/office/dark{
+ dir = 8
+ },
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Vm" = (
+/obj/structure/catwalk,
+/obj/structure/railing{
+ dir = 1
+ },
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake/caveruins)
+"Vo" = (
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"Vr" = (
+/obj/structure/table/standard{
+ color = "#ffb8b8"
+ },
+/obj/item/weapon/paper_bin{
+ pixel_x = -3;
+ pixel_y = 9
+ },
+/obj/item/weapon/pen,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"Vy" = (
+/obj/structure/table/standard{
+ color = "#ffb8b8"
+ },
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"VA" = (
+/obj/structure/bed/chair/wood,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"VN" = (
+/obj/structure/filingcabinet,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"VQ" = (
+/obj/structure/flora/tree/jungle,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/arynthilake)
+"Wf" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Wt" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/book/manual/chef_recipes,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled/eris/cafe,
+/area/gateway/arynthilake/dome)
+"Wu" = (
+/obj/structure/catwalk,
+/turf/simulated/floor/outdoors/newdirt,
+/area/gateway/arynthilake/caveruins)
+"Ww" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"WA" = (
+/obj/structure/cable/green{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"WL" = (
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/arynthilake/dome)
+"Xi" = (
+/obj/structure/table/wooden_reinforced,
+/obj/random/awayloot,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/white/brown_platform,
+/area/gateway/arynthilake/dome)
+"Xo" = (
+/turf/simulated/floor/outdoors/sidewalk,
+/area/gateway/arynthilake)
+"Xr" = (
+/obj/machinery/appliance/cooker/fryer,
+/turf/simulated/floor/tiled/eris/cafe{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"Xx" = (
+/obj/structure/cable/green{
+ d2 = 2;
+ icon_state = "0-2"
+ },
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 1;
+ locked = 0;
+ operating = 0;
+ pixel_y = 22;
+ req_access = list();
+ start_charge = 0
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/dome)
+"Xz" = (
+/obj/structure/bed/chair/wood/wings{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/dark/brown_platform,
+/area/gateway/arynthilake/dome)
+"XL" = (
+/obj/random/awayloot,
+/turf/simulated/floor/wood/sif,
+/area/gateway/arynthilake/oldcabin)
+"XS" = (
+/obj/structure/table/woodentable,
+/obj/item/stack/material/wood{
+ amount = 50
+ },
+/obj/random/awayloot,
+/obj/random/awayloot,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/caveruins)
+"XV" = (
+/obj/structure/table/darkglass,
+/obj/machinery/recharger,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Yf" = (
+/obj/machinery/portable_atmospherics/hydroponics,
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/techmaint_cargo,
+/area/gateway/arynthilake/dome)
+"Yh" = (
+/obj/structure/curtain/open/shower,
+/obj/machinery/shower{
+ dir = 1
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"YA" = (
+/obj/structure/bookcase,
+/obj/item/weapon/book/custom_library/religious/storyoflordganesha,
+/obj/item/weapon/book/custom_library/religious/sungoddessofkorea,
+/obj/item/weapon/book/custom_library/religious/wayofbleedingswan,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"YQ" = (
+/obj/effect/floor_decal/industrial/warning/dust{
+ dir = 6
+ },
+/turf/simulated/floor/reinforced{
+ outdoors = 1
+ },
+/area/gateway/arynthilake)
+"YY" = (
+/obj/random/mob/semirandom_mob_spawner/fish/c,
+/turf/simulated/floor/water,
+/area/gateway/arynthilake)
+"Za" = (
+/turf/simulated/floor/outdoors/sidewalk/slab,
+/area/gateway/arynthilake)
+"Zb" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/arynthilake/gateway)
+"Zg" = (
+/obj/random/mob/semirandom_mob_spawner/robot,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"Zn" = (
+/obj/structure/bed/double/padded,
+/obj/item/weapon/bedsheet/reddouble,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/carpet/blucarpet,
+/area/gateway/arynthilake/dome)
+"ZA" = (
+/obj/structure/bookcase,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"ZE" = (
+/obj/structure/cable/green{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+"ZN" = (
+/obj/structure/table/rack/steel,
+/obj/item/clothing/shoes/footwraps,
+/obj/item/clothing/shoes/heels,
+/obj/item/clothing/shoes/hitops/blue,
+/obj/item/clothing/shoes/hitops/red,
+/obj/item/clothing/shoes/black/cuffs/blue,
+/obj/item/clothing/shoes/black/cuffs/red,
+/obj/item/clothing/shoes/boots/cowboy/snakeskin,
+/obj/item/clothing/shoes/boots/workboots/toeless,
+/turf/simulated/floor/wood,
+/area/gateway/arynthilake/dome)
+"ZV" = (
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 10
+ },
+/obj/effect/floor_decal/steeldecal/steel_decals10{
+ dir = 9
+ },
+/turf/simulated/floor/tiled{
+ icon_state = "techmaint"
+ },
+/area/gateway/arynthilake/dome)
+"ZX" = (
+/obj/machinery/portable_atmospherics/hydroponics,
+/turf/simulated/floor/tiled/eris/techmaint_cargo{
+ outdoors = 1
+ },
+/area/gateway/arynthilake/dome)
+"ZY" = (
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/floor/tiled/eris,
+/area/gateway/arynthilake/engine)
+
+(1,1,1) = {"
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+mU
+"}
+(2,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+eN
+nF
+"}
+(3,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+fC
+nF
+"}
+(4,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+CD
+CD
+CD
+CD
+CD
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(5,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+sP
+sP
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(6,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+CD
+CD
+CD
+CD
+CD
+ek
+ek
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+sP
+Vo
+KN
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(7,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+CD
+CD
+CD
+CD
+CD
+ek
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+sP
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(8,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(9,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+CD
+CD
+CD
+CD
+LY
+CD
+CD
+CD
+CD
+sP
+sP
+CD
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(10,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+sP
+CD
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(11,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+fs
+fs
+fs
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+sP
+sP
+sP
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(12,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+fs
+fs
+eq
+fs
+fs
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+CD
+CD
+CD
+sP
+CD
+CD
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(13,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+fs
+fs
+fs
+fs
+fs
+fs
+Xx
+mp
+Sk
+fs
+fs
+fs
+fs
+fs
+fs
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+CD
+CD
+CD
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+LY
+CD
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(14,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+fs
+GO
+hb
+GO
+fs
+nk
+nk
+WA
+nk
+nk
+fs
+GO
+ei
+GO
+fs
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+CD
+CD
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+cN
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(15,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+fs
+St
+mv
+nk
+mX
+Ui
+nB
+nq
+nB
+ZE
+mX
+nk
+mv
+SP
+fs
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+cN
+Vo
+Vo
+Vo
+Vo
+cN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+CD
+CD
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(16,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+fs
+zt
+nk
+nk
+fs
+oX
+nk
+nk
+nk
+jh
+fs
+nk
+nk
+zt
+fs
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+CD
+sP
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+cN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(17,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+fs
+fs
+UU
+fs
+fs
+KF
+wa
+Pb
+uQ
+Gy
+fs
+fs
+UU
+fs
+fs
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(18,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Vo
+fs
+Kz
+nk
+nk
+fs
+nk
+wa
+Pb
+uQ
+nk
+fs
+nk
+nk
+Kz
+fs
+sP
+sP
+sP
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+ek
+ek
+ek
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(19,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Vo
+nd
+nk
+nk
+nk
+fs
+ss
+wa
+Pb
+uQ
+Bg
+fs
+nk
+ZY
+nk
+nd
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+sP
+Vo
+Vo
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+ek
+ek
+sP
+ek
+ek
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+CD
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(20,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Vo
+nd
+uI
+nk
+nk
+fs
+fs
+fs
+fs
+fs
+fs
+fs
+nk
+nk
+uI
+nd
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Hw
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+cN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+rt
+rt
+CD
+CD
+sP
+sP
+CD
+CD
+CD
+CD
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(21,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+fs
+Wf
+nk
+nk
+nk
+IR
+KY
+nk
+nk
+nk
+nk
+nk
+nk
+Mz
+fs
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Hw
+Vo
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+CD
+CD
+sP
+CD
+CD
+CD
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(22,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+nd
+uI
+nk
+nk
+nk
+Qi
+nk
+Vh
+nk
+pu
+nk
+nk
+nk
+uI
+nd
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+cN
+Vo
+Vo
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+cN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+QA
+QA
+QA
+rt
+rt
+CD
+sP
+CD
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(23,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+nd
+uI
+nk
+ZY
+nk
+XV
+oH
+Li
+IR
+IR
+nk
+nk
+nk
+uI
+nd
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+rt
+rt
+rt
+rt
+rt
+QA
+QA
+QA
+rt
+rt
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+rt
+rt
+CD
+sP
+sP
+CD
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(24,1,1) = {"
+nF
+ek
+ek
+Vo
+Vo
+Vo
+fs
+xj
+nk
+nk
+nk
+nk
+nk
+nk
+nk
+nk
+nk
+nk
+nk
+uI
+fs
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+Hw
+ek
+ek
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+kE
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(25,1,1) = {"
+nF
+ek
+ek
+Vo
+Vo
+Vo
+fs
+nd
+fs
+uI
+rj
+nk
+nk
+Zg
+nk
+nk
+rj
+xj
+fs
+nd
+fs
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+sP
+sP
+sP
+kE
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(26,1,1) = {"
+nF
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+fs
+nd
+fs
+nk
+uI
+nk
+uI
+nk
+fs
+nd
+fs
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+cN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Uq
+Hw
+Hw
+ek
+Hw
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(27,1,1) = {"
+nF
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+fs
+fs
+UH
+fs
+UH
+fs
+fs
+sP
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+rt
+rt
+QA
+gs
+QA
+QA
+gs
+QA
+QA
+QA
+cQ
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(28,1,1) = {"
+nF
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+tk
+hN
+tk
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+cQ
+QA
+QA
+rt
+rt
+sP
+sP
+sP
+kE
+sP
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(29,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+hl
+Za
+hl
+Vo
+sP
+DX
+sP
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+bs
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+cN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+sP
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(30,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+CD
+CD
+CD
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+ek
+ek
+ek
+Hw
+Hw
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+sP
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+gs
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(31,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+CD
+CD
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Hw
+Hw
+Uq
+ek
+ek
+ek
+Hw
+Hw
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+CD
+CD
+Vo
+sP
+rt
+rt
+QA
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+OF
+CD
+CD
+sP
+sP
+sP
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(32,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Oo
+sP
+sP
+sP
+sP
+Vo
+CD
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+ek
+ek
+ek
+Hw
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+sP
+sP
+Vo
+sP
+CD
+rt
+rt
+rt
+QA
+QA
+gs
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+sP
+CD
+CD
+CD
+CD
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(33,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+ek
+ek
+pS
+Hw
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+cN
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+CD
+CD
+CD
+Rc
+CD
+CD
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(34,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+Vo
+CD
+CD
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+CD
+LY
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+rt
+CD
+CD
+CD
+CD
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(35,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Uq
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+CD
+sP
+sP
+CD
+rt
+rt
+rt
+rt
+rt
+QA
+QA
+eg
+QA
+QA
+QA
+QA
+rt
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+rt
+CD
+CD
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(36,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+CD
+CD
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+CD
+rt
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+QA
+QA
+QA
+rt
+rt
+rt
+rt
+CD
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(37,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Hw
+Hw
+Uq
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+CD
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+CD
+sP
+sP
+CD
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+CD
+CD
+CD
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(38,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+cN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+rt
+rt
+QA
+QA
+QA
+gs
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+QA
+QA
+eg
+QA
+QA
+QA
+rt
+rt
+CD
+sP
+CD
+CD
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(39,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+CD
+CD
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+gs
+QA
+QA
+QA
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+sP
+sP
+sP
+sP
+CD
+sP
+sP
+sP
+Vo
+Vo
+Vo
+CD
+CD
+CD
+Vo
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(40,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+CD
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+sP
+sP
+CD
+LY
+sP
+sP
+CD
+CD
+sP
+CD
+sP
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(41,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+sP
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+sP
+sP
+CD
+CD
+sP
+sP
+CD
+sP
+CD
+CD
+sP
+Vo
+CD
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(42,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+sP
+rt
+QA
+eg
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+sP
+sP
+CD
+CD
+sP
+CD
+CD
+sP
+sP
+CD
+Vo
+CD
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(43,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+sP
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+sP
+CD
+CD
+CD
+sP
+CD
+sP
+sP
+CD
+Vo
+CD
+CD
+CD
+Vo
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(44,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+CD
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+sP
+NR
+sP
+rt
+QA
+QA
+QA
+QA
+QA
+eg
+QA
+rt
+rt
+sP
+CD
+CD
+CD
+CD
+CD
+sP
+Vo
+Vo
+CD
+CD
+CD
+CD
+Vo
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(45,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+CD
+rt
+rt
+rt
+QA
+QA
+eg
+QA
+QA
+QA
+rt
+sP
+sP
+sP
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+sP
+CD
+CD
+sP
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(46,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+cN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+CD
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+CD
+sP
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+Vo
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(47,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Oo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+pS
+LR
+Hw
+Hw
+Hw
+pS
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+CD
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+rt
+CD
+sP
+CD
+CD
+sP
+sP
+Vo
+LY
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(48,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+nZ
+AI
+nZ
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+CD
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+QA
+QA
+rt
+eg
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+CD
+CD
+CD
+CD
+Vo
+CD
+Vo
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(49,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+nZ
+nZ
+nZ
+nZ
+LR
+Hw
+ek
+ek
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+CD
+rt
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+CD
+CD
+Vo
+Vo
+CD
+CD
+Vo
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(50,1,1) = {"
+nF
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+nZ
+nZ
+nZ
+nZ
+Hw
+Hw
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+sP
+sP
+sP
+sP
+CD
+CD
+rt
+rt
+QA
+QA
+QA
+eg
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+CD
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(51,1,1) = {"
+nF
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+nZ
+nZ
+Hw
+Hw
+Hw
+pS
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+rt
+rt
+rt
+QA
+eg
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+CD
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(52,1,1) = {"
+nF
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Hw
+nZ
+nZ
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+cg
+cg
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+OM
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+cN
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+CD
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+eg
+QA
+QA
+QA
+QA
+QA
+rt
+CD
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(53,1,1) = {"
+nF
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Hw
+nZ
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+cg
+cg
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+OM
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+cN
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+CD
+sP
+sP
+sP
+CD
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+rt
+rt
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(54,1,1) = {"
+nF
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+ek
+ek
+ek
+ek
+Hw
+Hw
+LR
+Hw
+ek
+ek
+ek
+oS
+Hw
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+CD
+CD
+sP
+sP
+CD
+CD
+sP
+sP
+CD
+rt
+rt
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+rt
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(55,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+oS
+Hw
+Hw
+oS
+az
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+sP
+sP
+sP
+CD
+sP
+sP
+sP
+rt
+rt
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(56,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+oS
+rS
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+CD
+sP
+sP
+sP
+sP
+rt
+QA
+QA
+QA
+QA
+rt
+sP
+sP
+sP
+ek
+ek
+ek
+sP
+sP
+sP
+sP
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(57,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+rS
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+CD
+sP
+sP
+sP
+sP
+rt
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+ek
+ek
+ek
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(58,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+oS
+az
+Vo
+cg
+cg
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+VQ
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+rt
+QA
+QA
+QA
+rt
+sP
+sP
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(59,1,1) = {"
+nF
+ek
+ek
+ek
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+LR
+oS
+oS
+Hw
+oS
+oS
+ek
+ek
+ek
+cg
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+rt
+QA
+QA
+QA
+rt
+sP
+sP
+ek
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(60,1,1) = {"
+nF
+ek
+ek
+ek
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Vo
+Vo
+CD
+CD
+CD
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+sP
+sP
+rt
+rt
+QA
+QA
+QA
+rt
+sP
+sP
+ek
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(61,1,1) = {"
+nF
+ek
+ek
+ek
+rt
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+rt
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(62,1,1) = {"
+nF
+ek
+ek
+ek
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+OM
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+ek
+CD
+CD
+CD
+CD
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+rt
+QA
+QA
+rt
+rt
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(63,1,1) = {"
+nF
+ek
+ek
+ek
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+rt
+QA
+QA
+QA
+rt
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(64,1,1) = {"
+nF
+ek
+ek
+ek
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+rt
+QA
+QA
+QA
+NS
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+CD
+Vo
+ek
+ek
+ek
+ek
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+fm
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(65,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+OM
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+CD
+CD
+CD
+ek
+ek
+ek
+ek
+ek
+CD
+CD
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+rt
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(66,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+ek
+ek
+ek
+ek
+CD
+CD
+ek
+ek
+ek
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(67,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+rt
+rt
+Vo
+Vo
+Vo
+OM
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+NS
+QA
+rt
+rt
+rt
+rt
+rt
+QA
+QA
+NS
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+ek
+ek
+ek
+ek
+ek
+CD
+CD
+ek
+ek
+CD
+CD
+rt
+rt
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+rt
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(68,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+rt
+QA
+QA
+QA
+rt
+rt
+rt
+Vo
+Vo
+Vo
+rt
+rt
+rt
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ch
+ek
+ek
+CD
+CD
+CD
+CD
+rt
+rt
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(69,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+rt
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+CD
+Vo
+ek
+ek
+ek
+ch
+ch
+iI
+wM
+rt
+rt
+rt
+rt
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+rt
+QA
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(70,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+ek
+ek
+ch
+iI
+iI
+iI
+Ma
+rt
+rt
+rt
+rt
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+rt
+QA
+YY
+QA
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(71,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+sP
+sP
+CD
+Vo
+ek
+ek
+ch
+Ml
+fr
+ch
+ch
+rt
+rt
+rt
+rt
+CD
+CD
+Vo
+Vo
+KN
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+rt
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(72,1,1) = {"
+kf
+zp
+ek
+ek
+ek
+ek
+ek
+QA
+rt
+rt
+Vo
+rt
+rt
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+QA
+QA
+rt
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+CD
+sP
+CD
+CD
+CD
+ek
+ek
+Vo
+Vo
+rt
+rt
+rt
+rt
+si
+rt
+rt
+rt
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(73,1,1) = {"
+kf
+zp
+zp
+zp
+zp
+ek
+ek
+QA
+QA
+QA
+rt
+rt
+QA
+QA
+QA
+cQ
+QA
+Vo
+Vo
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+rt
+rt
+rt
+rt
+sP
+sP
+sP
+CD
+CD
+CD
+Vo
+CD
+CD
+CD
+Vo
+ek
+ek
+CD
+CD
+CD
+rt
+rt
+nK
+rt
+rt
+rt
+CD
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+rt
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(74,1,1) = {"
+kf
+zp
+ek
+zp
+QA
+cQ
+QA
+QA
+QA
+QA
+QA
+QA
+cQ
+QA
+Vo
+Vo
+Vo
+Vo
+Vo
+QA
+cQ
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+rt
+rt
+rt
+QA
+QA
+rt
+rt
+rt
+rt
+CD
+Vo
+Vo
+sP
+Vo
+CD
+CD
+ek
+ek
+CD
+CD
+CD
+Ev
+rt
+rt
+rt
+rt
+rt
+rt
+CD
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+rt
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(75,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+QA
+QA
+QA
+QA
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+Vo
+QA
+QA
+QA
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+QA
+NS
+QA
+QA
+QA
+rt
+rt
+Vo
+ek
+ek
+CD
+CD
+ek
+Vo
+CD
+CD
+CD
+ao
+rt
+rt
+rt
+rt
+rt
+CD
+CD
+Vo
+Vo
+Vo
+CD
+ek
+CD
+Vo
+Vo
+Vo
+rt
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(76,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+QA
+cQ
+rt
+Vo
+Vo
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+OM
+Vo
+Vo
+Vo
+rt
+rt
+NS
+QA
+QA
+rt
+rt
+rt
+Vo
+Vo
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+ek
+rt
+CD
+CD
+CD
+Vo
+Vo
+CD
+rt
+rt
+rt
+rt
+rt
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+CD
+ek
+CD
+Vo
+Vo
+Vo
+rt
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(77,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+QA
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+rt
+rt
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+rt
+NS
+QA
+QA
+QA
+iX
+iX
+iX
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+CD
+CD
+CD
+Vo
+CD
+CD
+rt
+rt
+rt
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(78,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+QA
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+iX
+sP
+sP
+sP
+Vo
+iX
+iX
+QA
+QA
+QA
+rt
+rt
+CD
+CD
+CD
+CD
+CD
+CD
+rt
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+Oo
+CD
+Vo
+CD
+ek
+CD
+Vo
+Vo
+Vo
+rt
+QA
+QA
+QA
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+fm
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+fm
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(79,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+rt
+rt
+Vo
+Vo
+Za
+Xo
+Xo
+Xo
+Xo
+Xo
+Xo
+Xo
+Xo
+Xo
+Xo
+Xo
+Za
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+sP
+vL
+sP
+sP
+CD
+CD
+sP
+iX
+QA
+QA
+QA
+ek
+CD
+CD
+CD
+CD
+rt
+rt
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+rt
+QA
+QA
+QA
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(80,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+rt
+rt
+Vo
+Vo
+hl
+UI
+tz
+tz
+tz
+tz
+tz
+tz
+tz
+tz
+tz
+hR
+hl
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+sP
+sP
+sP
+CD
+CD
+sP
+Vo
+sP
+iX
+QA
+QA
+ek
+CD
+CD
+CD
+rt
+rt
+CD
+Ix
+Ix
+Ix
+Ix
+Ix
+Ix
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+QA
+QA
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(81,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+rt
+Vo
+Vo
+Vo
+hl
+Bz
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+yv
+hl
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+OM
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+rt
+QA
+QA
+NS
+iX
+CD
+CD
+CD
+CD
+sP
+Vo
+sP
+Vo
+QA
+QA
+ek
+CD
+CD
+CD
+CD
+rt
+rt
+Ix
+II
+qG
+qG
+kJ
+Ix
+MP
+CD
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+QA
+QA
+rt
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+fm
+Vo
+sP
+sP
+sP
+sP
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+sP
+Vo
+sP
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(82,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+rt
+rt
+Vo
+Vo
+Vo
+hl
+Bz
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+yv
+hl
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+OM
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+rt
+QA
+QA
+iX
+CD
+Vo
+sP
+Vo
+sP
+sP
+Vo
+QA
+QA
+ek
+ek
+CD
+CD
+CD
+CD
+CD
+Ix
+rI
+QR
+jU
+lt
+KI
+MP
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+QA
+QA
+QA
+rt
+sP
+sP
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+yZ
+yZ
+ek
+ek
+nF
+"}
+(83,1,1) = {"
+nF
+ek
+ek
+ek
+rt
+rt
+rt
+Vo
+Vo
+Vo
+hl
+Bz
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+yv
+hl
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+rt
+QA
+iX
+iX
+Vo
+sP
+sP
+vL
+Vo
+Vo
+iX
+QA
+ek
+ek
+ek
+CD
+ek
+ek
+CD
+Ix
+AR
+pa
+iL
+lt
+Ix
+MP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+QA
+QA
+QA
+rt
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+yZ
+yZ
+yZ
+yZ
+ek
+nF
+"}
+(84,1,1) = {"
+nF
+ek
+ek
+ek
+rt
+rt
+rt
+Vo
+ek
+Vo
+hl
+Bz
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+yv
+hl
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+iX
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+QA
+QA
+ek
+ek
+ek
+ek
+ek
+ek
+Ix
+LF
+jt
+cy
+lt
+Ix
+KQ
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+rt
+rt
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+CD
+sP
+sP
+sP
+sP
+sP
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+yZ
+yZ
+yZ
+ek
+nF
+"}
+(85,1,1) = {"
+nF
+ek
+ek
+ek
+rt
+rt
+rt
+ek
+ek
+Vo
+hl
+Bz
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+yv
+hl
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+rt
+QA
+QA
+QA
+iX
+iX
+Vo
+Vo
+Vo
+Vo
+QA
+QA
+rt
+ek
+ek
+ek
+ek
+ek
+Ix
+Lx
+Cr
+Cr
+Zb
+Ix
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+rt
+sP
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+CD
+sP
+CD
+sP
+sP
+sP
+sP
+sP
+Vo
+sP
+fm
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+yZ
+yZ
+yZ
+yZ
+ek
+nF
+"}
+(86,1,1) = {"
+nF
+ek
+ek
+ek
+rt
+yZ
+yZ
+ek
+ek
+Vo
+hl
+Bz
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+yv
+hl
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+iX
+iX
+Vo
+iX
+QA
+QA
+QA
+rt
+Vo
+ek
+ek
+ek
+Ix
+Ix
+Ix
+Ix
+Ix
+Ix
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+CD
+CD
+CD
+sP
+sP
+sP
+sP
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+yZ
+yZ
+yZ
+ek
+ek
+nF
+"}
+(87,1,1) = {"
+nF
+ek
+ek
+ek
+rt
+yZ
+ek
+ek
+ek
+Vo
+hl
+Bz
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+xW
+yv
+hl
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+OM
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+YY
+QA
+QA
+rt
+rt
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+rt
+rt
+rt
+rt
+QA
+QA
+YY
+rt
+rt
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+CD
+Fc
+CD
+CD
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+yZ
+yZ
+yZ
+ek
+nF
+"}
+(88,1,1) = {"
+nF
+ek
+ek
+ek
+yZ
+yZ
+ek
+ek
+ek
+Vo
+hl
+om
+uD
+uD
+uD
+uD
+uD
+uD
+uD
+uD
+uD
+YQ
+hl
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+QA
+QA
+QA
+YY
+QA
+QA
+QA
+QA
+YY
+rt
+rt
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+rt
+rt
+YY
+QA
+QA
+QA
+QA
+rt
+rt
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+CD
+CD
+CD
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+yZ
+yZ
+yZ
+ek
+nF
+"}
+(89,1,1) = {"
+nF
+ek
+ek
+ek
+yZ
+yZ
+rt
+ek
+ek
+Vo
+Za
+Xo
+Xo
+Xo
+Xo
+Xo
+Xo
+Xo
+Xo
+Xo
+Xo
+Xo
+Za
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+CD
+CD
+Vo
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+Vo
+Vo
+Vo
+rt
+rt
+rt
+Vo
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+sP
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+yZ
+yZ
+yZ
+ek
+nF
+"}
+(90,1,1) = {"
+nF
+ek
+ek
+ek
+rt
+rt
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+rt
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+rt
+QA
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+fm
+sP
+sP
+sP
+sP
+CD
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+yZ
+yZ
+ek
+nF
+"}
+(91,1,1) = {"
+nF
+ek
+ek
+ek
+rt
+rt
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+CD
+sP
+CD
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+OM
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+rt
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+CD
+CD
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+ek
+ek
+yZ
+yZ
+ek
+ek
+nF
+"}
+(92,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+hl
+sP
+hl
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+OM
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+rt
+rt
+rt
+YY
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+QA
+rt
+rt
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+ek
+yZ
+yZ
+ek
+ek
+nF
+"}
+(93,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+zk
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Qm
+Qm
+Ia
+Ia
+Ia
+Ia
+Qm
+lo
+Qm
+lo
+Qm
+Ia
+Ia
+Ia
+Ia
+Qm
+Qm
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+rt
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+Vo
+sP
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(94,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+rS
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Ia
+Qm
+nC
+nC
+nC
+nC
+nC
+nC
+iG
+nC
+iG
+nC
+nC
+nC
+nC
+nC
+nC
+Qm
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(95,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Ia
+Ia
+nC
+nC
+nC
+nC
+nC
+nC
+nC
+iG
+zo
+iG
+nC
+nC
+nC
+nC
+nC
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+fm
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(96,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Ia
+Ia
+nC
+nC
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+iG
+zo
+iG
+nC
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(97,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Qm
+Ia
+nC
+nC
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+iG
+nC
+lQ
+hH
+hH
+hH
+hH
+lQ
+lQ
+nC
+nC
+Ia
+Qm
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(98,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Ia
+Qm
+nC
+nC
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+EG
+lQ
+nC
+iG
+nC
+lQ
+hH
+TD
+ku
+Ia
+Ia
+lQ
+lQ
+nC
+nC
+Qm
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(99,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+ek
+ek
+ek
+Qm
+Ia
+nC
+nC
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+iG
+nC
+lQ
+hH
+Dy
+vv
+Ty
+Ia
+Ia
+lQ
+lQ
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+fm
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(100,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+nC
+nC
+lQ
+lQ
+hH
+hH
+Ia
+Ia
+Ia
+hH
+hH
+lQ
+nC
+iG
+nC
+lQ
+hH
+AA
+vv
+vv
+jP
+Ia
+Ia
+lQ
+lQ
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+zk
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(101,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+nC
+nC
+lQ
+lQ
+hH
+hH
+NI
+Kw
+dh
+Kw
+vB
+hH
+lQ
+nC
+iG
+nC
+lQ
+hH
+Dy
+vv
+xr
+vv
+Ty
+Ia
+hH
+lQ
+lQ
+nC
+nC
+Ia
+Qm
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(102,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+Qm
+nC
+lQ
+lQ
+hH
+hH
+Ao
+NI
+Mk
+Vy
+Vr
+NI
+hH
+lQ
+nC
+iG
+nC
+lQ
+hH
+Uj
+vH
+vv
+vv
+Ty
+Pv
+hH
+lQ
+lQ
+lQ
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(103,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+Zn
+Qm
+lQ
+lQ
+lQ
+hH
+yt
+NI
+NI
+NI
+Gg
+NI
+NI
+hH
+xk
+nC
+iG
+nC
+lQ
+hH
+hH
+hH
+Dk
+hH
+hH
+hH
+hH
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(104,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+dn
+gm
+Qm
+lQ
+lQ
+lQ
+hH
+Ar
+NI
+NI
+NI
+NI
+NI
+NI
+Dk
+Ky
+Ky
+zo
+nC
+nC
+nC
+Sr
+nC
+iG
+ng
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(105,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+Kp
+gm
+Rk
+Ia
+lQ
+lQ
+lQ
+hH
+xm
+NI
+NI
+NI
+aS
+NI
+NI
+hH
+nC
+nC
+zo
+Ky
+Ky
+Ky
+Ky
+Ky
+iG
+nC
+lQ
+lQ
+lQ
+lQ
+lQ
+Oz
+lQ
+lQ
+lQ
+nC
+nC
+Qm
+Qm
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+nF
+"}
+(106,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+Qm
+FA
+gm
+Rk
+Ia
+lQ
+lQ
+lQ
+hH
+Xi
+NI
+NI
+fX
+CM
+eP
+NI
+hH
+lQ
+nC
+iG
+nC
+nC
+nC
+hH
+hH
+hH
+Ia
+Ia
+Ia
+hH
+hH
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(107,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+Vb
+Qm
+Pt
+gm
+Rk
+Ia
+lQ
+lQ
+lQ
+hH
+jW
+NI
+NI
+NI
+kt
+Kw
+Rs
+hH
+lQ
+nC
+iG
+nC
+lQ
+nC
+cu
+cu
+hH
+yY
+dl
+Ew
+MQ
+hH
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(108,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Qm
+Qm
+Uk
+Fp
+EP
+gm
+gm
+MO
+Qm
+lQ
+lQ
+lQ
+hH
+hH
+hH
+Dk
+hH
+hH
+Ia
+hH
+hH
+lQ
+nC
+iG
+nC
+lQ
+nC
+cu
+cu
+JK
+BH
+BH
+BH
+Hm
+hH
+lQ
+lQ
+lQ
+lQ
+Oz
+lQ
+lQ
+lQ
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(109,1,1) = {"
+nF
+ek
+ek
+ek
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Dk
+Qm
+Qm
+lQ
+lQ
+lQ
+lQ
+hH
+bM
+Ft
+Ft
+hH
+lQ
+lQ
+lQ
+lQ
+nC
+iG
+nC
+nC
+MZ
+cu
+cu
+zU
+BH
+BH
+dR
+BH
+hH
+xk
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+Qm
+Qm
+sP
+sP
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(110,1,1) = {"
+nF
+ek
+ek
+ek
+Qm
+Fg
+PW
+aG
+Qm
+eE
+um
+nP
+eE
+Qm
+lQ
+lQ
+lQ
+lQ
+Ia
+Jq
+Ft
+Jq
+Ia
+lQ
+lQ
+lQ
+nC
+iG
+zo
+iG
+Ky
+Ky
+cu
+cu
+zU
+BH
+BH
+nT
+BH
+Dk
+iG
+nC
+hH
+hH
+hH
+hH
+hH
+hH
+hH
+hH
+nC
+nC
+Qm
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(111,1,1) = {"
+nF
+ek
+ek
+ek
+Qm
+hV
+JT
+qR
+Qm
+Xz
+Xz
+HN
+Kw
+Ia
+lQ
+lQ
+lQ
+lQ
+Ia
+Jq
+Ft
+Jq
+Ia
+lQ
+lQ
+lQ
+nC
+iG
+lQ
+iG
+nC
+MZ
+cu
+cu
+zU
+BH
+BH
+Wt
+BH
+hH
+iG
+nC
+hH
+eT
+Nh
+pM
+ZA
+eT
+YA
+hH
+nC
+nC
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(112,1,1) = {"
+nF
+ek
+ek
+ek
+Qm
+JT
+bb
+mq
+Qm
+kv
+kv
+Fi
+Kw
+Ia
+lQ
+lQ
+lQ
+lQ
+hH
+jz
+Ft
+Ft
+hH
+lQ
+lQ
+lQ
+nC
+iG
+Oz
+iG
+nC
+nC
+cu
+cu
+If
+PQ
+BH
+BH
+Hm
+hH
+iG
+nC
+Ia
+lF
+Sq
+eT
+ZA
+eT
+tu
+Ia
+nC
+nC
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+fm
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Vo
+Vo
+ek
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(113,1,1) = {"
+nF
+ek
+ek
+ek
+Qm
+Qm
+Dk
+Qm
+Qm
+qy
+RK
+Fi
+Kw
+Ia
+lQ
+lQ
+lQ
+lQ
+hH
+Ft
+Ft
+Ft
+hH
+lQ
+lQ
+lQ
+nC
+iG
+lQ
+iG
+nC
+nC
+cu
+cu
+hH
+cS
+dV
+Xr
+AM
+hH
+iG
+nC
+Ia
+lF
+WL
+WL
+WL
+WL
+lF
+Ia
+nC
+nC
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(114,1,1) = {"
+nF
+ek
+ek
+ek
+Qm
+eT
+eT
+eT
+Qm
+kv
+kv
+Fi
+nP
+Qm
+xk
+nC
+lQ
+lQ
+Ia
+Jq
+Ft
+Jq
+Ia
+lQ
+lQ
+lQ
+nC
+iG
+zo
+iG
+nC
+nC
+hH
+hH
+hH
+Ia
+Ia
+Ia
+hH
+hH
+iG
+nC
+Ia
+lF
+PF
+bw
+MJ
+PF
+eT
+hH
+nC
+nC
+Qm
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+fm
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+cg
+Vo
+Vo
+Vo
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(115,1,1) = {"
+nF
+ek
+ek
+ek
+Qm
+MD
+eT
+xd
+Qm
+xT
+xT
+nP
+nP
+Dk
+Ky
+Ky
+nC
+lQ
+Ia
+Jq
+Ft
+Jq
+Ia
+lQ
+lQ
+lQ
+lQ
+nC
+iG
+nC
+nC
+nC
+nC
+nC
+nC
+nC
+nC
+nC
+nC
+nC
+iG
+nC
+hH
+eT
+PF
+bO
+sg
+PF
+eT
+hH
+nC
+nC
+Qm
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+CD
+Vo
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(116,1,1) = {"
+nF
+ek
+ek
+ek
+Qm
+ZN
+eT
+eT
+Qm
+nP
+nP
+nP
+nP
+Qm
+nC
+iG
+nC
+lQ
+hH
+Ft
+Ft
+dx
+hH
+lQ
+lQ
+lQ
+lQ
+nC
+ax
+Ky
+Ky
+Ky
+Ky
+Ky
+Ky
+zo
+Ky
+Ky
+Ky
+Ky
+zo
+Ky
+Dk
+eT
+WL
+WL
+WL
+WL
+lF
+Ia
+nC
+nC
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Hw
+Hw
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Vo
+CD
+CD
+CD
+CD
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(117,1,1) = {"
+nF
+ek
+ek
+ek
+Qm
+fh
+eT
+eT
+Dk
+nP
+nP
+nP
+Kw
+Ia
+nC
+iG
+nC
+hH
+hH
+hH
+Dk
+hH
+hH
+Ia
+hH
+hH
+lQ
+nC
+iG
+nC
+nC
+nC
+nC
+nC
+bN
+iG
+nC
+nC
+nC
+nC
+nC
+mi
+hH
+eT
+RX
+eT
+sY
+eT
+fA
+Ia
+nC
+nC
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Hw
+rm
+rz
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Hw
+Hw
+ek
+ek
+ek
+nF
+"}
+(118,1,1) = {"
+nF
+ek
+ek
+ek
+Qm
+Ww
+eT
+eT
+Qm
+nP
+nP
+HN
+Kw
+Ia
+nC
+iG
+nC
+hH
+IZ
+NI
+NI
+NI
+NI
+Kw
+LZ
+hH
+lQ
+nC
+iG
+nC
+lQ
+hH
+hH
+hH
+hH
+Dk
+hH
+hH
+hH
+hH
+lQ
+lQ
+hH
+eT
+EX
+Of
+rF
+eT
+UL
+hH
+nC
+nC
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+ek
+ek
+ek
+Vo
+Vo
+ek
+ek
+Hw
+rz
+rz
+Hw
+Hw
+Hw
+ek
+ek
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+nF
+"}
+(119,1,1) = {"
+nF
+ek
+ek
+ek
+Qm
+gK
+gL
+Nl
+Qm
+eE
+UZ
+nP
+eE
+Qm
+nC
+iG
+nC
+hH
+pI
+NI
+NI
+NI
+NI
+NI
+Kw
+Ia
+lQ
+nC
+iG
+nC
+lQ
+hH
+IP
+Qw
+pl
+uB
+Rb
+Yf
+uB
+hH
+lQ
+lQ
+hH
+hH
+hH
+hH
+hH
+hH
+hH
+hH
+nC
+nC
+Qm
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+fm
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+Vo
+ek
+ek
+Hw
+Hw
+rz
+rz
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+CD
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Hw
+Hw
+Hw
+pS
+Hw
+ek
+ek
+nF
+"}
+(120,1,1) = {"
+nF
+ek
+ek
+ek
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Dk
+Qm
+Qm
+nC
+iG
+nC
+hH
+bj
+NI
+VA
+BY
+yt
+IY
+Kw
+Ia
+lQ
+nC
+iG
+nC
+lQ
+Ia
+Pg
+uB
+uB
+uB
+uB
+PL
+uB
+Ia
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+Qm
+Qm
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Hw
+Ta
+rz
+rz
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+ek
+Hw
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+pS
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+nF
+"}
+(121,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+Qm
+Qm
+Uk
+SG
+EP
+ty
+ty
+Nb
+Qm
+nC
+Ky
+Ky
+Dk
+NI
+NI
+VA
+yt
+Fx
+IY
+NI
+hH
+lQ
+nC
+iG
+nC
+lQ
+Ia
+xz
+uB
+uB
+hP
+uB
+uB
+uB
+Ia
+lQ
+lQ
+Oz
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+fm
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+Hw
+rz
+rz
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+rz
+rz
+rz
+Ta
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+nF
+"}
+(122,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+jq
+Qm
+CK
+ty
+oI
+Ia
+lQ
+nC
+mi
+hH
+NI
+NI
+VA
+yt
+BY
+IY
+Kw
+Ia
+lQ
+nC
+iG
+nC
+lQ
+Ia
+ur
+uB
+uB
+uB
+uB
+uB
+uB
+Ia
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+Hw
+rz
+lw
+lw
+lw
+rz
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+ek
+ek
+nF
+"}
+(123,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+Qm
+Ic
+ty
+oI
+Ia
+lQ
+lQ
+lQ
+hH
+hH
+NI
+NI
+NI
+NI
+lk
+Kw
+Ia
+lQ
+nC
+iG
+nC
+lQ
+Ia
+ZX
+uB
+PL
+uB
+PL
+uB
+PL
+Ia
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+rz
+Hw
+rz
+lw
+Si
+lw
+rz
+rz
+ek
+ek
+ek
+vz
+Vo
+OK
+vz
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+ek
+ek
+nF
+"}
+(124,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+xN
+ty
+oI
+Ia
+lQ
+lQ
+lQ
+lQ
+hH
+hH
+NI
+Kw
+Kw
+Kw
+LZ
+hH
+lQ
+nC
+iG
+nC
+lQ
+hH
+PL
+Kd
+PL
+uB
+PL
+Kd
+PL
+hH
+lQ
+lQ
+lQ
+lQ
+Oz
+nC
+nC
+Qm
+Qm
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+ek
+ek
+rz
+rz
+lw
+lw
+lw
+rz
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+ek
+ek
+nF
+"}
+(125,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+xC
+ty
+Qm
+lQ
+lQ
+lQ
+lQ
+lQ
+hH
+hH
+Ia
+Ia
+Ia
+hH
+hH
+lQ
+nC
+iG
+nC
+lQ
+hH
+hH
+hH
+hH
+hH
+hH
+hH
+hH
+hH
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+Ia
+Ia
+sP
+sP
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+hr
+Vo
+Vo
+Vo
+ek
+ek
+Hw
+ek
+ek
+Hw
+Hw
+ek
+ek
+rz
+Ta
+rz
+rz
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+ek
+ek
+nF
+"}
+(126,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+pT
+Qm
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+nC
+nC
+nC
+nC
+Sr
+iG
+nC
+nC
+nC
+nC
+nC
+nC
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+Qm
+Qm
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+sP
+sP
+sP
+sP
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+ek
+ek
+ek
+ek
+ek
+Hw
+rm
+Ta
+Hw
+Hw
+rz
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+rt
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+rz
+Hw
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+nF
+"}
+(127,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+Qm
+nC
+lQ
+lQ
+lQ
+lQ
+lQ
+bN
+Ky
+Ky
+Ky
+Ky
+Ky
+Ky
+Ky
+zo
+Ky
+Ky
+Ky
+Ky
+Ky
+Ky
+Ky
+bN
+lQ
+lQ
+lQ
+lQ
+lQ
+nC
+nC
+Qm
+Qm
+ek
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+rz
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+rt
+rt
+ek
+ek
+ek
+Hw
+Hw
+rz
+Hw
+Hw
+ek
+Hw
+rz
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+nF
+"}
+(128,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+nC
+nC
+lQ
+hH
+hH
+Ia
+hH
+Dk
+hH
+hH
+hH
+nC
+nC
+nC
+nC
+nC
+nC
+hH
+hH
+Ia
+hH
+Dk
+hH
+Ia
+hH
+hH
+lQ
+nC
+nC
+Qm
+Qm
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+sP
+sP
+zs
+zs
+zs
+zs
+zs
+zs
+ek
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+rz
+rz
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+Vo
+Vo
+ao
+KQ
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(129,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+nC
+nC
+hH
+ip
+Ty
+DR
+vv
+vv
+DR
+hH
+lQ
+lQ
+lQ
+lQ
+lQ
+lQ
+hH
+gu
+KK
+sA
+sA
+sA
+KK
+gu
+hH
+nC
+nC
+Qm
+Qm
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+sP
+Vo
+zs
+zs
+FI
+XS
+qZ
+Ob
+zs
+zs
+ek
+ek
+ek
+ek
+ek
+Hw
+JB
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+rz
+rz
+Hw
+Hw
+ek
+ek
+ek
+ek
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+Vo
+Vo
+Vo
+rt
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(130,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+nC
+hH
+nH
+vv
+vv
+vv
+xr
+mx
+hH
+hH
+hH
+hH
+hH
+hH
+hH
+hH
+AO
+sA
+sA
+uj
+sA
+sA
+HK
+hH
+nC
+Qm
+Qm
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+fm
+Vo
+Vo
+Vo
+Vo
+CD
+Vo
+Vo
+Vo
+Vo
+zs
+de
+qZ
+de
+qZ
+zI
+JY
+zs
+zs
+zs
+zs
+zI
+Hw
+Hw
+Hw
+Hw
+Hw
+rz
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+rz
+rz
+Hw
+ek
+ek
+ek
+ek
+Vo
+Vo
+sP
+cH
+sP
+UA
+oQ
+FH
+oQ
+oQ
+UA
+rt
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(131,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+hH
+DR
+vv
+DR
+vv
+vv
+ip
+hH
+JW
+ZV
+NV
+Pn
+gT
+FD
+hH
+gu
+sA
+gu
+sA
+Km
+sA
+gu
+hH
+Qm
+Qm
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+KN
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+Vo
+Vo
+zs
+Ih
+de
+PX
+qZ
+JY
+zI
+de
+de
+qZ
+zI
+Ih
+mc
+rz
+rz
+Hw
+rz
+Hw
+rz
+rz
+Hw
+Hw
+Hw
+NX
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+Hw
+ek
+Hw
+rz
+rz
+rz
+rz
+Hw
+Hw
+Hw
+ek
+ek
+ek
+Vo
+Vo
+Vo
+sP
+sP
+sP
+UA
+rl
+rl
+ll
+iw
+UA
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(132,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+vv
+vS
+xr
+vv
+vv
+vv
+hH
+dz
+bI
+TY
+TY
+bI
+vN
+hH
+sA
+sA
+sA
+sA
+sA
+sA
+sA
+Qm
+Qm
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+CD
+CD
+sP
+Vm
+oW
+zI
+zI
+de
+zI
+zI
+zI
+zI
+gB
+zI
+Jn
+zI
+hU
+rz
+rz
+rz
+rz
+rz
+rz
+rz
+rz
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+Hw
+rz
+rz
+Hw
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+ek
+Hw
+Hw
+ek
+ek
+ek
+Hw
+ek
+ek
+ek
+ek
+Vo
+Vo
+av
+sP
+sP
+UA
+XL
+rl
+rl
+ll
+UA
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(133,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+Qm
+Qm
+Qm
+wL
+wL
+Dk
+TY
+TY
+TY
+dC
+TY
+TY
+Dk
+wL
+wL
+wL
+wL
+wL
+UY
+Qm
+Qm
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+CD
+Pk
+Wu
+Hp
+de
+gB
+zI
+de
+zI
+zI
+de
+zI
+zI
+oW
+de
+Kg
+Hw
+rz
+rz
+rz
+Ta
+rz
+rz
+rz
+rz
+rz
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+Hw
+rz
+rz
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+rz
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+sP
+UA
+ll
+rl
+rl
+cZ
+UA
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(134,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+bm
+EP
+wL
+Rx
+hH
+Jv
+bI
+TY
+TY
+bI
+Jv
+hH
+Sc
+wL
+Qm
+EP
+Qm
+Qm
+Qm
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+CD
+Wu
+Ih
+zI
+de
+de
+LI
+zW
+zI
+de
+qZ
+qZ
+oW
+mc
+Hw
+Hw
+Hw
+NX
+rz
+rz
+rz
+rz
+rz
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+Hw
+Hw
+rz
+rz
+Hw
+Hw
+NX
+Hw
+Hw
+Hw
+ek
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+UA
+xQ
+DH
+rl
+rl
+UA
+Vo
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+nF
+"}
+(135,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+Qm
+qS
+cL
+hH
+Py
+CY
+Pn
+Pn
+gT
+Yh
+hH
+lj
+oz
+Qm
+vF
+Qm
+Qm
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+Vm
+Ih
+zs
+zs
+zs
+zs
+zs
+zI
+QL
+QL
+de
+zs
+zI
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+Hw
+Hw
+ek
+ek
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+UA
+UA
+UA
+UA
+UA
+UA
+Vo
+Vo
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(136,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+Qm
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+ek
+Vo
+Vo
+sP
+sP
+sP
+sP
+sP
+sP
+sP
+ek
+ek
+ek
+ek
+ek
+ek
+zs
+zs
+zs
+zs
+VN
+zs
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+Hw
+Hw
+Hw
+ek
+Hw
+Hw
+Hw
+NX
+Hw
+Hw
+Hw
+ek
+ek
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+Vo
+Vo
+Vo
+ek
+Vo
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(137,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+zs
+zs
+zs
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Hw
+Hw
+Hw
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+Vo
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(138,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(139,1,1) = {"
+nF
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+ek
+nF
+"}
+(140,1,1) = {"
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+nF
+"}
diff --git a/maps/gateway_vr/variable/arynthilakeunderground_a.dmm b/maps/gateway_vr/variable/arynthilakeunderground_a.dmm
new file mode 100644
index 0000000000..d7282a8095
--- /dev/null
+++ b/maps/gateway_vr/variable/arynthilakeunderground_a.dmm
@@ -0,0 +1,20271 @@
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"aK" = (
+/obj/structure/stairs/spawner/east,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"aO" = (
+/obj/structure/cable/green{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/obj/structure/cable/green{
+ d1 = 16;
+ d2 = 0;
+ icon_state = "16-0"
+ },
+/turf/simulated/floor/tiled/eris/steel/danger,
+/area/gateway/arynthilake/engine)
+"bL" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/toolbox,
+/turf/simulated/floor/tiled/eris/techmaint,
+/area/gateway/arynthilake/engine)
+"ez" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"eD" = (
+/obj/random/awayloot,
+/obj/structure/table/rack/shelf/steel,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"eV" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"fd" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"gh" = (
+/turf/simulated/mineral/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"hB" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/device/mapping_unit,
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"hK" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"jv" = (
+/obj/effect/gibspawner/generic,
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"jO" = (
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"ly" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"lz" = (
+/obj/machinery/gear_dispenser/adventure_box{
+ chance_to_delete = 75;
+ needs_power = 1
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"lC" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/tool/powermaint,
+/turf/simulated/floor/tiled/eris/techmaint,
+/area/gateway/arynthilake/engine)
+"lM" = (
+/obj/effect/map_effect/perma_light/gateway{
+ light_color = "#0c6ba6";
+ light_power = .3;
+ light_range = 5
+ },
+/turf/simulated/floor/beach/sand/desert,
+/area/gateway/arynthilake/underground/intocave{
+ enter_message = "There is some light filtering from the center of this patch of sand. You could probably climb up from there."
+ })
+"lN" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/obj/random/tool/alien,
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"lT" = (
+/obj/machinery/light/small,
+/obj/machinery/gear_dispenser/randomweapons{
+ needs_power = 1
+ },
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"mj" = (
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"mV" = (
+/obj/machinery/light/small,
+/obj/structure/closet/crate/engineering/electrical,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"nO" = (
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"oM" = (
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"pT" = (
+/obj/random/mob/semirandom_mob_spawner/robot/retaliate,
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"qe" = (
+/obj/random/mob/semirandom_mob_spawner/monster/b,
+/turf/simulated/floor/tiled/eris/techmaint,
+/area/gateway/arynthilake/engine)
+"qp" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"qJ" = (
+/obj/machinery/power/rtg/abductor,
+/obj/structure/cable/green{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/turf/simulated/floor/tiled/eris/steel/danger,
+/area/gateway/arynthilake/engine)
+"qU" = (
+/obj/random/awayloot,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"qX" = (
+/obj/machinery/porta_turret{
+ check_access = 0;
+ check_all = 1;
+ check_anomalies = 0;
+ check_arrest = 0;
+ check_records = 0;
+ lethal = 1
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"ra" = (
+/obj/random/mob/semirandom_mob_spawner/robot/retaliate,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"rR" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"sq" = (
+/obj/machinery/door/airlock/maintenance/common{
+ hackProof = 1;
+ locked = 1;
+ maxhealth = 5000
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"uZ" = (
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"vk" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"we" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"wM" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/tech_supply,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"xh" = (
+/obj/machinery/crystal,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"zh" = (
+/obj/structure/ladder/up,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/underground/maintenance)
+"zL" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"Az" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/steel/danger,
+/area/gateway/arynthilake/engine)
+"Bj" = (
+/obj/random/mob/semirandom_mob_spawner/monster/e,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"BJ" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"BN" = (
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"Cj" = (
+/obj/random/mob/semirandom_mob_spawner/robot/retaliate,
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"CE" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/machinery/gear_dispenser/randomvoidsuit{
+ needs_power = 1
+ },
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"Eb" = (
+/obj/random/mob/semirandom_mob_spawner/monster/f,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"Ek" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"EY" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"Ft" = (
+/turf/unsimulated/mineral,
+/area/gateway/arynthilake/underground)
+"Gb" = (
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"Hb" = (
+/obj/structure/cable/green{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled/eris/steel/danger,
+/area/gateway/arynthilake/engine)
+"Hk" = (
+/obj/machinery/door/airlock/maintenance/common,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/engine)
+"HB" = (
+/turf/simulated/wall/r_wall,
+/area/gateway/arynthilake/underground)
+"HW" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/tiled/eris/steel/danger,
+/area/gateway/arynthilake/engine)
+"Js" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool/power,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"LF" = (
+/turf/simulated/floor/plating/eris/under{
+ temperature = 258.15
+ },
+/area/gateway/arynthilake/underground/maintenance)
+"LY" = (
+/turf/simulated/floor/beach/sand/desert,
+/area/gateway/arynthilake/underground/intocave{
+ enter_message = "There is some light filtering from the center of this patch of sand. You could probably climb up from there."
+ })
+"Mj" = (
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled/eris/techmaint,
+/area/gateway/arynthilake/engine)
+"MV" = (
+/obj/machinery/gear_dispenser/adventure_box/weapon{
+ chance_to_delete = 75;
+ needs_power = 1
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"Ok" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/techmaint,
+/area/gateway/arynthilake/engine)
+"Qb" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"Rh" = (
+/obj/random/mob/semirandom_mob_spawner/monster/c,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"Sg" = (
+/turf/simulated/floor/tiled/eris/techmaint,
+/area/gateway/arynthilake/engine)
+"SR" = (
+/turf/simulated/floor/tiled/eris/steel/danger,
+/area/gateway/arynthilake/engine)
+"Uh" = (
+/turf/simulated/wall/r_wall,
+/area/gateway/arynthilake/engine)
+"Vm" = (
+/turf/simulated/wall/r_wall,
+/area/gateway/arynthilake/underground/maintenance)
+"Wm" = (
+/obj/machinery/door/airlock/maintenance/engi,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/engine)
+"WB" = (
+/obj/structure/noticeboard{
+ pixel_x = -32
+ },
+/obj/item/weapon/paper/gateway/arynthilake,
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"WN" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"Xq" = (
+/obj/structure/table/rack,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"YB" = (
+/obj/random/mob/semirandom_mob_spawner/monster/b,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"YC" = (
+/obj/random/mob/semirandom_mob_spawner/monster/d,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"ZY" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/item/weapon/cell/void,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+
+(1,1,1) = {"
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+"}
+(2,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(3,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+lz
+MV
+lz
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(4,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+Ft
+"}
+(5,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+Ft
+"}
+(6,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+mj
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+YC
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Bj
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+Ft
+"}
+(7,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+mj
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+Bj
+nO
+nO
+nO
+nO
+gh
+gh
+Ft
+"}
+(8,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+mj
+Vm
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+Ft
+"}
+(9,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+nO
+xh
+nO
+nO
+nO
+nO
+Bj
+nO
+gh
+gh
+Ft
+"}
+(10,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+qU
+nO
+nO
+nO
+nO
+gh
+gh
+Ft
+"}
+(11,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+BJ
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+xh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+Ft
+"}
+(12,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+mj
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+Vm
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+nO
+nO
+nO
+nO
+YC
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+xh
+nO
+gh
+gh
+gh
+Ft
+"}
+(13,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+qX
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+BJ
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+nO
+Bj
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+Ft
+"}
+(14,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+Vm
+lz
+MV
+lz
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(15,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+ly
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+BJ
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(16,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+nO
+gh
+nO
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+xh
+nO
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(17,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+nO
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+LY
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(18,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+lz
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+nO
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Bj
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+nO
+nO
+nO
+LY
+lM
+LY
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(19,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+qX
+oM
+MV
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+mj
+oM
+oM
+qX
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+mj
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+LY
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(20,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+mj
+oM
+oM
+oM
+lz
+Vm
+nO
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(21,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+nO
+xh
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(22,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+nO
+gh
+gh
+Vm
+ly
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+mj
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(23,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+qX
+oM
+Vm
+nO
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+qX
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+qX
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+mj
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(24,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+nO
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+Bj
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+xh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(25,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+Bj
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(26,1,1) = {"
+Ft
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+mj
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(27,1,1) = {"
+Ft
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+lz
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+YC
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+xh
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(28,1,1) = {"
+Ft
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+qX
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+qX
+oM
+MV
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+mj
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(29,1,1) = {"
+Ft
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+mj
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+lz
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+zL
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(30,1,1) = {"
+Ft
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+sq
+sq
+sq
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+mj
+oM
+oM
+oM
+oM
+Vm
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+xh
+nO
+nO
+nO
+Bj
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(31,1,1) = {"
+Ft
+gh
+gh
+Vm
+ly
+zh
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+xh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(32,1,1) = {"
+Ft
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+YC
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(33,1,1) = {"
+Ft
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+lz
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+mj
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(34,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+MV
+oM
+qX
+oM
+mj
+oM
+oM
+oM
+oM
+oM
+oM
+WN
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+Bj
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(35,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+mj
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+lz
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+xh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(36,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+YB
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(37,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+xh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+nO
+nO
+gh
+gh
+gh
+Ft
+"}
+(38,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+nO
+gh
+gh
+gh
+Ft
+"}
+(39,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+xh
+nO
+nO
+nO
+Bj
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+nO
+nO
+gh
+gh
+Ft
+"}
+(40,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+Bj
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+Bj
+nO
+nO
+nO
+gh
+gh
+nO
+gh
+gh
+Ft
+"}
+(41,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+xh
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+gh
+gh
+nO
+gh
+gh
+Ft
+"}
+(42,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+Ek
+oM
+sq
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+mj
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+sq
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+qU
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+nO
+gh
+gh
+Ft
+"}
+(43,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+sq
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+BJ
+oM
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+sq
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+YC
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+Ft
+"}
+(44,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+sq
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+sq
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+Ft
+"}
+(45,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+Ft
+"}
+(46,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+BJ
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+Ft
+"}
+(47,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+Bj
+nO
+nO
+gh
+gh
+nO
+nO
+gh
+gh
+Ft
+"}
+(48,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+Ft
+"}
+(49,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+BJ
+oM
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+xh
+nO
+nO
+gh
+gh
+nO
+nO
+gh
+gh
+Ft
+"}
+(50,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+BJ
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+zL
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+nO
+nO
+gh
+gh
+gh
+Ft
+"}
+(51,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(52,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+BJ
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+nO
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+qX
+Vm
+gh
+Vm
+ly
+oM
+oM
+oM
+oM
+qX
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+Eb
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+Bj
+nO
+nO
+nO
+gh
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(53,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+nO
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+mj
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+zL
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+nO
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(54,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+BJ
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+nO
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(55,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+nO
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(56,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+YB
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+nO
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+lz
+MV
+lz
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+mj
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(57,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+nO
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(58,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+BJ
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(59,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+Eb
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(60,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+BJ
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(61,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(62,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+Vm
+oM
+qX
+oM
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+mj
+WN
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+sq
+sq
+sq
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+BJ
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(63,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+ly
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+Bj
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(64,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+YB
+oM
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+YB
+oM
+Vm
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(65,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+qX
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+sq
+sq
+sq
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+xh
+nO
+nO
+nO
+nO
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(66,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+YB
+oM
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+sq
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(67,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+sq
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(68,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+sq
+sq
+sq
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+sq
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+nO
+Vm
+Vm
+Vm
+nO
+nO
+HB
+gh
+nO
+nO
+nO
+xh
+nO
+gh
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(69,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+sq
+sq
+sq
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+nO
+nO
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(70,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(71,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+qX
+Vm
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+nO
+nO
+nO
+oM
+oM
+oM
+oM
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(72,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+nO
+HB
+nO
+Vm
+Vm
+Vm
+nO
+HB
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(73,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+Ek
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(74,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+nO
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+lz
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+Eb
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(75,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+qX
+oM
+oM
+oM
+YB
+oM
+oM
+oM
+oM
+qX
+oM
+MV
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+Eb
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(76,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+nO
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+YB
+WN
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+lz
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+YB
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+nO
+nO
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(77,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+YB
+oM
+Vm
+gh
+nO
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(78,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+nO
+nO
+gh
+Vm
+oM
+YB
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(79,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+nO
+nO
+Vm
+ly
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(80,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(81,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+WN
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(82,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(83,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(84,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+BJ
+Vm
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+YB
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(85,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+Vm
+ly
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(86,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+qX
+oM
+oM
+oM
+oM
+oM
+oM
+YB
+oM
+oM
+oM
+Vm
+gh
+Vm
+BJ
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+Eb
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(87,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+nO
+Vm
+oM
+YB
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(88,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+Eb
+nO
+xh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(89,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+YB
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+BJ
+Vm
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+Eb
+nO
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(90,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+YB
+oM
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(91,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+WN
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+nO
+nO
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+Vm
+oM
+oM
+oM
+oM
+oM
+WN
+Vm
+nO
+gh
+gh
+gh
+Vm
+oM
+zL
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(92,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+nO
+nO
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+nO
+nO
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(93,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+nO
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(94,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+nO
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(95,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+YB
+oM
+oM
+oM
+oM
+oM
+oM
+qX
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(96,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(97,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+WN
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(98,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+nO
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(99,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+nO
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+YB
+oM
+Vm
+gh
+gh
+nO
+nO
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(100,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+nO
+Vm
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+nO
+nO
+nO
+Vm
+lz
+MV
+lz
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(101,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+nO
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+nO
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+nO
+nO
+nO
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(102,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+lz
+MV
+lz
+oM
+oM
+oM
+Vm
+nO
+Vm
+oM
+oM
+oM
+oM
+YB
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(103,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+qX
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(104,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+YB
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(105,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Eb
+nO
+nO
+nO
+gh
+gh
+nO
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(106,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+YB
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+YB
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+WN
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+YB
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(107,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+nO
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(108,1,1) = {"
+Ft
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+LF
+LF
+LF
+LF
+LF
+LF
+LF
+LF
+LF
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+Eb
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(109,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+LF
+LF
+LF
+LF
+LF
+LF
+LF
+LF
+LF
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+nO
+nO
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(110,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+LF
+LF
+LF
+LF
+LF
+LF
+LF
+LF
+LF
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+Vm
+ly
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(111,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+Uh
+Uh
+Uh
+Uh
+Uh
+oM
+oM
+oM
+Uh
+Uh
+Uh
+Uh
+Uh
+Uh
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+sq
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(112,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+BN
+BN
+BN
+Xq
+Uh
+oM
+oM
+oM
+Uh
+eD
+BN
+BN
+eV
+Uh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+lz
+MV
+lz
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+sq
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+xh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(113,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+BN
+EY
+BN
+Xq
+Uh
+oM
+oM
+oM
+Uh
+ez
+BN
+BN
+wM
+Uh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+sq
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(114,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+hK
+Js
+ra
+mV
+Uh
+Hk
+Uh
+Hk
+Uh
+CE
+ra
+BN
+lT
+Uh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+sq
+sq
+sq
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(115,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+BN
+EY
+BN
+Xq
+Uh
+Gb
+WB
+Gb
+Uh
+fd
+BN
+BN
+ez
+Uh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+ly
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+qX
+oM
+oM
+oM
+oM
+YB
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(116,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+BN
+BN
+BN
+Xq
+Uh
+Gb
+Gb
+Gb
+Uh
+eD
+BN
+BN
+eV
+Uh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+YB
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Rh
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(117,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+Uh
+Wm
+Uh
+Uh
+Uh
+Gb
+Cj
+Gb
+Uh
+Uh
+Uh
+Wm
+Uh
+Uh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(118,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+Ok
+Sg
+Sg
+Sg
+Qb
+Gb
+Gb
+Gb
+Qb
+Sg
+Sg
+Sg
+bL
+Uh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+ly
+Rh
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+Eb
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(119,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+Ok
+qe
+Sg
+bL
+uZ
+Gb
+jv
+Gb
+hB
+Mj
+Sg
+qe
+Mj
+Uh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Eb
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(120,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+Ok
+Sg
+Sg
+Sg
+vk
+Gb
+Gb
+Gb
+vk
+Sg
+Sg
+Sg
+lC
+Uh
+gh
+gh
+gh
+gh
+Vm
+oM
+qX
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+qX
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+Vm
+Vm
+lz
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+xh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+Ft
+"}
+(121,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+Uh
+Wm
+Uh
+Uh
+Uh
+Gb
+Gb
+Gb
+Uh
+Uh
+Uh
+Wm
+Uh
+Uh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+MV
+oM
+qX
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+Ft
+"}
+(122,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+jO
+jO
+jO
+jO
+Uh
+Gb
+Gb
+Gb
+Uh
+ZY
+jO
+jO
+jO
+Uh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+lz
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+Eb
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+Ft
+"}
+(123,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+jO
+jO
+jO
+we
+Uh
+BN
+BN
+BN
+Uh
+lN
+jO
+jO
+jO
+Uh
+gh
+gh
+gh
+gh
+Vm
+oM
+Rh
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Rh
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+xh
+nO
+Eb
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+Ft
+"}
+(124,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+jO
+pT
+jO
+jO
+Uh
+aK
+aK
+aK
+Uh
+qp
+jO
+jO
+jO
+Uh
+gh
+gh
+gh
+gh
+Vm
+ly
+oM
+oM
+oM
+oM
+oM
+oM
+Rh
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+Rh
+WN
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+xh
+nO
+gh
+gh
+gh
+Ft
+"}
+(125,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+jO
+jO
+jO
+Uh
+Uh
+Uh
+Uh
+Uh
+Uh
+Uh
+jO
+pT
+we
+Uh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+BJ
+oM
+oM
+oM
+Vm
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+Ft
+"}
+(126,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+rR
+jO
+jO
+Wm
+SR
+SR
+SR
+SR
+SR
+Wm
+jO
+jO
+jO
+Uh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+lz
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+nO
+nO
+nO
+Eb
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+Ft
+"}
+(127,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+qp
+qp
+qp
+Uh
+SR
+SR
+qJ
+SR
+SR
+Uh
+jO
+jO
+jO
+Uh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Rh
+oM
+oM
+oM
+oM
+oM
+qX
+oM
+MV
+Vm
+gh
+Vm
+oM
+qX
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+nO
+nO
+nO
+nO
+nO
+qU
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+Eb
+nO
+gh
+gh
+gh
+Ft
+"}
+(128,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+Uh
+Uh
+Uh
+Uh
+Uh
+Uh
+Az
+Hb
+HW
+Uh
+Uh
+Uh
+Uh
+Uh
+Uh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+WN
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+oM
+oM
+lz
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(129,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Uh
+SR
+aO
+SR
+Uh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+BJ
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+Ft
+"}
+(130,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Uh
+Uh
+Uh
+Uh
+Uh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+Eb
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+nO
+gh
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(131,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+WN
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+nO
+nO
+xh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(132,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+lz
+Vm
+gh
+Vm
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Ek
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(133,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+qX
+oM
+oM
+Rh
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Rh
+oM
+oM
+qX
+MV
+Vm
+gh
+Vm
+oM
+Rh
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+Rh
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+BJ
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(134,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+lz
+Vm
+gh
+Vm
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+oM
+zL
+oM
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+nO
+nO
+gh
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(135,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+qX
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+oM
+oM
+oM
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+Eb
+nO
+nO
+xh
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(136,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+oM
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(137,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+lz
+MV
+lz
+Vm
+gh
+gh
+gh
+gh
+Vm
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+oM
+qX
+oM
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+nO
+nO
+nO
+nO
+nO
+nO
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(138,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Vm
+Vm
+Vm
+Vm
+Vm
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(139,1,1) = {"
+Ft
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+gh
+Ft
+"}
+(140,1,1) = {"
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+Ft
+"}
diff --git a/maps/gateway_vr/variable/arynthilakeunderground_b.dmm b/maps/gateway_vr/variable/arynthilakeunderground_b.dmm
new file mode 100644
index 0000000000..fea5581135
--- /dev/null
+++ b/maps/gateway_vr/variable/arynthilakeunderground_b.dmm
@@ -0,0 +1,20333 @@
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"ah" = (
+/obj/machinery/door/airlock/maintenance/common{
+ hackProof = 1;
+ locked = 1;
+ maxhealth = 5000
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"aN" = (
+/obj/effect/gibspawner/generic,
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"aZ" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"bL" = (
+/turf/simulated/mineral/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"bX" = (
+/turf/unsimulated/mineral,
+/area/gateway/arynthilake/underground)
+"cE" = (
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"cH" = (
+/obj/machinery/porta_turret{
+ check_access = 0;
+ check_all = 1;
+ check_anomalies = 0;
+ check_arrest = 0;
+ check_records = 0;
+ lethal = 1
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"cV" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"eP" = (
+/obj/structure/stairs/spawner/west,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"eQ" = (
+/obj/random/awayloot,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"fM" = (
+/turf/simulated/floor/tiled/eris/steel/danger,
+/area/gateway/arynthilake/engine)
+"fZ" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/obj/machinery/gear_dispenser/adventure_box/weapon{
+ chance_to_delete = 50;
+ needs_power = 1
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"gb" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"gk" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/machinery/gear_dispenser/randomvoidsuit{
+ needs_power = 1
+ },
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"hy" = (
+/obj/machinery/door/airlock/maintenance/common,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/engine)
+"hB" = (
+/turf/simulated/wall/r_wall,
+/area/gateway/arynthilake/underground)
+"iv" = (
+/obj/structure/noticeboard{
+ pixel_x = 32
+ },
+/obj/item/weapon/paper/gateway/arynthilake,
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"iR" = (
+/obj/random/mob/semirandom_mob_spawner/robot,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"iU" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/techmaint,
+/area/gateway/arynthilake/engine)
+"kb" = (
+/turf/simulated/wall/r_wall,
+/area/gateway/arynthilake/engine)
+"mi" = (
+/obj/machinery/gear_dispenser/adventure_box/weapon{
+ chance_to_delete = 50;
+ needs_power = 1
+ },
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"mj" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/tech_supply,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"mw" = (
+/obj/machinery/power/rtg/abductor,
+/obj/structure/cable/green{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/turf/simulated/floor/tiled/eris/steel/danger,
+/area/gateway/arynthilake/engine)
+"ng" = (
+/obj/effect/map_effect/perma_light/gateway{
+ light_color = "#0c6ba6";
+ light_power = .3;
+ light_range = 5
+ },
+/turf/simulated/floor/beach/sand/desert,
+/area/gateway/arynthilake/underground/intocave{
+ enter_message = "There is some light filtering from the center of this patch of sand. You could probably climb up from there."
+ })
+"ni" = (
+/obj/random/mob/semirandom_mob_spawner/robot,
+/turf/simulated/floor/tiled/eris/steel/danger,
+/area/gateway/arynthilake/engine)
+"oL" = (
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"oZ" = (
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"rW" = (
+/obj/structure/ladder/up,
+/turf/simulated/floor/tiled/eris/dark/monofloor,
+/area/gateway/arynthilake/underground/maintenance)
+"sg" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/random/mob/semirandom_mob_spawner/monster/d,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"sn" = (
+/obj/random/mob/semirandom_mob_spawner/robot,
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"uc" = (
+/obj/machinery/gear_dispenser/adventure_box/weapon{
+ chance_to_delete = 50;
+ needs_power = 1
+ },
+/obj/machinery/light/small,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"ui" = (
+/obj/machinery/light/small,
+/obj/structure/closet/crate/engineering/electrical,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"va" = (
+/obj/machinery/light/small,
+/obj/machinery/gear_dispenser/randomweapons{
+ needs_power = 1
+ },
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"vG" = (
+/obj/random/awayloot,
+/obj/random/mob/semirandom_mob_spawner/monster/f,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"wg" = (
+/obj/random/mob/semirandom_mob_spawner/monster/e,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"wi" = (
+/turf/simulated/wall/r_wall,
+/area/gateway/arynthilake/underground/maintenance)
+"wG" = (
+/obj/random/mob/semirandom_mob_spawner/robot,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"xl" = (
+/obj/random/awayloot,
+/obj/structure/table/rack/shelf/steel,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"xO" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/obj/random/tool/alien,
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"xP" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/device/mapping_unit,
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"yv" = (
+/obj/machinery/gear_dispenser/adventure_box/weapon{
+ chance_to_delete = 50;
+ needs_power = 1
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"yK" = (
+/obj/random/mob/semirandom_mob_spawner/monster/c,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"zV" = (
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"Cp" = (
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled/eris/techmaint,
+/area/gateway/arynthilake/engine)
+"Cs" = (
+/obj/machinery/gear_dispenser/adventure_box{
+ chance_to_delete = 50;
+ needs_power = 1
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"Dj" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/toolbox,
+/turf/simulated/floor/tiled/eris/techmaint,
+/area/gateway/arynthilake/engine)
+"Ej" = (
+/obj/machinery/gear_dispenser/adventure_box{
+ chance_to_delete = 85;
+ needs_power = 1
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"EX" = (
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/floor/tiled/eris/techmaint,
+/area/gateway/arynthilake/engine)
+"Ff" = (
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"Fs" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"FH" = (
+/obj/structure/cable/green{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled/eris/steel/danger,
+/area/gateway/arynthilake/engine)
+"GB" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"Il" = (
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"ID" = (
+/obj/random/mob/semirandom_mob_spawner/monster/b,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"JL" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool/power,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"JS" = (
+/obj/machinery/light/small,
+/obj/random/mob/semirandom_mob_spawner/robot,
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"Kx" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/eris/steel/danger,
+/area/gateway/arynthilake/engine)
+"KZ" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"LQ" = (
+/obj/random/mob/semirandom_mob_spawner/monster/d,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"LR" = (
+/obj/random/mob/semirandom_mob_spawner/monster/f,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"LY" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"Mg" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"Oe" = (
+/obj/machinery/gear_dispenser/adventure_box/weapon{
+ chance_to_delete = 85;
+ needs_power = 1
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"Ps" = (
+/obj/structure/table/rack,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"PY" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"QA" = (
+/obj/machinery/crystal,
+/turf/simulated/mineral/floor/ignore_cavegen,
+/area/gateway/arynthilake/underground)
+"QT" = (
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled/eris/steel/orangecorner,
+/area/gateway/arynthilake/engine)
+"Rk" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"Rr" = (
+/obj/machinery/door/airlock/maintenance/engi,
+/turf/simulated/floor/tiled/steel_ridged,
+/area/gateway/arynthilake/engine)
+"UC" = (
+/turf/simulated/floor/tiled/eris/techmaint,
+/area/gateway/arynthilake/engine)
+"Vj" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"Vo" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/tool/powermaint,
+/turf/simulated/floor/tiled/eris/techmaint,
+/area/gateway/arynthilake/engine)
+"Vx" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/tiled/eris/steel/danger,
+/area/gateway/arynthilake/engine)
+"Wd" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/item/weapon/cell/void,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/turf/simulated/floor/tiled/eris/steel/monofloor,
+/area/gateway/arynthilake/engine)
+"WK" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/plating/eris/under,
+/area/gateway/arynthilake/underground/maintenance)
+"Xt" = (
+/turf/simulated/mineral/ignore_cavegen,
+/area/gateway/arynthilake/underground/maintenance)
+"Xx" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"XA" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/obj/random/tech_supply,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"Zl" = (
+/obj/structure/cable/green{
+ d1 = 16;
+ d2 = 0;
+ icon_state = "16-0"
+ },
+/obj/structure/cable/green{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/turf/simulated/floor/tiled/eris/steel/danger,
+/area/gateway/arynthilake/engine)
+"Zz" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/random/mob/semirandom_mob_spawner/robot,
+/turf/simulated/floor/tiled/eris/steel/techfloor,
+/area/gateway/arynthilake/engine)
+"ZX" = (
+/turf/simulated/floor/beach/sand/desert,
+/area/gateway/arynthilake/underground/intocave{
+ enter_message = "There is some light filtering from the center of this patch of sand. You could probably climb up from there."
+ })
+
+(1,1,1) = {"
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+"}
+(2,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(3,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(4,1,1) = {"
+bX
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+wi
+Oe
+oZ
+cH
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+KZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+LR
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(5,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+cE
+oZ
+oZ
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+Ej
+oZ
+oZ
+oZ
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+yK
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+iR
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+Rk
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(6,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+cH
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+Ff
+Ff
+bL
+bX
+"}
+(7,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+Xt
+Xt
+Xt
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+Rk
+oZ
+oZ
+oZ
+Rk
+oZ
+wi
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+QA
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+Ff
+bL
+bL
+bX
+"}
+(8,1,1) = {"
+bX
+bL
+bL
+wi
+cE
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+Rk
+oZ
+oZ
+oZ
+wi
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+Ff
+LR
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bX
+"}
+(9,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+cE
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+yK
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+Oe
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bX
+"}
+(10,1,1) = {"
+bX
+bL
+bL
+wi
+Cs
+fZ
+Cs
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Rk
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+Vj
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+yK
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+LR
+Ff
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(11,1,1) = {"
+bX
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+kb
+kb
+kb
+kb
+kb
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(12,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+kb
+ni
+Zl
+ni
+kb
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+Rk
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+WK
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+yK
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(13,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+kb
+kb
+kb
+kb
+kb
+Kx
+FH
+Vx
+kb
+kb
+kb
+kb
+kb
+kb
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+yK
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(14,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+Fs
+Fs
+Fs
+kb
+fM
+fM
+mw
+fM
+fM
+kb
+Il
+Il
+Il
+kb
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+yK
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+LR
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(15,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+cV
+Il
+Il
+Rr
+fM
+fM
+fM
+fM
+fM
+Rr
+Il
+Il
+Il
+kb
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+QA
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(16,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+sn
+Il
+Il
+kb
+kb
+kb
+kb
+kb
+kb
+kb
+Il
+Il
+JS
+kb
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+WK
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+WK
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(17,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+Il
+Il
+Il
+Il
+kb
+eP
+eP
+eP
+kb
+Fs
+Il
+Il
+Il
+kb
+bL
+wi
+Mg
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+QA
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+LR
+Ff
+Ff
+QA
+Ff
+LR
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(18,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+Il
+Il
+Il
+GB
+kb
+oL
+oL
+oL
+kb
+xO
+Il
+Il
+Il
+kb
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+Oe
+oZ
+cH
+oZ
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+yK
+oZ
+oZ
+Ej
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+LR
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bX
+"}
+(19,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+Il
+Il
+Il
+Il
+kb
+zV
+zV
+zV
+kb
+Wd
+Il
+Il
+Il
+kb
+bL
+wi
+cE
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+cH
+oZ
+Oe
+wi
+Oe
+oZ
+cH
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bX
+"}
+(20,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+kb
+Rr
+kb
+kb
+kb
+zV
+zV
+zV
+kb
+kb
+kb
+Rr
+kb
+kb
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+Oe
+oZ
+cH
+oZ
+oZ
+oZ
+yK
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+Ej
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bX
+"}
+(21,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+iU
+UC
+UC
+UC
+aZ
+zV
+zV
+zV
+aZ
+UC
+UC
+UC
+Vo
+kb
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+QA
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bX
+"}
+(22,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+iU
+EX
+UC
+Dj
+QT
+zV
+aN
+zV
+xP
+Cp
+UC
+EX
+Cp
+kb
+bL
+wi
+oZ
+cH
+cE
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+cE
+cH
+Oe
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+yK
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+LR
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bX
+"}
+(23,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+iU
+UC
+UC
+UC
+gb
+zV
+zV
+zV
+gb
+UC
+UC
+UC
+Dj
+kb
+bL
+wi
+oZ
+oZ
+oZ
+wi
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+Oe
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bX
+"}
+(24,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+kb
+Rr
+kb
+kb
+kb
+zV
+zV
+zV
+kb
+kb
+kb
+Rr
+kb
+kb
+bL
+wi
+Ej
+Oe
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+oZ
+oZ
+Ej
+wi
+Mg
+oZ
+cE
+oZ
+oZ
+cH
+oZ
+Oe
+wi
+Mg
+oZ
+oZ
+yK
+oZ
+cH
+oZ
+Oe
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+LR
+bL
+bL
+Ff
+bL
+bL
+bL
+bX
+"}
+(25,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+oL
+oL
+oL
+Ps
+kb
+zV
+zV
+zV
+kb
+xl
+oL
+oL
+Xx
+kb
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+WK
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+bL
+bL
+bL
+bX
+"}
+(26,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+oL
+PY
+oL
+Ps
+kb
+zV
+iv
+zV
+kb
+LY
+oL
+oL
+XA
+kb
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+KZ
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+ah
+ah
+ah
+wi
+wi
+wi
+wi
+wi
+wi
+Ej
+oZ
+oZ
+oZ
+yK
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bX
+"}
+(27,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+Zz
+JL
+oL
+ui
+kb
+hy
+kb
+hy
+kb
+gk
+oL
+wG
+va
+kb
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+Oe
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+Oe
+cH
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bX
+"}
+(28,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+oL
+PY
+oL
+Ps
+kb
+oZ
+oZ
+oZ
+kb
+XA
+oL
+oL
+mj
+kb
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+Ej
+oZ
+oZ
+oZ
+Vj
+oZ
+yK
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+yK
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+vG
+Ff
+bL
+bX
+"}
+(29,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+oL
+oL
+oL
+Ps
+kb
+oZ
+oZ
+oZ
+kb
+xl
+oL
+oL
+Xx
+kb
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+ID
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bX
+"}
+(30,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+kb
+kb
+kb
+kb
+kb
+kb
+oZ
+cE
+oZ
+kb
+kb
+kb
+kb
+kb
+kb
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+cH
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+Ff
+Ff
+LR
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+LR
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(31,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+eQ
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(32,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+Ej
+Oe
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+Ej
+Oe
+Ej
+wi
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+Ff
+Ff
+QA
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+LR
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(33,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Oe
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bX
+"}
+(34,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+cH
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+KZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+yK
+oZ
+wi
+bL
+Ff
+LR
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(35,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+Ej
+Oe
+Ej
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+Oe
+Oe
+Oe
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+ID
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+yK
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+LR
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(36,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(37,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+cH
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+cH
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+Vj
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+WK
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(38,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+Ej
+Oe
+Ej
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+cH
+oZ
+Oe
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(39,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+ID
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+yK
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(40,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+cH
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+ID
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+QA
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(41,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+ID
+oZ
+oZ
+oZ
+wi
+oZ
+KZ
+oZ
+ID
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+yK
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(42,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+oZ
+Vj
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+wi
+Mg
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+ID
+oZ
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+Ff
+bL
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(43,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+ID
+Vj
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+ID
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+LR
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+LR
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(44,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+cH
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+yK
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(45,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+Oe
+wi
+Mg
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+Ej
+Oe
+Ej
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+Oe
+Oe
+Oe
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(46,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+Mg
+oZ
+cE
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+Mg
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+Oe
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+yK
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(47,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+cE
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+cH
+oZ
+wi
+bL
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(48,1,1) = {"
+bX
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+ah
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+LR
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(49,1,1) = {"
+bX
+wi
+Ej
+Oe
+Ej
+wi
+Ej
+Oe
+Ej
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+Ej
+Oe
+Ej
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+ah
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+yK
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+LR
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(50,1,1) = {"
+bX
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+Mg
+oZ
+oZ
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+ah
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(51,1,1) = {"
+bX
+wi
+oZ
+cH
+oZ
+wi
+oZ
+cH
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+Ff
+LR
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(52,1,1) = {"
+bX
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+Oe
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+ID
+oZ
+WK
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+Mg
+oZ
+oZ
+wi
+bL
+wi
+oZ
+yK
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+yK
+wi
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(53,1,1) = {"
+bX
+wi
+oZ
+oZ
+LQ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+WK
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(54,1,1) = {"
+bX
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+Ej
+Oe
+Ej
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+Ej
+Oe
+Ej
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(55,1,1) = {"
+bX
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+Ff
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(56,1,1) = {"
+bX
+wi
+Mg
+oZ
+oZ
+wi
+Mg
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+cH
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+Mg
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+ID
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(57,1,1) = {"
+bX
+wi
+oZ
+oZ
+oZ
+wi
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+Mg
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+LR
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(58,1,1) = {"
+bX
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+cE
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+ID
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+cH
+Oe
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+LR
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+QA
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(59,1,1) = {"
+bX
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+Oe
+oZ
+oZ
+cE
+oZ
+oZ
+wi
+bL
+wi
+oZ
+cH
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+ID
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+Mg
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(60,1,1) = {"
+bX
+wi
+LQ
+oZ
+oZ
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+Ej
+oZ
+oZ
+oZ
+Vj
+oZ
+wi
+bL
+wi
+Ej
+Oe
+Ej
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+cH
+oZ
+wi
+wi
+oZ
+Rk
+oZ
+oZ
+oZ
+Rk
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+Ej
+Oe
+Ej
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(61,1,1) = {"
+bX
+wi
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+Mg
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+cH
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+LR
+Ff
+bL
+bL
+bL
+bL
+wg
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(62,1,1) = {"
+bX
+wi
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+cE
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+Ej
+Oe
+Ej
+wi
+wi
+oZ
+oZ
+oZ
+Rk
+oZ
+oZ
+oZ
+wi
+Ej
+Oe
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+cH
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(63,1,1) = {"
+bX
+wi
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+KZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bX
+"}
+(64,1,1) = {"
+bX
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+oZ
+oZ
+wi
+cE
+oZ
+oZ
+wi
+bL
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+KZ
+ID
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+yK
+oZ
+wi
+bL
+wi
+oZ
+cH
+oZ
+yK
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+yK
+oZ
+wi
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bX
+"}
+(65,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+ID
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+Vj
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Vj
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bX
+"}
+(66,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+cH
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+ID
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bX
+"}
+(67,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+ah
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+yK
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+Ff
+Ff
+bL
+bL
+bL
+LR
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bX
+"}
+(68,1,1) = {"
+bX
+bL
+wi
+Mg
+oZ
+LQ
+oZ
+oZ
+ah
+oZ
+oZ
+cE
+oZ
+oZ
+oZ
+oZ
+oZ
+WK
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+Ej
+Oe
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+cH
+oZ
+oZ
+oZ
+ID
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+cH
+oZ
+oZ
+oZ
+WK
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+Mg
+yK
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bX
+"}
+(69,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+ah
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cE
+wi
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+Vj
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+Ff
+oZ
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bX
+"}
+(70,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bX
+"}
+(71,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+Ej
+Oe
+Ej
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+ID
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+yK
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+wg
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(72,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+Vj
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+Vj
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+wg
+QA
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(73,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+cH
+oZ
+Oe
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+ah
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(74,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+ah
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+Rk
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+wg
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(75,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+ah
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+Ff
+bL
+bL
+bL
+wg
+bL
+bL
+bX
+"}
+(76,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Vj
+LQ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+Rk
+oZ
+oZ
+oZ
+Rk
+oZ
+wi
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Oe
+oZ
+cH
+yK
+oZ
+oZ
+oZ
+WK
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+Ff
+bL
+bL
+bX
+"}
+(77,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+Ff
+Ff
+QA
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+Ff
+bL
+bL
+bX
+"}
+(78,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+Ff
+bL
+bL
+bX
+"}
+(79,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+KZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+Ff
+bL
+bL
+bX
+"}
+(80,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+bL
+bL
+bX
+"}
+(81,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+ID
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+bL
+bL
+Ff
+bL
+bL
+Ff
+Ff
+bL
+bL
+bX
+"}
+(82,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+Mg
+oZ
+LQ
+cH
+oZ
+Oe
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+LR
+Ff
+bL
+bL
+bL
+LR
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bX
+"}
+(83,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bX
+"}
+(84,1,1) = {"
+bX
+bL
+wi
+LQ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+Ff
+wg
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(85,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+ID
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(86,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+ID
+oZ
+wi
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(87,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+Mg
+ID
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+LR
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(88,1,1) = {"
+bX
+bL
+wi
+Mg
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+Vj
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Vj
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+Ff
+Ff
+Ff
+LR
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(89,1,1) = {"
+bX
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+ah
+ah
+ah
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+LR
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(90,1,1) = {"
+bX
+bL
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+iR
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+eQ
+Ff
+Ff
+Ff
+bL
+Ff
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(91,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+Oe
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+LR
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(92,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+wi
+sg
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+Vj
+oZ
+LQ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+Oe
+oZ
+cH
+oZ
+LQ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+Mg
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(93,1,1) = {"
+bX
+bL
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+LQ
+oZ
+oZ
+cH
+yv
+wi
+oZ
+oZ
+LQ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+ID
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+Ff
+QA
+Ff
+LR
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(94,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+wg
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(95,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+Xt
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+LR
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(96,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+Xt
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+Mg
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+oZ
+wi
+Xt
+Xt
+wi
+oZ
+oZ
+WK
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(97,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+Xt
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+WK
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+QA
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(98,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+ah
+ah
+ah
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Xt
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+wi
+wi
+LQ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+ID
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+wg
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(99,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+LQ
+oZ
+cH
+yv
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+wg
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(100,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+Ej
+Oe
+Ej
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+Vj
+oZ
+oZ
+oZ
+oZ
+wi
+LQ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(101,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(102,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Vj
+oZ
+wi
+bL
+wi
+oZ
+cH
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Mg
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(103,1,1) = {"
+bX
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+wg
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(104,1,1) = {"
+bX
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+ID
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+QA
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+wg
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+wg
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(105,1,1) = {"
+bX
+bL
+bL
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Oe
+oZ
+cH
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+WK
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+ID
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+ID
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+wg
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(106,1,1) = {"
+bX
+bL
+bL
+wi
+Oe
+oZ
+cH
+oZ
+oZ
+oZ
+oZ
+oZ
+WK
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+wi
+bL
+wi
+Ej
+Oe
+Ej
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+cH
+oZ
+wi
+Oe
+oZ
+cH
+oZ
+oZ
+oZ
+oZ
+ID
+WK
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(107,1,1) = {"
+bX
+bL
+bL
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+Mg
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+QA
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+QA
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bX
+"}
+(108,1,1) = {"
+bX
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Oe
+oZ
+cH
+oZ
+oZ
+oZ
+WK
+wi
+Ej
+Oe
+Ej
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+wg
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bX
+"}
+(109,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+LQ
+KZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(110,1,1) = {"
+bX
+bL
+bL
+wi
+Mg
+rW
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+LQ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(111,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+Mg
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+Ej
+Oe
+Ej
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(112,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+cH
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+Vj
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+Ff
+wg
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(113,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+cH
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+wg
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(114,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+cH
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+Rk
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+Oe
+Ej
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bX
+"}
+(115,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+ID
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+Ff
+eQ
+Ff
+bL
+bL
+Ff
+wg
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+Ff
+wg
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+eQ
+bL
+bX
+"}
+(116,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+Oe
+Ej
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+Rk
+oZ
+oZ
+Rk
+oZ
+wi
+oZ
+oZ
+WK
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+KZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+bL
+Ff
+bL
+bX
+"}
+(117,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+Mg
+oZ
+oZ
+cH
+Oe
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+WK
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+bL
+bX
+"}
+(118,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+LQ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+LQ
+oZ
+oZ
+oZ
+oZ
+Vj
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+hB
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bX
+"}
+(119,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+hB
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bX
+"}
+(120,1,1) = {"
+bX
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+hB
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+wg
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+Ff
+bL
+bL
+bX
+"}
+(121,1,1) = {"
+bX
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+Oe
+Ej
+wi
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+LQ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+wi
+hB
+oZ
+Rk
+oZ
+oZ
+oZ
+Rk
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+ID
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(122,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+wi
+Ej
+Oe
+Ej
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+hB
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+ZX
+Ff
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+wg
+Ff
+bL
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(123,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+Mg
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+WK
+wi
+oZ
+LQ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+hB
+oZ
+oZ
+oZ
+Rk
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+ZX
+ng
+ZX
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(124,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+Mg
+oZ
+oZ
+wi
+bL
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+cH
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+hB
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+Mg
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+ZX
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bX
+"}
+(125,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+LQ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+hB
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(126,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+wi
+wi
+LQ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+wg
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(127,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+KZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+iR
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(128,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Cs
+oZ
+oZ
+yv
+oZ
+oZ
+Cs
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+oZ
+cH
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+Mg
+LQ
+oZ
+cH
+oZ
+Oe
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+LQ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(129,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+mi
+oZ
+oZ
+oZ
+oZ
+oZ
+uc
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+Ej
+Oe
+Ej
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+Ej
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+cH
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+wg
+Ff
+QA
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(130,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+Cs
+oZ
+oZ
+oZ
+oZ
+oZ
+Cs
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+Ej
+Oe
+Ej
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+ID
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bX
+"}
+(131,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+LQ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+Ej
+Oe
+Ej
+wi
+oZ
+LQ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(132,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+Oe
+oZ
+cH
+oZ
+oZ
+WK
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+wg
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(133,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+cH
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+wi
+Ej
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(134,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+cH
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+wg
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(135,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+Ej
+Oe
+Ej
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+Vj
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+Vj
+oZ
+wi
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+Ff
+Ff
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+Ff
+Ff
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(136,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+wi
+wi
+wi
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+wg
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(137,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+QA
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(138,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+oZ
+Vj
+oZ
+LQ
+oZ
+oZ
+oZ
+oZ
+oZ
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+Ff
+Ff
+Ff
+Ff
+wg
+Ff
+Ff
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(139,1,1) = {"
+bX
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+wi
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bL
+bX
+"}
+(140,1,1) = {"
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+bX
+"}
diff --git a/maps/gateway_vr/variable/honlethhighlands.dm b/maps/gateway_vr/variable/honlethhighlands.dm
new file mode 100644
index 0000000000..526cfb3a8e
--- /dev/null
+++ b/maps/gateway_vr/variable/honlethhighlands.dm
@@ -0,0 +1,72 @@
+/obj/effect/overmap/visitable/sector/tether_gateway/honlethhighlands
+ name = "bluespace shimmer"
+ desc = "The shimmering reflection of some sort of bluespace phenomena."
+ scanner_desc = @{"It is difficult to tell just what is beyond this strange shimmering shape. The air beyond seems breathable, if very cold."}
+ icon = 'icons/obj/overmap_vr.dmi'
+ icon_state = "shimmer"
+ color = "#171DFF" //bloo
+ in_space = 0
+
+/datum/map_template/tether_lateload/gateway/honlethhighlands_a/on_map_loaded(z)
+ . = ..()
+ new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, z, world.maxx - 4, world.maxy - 4) // Create the mining Z-level.
+ new /datum/random_map/noise/ore(null, 1, 1, z, 64, 64) // Create the mining ore distribution map.
+
+/datum/map_template/tether_lateload/gateway/honlethhighlands_b/on_map_loaded(z)
+ . = ..()
+ new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, z, world.maxx - 4, world.maxy - 4) // Create the mining Z-level.
+ new /datum/random_map/noise/ore(null, 1, 1, z, 64, 64) // Create the mining ore distribution map.
+
+
+//Areas//
+
+/area/gateway/honlethhighlands
+ name = "Winterland"
+ icon = 'icons/turf/areas_vr.dmi'
+ icon_state = "bluwhicir"
+ requires_power = TRUE
+ dynamic_lighting = TRUE
+ flags = RAD_SHIELDED
+ base_turf = /turf/simulated/floor/outdoors/newdirt
+
+/area/gateway/honlethhighlands/beach
+ name = "frozen beach"
+
+/area/gateway/honlethhighlands/caves
+ name = "frozen caves"
+
+/area/gateway/honlethhighlands/gate
+ name = "abandoned gateway"
+ icon_state = "magwhicir"
+
+/area/gateway/honlethhighlands/town
+ icon_state = "bluwhisqu"
+ name = "abandoned town"
+
+/area/gateway/honlethhighlands/town/command
+ icon_state = "cyawhisqu"
+ name = "command"
+
+/area/gateway/honlethhighlands/town/garden
+ icon_state = "cyawhisqu"
+ name = "garden"
+
+/area/gateway/honlethhighlands/town/xenobio
+ icon_state = "cyawhisqu"
+ name = "xenobio"
+
+/area/gateway/honlethhighlands/town/bar
+ icon_state = "cyawhisqu"
+ name = "bar"
+
+/area/gateway/honlethhighlands/town/supply
+ icon_state = "cyawhisqu"
+ name = "supply"
+
+/area/gateway/honlethhighlands/town/engineering
+ icon_state = "cyawhisqu"
+ name = "engineering"
+
+/area/gateway/honlethhighlands/town/kitchen
+ icon_state = "cyawhisqu"
+ name = "kitchen"
\ No newline at end of file
diff --git a/maps/gateway_vr/variable/honlethhighlands_a.dmm b/maps/gateway_vr/variable/honlethhighlands_a.dmm
new file mode 100644
index 0000000000..e80e463c65
--- /dev/null
+++ b/maps/gateway_vr/variable/honlethhighlands_a.dmm
@@ -0,0 +1,22821 @@
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"aa" = (
+/turf/unsimulated/wall/planetary/normal{
+ name = "the end";
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"ab" = (
+/turf/simulated/mineral/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"ac" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"ad" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"ae" = (
+/turf/simulated/floor/outdoors/rocks{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"af" = (
+/obj/structure/flora/tree/pine,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"ag" = (
+/turf/simulated/floor/beach/sand{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"ah" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"ai" = (
+/obj/effect/fake_sun/cool,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"aj" = (
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"ak" = (
+/turf/simulated/wall/r_wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/gate)
+"an" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"ao" = (
+/turf/simulated/floor/outdoors/ice{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"ap" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 9
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"av" = (
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"aw" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"ax" = (
+/obj/effect/floor_decal/techfloor,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"ay" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"az" = (
+/obj/machinery/door/airlock/glass_centcom{
+ locked = 1
+ },
+/turf/simulated/floor/tiled/techfloor/grid,
+/area/gateway/honlethhighlands/gate)
+"aA" = (
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"aB" = (
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"aC" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"aD" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"aE" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ name = "dirt";
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"aF" = (
+/turf/simulated/wall/log,
+/area/gateway/honlethhighlands/town)
+"aG" = (
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"aI" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"aJ" = (
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"aK" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/outdoors/rocks{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"aL" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"aM" = (
+/turf/unsimulated/mineral{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"aN" = (
+/obj/structure/flora/tree/pine,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"aO" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/engineering)
+"aP" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/junk,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"aQ" = (
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"aR" = (
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"aS" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"aU" = (
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 8;
+ pixel_x = -22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"aV" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"aW" = (
+/turf/simulated/floor/outdoors/grass/forest{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"aX" = (
+/turf/simulated/mineral/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"aY" = (
+/turf/simulated/floor/outdoors/grass/forest{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"aZ" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/outdoors/grass/forest{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"ba" = (
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bb" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bd" = (
+/obj/structure/flora/tree/pine,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"be" = (
+/obj/structure/flora/tree/pine,
+/turf/simulated/floor/outdoors/grass/forest{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bf" = (
+/turf/simulated/floor/outdoors/mud{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"bg" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bh" = (
+/turf/simulated/floor/outdoors/mud{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"bi" = (
+/obj/item/weapon/stool,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bj" = (
+/turf/simulated/floor/outdoors/ice{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bk" = (
+/obj/item/stack/material/log{
+ amount = 15
+ },
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bl" = (
+/obj/structure/table,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bm" = (
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bn" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bp" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/c,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"bw" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 10
+ },
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 8;
+ pixel_x = -28
+ },
+/obj/item/device/flash,
+/obj/item/weapon/reagent_containers/spray/pepper,
+/obj/item/weapon/stamp,
+/obj/item/weapon/stamp/denied,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"by" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"bz" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/bar)
+"bA" = (
+/obj/random/mob/semirandom_mob_spawner/vore/passive/c,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"bB" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/alarm/alarms_hidden{
+ pixel_y = 21
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"bD" = (
+/obj/machinery/vending/dinnerware{
+ dir = 1
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"bK" = (
+/obj/structure/bed/chair/office/light,
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate/b,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"bY" = (
+/obj/machinery/alarm/alarms_hidden{
+ pixel_y = 21
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"ch" = (
+/obj/structure/bed/chair/office/light{
+ dir = 4
+ },
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate/b,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"cj" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town/engineering)
+"cA" = (
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"cD" = (
+/obj/machinery/door/airlock/hatch,
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"cE" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/structure/table/rack/shelf/steel,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"cT" = (
+/obj/structure/closet/secure_closet/freezer/fridge,
+/obj/item/weapon/reagent_containers/food/condiment/enzyme{
+ layer = 5
+ },
+/obj/item/weapon/reagent_containers/food/condiment/enzyme{
+ layer = 5
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"cY" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 1;
+ pixel_y = -20
+ },
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/honlethhighlands/town/garden)
+"de" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/kitchen)
+"dm" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 8;
+ pixel_x = 20
+ },
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"do" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/command)
+"dw" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/item/weapon/stool,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"dF" = (
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"dQ" = (
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"dX" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/awayloot,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"dZ" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/obj/item/modular_computer/console/preset/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"ef" = (
+/obj/item/weapon/reagent_containers/glass/bucket,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/honlethhighlands/town/garden)
+"em" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full{
+ maxhealth = 9000
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"eq" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/awayloot,
+/obj/random/awayloot,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"ez" = (
+/obj/structure/table/borosilicate,
+/obj/random/snack,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"eB" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/item/modular_computer/console/preset/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"fa" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/b,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"fi" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/book/manual/bar_guide,
+/obj/random/drinkbottle,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"fl" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"fo" = (
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"fN" = (
+/obj/machinery/gateway/brass{
+ dir = 10;
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"fT" = (
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"gm" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"gt" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/bed/chair/sofa/brown/left{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"gB" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"gV" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 1;
+ pixel_y = -20
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"he" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/bar)
+"hm" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/structure/table/steel_reinforced,
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"hz" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/machinery/alarm/alarms_hidden{
+ dir = 8;
+ pixel_x = 20
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"hB" = (
+/obj/machinery/door/airlock/centcom{
+ hackProof = 1;
+ name = "Airlock";
+ req_one_access = null
+ },
+/turf/simulated/floor/tiled/techfloor/grid,
+/area/gateway/honlethhighlands/gate)
+"hD" = (
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"hE" = (
+/obj/machinery/door/airlock/silver,
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/kitchen)
+"hN" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"hQ" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"hV" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands)
+"is" = (
+/obj/item/weapon/flame/lighter/random,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"jk" = (
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"jn" = (
+/obj/effect/overmap/visitable/sector/tether_gateway/honlethhighlands,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"jp" = (
+/obj/item/modular_computer/console/preset/civilian,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"jE" = (
+/obj/machinery/gateway/brass{
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"jK" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"jS" = (
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"jT" = (
+/obj/structure/table/rack/steel,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/random/maintenance/medical,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"kx" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 10
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"kC" = (
+/obj/item/modular_computer/console/preset/command,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"kL" = (
+/obj/item/weapon/stool,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/bar)
+"kS" = (
+/obj/structure/closet/secure_closet/freezer/kitchen,
+/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{
+ pixel_x = -3
+ },
+/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{
+ pixel_x = -3
+ },
+/obj/item/weapon/reagent_containers/food/condiment/small/peppermill{
+ pixel_x = 3
+ },
+/obj/item/weapon/reagent_containers/food/condiment/small/peppermill{
+ pixel_x = 3
+ },
+/obj/item/weapon/storage/box/beakers{
+ name = "box of measuring cups";
+ pixel_x = 2;
+ pixel_y = 3;
+ starts_with = list(/obj/item/weapon/reagent_containers/glass/beaker/measuring_cup = 7)
+ },
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 4;
+ pixel_x = 22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"lb" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town/supply)
+"lj" = (
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"lk" = (
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"lp" = (
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 1;
+ pixel_y = 22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 2;
+ icon_state = "0-2"
+ },
+/obj/structure/table/rack/shelf/steel,
+/obj/random/firstaid,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"lS" = (
+/turf/simulated/wall/log,
+/area/gateway/honlethhighlands)
+"lY" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/beach/sand{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"mb" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/garden)
+"mr" = (
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"mv" = (
+/obj/random/mob/semirandom_mob_spawner/fish,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"mG" = (
+/obj/structure/table/bench/wooden,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"mJ" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/action_figure,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"mM" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/item/modular_computer/console/preset/research{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"mW" = (
+/obj/machinery/smartfridge,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"mY" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"mZ" = (
+/obj/machinery/light/small,
+/obj/structure/closet,
+/obj/random/contraband,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"nc" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town/command)
+"nd" = (
+/obj/machinery/portable_atmospherics/hydroponics/soil,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/honlethhighlands/town/garden)
+"nh" = (
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/honlethhighlands)
+"np" = (
+/turf/simulated/floor/outdoors/grass/forest{
+ outdoors = 0
+ },
+/area/gateway/honlethhighlands/town/garden)
+"nx" = (
+/obj/item/weapon/stool/padded,
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"nF" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"nH" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/c,
+/turf/simulated/floor/outdoors/mud{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"nI" = (
+/obj/structure/bed/chair/sofa/green/left{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"nP" = (
+/obj/effect/floor_decal/techfloor,
+/obj/structure/table/rack/steel,
+/obj/random/firstaid,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"od" = (
+/obj/effect/floor_decal/techfloor,
+/obj/machinery/alarm/alarms_hidden{
+ dir = 1;
+ pixel_y = -20
+ },
+/obj/effect/landmark/mcguffin_spawner,
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"oe" = (
+/obj/structure/bonfire,
+/obj/random/meat,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"ol" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town/xenobio)
+"oo" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/bed/chair{
+ dir = 8
+ },
+/obj/random/junk,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"ow" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"oy" = (
+/obj/structure/closet/walllocker_double{
+ dir = 8;
+ pixel_x = -28
+ },
+/obj/random/firstaid,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"oP" = (
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"oS" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/garden)
+"pg" = (
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 4;
+ pixel_x = 28
+ },
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"px" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"pI" = (
+/obj/structure/bed/chair/office/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"pO" = (
+/obj/structure/cable/pink,
+/obj/machinery/power/smes/buildable/offmap_spawn/empty,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"pT" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"pX" = (
+/obj/random/maintenance,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"qc" = (
+/obj/random/multiple/random_size_crate/no_weapons,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"qd" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 10
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"qh" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 4;
+ pixel_x = 28
+ },
+/obj/random/awayloot,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"qm" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"qu" = (
+/obj/structure/filingcabinet/chestdrawer,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"qB" = (
+/obj/item/weapon/stool/padded,
+/obj/random/junk,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"qI" = (
+/obj/structure/closet,
+/obj/random/contraband,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/fiftyspawner/phoron,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"qK" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"qM" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 9
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/bomb_supply,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"qZ" = (
+/obj/random/multiple/random_size_crate/no_weapons,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"rc" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 1;
+ pixel_y = -20
+ },
+/obj/structure/closet,
+/obj/effect/landmark/mcguffin_spawner,
+/obj/random/contraband,
+/obj/random/firstaid,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"ro" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"rz" = (
+/obj/structure/table/marble,
+/obj/machinery/reagentgrinder,
+/obj/item/weapon/reagent_containers/dropper,
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"rB" = (
+/obj/structure/cable{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/obj/machinery/power/port_gen/pacman{
+ anchored = 1
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"rC" = (
+/obj/machinery/vending/hydronutrients,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/garden)
+"rM" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 8;
+ pixel_x = -28
+ },
+/obj/random/awayloot,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"rP" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask,
+/obj/random/drinkbottle,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"rQ" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/gateway/brass{
+ density = 0;
+ dir = 1;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"rU" = (
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 4;
+ pixel_x = 28
+ },
+/obj/random/awayloot,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"rV" = (
+/obj/random/mob/semirandom_mob_spawner/vore/passive/b,
+/turf/simulated/floor/outdoors/grass/forest{
+ outdoors = 0
+ },
+/area/gateway/honlethhighlands/town/garden)
+"rX" = (
+/obj/machinery/door/airlock/silver,
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"sg" = (
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate/b,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"si" = (
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/garden)
+"sD" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate,
+/turf/simulated/floor/beach/sand{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"sF" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"sQ" = (
+/obj/machinery/door/airlock/glass,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"sZ" = (
+/obj/machinery/chem_master/condimaster,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"th" = (
+/obj/machinery/door/airlock/silver,
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/garden)
+"tj" = (
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 4;
+ pixel_x = 28
+ },
+/obj/random/contraband,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"tk" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"tn" = (
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 8;
+ pixel_x = -22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"tK" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"tO" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town/kitchen)
+"tQ" = (
+/obj/effect/floor_decal/industrial/outline/yellow,
+/obj/random/multiple/random_size_crate/no_weapons,
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"tT" = (
+/obj/machinery/door/airlock/silver,
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"tU" = (
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"tX" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"uu" = (
+/obj/item/weapon/stool/padded,
+/obj/random/junk,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/bar)
+"uI" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"uN" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"uQ" = (
+/obj/structure/cable{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/obj/machinery/alarm/alarms_hidden{
+ dir = 1;
+ pixel_y = -20
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"vd" = (
+/obj/machinery/gateway/brass{
+ density = 0;
+ dir = 5;
+ pixel_y = 6;
+ plane = -24
+ },
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"vi" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/awayloot,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"vG" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"vL" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/food/drinks/jar,
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"vU" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"vW" = (
+/obj/machinery/gateway/centeraway/mcguffin{
+ pixel_y = 6;
+ plane = -24
+ },
+/obj/effect/map_effect/perma_light/gateway,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"wm" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/garden)
+"wr" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"wx" = (
+/obj/machinery/door/airlock/silver,
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/bar)
+"wz" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/b,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"wB" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/obj/machinery/space_heater,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"wC" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/cargo,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"wE" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 9
+ },
+/obj/item/modular_computer/console/preset/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"wG" = (
+/obj/machinery/door/airlock/silver,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"wL" = (
+/obj/machinery/appliance/cooker/grill,
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"wN" = (
+/mob/living/simple_mob/animal/passive/penguin,
+/turf/simulated/floor/outdoors/ice{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"wQ" = (
+/obj/structure/table/standard,
+/obj/machinery/microwave,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"wR" = (
+/obj/structure/table/marble,
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"wX" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/c,
+/turf/simulated/floor/beach/sand{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"wY" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/glass/rag,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"xo" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/random/multiple/random_size_crate/no_weapons,
+/obj/effect/floor_decal/industrial/outline/yellow,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"xz" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/garden)
+"xO" = (
+/turf/simulated/wall/iron,
+/area/gateway/honlethhighlands)
+"ya" = (
+/obj/structure/bonfire,
+/turf/simulated/floor/reinforced,
+/area/gateway/honlethhighlands)
+"yb" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"yg" = (
+/obj/machinery/light,
+/obj/structure/closet,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"yi" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/awayloot/nofail,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"yl" = (
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"yu" = (
+/obj/effect/floor_decal/techfloor/corner{
+ dir = 10
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"yC" = (
+/obj/effect/floor_decal/techfloor,
+/obj/machinery/light,
+/obj/item/modular_computer/console/preset/research{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"yH" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 8;
+ pixel_x = -28
+ },
+/obj/random/awayloot,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"yP" = (
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/bar)
+"yX" = (
+/obj/item/weapon/material/knife/machete/hatchet,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/garden)
+"zh" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"zk" = (
+/obj/machinery/light/flamp/noshade,
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town/command)
+"zn" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 10
+ },
+/obj/structure/table/rack/steel,
+/obj/random/contraband,
+/obj/random/contraband,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"zv" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"zE" = (
+/obj/random/junk,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"zP" = (
+/obj/item/weapon/bedsheet/pirate,
+/obj/structure/bed/padded,
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/honlethhighlands)
+"zT" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/b,
+/turf/simulated/floor/beach/sand{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"zV" = (
+/obj/structure/closet/walllocker_double{
+ dir = 8;
+ pixel_x = -28
+ },
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/junk,
+/obj/random/junk,
+/obj/random/junk,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"Aa" = (
+/obj/machinery/alarm/alarms_hidden{
+ pixel_y = 21
+ },
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"Ai" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/wall/r_wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/gate)
+"Aj" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"Ak" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"An" = (
+/obj/machinery/space_heater,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"Ar" = (
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"AF" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/food/drinks/cup,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"AK" = (
+/obj/random/mre,
+/obj/random/mre,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"AO" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"AV" = (
+/obj/random/junk,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"Bf" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 4;
+ pixel_x = 28
+ },
+/obj/effect/landmark/mcguffin_spawner,
+/obj/random/awayloot,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Bi" = (
+/obj/machinery/appliance/cooker/fryer,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"Bj" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"BC" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"BD" = (
+/obj/machinery/door/airlock/silver,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/kitchen)
+"BS" = (
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"BW" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"Ca" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/cargo,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"Ck" = (
+/obj/structure/sink{
+ dir = 4;
+ pixel_x = 11
+ },
+/turf/simulated/floor/plating{
+ outdoors = 1
+ },
+/area/gateway/honlethhighlands/town/garden)
+"Cl" = (
+/obj/structure/table/marble,
+/obj/item/weapon/material/kitchen/rollingpin,
+/obj/item/weapon/material/knife/butch,
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"Cs" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/material/precious,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Cy" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/wall/r_wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/gate)
+"CL" = (
+/obj/effect/floor_decal/techfloor,
+/obj/structure/table/steel_reinforced,
+/obj/machinery/light,
+/obj/random/maintenance/research,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"CM" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"CS" = (
+/obj/machinery/gateway/brass{
+ dir = 4;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Db" = (
+/obj/random/tech_supply/component,
+/obj/random/tech_supply/component,
+/obj/random/multiple/random_size_crate/no_weapons,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"De" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/obj/machinery/light,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"Dg" = (
+/obj/structure/closet,
+/obj/random/contraband,
+/obj/random/tech_supply/component,
+/obj/random/tech_supply/component,
+/obj/random/tech_supply/component,
+/obj/random/tech_supply/component,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Di" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/medical,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Dk" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/xenobio)
+"Dm" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"Ds" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"Du" = (
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate/c,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"DE" = (
+/obj/structure/table/glass,
+/obj/item/modular_computer/laptop/preset/custom_loadout/cheap,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"DF" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"Ec" = (
+/obj/random/awayloot,
+/turf/simulated/floor/outdoors/rocks{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"Ee" = (
+/obj/structure/table/steel_reinforced,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"Eh" = (
+/obj/structure/table/rack/steel,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/medical,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Ej" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"Ep" = (
+/obj/effect/floor_decal/techfloor,
+/obj/structure/table/rack/steel,
+/obj/random/contraband,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Et" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"Ev" = (
+/obj/machinery/power/apc/alarms_hidden{
+ pixel_y = -22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"EP" = (
+/obj/structure/table/glass,
+/obj/item/weapon/paper_bin,
+/obj/item/weapon/newspaper,
+/obj/item/weapon/pen/multi,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Fb" = (
+/obj/structure/table/rack/steel,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/medical,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Fj" = (
+/obj/structure/bed/chair/wood{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"Fu" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate/b,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"FK" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/supply)
+"FN" = (
+/turf/simulated/floor/reinforced,
+/area/gateway/honlethhighlands)
+"FR" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,
+/obj/random/awayloot,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"Ge" = (
+/obj/machinery/door/airlock/glass,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"Gl" = (
+/obj/structure/bed/chair/wood{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"Gn" = (
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"Gr" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/structure/closet,
+/obj/random/contraband,
+/obj/random/tech_supply/component,
+/obj/item/device/multitool,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"Gz" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/drinkbottle,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/bar)
+"GQ" = (
+/obj/random/maintenance,
+/turf/simulated/floor/outdoors/rocks{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"GT" = (
+/turf/simulated/floor/outdoors/mud{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"GY" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"Hd" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"Hh" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"Ht" = (
+/obj/random/mob/semirandom_mob_spawner/fish/b,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"HL" = (
+/obj/machinery/smartfridge/drying_rack,
+/turf/simulated/floor/plating{
+ outdoors = 1
+ },
+/area/gateway/honlethhighlands/town/garden)
+"HR" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/b,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"HY" = (
+/obj/structure/bed/chair/sofa/green/right{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"Ic" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/honlethhighlands/town/garden)
+"In" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Ip" = (
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Iy" = (
+/obj/machinery/vending/boozeomat{
+ emagged = 1
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"IM" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"IS" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"Jc" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/obj/structure/table/rack/steel,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Jf" = (
+/obj/machinery/seed_storage/garden,
+/turf/simulated/floor/tiled{
+ outdoors = 1
+ },
+/area/gateway/honlethhighlands/town/garden)
+"JI" = (
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"JL" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"JM" = (
+/obj/random/cigarettes,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"Kh" = (
+/obj/structure/sink/kitchen{
+ dir = 8;
+ pixel_x = 12
+ },
+/obj/effect/decal/cleanable/blood,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"Kj" = (
+/obj/random/multiple/random_size_crate/no_weapons,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Kk" = (
+/obj/structure/cable/ender{
+ d2 = 2;
+ icon_state = "0-2";
+ id = "togateway"
+ },
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"Kt" = (
+/obj/structure/cable/heavyduty,
+/obj/structure/cable/pink{
+ d2 = 2;
+ icon_state = "0-2"
+ },
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"Kx" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/bed/chair/sofa/brown/right{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"KR" = (
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate/b,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"Ld" = (
+/obj/random/awayloot,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"Li" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/bed/chair{
+ dir = 8
+ },
+/obj/effect/decal/writing{
+ icon_state = "writing2";
+ message = "About done waiting in this line";
+ pixel_x = 19;
+ pixel_y = -9
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Lk" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/honlethhighlands/town/garden)
+"Lx" = (
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"LJ" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"LY" = (
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"Mc" = (
+/obj/structure/closet,
+/obj/effect/landmark/mcguffin_spawner,
+/obj/random/contraband,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Ms" = (
+/obj/structure/table/bench/wooden,
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"ME" = (
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 4;
+ pixel_x = 22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 2;
+ icon_state = "0-2"
+ },
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/obj/structure/bed/chair{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"MP" = (
+/obj/random/mob/semirandom_mob_spawner/fish/c,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"MR" = (
+/obj/structure/cable/ender{
+ d2 = 8;
+ icon_state = "0-8";
+ id = "togateway"
+ },
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"MS" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"Nq" = (
+/obj/structure/undies_wardrobe,
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/honlethhighlands)
+"NF" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 9
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/material/refined,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"NS" = (
+/obj/machinery/door/airlock/hatch,
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/engineering)
+"NV" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Oj" = (
+/obj/random/crate,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"On" = (
+/obj/structure/cable/heavyduty{
+ icon_state = "0-4"
+ },
+/obj/structure/cable/pink{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"Ov" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/bomb_supply,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"OJ" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"OK" = (
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"OS" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Pb" = (
+/obj/machinery/door/airlock/silver,
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"Pg" = (
+/obj/structure/simple_door/iron,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"Pp" = (
+/obj/machinery/biogenerator,
+/turf/simulated/floor/plating{
+ outdoors = 1
+ },
+/area/gateway/honlethhighlands/town/garden)
+"Pz" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/machinery/chemical_dispenser/bar_alc/full{
+ dir = 4
+ },
+/obj/structure/table/reinforced,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"PD" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Qf" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"Ql" = (
+/obj/machinery/gateway/brass{
+ dir = 6;
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Qt" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/obj/structure/closet/crate/bin,
+/obj/random/junk,
+/obj/random/junk,
+/obj/random/junk,
+/obj/random/junk,
+/obj/random/junk,
+/obj/random/junk,
+/obj/random/junk,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Qz" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"QA" = (
+/obj/machinery/power/terminal{
+ dir = 4
+ },
+/obj/structure/cable{
+ d2 = 2;
+ icon_state = "0-2"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"QB" = (
+/obj/machinery/telecomms/relay/preset/tether,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"QG" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/machinery/alarm/alarms_hidden{
+ dir = 4;
+ pixel_x = -21
+ },
+/obj/structure/bed/chair/office/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"QZ" = (
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"Rg" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/tool/crowbar,
+/obj/item/broken_device/random,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"Rj" = (
+/obj/machinery/light,
+/obj/structure/closet,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"Ro" = (
+/obj/random/mob/semirandom_mob_spawner/vore/passive/b,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"Rt" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"RA" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 10
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/awayloot,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"RY" = (
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/garden)
+"SG" = (
+/obj/random/mob/semirandom_mob_spawner/vore/retaliate/c,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"SJ" = (
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 1;
+ pixel_y = 22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 2;
+ icon_state = "0-2"
+ },
+/obj/structure/table/rack/steel,
+/obj/random/maintenance,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/security,
+/obj/random/maintenance/medical,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"SP" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"SR" = (
+/obj/random/mob/semirandom_mob_spawner/vore/passive,
+/turf/simulated/floor/outdoors/rocks{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"Tg" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/kitchen)
+"Us" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"Uu" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 4;
+ pixel_x = -21
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"UA" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"UN" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"US" = (
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"UZ" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Vd" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/gateway/brass{
+ density = 0;
+ dir = 9;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Vi" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"Vk" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/gate)
+"Vl" = (
+/obj/effect/floor_decal/techfloor,
+/obj/structure/table/glass,
+/obj/item/weapon/folder/blue,
+/obj/item/weapon/folder/red{
+ pixel_x = 5;
+ pixel_y = -4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Vr" = (
+/obj/structure/closet/secure_closet/freezer/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"Vw" = (
+/obj/structure/cable/heavyduty{
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"Vx" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full{
+ maxhealth = 9000
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/gate)
+"Vy" = (
+/obj/random/cutout,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"VB" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/machinery/alarm/alarms_hidden{
+ dir = 4;
+ pixel_x = -21
+ },
+/obj/effect/decal/writing{
+ icon_state = "writing2";
+ message = "Can't find the key!!!"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"VD" = (
+/obj/machinery/appliance/cooker/oven,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"VF" = (
+/obj/effect/floor_decal/techfloor/corner{
+ dir = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"VT" = (
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 1;
+ pixel_y = 22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/garden)
+"Wp" = (
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/honlethhighlands/town/garden)
+"Ws" = (
+/obj/machinery/gateway/brass{
+ dir = 8;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Wv" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/random/multiple/random_size_crate/no_weapons,
+/obj/effect/floor_decal/industrial/outline/yellow,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"WC" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"WN" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 9
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"WO" = (
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"WP" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate/c,
+/turf/simulated/floor/outdoors/rocks{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"WS" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 4;
+ pixel_x = -21
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"XA" = (
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"XH" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"XS" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"XZ" = (
+/obj/machinery/chemical_dispenser/bar_soft/full{
+ dir = 4
+ },
+/obj/structure/table/reinforced,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"Yk" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"Yo" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"Yx" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"YA" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 8;
+ pixel_x = 20
+ },
+/obj/random/multiple/corp_crate/no_weapons,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"YQ" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/medical,
+/obj/random/medical,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"Ze" = (
+/obj/item/weapon/stool,
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"Zw" = (
+/obj/random/mob/semirandom_mob_spawner/vore/passive,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"Zy" = (
+/obj/random/drinkbottle,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"ZM" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/retaliate/b,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"ZS" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/weapon/flame/lighter/random,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"ZZ" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+
+(1,1,1) = {"
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+"}
+(2,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+bm
+bm
+bm
+bm
+bm
+bm
+MP
+bm
+bm
+bm
+ai
+aa
+"}
+(3,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+jn
+aa
+"}
+(4,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(5,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aW
+aW
+aY
+aY
+aY
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bm
+bj
+bm
+bm
+bm
+aa
+"}
+(6,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+qM
+Ov
+VB
+rM
+qd
+ak
+NF
+Cs
+yH
+UA
+RA
+ak
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+Et
+ac
+ac
+ag
+sD
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aW
+aW
+aW
+aW
+aY
+aY
+aY
+ba
+ba
+ba
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+Ht
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(7,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+eB
+ch
+av
+av
+ax
+hB
+an
+av
+av
+av
+CL
+ak
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ac
+ac
+ag
+ag
+pT
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+aW
+aW
+aW
+aW
+aW
+aZ
+ba
+ba
+ba
+ba
+ba
+bg
+ba
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(8,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+dX
+OS
+Yx
+Yx
+nF
+ak
+an
+av
+VF
+Yx
+AO
+ak
+ab
+ab
+ab
+ad
+ad
+ad
+hD
+aj
+ad
+ad
+af
+ad
+ad
+ab
+ab
+aj
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aJ
+aJ
+aJ
+ab
+ab
+ab
+ab
+ac
+ac
+ag
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+aW
+aW
+ad
+aW
+ad
+aj
+aj
+ba
+aY
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(9,1,1) = {"
+aM
+ab
+ab
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+hB
+ak
+ak
+JL
+av
+ax
+ak
+ak
+ak
+ak
+ak
+ak
+ad
+ad
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ac
+ab
+ag
+ag
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aW
+aY
+aY
+aY
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+MP
+bm
+aa
+"}
+(10,1,1) = {"
+aM
+ab
+ab
+ak
+ap
+ay
+ay
+qd
+Vx
+wE
+ay
+zn
+Vx
+Wv
+av
+ax
+ak
+ap
+ay
+QG
+bw
+ak
+ad
+hD
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+Ak
+ad
+ad
+ad
+ab
+ab
+ac
+ac
+ac
+ag
+Et
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+aW
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+ba
+ba
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+wN
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(11,1,1) = {"
+aM
+ab
+ab
+ak
+Vd
+Ws
+fN
+ax
+ak
+an
+av
+Ep
+Vx
+xo
+av
+ax
+ak
+an
+DE
+EP
+Vl
+ak
+Vk
+hD
+hD
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+aY
+aY
+be
+aY
+aY
+aY
+ba
+ba
+ba
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(12,1,1) = {"
+aM
+ab
+ab
+ak
+rQ
+vW
+jE
+ax
+hB
+an
+av
+od
+ak
+bB
+av
+ax
+hB
+an
+av
+av
+ax
+az
+XA
+XA
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ae
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aW
+aW
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+aY
+be
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(13,1,1) = {"
+aM
+ab
+ab
+ak
+vd
+CS
+Ql
+ax
+ak
+an
+av
+nP
+Vx
+xo
+av
+ax
+ak
+an
+av
+av
+ax
+ak
+aA
+XA
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+Ec
+ae
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+jk
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aW
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(14,1,1) = {"
+aM
+ab
+ab
+ak
+aw
+Yx
+Yx
+nF
+Vx
+dZ
+Yx
+Jc
+Vx
+Wv
+av
+ax
+ak
+wB
+oo
+Li
+ME
+Ai
+aj
+XA
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ah
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+jk
+ad
+ad
+ad
+ad
+af
+ad
+ad
+jk
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+mv
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(15,1,1) = {"
+aM
+ab
+ab
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+hB
+ak
+ak
+JL
+av
+ax
+ak
+ak
+ak
+ak
+ak
+Cy
+XA
+XA
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+aY
+aY
+bb
+aY
+aY
+aY
+aY
+aY
+ba
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+mv
+bm
+bm
+aa
+"}
+(16,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+WN
+gt
+Kx
+ay
+qd
+ak
+an
+av
+yu
+sF
+kx
+ak
+ad
+aj
+On
+XA
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Ak
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+aY
+bb
+aY
+aY
+aY
+aY
+aY
+bb
+ba
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bm
+mv
+bm
+bm
+bm
+mv
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(17,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+hm
+bK
+av
+av
+ax
+hB
+an
+ZM
+av
+pI
+yC
+ak
+ad
+aj
+Vw
+XA
+hD
+aj
+ad
+ad
+ad
+af
+ad
+ad
+aj
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+jk
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+bb
+bb
+bb
+aY
+bb
+aY
+aY
+bb
+bb
+bb
+bb
+ba
+aY
+aY
+aY
+aZ
+aY
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(18,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+In
+mM
+hz
+qh
+Qt
+ak
+gB
+PD
+UZ
+Bf
+NV
+ak
+ad
+ad
+Vw
+XA
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+aj
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+aj
+aj
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+aj
+aj
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+aY
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+Ht
+aa
+"}
+(19,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ad
+aj
+MR
+XA
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+aj
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ab
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bd
+bb
+aY
+bb
+bb
+bb
+bb
+bb
+ba
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(20,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+aj
+aj
+XA
+XA
+XA
+XA
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ad
+ad
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+mv
+bm
+bm
+bm
+aa
+"}
+(21,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+XA
+XA
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+aj
+aj
+aj
+hD
+hD
+hD
+hD
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(22,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+XA
+XA
+aE
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+hD
+ad
+hD
+hD
+aj
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+bb
+ba
+ba
+ba
+ba
+ba
+bb
+bb
+aY
+bb
+aY
+aY
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(23,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+XA
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+hD
+hD
+hD
+hD
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+tU
+tU
+tU
+ba
+ba
+tU
+aY
+bb
+aY
+aY
+tU
+aY
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(24,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+XA
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+ba
+ba
+ba
+ba
+aY
+aY
+aY
+tU
+tU
+tU
+tU
+tU
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(25,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+aj
+XA
+XA
+aj
+ad
+ad
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+bb
+bb
+bb
+ba
+ba
+aY
+aY
+tU
+tU
+tU
+tU
+tU
+tU
+tU
+tU
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(26,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+XA
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+tU
+bi
+tU
+Aj
+tU
+tU
+bl
+tU
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(27,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+Ej
+hD
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+aj
+aj
+aj
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+jk
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bd
+bb
+aY
+tU
+tU
+tU
+tU
+tU
+tU
+tU
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(28,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+XA
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+hD
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+tU
+tU
+bk
+tU
+tU
+tU
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(29,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+XA
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bd
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+tU
+tU
+tU
+tU
+tU
+bi
+tU
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(30,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+af
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+aj
+aj
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+af
+ad
+ad
+lS
+lS
+hV
+hV
+lS
+lS
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+tU
+tU
+tU
+tU
+tU
+tU
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(31,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+XA
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+aj
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+lS
+zP
+nh
+nh
+eq
+lS
+ad
+ad
+bb
+bb
+bd
+bb
+bb
+bb
+bb
+tU
+tU
+tU
+tU
+tU
+tU
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(32,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+lS
+hV
+lS
+Nq
+nh
+nh
+Oj
+lS
+aW
+ad
+bb
+bb
+bb
+bb
+aY
+aY
+tU
+tU
+tU
+tU
+tU
+tU
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(33,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+aj
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+hV
+Gl
+Ar
+Ar
+Ar
+Ar
+Ar
+lS
+aA
+aW
+aY
+bb
+aY
+tU
+tU
+tU
+aY
+aY
+tU
+tU
+ba
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(34,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+hD
+ad
+hD
+hD
+hD
+hD
+ad
+hD
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+hV
+ez
+Ar
+Ar
+Yk
+Ar
+Ar
+Pg
+aA
+aA
+tU
+tU
+tU
+bb
+bb
+aY
+bb
+aY
+ba
+ba
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(35,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+MS
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+hD
+Yo
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+hV
+Fj
+Ar
+Ar
+Ar
+Ar
+Ar
+lS
+aA
+aW
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+be
+aY
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(36,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ad
+ad
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+aj
+ad
+aj
+aj
+aj
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+lS
+hV
+lS
+Ar
+nI
+HY
+Ar
+hV
+aW
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(37,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+lS
+Ar
+Ar
+Ar
+ZS
+lS
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+bb
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(38,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+lS
+xO
+FN
+FN
+xO
+lS
+ad
+ad
+bb
+bb
+bb
+bd
+bb
+bb
+aY
+bb
+aY
+aY
+aY
+be
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(39,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Ak
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+xO
+ya
+ya
+xO
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+mv
+bm
+bm
+bm
+bm
+aa
+"}
+(40,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ae
+ac
+ac
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+xO
+xO
+xO
+xO
+ad
+ad
+af
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aZ
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+mv
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(41,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ae
+ae
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+aY
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+Ht
+bm
+bm
+aa
+"}
+(42,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+aS
+ac
+ac
+ac
+ae
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(43,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Du
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+SR
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+aY
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+bb
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+MP
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(44,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+aB
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aY
+aY
+aY
+aY
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+bb
+bb
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+mv
+bm
+bm
+aa
+"}
+(45,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+aB
+aC
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ao
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+Ak
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+Du
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+Zw
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aY
+aY
+aY
+aY
+aY
+be
+aY
+aY
+ba
+ba
+ba
+aY
+bb
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(46,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+ba
+ba
+aY
+bb
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(47,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+aY
+be
+aY
+aY
+aY
+aY
+ba
+ba
+bb
+ba
+aY
+bb
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bn
+bm
+bm
+bm
+bm
+aa
+"}
+(48,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ad
+ad
+ad
+ad
+ao
+ao
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+bb
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+bb
+ba
+ba
+aY
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+Ht
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(49,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+aJ
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+bb
+aY
+aY
+aY
+aY
+ba
+ba
+bb
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(50,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+aJ
+aJ
+aJ
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ae
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+aY
+aY
+ba
+ba
+ba
+ba
+ba
+bb
+ba
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(51,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+aJ
+aJ
+ad
+ad
+ad
+aJ
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+aJ
+aJ
+ac
+ac
+ac
+ac
+ac
+aS
+ac
+ac
+ac
+ae
+ae
+ab
+ab
+ab
+ab
+ad
+ad
+af
+ad
+ad
+ad
+ad
+af
+ad
+bb
+aY
+bb
+ba
+ba
+ba
+ba
+ba
+ba
+bb
+ba
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+mv
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(52,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+aJ
+aJ
+aJ
+aJ
+aJ
+aJ
+aJ
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+SG
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aJ
+aJ
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+SR
+ae
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+aY
+bb
+ba
+ba
+ba
+bg
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+mv
+bm
+aa
+"}
+(53,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aJ
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+aY
+aY
+bb
+ba
+ba
+ba
+ba
+ba
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(54,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+Et
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+bb
+ba
+ba
+ba
+ba
+ba
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+aa
+"}
+(55,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ah
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bd
+bb
+aY
+ba
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+wN
+bj
+bj
+bm
+bm
+aa
+"}
+(56,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+aY
+aY
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+aa
+"}
+(57,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ag
+ag
+ag
+ag
+ac
+ac
+GQ
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+aY
+ba
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+aa
+"}
+(58,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ag
+ag
+ag
+ag
+ag
+ag
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+aa
+"}
+(59,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ag
+ag
+ag
+ag
+ag
+ag
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+be
+aY
+aY
+aY
+bj
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(60,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ah
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aK
+ac
+ac
+ag
+ag
+ag
+ag
+ag
+ag
+ag
+ac
+Et
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(61,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+Et
+ag
+ag
+ag
+ag
+ag
+ag
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+aY
+aY
+be
+aY
+ba
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(62,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ag
+ag
+ag
+ag
+ag
+ag
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+sg
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+aa
+"}
+(63,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Ec
+ae
+ac
+pX
+ag
+ag
+ag
+ag
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bm
+bm
+aa
+"}
+(64,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+ba
+aY
+ba
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(65,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+af
+ab
+ab
+ab
+ae
+aK
+ae
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+ac
+Et
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+ba
+ba
+aY
+bb
+aY
+aY
+ba
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(66,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ae
+ag
+ag
+ag
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+aJ
+aJ
+aJ
+aJ
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+ba
+bb
+bb
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(67,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+fa
+ac
+ac
+ac
+ag
+ac
+ac
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+aJ
+ad
+aJ
+aJ
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+bb
+bb
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(68,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ac
+ae
+Ec
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aJ
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bd
+bb
+bb
+bb
+bb
+aY
+bb
+bb
+bb
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(69,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ag
+fa
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+bb
+bb
+bb
+ba
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+MP
+bm
+bm
+bm
+aa
+"}
+(70,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ag
+ac
+ac
+ac
+fa
+ac
+ac
+ac
+ae
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+sg
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+ba
+aY
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(71,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+ba
+ba
+ba
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(72,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ag
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+hD
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+ba
+aY
+ba
+ba
+aY
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(73,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ac
+ac
+ag
+ag
+ag
+ag
+zT
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bd
+bb
+KR
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+bb
+ba
+ba
+ba
+ba
+bb
+bb
+bb
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(74,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ae
+ac
+ac
+ag
+ag
+ag
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+ba
+ba
+aY
+ba
+bb
+bb
+bb
+bb
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+MP
+bm
+aa
+"}
+(75,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ae
+ac
+fa
+ac
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+hD
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+sg
+ad
+sg
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+bb
+bb
+bb
+bb
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(76,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+aj
+ad
+ad
+ad
+ab
+ab
+ad
+aj
+aj
+aj
+hD
+hD
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+be
+aY
+ba
+aY
+bb
+aY
+bb
+bb
+bb
+bb
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(77,1,1) = {"
+aM
+ab
+ab
+ab
+ae
+Ec
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ac
+ac
+ac
+fa
+ac
+ac
+fa
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+aj
+aj
+aj
+hD
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+bb
+aY
+aY
+aY
+ba
+aY
+bb
+bb
+bb
+bb
+bb
+bb
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(78,1,1) = {"
+aM
+ab
+ab
+ab
+ae
+ac
+fa
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+Ec
+ae
+ac
+ae
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ah
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+aj
+hD
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bb
+bb
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(79,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+aF
+aF
+aF
+aI
+yl
+aI
+aF
+aF
+aF
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+be
+aY
+aY
+aY
+ba
+ba
+ba
+aY
+bj
+bj
+bb
+bb
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(80,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+pT
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+aF
+aF
+aI
+yl
+aI
+aF
+aF
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+ba
+ba
+ba
+aY
+aY
+bj
+bb
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(81,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+fa
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+aF
+aF
+aF
+aF
+aI
+aI
+aI
+aF
+aF
+aF
+aF
+aF
+ab
+ab
+aF
+aF
+aF
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bd
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+wN
+bj
+bj
+bm
+bm
+MP
+bm
+bm
+bm
+bm
+aa
+"}
+(82,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+aJ
+aJ
+aJ
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+aF
+aF
+aF
+aF
+aI
+yl
+aI
+aF
+aF
+aF
+aF
+aF
+ab
+ab
+aF
+aF
+aF
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+aY
+aY
+be
+aY
+ba
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(83,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ah
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+HR
+aJ
+ab
+fa
+ag
+ag
+zT
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+aI
+aI
+aF
+aF
+aI
+aI
+aI
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aF
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+sg
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+aY
+aY
+aY
+ba
+ba
+bg
+ba
+ba
+ba
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+ab
+ab
+ab
+bm
+bm
+aa
+"}
+(84,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+aJ
+ab
+ac
+ag
+lY
+ag
+ac
+ab
+ab
+ab
+ab
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Ro
+ab
+ab
+ab
+aI
+aI
+aF
+aF
+aF
+aI
+yl
+aI
+aF
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aF
+aF
+aF
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+aY
+aY
+ba
+aY
+ba
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+aY
+aY
+ab
+ab
+ab
+ab
+ab
+ab
+bm
+bm
+aa
+"}
+(85,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+hD
+ad
+ad
+ad
+wz
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ab
+ab
+ab
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+zE
+Ld
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aF
+aF
+aF
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+aY
+aY
+aY
+aY
+ba
+ba
+ba
+aY
+aY
+aY
+aY
+aY
+aY
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(86,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+wz
+ad
+ad
+ad
+af
+ad
+ad
+ad
+aj
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+zE
+ac
+ac
+ac
+ac
+zE
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aF
+aF
+aF
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+aY
+aY
+aY
+ab
+ab
+ab
+ae
+ab
+ab
+ab
+ab
+aM
+"}
+(87,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+hD
+hD
+ad
+hD
+hD
+hD
+ad
+ad
+ad
+wz
+ab
+ab
+ab
+ac
+ac
+fa
+ab
+ab
+ab
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+zE
+ac
+zE
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+fl
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aF
+aF
+aF
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aY
+aY
+ba
+ba
+ba
+aY
+aZ
+aY
+ab
+ab
+ab
+ab
+ae
+WP
+ae
+ae
+ab
+ab
+aM
+"}
+(88,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+hD
+hD
+hD
+hD
+hD
+hD
+hD
+hD
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ac
+ac
+pT
+ac
+fo
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aF
+aF
+aF
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aY
+aY
+aY
+aY
+aY
+ab
+ab
+ab
+ae
+ae
+ae
+ae
+ab
+ab
+ab
+aM
+"}
+(89,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+hD
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+AK
+Ms
+Zy
+ac
+ac
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+Lx
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aN
+aI
+aF
+ab
+ab
+ab
+ab
+ab
+ad
+sg
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aY
+aY
+aY
+aY
+ab
+ab
+ab
+ae
+ae
+ae
+aK
+ae
+ae
+ab
+ab
+aM
+"}
+(90,1,1) = {"
+aM
+ab
+ab
+ab
+ac
+ac
+ac
+fa
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+aj
+aj
+aj
+hD
+bA
+hD
+hD
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+wz
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ac
+mG
+oe
+ac
+ac
+ac
+ab
+ab
+ab
+aI
+aI
+he
+he
+bz
+bz
+he
+bz
+bz
+he
+he
+aI
+Lx
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+af
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aY
+ab
+ab
+ab
+ab
+ab
+ab
+WP
+ac
+ac
+ac
+ae
+ab
+ab
+aM
+"}
+(91,1,1) = {"
+aM
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+hD
+hD
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ac
+ac
+is
+Ms
+ac
+JM
+ac
+ab
+ab
+aI
+aI
+aI
+he
+dw
+AV
+yP
+vL
+Iy
+XZ
+Pz
+bz
+aG
+Lx
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ag
+wX
+ac
+ab
+ab
+aM
+"}
+(92,1,1) = {"
+aM
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+hD
+hD
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+aI
+aI
+aI
+aI
+bz
+FR
+yP
+yP
+OK
+OK
+OK
+OK
+bz
+aG
+Lx
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ac
+ab
+ab
+ab
+aM
+"}
+(93,1,1) = {"
+aM
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+aI
+aI
+aN
+aI
+bz
+uu
+dF
+dF
+fi
+OK
+nx
+OK
+bz
+aG
+Lx
+XH
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ag
+ag
+ag
+ac
+ac
+ab
+ab
+aM
+"}
+(94,1,1) = {"
+aM
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+ad
+ad
+ad
+wz
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+zE
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+aI
+aI
+aI
+aI
+he
+dF
+dF
+dF
+Ee
+BW
+wY
+rP
+bz
+aI
+aI
+Lx
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+aM
+"}
+(95,1,1) = {"
+aM
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aJ
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ah
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+aJ
+ab
+ab
+aI
+aI
+aI
+aI
+he
+Aa
+dF
+yP
+JI
+JI
+JI
+Ev
+he
+he
+he
+Lx
+yl
+aI
+FK
+FK
+FK
+FK
+FK
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ab
+ab
+aM
+"}
+(96,1,1) = {"
+aM
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aJ
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ac
+aJ
+aJ
+aD
+ab
+aI
+aI
+aI
+aI
+he
+dF
+dF
+dF
+yP
+dF
+AV
+hN
+QZ
+zV
+he
+Lx
+yl
+FK
+FK
+Kj
+cE
+Db
+FK
+FK
+aI
+aI
+aI
+aI
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+aI
+aI
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+bp
+ac
+ac
+ac
+ab
+ab
+aM
+"}
+(97,1,1) = {"
+aM
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aJ
+wz
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+aJ
+aD
+aD
+aI
+aI
+aN
+aI
+aI
+bz
+BS
+aP
+kL
+yP
+dF
+dF
+Gn
+WC
+yP
+bz
+Lx
+aI
+FK
+Fb
+Ip
+Ip
+Ip
+jT
+FK
+aI
+aI
+aI
+Dk
+Dk
+Uu
+Bj
+OJ
+Dk
+BC
+OJ
+BC
+em
+Rt
+Dk
+Dk
+aI
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+aM
+"}
+(98,1,1) = {"
+aM
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ac
+aJ
+aJ
+ab
+ad
+ab
+ad
+ad
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+aD
+aD
+aI
+aI
+aN
+aI
+aI
+aI
+bz
+Ze
+Gz
+qB
+dF
+dF
+dF
+QZ
+hN
+yP
+bz
+Lx
+aI
+FK
+SJ
+Vi
+Di
+Ip
+Eh
+FK
+aI
+aI
+aI
+Dk
+lk
+Us
+oP
+BC
+em
+oP
+lk
+oP
+em
+lk
+aV
+Dk
+aI
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(99,1,1) = {"
+aM
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+aN
+aI
+he
+ro
+AF
+BS
+BS
+aP
+BS
+UN
+hN
+An
+he
+Lx
+aI
+FK
+Dg
+Ip
+Rg
+Ip
+rc
+FK
+aI
+LY
+zh
+rX
+Hd
+Hd
+qm
+Ca
+em
+lk
+oP
+oP
+sQ
+lk
+gV
+Dk
+aI
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+bp
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(100,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+fa
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+he
+he
+bz
+bz
+he
+bz
+bz
+he
+wx
+he
+he
+Lx
+aI
+FK
+Gr
+Ip
+SP
+Ip
+mZ
+FK
+aI
+XS
+ol
+Dk
+oP
+lk
+Qz
+wC
+Dk
+oP
+oP
+oP
+em
+lk
+lk
+Dk
+aI
+aI
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+aM
+"}
+(101,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ag
+ag
+ag
+zT
+ag
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+aF
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aI
+aI
+Lx
+yl
+FK
+Mc
+rU
+tk
+pg
+qI
+FK
+aI
+XS
+aI
+Dk
+Dk
+Dk
+cD
+Dk
+Dk
+DF
+vi
+lk
+em
+px
+lk
+Dk
+aI
+aI
+aI
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+bp
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(102,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+fa
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ag
+ac
+ag
+lY
+ag
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aG
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aI
+aI
+Lx
+aI
+FK
+FK
+FK
+tT
+FK
+FK
+FK
+aI
+XS
+aI
+Dk
+IS
+lk
+zv
+lk
+oP
+oP
+Ca
+oP
+Dk
+Dk
+Dk
+Dk
+aI
+aN
+aI
+aI
+ab
+ad
+ad
+af
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(103,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ag
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aG
+aI
+aI
+aN
+aI
+aI
+aI
+do
+do
+aL
+do
+do
+aI
+XS
+aI
+aI
+Lx
+aI
+aI
+aG
+lb
+XS
+aI
+aI
+aI
+aI
+XS
+aI
+Dk
+lp
+Hd
+wr
+lk
+oP
+lk
+jS
+oP
+ZZ
+lk
+lk
+Dk
+aI
+aI
+aI
+aI
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+ac
+GT
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(104,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+fa
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+fa
+ac
+ac
+ag
+ag
+ag
+ag
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+do
+do
+tn
+mr
+qc
+do
+nc
+XS
+aI
+aI
+Lx
+aG
+yl
+aI
+aG
+XS
+aI
+aI
+aI
+aI
+XS
+aI
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+hQ
+oP
+oP
+ZZ
+Qf
+lk
+Dk
+aI
+aI
+aI
+aI
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Ec
+ae
+ae
+ac
+ac
+GT
+GT
+GT
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(105,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ag
+ag
+ag
+ac
+ac
+fa
+ac
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aG
+aI
+aI
+aI
+aI
+do
+do
+Ds
+cA
+uI
+tX
+Pb
+zh
+vU
+zh
+LJ
+Lx
+aG
+aG
+aG
+aG
+XS
+aI
+aI
+aI
+aI
+XS
+aI
+Dk
+by
+lk
+lk
+lk
+em
+oP
+oP
+lk
+sQ
+lk
+gV
+Dk
+aI
+aI
+aI
+aG
+aI
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+bp
+GT
+GT
+GT
+GT
+GT
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(106,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ag
+ac
+ab
+ac
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+do
+YQ
+mr
+mr
+mr
+tj
+do
+aI
+aI
+aI
+XS
+Lx
+Lx
+Lx
+Lx
+Lx
+GY
+zh
+zh
+zh
+zh
+jK
+aI
+Dk
+bY
+aV
+lk
+lk
+Ge
+oP
+oP
+oP
+ZZ
+lk
+lk
+Dk
+aI
+aI
+aG
+yl
+yl
+hD
+hD
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+GT
+GT
+GT
+ac
+GT
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(107,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+fa
+ac
+ag
+ag
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aL
+jp
+mr
+mr
+yg
+do
+do
+aI
+aI
+aN
+XS
+tQ
+tQ
+Lx
+tQ
+tQ
+XS
+aG
+aI
+aI
+aI
+XS
+aI
+Dk
+Dk
+lk
+px
+lk
+em
+Hh
+dm
+BC
+ZZ
+px
+Dk
+Dk
+aI
+aG
+aG
+yl
+yl
+hD
+aj
+aj
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ae
+ac
+ac
+GT
+GT
+ac
+GT
+GT
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(108,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ag
+ag
+ag
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aL
+Vy
+mr
+aR
+yb
+aL
+aI
+aI
+aI
+LY
+vU
+zh
+zh
+zh
+zh
+zh
+Dm
+aI
+aI
+aN
+aI
+XS
+aI
+aI
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+aI
+aI
+aG
+yl
+yl
+yl
+aj
+aj
+ad
+ad
+bf
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+GT
+GT
+GT
+GT
+GT
+nH
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(109,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ac
+ac
+fa
+Ld
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+do
+IM
+mr
+mr
+WO
+aL
+aI
+aI
+aI
+XS
+zk
+aG
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aI
+aI
+yl
+yl
+yl
+aI
+aI
+aI
+yl
+aG
+aI
+yl
+aI
+aI
+aI
+aI
+yl
+yl
+aG
+ad
+aj
+ad
+bf
+bf
+bh
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+GT
+ac
+GT
+GT
+GT
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(110,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+aj
+aj
+ad
+af
+ad
+ad
+ad
+ad
+ad
+hD
+aj
+aj
+aj
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aF
+aF
+aG
+aI
+aI
+aI
+aI
+do
+yi
+mr
+mr
+mJ
+aL
+aI
+aN
+aI
+XS
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aN
+aI
+aI
+aG
+yl
+aG
+yl
+yl
+yl
+yl
+aG
+aI
+aI
+aI
+aI
+yl
+yl
+aI
+aG
+aj
+ad
+bf
+bf
+bf
+aJ
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+GT
+GT
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(111,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ag
+ag
+fa
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+aj
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aj
+aF
+aF
+aG
+aF
+aI
+aI
+aI
+aL
+qu
+mr
+aR
+WO
+aL
+aI
+aI
+aI
+XS
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+fT
+zh
+zh
+LJ
+Lx
+Lx
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aG
+ad
+ad
+bf
+bf
+hD
+aJ
+aJ
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(112,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+ad
+af
+ad
+ad
+aj
+aF
+aF
+aF
+aF
+aF
+aF
+aI
+aI
+aI
+aL
+kC
+mr
+mr
+Rj
+do
+do
+aI
+aI
+XS
+aI
+aI
+wm
+mb
+mb
+wm
+mb
+mb
+wm
+aI
+aI
+aI
+aI
+aG
+XS
+tO
+Lx
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ad
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+bp
+ac
+ac
+ac
+ac
+GT
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(113,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aF
+aF
+aF
+aF
+aG
+aI
+aI
+do
+YQ
+tK
+aR
+mr
+oy
+do
+aI
+aI
+XS
+aG
+wm
+wm
+nd
+nd
+Ic
+nd
+nd
+wm
+wm
+aI
+aI
+de
+de
+hE
+de
+BD
+de
+Tg
+de
+de
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+ad
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+GT
+ac
+ac
+ab
+ab
+ab
+ab
+aM
+"}
+(114,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+fa
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+ad
+ad
+ad
+aG
+aI
+aG
+aI
+aI
+aG
+aG
+aI
+aI
+do
+do
+Ds
+aR
+mr
+aR
+wG
+Lx
+Lx
+XS
+aI
+mb
+Jf
+np
+np
+np
+np
+rV
+ef
+mb
+aI
+aI
+de
+mW
+uN
+WS
+lj
+lj
+lj
+bD
+de
+aI
+aI
+aI
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+ad
+ab
+ab
+ab
+ab
+ab
+bp
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+GT
+ac
+ac
+ab
+ab
+ab
+ab
+aM
+"}
+(115,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+ad
+hD
+ad
+yl
+aI
+yl
+yl
+yl
+yl
+aI
+aI
+aI
+aI
+do
+do
+YA
+mr
+qZ
+do
+nc
+aG
+XS
+aI
+wm
+rC
+si
+si
+si
+np
+np
+Wp
+mb
+aI
+aI
+Tg
+lj
+uN
+lj
+lj
+lj
+lj
+sZ
+Tg
+aI
+aI
+aI
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+GT
+ac
+ac
+ab
+ab
+ab
+ab
+aM
+"}
+(116,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+aj
+aI
+aI
+aG
+aG
+aI
+aG
+aG
+XH
+Lx
+aI
+aI
+do
+do
+aL
+do
+do
+aI
+aI
+mY
+zh
+th
+xz
+si
+RY
+oS
+si
+np
+cY
+wm
+aI
+aI
+de
+Cl
+rz
+wR
+wR
+wL
+ow
+De
+de
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+aM
+"}
+(117,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+fa
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+fa
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+aj
+aF
+aF
+aF
+aF
+aF
+aF
+aG
+aI
+Lx
+Lx
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aI
+wm
+VT
+si
+yX
+RY
+np
+np
+HL
+mb
+aI
+aI
+Tg
+lj
+lj
+Fu
+lj
+lj
+lj
+uN
+Tg
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(118,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+fa
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+ad
+aF
+aF
+aF
+aF
+aF
+aF
+aI
+aI
+aI
+Lx
+Lx
+Lx
+Lx
+Lx
+aI
+aI
+aI
+aG
+XS
+aI
+mb
+Ck
+np
+np
+np
+np
+np
+Pp
+mb
+aI
+aI
+de
+wQ
+VD
+Bi
+Kh
+Vr
+cT
+kS
+de
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(119,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+fa
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aj
+aF
+aF
+aG
+aF
+aI
+aI
+aI
+aI
+aG
+zk
+aG
+Lx
+Lx
+Lx
+Lx
+Lx
+XS
+aI
+wm
+wm
+nd
+nd
+Lk
+nd
+nd
+wm
+wm
+aI
+aI
+de
+de
+de
+de
+de
+de
+de
+de
+de
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+GT
+GT
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(120,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+Ld
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aF
+aF
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aG
+aI
+aI
+aI
+aI
+aI
+aG
+XS
+aI
+aI
+wm
+mb
+mb
+wm
+mb
+mb
+wm
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+GT
+GT
+GT
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+bp
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(121,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+bp
+GT
+GT
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+GT
+GT
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(122,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+fa
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+fT
+LJ
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ac
+ag
+ag
+ac
+ac
+ac
+GT
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+GT
+GT
+GT
+ac
+ac
+bp
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(123,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ac
+fa
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ag
+lY
+ag
+ac
+ac
+ac
+GT
+ae
+Ec
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(124,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+fa
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+XS
+aI
+aO
+aO
+aO
+aO
+aO
+aO
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+bp
+ag
+ag
+ag
+ac
+ac
+ac
+GT
+GT
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(125,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+cj
+aO
+aQ
+aU
+QB
+vG
+aO
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ag
+ac
+ac
+ac
+ac
+bp
+GT
+GT
+ae
+ae
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(126,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aG
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+Kk
+Kt
+US
+zh
+NS
+gm
+CM
+QA
+uQ
+aO
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+bp
+ac
+ac
+ab
+ac
+ac
+ac
+bp
+ac
+ac
+GT
+GT
+GT
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+bp
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(127,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+fa
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aG
+aG
+aG
+aG
+aG
+aG
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aG
+aI
+aO
+qK
+dQ
+pO
+rB
+aO
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+GT
+GT
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(128,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+fa
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+ab
+ab
+ab
+ab
+ab
+aG
+aG
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aO
+aO
+aO
+aO
+aO
+aO
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(129,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ae
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aG
+aG
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(130,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+fa
+ac
+ac
+ab
+ac
+ab
+ac
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ac
+ac
+fa
+ac
+ac
+ag
+ag
+ae
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aG
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(131,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+fa
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ag
+ag
+ag
+ag
+zT
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(132,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+fa
+ag
+ag
+ag
+ag
+lY
+ag
+ag
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+ah
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ae
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(133,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+fa
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+ac
+ag
+ac
+ac
+ag
+ag
+ae
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+ac
+ac
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(134,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+ac
+ac
+ag
+zT
+ae
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+bp
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+bp
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(135,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Ec
+ae
+ac
+ab
+ab
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ac
+ab
+ab
+ac
+ac
+ac
+bp
+ac
+ac
+ac
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(136,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+bp
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(137,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(138,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(139,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(140,1,1) = {"
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+"}
diff --git a/maps/gateway_vr/variable/honlethhighlands_b.dmm b/maps/gateway_vr/variable/honlethhighlands_b.dmm
new file mode 100644
index 0000000000..482c65dc67
--- /dev/null
+++ b/maps/gateway_vr/variable/honlethhighlands_b.dmm
@@ -0,0 +1,22860 @@
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"aa" = (
+/turf/unsimulated/wall/planetary/normal{
+ name = "the end";
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"ab" = (
+/turf/simulated/mineral/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"ac" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"ad" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"ae" = (
+/turf/simulated/floor/outdoors/rocks{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"af" = (
+/obj/structure/flora/tree/pine,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"ag" = (
+/turf/simulated/floor/beach/sand{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"ah" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"ai" = (
+/obj/effect/fake_sun/cool,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"aj" = (
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"ak" = (
+/turf/simulated/wall/r_wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/gate)
+"an" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"ao" = (
+/turf/simulated/floor/outdoors/ice{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"ap" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 9
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"av" = (
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"aw" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"ax" = (
+/obj/effect/floor_decal/techfloor,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"ay" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"az" = (
+/obj/machinery/door/airlock/glass_centcom{
+ locked = 1
+ },
+/turf/simulated/floor/tiled/techfloor/grid,
+/area/gateway/honlethhighlands/gate)
+"aA" = (
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"aB" = (
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"aC" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"aD" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"aE" = (
+/turf/simulated/mineral/floor/ignore_cavegen{
+ name = "dirt";
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"aF" = (
+/turf/simulated/wall/log,
+/area/gateway/honlethhighlands/town)
+"aG" = (
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"aI" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"aJ" = (
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"aK" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/outdoors/rocks{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"aL" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"aM" = (
+/turf/unsimulated/mineral{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"aN" = (
+/obj/structure/flora/tree/pine,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"aO" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/engineering)
+"aP" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/junk,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"aQ" = (
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"aR" = (
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"aS" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"aU" = (
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 8;
+ pixel_x = -22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"aV" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"aW" = (
+/turf/simulated/floor/outdoors/grass/forest{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"aX" = (
+/turf/simulated/mineral/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"aY" = (
+/turf/simulated/floor/outdoors/grass/forest{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"aZ" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/outdoors/grass/forest{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"ba" = (
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bb" = (
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bd" = (
+/obj/structure/flora/tree/pine,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"be" = (
+/obj/structure/flora/tree/pine,
+/turf/simulated/floor/outdoors/grass/forest{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bf" = (
+/turf/simulated/floor/outdoors/mud{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"bg" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bh" = (
+/turf/simulated/floor/outdoors/mud{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"bi" = (
+/obj/item/weapon/stool,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bj" = (
+/turf/simulated/floor/outdoors/ice{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bk" = (
+/obj/item/stack/material/log{
+ amount = 15
+ },
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bl" = (
+/obj/structure/table,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bm" = (
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bn" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"bw" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 10
+ },
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 8;
+ pixel_x = -28
+ },
+/obj/item/device/flash,
+/obj/item/weapon/reagent_containers/spray/pepper,
+/obj/item/weapon/stamp,
+/obj/item/weapon/stamp/denied,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"by" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"bz" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/bar)
+"bB" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/alarm/alarms_hidden{
+ pixel_y = 21
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"bD" = (
+/obj/machinery/vending/dinnerware{
+ dir = 1
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"bK" = (
+/obj/structure/bed/chair/office/light,
+/obj/random/mob/semirandom_mob_spawner/humanoid/b,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"bY" = (
+/obj/machinery/alarm/alarms_hidden{
+ pixel_y = 21
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"cj" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town/engineering)
+"cA" = (
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"cD" = (
+/obj/machinery/door/airlock/hatch,
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"cE" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/structure/table/rack/shelf/steel,
+/obj/random/tool,
+/obj/random/tool,
+/obj/random/tool,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"cT" = (
+/obj/structure/closet/secure_closet/freezer/fridge,
+/obj/item/weapon/reagent_containers/food/condiment/enzyme{
+ layer = 5
+ },
+/obj/item/weapon/reagent_containers/food/condiment/enzyme{
+ layer = 5
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"cY" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 1;
+ pixel_y = -20
+ },
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/honlethhighlands/town/garden)
+"de" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/kitchen)
+"dm" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 8;
+ pixel_x = 20
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/multiple/voidsuit,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"do" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/command)
+"dw" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/item/weapon/stool,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"dF" = (
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"dQ" = (
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"dX" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/awayloot,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"dZ" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/obj/item/modular_computer/console/preset/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"ef" = (
+/obj/item/weapon/reagent_containers/glass/bucket,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/honlethhighlands/town/garden)
+"em" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full{
+ maxhealth = 9000
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"eq" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/awayloot,
+/obj/random/awayloot,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"ez" = (
+/obj/structure/table/borosilicate,
+/obj/random/snack,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"eB" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/item/modular_computer/console/preset/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"eW" = (
+/obj/random/mob/semirandom_mob_spawner/monster/b,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"fi" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/book/manual/bar_guide,
+/obj/random/drinkbottle,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"fl" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"fo" = (
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"fN" = (
+/obj/machinery/gateway/brass{
+ dir = 10;
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"fT" = (
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"gm" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"gq" = (
+/obj/random/mob/semirandom_mob_spawner/monster/c,
+/turf/simulated/floor/outdoors/rocks{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"gt" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/bed/chair/sofa/brown/left{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"gB" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"gV" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 1;
+ pixel_y = -20
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"he" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/bar)
+"hm" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/structure/table/steel_reinforced,
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"hz" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/machinery/alarm/alarms_hidden{
+ dir = 8;
+ pixel_x = 20
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"hB" = (
+/obj/machinery/door/airlock/centcom{
+ hackProof = 1;
+ name = "Airlock";
+ req_one_access = null
+ },
+/turf/simulated/floor/tiled/techfloor/grid,
+/area/gateway/honlethhighlands/gate)
+"hD" = (
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"hE" = (
+/obj/machinery/door/airlock/silver,
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/kitchen)
+"hI" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/garden)
+"hN" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"hQ" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"hV" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands)
+"is" = (
+/obj/item/weapon/flame/lighter/random,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"iw" = (
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"iF" = (
+/obj/random/mob/semirandom_mob_spawner/monster/b,
+/turf/simulated/floor/outdoors/rocks{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"jp" = (
+/obj/item/modular_computer/console/preset/civilian,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"jE" = (
+/obj/machinery/gateway/brass{
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"jK" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"jS" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/rigsuit/chancetofail,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"jT" = (
+/obj/structure/table/rack/steel,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/random/maintenance/medical,
+/obj/random/multiple/gun/projectile,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"kk" = (
+/obj/effect/overmap/visitable/sector/tether_gateway/honlethhighlands,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"kx" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 10
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"kC" = (
+/obj/item/modular_computer/console/preset/command,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"kL" = (
+/obj/item/weapon/stool,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/bar)
+"kS" = (
+/obj/structure/closet/secure_closet/freezer/kitchen,
+/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{
+ pixel_x = -3
+ },
+/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{
+ pixel_x = -3
+ },
+/obj/item/weapon/reagent_containers/food/condiment/small/peppermill{
+ pixel_x = 3
+ },
+/obj/item/weapon/reagent_containers/food/condiment/small/peppermill{
+ pixel_x = 3
+ },
+/obj/item/weapon/storage/box/beakers{
+ name = "box of measuring cups";
+ pixel_x = 2;
+ pixel_y = 3;
+ starts_with = list(/obj/item/weapon/reagent_containers/glass/beaker/measuring_cup = 7)
+ },
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 4;
+ pixel_x = 22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"lb" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town/supply)
+"lj" = (
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"lk" = (
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"lo" = (
+/obj/random/mob/semirandom_mob_spawner/monster/d,
+/turf/simulated/floor/beach/sand{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"lp" = (
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 1;
+ pixel_y = 22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 2;
+ icon_state = "0-2"
+ },
+/obj/structure/table/rack/shelf/steel,
+/obj/random/firstaid,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"lS" = (
+/turf/simulated/wall/log,
+/area/gateway/honlethhighlands)
+"lY" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/beach/sand{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"mb" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/garden)
+"mo" = (
+/obj/structure/table/bench/wooden,
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"mr" = (
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"mv" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/d,
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"mG" = (
+/obj/structure/table/bench/wooden,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"mJ" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/action_figure,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"mM" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/item/modular_computer/console/preset/research{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"mW" = (
+/obj/machinery/smartfridge,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"mZ" = (
+/obj/machinery/light/small,
+/obj/structure/closet,
+/obj/random/contraband,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/obj/random/medical,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"nc" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town/command)
+"nd" = (
+/obj/machinery/portable_atmospherics/hydroponics/soil,
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/honlethhighlands/town/garden)
+"nh" = (
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/honlethhighlands)
+"ni" = (
+/obj/random/mob/semirandom_mob_spawner/monster/b,
+/turf/simulated/floor/beach/sand{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"np" = (
+/turf/simulated/floor/outdoors/grass/forest{
+ outdoors = 0
+ },
+/area/gateway/honlethhighlands/town/garden)
+"nv" = (
+/obj/random/mob/semirandom_mob_spawner/fish/b,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"nF" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"nI" = (
+/obj/structure/bed/chair/sofa/green/left{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"nP" = (
+/obj/effect/floor_decal/techfloor,
+/obj/structure/table/rack/steel,
+/obj/random/firstaid,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"nV" = (
+/obj/random/mob/semirandom_mob_spawner/monster/f,
+/turf/simulated/floor/beach/sand{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"od" = (
+/obj/effect/floor_decal/techfloor,
+/obj/machinery/alarm/alarms_hidden{
+ dir = 1;
+ pixel_y = -20
+ },
+/obj/effect/landmark/mcguffin_spawner,
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"oe" = (
+/obj/structure/bonfire,
+/obj/random/meat,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"ol" = (
+/obj/machinery/light/small,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town/xenobio)
+"oo" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/bed/chair{
+ dir = 8
+ },
+/obj/random/junk,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"ow" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"oy" = (
+/obj/structure/closet/walllocker_double{
+ dir = 8;
+ pixel_x = -28
+ },
+/obj/random/firstaid,
+/obj/item/weapon/tool/screwdriver,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"oP" = (
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"pg" = (
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 4;
+ pixel_x = 28
+ },
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/obj/random/thermalponcho,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"pk" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"px" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"pG" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"pI" = (
+/obj/structure/bed/chair/office/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"pO" = (
+/obj/structure/cable/pink,
+/obj/machinery/power/smes/buildable/offmap_spawn/empty,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"pR" = (
+/obj/random/mob/semirandom_mob_spawner/monster/c,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"pT" = (
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"pV" = (
+/obj/effect/landmark/mcguffin_spawner,
+/obj/random/mob/semirandom_mob_spawner/monster/e,
+/turf/simulated/floor/beach/sand{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"qc" = (
+/obj/random/multiple/random_size_crate/no_weapons,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"qd" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 10
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"qh" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 4;
+ pixel_x = 28
+ },
+/obj/random/awayloot,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"qi" = (
+/obj/random/mob/semirandom_mob_spawner/monster,
+/turf/simulated/floor/outdoors/rocks{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"qm" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"qu" = (
+/obj/structure/filingcabinet/chestdrawer,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"qB" = (
+/obj/item/weapon/stool/padded,
+/obj/random/junk,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"qF" = (
+/obj/random/mob/semirandom_mob_spawner/monster/d,
+/turf/simulated/floor/outdoors/rocks{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"qI" = (
+/obj/structure/closet,
+/obj/random/contraband,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/random/material,
+/obj/fiftyspawner/phoron,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"qK" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"qM" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 9
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/bomb_supply,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"qO" = (
+/obj/random/mob/semirandom_mob_spawner/monster/f,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"qZ" = (
+/obj/random/multiple/random_size_crate/no_weapons,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"rc" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 1;
+ pixel_y = -20
+ },
+/obj/structure/closet,
+/obj/effect/landmark/mcguffin_spawner,
+/obj/random/contraband,
+/obj/random/firstaid,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"ro" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"rz" = (
+/obj/structure/table/marble,
+/obj/machinery/reagentgrinder,
+/obj/item/weapon/reagent_containers/dropper,
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"rB" = (
+/obj/structure/cable{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/obj/machinery/power/port_gen/pacman{
+ anchored = 1
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"rC" = (
+/obj/machinery/vending/hydronutrients,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/garden)
+"rM" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 8;
+ pixel_x = -28
+ },
+/obj/random/awayloot,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"rP" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask,
+/obj/random/drinkbottle,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"rQ" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/gateway/brass{
+ density = 0;
+ dir = 1;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"rU" = (
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 4;
+ pixel_x = 28
+ },
+/obj/random/awayloot,
+/obj/random/multiple/gun/projectile,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"rX" = (
+/obj/machinery/door/airlock/silver,
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"si" = (
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/garden)
+"sF" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"sQ" = (
+/obj/machinery/door/airlock/glass,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"sZ" = (
+/obj/machinery/chem_master/condimaster,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"th" = (
+/obj/machinery/door/airlock/silver,
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/garden)
+"tj" = (
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 4;
+ pixel_x = 28
+ },
+/obj/random/contraband,
+/obj/random/multiple/gun/projectile,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"tk" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"tn" = (
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 8;
+ pixel_x = -22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"tO" = (
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town/kitchen)
+"tQ" = (
+/obj/effect/floor_decal/industrial/outline/yellow,
+/obj/random/multiple/random_size_crate/no_weapons,
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"tT" = (
+/obj/machinery/door/airlock/silver,
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"tU" = (
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"tX" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"uk" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"uu" = (
+/obj/item/weapon/stool/padded,
+/obj/random/junk,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/bar)
+"uI" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"uN" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"uP" = (
+/obj/item/weapon/stool/padded,
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"uQ" = (
+/obj/structure/cable{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/obj/machinery/alarm/alarms_hidden{
+ dir = 1;
+ pixel_y = -20
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"vd" = (
+/obj/machinery/gateway/brass{
+ density = 0;
+ dir = 5;
+ pixel_y = 6;
+ plane = -24
+ },
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"vi" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/awayloot,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"vx" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"vG" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"vL" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/food/drinks/jar,
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"vU" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"vW" = (
+/obj/machinery/gateway/centeraway/mcguffin{
+ pixel_y = 6;
+ plane = -24
+ },
+/obj/effect/map_effect/perma_light/gateway,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"wm" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/garden)
+"wo" = (
+/obj/random/mob/semirandom_mob_spawner/animal/d,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"wr" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"wx" = (
+/obj/machinery/door/airlock/silver,
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/bar)
+"wB" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/obj/machinery/space_heater,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"wC" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/cargo,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"wE" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 9
+ },
+/obj/item/modular_computer/console/preset/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"wF" = (
+/obj/random/mob/semirandom_mob_spawner/monster/b,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"wG" = (
+/obj/machinery/door/airlock/silver,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"wL" = (
+/obj/machinery/appliance/cooker/grill,
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"wQ" = (
+/obj/structure/table/standard,
+/obj/machinery/microwave,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"wR" = (
+/obj/structure/table/marble,
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"wY" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/glass/rag,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"xa" = (
+/obj/random/mob/semirandom_mob_spawner/monster/e,
+/turf/simulated/floor/outdoors/mud{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"xo" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/random/multiple/random_size_crate/no_weapons,
+/obj/effect/floor_decal/industrial/outline/yellow,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"xz" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/garden)
+"xO" = (
+/turf/simulated/wall/iron,
+/area/gateway/honlethhighlands)
+"ya" = (
+/obj/structure/bonfire,
+/turf/simulated/floor/reinforced,
+/area/gateway/honlethhighlands)
+"yb" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"yg" = (
+/obj/machinery/light,
+/obj/structure/closet,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"yh" = (
+/obj/random/mob/semirandom_mob_spawner/animal/e,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"yi" = (
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"yl" = (
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"yu" = (
+/obj/effect/floor_decal/techfloor/corner{
+ dir = 10
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"yC" = (
+/obj/effect/floor_decal/techfloor,
+/obj/machinery/light,
+/obj/item/modular_computer/console/preset/research{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"yH" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 8;
+ pixel_x = -28
+ },
+/obj/random/awayloot,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"yP" = (
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/bar)
+"yX" = (
+/obj/item/weapon/material/knife/machete/hatchet,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/garden)
+"zh" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"zk" = (
+/obj/machinery/light/flamp/noshade,
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town/command)
+"zn" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 10
+ },
+/obj/structure/table/rack/steel,
+/obj/random/contraband,
+/obj/random/contraband,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"zv" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"zE" = (
+/obj/random/junk,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"zP" = (
+/obj/item/weapon/bedsheet/pirate,
+/obj/structure/bed/padded,
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/honlethhighlands)
+"zV" = (
+/obj/structure/closet/walllocker_double{
+ dir = 8;
+ pixel_x = -28
+ },
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/mre,
+/obj/random/junk,
+/obj/random/junk,
+/obj/random/junk,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"Aa" = (
+/obj/machinery/alarm/alarms_hidden{
+ pixel_y = 21
+ },
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"Ai" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/wall/r_wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/gate)
+"An" = (
+/obj/machinery/space_heater,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"Ao" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"Ar" = (
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"AF" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/food/drinks/cup,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"AK" = (
+/obj/random/mre,
+/obj/random/mre,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"AO" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"AV" = (
+/obj/random/junk,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"Bf" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/closet/walllocker_double{
+ color = "#6769a7";
+ dir = 4;
+ pixel_x = 28
+ },
+/obj/effect/landmark/mcguffin_spawner,
+/obj/random/awayloot,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Bi" = (
+/obj/machinery/appliance/cooker/fryer,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"Bj" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"BC" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"BD" = (
+/obj/machinery/door/airlock/silver,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/kitchen)
+"BS" = (
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"BW" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"Ca" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/cargo,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"Ck" = (
+/obj/structure/sink{
+ dir = 4;
+ pixel_x = 11
+ },
+/turf/simulated/floor/plating{
+ outdoors = 1
+ },
+/area/gateway/honlethhighlands/town/garden)
+"Cl" = (
+/obj/structure/table/marble,
+/obj/item/weapon/material/kitchen/rollingpin,
+/obj/item/weapon/material/knife/butch,
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"Cs" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/material/precious,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Cy" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/wall/r_wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/gate)
+"CL" = (
+/obj/effect/floor_decal/techfloor,
+/obj/structure/table/steel_reinforced,
+/obj/machinery/light,
+/obj/random/maintenance/research,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"CM" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"CS" = (
+/obj/machinery/gateway/brass{
+ dir = 4;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Db" = (
+/obj/random/tech_supply/component,
+/obj/random/tech_supply/component,
+/obj/random/multiple/random_size_crate/no_weapons,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"De" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/obj/machinery/light,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"Dg" = (
+/obj/structure/closet,
+/obj/random/contraband,
+/obj/random/tech_supply/component,
+/obj/random/tech_supply/component,
+/obj/random/tech_supply/component,
+/obj/random/tech_supply/component,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Di" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/medical,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Dk" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/xenobio)
+"Dm" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"Ds" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"DE" = (
+/obj/structure/table/glass,
+/obj/item/modular_computer/laptop/preset/custom_loadout/cheap,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"DF" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"Ee" = (
+/obj/structure/table/steel_reinforced,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"Eh" = (
+/obj/structure/table/rack/steel,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/medical,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Ep" = (
+/obj/effect/floor_decal/techfloor,
+/obj/structure/table/rack/steel,
+/obj/random/contraband,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Ev" = (
+/obj/machinery/power/apc/alarms_hidden{
+ pixel_y = -22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"EP" = (
+/obj/structure/table/glass,
+/obj/item/weapon/paper_bin,
+/obj/item/weapon/newspaper,
+/obj/item/weapon/pen/multi,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Fb" = (
+/obj/structure/table/rack/steel,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/medical,
+/obj/random/multiple/voidsuit,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Fj" = (
+/obj/structure/bed/chair/wood{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"Fn" = (
+/obj/random/mob/semirandom_mob_spawner/fish,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"Fy" = (
+/obj/random/mob/semirandom_mob_spawner/animal/c,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"FK" = (
+/turf/simulated/wall{
+ color = "#6769a7"
+ },
+/area/gateway/honlethhighlands/town/supply)
+"FN" = (
+/turf/simulated/floor/reinforced,
+/area/gateway/honlethhighlands)
+"FR" = (
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,
+/obj/random/awayloot,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"Ge" = (
+/obj/machinery/door/airlock/glass,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"Gl" = (
+/obj/structure/bed/chair/wood{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"Gn" = (
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"Gr" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/structure/closet,
+/obj/random/contraband,
+/obj/random/tech_supply/component,
+/obj/item/device/multitool,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"Gz" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/drinkbottle,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/bar)
+"GT" = (
+/turf/simulated/floor/outdoors/mud{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"GY" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"Hd" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"Hh" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"HL" = (
+/obj/machinery/smartfridge/drying_rack,
+/turf/simulated/floor/plating{
+ outdoors = 1
+ },
+/area/gateway/honlethhighlands/town/garden)
+"HY" = (
+/obj/structure/bed/chair/sofa/green/right{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"Ic" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/honlethhighlands/town/garden)
+"In" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 5
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/rigsuit/chancetofail,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Ip" = (
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Iy" = (
+/obj/machinery/vending/boozeomat{
+ emagged = 1
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"IM" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"IS" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"Jc" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/obj/structure/table/rack/steel,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Jf" = (
+/obj/machinery/seed_storage/garden,
+/turf/simulated/floor/tiled{
+ outdoors = 1
+ },
+/area/gateway/honlethhighlands/town/garden)
+"JI" = (
+/obj/item/weapon/stool/padded,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"JL" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"JM" = (
+/obj/random/cigarettes,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"JQ" = (
+/obj/structure/bed/chair/office/light{
+ dir = 4
+ },
+/obj/random/mob/semirandom_mob_spawner/humanoid/b,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Kh" = (
+/obj/structure/sink/kitchen{
+ dir = 8;
+ pixel_x = 12
+ },
+/obj/effect/decal/cleanable/blood,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"Kj" = (
+/obj/random/multiple/random_size_crate/no_weapons,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Kk" = (
+/obj/structure/cable/ender{
+ d2 = 2;
+ icon_state = "0-2";
+ id = "togateway"
+ },
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"Kt" = (
+/obj/structure/cable/heavyduty,
+/obj/structure/cable/pink{
+ d2 = 2;
+ icon_state = "0-2"
+ },
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"Kx" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/bed/chair/sofa/brown/right{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"KN" = (
+/obj/random/mob/semirandom_mob_spawner/animal,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"Li" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/bed/chair{
+ dir = 8
+ },
+/obj/effect/decal/writing{
+ icon_state = "writing2";
+ message = "About done waiting in this line";
+ pixel_x = 19;
+ pixel_y = -9
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Lk" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/honlethhighlands/town/garden)
+"Lx" = (
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"LJ" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"LY" = (
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"Mc" = (
+/obj/structure/closet,
+/obj/effect/landmark/mcguffin_spawner,
+/obj/random/contraband,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Mk" = (
+/obj/random/mob/semirandom_mob_spawner/animal/e,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"ME" = (
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 4;
+ pixel_x = 22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 2;
+ icon_state = "0-2"
+ },
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/obj/structure/bed/chair{
+ dir = 8
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"MR" = (
+/obj/structure/cable/ender{
+ d2 = 8;
+ icon_state = "0-8";
+ id = "togateway"
+ },
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"MS" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/outdoors/grass{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"Nq" = (
+/obj/structure/undies_wardrobe,
+/turf/simulated/floor/carpet/purcarpet,
+/area/gateway/honlethhighlands)
+"Nt" = (
+/obj/item/weapon/stool/padded,
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"NF" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 9
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/material/refined,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"NS" = (
+/obj/machinery/door/airlock/hatch,
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/engineering)
+"NV" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Oj" = (
+/obj/random/crate,
+/obj/effect/landmark/mcguffin_spawner,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"On" = (
+/obj/structure/cable/heavyduty{
+ icon_state = "0-4"
+ },
+/obj/structure/cable/pink{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"Ov" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/bomb_supply,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"OJ" = (
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/research,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"OK" = (
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"OS" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Pb" = (
+/obj/machinery/door/airlock/silver,
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"Pg" = (
+/obj/structure/simple_door/iron,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"Pp" = (
+/obj/machinery/biogenerator,
+/turf/simulated/floor/plating{
+ outdoors = 1
+ },
+/area/gateway/honlethhighlands/town/garden)
+"Pz" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/machinery/chemical_dispenser/bar_alc/full{
+ dir = 4
+ },
+/obj/structure/table/reinforced,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"PD" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/research,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Qc" = (
+/obj/random/mob/semirandom_mob_spawner/animal/b,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"Qd" = (
+/obj/random/mob/semirandom_mob_spawner/monster/d,
+/turf/simulated/floor/outdoors/mud{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"Qf" = (
+/obj/random/mob/semirandom_mob_spawner/animal/retaliate,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"Ql" = (
+/obj/machinery/gateway/brass{
+ dir = 6;
+ pixel_y = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Qm" = (
+/obj/random/mob/semirandom_mob_spawner/monster/e,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"Qt" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/obj/structure/closet/crate/bin,
+/obj/random/junk,
+/obj/random/junk,
+/obj/random/junk,
+/obj/random/junk,
+/obj/random/junk,
+/obj/random/junk,
+/obj/random/junk,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Qz" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"QA" = (
+/obj/machinery/power/terminal{
+ dir = 4
+ },
+/obj/structure/cable{
+ d2 = 2;
+ icon_state = "0-2"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"QB" = (
+/obj/machinery/telecomms/relay,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/engineering)
+"QG" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/machinery/alarm/alarms_hidden{
+ dir = 4;
+ pixel_x = -21
+ },
+/obj/structure/bed/chair/office/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"QZ" = (
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"Rg" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/structure/table/steel_reinforced,
+/obj/item/weapon/tool/crowbar,
+/obj/item/broken_device/random,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"Rj" = (
+/obj/machinery/light,
+/obj/structure/closet,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"Rl" = (
+/obj/random/mob/semirandom_mob_spawner/monster/c,
+/turf/simulated/floor/beach/sand{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"Rm" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/command)
+"Ro" = (
+/obj/random/mob/semirandom_mob_spawner/monster/d,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"Rt" = (
+/obj/machinery/light/small{
+ dir = 8
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"RA" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 10
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/awayloot,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"RY" = (
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/garden)
+"Sn" = (
+/obj/random/mob/semirandom_mob_spawner/animal/d,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"SJ" = (
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 1;
+ pixel_y = 22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 2;
+ icon_state = "0-2"
+ },
+/obj/structure/table/rack/steel,
+/obj/random/maintenance,
+/obj/random/maintenance/cargo,
+/obj/random/maintenance/clean,
+/obj/random/maintenance/security,
+/obj/random/maintenance/medical,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"SP" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/supply)
+"Td" = (
+/obj/random/awayloot,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"Tg" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/kitchen)
+"TE" = (
+/obj/random/awayloot,
+/turf/simulated/floor/outdoors/rocks{
+ outdoors = 0;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"TG" = (
+/mob/living/simple_mob/animal/passive/penguin,
+/turf/simulated/floor/outdoors/ice{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"Ue" = (
+/obj/random/mob/semirandom_mob_spawner/fish/c,
+/turf/simulated/floor/water/deep{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/beach)
+"Uo" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/d,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"Uu" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 4;
+ pixel_x = -21
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/xenobio)
+"Uw" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+"UA" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"UN" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"US" = (
+/obj/structure/cable/pink{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"UZ" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/awayloot,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Vd" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/machinery/gateway/brass{
+ density = 0;
+ dir = 9;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Vi" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/supply)
+"Vk" = (
+/obj/machinery/light/small{
+ dir = 1
+ },
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/gate)
+"Vl" = (
+/obj/effect/floor_decal/techfloor,
+/obj/structure/table/glass,
+/obj/item/weapon/folder/blue,
+/obj/item/weapon/folder/red{
+ pixel_x = 5;
+ pixel_y = -4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Vr" = (
+/obj/structure/closet/secure_closet/freezer/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/obj/random/meat,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"Vw" = (
+/obj/structure/cable/heavyduty{
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating{
+ edge_blending_priority = 1;
+ outdoors = 1;
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"Vx" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full{
+ maxhealth = 9000
+ },
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/gate)
+"Vy" = (
+/obj/random/cutout,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"VB" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 8
+ },
+/obj/machinery/alarm/alarms_hidden{
+ dir = 4;
+ pixel_x = -21
+ },
+/obj/effect/decal/writing{
+ icon_state = "writing2";
+ message = "Can't find the key!!!"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"VD" = (
+/obj/machinery/appliance/cooker/oven,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"VF" = (
+/obj/effect/floor_decal/techfloor/corner{
+ dir = 6
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"VT" = (
+/obj/machinery/power/apc/alarms_hidden{
+ dir = 1;
+ pixel_y = 22;
+ start_charge = 0
+ },
+/obj/structure/cable/pink{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/garden)
+"Wj" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid/b,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Wp" = (
+/turf/simulated/floor/outdoors/grass/forest,
+/area/gateway/honlethhighlands/town/garden)
+"Ws" = (
+/obj/machinery/gateway/brass{
+ dir = 8;
+ pixel_y = 6;
+ plane = -24
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Wv" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/random/multiple/random_size_crate/no_weapons,
+/obj/effect/floor_decal/industrial/outline/yellow,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"Ww" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"WC" = (
+/obj/structure/cable/pink{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/bar)
+"WN" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 9
+ },
+/obj/structure/table/steel_reinforced,
+/obj/random/maintenance/security,
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"WO" = (
+/obj/structure/table/steel_reinforced,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"WQ" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"WS" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 4;
+ pixel_x = -21
+ },
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/kitchen)
+"XA" = (
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"XS" = (
+/obj/structure/cable/pink{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled/asteroid_steel/outdoors{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"XX" = (
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/outdoors/snow{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/town)
+"XZ" = (
+/obj/machinery/chemical_dispenser/bar_soft/full{
+ dir = 4
+ },
+/obj/structure/table/reinforced,
+/turf/simulated/floor/lino,
+/area/gateway/honlethhighlands/town/bar)
+"Yo" = (
+/obj/effect/landmark/gateway_scatter,
+/turf/simulated/floor/outdoors/newdirt{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands)
+"Yx" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/gateway/honlethhighlands/gate)
+"YA" = (
+/obj/machinery/alarm/alarms_hidden{
+ dir = 8;
+ pixel_x = 20
+ },
+/obj/random/multiple/random_size_crate/no_weapons,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"YQ" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/medical,
+/obj/random/medical,
+/turf/simulated/floor/tiled,
+/area/gateway/honlethhighlands/town/command)
+"Ze" = (
+/obj/item/weapon/stool,
+/obj/random/mob/semirandom_mob_spawner/humanoid,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands/town/bar)
+"Zy" = (
+/obj/random/drinkbottle,
+/turf/simulated/mineral/floor/ignore_cavegen{
+ temperature = 253.15
+ },
+/area/gateway/honlethhighlands/caves)
+"ZS" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/stack/material/wood,
+/obj/item/weapon/flame/lighter/random,
+/turf/simulated/floor/wood,
+/area/gateway/honlethhighlands)
+"ZZ" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/turf/simulated/floor/plating,
+/area/gateway/honlethhighlands/town/xenobio)
+
+(1,1,1) = {"
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+"}
+(2,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+bm
+bm
+bm
+bm
+bm
+bm
+Ue
+bm
+bm
+bm
+ai
+aa
+"}
+(3,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+kk
+aa
+"}
+(4,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+pR
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+aX
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(5,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aW
+aW
+aY
+aY
+aY
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bm
+bj
+bm
+bm
+bm
+aa
+"}
+(6,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+qM
+Ov
+VB
+rM
+qd
+ak
+NF
+Cs
+yH
+UA
+RA
+ak
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ac
+ac
+ac
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aW
+aW
+aW
+aW
+aY
+aY
+aY
+ba
+ba
+ba
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+nv
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(7,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+eB
+JQ
+av
+av
+ax
+hB
+an
+av
+av
+Wj
+CL
+ak
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ac
+ac
+ag
+ag
+pT
+Rl
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+aW
+aW
+aW
+aW
+aW
+aZ
+ba
+ba
+ba
+ba
+ba
+bg
+ba
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(8,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+dX
+OS
+Yx
+Yx
+nF
+ak
+an
+av
+VF
+Yx
+AO
+ak
+ab
+ab
+ab
+ad
+ad
+ad
+hD
+aj
+ad
+ad
+af
+ad
+ad
+ab
+ab
+aj
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aJ
+aJ
+aJ
+ab
+ab
+ab
+ab
+ac
+ac
+Rl
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+aW
+aW
+ad
+aW
+ad
+aj
+aj
+ba
+aY
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(9,1,1) = {"
+aM
+ab
+ab
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+hB
+ak
+ak
+JL
+av
+ax
+ak
+ak
+ak
+ak
+ak
+ak
+ad
+ad
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+Qc
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ac
+ab
+ag
+ag
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+Fy
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aW
+aY
+aY
+aY
+ba
+ba
+ba
+ba
+ba
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+Ue
+bm
+aa
+"}
+(10,1,1) = {"
+aM
+ab
+ab
+ak
+ap
+ay
+ay
+qd
+Vx
+wE
+ay
+zn
+Vx
+Wv
+av
+ax
+ak
+ap
+ay
+QG
+bw
+ak
+ad
+hD
+Uo
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ac
+ac
+ac
+ag
+ac
+pR
+ae
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+aW
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+ba
+ba
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(11,1,1) = {"
+aM
+ab
+ab
+ak
+Vd
+Ws
+fN
+ax
+ak
+an
+av
+Ep
+Vx
+xo
+av
+ax
+ak
+an
+DE
+EP
+Vl
+ak
+Vk
+hD
+hD
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Qc
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+aY
+aY
+be
+aY
+aY
+aY
+ba
+ba
+ba
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(12,1,1) = {"
+aM
+ab
+ab
+ak
+rQ
+vW
+jE
+ax
+hB
+an
+Wj
+od
+ak
+bB
+Wj
+ax
+hB
+an
+av
+av
+ax
+az
+XA
+XA
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Qc
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+gq
+ae
+ae
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aW
+aW
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+aY
+be
+bj
+bj
+TG
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(13,1,1) = {"
+aM
+ab
+ab
+ak
+vd
+CS
+Ql
+ax
+ak
+an
+av
+nP
+Vx
+xo
+av
+ax
+ak
+an
+av
+av
+ax
+ak
+aA
+XA
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+TE
+ae
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Fy
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aW
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(14,1,1) = {"
+aM
+ab
+ab
+ak
+aw
+Yx
+Yx
+nF
+Vx
+dZ
+Yx
+Jc
+Vx
+Wv
+av
+ax
+ak
+wB
+oo
+Li
+ME
+Ai
+aj
+XA
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+Qc
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Qc
+ad
+ad
+ad
+ad
+ad
+Qc
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ah
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+Fy
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+Fn
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(15,1,1) = {"
+aM
+ab
+ab
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+hB
+ak
+ak
+JL
+av
+ax
+ak
+ak
+ak
+ak
+ak
+Cy
+XA
+XA
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+aY
+aY
+bb
+aY
+aY
+aY
+aY
+aY
+ba
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+Fn
+bm
+bm
+aa
+"}
+(16,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+WN
+gt
+Kx
+ay
+qd
+ak
+an
+av
+yu
+sF
+kx
+ak
+ad
+aj
+On
+mv
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+aY
+bb
+aY
+aY
+aY
+aY
+aY
+bb
+ba
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bm
+Fn
+bm
+bm
+bm
+Fn
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(17,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+hm
+bK
+av
+av
+ax
+hB
+an
+av
+Wj
+pI
+yC
+ak
+ad
+aj
+Vw
+XA
+hD
+aj
+ad
+ad
+ad
+af
+ad
+ad
+aj
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+Fy
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+bb
+bb
+bb
+aY
+bb
+aY
+aY
+bb
+bb
+bb
+bb
+ba
+aY
+aY
+aY
+aZ
+aY
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(18,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+In
+mM
+hz
+qh
+Qt
+ak
+gB
+PD
+UZ
+Bf
+NV
+ak
+ad
+ad
+Vw
+XA
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+aj
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+Qc
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Qc
+ad
+ad
+ab
+ab
+ab
+aj
+aj
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+aj
+aj
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+aY
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+nv
+aa
+"}
+(19,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ak
+ad
+aj
+MR
+XA
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+aj
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ab
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Fy
+ad
+ad
+ad
+ad
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bd
+bb
+aY
+bb
+bb
+bb
+bb
+bb
+ba
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(20,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+aj
+aj
+XA
+XA
+XA
+XA
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ad
+ad
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+Fn
+bm
+bm
+bm
+aa
+"}
+(21,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+XA
+XA
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+aj
+aj
+aj
+hD
+hD
+hD
+hD
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(22,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+XA
+XA
+aE
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+hD
+ad
+hD
+hD
+aj
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+bb
+ba
+ba
+ba
+ba
+ba
+bb
+bb
+aY
+bb
+aY
+aY
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(23,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+XA
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+hD
+hD
+hD
+hD
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+tU
+tU
+tU
+ba
+ba
+tU
+aY
+bb
+aY
+aY
+tU
+aY
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(24,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+XA
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+ba
+ba
+ba
+ba
+aY
+aY
+aY
+tU
+tU
+tU
+tU
+tU
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(25,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+aj
+XA
+XA
+aj
+ad
+ad
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Qc
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+Fy
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Fy
+ad
+ad
+af
+ad
+ad
+bb
+bb
+bb
+ba
+ba
+aY
+aY
+tU
+tU
+tU
+tU
+tU
+tU
+tU
+tU
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(26,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+XA
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+tU
+bi
+tU
+tU
+tU
+tU
+bl
+tU
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(27,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+aj
+aj
+aj
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bd
+bb
+aY
+tU
+tU
+tU
+tU
+tU
+tU
+tU
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(28,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+XA
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+hD
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Fy
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+tU
+tU
+bk
+tU
+tU
+tU
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(29,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+XA
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bd
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+tU
+tU
+tU
+tU
+tU
+bi
+tU
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(30,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+af
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+aj
+aj
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+af
+ad
+ad
+lS
+lS
+hV
+hV
+lS
+lS
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+tU
+tU
+tU
+tU
+tU
+tU
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(31,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+XA
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+aj
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Qc
+Qc
+ad
+aj
+aj
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+lS
+zP
+nh
+nh
+eq
+lS
+ad
+ad
+bb
+bb
+bd
+bb
+bb
+bb
+bb
+tU
+tU
+tU
+tU
+tU
+tU
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(32,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+lS
+hV
+lS
+Nq
+nh
+nh
+Oj
+lS
+aW
+ad
+bb
+bb
+bb
+bb
+aY
+aY
+tU
+tU
+tU
+tU
+tU
+tU
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(33,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+aj
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+hV
+Gl
+Ar
+Ar
+Ar
+Ar
+Ar
+lS
+aA
+aW
+aY
+bb
+aY
+tU
+tU
+tU
+aY
+aY
+tU
+tU
+ba
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(34,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+hD
+ad
+hD
+hD
+hD
+hD
+ad
+hD
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+hV
+ez
+Ar
+Ar
+fl
+Ar
+Ar
+Pg
+aA
+aA
+tU
+tU
+tU
+bb
+bb
+aY
+bb
+aY
+ba
+ba
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(35,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+MS
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+hD
+Yo
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+hV
+Fj
+Ar
+Ar
+Ar
+Ar
+Ar
+lS
+aA
+aW
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+be
+aY
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bm
+bm
+bm
+bm
+aa
+"}
+(36,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ad
+ad
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+aj
+ad
+aj
+aj
+aj
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Qc
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+lS
+hV
+lS
+Ar
+nI
+HY
+Ar
+hV
+aW
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(37,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+lS
+Ar
+Ar
+Ar
+ZS
+lS
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+bb
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(38,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+lS
+xO
+FN
+FN
+xO
+lS
+ad
+ad
+bb
+bb
+bb
+bd
+bb
+bb
+aY
+bb
+aY
+aY
+aY
+be
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(39,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+xO
+ya
+ya
+xO
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+Fn
+bm
+bm
+bm
+bm
+aa
+"}
+(40,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ad
+ad
+KN
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ae
+ac
+ac
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+xO
+xO
+xO
+xO
+ad
+ad
+af
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aZ
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+Fn
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(41,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ae
+ae
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+aY
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+nv
+bm
+bm
+aa
+"}
+(42,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+KN
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+aS
+ac
+ac
+ac
+ae
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(43,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+aY
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+bb
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+Ue
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(44,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+KN
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+aB
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aY
+aY
+aY
+aY
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+bb
+bb
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+Fn
+bm
+bm
+aa
+"}
+(45,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+aB
+aC
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ao
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aY
+aY
+aY
+aY
+aY
+be
+aY
+aY
+ba
+ba
+ba
+aY
+bb
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(46,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+ba
+ba
+aY
+bb
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(47,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+KN
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+aY
+be
+aY
+aY
+aY
+aY
+ba
+ba
+bb
+ba
+aY
+bb
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bn
+bm
+bm
+bm
+bm
+aa
+"}
+(48,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ad
+ad
+ad
+ad
+ao
+ao
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+bb
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+bb
+ba
+ba
+aY
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+nv
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(49,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+KN
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ad
+KN
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+aJ
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+bb
+aY
+aY
+aY
+aY
+ba
+ba
+bb
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(50,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+aJ
+aJ
+aJ
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ae
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+aY
+aY
+ba
+ba
+ba
+ba
+ba
+bb
+ba
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(51,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+aJ
+aJ
+ad
+ad
+ad
+aJ
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+aJ
+aJ
+ac
+ac
+ac
+ac
+ac
+aS
+ac
+ac
+ac
+ae
+ae
+ab
+ab
+ab
+ab
+ad
+ad
+af
+ad
+ad
+ad
+ad
+af
+ad
+bb
+aY
+bb
+ba
+ba
+ba
+ba
+ba
+ba
+bb
+ba
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+Fn
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(52,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+KN
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+aJ
+aJ
+aJ
+aJ
+aJ
+aJ
+aJ
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aJ
+aJ
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+aY
+bb
+ba
+ba
+ba
+bg
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+Fn
+bm
+aa
+"}
+(53,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aJ
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+aY
+aY
+bb
+ba
+ba
+ba
+ba
+ba
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(54,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+qO
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+bb
+ba
+ba
+ba
+ba
+ba
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+aa
+"}
+(55,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ao
+ao
+ao
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ah
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bd
+bb
+aY
+ba
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+aa
+"}
+(56,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ao
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+aY
+aY
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+TG
+bj
+bj
+bm
+bm
+aa
+"}
+(57,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+KN
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+qO
+ac
+ag
+ag
+ag
+ag
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+aY
+ba
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+aa
+"}
+(58,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+KN
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ag
+ag
+ag
+ag
+ag
+ag
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+aa
+"}
+(59,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ag
+ag
+ag
+ag
+ag
+ag
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+be
+aY
+aY
+aY
+bj
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(60,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ah
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aK
+ac
+ac
+ag
+ag
+ag
+nV
+ag
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(61,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+qO
+ag
+ag
+ag
+ag
+ag
+ag
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+aY
+aY
+be
+aY
+ba
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bj
+bj
+bj
+bm
+bm
+bm
+aa
+"}
+(62,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+KN
+ad
+ad
+KN
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ag
+ag
+ag
+ag
+ag
+ag
+qO
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bj
+bj
+bm
+bm
+aa
+"}
+(63,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+TE
+ae
+ac
+ac
+ag
+ag
+ag
+ag
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+wo
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bj
+bm
+bm
+aa
+"}
+(64,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+ac
+ac
+qO
+ac
+ac
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+wo
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+ba
+aY
+ba
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(65,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+af
+ab
+ab
+ab
+ae
+aK
+ae
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+ba
+ba
+aY
+bb
+aY
+aY
+ba
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(66,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+KN
+ab
+ab
+ab
+ab
+ae
+ag
+ag
+ag
+ac
+ac
+ac
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+aJ
+aJ
+aJ
+aJ
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+ba
+bb
+bb
+ba
+ba
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(67,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ac
+wF
+ac
+ac
+ag
+ac
+ac
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+aJ
+ad
+aJ
+aJ
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+bb
+bb
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(68,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ac
+iF
+TE
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aJ
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+wo
+ad
+ad
+ad
+ad
+wo
+ad
+ad
+bb
+bb
+bb
+bb
+bd
+bb
+bb
+bb
+bb
+aY
+bb
+bb
+bb
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(69,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+bb
+bb
+bb
+ba
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+Ue
+bm
+bm
+bm
+aa
+"}
+(70,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ni
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ae
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+ba
+aY
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(71,1,1) = {"
+aM
+ab
+ab
+ab
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+ba
+ba
+ba
+ba
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(72,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ag
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+hD
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+ba
+aY
+ba
+ba
+aY
+bb
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(73,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ac
+ac
+ag
+ag
+ag
+ag
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bd
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+bb
+ba
+ba
+ba
+ba
+bb
+bb
+bb
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(74,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ae
+ac
+ac
+ni
+ag
+ag
+ag
+ag
+wF
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Sn
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+ba
+ba
+aY
+ba
+bb
+bb
+bb
+bb
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+Ue
+bm
+aa
+"}
+(75,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+hD
+pk
+hD
+aj
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+wo
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+wo
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+bb
+bb
+bb
+bb
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(76,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+wF
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+aj
+ad
+ad
+ad
+ab
+ab
+ad
+aj
+aj
+aj
+hD
+hD
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+be
+aY
+ba
+aY
+bb
+aY
+bb
+bb
+bb
+bb
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(77,1,1) = {"
+aM
+ab
+ab
+ab
+qi
+TE
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+aj
+aj
+aj
+hD
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+bb
+Sn
+bb
+Sn
+bb
+bb
+bb
+aY
+aY
+bb
+aY
+aY
+aY
+ba
+aY
+bb
+bb
+bb
+bb
+bb
+bb
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(78,1,1) = {"
+aM
+ab
+ab
+ab
+ae
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+TE
+ae
+ac
+ae
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ah
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+aj
+hD
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+aY
+bj
+bj
+bb
+bb
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(79,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+iw
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+wF
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+aF
+aF
+aF
+aI
+yl
+aI
+aF
+aF
+aF
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+be
+aY
+aY
+aY
+ba
+ba
+ba
+aY
+bj
+bj
+bb
+bb
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(80,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+pT
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+aF
+aF
+aI
+yl
+aI
+aF
+aF
+ad
+ad
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+wo
+ad
+af
+ad
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+ba
+ba
+ba
+aY
+aY
+bj
+bb
+bj
+bj
+TG
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(81,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+iw
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+aF
+aF
+aF
+aF
+aI
+aI
+aI
+aF
+aF
+aF
+aF
+aF
+ab
+ab
+aF
+aF
+aF
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+bb
+bb
+bd
+bb
+bb
+bb
+bb
+aY
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+Ue
+bm
+bm
+bm
+bm
+aa
+"}
+(82,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+aJ
+aJ
+aJ
+ac
+ac
+wF
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+aF
+aF
+aF
+aF
+aI
+yl
+aI
+aF
+aF
+aF
+aF
+aF
+ab
+ab
+aF
+aF
+aF
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+af
+ad
+wo
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+aY
+aY
+be
+aY
+ba
+ba
+ba
+aY
+aY
+aY
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bm
+bm
+bm
+bm
+bm
+bm
+aa
+"}
+(83,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ah
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+aJ
+aJ
+ab
+ac
+ag
+ag
+ag
+wF
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ad
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+aI
+aI
+aF
+aF
+aI
+aI
+aI
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aF
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+aY
+aY
+aY
+ba
+ba
+bg
+ba
+ba
+ba
+aY
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+bj
+ab
+ab
+ab
+bm
+bm
+aa
+"}
+(84,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ad
+ad
+ad
+eW
+ab
+ac
+ag
+lY
+ag
+ac
+ab
+ab
+ab
+ab
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+aI
+aI
+aF
+aF
+aF
+aI
+yl
+aI
+aF
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aF
+aF
+aF
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+wo
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+aY
+aY
+ba
+aY
+ba
+ba
+ba
+ba
+aY
+aY
+bj
+bj
+aY
+aY
+ab
+ab
+ab
+ab
+ab
+ab
+bm
+bm
+aa
+"}
+(85,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ab
+ab
+ab
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+zE
+Td
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aF
+aF
+aF
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+aY
+aY
+aY
+aY
+ba
+ba
+ba
+aY
+aY
+aY
+aY
+aY
+aY
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(86,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+aj
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ni
+ac
+ac
+ab
+ab
+ab
+ab
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+zE
+ac
+ac
+ac
+ac
+zE
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+XX
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aF
+aF
+aF
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+aY
+aY
+aY
+aY
+ba
+ba
+aY
+aY
+aY
+aY
+aY
+aY
+ab
+ab
+ab
+ae
+ab
+ab
+ab
+ab
+aM
+"}
+(87,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+hD
+hD
+ad
+hD
+hD
+hD
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+zE
+ac
+zE
+ab
+ab
+aI
+aI
+aI
+aI
+XX
+aI
+aI
+aI
+yl
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aF
+aF
+aF
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aY
+aY
+ba
+ba
+ba
+aY
+aZ
+aY
+ab
+ab
+ab
+ab
+ae
+ae
+ae
+ae
+ab
+ab
+aM
+"}
+(88,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+hD
+hD
+hD
+hD
+hD
+hD
+hD
+hD
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ac
+ac
+pT
+ac
+fo
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XX
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aF
+aF
+aF
+ad
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aY
+aY
+aY
+aY
+aY
+ab
+ab
+ab
+ae
+ae
+ae
+qF
+ab
+ab
+ab
+aM
+"}
+(89,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+hD
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ad
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+AK
+mo
+Zy
+ac
+ac
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+Lx
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aN
+aI
+aF
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aY
+aY
+aY
+aY
+ab
+ab
+ab
+ae
+ae
+ae
+aK
+ae
+ae
+ab
+ab
+aM
+"}
+(90,1,1) = {"
+aM
+ab
+ab
+ab
+iw
+ac
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+hD
+hD
+hD
+hD
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ac
+mo
+oe
+ac
+ac
+ac
+ab
+ab
+ab
+aI
+aI
+he
+he
+bz
+bz
+he
+bz
+bz
+he
+he
+aI
+Lx
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+af
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aY
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+Ro
+ac
+ac
+ae
+ab
+ab
+aM
+"}
+(91,1,1) = {"
+aM
+ab
+ab
+ac
+ac
+ab
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+aj
+aj
+aj
+hD
+hD
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ac
+ac
+is
+mG
+ac
+JM
+ac
+ab
+ab
+aI
+aI
+aI
+he
+dw
+AV
+yP
+vL
+Iy
+XZ
+Pz
+bz
+aG
+Lx
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+lo
+ag
+ac
+ab
+ab
+aM
+"}
+(92,1,1) = {"
+aM
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+hD
+hD
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+yh
+ad
+ad
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+WQ
+ab
+aI
+aI
+aI
+aI
+bz
+FR
+yP
+yP
+OK
+OK
+OK
+OK
+bz
+aG
+uk
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XX
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ac
+ab
+ab
+ab
+aM
+"}
+(93,1,1) = {"
+aM
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ac
+WQ
+ac
+ac
+ac
+ac
+ab
+ab
+aI
+aI
+aN
+aI
+bz
+uu
+dF
+dF
+fi
+OK
+uP
+OK
+bz
+aG
+Lx
+Lx
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ag
+lo
+ag
+ac
+ac
+ab
+ab
+aM
+"}
+(94,1,1) = {"
+aM
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+yh
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+zE
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+aI
+aI
+aI
+aI
+he
+dF
+dF
+dF
+Ee
+BW
+wY
+rP
+bz
+aI
+aI
+Lx
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+aM
+"}
+(95,1,1) = {"
+aM
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aJ
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ah
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+aJ
+ab
+ab
+aI
+aI
+aI
+aI
+he
+Aa
+dF
+yP
+JI
+JI
+JI
+Ev
+he
+he
+he
+Lx
+yl
+aI
+FK
+FK
+FK
+FK
+FK
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ab
+ab
+aM
+"}
+(96,1,1) = {"
+aM
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aJ
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ac
+aJ
+aJ
+aD
+ab
+aI
+aI
+aI
+aI
+he
+dF
+dF
+dF
+yP
+dF
+AV
+hN
+QZ
+zV
+he
+Lx
+yl
+FK
+FK
+Kj
+cE
+Db
+FK
+FK
+aI
+aI
+aI
+aI
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+aI
+aI
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+aM
+"}
+(97,1,1) = {"
+aM
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aJ
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+yh
+ad
+yh
+ad
+ad
+ad
+yh
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+aJ
+aD
+aD
+aI
+aI
+aN
+aI
+aI
+bz
+BS
+aP
+kL
+yP
+dF
+dF
+Gn
+WC
+yP
+bz
+Lx
+aI
+FK
+Fb
+Ip
+Ip
+Ip
+jT
+FK
+aI
+aI
+aI
+Dk
+Dk
+Uu
+Bj
+OJ
+Dk
+BC
+OJ
+BC
+em
+Rt
+Dk
+Dk
+aI
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+Ro
+ac
+ac
+ab
+ab
+ab
+ab
+aM
+"}
+(98,1,1) = {"
+aM
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ac
+aJ
+aJ
+ab
+ad
+ab
+ad
+ad
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+aD
+aD
+aI
+aI
+aN
+aI
+aI
+aI
+bz
+Ze
+Gz
+qB
+dF
+dF
+dF
+QZ
+hN
+yP
+bz
+Lx
+aI
+FK
+SJ
+Vi
+Di
+Ip
+Eh
+FK
+aI
+aI
+aI
+Dk
+Uw
+oP
+oP
+BC
+em
+oP
+lk
+oP
+em
+lk
+aV
+Dk
+aI
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(99,1,1) = {"
+aM
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+wF
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+aN
+aI
+he
+ro
+AF
+BS
+BS
+aP
+Nt
+UN
+hN
+An
+he
+Lx
+aI
+FK
+Dg
+Ip
+Rg
+Ip
+rc
+FK
+aI
+LY
+zh
+rX
+Hd
+Hd
+qm
+Ca
+em
+lk
+oP
+oP
+sQ
+lk
+gV
+Dk
+aI
+ab
+ab
+ab
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(100,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+hD
+hD
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+he
+he
+bz
+bz
+he
+bz
+bz
+he
+wx
+he
+he
+Lx
+aI
+FK
+Gr
+Ip
+SP
+Ip
+mZ
+FK
+aI
+XS
+ol
+Dk
+oP
+lk
+Qz
+wC
+Dk
+oP
+oP
+oP
+em
+lk
+lk
+Dk
+aI
+aI
+ab
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+aM
+"}
+(101,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ag
+ag
+ag
+ag
+ag
+ac
+ac
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+aF
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aI
+aI
+Lx
+yl
+FK
+Mc
+rU
+tk
+pg
+qI
+FK
+aI
+XS
+aI
+Dk
+Dk
+Dk
+cD
+Dk
+Dk
+DF
+vi
+lk
+em
+px
+lk
+Dk
+aI
+aI
+aI
+ab
+ab
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+Ro
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(102,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+iw
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ag
+ac
+ag
+lY
+ag
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+yh
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aG
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aI
+aI
+Lx
+aI
+FK
+FK
+FK
+tT
+FK
+FK
+FK
+aI
+XS
+aI
+Dk
+IS
+lk
+zv
+lk
+oP
+oP
+Ca
+oP
+Dk
+Dk
+Dk
+Dk
+aI
+aN
+aI
+aI
+ab
+ad
+ad
+af
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+Ro
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(103,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ag
+ag
+ag
+ac
+wF
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+Mk
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aG
+aI
+aI
+aN
+aI
+aI
+aI
+do
+do
+aL
+do
+do
+aI
+XS
+aI
+aI
+uk
+aI
+aI
+aG
+lb
+XS
+aI
+aI
+aI
+aI
+XS
+aI
+Dk
+lp
+Hd
+wr
+lk
+oP
+lk
+jS
+oP
+ZZ
+lk
+lk
+Dk
+aI
+aI
+aI
+aI
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+ac
+GT
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(104,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+iw
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+wF
+ac
+ac
+ag
+ag
+ag
+ag
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+yh
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+do
+do
+tn
+mr
+qc
+do
+nc
+XS
+aI
+aI
+Lx
+aG
+yl
+aI
+aG
+XS
+aI
+aI
+aI
+aI
+XS
+aI
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+hQ
+oP
+oP
+ZZ
+Qf
+lk
+Dk
+aI
+aI
+aI
+aI
+ab
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+TE
+ae
+ae
+ac
+ac
+GT
+GT
+GT
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(105,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ni
+ag
+ag
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aG
+aI
+aI
+aI
+aI
+do
+do
+Ds
+cA
+uI
+tX
+Pb
+zh
+vU
+zh
+LJ
+Lx
+aG
+aG
+aG
+aG
+XS
+aI
+aI
+aI
+aI
+XS
+aI
+Dk
+by
+lk
+lk
+lk
+em
+oP
+oP
+lk
+sQ
+lk
+gV
+Dk
+aI
+aI
+aI
+aG
+aI
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+qF
+ae
+ac
+ac
+GT
+GT
+GT
+GT
+GT
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(106,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ag
+ac
+ab
+ac
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aj
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+do
+YQ
+mr
+mr
+mr
+tj
+do
+aI
+aI
+aI
+XS
+Lx
+Lx
+Lx
+Lx
+Lx
+GY
+zh
+zh
+zh
+zh
+jK
+aI
+Dk
+bY
+aV
+lk
+lk
+Ge
+oP
+oP
+oP
+ZZ
+lk
+lk
+Dk
+aI
+aI
+aG
+yl
+yl
+hD
+pk
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+GT
+GT
+GT
+ac
+GT
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(107,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+iw
+ag
+ag
+iw
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ag
+ag
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aL
+jp
+mr
+mr
+yg
+do
+do
+aI
+aI
+aN
+XS
+tQ
+tQ
+Lx
+tQ
+tQ
+XS
+aG
+aI
+aI
+aI
+XS
+aI
+Dk
+Dk
+lk
+px
+lk
+em
+Hh
+dm
+BC
+ZZ
+px
+Dk
+Dk
+aI
+aG
+aG
+yl
+yl
+hD
+aj
+aj
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ae
+ac
+ac
+GT
+Qd
+ac
+GT
+GT
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(108,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ag
+ag
+ag
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ni
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aL
+Vy
+mr
+Rm
+yb
+aL
+aI
+aI
+aI
+LY
+vU
+zh
+zh
+zh
+zh
+zh
+Dm
+aI
+aI
+aN
+aI
+XS
+aI
+aI
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+Dk
+aI
+aI
+aG
+yl
+yl
+yl
+aj
+aj
+ad
+ad
+bf
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+GT
+GT
+GT
+GT
+GT
+GT
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(109,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+hD
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+do
+IM
+mr
+mr
+WO
+aL
+aI
+aI
+aI
+XS
+zk
+aG
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aI
+aI
+yl
+yl
+yl
+aI
+aI
+aI
+yl
+aG
+aI
+yl
+aI
+aI
+aI
+aI
+yl
+yl
+aG
+ad
+aj
+ad
+bf
+bf
+bh
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+GT
+ac
+GT
+GT
+GT
+Ro
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(110,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+aj
+aj
+ad
+af
+ad
+ad
+ad
+ad
+ad
+hD
+aj
+aj
+aj
+hD
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aF
+aF
+aG
+aI
+aI
+aI
+aI
+do
+yi
+mr
+mr
+mJ
+aL
+aI
+aN
+aI
+XS
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aN
+aI
+aI
+aG
+yl
+aG
+yl
+yl
+yl
+yl
+aG
+aI
+aI
+aI
+aI
+pG
+yl
+aI
+aG
+aj
+ad
+bf
+bf
+bf
+aJ
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+GT
+GT
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(111,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+iw
+ac
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+ad
+aj
+hD
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aj
+aF
+aF
+aG
+aF
+aI
+XX
+aI
+aL
+qu
+mr
+aR
+WO
+aL
+aI
+aI
+aI
+XS
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+fT
+zh
+zh
+LJ
+Lx
+Lx
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aG
+ad
+ad
+bf
+bf
+hD
+aJ
+aJ
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(112,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+hD
+hD
+ad
+af
+ad
+ad
+aj
+aF
+aF
+aF
+aF
+aF
+aF
+aI
+aI
+aI
+aL
+kC
+mr
+Ww
+Rj
+do
+do
+aI
+aI
+XS
+aI
+aI
+wm
+mb
+mb
+wm
+mb
+mb
+wm
+aI
+aI
+aI
+aI
+aG
+XS
+tO
+Lx
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ad
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+Ro
+ac
+ac
+ac
+ac
+ac
+GT
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(113,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+wF
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aF
+aF
+aF
+aF
+aG
+aI
+aI
+do
+YQ
+mr
+aR
+mr
+oy
+do
+aI
+aI
+XS
+aG
+wm
+wm
+nd
+nd
+Ic
+nd
+nd
+wm
+wm
+aI
+aI
+de
+de
+hE
+de
+BD
+de
+Tg
+de
+de
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+ad
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+GT
+ac
+ac
+ab
+ab
+ab
+ab
+aM
+"}
+(114,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+ad
+ad
+ad
+aG
+aI
+aG
+aI
+aI
+aG
+aG
+aI
+aI
+do
+do
+Ds
+aR
+mr
+aR
+wG
+Lx
+Lx
+XS
+aI
+mb
+Jf
+np
+np
+np
+np
+np
+ef
+mb
+aI
+aI
+de
+mW
+uN
+WS
+lj
+lj
+lj
+bD
+de
+aI
+aI
+aI
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+ad
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+GT
+ac
+ac
+ab
+ab
+ab
+ab
+aM
+"}
+(115,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ag
+ag
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+yh
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+ad
+pk
+ad
+yl
+aI
+yl
+yl
+yl
+yl
+aI
+aI
+aI
+aI
+do
+do
+YA
+mr
+qZ
+do
+nc
+aG
+XS
+aI
+wm
+rC
+si
+si
+hI
+np
+np
+Wp
+mb
+aI
+aI
+Tg
+lj
+uN
+vx
+lj
+lj
+lj
+sZ
+Tg
+aI
+aI
+aI
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+GT
+Ro
+ac
+ab
+ab
+ab
+ab
+aM
+"}
+(116,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+wF
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+aj
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+aj
+aI
+aI
+aG
+aG
+aI
+aG
+aG
+Lx
+Lx
+aI
+aI
+do
+do
+aL
+do
+do
+aI
+aI
+GY
+zh
+th
+xz
+si
+RY
+si
+si
+np
+cY
+wm
+aI
+aI
+de
+Cl
+rz
+wR
+wR
+wL
+ow
+De
+de
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+Ro
+ac
+ac
+ab
+ab
+ab
+ab
+aM
+"}
+(117,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+wF
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+ad
+ad
+ad
+aj
+aF
+aF
+aF
+aF
+aF
+aF
+aG
+aI
+Lx
+Lx
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aI
+wm
+VT
+si
+yX
+RY
+np
+np
+HL
+mb
+aI
+aI
+Tg
+lj
+lj
+lj
+lj
+vx
+lj
+uN
+Tg
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(118,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+hD
+hD
+hD
+ad
+aF
+aF
+aF
+aF
+aF
+aF
+aI
+aI
+aI
+Lx
+Lx
+Lx
+Lx
+Lx
+aI
+aI
+aI
+aG
+XS
+aI
+mb
+Ck
+np
+np
+np
+np
+np
+Pp
+mb
+aI
+aI
+de
+wQ
+VD
+Bi
+Kh
+Vr
+cT
+kS
+de
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(119,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aj
+aF
+aF
+aG
+aF
+aI
+XX
+aI
+aI
+aG
+zk
+aG
+Lx
+Lx
+Lx
+Lx
+Lx
+XS
+aI
+wm
+wm
+nd
+nd
+Lk
+nd
+nd
+wm
+wm
+aI
+aI
+de
+de
+de
+de
+de
+de
+de
+de
+de
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+GT
+GT
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(120,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+iw
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aj
+aF
+aF
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aG
+aI
+aI
+aI
+aI
+aI
+aG
+XS
+aI
+aI
+wm
+mb
+mb
+wm
+mb
+mb
+wm
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+GT
+GT
+GT
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(121,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+iw
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+wF
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+Qm
+ac
+ac
+Qm
+ac
+GT
+GT
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+GT
+GT
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(122,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aj
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+fT
+LJ
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XX
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ac
+ag
+ag
+ac
+ac
+ac
+GT
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+GT
+GT
+GT
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(123,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+iw
+ac
+ac
+ab
+ac
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+wF
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+XS
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ag
+pV
+ag
+ac
+ac
+ac
+GT
+ae
+TE
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(124,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+yh
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+XS
+aI
+aO
+aO
+aO
+aO
+aO
+aO
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+Qm
+ac
+ac
+ag
+ag
+ag
+ac
+ac
+ac
+GT
+GT
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(125,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+aF
+aF
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+Ao
+cj
+aO
+aQ
+aU
+QB
+vG
+aO
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ag
+ac
+ac
+ac
+ac
+ac
+GT
+GT
+ae
+ae
+ab
+ab
+ab
+ab
+ac
+Qm
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(126,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+iw
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aI
+aI
+aG
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+Kk
+Kt
+US
+zh
+NS
+gm
+CM
+QA
+uQ
+aO
+aI
+aI
+aI
+XX
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+GT
+GT
+xa
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+Qm
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(127,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+aF
+aG
+aG
+aG
+aG
+aG
+aG
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aG
+aI
+aO
+qK
+dQ
+pO
+rB
+aO
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+GT
+GT
+ae
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(128,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+yh
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+aF
+ab
+ab
+ab
+ab
+ab
+aG
+aG
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aO
+aO
+aO
+aO
+aO
+aO
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(129,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ac
+wF
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ae
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aG
+aG
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(130,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ab
+ac
+ab
+ac
+ac
+ac
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+wF
+ag
+ag
+ae
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+yh
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aG
+aG
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aN
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+Qm
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(131,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ag
+ag
+ag
+ag
+ni
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(132,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+iw
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+wF
+ag
+ag
+ag
+ag
+lY
+ag
+ag
+ae
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ae
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ac
+Qm
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(133,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+ac
+ag
+ac
+ac
+ag
+ag
+ae
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+ac
+ac
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+Qm
+ac
+ac
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+Qm
+ac
+Qm
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(134,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+ac
+wF
+ag
+ag
+ae
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+af
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+aI
+ab
+ab
+ab
+ab
+ae
+ac
+ac
+ac
+ac
+Qm
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ab
+ac
+Qm
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(135,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+TE
+ae
+ac
+ab
+ab
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+yh
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aI
+aI
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+Qm
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+Qm
+ac
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(136,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ad
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ac
+ac
+ac
+ac
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ac
+ac
+ac
+ac
+ac
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(137,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ae
+ae
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ac
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(138,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(139,1,1) = {"
+aM
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+ab
+aM
+"}
+(140,1,1) = {"
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+aM
+"}
diff --git a/maps/offmap_vr/talon/talon_v2.dmm b/maps/offmap_vr/talon/talon_v2.dmm
index 46109a063c..5a95a81819 100644
--- a/maps/offmap_vr/talon/talon_v2.dmm
+++ b/maps/offmap_vr/talon/talon_v2.dmm
@@ -1894,7 +1894,14 @@
/area/talon_v2/engineering/star_store)
"fd" = (
/obj/structure/table/rack/shelf/steel,
-/obj/item/clothing/shoes/magboots,
+/obj/item/clothing/head/beret/talon,
+/obj/item/clothing/head/beret/talon,
+/obj/item/clothing/head/beret/talon,
+/obj/item/clothing/head/beret/talon,
+/obj/item/clothing/suit/storage/hooded/wintercoat/talon,
+/obj/item/clothing/suit/storage/hooded/wintercoat/talon,
+/obj/item/clothing/suit/storage/hooded/wintercoat/talon,
+/obj/item/clothing/suit/storage/hooded/wintercoat/talon,
/turf/simulated/floor/tiled/techfloor,
/area/talon_v2/secure_storage)
"ff" = (
@@ -5937,6 +5944,15 @@
/obj/structure/lattice,
/turf/space,
/area/space)
+"tn" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/machinery/recharger/wallcharger{
+ pixel_x = 5;
+ pixel_y = 24
+ },
+/obj/item/weapon/storage/backpack/dufflebag/talon,
+/turf/simulated/floor/tiled/techfloor,
+/area/talon_v2/armory)
"to" = (
/obj/machinery/light{
dir = 4
@@ -10567,6 +10583,13 @@
},
/turf/simulated/floor/tiled/techmaint,
/area/talon_v2/central_hallway/fore)
+"IX" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/item/clothing/shoes/magboots,
+/obj/item/clothing/shoes/magboots,
+/obj/item/clothing/shoes/magboots,
+/turf/simulated/floor/tiled/techfloor,
+/area/talon_v2/secure_storage)
"IY" = (
/obj/structure/cable/green{
d1 = 1;
@@ -14442,6 +14465,17 @@
"WJ" = (
/turf/simulated/wall/shull,
/area/talon_v2/crew_quarters/eng_room)
+"WK" = (
+/obj/structure/table/woodentable,
+/obj/item/clothing/accessory/talon{
+ pixel_x = 4;
+ pixel_y = 7
+ },
+/obj/item/clothing/head/caphat/talon{
+ pixel_x = -5
+ },
+/turf/simulated/floor/wood,
+/area/talon_v2/crew_quarters/cap_room)
"WM" = (
/obj/machinery/atmospherics/unary/engine/bigger{
dir = 1
@@ -23051,7 +23085,7 @@ Dd
ZF
KC
Oj
-Pm
+tn
nK
gg
SX
@@ -23188,7 +23222,7 @@ AR
XG
zv
XG
-ln
+IX
Dd
lW
KC
@@ -24156,7 +24190,7 @@ NV
oC
oC
NV
-gm
+WK
gm
Nq
Ht
diff --git a/maps/southern_cross/loadout/loadout_vr.dm b/maps/southern_cross/loadout/loadout_vr.dm
index b11f89eadb..613095be30 100644
--- a/maps/southern_cross/loadout/loadout_vr.dm
+++ b/maps/southern_cross/loadout/loadout_vr.dm
@@ -7,3 +7,8 @@
display_name = "helmet, colored pilot (Pilot)"
path = /obj/item/clothing/head/pilot_vr/alt
allowed_roles = list("Pilot")
+
+/datum/gear/head/pilot/talon
+ display_name = "helmet, ITV pilot (Pilot)"
+ path = /obj/item/clothing/head/pilot_vr/talon
+ allowed_roles = list("Pilot")
\ No newline at end of file
diff --git a/maps/submaps/admin_use_vr/ert.dmm b/maps/submaps/admin_use_vr/ert.dmm
index 1fee5ae579..2e1eb62ece 100644
--- a/maps/submaps/admin_use_vr/ert.dmm
+++ b/maps/submaps/admin_use_vr/ert.dmm
@@ -7,6 +7,10 @@
/obj/machinery/power/pointdefense{
id_tag = "vonbraun_pd"
},
+/obj/structure/cable/yellow{
+ d2 = 2;
+ icon_state = "0-2"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/barracks)
"ac" = (
@@ -37,6 +41,10 @@
/obj/machinery/power/pointdefense{
id_tag = "vonbraun_pd"
},
+/obj/structure/cable/yellow{
+ d2 = 2;
+ icon_state = "0-2"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/mech_bay)
"ah" = (
@@ -85,6 +93,11 @@
},
/obj/effect/floor_decal/industrial/outline/grey,
/obj/structure/dispenser/oxygen,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/barracks)
"ao" = (
@@ -157,6 +170,11 @@
/area/ship/ert/commander)
"av" = (
/obj/machinery/atmospherics/unary/vent_scrubber/on,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/gunnery)
"ax" = (
@@ -169,6 +187,10 @@
/obj/machinery/power/pointdefense{
id_tag = "vonbraun_pd"
},
+/obj/structure/cable/yellow{
+ d2 = 8;
+ icon_state = "0-8"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/med_surg)
"aD" = (
@@ -232,6 +254,11 @@
/obj/machinery/power/pointdefense{
id_tag = "vonbraun_pd"
},
+/obj/structure/cable/yellow{
+ d2 = 4;
+ dir = 4;
+ icon_state = "0-4"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/eng_storage)
"bp" = (
@@ -295,6 +322,11 @@
},
/obj/effect/floor_decal/industrial/outline/grey,
/obj/structure/table/rack/steel,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/barracks)
"bJ" = (
@@ -317,6 +349,25 @@
/obj/machinery/light/no_nightshift,
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/atmos)
+"bS" = (
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/supply{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled/techmaint,
+/area/ship/ert/med)
"bU" = (
/obj/structure/hull_corner/long_horiz{
dir = 5
@@ -329,6 +380,20 @@
},
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/atmos)
+"ca" = (
+/obj/machinery/sleeper{
+ dir = 4
+ },
+/obj/machinery/light/no_nightshift{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/white,
+/area/ship/ert/med_surg)
"ch" = (
/obj/machinery/door/airlock/glass_external,
/obj/effect/map_helper/airlock/door/int_door,
@@ -713,6 +778,11 @@
pixel_y = 26
},
/obj/effect/floor_decal/industrial/outline/grey,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/barracks)
"eg" = (
@@ -792,6 +862,25 @@
/obj/effect/floor_decal/industrial/warning,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/teleporter)
+"eG" = (
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/supply{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/turf/simulated/floor/tiled/techmaint,
+/area/ship/ert/barracks)
"eH" = (
/obj/structure/sign/department/cargo{
name = "ENGINEERING SUPPLIES"
@@ -888,6 +977,38 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/dock_star)
+"fp" = (
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/turf/simulated/floor/tiled/techmaint,
+/area/ship/ert/barracks)
+"fr" = (
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/supply{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled/techmaint,
+/area/ship/ert/eng_storage)
"fx" = (
/obj/structure/table/steel_reinforced,
/obj/machinery/light/no_nightshift{
@@ -911,6 +1032,11 @@
/obj/item/rig_module/rescue_pharm{
pixel_y = -2
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/mech_bay)
"fE" = (
@@ -1065,6 +1191,20 @@
/obj/effect/floor_decal/industrial/outline/blue,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/eng_storage)
+"gl" = (
+/obj/machinery/atmospherics/pipe/simple/hidden/supply{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techmaint,
+/area/ship/ert/barracks)
"gn" = (
/obj/machinery/light/no_nightshift,
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
@@ -1076,6 +1216,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/atmos)
+"go" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/eng_storage)
"gx" = (
/obj/structure/table/rack/steel,
/obj/item/weapon/melee/baton{
@@ -1188,6 +1336,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/ert/med_surg)
"ha" = (
@@ -1234,6 +1387,11 @@
/obj/machinery/light/no_nightshift{
dir = 8
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/ert/med_surg)
"hx" = (
@@ -1350,6 +1508,14 @@
"ib" = (
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/hangar)
+"if" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/gunnery)
"ij" = (
/turf/simulated/floor/tiled/white,
/area/ship/ert/med_surg)
@@ -1365,6 +1531,17 @@
"ip" = (
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/barracks)
+"iu" = (
+/obj/machinery/power/pointdefense{
+ id_tag = "vonbraun_pd"
+ },
+/obj/structure/cable/yellow{
+ d2 = 4;
+ dir = 4;
+ icon_state = "0-4"
+ },
+/turf/simulated/floor/reinforced/airless,
+/area/ship/ert/hallways_aft)
"ix" = (
/obj/machinery/door/firedoor/border_only,
/obj/machinery/door/airlock/glass{
@@ -1411,6 +1588,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 6
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/barracks)
"iR" = (
@@ -1426,6 +1608,16 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 10
},
+/obj/structure/cable/yellow{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/ert/med_surg)
"iX" = (
@@ -1532,6 +1724,14 @@
/obj/effect/floor_decal/industrial/outline/grey,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/armoury_st)
+"kg" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/hallways_aft)
"kh" = (
/obj/machinery/light/no_nightshift{
dir = 8
@@ -1540,8 +1740,24 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 5
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/hallways_aft)
+"kl" = (
+/obj/effect/landmark{
+ name = "Commando"
+ },
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/ert/barracks)
"km" = (
/obj/effect/floor_decal/corner/white{
dir = 4
@@ -1571,6 +1787,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/med)
+"ky" = (
+/obj/structure/cable/yellow{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/turf/simulated/wall/shull,
+/area/ship/ert/med_surg)
"kz" = (
/obj/structure/closet/crate{
dir = 1
@@ -1834,6 +2058,11 @@
/obj/effect/landmark{
name = "Commando"
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/barracks)
"mq" = (
@@ -1843,10 +2072,20 @@
/obj/effect/landmark{
name = "Commando"
},
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/barracks)
"mr" = (
/obj/structure/reagent_dispensers/water_cooler/full,
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/barracks)
"mt" = (
@@ -1881,6 +2120,11 @@
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
+/obj/structure/cable/yellow{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/barracks)
"mF" = (
@@ -1945,6 +2189,22 @@
},
/turf/simulated/floor/tiled/white,
/area/ship/ert/med_surg)
+"mO" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/ert/med)
+"mP" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/white,
+/area/ship/ert/med_surg)
"mR" = (
/obj/structure/cable/yellow{
d1 = 4;
@@ -2094,14 +2354,13 @@
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/mech_bay)
"nq" = (
-/obj/machinery/atmospherics/pipe/simple/hidden/supply{
- dir = 4
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
},
-/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
- dir = 4
- },
-/turf/simulated/floor/tiled/white,
-/area/ship/ert/med_surg)
+/turf/simulated/wall/rshull,
+/area/ship/ert/barracks)
"nr" = (
/obj/machinery/porta_turret/stationary/CIWS,
/turf/simulated/floor/reinforced/airless,
@@ -2165,6 +2424,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 9
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/gunnery)
"nC" = (
@@ -2190,6 +2454,11 @@
/obj/effect/floor_decal/industrial/warning{
dir = 1
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/reinforced,
/area/ship/ert/hallways_aft)
"oa" = (
@@ -2233,6 +2502,11 @@
/obj/machinery/alarm/alarms_hidden{
pixel_y = 26
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"op" = (
@@ -2277,6 +2551,11 @@
d2 = 4;
icon_state = "2-4"
},
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/eng_storage)
"oQ" = (
@@ -2759,6 +3038,14 @@
/obj/item/weapon/tool/crowbar,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/mech_bay)
+"qa" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/shull,
+/area/ship/ert/med_surg)
"ql" = (
/obj/structure/cable/yellow{
d1 = 1;
@@ -2791,6 +3078,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 9
},
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/gunnery)
"qz" = (
@@ -2882,12 +3174,28 @@
d2 = 8;
icon_state = "1-8"
},
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/gunnery)
"qR" = (
/obj/machinery/recharge_station,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/atmos)
+"rn" = (
+/obj/machinery/atmospherics/unary/vent_scrubber/on{
+ dir = 1
+ },
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/white,
+/area/ship/ert/med_surg)
"rp" = (
/obj/structure/disposaloutlet,
/obj/structure/disposalpipe/trunk{
@@ -2937,19 +3245,51 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
+"rB" = (
+/obj/structure/ship_munition/disperser_charge/emp,
+/obj/effect/floor_decal/industrial/warning,
+/obj/structure/railing,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/reinforced,
+/area/ship/ert/gunnery)
"rD" = (
/obj/machinery/atmospherics/pipe/simple/hidden/fuel{
dir = 10
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"rM" = (
/obj/machinery/atmospherics/pipe/tank/air,
/turf/simulated/floor/airless,
/area/ship/ert/gunnery)
+"rN" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/ert/gunnery)
"rO" = (
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/gunnery)
+"rP" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/med_surg)
"rR" = (
/obj/machinery/atmospherics/pipe/tank/phoron{
dir = 8
@@ -3168,6 +3508,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 5
},
+/obj/structure/cable/yellow{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/eng_storage)
"sX" = (
@@ -3235,6 +3580,11 @@
"tK" = (
/obj/machinery/atmospherics/unary/vent_pump/on,
/obj/machinery/door/window/brigdoor/northleft,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/hallways_aft)
"tL" = (
@@ -3287,6 +3637,15 @@
/obj/effect/floor_decal/industrial/warning,
/turf/simulated/floor/airless,
/area/ship/ert/gunnery)
+"uf" = (
+/obj/structure/sign/nosmoking_1,
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/engine)
"ug" = (
/obj/item/device/healthanalyzer/advanced{
pixel_x = 2;
@@ -3357,6 +3716,11 @@
"ux" = (
/obj/machinery/atmospherics/pipe/simple/hidden/fuel,
/obj/machinery/atmospherics/unary/vent_scrubber/on,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"uE" = (
@@ -3405,6 +3769,11 @@
d2 = 4;
icon_state = "1-4"
},
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"vb" = (
@@ -3480,6 +3849,14 @@
},
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/hallways_aft)
+"vw" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/shull,
+/area/ship/ert/barracks)
"vK" = (
/turf/simulated/wall/rshull,
/area/ship/ert/gunnery)
@@ -3560,6 +3937,10 @@
/obj/machinery/power/pointdefense{
id_tag = "vonbraun_pd"
},
+/obj/structure/cable/yellow{
+ d2 = 2;
+ icon_state = "0-2"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/hallways_aft)
"wt" = (
@@ -3582,6 +3963,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/med)
+"wC" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/turf/simulated/floor/tiled/white,
+/area/ship/ert/med_surg)
"wG" = (
/obj/structure/hull_corner/long_horiz{
dir = 5
@@ -3615,6 +4004,23 @@
/obj/machinery/oxygen_pump/anesthetic,
/turf/simulated/wall/shull,
/area/ship/ert/med_surg)
+"xc" = (
+/obj/machinery/atmospherics/pipe/simple/hidden/supply{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 4
+ },
+/obj/effect/landmark{
+ name = "Commando"
+ },
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techmaint,
+/area/ship/ert/barracks)
"xe" = (
/obj/structure/cable/yellow{
d1 = 4;
@@ -3842,6 +4248,16 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/eng_storage)
+"xD" = (
+/obj/effect/landmark/late_antag/ert,
+/obj/structure/table/bench/steel,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/ert/barracks)
"xG" = (
/obj/machinery/portable_atmospherics/canister/air,
/obj/machinery/alarm/alarms_hidden{
@@ -3893,6 +4309,11 @@
"ya" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/hallways_aft)
"yf" = (
@@ -3947,6 +4368,11 @@
"yl" = (
/obj/structure/ship_munition/disperser_charge/emp,
/obj/effect/floor_decal/industrial/warning,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/reinforced,
/area/ship/ert/hallways_aft)
"yo" = (
@@ -4036,6 +4462,11 @@
/obj/machinery/chemical_dispenser/biochemistry/full,
/obj/machinery/light/no_nightshift,
/obj/item/weapon/reagent_containers/glass/beaker/large,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/med)
"yR" = (
@@ -4088,6 +4519,11 @@
/obj/machinery/firealarm/alarms_hidden{
pixel_y = 26
},
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/ert/med_surg)
"zc" = (
@@ -4118,6 +4554,11 @@
},
/obj/machinery/atmospherics/pipe/simple/hidden/fuel,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"zo" = (
@@ -4297,6 +4738,19 @@
},
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/armoury_dl)
+"Az" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/obj/structure/cable/yellow{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/engine)
"AI" = (
/obj/machinery/power/thermoregulator,
/obj/effect/floor_decal/industrial/outline,
@@ -4316,6 +4770,22 @@
/obj/item/modular_computer/console/preset/medical,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/bridge)
+"AW" = (
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/engine)
+"AX" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techmaint,
+/area/ship/ert/barracks)
"AZ" = (
/obj/machinery/alarm/alarms_hidden{
pixel_y = 26
@@ -4599,6 +5069,11 @@
"CN" = (
/obj/machinery/atmospherics/pipe/simple/hidden/fuel,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"CP" = (
@@ -4627,6 +5102,11 @@
dir = 8
},
/obj/machinery/atmospherics/pipe/simple/hidden/fuel,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"Dd" = (
@@ -4809,6 +5289,11 @@
/obj/structure/sign/warning/engineering_access{
pixel_x = -32
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/hallways_aft)
"Ee" = (
@@ -4983,6 +5468,14 @@
/obj/effect/shuttle_landmark/premade/ert_ship_port,
/turf/space,
/area/space)
+"FG" = (
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/wall/shull,
+/area/ship/ert/med_surg)
"FJ" = (
/obj/machinery/door/airlock/glass_command{
req_one_access = list(103)
@@ -5003,6 +5496,14 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/hallways)
+"FL" = (
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/gunnery)
"FM" = (
/obj/effect/floor_decal/corner/yellow{
dir = 10
@@ -5260,11 +5761,24 @@
/obj/effect/floor_decal/industrial/outline/yellow,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/eng_storage)
+"Gu" = (
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/med_surg)
"Gv" = (
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 1
},
/obj/machinery/door/window/brigdoor/southleft,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/hallways_aft)
"Gw" = (
@@ -5527,6 +6041,11 @@
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"Ii" = (
@@ -5852,6 +6371,11 @@
dir = 10
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"JZ" = (
@@ -5884,6 +6408,16 @@
},
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/teleporter)
+"Kj" = (
+/obj/machinery/power/pointdefense{
+ id_tag = "vonbraun_pd"
+ },
+/obj/structure/cable/yellow{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/turf/simulated/floor/reinforced/airless,
+/area/ship/ert/engine)
"Kk" = (
/obj/effect/landmark/late_antag/ert,
/obj/structure/table/bench/steel,
@@ -6008,12 +6542,43 @@
/obj/structure/table/steel_reinforced,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/bridge)
+"KK" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/engine)
"KM" = (
/obj/structure/bed/chair/bay/chair/padded/blue{
dir = 4
},
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/bridge)
+"KN" = (
+/obj/structure/closet/wardrobe/ert,
+/obj/item/modular_computer/tablet/preset/custom_loadout/elite,
+/obj/item/weapon/storage/box/survival/comp{
+ starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi)
+ },
+/obj/machinery/light/no_nightshift{
+ dir = 1
+ },
+/obj/effect/floor_decal/industrial/outline/grey,
+/obj/item/modular_computer/laptop/preset/custom_loadout/elite,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/ert/barracks)
"KO" = (
/obj/machinery/vending/tool,
/obj/machinery/light/no_nightshift{
@@ -6186,6 +6751,11 @@
d2 = 8;
icon_state = "2-8"
},
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/ert/med_surg)
"LC" = (
@@ -6227,6 +6797,14 @@
},
/turf/simulated/floor/tiled/white,
/area/ship/ert/med_surg)
+"LM" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/med)
"LR" = (
/obj/machinery/door/airlock/external,
/obj/effect/map_helper/airlock/door/ext_door,
@@ -6262,6 +6840,11 @@
/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{
dir = 1
},
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/ert/med_surg)
"Mb" = (
@@ -6481,12 +7064,21 @@
/obj/machinery/light/no_nightshift{
dir = 4
},
+/obj/structure/cable/yellow{
+ d2 = 4;
+ icon_state = "0-4"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/engine)
"Np" = (
/obj/machinery/light/no_nightshift{
dir = 8
},
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"Nq" = (
@@ -6527,6 +7119,21 @@
dir = 8
},
/obj/effect/catwalk_plated/dark,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/obj/structure/cable/yellow{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/plating,
/area/ship/ert/engine)
"NI" = (
@@ -6549,6 +7156,11 @@
dir = 4
},
/obj/machinery/atmospherics/binary/pump/fuel/on,
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"NR" = (
@@ -6631,6 +7243,11 @@
/obj/machinery/atmospherics/unary/vent_scrubber/on{
dir = 1
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"Og" = (
@@ -6649,6 +7266,11 @@
},
/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,
/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,
+/obj/structure/cable/yellow{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/hallways_aft)
"Oh" = (
@@ -6698,6 +7320,10 @@
/obj/machinery/power/pointdefense{
id_tag = "vonbraun_pd"
},
+/obj/structure/cable/yellow{
+ d2 = 2;
+ icon_state = "0-2"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/gunnery)
"On" = (
@@ -6711,6 +7337,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 6
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/hallways_aft)
"Ox" = (
@@ -6742,6 +7373,25 @@
/obj/effect/catwalk_plated,
/turf/simulated/floor/plating,
/area/ship/ert/bridge)
+"OA" = (
+/obj/machinery/atmospherics/pipe/simple/hidden/supply{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/structure/cable/yellow{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled/techmaint,
+/area/ship/ert/med)
"OE" = (
/obj/structure/cable/yellow{
d1 = 4;
@@ -7001,6 +7651,14 @@
},
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/atmos)
+"Px" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/shull,
+/area/ship/ert/mech_bay)
"Py" = (
/obj/machinery/light/no_nightshift{
dir = 1
@@ -7290,6 +7948,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 9
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"RO" = (
@@ -7486,6 +8149,11 @@
icon_state = "0-2"
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
+/obj/structure/cable/yellow{
+ d2 = 4;
+ dir = 4;
+ icon_state = "0-4"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/hallways_aft)
"SB" = (
@@ -7495,6 +8163,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/ert/med_surg)
"SD" = (
@@ -7623,6 +8296,11 @@
/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{
dir = 4
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"TB" = (
@@ -7637,6 +8315,14 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engineering)
+"TD" = (
+/obj/structure/cable/yellow{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/gunnery)
"TF" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
@@ -7669,6 +8355,11 @@
"TM" = (
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/hallways_aft)
"TR" = (
@@ -7695,6 +8386,14 @@
/obj/effect/floor_decal/industrial/warning,
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/teleporter)
+"Ue" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techmaint,
+/area/ship/ert/mech_bay)
"Ul" = (
/obj/machinery/firealarm/alarms_hidden{
dir = 1;
@@ -7758,6 +8457,24 @@
},
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/teleporter)
+"UK" = (
+/obj/machinery/power/pointdefense{
+ id_tag = "vonbraun_pd"
+ },
+/obj/structure/cable/yellow,
+/turf/simulated/floor/reinforced/airless,
+/area/ship/ert/engine)
+"UN" = (
+/obj/machinery/power/pointdefense{
+ id_tag = "vonbraun_pd"
+ },
+/obj/structure/cable/yellow{
+ d2 = 4;
+ dir = 4;
+ icon_state = "0-4"
+ },
+/turf/simulated/floor/reinforced/airless,
+/area/ship/ert/med_surg)
"UT" = (
/obj/machinery/door/airlock/glass_security{
req_one_access = list(103)
@@ -7823,6 +8540,17 @@
"Vq" = (
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/gunnery)
+"Vx" = (
+/obj/machinery/atmospherics/pipe/simple/hidden/fuel{
+ dir = 9
+ },
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/ert/engine)
"VC" = (
/obj/machinery/power/port_gen/pacman/super/potato,
/obj/structure/cable/green,
@@ -7830,6 +8558,14 @@
/obj/effect/decal/cleanable/greenglow,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engineering)
+"VH" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/mech_bay)
"VJ" = (
/obj/machinery/door/firedoor/multi_tile{
dir = 1
@@ -7927,6 +8663,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/med)
+"Wo" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/ert/barracks)
"Wq" = (
/obj/structure/cable/yellow{
d1 = 1;
@@ -7981,6 +8725,11 @@
/obj/machinery/power/pointdefense{
id_tag = "vonbraun_pd"
},
+/obj/structure/cable/yellow{
+ d2 = 4;
+ dir = 4;
+ icon_state = "0-4"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/med)
"WH" = (
@@ -8011,6 +8760,11 @@
"WO" = (
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/machinery/atmospherics/pipe/simple/hidden/fuel,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"WR" = (
@@ -8049,6 +8803,14 @@
},
/turf/simulated/floor/plating,
/area/ship/ert/barracks)
+"WZ" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/ert/engine)
"Xg" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/structure/bed/chair/bay/chair/padded/blue{
@@ -8092,6 +8854,16 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/teleporter)
+"Xz" = (
+/obj/machinery/shield_capacitor,
+/obj/effect/floor_decal/industrial/outline/blue,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/ert/eng_storage)
"XB" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/structure/cable/yellow{
@@ -8109,6 +8881,11 @@
dir = 1;
pixel_y = -26
},
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/engine)
"XM" = (
@@ -8119,6 +8896,14 @@
/obj/effect/floor_decal/industrial/warning,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/dock_star)
+"XN" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techmaint,
+/area/ship/ert/med)
"XS" = (
/obj/structure/cable/yellow{
d1 = 4;
@@ -8153,6 +8938,14 @@
"Ye" = (
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/barracks)
+"Yf" = (
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/shull,
+/area/ship/ert/eng_storage)
"Yk" = (
/obj/structure/cable/yellow{
d2 = 2;
@@ -8222,6 +9015,25 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/bridge)
+"YC" = (
+/obj/machinery/atmospherics/pipe/simple/hidden/supply{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/structure/cable/yellow{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/tiled/white,
+/area/ship/ert/med_surg)
"YN" = (
/obj/structure/sign/warning/radioactive{
desc = "WARNING: VON BRAUN PTTOS EMIT RADIATION WHILST OPERATIONAL.";
@@ -8309,6 +9121,11 @@
},
/obj/machinery/light/no_nightshift,
/obj/effect/floor_decal/industrial/outline,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/med)
"ZI" = (
@@ -8325,6 +9142,10 @@
/obj/machinery/power/pointdefense{
id_tag = "vonbraun_pd"
},
+/obj/structure/cable/yellow{
+ d2 = 2;
+ icon_state = "0-2"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/engine)
"ZM" = (
@@ -8349,6 +9170,11 @@
},
/obj/machinery/power/port_gen/pacman/mrs,
/obj/effect/floor_decal/industrial/outline/yellow,
+/obj/structure/cable/yellow{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/eng_storage)
"ZW" = (
@@ -13292,7 +14118,7 @@ Do
yz
yz
yz
-Hf
+AW
yz
yz
yz
@@ -13425,7 +14251,7 @@ yz
yz
yz
lZ
-ZL
+Kj
kL
yz
yz
@@ -13434,7 +14260,7 @@ Hf
nX
DN
JW
-Hf
+AW
nX
DN
JW
@@ -13443,7 +14269,7 @@ yz
yz
yz
lZ
-ZL
+Kj
lZ
yz
yz
@@ -13567,7 +14393,7 @@ yz
yz
yz
lZ
-Hf
+AW
Hf
nX
DN
@@ -13576,7 +14402,7 @@ Hf
uh
et
tL
-Hf
+AW
uh
et
tL
@@ -13585,7 +14411,7 @@ nX
DN
JW
Hf
-Hf
+AW
lZ
yz
yz
@@ -13709,7 +14535,7 @@ yz
yz
yz
Do
-Hf
+AW
Hf
uh
et
@@ -13718,7 +14544,7 @@ Hf
GI
rA
GI
-MK
+uf
GI
rA
GI
@@ -13727,7 +14553,7 @@ uh
et
tL
Hf
-Hf
+AW
Do
yz
yz
@@ -13851,7 +14677,7 @@ yz
yz
yz
aj
-Hf
+AW
Hf
GI
rA
@@ -13869,7 +14695,7 @@ GI
rA
GI
Hf
-Hf
+AW
Ia
yz
yz
@@ -13993,8 +14819,8 @@ yz
yz
yz
ZL
-Hf
-Hf
+Az
+WZ
ok
rD
ux
@@ -14008,11 +14834,11 @@ Tx
WO
CZ
Of
-RO
+Vx
XH
-Hf
-Hf
-ZL
+WZ
+KK
+UK
yz
yz
yz
@@ -15411,7 +16237,7 @@ yz
yz
yz
wr
-DS
+kg
yl
tK
Oq
@@ -15433,8 +16259,8 @@ ya
kh
Gv
nY
-DS
-wr
+kg
+iu
yz
yz
yz
@@ -17256,8 +18082,8 @@ yz
yz
yz
ab
-Zo
-Bo
+nq
+vw
ef
iO
mj
@@ -17278,9 +18104,9 @@ sS
Zv
xC
sW
-PS
-zc
-XG
+Xz
+Yf
+go
aV
yz
yz
@@ -17544,7 +18370,7 @@ Zo
Gw
Kk
OU
-pg
+kl
Kk
lv
ZM
@@ -17686,7 +18512,7 @@ yY
lv
Kk
OU
-pg
+kl
Kk
sz
ZM
@@ -17828,7 +18654,7 @@ yY
lv
Kk
OU
-pg
+kl
Kk
lv
ZM
@@ -18250,11 +19076,11 @@ yz
yz
yz
ab
-Zo
-Gw
-Kk
-OU
-mF
+nq
+KN
+xD
+xc
+fp
ip
ip
BW
@@ -18271,10 +19097,10 @@ BW
Br
Br
Br
-eI
-Zv
+fr
+SG
ZU
-XG
+go
aV
yz
yz
@@ -18817,12 +19643,12 @@ yz
yz
yz
ab
-Zo
+nq
an
-WH
-WH
-Jd
-mF
+Wo
+Wo
+gl
+fp
so
tH
LC
@@ -18839,11 +19665,11 @@ nb
ZT
Jc
QT
-sU
-Pq
-Pq
+bS
+mO
+mO
ZF
-ZT
+LM
WF
yz
yz
@@ -19527,12 +20353,12 @@ yz
yz
yz
ab
-Zo
+nq
bI
-WH
-WH
-ip
-mV
+Wo
+Wo
+AX
+eG
pd
tH
xt
@@ -19548,12 +20374,12 @@ On
JZ
ZT
Wl
-DJ
-QT
-Pq
-Pq
+OA
+XN
+mO
+mO
yJ
-ZT
+LM
WF
yz
yz
@@ -20664,11 +21490,11 @@ yz
yz
yz
ag
-bM
-Cx
+VH
+Px
fx
-jQ
-np
+Ue
+Is
pM
Cx
yj
@@ -20684,12 +21510,12 @@ WC
dk
dq
gf
-TF
-ij
+YC
+mP
hv
-dq
-MZ
-aC
+qa
+rP
+UN
yz
yz
yz
@@ -21252,7 +22078,7 @@ WC
Zx
nl
pb
-nq
+TF
ij
MC
dq
@@ -21536,7 +22362,7 @@ WC
Zx
nl
aQ
-nq
+TF
ij
aQ
dq
@@ -21678,7 +22504,7 @@ WC
Zx
nl
cO
-nq
+TF
ij
Mb
dq
@@ -21800,9 +22626,9 @@ yz
yz
yz
PO
-vK
-Cf
-rO
+TD
+rB
+rN
av
nB
FP
@@ -21820,7 +22646,7 @@ WC
Zx
nl
NJ
-nq
+TF
ij
NJ
dq
@@ -21942,7 +22768,7 @@ yz
yz
yz
nr
-vK
+FL
vK
gF
rO
@@ -22084,7 +22910,7 @@ yz
yz
yz
PO
-vK
+FL
vK
gW
TG
@@ -22104,7 +22930,7 @@ WC
aK
Sh
ij
-nq
+TF
ij
ij
dq
@@ -22226,7 +23052,7 @@ yz
yz
yz
PO
-vK
+FL
vK
hj
db
@@ -22368,7 +23194,7 @@ yz
yz
yz
Om
-vK
+if
rM
hk
eO
@@ -22389,11 +23215,11 @@ Ff
dq
vb
iW
-LJ
-vb
-dq
-MZ
-aC
+rn
+ca
+qa
+rP
+UN
yz
yz
yz
@@ -22529,8 +23355,8 @@ CH
CH
yX
MZ
-dq
-ij
+ky
+wC
ij
dq
MZ
@@ -22671,7 +23497,7 @@ za
za
ib
MZ
-dq
+FG
jv
ij
dq
@@ -22813,7 +23639,7 @@ yz
yz
yz
MZ
-MZ
+Gu
GY
GY
MZ
@@ -22955,7 +23781,7 @@ yz
yz
yz
MZ
-MZ
+Gu
MZ
MZ
MZ
@@ -23097,7 +23923,7 @@ yz
yz
yz
Cr
-MZ
+Gu
MZ
MZ
YO
@@ -23239,7 +24065,7 @@ yz
yz
yz
CR
-MZ
+Gu
MZ
YO
yz
@@ -23381,7 +24207,7 @@ yz
yz
yz
ci
-MZ
+Gu
YO
yz
yz
diff --git a/maps/submaps/admin_use_vr/fun.dm b/maps/submaps/admin_use_vr/fun.dm
index 7144ae50d9..3b786f93d6 100644
--- a/maps/submaps/admin_use_vr/fun.dm
+++ b/maps/submaps/admin_use_vr/fun.dm
@@ -17,6 +17,8 @@
power_equip = FALSE
power_environ = FALSE
power_light = FALSE
+ base_turf = /turf/simulated/mineral/floor/cave
+
/area/submap/admin_upload/pow
name = "\improper Unknown Area AU+P"
requires_power = 0
diff --git a/maps/submaps/admin_use_vr/kk_mercship.dmm b/maps/submaps/admin_use_vr/kk_mercship.dmm
index 9d1e9f2455..cc5db6e25d 100644
--- a/maps/submaps/admin_use_vr/kk_mercship.dmm
+++ b/maps/submaps/admin_use_vr/kk_mercship.dmm
@@ -599,6 +599,10 @@
/obj/machinery/power/pointdefense{
id_tag = "mercenary_pd"
},
+/obj/structure/cable/orange{
+ d2 = 2;
+ icon_state = "0-2"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/armoury_st)
"bI" = (
@@ -862,6 +866,10 @@
/obj/machinery/power/pointdefense{
id_tag = "mercenary_pd"
},
+/obj/structure/cable/orange{
+ d2 = 2;
+ icon_state = "0-2"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/med)
"cK" = (
@@ -881,6 +889,11 @@
/obj/structure/bed,
/obj/effect/floor_decal/rust,
/obj/effect/floor_decal/techfloor,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"cP" = (
@@ -952,6 +965,17 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/armoury_st)
+"cR" = (
+/obj/effect/floor_decal/techfloor/corner{
+ dir = 5
+ },
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/white,
+/area/ship/manta/med)
"cS" = (
/obj/structure/hull_corner/long_horiz{
dir = 6
@@ -978,6 +1002,11 @@
/obj/effect/floor_decal/techfloor/corner{
dir = 5
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/recreation)
"cY" = (
@@ -1086,6 +1115,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/bridge)
+"dy" = (
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/hallways_port)
"dC" = (
/obj/structure/cable/orange{
d1 = 2;
@@ -1122,8 +1159,27 @@
/obj/machinery/atmospherics/pipe/manifold/hidden/supply{
dir = 4
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/recreation)
+"dK" = (
+/obj/structure/toilet{
+ dir = 1
+ },
+/obj/effect/floor_decal/techfloor{
+ dir = 6
+ },
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled/dark,
+/area/ship/manta/holding)
"dM" = (
/obj/effect/floor_decal/techfloor{
dir = 8
@@ -1165,6 +1221,11 @@
},
/obj/machinery/door/firedoor/border_only,
/obj/machinery/door/airlock/glass_external,
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/gunnery)
"dX" = (
@@ -1199,6 +1260,11 @@
/obj/effect/floor_decal/techfloor/corner{
dir = 10
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"ec" = (
@@ -1304,6 +1370,11 @@
dir = 5
},
/obj/item/weapon/reagent_containers/glass/beaker/large,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/manta/med)
"eG" = (
@@ -1326,6 +1397,11 @@
/obj/effect/floor_decal/techfloor{
dir = 9
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/armoury_st)
"eN" = (
@@ -1500,6 +1576,13 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/hangar)
+"fM" = (
+/obj/machinery/power/pointdefense{
+ id_tag = "mercenary_pd"
+ },
+/obj/structure/cable/orange,
+/turf/simulated/floor/reinforced/airless,
+/area/ship/manta/magazine)
"fN" = (
/obj/effect/floor_decal/techfloor{
dir = 8
@@ -1653,6 +1736,11 @@
/obj/structure/railing{
dir = 8
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/plating,
/area/ship/manta/engine)
"gF" = (
@@ -1862,6 +1950,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/recreation)
"hx" = (
@@ -1933,6 +2026,11 @@
/obj/effect/floor_decal/techfloor/corner{
dir = 10
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"hS" = (
@@ -1990,6 +2088,11 @@
dir = 4
},
/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"ia" = (
@@ -2243,6 +2346,11 @@
/obj/effect/floor_decal/techfloor/corner{
dir = 1
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/armoury_st)
"iS" = (
@@ -2297,6 +2405,28 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/hangar)
+"ja" = (
+/obj/machinery/door/firedoor/border_only,
+/obj/structure/grille,
+/obj/structure/window/plastitanium/full,
+/obj/structure/window/plastitanium{
+ dir = 8
+ },
+/obj/structure/window/plastitanium{
+ dir = 4
+ },
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
+/turf/simulated/floor/reinforced/airless,
+/area/ship/manta/gunnery)
"jc" = (
/obj/effect/floor_decal/industrial/warning{
dir = 4
@@ -2375,6 +2505,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/recreation)
+"jt" = (
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/shull,
+/area/ship/manta/med)
"jv" = (
/obj/structure/cable/orange{
d1 = 1;
@@ -2534,6 +2672,11 @@
/area/ship/manta/med)
"ki" = (
/obj/machinery/atmospherics/unary/vent_pump/on,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/manta/med)
"kl" = (
@@ -2713,6 +2856,14 @@
/obj/effect/floor_decal/techfloor,
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/dock_port)
+"lh" = (
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/mech_bay)
"li" = (
/obj/structure/cable/orange{
d1 = 4;
@@ -2749,6 +2900,14 @@
/obj/item/ammo_magazine/m10mm,
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/armoury_st)
+"lk" = (
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/manta/armoury_st)
"lm" = (
/turf/simulated/wall/rshull,
/area/ship/manta/recreation)
@@ -2780,6 +2939,16 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,
/obj/effect/catwalk_plated/dark,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
/turf/simulated/floor/plating,
/area/ship/manta/engine)
"lz" = (
@@ -3014,6 +3183,11 @@
dir = 9
},
/obj/item/mecha_parts/mecha_equipment/cloak,
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/mech_bay)
"ms" = (
@@ -3067,6 +3241,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 6
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/manta/med)
"mL" = (
@@ -3131,6 +3310,11 @@
/area/ship/manta/med)
"na" = (
/obj/machinery/atmospherics/unary/vent_scrubber/on,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/mech_bay)
"nf" = (
@@ -3234,6 +3418,11 @@
/obj/effect/floor_decal/techfloor{
dir = 1
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/manta/med)
"nz" = (
@@ -3258,6 +3447,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/armoury_st)
+"nG" = (
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/med)
"nH" = (
/obj/machinery/atmospherics/pipe/simple/hidden/fuel,
/obj/effect/floor_decal/industrial/warning,
@@ -3267,6 +3464,10 @@
/obj/machinery/power/pointdefense{
id_tag = "mercenary_pd"
},
+/obj/structure/cable/orange{
+ d2 = 2;
+ icon_state = "0-2"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/gunnery)
"nL" = (
@@ -3316,6 +3517,11 @@
/obj/effect/floor_decal/techfloor/corner{
dir = 9
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"nY" = (
@@ -3369,6 +3575,17 @@
},
/turf/simulated/floor/plating,
/area/ship/manta/hallways_port)
+"oh" = (
+/obj/effect/floor_decal/techfloor{
+ dir = 1
+ },
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/manta/armoury_st)
"oi" = (
/obj/effect/floor_decal/techfloor{
dir = 1
@@ -3426,6 +3643,11 @@
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 1
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/mech_bay)
"ou" = (
@@ -3576,6 +3798,11 @@
/obj/mecha/combat/gygax/dark{
desc = "A lightweight combat exosuit, based off the standard Gygax chassis but no doubt thoroughly customized and upgraded."
},
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/mech_bay)
"oU" = (
@@ -3833,6 +4060,11 @@
/obj/effect/floor_decal/techfloor/corner{
dir = 6
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/manta/med)
"qB" = (
@@ -3858,6 +4090,10 @@
/obj/machinery/power/pointdefense{
id_tag = "mercenary_pd"
},
+/obj/structure/cable/orange{
+ d2 = 4;
+ icon_state = "0-4"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/dock_star)
"qJ" = (
@@ -3913,6 +4149,10 @@
/obj/machinery/power/pointdefense{
id_tag = "mercenary_pd"
},
+/obj/structure/cable/orange{
+ d2 = 8;
+ icon_state = "0-8"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/magazine)
"qR" = (
@@ -3954,6 +4194,11 @@
/obj/effect/floor_decal/techfloor/corner{
dir = 6
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/manta/med)
"rl" = (
@@ -3977,6 +4222,10 @@
/obj/machinery/power/pointdefense{
id_tag = "mercenary_pd"
},
+/obj/structure/cable/orange{
+ d2 = 4;
+ icon_state = "0-4"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/mech_bay)
"rq" = (
@@ -4142,6 +4391,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/armoury_st)
+"sl" = (
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/ship/manta/magazine)
"sn" = (
/obj/effect/floor_decal/industrial/warning/corner{
dir = 8
@@ -4236,6 +4493,11 @@
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/white,
/area/ship/manta/med)
"sM" = (
@@ -4253,6 +4515,14 @@
"sN" = (
/turf/simulated/wall/shull,
/area/ship/manta/bridge)
+"sR" = (
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/holding)
"sS" = (
/obj/structure/cable/orange{
d1 = 4;
@@ -4317,6 +4587,11 @@
/obj/effect/floor_decal/industrial/warning/corner{
dir = 8
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/gunnery)
"tk" = (
@@ -4449,6 +4724,10 @@
/obj/machinery/power/pointdefense{
id_tag = "mercenary_pd"
},
+/obj/structure/cable/orange{
+ d2 = 8;
+ icon_state = "0-8"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/dock_port)
"tV" = (
@@ -4635,6 +4914,11 @@
/obj/effect/floor_decal/techfloor/corner{
dir = 5
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/hallways_star)
"uN" = (
@@ -4710,6 +4994,11 @@
/obj/effect/floor_decal/techfloor{
dir = 5
},
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/hallways_star)
"uY" = (
@@ -4744,6 +5033,21 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/engineering)
+"vr" = (
+/obj/machinery/atmospherics/pipe/simple/hidden/fuel{
+ dir = 8
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 4
+ },
+/obj/structure/catwalk,
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/floor/plating,
+/area/ship/manta/engine)
"vt" = (
/obj/effect/floor_decal/techfloor/corner{
dir = 6
@@ -4758,6 +5062,11 @@
dir = 1
},
/obj/machinery/meter,
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/gunnery)
"vu" = (
@@ -4787,6 +5096,11 @@
/obj/machinery/light/small{
dir = 8
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
/turf/simulated/floor/plating,
/area/ship/manta/dock_port)
"vA" = (
@@ -4892,6 +5206,19 @@
},
/turf/simulated/floor/plating,
/area/ship/manta/engine)
+"vT" = (
+/obj/machinery/door/window/brigdoor/northleft{
+ req_access = list(150);
+ req_one_access = list(150)
+ },
+/obj/machinery/door/firedoor/glass,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/dark,
+/area/ship/manta/holding)
"vU" = (
/obj/structure/cable/orange{
d1 = 2;
@@ -4910,6 +5237,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden{
dir = 4
},
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/hallways_port)
"vV" = (
@@ -4994,6 +5326,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/armoury_st)
"wd" = (
@@ -5156,6 +5493,11 @@
/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{
dir = 1
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/armoury_st)
"wM" = (
@@ -5461,6 +5803,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 5
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/hallways_star)
"xQ" = (
@@ -5588,6 +5935,11 @@
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/dock_star)
"yo" = (
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/dock_port)
"yp" = (
@@ -5673,6 +6025,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 10
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/hallways_star)
"yw" = (
@@ -5692,6 +6049,11 @@
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 4
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/plating,
/area/ship/manta/engine)
"yz" = (
@@ -5772,6 +6134,11 @@
/obj/effect/floor_decal/techfloor{
dir = 1
},
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"yT" = (
@@ -5795,6 +6162,11 @@
/obj/effect/floor_decal/techfloor{
dir = 5
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"yW" = (
@@ -5907,6 +6279,11 @@
/obj/effect/floor_decal/techfloor{
dir = 10
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/mech_bay)
"zv" = (
@@ -5932,6 +6309,10 @@
/obj/machinery/power/pointdefense{
id_tag = "mercenary_pd"
},
+/obj/structure/cable/orange{
+ d2 = 4;
+ icon_state = "0-4"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/recreation)
"zx" = (
@@ -6079,6 +6460,15 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/bridge)
+"zV" = (
+/obj/machinery/flasher,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/dark,
+/area/ship/manta/holding)
"zX" = (
/obj/structure/bed/chair/bay/shuttle{
dir = 8
@@ -6092,6 +6482,11 @@
dir = 8;
pixel_x = 23
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/plating,
/area/ship/manta/holding)
"zY" = (
@@ -6223,6 +6618,21 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/shuttle/manta_ship_boat)
+"AI" = (
+/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{
+ dir = 1
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 4
+ },
+/obj/structure/catwalk,
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/ship/manta/engine)
"AJ" = (
/obj/effect/floor_decal/industrial/warning/corner{
dir = 4
@@ -6285,6 +6695,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"AX" = (
@@ -6297,6 +6712,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/barracks)
+"AZ" = (
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/dock_star)
"Bi" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 6
@@ -6304,6 +6727,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 5
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/gunnery)
"Bk" = (
@@ -6354,6 +6782,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/barracks)
+"Bz" = (
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/dock_star)
"BJ" = (
/obj/effect/floor_decal/techfloor{
dir = 8
@@ -6430,6 +6866,11 @@
/obj/machinery/light/small{
dir = 4
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
/turf/simulated/floor/plating,
/area/ship/manta/dock_star)
"Cp" = (
@@ -6500,6 +6941,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/mech_bay)
"CF" = (
@@ -6801,6 +7247,11 @@
dir = 9
},
/obj/structure/catwalk,
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/plating,
/area/ship/manta/magazine)
"DR" = (
@@ -6856,6 +7307,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/shuttle/manta_ship_boat)
+"Ed" = (
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/dock_port)
"Eg" = (
/obj/machinery/atmospherics/pipe/simple/hidden/fuel{
dir = 6
@@ -6939,6 +7398,16 @@
/obj/machinery/atmospherics/pipe/simple/hidden{
dir = 4
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/hallways_port)
"Ey" = (
@@ -7046,6 +7515,15 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/dock_star)
+"EU" = (
+/obj/machinery/atmospherics/pipe/simple/hidden/supply,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/manta/armoury_st)
"EY" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 10
@@ -7166,6 +7644,17 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/armoury_as)
+"Fy" = (
+/obj/effect/floor_decal/techfloor/corner{
+ dir = 10
+ },
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/manta/recreation)
"FB" = (
/obj/structure/cable/orange{
d1 = 1;
@@ -7179,6 +7668,17 @@
/obj/structure/catwalk,
/turf/simulated/floor/plating,
/area/ship/manta/magazine)
+"FE" = (
+/obj/effect/floor_decal/techfloor/corner{
+ dir = 5
+ },
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/turf/simulated/floor/tiled/white,
+/area/ship/manta/med)
"FH" = (
/obj/structure/cable/orange{
d1 = 1;
@@ -7243,6 +7743,7 @@
/obj/machinery/power/pointdefense{
id_tag = "mercenary_pd"
},
+/obj/structure/cable/orange,
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/engine)
"Gd" = (
@@ -7380,6 +7881,11 @@
req_one_access = list(150)
},
/obj/machinery/door/firedoor/glass,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"GS" = (
@@ -7862,6 +8368,11 @@
/obj/effect/floor_decal/techfloor{
dir = 10
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/recreation)
"Js" = (
@@ -7993,6 +8504,11 @@
/obj/effect/floor_decal/techfloor/corner{
dir = 6
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/gunnery)
"JY" = (
@@ -8129,6 +8645,17 @@
/obj/item/clothing/accessory/storage/pouches/large/green,
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/barracks)
+"KC" = (
+/obj/effect/floor_decal/industrial/warning{
+ dir = 8
+ },
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/ship/manta/magazine)
"KE" = (
/obj/machinery/door/window/brigdoor/eastright{
req_access = list();
@@ -8170,6 +8697,10 @@
/obj/machinery/power/pointdefense{
id_tag = "mercenary_pd"
},
+/obj/structure/cable/orange{
+ d2 = 8;
+ icon_state = "0-8"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/holding)
"KL" = (
@@ -8312,6 +8843,21 @@
},
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
+"Ls" = (
+/obj/machinery/atmospherics/pipe/simple/hidden/fuel{
+ dir = 8
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 4
+ },
+/obj/structure/catwalk,
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/ship/manta/engine)
"Lt" = (
/obj/machinery/computer/teleporter{
dir = 2
@@ -8348,6 +8894,11 @@
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 8
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/plating,
/area/ship/manta/engine)
"LJ" = (
@@ -8387,6 +8938,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/hangar)
+"LR" = (
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/reinforced/airless,
+/area/ship/manta/gunnery)
"LS" = (
/obj/machinery/atmospherics/pipe/manifold/visible{
dir = 4
@@ -8421,6 +8980,11 @@
/obj/effect/floor_decal/techfloor/corner{
dir = 10
},
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"LU" = (
@@ -8455,6 +9019,14 @@
},
/turf/simulated/floor/plating,
/area/ship/manta/hallways_star)
+"Me" = (
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/magazine)
"Mf" = (
/obj/structure/cable/orange{
d1 = 1;
@@ -8492,6 +9064,11 @@
/obj/machinery/atmospherics/unary/vent_scrubber/on{
dir = 8
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"Ml" = (
@@ -8571,6 +9148,11 @@
/obj/effect/floor_decal/techfloor/corner{
dir = 9
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"Mz" = (
@@ -8586,6 +9168,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"MI" = (
@@ -9062,6 +9649,14 @@
},
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
+"ON" = (
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/magazine)
"OO" = (
/obj/structure/sign/warning/radioactive,
/turf/simulated/wall/rshull,
@@ -9209,6 +9804,14 @@
/obj/machinery/door/firedoor/glass,
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
+"PI" = (
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/turf/simulated/floor/reinforced/airless,
+/area/ship/manta/dock_star)
"PJ" = (
/obj/machinery/vending/fitness{
prices = list()
@@ -9241,6 +9844,11 @@
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"PP" = (
@@ -9272,6 +9880,11 @@
/obj/effect/floor_decal/techfloor{
dir = 4
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/mech_bay)
"PW" = (
@@ -9371,6 +9984,11 @@
icon_state = "1-8"
},
/obj/structure/catwalk,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/plating,
/area/ship/manta/engine)
"Qx" = (
@@ -9493,6 +10111,11 @@
/obj/effect/floor_decal/techfloor{
dir = 9
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/gunnery)
"RA" = (
@@ -9659,6 +10282,11 @@
/obj/effect/floor_decal/techfloor{
dir = 1
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/mech_bay)
"RU" = (
@@ -9699,6 +10327,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/armoury_st)
+"RV" = (
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/gunnery)
"RY" = (
/obj/machinery/atmospherics/pipe/simple/hidden/fuel,
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
@@ -9795,6 +10431,16 @@
},
/turf/simulated/floor/wood,
/area/ship/manta/barracks)
+"Sr" = (
+/obj/machinery/power/pointdefense{
+ id_tag = "mercenary_pd"
+ },
+/obj/structure/cable/orange{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/turf/simulated/floor/reinforced/airless,
+/area/ship/manta/gunnery)
"Ss" = (
/obj/machinery/door/airlock/multi_tile/glass{
req_one_access = list(150)
@@ -9818,6 +10464,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/armoury_st)
+"SB" = (
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/magazine)
"SF" = (
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/effect/floor_decal/industrial/warning{
@@ -9858,6 +10512,14 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/mech_bay)
+"SP" = (
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/holding)
"SV" = (
/obj/structure/cable/orange{
d1 = 2;
@@ -10016,6 +10678,11 @@
dir = 4
},
/obj/structure/catwalk,
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
/turf/simulated/floor/plating,
/area/ship/manta/engine)
"Tp" = (
@@ -10034,6 +10701,19 @@
/obj/structure/disposalpipe/segment,
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/hallways_port)
+"Tr" = (
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/magazine)
"Tu" = (
/obj/structure/hull_corner/long_vert{
dir = 9
@@ -10091,6 +10771,15 @@
},
/turf/simulated/floor/wood,
/area/ship/manta/barracks/bed_2)
+"TC" = (
+/obj/machinery/atmospherics/unary/vent_pump/on,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/manta/armoury_st)
"TD" = (
/obj/machinery/light/small,
/obj/effect/floor_decal/industrial/outline,
@@ -10175,6 +10864,16 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 6
},
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 4;
+ icon_state = "1-4"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/mech_bay)
"TY" = (
@@ -10196,6 +10895,11 @@
/obj/effect/floor_decal/techfloor/corner{
dir = 9
},
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"Ub" = (
@@ -10312,6 +11016,11 @@
/obj/effect/floor_decal/techfloor{
dir = 8
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/gunnery)
"UM" = (
@@ -10335,6 +11044,11 @@
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"UQ" = (
@@ -10616,6 +11330,14 @@
/obj/structure/table/steel_reinforced,
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
+"VO" = (
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/engine)
"VP" = (
/obj/structure/cable/orange{
d1 = 4;
@@ -10848,6 +11570,14 @@
},
/turf/simulated/floor/wood,
/area/ship/manta/barracks/bed_1)
+"Xn" = (
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/armoury_st)
"Xo" = (
/obj/structure/cable/orange{
d1 = 4;
@@ -10993,9 +11723,26 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/engineering)
+"XL" = (
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/gunnery)
"XO" = (
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/magazine)
+"XP" = (
+/obj/structure/catwalk,
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/floor/plating,
+/area/ship/manta/magazine)
"XQ" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
@@ -11059,6 +11806,10 @@
/obj/machinery/power/pointdefense{
id_tag = "mercenary_pd"
},
+/obj/structure/cable/orange{
+ d2 = 2;
+ icon_state = "0-2"
+ },
/turf/simulated/floor/reinforced/airless,
/area/ship/manta/hallways_port)
"Yd" = (
@@ -11099,6 +11850,11 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 5
},
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/tiled/techfloor,
/area/ship/manta/recreation)
"Yj" = (
@@ -11167,6 +11923,14 @@
/obj/structure/table/steel,
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
+"Ys" = (
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/dock_port)
"YA" = (
/obj/structure/bed/chair/bay/comfy/red,
/obj/structure/cable/orange{
@@ -11327,8 +12091,26 @@
dir = 8
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
+"Zk" = (
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/turf/simulated/wall/rshull,
+/area/ship/manta/recreation)
"Zn" = (
/obj/structure/table/rack,
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/grenade/frag,
@@ -11362,6 +12144,17 @@
},
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
+"Zw" = (
+/obj/effect/floor_decal/techfloor/corner{
+ dir = 10
+ },
+/obj/structure/cable/orange{
+ d1 = 1;
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/turf/simulated/floor/tiled/techfloor,
+/area/ship/manta/mech_bay)
"Zy" = (
/turf/simulated/wall/shull,
/area/ship/manta/dock_port)
@@ -11378,6 +12171,11 @@
dir = 4
},
/obj/structure/catwalk,
+/obj/structure/cable/orange{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
/turf/simulated/floor/plating,
/area/ship/manta/magazine)
"ZB" = (
@@ -11389,6 +12187,11 @@
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 8
},
+/obj/structure/cable/orange{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
/turf/simulated/floor/tiled/dark,
/area/ship/manta/holding)
"ZF" = (
@@ -17364,7 +18167,7 @@ yz
yz
yz
Hr
-nJ
+Sr
Hr
Hr
rT
@@ -17506,20 +18309,20 @@ yz
yz
rT
CF
-CF
+RV
CF
CF
CF
CF
KY
Hr
-nJ
+Sr
DS
lm
lm
lm
lm
-lm
+Zk
lm
fZ
yz
@@ -17648,14 +18451,14 @@ yz
Hr
Hr
Zb
-Hr
+LR
yY
qB
Hg
CF
CF
CF
-CF
+RV
CF
lm
RF
@@ -17788,9 +18591,9 @@ yz
yz
yz
nJ
-CF
-CF
-Ac
+XL
+XL
+ja
Ac
CF
xM
@@ -17803,7 +18606,7 @@ lm
KH
gh
gh
-gf
+Fy
Db
lm
lm
@@ -18354,9 +19157,9 @@ yz
yz
yz
Yc
-ht
-ht
-ht
+dy
+dy
+dy
tj
Ex
vI
@@ -18946,7 +19749,7 @@ Rj
jB
oS
lm
-PW
+lh
PW
rm
Vk
@@ -19088,7 +19891,7 @@ iu
jB
kG
lm
-PW
+lh
PW
PW
PW
@@ -19204,12 +20007,12 @@ yz
yz
yz
bG
-ZT
-ZT
-ZT
-ZT
-ZT
-ic
+Xn
+Xn
+Xn
+Xn
+Xn
+oh
wc
ZT
ZT
@@ -19234,7 +20037,7 @@ mp
ou
rs
PW
-PW
+lh
PW
Vk
rm
@@ -19518,7 +20321,7 @@ oT
na
TT
ot
-ZS
+Zw
Oq
Zn
PW
@@ -19954,8 +20757,8 @@ Zy
KI
Xu
nL
-WF
-WF
+Ed
+Ys
yo
yz
yz
@@ -20196,14 +20999,14 @@ yz
yz
yz
bG
-ZT
-ZT
+Xn
+Xn
eJ
iR
-bR
-bR
-sa
-tG
+lk
+lk
+TC
+EU
wC
zC
zC
@@ -21232,16 +22035,16 @@ Ni
LU
Tn
yy
-XE
-XE
-XE
-XE
-XE
-XE
-XE
-XE
-XE
-XE
+VO
+VO
+VO
+VO
+VO
+VO
+VO
+VO
+VO
+VO
FZ
yz
yz
@@ -21372,7 +22175,7 @@ ZU
ZU
YB
Hh
-lV
+AI
vJ
nH
xT
@@ -21656,7 +22459,7 @@ sg
NJ
Ok
fz
-lV
+AI
RY
nH
xT
@@ -21798,7 +22601,7 @@ zR
zR
iv
zf
-yu
+Ls
xt
Sl
Sa
@@ -21940,18 +22743,18 @@ XH
vD
Hh
zf
-yu
+vr
LI
-XE
-XE
-XE
-XE
-XE
-XE
-XE
-XE
-XE
-XE
+VO
+VO
+VO
+VO
+VO
+VO
+VO
+VO
+VO
+VO
FZ
yz
yz
@@ -22894,9 +23697,9 @@ yz
yz
yz
cI
-dl
+nG
eF
-fU
+cR
ki
mG
qA
@@ -23220,9 +24023,9 @@ rJ
YZ
Ky
XS
-PK
-PK
-Ly
+Bz
+AZ
+PI
yz
yz
yz
@@ -23634,7 +24437,7 @@ VW
EA
xE
XY
-XY
+XP
hu
rY
rY
@@ -23750,7 +24553,7 @@ yz
cr
dl
kF
-fU
+FE
rb
sY
uS
@@ -23776,7 +24579,7 @@ VW
EA
bu
bu
-bu
+KC
QO
QO
QO
@@ -23890,8 +24693,8 @@ yz
yz
yz
cI
-dl
-dl
+nG
+nG
ny
rl
rM
@@ -23918,7 +24721,7 @@ VW
EA
nq
dg
-nq
+sl
QO
QO
QO
@@ -24058,11 +24861,11 @@ iW
NQ
VW
EA
-QO
-QO
-QO
-QO
-qQ
+ON
+SB
+Tr
+SB
+fM
XO
yz
yz
@@ -24200,7 +25003,7 @@ NQ
NQ
VW
EA
-QO
+Me
QO
sV
XO
@@ -24463,7 +25266,7 @@ dI
dl
rM
rM
-ch
+SP
ch
ch
ch
@@ -24605,7 +25408,7 @@ cr
dl
rM
rM
-ch
+SP
yx
fN
FL
@@ -24744,10 +25547,10 @@ yz
yz
yz
cI
-dl
-dl
-rM
-ch
+nG
+nG
+jt
+sR
yD
BQ
FR
@@ -25317,7 +26120,7 @@ rR
ch
ch
yR
-BQ
+zV
GN
ME
Pb
@@ -25327,8 +26130,8 @@ zX
OK
Pb
AV
-Yo
-BQ
+vT
+zV
cM
ch
ch
@@ -25465,13 +26268,13 @@ MY
ch
ch
ch
-ch
+SP
ch
ch
Yq
GE
BY
-OL
+dK
ch
ch
pn
@@ -25600,7 +26403,7 @@ yz
yz
sZ
ch
-ch
+SP
ch
ch
ch
@@ -25613,7 +26416,7 @@ ch
ch
ch
ch
-ch
+SP
ch
pn
yz
diff --git a/maps/submaps/engine_submaps_vr/tether/engine_sme.dmm b/maps/submaps/engine_submaps_vr/tether/engine_sme.dmm
index e64719e2d0..7cf63e8768 100644
--- a/maps/submaps/engine_submaps_vr/tether/engine_sme.dmm
+++ b/maps/submaps/engine_submaps_vr/tether/engine_sme.dmm
@@ -219,13 +219,13 @@
/obj/machinery/power/apc{
dir = 4;
name = "east bump";
+ nightshift_setting = 2;
pixel_x = 28
},
/turf/simulated/floor,
/area/engineering/engine_room)
"aL" = (
/obj/effect/floor_decal/industrial/warning/cee{
- icon_state = "warningcee";
dir = 1
},
/turf/simulated/floor/reinforced/nitrogen{
diff --git a/maps/submaps/engine_submaps_vr/tether/engine_tesla.dmm b/maps/submaps/engine_submaps_vr/tether/engine_tesla.dmm
index 0cbbf90966..16d5fee0fd 100644
--- a/maps/submaps/engine_submaps_vr/tether/engine_tesla.dmm
+++ b/maps/submaps/engine_submaps_vr/tether/engine_tesla.dmm
@@ -454,6 +454,7 @@
/obj/machinery/power/apc{
dir = 4;
name = "east bump";
+ nightshift_setting = 2;
pixel_x = 28
},
/obj/structure/cable/cyan{
@@ -816,6 +817,7 @@
/obj/machinery/power/apc{
dir = 4;
name = "east bump";
+ nightshift_setting = 2;
pixel_x = 28
},
/obj/machinery/light_switch{
diff --git a/maps/tether/submaps/_tether_submaps.dm b/maps/tether/submaps/_tether_submaps.dm
index 01d35f0e63..1568294e56 100644
--- a/maps/tether/submaps/_tether_submaps.dm
+++ b/maps/tether/submaps/_tether_submaps.dm
@@ -304,6 +304,58 @@
mappath = 'maps/gateway_vr/listeningpost.dmm'
associated_map_datum = /datum/map_z_level/tether_lateload/gateway_destination
+#include "../../gateway_vr/variable/honlethhighlands.dm"
+/datum/map_template/tether_lateload/gateway/honlethhighlands_a
+ name = "Honleth Highlands A"
+ desc = "The cold surface of some planet."
+ mappath = 'maps/gateway_vr/variable/honlethhighlands_a.dmm'
+ associated_map_datum = /datum/map_z_level/tether_lateload/gateway_destination
+
+/datum/map_template/tether_lateload/gateway/honlethhighlands_b
+ name = "Honleth Highlands B"
+ desc = "The cold surface of some planet."
+ mappath = 'maps/gateway_vr/variable/honlethhighlands_b.dmm'
+ associated_map_datum = /datum/map_z_level/tether_lateload/gateway_destination
+
+
+#include "../../gateway_vr/variable/arynthilake.dm"
+/datum/map_template/tether_lateload/gateway/arynthilake
+ name = "Arynthi Lake A"
+ desc = "A grassy surface with some abandoned structures."
+ mappath = 'maps/gateway_vr/variable/arynthilake_a.dmm'
+ associated_map_datum = /datum/map_z_level/tether_lateload/gateway_destination
+
+/datum/map_template/tether_lateload/gateway/arynthilakeunderground
+ name = "Arynthi Lake Underground A"
+ desc = "A grassy surface with some abandoned structures."
+ mappath = 'maps/gateway_vr/variable/arynthilakeunderground_a.dmm'
+ associated_map_datum = /datum/map_z_level/tether_lateload/gateway_destination
+
+/datum/map_template/tether_lateload/gateway/arynthilake_b
+ name = "Arynthi Lake B"
+ desc = "A grassy surface with some abandoned structures."
+ mappath = 'maps/gateway_vr/variable/arynthilake_b.dmm'
+ associated_map_datum = /datum/map_z_level/tether_lateload/gateway_destination
+
+/datum/map_template/tether_lateload/gateway/arynthilakeunderground_b
+ name = "Arynthi Lake Underground B"
+ desc = "A grassy surface with some abandoned structures."
+ mappath = 'maps/gateway_vr/variable/arynthilakeunderground_b.dmm'
+ associated_map_datum = /datum/map_z_level/tether_lateload/gateway_destination
+
+#include "../../gateway_vr/eggnogtown.dm"
+/datum/map_template/tether_lateload/gateway/eggnogtown
+ name = "Eggnog Town"
+ desc = "A comfortable snowy town."
+ mappath = 'maps/gateway_vr/eggnogtown.dmm'
+ associated_map_datum = /datum/map_z_level/tether_lateload/gateway_destination
+
+/datum/map_template/tether_lateload/gateway/eggnogtownunderground
+ name = "Eggnog Town Underground"
+ desc = "A comfortable snowy town."
+ mappath = 'maps/gateway_vr/eggnogtownunderground.dmm'
+ associated_map_datum = /datum/map_z_level/tether_lateload/gateway_destination
+
//////////////////////////////////////////////////////////////////////////////////////
// Admin-use z-levels for loading whenever an admin feels like
#if AWAY_MISSION_TEST
diff --git a/maps/tether/tether-01-surface1.dmm b/maps/tether/tether-01-surface1.dmm
index 71af6ef1da..46c0835951 100644
--- a/maps/tether/tether-01-surface1.dmm
+++ b/maps/tether/tether-01-surface1.dmm
@@ -2027,6 +2027,7 @@
"adD" = (
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -28
},
/obj/effect/floor_decal/borderfloorblack{
@@ -7598,6 +7599,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 28
},
/obj/structure/cable/green{
@@ -7903,6 +7905,7 @@
},
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -28
},
/turf/simulated/floor/tiled,
@@ -9971,6 +9974,7 @@
/obj/machinery/power/apc{
dir = 4;
name = "east bump";
+ nightshift_setting = 2;
pixel_x = 28
},
/obj/structure/cable/green{
@@ -10665,6 +10669,7 @@
/obj/structure/bed/roller,
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -24
},
/obj/structure/cable,
@@ -11547,6 +11552,7 @@
/obj/machinery/power/apc{
dir = 4;
name = "east bump";
+ nightshift_setting = 2;
pixel_x = 28
},
/obj/structure/cable/orange{
@@ -14690,6 +14696,7 @@
/obj/random/medical,
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -32
},
/obj/structure/cable/green,
@@ -19752,6 +19759,7 @@
"aGB" = (
/obj/structure/cable/orange,
/obj/machinery/power/apc/high{
+ nightshift_setting = 2;
pixel_y = -28
},
/obj/machinery/light,
@@ -21896,6 +21904,7 @@
},
/obj/machinery/power/apc/super{
dir = 1;
+ nightshift_setting = 2;
pixel_y = 28
},
/obj/machinery/button/remote/blast_door{
@@ -24753,6 +24762,7 @@
},
/obj/machinery/power/apc/super{
dir = 1;
+ nightshift_setting = 2;
pixel_y = 28
},
/turf/simulated/floor/tiled,
@@ -29228,7 +29238,6 @@
/obj/machinery/button/remote/airlock{
id = "thehole";
name = "The Hole Bolt Toggle";
- pixel_x = 0;
pixel_y = 26;
req_access = list(63);
specialfunctions = 4
@@ -30704,6 +30713,7 @@
/obj/machinery/power/apc{
dir = 4;
name = "east bump";
+ nightshift_setting = 2;
pixel_x = 24
},
/obj/structure/cable/green{
@@ -35230,6 +35240,7 @@
/obj/machinery/power/apc{
dir = 8;
name = "west bump";
+ nightshift_setting = 2;
pixel_x = -28
},
/obj/effect/floor_decal/industrial/warning{
@@ -35346,6 +35357,7 @@
"nID" = (
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -32
},
/obj/structure/cable/green,
diff --git a/maps/tether/tether-02-surface2.dmm b/maps/tether/tether-02-surface2.dmm
index b0e23a2828..b6f2fabcc9 100644
--- a/maps/tether/tether-02-surface2.dmm
+++ b/maps/tether/tether-02-surface2.dmm
@@ -2798,6 +2798,7 @@
},
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -28
},
/obj/structure/cable/green,
@@ -3583,6 +3584,7 @@
"afz" = (
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -24
},
/obj/structure/cable/green,
@@ -4659,6 +4661,7 @@
/obj/machinery/power/apc{
dir = 8;
name = "west bump";
+ nightshift_setting = 2;
pixel_x = -28
},
/obj/structure/cable/green{
@@ -8130,6 +8133,7 @@
/obj/machinery/power/apc{
dir = 4;
name = "east bump";
+ nightshift_setting = 2;
pixel_x = 28
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
@@ -10614,6 +10618,7 @@
/obj/machinery/power/apc{
dir = 8;
name = "west bump";
+ nightshift_setting = 2;
pixel_x = -28
},
/obj/structure/cable/green{
@@ -22847,6 +22852,7 @@
/obj/effect/floor_decal/corner/mauve/bordercorner2,
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -32
},
/obj/structure/cable/green{
@@ -24684,6 +24690,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 28
},
/obj/effect/floor_decal/borderfloor{
@@ -25494,6 +25501,7 @@
cell_type = /obj/item/weapon/cell/super;
dir = 8;
name = "west bump";
+ nightshift_setting = 2;
pixel_x = -30
},
/obj/structure/cable/cyan{
@@ -31922,6 +31930,7 @@
},
/obj/machinery/power/apc/super{
dir = 1;
+ nightshift_setting = 2;
pixel_y = 24
},
/obj/machinery/button/remote/airlock{
@@ -33148,6 +33157,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 28
},
/obj/structure/cable/cyan{
@@ -33792,6 +33802,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 28
},
/obj/structure/cable/cyan{
@@ -34185,8 +34196,7 @@
/area/ai_cyborg_station)
"sYS" = (
/obj/machinery/power/terminal{
- dir = 1;
- icon_state = "term"
+ dir = 1
},
/obj/structure/cable{
d2 = 4;
@@ -34449,6 +34459,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 28
},
/obj/structure/cable/cyan{
@@ -34598,6 +34609,7 @@
/obj/structure/cable/cyan,
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -32
},
/obj/machinery/button/remote/blast_door{
diff --git a/maps/tether/tether-03-surface3.dmm b/maps/tether/tether-03-surface3.dmm
index d37f961a64..bf4999b5e0 100644
--- a/maps/tether/tether-03-surface3.dmm
+++ b/maps/tether/tether-03-surface3.dmm
@@ -2403,6 +2403,7 @@
cell_type = /obj/item/weapon/cell/super;
dir = 8;
name = "west bump";
+ nightshift_setting = 2;
pixel_x = -24
},
/obj/machinery/atmospherics/unary/vent_pump/on{
@@ -3474,6 +3475,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 28
},
/obj/structure/cable/green{
@@ -8718,6 +8720,7 @@
/obj/machinery/power/apc{
dir = 4;
name = "east bump";
+ nightshift_setting = 2;
pixel_x = 28
},
/obj/structure/cable/green{
@@ -9290,6 +9293,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 24
},
/obj/structure/cable/green{
@@ -10897,6 +10901,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 24
},
/obj/structure/cable/green{
@@ -13184,14 +13189,14 @@
"avz" = (
/obj/item/weapon/stool/padded,
/turf/simulated/floor/tiled/white,
-/area/crew_quarters/kitchen)
+/area/crew_quarters/bar)
"avA" = (
/obj/item/weapon/stool/padded,
/obj/effect/floor_decal/corner/beige{
dir = 6
},
/turf/simulated/floor/tiled/white,
-/area/crew_quarters/kitchen)
+/area/crew_quarters/bar)
"avB" = (
/obj/structure/table/glass,
/obj/machinery/reagentgrinder,
@@ -13301,7 +13306,7 @@
},
/obj/effect/floor_decal/spline/plain,
/turf/simulated/floor/tiled/white,
-/area/crew_quarters/kitchen)
+/area/crew_quarters/bar)
"avN" = (
/obj/machinery/light{
dir = 1
@@ -17071,6 +17076,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 28
},
/obj/effect/floor_decal/borderfloor{
@@ -17434,7 +17440,7 @@
dir = 4
},
/turf/simulated/floor/tiled/white,
-/area/crew_quarters/kitchen)
+/area/crew_quarters/bar)
"aCj" = (
/obj/effect/floor_decal/borderfloor/corner{
dir = 8
@@ -19612,6 +19618,7 @@
"aGa" = (
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -24
},
/obj/structure/cable/green,
@@ -20525,7 +20532,7 @@
/obj/machinery/disposal,
/obj/structure/disposalpipe/trunk,
/turf/simulated/floor/tiled/white,
-/area/crew_quarters/kitchen)
+/area/crew_quarters/bar)
"aHz" = (
/obj/effect/floor_decal/spline/plain{
dir = 1
@@ -23380,6 +23387,7 @@
/obj/machinery/light,
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -24
},
/obj/structure/cable/green,
@@ -25575,6 +25583,7 @@
"aRv" = (
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -24
},
/obj/structure/cable/green,
@@ -26807,6 +26816,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 28
},
/obj/structure/cable/green{
@@ -29139,6 +29149,7 @@
"aXF" = (
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -24
},
/obj/structure/cable/green,
@@ -29477,9 +29488,7 @@
/area/bridge)
"aYk" = (
/obj/machinery/papershredder,
-/obj/machinery/light{
- dir = 2
- },
+/obj/machinery/light,
/obj/effect/floor_decal/borderfloor{
dir = 10
},
@@ -33918,7 +33927,7 @@
dir = 4
},
/turf/simulated/floor/tiled/white,
-/area/crew_quarters/kitchen)
+/area/crew_quarters/bar)
"bga" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
@@ -33961,7 +33970,7 @@
pixel_y = 29
},
/turf/simulated/floor/tiled/white,
-/area/crew_quarters/kitchen)
+/area/crew_quarters/bar)
"bgg" = (
/obj/structure/disposalpipe/segment,
/obj/structure/cable{
@@ -35806,6 +35815,7 @@
pixel_x = 6;
pixel_y = 31
},
+/obj/item/device/denecrotizer/medical,
/turf/simulated/floor/tiled/white,
/area/tether/surfacebase/medical/storage)
"bjH" = (
@@ -35976,6 +35986,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 28
},
/obj/structure/cable/green{
@@ -36096,6 +36107,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 28
},
/obj/structure/cable/green{
@@ -36792,6 +36804,7 @@
cell_type = /obj/item/weapon/cell/super;
dir = 8;
name = "west bump";
+ nightshift_setting = 2;
pixel_x = -30
},
/obj/structure/cable/green{
diff --git a/maps/tether/tether-04-transit.dmm b/maps/tether/tether-04-transit.dmm
index 120d84e6c4..248bcc9039 100644
--- a/maps/tether/tether-04-transit.dmm
+++ b/maps/tether/tether-04-transit.dmm
@@ -1,92 +1,11 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
-"b" = (
-/turf/simulated/wall/r_wall,
-/area/maintenance/tether_midpoint)
-"c" = (
-/obj/structure/disposalpipe/segment{
- dir = 4;
- icon_state = "pipe-c"
- },
-/obj/structure/cable{
- d1 = 2;
- d2 = 4;
- icon_state = "2-4"
- },
-/obj/machinery/atmospherics/pipe/simple/hidden/supply{
- dir = 6
- },
-/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
- dir = 6
- },
-/obj/machinery/alarm{
- pixel_y = 26
- },
-/turf/simulated/floor/plating,
-/area/maintenance/tether_midpoint)
-"d" = (
-/turf/simulated/shuttle/wall/voidcraft/green{
- hard_corner = 1
- },
-/area/tether/elevator)
-"e" = (
-/obj/structure/disposalpipe/segment{
+"ag" = (
+/obj/structure/bed/chair/wood{
dir = 4
},
-/obj/structure/cable{
- d1 = 4;
- d2 = 8;
- icon_state = "4-8"
- },
-/obj/machinery/atmospherics/pipe/simple/hidden/supply{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
- dir = 4
- },
-/turf/simulated/floor/plating,
-/area/maintenance/tether_midpoint)
-"f" = (
-/turf/simulated/floor/holofloor/tiled/dark,
-/area/tether/elevator)
-"g" = (
-/obj/structure/grille,
-/obj/structure/window/reinforced/full,
-/obj/structure/window/reinforced,
-/obj/structure/window/reinforced{
- dir = 1
- },
-/obj/machinery/door/firedoor/glass,
-/turf/simulated/floor/plating,
+/turf/simulated/floor/wood,
/area/tether/midpoint)
-"h" = (
-/obj/structure/disposalpipe/segment,
-/obj/structure/cable{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2";
- pixel_y = 0
- },
-/obj/machinery/atmospherics/pipe/simple/hidden/supply,
-/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
-/turf/simulated/floor/plating,
-/area/maintenance/tether_midpoint)
-"i" = (
-/obj/machinery/light/small{
- dir = 4;
- pixel_y = 0
- },
-/obj/machinery/atmospherics/pipe/zpipe/down,
-/obj/machinery/atmospherics/pipe/zpipe/down/scrubbers,
-/obj/machinery/atmospherics/pipe/zpipe/down/supply,
-/obj/structure/lattice,
-/obj/structure/cable{
- icon_state = "32-2"
- },
-/obj/structure/disposalpipe/down,
-/obj/machinery/door/firedoor/glass,
-/turf/simulated/open,
-/area/maintenance/tether_midpoint)
-"j" = (
+"cB" = (
/obj/structure/disposalpipe/segment{
dir = 1;
icon_state = "pipe-c"
@@ -111,71 +30,153 @@
},
/turf/simulated/floor/plating,
/area/maintenance/tether_midpoint)
-"k" = (
-/obj/machinery/light{
- dir = 8;
- icon_state = "tube1"
+"cH" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/obj/machinery/door/firedoor/glass,
+/obj/structure/window/reinforced{
+ dir = 4
},
-/obj/structure/flora/pottedplant/unusual,
-/turf/simulated/floor/wood,
+/obj/structure/window/reinforced,
+/turf/simulated/floor/plating,
/area/tether/midpoint)
-"l" = (
-/obj/machinery/atmospherics/pipe/simple/hidden/supply,
-/obj/machinery/door/firedoor/glass/hidden{
- dir = 2
- },
-/turf/simulated/floor/tiled/dark,
-/area/tether/midpoint)
-"m" = (
-/obj/structure/cable{
- icon_state = "2-8"
- },
-/obj/machinery/firealarm{
- dir = 2;
- layer = 3.3;
- pixel_x = 0;
- pixel_y = 26
- },
-/obj/machinery/disposal,
-/obj/structure/disposalpipe/trunk{
- dir = 8
- },
-/turf/simulated/floor/tiled/dark,
-/area/tether/midpoint)
-"n" = (
-/obj/structure/table/woodentable,
-/turf/simulated/floor/wood,
-/area/tether/midpoint)
-"o" = (
+"cR" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/door/firedoor/glass/hidden{
dir = 1
},
+/obj/structure/disposalpipe/segment,
/turf/simulated/floor/tiled/dark,
/area/tether/midpoint)
-"p" = (
+"dc" = (
+/obj/structure/table/woodentable,
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"dU" = (
+/obj/structure/bed/chair/wood{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"fI" = (
/obj/machinery/light{
- dir = 8;
- icon_state = "tube1"
- },
-/obj/structure/flora/pottedplant/unusual,
-/obj/structure/cable,
-/obj/machinery/power/apc{
- dir = 8;
- name = "west bump";
- pixel_x = -28
+ dir = 1
},
/turf/simulated/floor/wood,
/area/tether/midpoint)
-"q" = (
+"gq" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/obj/structure/window/reinforced,
+/obj/structure/window/reinforced{
+ dir = 4
+ },
+/obj/machinery/door/firedoor/glass,
+/turf/simulated/floor/plating,
+/area/tether/midpoint)
+"gV" = (
+/obj/structure/disposalpipe/up,
+/obj/effect/ceiling,
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
+"hi" = (
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
/turf/simulated/floor/wood,
/area/tether/midpoint)
-"r" = (
+"hk" = (
+/obj/structure/table/woodentable,
+/obj/random/plushie,
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"hp" = (
+/obj/structure/table/woodentable,
+/obj/machinery/camera/network/civilian,
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"it" = (
+/obj/machinery/atmospherics/pipe/simple/hidden/supply,
+/obj/machinery/door/firedoor/glass/hidden{
+ dir = 2
+ },
+/obj/structure/disposalpipe/segment,
+/turf/simulated/floor/tiled/dark,
+/area/tether/midpoint)
+"iK" = (
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/obj/machinery/alarm{
+ pixel_y = 26
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"jt" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/door/firedoor/glass/hidden,
+/obj/structure/disposalpipe/segment,
/turf/simulated/floor/tiled/dark,
/area/tether/midpoint)
-"s" = (
+"jE" = (
+/obj/machinery/atmospherics/pipe/zpipe/up/supply{
+ dir = 1
+ },
+/obj/machinery/atmospherics/pipe/zpipe/up/scrubbers{
+ dir = 1
+ },
+/obj/machinery/atmospherics/pipe/zpipe/up{
+ dir = 1
+ },
+/obj/structure/disposalpipe/up{
+ dir = 1
+ },
+/obj/structure/cable{
+ icon_state = "16-0"
+ },
+/obj/structure/cable,
+/obj/effect/ceiling,
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
+"kn" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/obj/machinery/door/firedoor/glass,
+/obj/structure/window/reinforced{
+ dir = 4
+ },
+/obj/structure/window/reinforced{
+ dir = 1
+ },
+/turf/simulated/floor/plating,
+/area/tether/midpoint)
+"kz" = (
+/obj/effect/step_trigger/teleporter/planetary_fall/virgo3b,
+/turf/simulated/sky/virgo3b,
+/area/tether/transit)
+"lL" = (
+/obj/effect/blocker,
+/obj/effect/step_trigger/teleporter/planetary_fall/virgo3b,
+/turf/simulated/sky/virgo3b,
+/area/tether/transit)
+"mz" = (
+/obj/machinery/power/apc{
+ cell_type = /obj/item/weapon/cell/super;
+ dir = 8;
+ name = "west bump";
+ pixel_x = -24
+ },
+/obj/structure/cable,
+/obj/structure/disposalpipe/segment{
+ dir = 1;
+ icon_state = "pipe-c"
+ },
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
+"no" = (
/obj/machinery/atmospherics/pipe/simple/visible,
/obj/structure/cable{
icon_state = "1-2"
@@ -198,127 +199,165 @@
},
/turf/simulated/floor/plating,
/area/maintenance/tether_midpoint)
-"t" = (
+"nD" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/obj/structure/window/reinforced{
+ dir = 1
+ },
+/obj/machinery/door/firedoor/glass,
+/obj/structure/window/reinforced{
+ dir = 4
+ },
+/turf/simulated/floor/plating,
+/area/tether/midpoint)
+"oz" = (
+/obj/machinery/atmospherics/pipe/simple/hidden/supply,
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 5;
+ icon_state = "intact-scrubbers"
+ },
+/obj/machinery/light{
+ dir = 8;
+ icon_state = "tube1"
+ },
+/obj/structure/disposalpipe/segment,
+/turf/simulated/floor/tiled/dark,
+/area/tether/midpoint)
+"oN" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/maintenance/engineering,
+/obj/random/maintenance/engineering,
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
+"oP" = (
+/obj/structure/grille,
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
+"pK" = (
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"pM" = (
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
+"pO" = (
+/obj/machinery/media/jukebox,
+/turf/simulated/floor/holofloor/tiled/dark,
+/area/tether/midpoint)
+"sw" = (
+/obj/machinery/vending/bepis{
+ dir = 8
+ },
+/turf/simulated/floor/holofloor/tiled/dark,
+/area/tether/midpoint)
+"sR" = (
+/obj/effect/floor_decal/borderfloorblack{
+ dir = 6
+ },
+/obj/structure/cable{
+ icon_state = "1-8"
+ },
+/turf/simulated/floor/holofloor/tiled/dark,
+/area/tether/midpoint)
+"tn" = (
/obj/structure/cable{
d1 = 1;
d2 = 2;
icon_state = "1-2";
pixel_y = 0
},
-/obj/structure/lattice,
-/obj/structure/disposalpipe/down,
-/obj/machinery/door/firedoor/glass,
-/turf/simulated/open,
-/area/maintenance/tether_midpoint)
-"u" = (
-/obj/effect/step_trigger/teleporter/planetary_fall/virgo3b,
-/turf/simulated/sky/virgo3b,
-/area/tether/transit)
-"v" = (
-/obj/structure/grille,
-/obj/structure/window/reinforced/full,
-/obj/structure/window/reinforced{
- dir = 1
- },
-/obj/structure/window/reinforced{
- dir = 4
- },
-/obj/machinery/door/firedoor/glass,
-/turf/simulated/floor/plating,
-/area/tether/midpoint)
-"w" = (
-/obj/structure/grille,
-/obj/structure/window/reinforced/full,
-/obj/structure/window/reinforced{
+/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 8
},
-/obj/structure/window/reinforced{
+/obj/effect/floor_decal/borderfloorblack{
dir = 4
},
-/obj/machinery/door/firedoor/glass,
-/turf/simulated/floor/plating,
+/turf/simulated/floor/tiled/dark,
/area/tether/midpoint)
-"x" = (
-/obj/machinery/atmospherics/pipe/zpipe/up/supply{
- dir = 1
- },
-/obj/machinery/atmospherics/pipe/zpipe/up/scrubbers{
- dir = 1
- },
-/obj/machinery/atmospherics/pipe/zpipe/up{
- dir = 1
- },
-/obj/structure/disposalpipe/up{
- dir = 1
- },
+"tA" = (
+/obj/structure/table/bench/padded,
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"tB" = (
/obj/structure/cable{
- icon_state = "16-0"
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2";
+ pixel_y = 0
},
-/obj/structure/cable,
-/obj/effect/ceiling,
-/turf/simulated/floor/plating,
-/area/maintenance/tether_midpoint)
-"y" = (
-/turf/simulated/wall/r_wall,
+/obj/effect/floor_decal/borderfloorblack{
+ dir = 4
+ },
+/turf/simulated/floor/tiled/dark,
/area/tether/midpoint)
-"z" = (
-/obj/machinery/power/apc{
- cell_type = /obj/item/weapon/cell/super;
- dir = 8;
- name = "west bump";
- pixel_x = -24
- },
-/obj/structure/cable,
+"uA" = (
/obj/structure/disposalpipe/segment{
- dir = 1;
- icon_state = "pipe-c"
+ dir = 4
},
-/turf/simulated/floor/plating,
-/area/maintenance/tether_midpoint)
-"A" = (
-/obj/structure/disposalpipe/up{
- dir = 8
+/obj/structure/extinguisher_cabinet{
+ pixel_y = 30
},
-/obj/effect/ceiling,
-/turf/simulated/floor/plating,
-/area/maintenance/tether_midpoint)
-"B" = (
-/turf/simulated/floor/plating,
-/area/maintenance/tether_midpoint)
-"C" = (
-/obj/structure/disposalpipe/up,
-/obj/effect/ceiling,
-/turf/simulated/floor/plating,
-/area/maintenance/tether_midpoint)
-"D" = (
-/obj/structure/disposalpipe/down{
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"uC" = (
+/obj/structure/table/woodentable,
+/obj/machinery/holoposter{
+ pixel_y = 30
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"vh" = (
+/obj/structure/table/woodentable,
+/obj/structure/flora/pottedplant/small{
+ pixel_y = 8
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"vt" = (
+/obj/structure/table/woodentable,
+/obj/machinery/camera/network/civilian{
dir = 1
},
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"wM" = (
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"xl" = (
/obj/machinery/light/small{
dir = 4;
pixel_y = 0
},
+/obj/machinery/atmospherics/pipe/zpipe/down,
+/obj/machinery/atmospherics/pipe/zpipe/down/scrubbers,
+/obj/machinery/atmospherics/pipe/zpipe/down/supply,
/obj/structure/lattice,
+/obj/structure/cable{
+ icon_state = "32-2"
+ },
+/obj/structure/disposalpipe/down,
/obj/machinery/door/firedoor/glass,
/turf/simulated/open,
/area/maintenance/tether_midpoint)
-"E" = (
-/obj/structure/cable{
- d1 = 2;
- d2 = 8;
- icon_state = "2-8"
+"yi" = (
+/obj/structure/table/rack/shelf/steel,
+/obj/random/maintenance/engineering,
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
+"zi" = (
+/obj/machinery/light{
+ dir = 8;
+ icon_state = "tube1"
},
/turf/simulated/floor/wood,
/area/tether/midpoint)
-"F" = (
-/obj/structure/table/bench/padded,
-/turf/simulated/floor/wood,
-/area/tether/midpoint)
-"G" = (
-/obj/structure/grille,
-/turf/simulated/floor/plating,
-/area/maintenance/tether_midpoint)
-"H" = (
+"zG" = (
/obj/structure/disposalpipe/segment{
dir = 4
},
@@ -337,147 +376,104 @@
/obj/machinery/door/firedoor/glass,
/turf/simulated/floor/plating,
/area/maintenance/tether_midpoint)
-"I" = (
-/obj/structure/closet,
-/obj/random/plushie,
-/turf/simulated/floor/plating,
-/area/maintenance/tether_midpoint)
-"J" = (
-/obj/structure/table/woodentable,
-/obj/machinery/camera/network/civilian,
-/turf/simulated/floor/wood,
-/area/tether/midpoint)
-"K" = (
-/obj/structure/cable{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2";
- pixel_y = 0
- },
-/turf/simulated/floor/tiled/dark,
-/area/tether/midpoint)
-"L" = (
-/obj/structure/bed/chair/comfy/black{
+"zP" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/obj/structure/window/reinforced,
+/obj/machinery/door/firedoor/glass,
+/obj/structure/window/reinforced{
dir = 8
},
+/turf/simulated/floor/plating,
+/area/tether/midpoint)
+"zZ" = (
+/obj/structure/table/woodentable,
+/obj/machinery/holoposter{
+ pixel_y = -30
+ },
/turf/simulated/floor/wood,
/area/tether/midpoint)
-"M" = (
+"Dz" = (
+/turf/simulated/wall/r_wall,
+/area/maintenance/tether_midpoint)
+"Et" = (
/obj/structure/grille,
/obj/structure/window/reinforced/full,
/obj/structure/window/reinforced,
/obj/structure/window/reinforced{
- dir = 4
+ dir = 1
},
/obj/machinery/door/firedoor/glass,
/turf/simulated/floor/plating,
/area/tether/midpoint)
-"N" = (
-/obj/structure/table/woodentable,
-/obj/machinery/camera/network/civilian{
- dir = 1
- },
-/turf/simulated/floor/wood,
-/area/tether/midpoint)
-"O" = (
-/obj/structure/cable{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2";
- pixel_y = 0
- },
-/obj/machinery/atmospherics/unary/vent_pump/on{
- dir = 8
- },
-/turf/simulated/floor/tiled/dark,
-/area/tether/midpoint)
-"P" = (
-/obj/structure/cable{
- icon_state = "1-4"
- },
-/obj/machinery/vending/snack{
- dir = 1
- },
-/turf/simulated/floor/tiled/dark,
-/area/tether/midpoint)
-"Q" = (
-/obj/effect/blocker,
-/obj/effect/step_trigger/teleporter/planetary_fall/virgo3b,
-/turf/simulated/sky/virgo3b,
-/area/tether/transit)
-"R" = (
-/obj/structure/table/woodentable,
-/obj/structure/flora/pottedplant/small{
- pixel_y = 8
- },
-/turf/simulated/floor/wood,
-/area/tether/midpoint)
-"S" = (
-/obj/machinery/atmospherics/pipe/simple/hidden/supply{
- dir = 5
- },
-/obj/machinery/light{
- dir = 8;
- icon_state = "tube1"
- },
-/turf/simulated/floor/tiled/dark,
-/area/tether/midpoint)
-"T" = (
-/obj/structure/table/woodentable,
-/obj/structure/flora/pottedplant/smallcactus{
- pixel_x = 0;
- pixel_y = 8
- },
-/turf/simulated/floor/wood,
-/area/tether/midpoint)
-"U" = (
-/obj/structure/bed/chair/comfy/black{
- dir = 4
- },
-/turf/simulated/floor/wood,
-/area/tether/midpoint)
-"V" = (
-/obj/machinery/atmospherics/pipe/simple/hidden/supply,
-/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
- dir = 5;
- icon_state = "intact-scrubbers"
- },
-/obj/machinery/light{
- dir = 8;
- icon_state = "tube1"
- },
-/turf/simulated/floor/tiled/dark,
-/area/tether/midpoint)
-"X" = (
-/obj/machinery/vending/coffee{
- dir = 1
- },
-/obj/machinery/holoposter{
- pixel_y = -30
- },
-/turf/simulated/floor/tiled/dark,
-/area/tether/midpoint)
-"Y" = (
+"EI" = (
/obj/structure/cable{
d1 = 4;
d2 = 8;
icon_state = "4-8"
},
-/obj/machinery/alarm{
- pixel_y = 26
- },
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 10
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 10
},
-/obj/structure/disposalpipe/segment{
- dir = 4
+/obj/effect/floor_decal/borderfloorblack{
+ dir = 1
+ },
+/obj/structure/disposalpipe/junction/yjunction{
+ dir = 8
},
/turf/simulated/floor/tiled/dark,
/area/tether/midpoint)
-"Z" = (
+"Gl" = (
+/turf/simulated/floor/holofloor/tiled/dark,
+/area/tether/elevator)
+"GU" = (
+/obj/machinery/disposal,
+/obj/structure/disposalpipe/trunk{
+ dir = 1
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"Ha" = (
+/obj/structure/disposalpipe/up{
+ dir = 8
+ },
+/obj/effect/ceiling,
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
+"Hs" = (
+/turf/simulated/shuttle/wall/voidcraft/green{
+ hard_corner = 1
+ },
+/area/tether/elevator)
+"Hy" = (
+/obj/structure/disposalpipe/segment{
+ dir = 4;
+ icon_state = "pipe-c"
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"HK" = (
+/obj/structure/disposalpipe/segment,
+/obj/structure/cable{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2";
+ pixel_y = 0
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/supply,
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
+"Iq" = (
+/obj/machinery/light{
+ dir = 2
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"It" = (
/obj/structure/cable{
d1 = 1;
d2 = 2;
@@ -487,19886 +483,20114 @@
/obj/machinery/atmospherics/unary/vent_scrubber/on{
dir = 8
},
+/obj/effect/floor_decal/borderfloorblack{
+ dir = 4
+ },
/turf/simulated/floor/tiled/dark,
/area/tether/midpoint)
+"Jl" = (
+/obj/structure/flora/pottedplant/unusual,
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"JB" = (
+/obj/machinery/atmospherics/pipe/simple/hidden/supply{
+ dir = 5
+ },
+/obj/machinery/light{
+ dir = 8;
+ icon_state = "tube1"
+ },
+/obj/structure/disposalpipe/segment,
+/turf/simulated/floor/tiled/dark,
+/area/tether/midpoint)
+"Kh" = (
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/obj/machinery/firealarm{
+ dir = 2;
+ layer = 3.3;
+ pixel_x = 0;
+ pixel_y = 26
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"KH" = (
+/obj/structure/disposalpipe/segment{
+ dir = 8;
+ icon_state = "pipe-c"
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"KN" = (
+/obj/machinery/camera/network/civilian{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"Ls" = (
+/obj/structure/disposalpipe/down{
+ dir = 1
+ },
+/obj/machinery/light/small{
+ dir = 4;
+ pixel_y = 0
+ },
+/obj/structure/lattice,
+/obj/machinery/door/firedoor/glass,
+/turf/simulated/open,
+/area/maintenance/tether_midpoint)
+"ML" = (
+/obj/structure/closet,
+/obj/random/maintenance,
+/obj/random/maintenance,
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
+"Nt" = (
+/obj/structure/disposalpipe/segment,
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"NJ" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/obj/structure/window/reinforced{
+ dir = 1
+ },
+/obj/machinery/door/firedoor/glass,
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/turf/simulated/floor/plating,
+/area/tether/midpoint)
+"Oq" = (
+/obj/structure/cable{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2";
+ pixel_y = 0
+ },
+/obj/structure/lattice,
+/obj/structure/disposalpipe/down,
+/obj/machinery/door/firedoor/glass,
+/turf/simulated/open,
+/area/maintenance/tether_midpoint)
+"Or" = (
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"Pz" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"PF" = (
+/turf/simulated/wall/r_wall,
+/area/tether/midpoint)
+"Qc" = (
+/obj/structure/grille,
+/obj/structure/window/reinforced/full,
+/obj/machinery/door/firedoor/glass,
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/obj/structure/window/reinforced{
+ dir = 4
+ },
+/turf/simulated/floor/plating,
+/area/tether/midpoint)
+"Qv" = (
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/obj/structure/cable{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/supply{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 4
+ },
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
+"RZ" = (
+/obj/machinery/disposal,
+/obj/structure/disposalpipe/trunk{
+ dir = 8
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"Sm" = (
+/obj/machinery/camera/network/civilian{
+ dir = 9
+ },
+/obj/structure/table/bench/padded,
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"Tz" = (
+/obj/structure/cable{
+ icon_state = "2-8"
+ },
+/obj/effect/floor_decal/borderfloorblack{
+ dir = 5
+ },
+/turf/simulated/floor/tiled/dark,
+/area/tether/midpoint)
+"Ui" = (
+/obj/structure/disposalpipe/segment{
+ dir = 4;
+ icon_state = "pipe-c"
+ },
+/obj/structure/cable{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/supply{
+ dir = 6
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 6
+ },
+/obj/machinery/alarm{
+ pixel_y = 26
+ },
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
+"VB" = (
+/obj/structure/extinguisher_cabinet{
+ pixel_y = -30
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"WU" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/obj/structure/table/bench/padded,
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"WY" = (
+/obj/random/junk,
+/obj/random/junk,
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
+"Xo" = (
+/obj/machinery/vending/snlvend{
+ dir = 8
+ },
+/turf/simulated/floor/holofloor/tiled/dark,
+/area/tether/midpoint)
+"XO" = (
+/obj/effect/floor_decal/borderfloorblack,
+/obj/structure/disposalpipe/segment,
+/obj/machinery/power/apc{
+ dir = 8;
+ name = "west bump";
+ pixel_x = -28
+ },
+/obj/structure/cable{
+ d2 = 4;
+ icon_state = "0-4"
+ },
+/turf/simulated/floor/holofloor/tiled/dark,
+/area/tether/midpoint)
+"YB" = (
+/obj/structure/table/woodentable,
+/obj/structure/flora/pottedplant/smallcactus{
+ pixel_x = 0;
+ pixel_y = 8
+ },
+/turf/simulated/floor/wood,
+/area/tether/midpoint)
+"Zd" = (
+/obj/structure/closet,
+/obj/random/plushie,
+/turf/simulated/floor/plating,
+/area/maintenance/tether_midpoint)
(1,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(2,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(3,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(4,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(5,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(6,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(7,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(8,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(9,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(10,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(11,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(12,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(13,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(14,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(15,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(16,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(17,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(18,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(19,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(20,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(21,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(22,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(23,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(24,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(25,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(26,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(27,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(28,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(29,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(30,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(31,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(32,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(33,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(34,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(35,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(36,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(37,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(38,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(39,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(40,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(41,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(42,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(43,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(44,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(45,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(46,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(47,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(48,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(49,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(50,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(51,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(52,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(53,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(54,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+NJ
+Qc
+Qc
+PF
+Qc
+Qc
+Qc
+Qc
+PF
+Qc
+Qc
+zP
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(55,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+NJ
+Qc
+cH
+pK
+pK
+zi
+pK
+pK
+pK
+pK
+KN
+pK
+pK
+kn
+Qc
+zP
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(56,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+PF
+PF
+fI
+pK
+pK
+ag
+ag
+pK
+ag
+ag
+pK
+ag
+ag
+pK
+pK
+Iq
+PF
+PF
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(57,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+NJ
+PF
+Jl
+pK
+pK
+pK
+dc
+dc
+pK
+dc
+hk
+pK
+dc
+dc
+pK
+Hy
+Nt
+GU
+PF
+zP
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(58,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+Et
+zi
+pK
+pK
+pK
+pK
+dU
+dU
+pK
+dU
+dU
+pK
+dU
+dU
+pK
+Or
+pK
+pK
+zi
+Et
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(59,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+NJ
+gq
+pK
+pK
+pK
+pK
+pK
+pK
+pK
+pK
+pK
+pK
+pK
+Pz
+pK
+pK
+Or
+pK
+pK
+pK
+nD
+zP
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(60,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+Et
+pK
+pK
+pK
+pK
+pK
+PF
+PF
+pO
+Xo
+sw
+PF
+PF
+PF
+PF
+PF
+Or
+pK
+pK
+pK
+pK
+Et
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(61,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-b
-b
-b
-b
-b
-b
-b
-b
-b
-b
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+Et
+tA
+tA
+tA
+pK
+pK
+Dz
+Dz
+Dz
+Dz
+Dz
+Dz
+oN
+yi
+ML
+Dz
+uA
+pK
+tA
+tA
+tA
+Et
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(62,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-b
-c
-h
-j
-t
-z
-B
-B
-B
-b
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+PF
+uC
+vh
+dc
+pK
+Iq
+Dz
+Ui
+HK
+cB
+Oq
+mz
+pM
+pM
+pM
+Dz
+wM
+pK
+dc
+YB
+vt
+PF
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(63,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-b
-e
-i
-s
-x
-A
-C
-D
-B
-b
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+Et
+tA
+tA
+tA
+pK
+pK
+Dz
+Qv
+xl
+no
+jE
+Ha
+gV
+Ls
+pM
+Dz
+Or
+pK
+tA
+tA
+tA
+Et
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(64,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-b
-e
-d
-d
-d
-d
-d
-d
-B
-b
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+Et
+pK
+pK
+pK
+pK
+pK
+Dz
+Qv
+Hs
+Hs
+Hs
+Hs
+Hs
+Hs
+WY
+Dz
+iK
+pK
+pK
+pK
+pK
+Et
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(65,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-b
-e
-d
-f
-f
-f
-f
-d
-G
-b
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+Et
+pK
+pK
+pK
+pK
+pK
+Dz
+Qv
+Hs
+Gl
+Gl
+Gl
+Gl
+Hs
+oP
+Dz
+Kh
+pK
+pK
+pK
+pK
+Et
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(66,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-b
-e
-d
-f
-f
-f
-f
-d
-B
-b
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+Et
+tA
+tA
+tA
+pK
+pK
+Dz
+Qv
+Hs
+Gl
+Gl
+Gl
+Gl
+Hs
+pM
+Dz
+hi
+pK
+tA
+tA
+tA
+Et
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(67,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-b
-e
-d
-f
-f
-f
-f
-d
-B
-b
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+PF
+hp
+YB
+dc
+pK
+Iq
+Dz
+Qv
+Hs
+Gl
+Gl
+Gl
+Gl
+Hs
+pM
+Dz
+wM
+pK
+dc
+vh
+zZ
+PF
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(68,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-b
-e
-d
-f
-f
-f
-f
-d
-I
-b
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+Et
+tA
+tA
+tA
+pK
+VB
+Dz
+Qv
+Hs
+Gl
+Gl
+Gl
+Gl
+Hs
+Zd
+Dz
+Or
+pK
+tA
+tA
+tA
+Et
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(69,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-b
-H
-d
-d
-f
-f
-d
-d
-b
-b
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+Et
+pK
+pK
+pK
+pK
+pK
+Dz
+zG
+Hs
+Hs
+Gl
+Gl
+Hs
+Hs
+Dz
+Dz
+Or
+pK
+pK
+pK
+pK
+Et
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(70,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-y
-Y
-V
-l
-r
-r
-o
-S
-X
-y
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+nD
+zP
+pK
+Hy
+Nt
+Nt
+Nt
+EI
+oz
+it
+jt
+jt
+cR
+JB
+XO
+Nt
+KH
+pK
+pK
+pK
+NJ
+gq
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(71,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-y
-y
-m
-Z
-K
-K
-K
-K
-O
-P
-y
-y
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+Et
+Pz
+Or
+pK
+pK
+pK
+Tz
+It
+tB
+tB
+tB
+tB
+tn
+sR
+pK
+pK
+pK
+pK
+Pz
+Et
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(72,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-g
-k
-q
-q
-F
-F
-F
-F
-q
-E
-p
-g
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+nD
+PF
+RZ
+pK
+pK
+pK
+pK
+pK
+pK
+pK
+pK
+pK
+pK
+pK
+pK
+pK
+pK
+Jl
+PF
+gq
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(73,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-g
-U
-q
-q
-T
-n
-n
-R
-q
-q
-U
-g
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+PF
+PF
+fI
+pK
+pK
+pK
+tA
+tA
+tA
+tA
+tA
+tA
+pK
+pK
+pK
+Iq
+PF
+PF
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(74,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-g
-J
-q
-q
-F
-F
-F
-F
-q
-q
-N
-g
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+nD
+Qc
+zP
+pK
+pK
+Sm
+dc
+dc
+dc
+dc
+WU
+pK
+pK
+NJ
+Qc
+gq
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(75,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-g
-L
-q
-q
-q
-q
-q
-q
-q
-q
-L
-g
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+nD
+Qc
+Qc
+PF
+Qc
+Qc
+Qc
+Qc
+PF
+Qc
+Qc
+gq
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(76,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-v
-w
-w
-w
-w
-w
-w
-w
-w
-w
-w
-M
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(77,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(78,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(79,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(80,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(81,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(82,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(83,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(84,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(85,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(86,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(87,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(88,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(89,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(90,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(91,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(92,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(93,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(94,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(95,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(96,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(97,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-Q
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+lL
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(98,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(99,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(100,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(101,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(102,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(103,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(104,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(105,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(106,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(107,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(108,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(109,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(110,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(111,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(112,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(113,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(114,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(115,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(116,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(117,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(118,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(119,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(120,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(121,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(122,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(123,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(124,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(125,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(126,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(127,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(128,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(129,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(130,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(131,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(132,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(133,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(134,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(135,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(136,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(137,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(138,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(139,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
(140,1,1) = {"
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
-u
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
+kz
"}
diff --git a/maps/tether/tether-05-station1.dmm b/maps/tether/tether-05-station1.dmm
index 3a943c67b1..4f783fdf02 100644
--- a/maps/tether/tether-05-station1.dmm
+++ b/maps/tether/tether-05-station1.dmm
@@ -2401,6 +2401,7 @@
"afk" = (
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -32
},
/obj/structure/cable/green,
@@ -3880,6 +3881,7 @@
/obj/machinery/power/apc{
dir = 4;
name = "east bump";
+ nightshift_setting = 2;
pixel_x = 28
},
/obj/structure/cable/green,
@@ -4559,6 +4561,7 @@
},
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -32
},
/turf/simulated/floor/tiled,
@@ -4748,6 +4751,7 @@
/obj/machinery/power/apc{
dir = 8;
name = "west bump";
+ nightshift_setting = 2;
pixel_x = -28
},
/obj/structure/cable/green{
@@ -6812,6 +6816,7 @@
},
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -32
},
/obj/structure/cable/green,
@@ -8315,6 +8320,7 @@
/obj/machinery/power/apc{
dir = 8;
name = "west bump";
+ nightshift_setting = 2;
pixel_x = -28
},
/obj/structure/cable/green{
@@ -10143,6 +10149,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 24
},
/obj/structure/cable/green{
@@ -14342,6 +14349,7 @@
/obj/structure/cable/green,
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -32
},
/obj/effect/floor_decal/borderfloor,
@@ -14649,6 +14657,7 @@
/obj/machinery/power/apc{
dir = 8;
name = "west bump";
+ nightshift_setting = 2;
pixel_x = -28
},
/obj/machinery/atmospherics/unary/vent_scrubber/on{
@@ -14715,8 +14724,7 @@
icon_state = "1-4"
},
/obj/machinery/atmospherics/pipe/simple/hidden{
- dir = 10;
- icon_state = "intact"
+ dir = 10
},
/turf/simulated/floor/tiled,
/area/tcommsat/computer)
@@ -14916,6 +14924,7 @@
/obj/machinery/power/apc{
dir = 8;
name = "west bump";
+ nightshift_setting = 2;
pixel_x = -28
},
/obj/structure/cable/green{
@@ -15172,8 +15181,7 @@
/area/tcommsat/chamber)
"bYk" = (
/obj/machinery/atmospherics/pipe/simple/hidden{
- dir = 10;
- icon_state = "intact"
+ dir = 10
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 8
@@ -16478,6 +16486,7 @@
/obj/machinery/power/apc{
dir = 8;
name = "west bump";
+ nightshift_setting = 2;
pixel_x = -28
},
/obj/structure/cable/green{
@@ -18970,8 +18979,7 @@
dir = 5
},
/obj/machinery/shower{
- dir = 1;
- icon_state = "shower"
+ dir = 1
},
/obj/structure/curtain/open/shower,
/obj/item/weapon/soap/nanotrasen,
@@ -19609,8 +19617,7 @@
icon_state = "2-4"
},
/obj/machinery/atmospherics/pipe/simple/hidden{
- dir = 10;
- icon_state = "intact"
+ dir = 10
},
/turf/simulated/floor/tiled/dark,
/area/tcommsat/entrance{
@@ -19680,6 +19687,7 @@
},
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -32
},
/obj/structure/cable/green,
@@ -22707,7 +22715,6 @@
dir = 4
},
/obj/machinery/embedded_controller/radio/simple_docking_controller{
- dir = 2;
frequency = 1380;
id_tag = "securiship_bay";
pixel_x = -22;
@@ -23995,8 +24002,7 @@
/area/tether/exploration/crew)
"kKj" = (
/obj/machinery/atmospherics/pipe/simple/hidden/aux{
- dir = 6;
- icon_state = "intact-aux"
+ dir = 6
},
/turf/simulated/wall/rshull,
/area/shuttle/securiship/general)
@@ -25662,8 +25668,7 @@
/area/tether/exploration/equipment)
"mbN" = (
/obj/machinery/computer/ship/engines{
- dir = 4;
- icon_state = "computer"
+ dir = 4
},
/turf/simulated/floor/tiled/eris/dark/techfloor_grid,
/area/shuttle/securiship/cockpit)
@@ -25733,11 +25738,9 @@
/area/tether/exploration/equipment)
"mgU" = (
/obj/structure/bed/chair/bay/chair/padded/beige{
- dir = 1;
- icon_state = "bay_chair_preview"
+ dir = 1
},
/obj/machinery/button/remote/blast_door{
- dir = 2;
id = "securiship blast";
name = "Shuttle Blast Doors";
pixel_x = -28;
@@ -25748,8 +25751,7 @@
/area/shuttle/securiship/cockpit)
"mim" = (
/obj/machinery/computer/ship/sensors{
- dir = 8;
- icon_state = "computer"
+ dir = 8
},
/turf/simulated/floor/tiled/eris/dark/techfloor_grid,
/area/shuttle/securiship/cockpit)
@@ -26055,9 +26057,7 @@
},
/obj/effect/floor_decal/borderfloor,
/obj/effect/floor_decal/corner/lightgrey/border,
-/obj/effect/floor_decal/borderfloor/corner2{
- dir = 2
- },
+/obj/effect/floor_decal/borderfloor/corner2,
/obj/effect/floor_decal/corner/lightgrey/bordercorner2,
/obj/effect/floor_decal/steeldecal/steel_decals7{
dir = 8
@@ -26379,8 +26379,7 @@
/obj/machinery/atmospherics/unary/vent_pump/high_volume/aux,
/obj/effect/map_helper/airlock/atmos/chamber_pump,
/obj/machinery/light/small{
- dir = 8;
- pixel_x = 0
+ dir = 8
},
/turf/simulated/floor/tiled/eris/techmaint_cargo,
/area/shuttle/securiship/general)
@@ -26474,7 +26473,6 @@
/obj/effect/map_helper/airlock/door/ext_door,
/obj/machinery/airlock_sensor/airlock_exterior/shuttle{
dir = 4;
- pixel_x = 0;
pixel_y = -28
},
/obj/effect/map_helper/airlock/sensor/ext_sensor,
@@ -26892,8 +26890,7 @@
dir = 8
},
/obj/structure/bed/chair/bay/chair/padded/beige{
- dir = 4;
- icon_state = "bay_chair_preview"
+ dir = 4
},
/turf/simulated/floor/tiled/eris/steel/gray_perforated,
/area/shuttle/securiship/general)
@@ -27182,9 +27179,7 @@
/area/tether/exploration/hallway)
"nym" = (
/obj/machinery/light{
- dir = 4;
- icon_state = "tube1";
- pixel_x = 0
+ dir = 4
},
/obj/structure/cable/cyan{
d1 = 1;
@@ -27198,6 +27193,7 @@
/obj/structure/cable/green,
/obj/machinery/power/apc{
name = "south bump";
+ nightshift_setting = 2;
pixel_y = -32
},
/obj/structure/table/rack,
@@ -27211,9 +27207,7 @@
/obj/effect/floor_decal/borderfloor,
/obj/effect/floor_decal/corner/brown/border,
/obj/item/device/suit_cooling_unit,
-/obj/effect/floor_decal/borderfloor/corner2{
- dir = 2
- },
+/obj/effect/floor_decal/borderfloor/corner2,
/obj/effect/floor_decal/corner/brown/bordercorner2,
/turf/simulated/floor/tiled,
/area/quartermaster/belterdock/gear)
@@ -27512,8 +27506,7 @@
/area/quartermaster/belterdock)
"nOT" = (
/obj/machinery/atmospherics/pipe/simple/hidden/fuel{
- dir = 10;
- icon_state = "intact-fuel"
+ dir = 10
},
/turf/simulated/wall/rshull,
/area/shuttle/securiship/engines)
@@ -27596,8 +27589,7 @@
/area/shuttle/securiship/general)
"nUp" = (
/obj/structure/bed/chair/bay/chair/padded/beige{
- dir = 4;
- icon_state = "bay_chair_preview"
+ dir = 4
},
/turf/simulated/floor/tiled/eris/steel/gray_perforated,
/area/shuttle/securiship/general)
@@ -27621,8 +27613,7 @@
icon_state = "1-8"
},
/obj/machinery/atmospherics/pipe/simple/hidden/aux{
- dir = 5;
- icon_state = "intact-aux"
+ dir = 5
},
/turf/simulated/floor/tiled/eris/steel/gray_perforated,
/area/shuttle/securiship/general)
@@ -27654,8 +27645,7 @@
})
"nXm" = (
/obj/machinery/atmospherics/pipe/simple/hidden/aux{
- dir = 8;
- icon_state = "intact-aux"
+ dir = 8
},
/obj/machinery/airlock_sensor{
pixel_y = 28
@@ -27687,8 +27677,7 @@
icon_state = "1-2"
},
/obj/machinery/atmospherics/pipe/simple/hidden/aux{
- dir = 9;
- icon_state = "intact-aux"
+ dir = 9
},
/turf/simulated/floor/tiled/eris/steel/gray_perforated,
/area/shuttle/securiship/general)
@@ -28005,7 +27994,6 @@
/obj/machinery/alarm{
breach_detection = 0;
dir = 8;
- icon_state = "alarm0";
pixel_x = 25;
rcon_setting = 3;
report_danger_level = 0
@@ -28014,8 +28002,7 @@
/area/shuttle/securiship/general)
"orK" = (
/obj/structure/bed/chair/bay/chair{
- dir = 1;
- icon_state = "bay_chair_preview"
+ dir = 1
},
/turf/simulated/floor/tiled/eris/dark/violetcorener,
/area/shuttle/securiship/general)
@@ -28107,8 +28094,7 @@
dir = 4
},
/obj/structure/bed/chair/bay/chair{
- dir = 1;
- icon_state = "bay_chair_preview"
+ dir = 1
},
/turf/simulated/floor/tiled/eris/dark/violetcorener,
/area/shuttle/securiship/general)
@@ -28126,8 +28112,7 @@
/area/storage/tech)
"owZ" = (
/obj/structure/bed/chair/bay/chair/padded/beige{
- dir = 4;
- icon_state = "bay_chair_preview"
+ dir = 4
},
/turf/simulated/floor/tiled/eris/dark/techfloor,
/area/shuttle/securiship/general)
@@ -29151,7 +29136,6 @@
alarms_hidden = 1;
dir = 1;
name = "north bump";
- pixel_x = 0;
pixel_y = 28
},
/turf/simulated/floor/tiled/eris/dark/techfloor_grid,
@@ -29228,8 +29212,7 @@
icon_state = "1-2"
},
/obj/machinery/atmospherics/pipe/simple/hidden/fuel{
- dir = 6;
- icon_state = "intact-fuel"
+ dir = 6
},
/turf/simulated/floor/tiled/eris/dark/techfloor_grid,
/area/shuttle/securiship/engines)
@@ -29248,8 +29231,7 @@
/area/tether/station/dock_two)
"qhy" = (
/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{
- dir = 1;
- icon_state = "map-fuel"
+ dir = 1
},
/turf/simulated/floor/tiled/eris/dark/techfloor_grid,
/area/shuttle/securiship/engines)
@@ -29260,8 +29242,7 @@
/area/maintenance/cargo)
"qiQ" = (
/obj/machinery/atmospherics/portables_connector/fuel{
- dir = 8;
- icon_state = "map_connector-fuel"
+ dir = 8
},
/obj/machinery/portable_atmospherics/canister/phoron,
/obj/effect/floor_decal/industrial/outline/red,
@@ -29352,6 +29333,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 24
},
/obj/machinery/light_switch{
@@ -29597,8 +29579,7 @@
/area/shuttle/large_escape_pod1)
"qvS" = (
/obj/machinery/power/terminal{
- dir = 1;
- icon_state = "term"
+ dir = 1
},
/obj/structure/cable/green{
d2 = 4;
@@ -29758,12 +29739,10 @@
/area/hallway/station/docks)
"qFq" = (
/obj/machinery/atmospherics/pipe/simple/hidden/fuel{
- dir = 5;
- icon_state = "intact-fuel"
+ dir = 5
},
/obj/machinery/alarm{
dir = 1;
- icon_state = "alarm0";
pixel_y = -22
},
/turf/simulated/floor/tiled/eris/dark/techfloor_grid,
@@ -30290,8 +30269,7 @@
/area/quartermaster/office)
"rlP" = (
/obj/machinery/atmospherics/pipe/simple/hidden/fuel{
- dir = 6;
- icon_state = "intact-fuel"
+ dir = 6
},
/turf/simulated/wall/rshull,
/area/shuttle/securiship/engines)
@@ -30339,8 +30317,7 @@
/area/tether/station/dock_one)
"rqZ" = (
/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{
- dir = 1;
- icon_state = "map-fuel"
+ dir = 1
},
/turf/simulated/wall/rshull,
/area/shuttle/securiship/engines)
@@ -31017,8 +30994,7 @@
/area/quartermaster/qm)
"sdi" = (
/obj/machinery/atmospherics/pipe/simple/hidden/fuel{
- dir = 8;
- icon_state = "intact-fuel"
+ dir = 8
},
/turf/simulated/wall/rshull,
/area/shuttle/securiship/engines)
@@ -34006,6 +33982,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 24
},
/obj/structure/cable/green{
@@ -34978,6 +34955,7 @@
/obj/machinery/power/apc{
dir = 1;
name = "north bump";
+ nightshift_setting = 2;
pixel_y = 28
},
/obj/random/tech_supply,
diff --git a/maps/tether/tether_defines.dm b/maps/tether/tether_defines.dm
index 9c9b6d90a5..07a3646b1d 100644
--- a/maps/tether/tether_defines.dm
+++ b/maps/tether/tether_defines.dm
@@ -36,7 +36,11 @@
"tether_night" = 50,
"tether2_night" = 50,
"tether2_dog" = 1,
- "tether2_love" = 1
+ "tether2_love" = 1,
+ "tether_future" = 10,
+ "logo1" = 20,
+ "logo2" = 20,
+ "gateway" = 5
))
if(choice)
lobby_screens = list(choice)
@@ -160,9 +164,14 @@
)
lateload_single_pick = list(
- //list("Carp Farm"),
- //list("Snow Field"),
- //list("Listening Post")
+ list("Carp Farm"),
+ list("Snow Field"),
+ list("Listening Post"),
+ list("Honleth Highlands A"),
+ list("Honleth Highlands B"),
+ list("Arynthi Lake Underground A","Arynthi Lake A"),
+ list("Arynthi Lake Underground B","Arynthi Lake B"),
+ list("Eggnog Town Underground","Eggnog Town")
)
ai_shell_restricted = TRUE
diff --git a/maps/tether/tether_jobs.dm b/maps/tether/tether_jobs.dm
index 7c671ac58a..83027da7c1 100644
--- a/maps/tether/tether_jobs.dm
+++ b/maps/tether/tether_jobs.dm
@@ -132,6 +132,7 @@
/datum/alt_title/talon_security
title = "Talon Security"
+//////////////////////TALON OUTFITS//////////////////////
/decl/hierarchy/outfit/job/talon_captain
name = OUTFIT_JOB_NAME("Talon Captain")
@@ -142,11 +143,11 @@
l_ear = /obj/item/device/radio/headset/talon
glasses = /obj/item/clothing/glasses/sunglasses
- uniform = /obj/item/clothing/under/rank/captain
+ uniform = /obj/item/clothing/under/rank/talon/command
shoes = /obj/item/clothing/shoes/brown
- backpack = /obj/item/weapon/storage/backpack/captain
- satchel_one = /obj/item/weapon/storage/backpack/satchel/cap
- messenger_bag = /obj/item/weapon/storage/backpack/messenger/com
+ backpack = /obj/item/weapon/storage/backpack/talon
+ satchel_one = /obj/item/weapon/storage/backpack/satchel/talon
+ messenger_bag = /obj/item/weapon/storage/backpack/messenger/talon
/decl/hierarchy/outfit/job/talon_pilot
name = OUTFIT_JOB_NAME("Talon Pilot")
@@ -158,11 +159,15 @@
l_ear = /obj/item/device/radio/headset/talon
shoes = /obj/item/clothing/shoes/black
- uniform = /obj/item/clothing/under/rank/pilot1/no_webbing
+ head = /obj/item/clothing/head/pilot_vr/talon
+ uniform = /obj/item/clothing/under/rank/talon/pilot
suit = /obj/item/clothing/suit/storage/toggle/bomber/pilot
gloves = /obj/item/clothing/gloves/fingerless
glasses = /obj/item/clothing/glasses/fakesunglasses/aviator
uniform_accessories = list(/obj/item/clothing/accessory/storage/webbing/pilot1 = 1)
+ backpack = /obj/item/weapon/storage/backpack/talon
+ satchel_one = /obj/item/weapon/storage/backpack/satchel/talon
+ messenger_bag = /obj/item/weapon/storage/backpack/messenger/talon
/decl/hierarchy/outfit/job/talon_doctor
name = OUTFIT_JOB_NAME("Talon Doctor")
@@ -177,10 +182,13 @@
backpack = /obj/item/weapon/storage/backpack/medic
satchel_one = /obj/item/weapon/storage/backpack/satchel/med
messenger_bag = /obj/item/weapon/storage/backpack/messenger/med
- uniform = /obj/item/clothing/under/rank/medical
+ uniform = /obj/item/clothing/under/rank/talon/proper
suit = /obj/item/clothing/suit/storage/toggle/labcoat
l_hand = /obj/item/weapon/storage/firstaid/regular
r_pocket = /obj/item/device/flashlight/pen
+ backpack = /obj/item/weapon/storage/backpack/talon
+ satchel_one = /obj/item/weapon/storage/backpack/satchel/talon
+ messenger_bag = /obj/item/weapon/storage/backpack/messenger/talon
/decl/hierarchy/outfit/job/talon_security
name = OUTFIT_JOB_NAME("Talon Security")
@@ -197,8 +205,11 @@
backpack = /obj/item/weapon/storage/backpack/security
satchel_one = /obj/item/weapon/storage/backpack/satchel/sec
messenger_bag = /obj/item/weapon/storage/backpack/messenger/sec
- uniform = /obj/item/clothing/under/rank/security
+ uniform = /obj/item/clothing/under/rank/talon/security
l_pocket = /obj/item/device/flash
+ backpack = /obj/item/weapon/storage/backpack/talon
+ satchel_one = /obj/item/weapon/storage/backpack/satchel/talon
+ messenger_bag = /obj/item/weapon/storage/backpack/messenger/talon
/decl/hierarchy/outfit/job/talon_engineer
name = OUTFIT_JOB_NAME("Talon Engineer")
@@ -216,5 +227,9 @@
backpack = /obj/item/weapon/storage/backpack/industrial
satchel_one = /obj/item/weapon/storage/backpack/satchel/eng
messenger_bag = /obj/item/weapon/storage/backpack/messenger/engi
- uniform = /obj/item/clothing/under/rank/atmospheric_technician
+ uniform = /obj/item/clothing/under/rank/talon/basic
belt = /obj/item/weapon/storage/belt/utility/atmostech
+ backpack = /obj/item/weapon/storage/backpack/talon
+ satchel_one = /obj/item/weapon/storage/backpack/satchel/talon
+ messenger_bag = /obj/item/weapon/storage/backpack/messenger/talon
+
diff --git a/maps/~map_system/maps.dm b/maps/~map_system/maps.dm
index 477638d090..90bb402ff5 100644
--- a/maps/~map_system/maps.dm
+++ b/maps/~map_system/maps.dm
@@ -144,6 +144,8 @@ var/list/all_maps = list()
mappable_levels = station_levels.Copy()
if(!persist_levels?.len)
persist_levels = station_levels.Copy()
+ if(!mappable_levels?.len)
+ mappable_levels = station_levels.Copy()
if(!allowed_jobs || !allowed_jobs.len)
allowed_jobs = subtypesof(/datum/job)
if(default_skybox) //Type was specified
diff --git a/sound/effects/swooshygate.ogg b/sound/effects/swooshygate.ogg
new file mode 100644
index 0000000000..0709030a3f
Binary files /dev/null and b/sound/effects/swooshygate.ogg differ
diff --git a/tgui/.eslintignore b/tgui/.eslintignore
index 010416b9e8..a59187b933 100644
--- a/tgui/.eslintignore
+++ b/tgui/.eslintignore
@@ -1,6 +1,6 @@
+/.yarn/**
/**/node_modules
/**/*.bundle.*
/**/*.chunk.*
/**/*.hot-update.*
/packages/inferno/**
-/packages/tgui/public/shim-*.js
diff --git a/tgui/.eslintrc-harder.yml b/tgui/.eslintrc-harder.yml
index eb06f5b33d..d466125967 100644
--- a/tgui/.eslintrc-harder.yml
+++ b/tgui/.eslintrc-harder.yml
@@ -1,14 +1,43 @@
rules:
## Enforce a maximum cyclomatic complexity allowed in a program
- complexity: [error, { max: 25 }]
+ # complexity: [warn, { max: 25 }]
## Enforce consistent brace style for blocks
- brace-style: [error, stroustrup, { allowSingleLine: false }]
+ # brace-style: [warn, stroustrup, { allowSingleLine: false }]
## Enforce the consistent use of either backticks, double, or single quotes
- quotes: [error, single, {
- avoidEscape: true,
- allowTemplateLiterals: true,
- }]
- react/jsx-closing-bracket-location: [error, {
- selfClosing: after-props,
- nonEmpty: after-props,
- }]
+ # quotes: [warn, single, {
+ # avoidEscape: true,
+ # allowTemplateLiterals: true,
+ # }]
+ # react/jsx-closing-bracket-location: [warn, {
+ # selfClosing: after-props,
+ # nonEmpty: after-props,
+ # }]
+ # react/display-name: warn
+
+ ## Radar
+ ## ------------------------------------------------------
+ # radar/cognitive-complexity: warn
+ radar/max-switch-cases: warn
+ radar/no-all-duplicated-branches: warn
+ radar/no-collapsible-if: warn
+ radar/no-collection-size-mischeck: warn
+ radar/no-duplicate-string: warn
+ radar/no-duplicated-branches: warn
+ radar/no-element-overwrite: warn
+ radar/no-extra-arguments: warn
+ radar/no-identical-conditions: warn
+ radar/no-identical-expressions: warn
+ radar/no-identical-functions: warn
+ radar/no-inverted-boolean-check: warn
+ radar/no-one-iteration-loop: warn
+ radar/no-redundant-boolean: warn
+ radar/no-redundant-jump: warn
+ radar/no-same-line-conditional: warn
+ radar/no-small-switch: warn
+ radar/no-unused-collection: warn
+ radar/no-use-of-empty-return-value: warn
+ radar/no-useless-catch: warn
+ radar/prefer-immediate-return: warn
+ radar/prefer-object-literal: warn
+ radar/prefer-single-boolean-return: warn
+ radar/prefer-while: warn
diff --git a/tgui/.eslintrc.yml b/tgui/.eslintrc.yml
index fe11b8a34c..f384182d80 100644
--- a/tgui/.eslintrc.yml
+++ b/tgui/.eslintrc.yml
@@ -1,6 +1,7 @@
-parser: babel-eslint
+root: true
+parser: '@typescript-eslint/parser'
parserOptions:
- ecmaVersion: 2019
+ ecmaVersion: 2020
sourceType: module
ecmaFeatures:
jsx: true
@@ -8,9 +9,8 @@ env:
es6: true
browser: true
node: true
-globals:
- Byond: readonly
plugins:
+ - radar
- react
settings:
react:
@@ -19,7 +19,6 @@ rules:
## Possible Errors
## ----------------------------------------
-
## Enforce “for” loop update clause moving the counter in the right
## direction.
# for-direction: error
@@ -114,7 +113,7 @@ rules:
## Require return statements to either always or never specify values
# consistent-return: error
## Enforce consistent brace style for all control statements
- curly: [error, all]
+ curly: [error, multi-line]
## Require default cases in switch statements
# default-case: error
## Enforce default parameters to be last
@@ -279,7 +278,8 @@ rules:
no-shadow-restricted-names: error
## Disallow the use of undeclared variables unless mentioned
## in /*global*/ comments
- no-undef: error
+ ## NOTE: Pointless when TypeScript can check for this
+ # no-undef: error
## Disallow initializing variables to undefined
no-undef-init: error
## Disallow the use of undefined as an identifier
@@ -369,11 +369,12 @@ rules:
# max-depth: error
## Enforce a maximum line length
max-len: [error, {
- code: 120, # Bump to 140 if this is still too in the way
+ code: 120,
## Ignore imports
ignorePattern: '^(import\s.+\sfrom\s|.*require\()',
ignoreUrls: true,
ignoreRegExpLiterals: true,
+ ignoreStrings: true,
}]
## Enforce a maximum number of lines per file
# max-lines: error
@@ -506,7 +507,7 @@ rules:
## Require braces around arrow function bodies
# arrow-body-style: error
## Require parentheses around arrow function arguments
- arrow-parens: [error, as-needed]
+ # arrow-parens: [error, as-needed]
## Enforce consistent spacing before and after the arrow in arrow functions
arrow-spacing: [error, { before: true, after: true }]
## Require super() calls in constructors
@@ -582,7 +583,7 @@ rules:
## Rule enforces consistent usage of destructuring assignment in component
# react/destructuring-assignment: [error, always, { ignoreClassFields: true }]
## Prevent missing displayName in a React component definition
- react/display-name: error
+ # react/display-name: error
## Forbid certain props on Components
# react/forbid-component-props: error
## Forbid certain props on DOM Nodes
@@ -683,11 +684,11 @@ rules:
## expressions.
# react/jsx-child-element-spacing: error
## Validate closing bracket location in JSX (fixable)
- react/jsx-closing-bracket-location: [error, {
- ## NOTE: Not really sure about enforcing this one
- selfClosing: false,
- nonEmpty: after-props,
- }]
+ # react/jsx-closing-bracket-location: [error, {
+ # ## NOTE: Not really sure about enforcing this one
+ # selfClosing: false,
+ # nonEmpty: after-props,
+ # }]
## Validate closing tag location in JSX (fixable)
react/jsx-closing-tag-location: error
## Enforce or disallow newlines inside of curly braces in JSX attributes and
diff --git a/tgui/.gitattributes b/tgui/.gitattributes
index 9382416e69..71550f35c1 100644
--- a/tgui/.gitattributes
+++ b/tgui/.gitattributes
@@ -17,3 +17,6 @@ bin/tgui text eol=lf
## Treat bundles as binary and ignore them during conflicts
*.bundle.* binary merge=tgui-merge-bundle
+*.chunk.* binary merge=tgui-merge-bundle
+.yarn/releases/**/* binary
+.yarn/plugins/**/* binary
diff --git a/tgui/.gitignore b/tgui/.gitignore
index 416ca3768d..56cb38b290 100644
--- a/tgui/.gitignore
+++ b/tgui/.gitignore
@@ -1,7 +1,20 @@
+## NPM garbage
node_modules
*.log
package-lock.json
-/packages/tgui/public/.tmp/**/*
-/packages/tgui/public/**/*.hot-update.*
-/packages/tgui/public/**/*.map
+## Yarn stuff
+/.pnp.*
+/.yarn/*
+!/.yarn/releases
+!/.yarn/plugins
+!/.yarn/sdks
+!/.yarn/versions
+!/.yarn/lock.yml
+
+## Build artifacts
+/public/.tmp/**/*
+
+## Previously ignored locations that are kept to avoid confusing git
+## while transitioning to a new project structure.
+/packages/tgui/public/**
diff --git a/tgui/.prettierrc.yml b/tgui/.prettierrc.yml
new file mode 100644
index 0000000000..b64bef0cd0
--- /dev/null
+++ b/tgui/.prettierrc.yml
@@ -0,0 +1,12 @@
+arrowParens: always
+bracketSpacing: true
+endOfLine: lf
+jsxBracketSameLine: true
+jsxSingleQuote: false
+printWidth: 120
+proseWrap: preserve
+quoteProps: preserve
+semi: true
+singleQuote: true
+tabWidth: 2
+trailingComma: es5
diff --git a/tgui/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs b/tgui/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
new file mode 100644
index 0000000000..e64e6dda16
--- /dev/null
+++ b/tgui/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
@@ -0,0 +1,77 @@
+/* eslint-disable */
+module.exports = {
+name: "@yarnpkg/plugin-interactive-tools",
+factory: function (require) {
+var plugin;plugin=(()=>{var __webpack_modules__={7560:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>K});function r(e,t,n,r){var i,o=arguments.length,u=o<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)u=Reflect.decorate(e,t,n,r);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(u=(o<3?i(u):o>3?i(t,n,u):i(t,n))||u);return o>3&&u&&Object.defineProperty(t,n,u),u}const i=require("@yarnpkg/cli"),o=require("@yarnpkg/core");var u=n(9245),a=n(7382);const l=(0,a.memo)(({active:e})=>{const t=(0,a.useMemo)(()=>e?"◉":"◯",[e]),n=(0,a.useMemo)(()=>e?"green":"yellow",[e]);return a.createElement(u.Text,{color:n},t)});function s({active:e},t,n){const{stdin:r}=(0,u.useStdin)(),i=(0,a.useCallback)((e,n)=>t(e,n),n);(0,a.useEffect)(()=>{if(e&&r)return r.on("keypress",i),()=>{r.off("keypress",i)}},[e,i,r])}var c;!function(e){e.BEFORE="before",e.AFTER="after"}(c||(c={}));const f=function(e,t,{active:n,minus:r,plus:i,set:o,loop:u=!0}){s({active:n},(n,a)=>{const l=t.indexOf(e);switch(a.name){case r:{const e=l-1;if(u)return void o(t[(t.length+e)%t.length]);if(e<0)return;o(t[e])}break;case i:{const e=l+1;if(u)return void o(t[e%t.length]);if(e>=t.length)return;o(t[e])}}},[t,e,i,o,u])},d=({active:e=!0,children:t=[],radius:n=10,size:r=1,loop:i=!0,onFocusRequest:o,willReachEnd:l})=>{const d=a.Children.map(t,e=>(e=>{if(null===e.key)throw new Error("Expected all children to have a key");return e.key})(e)),p=d[0],[h,v]=(0,a.useState)(p),m=d.indexOf(h);(0,a.useEffect)(()=>{d.includes(h)||v(p)},[t]),(0,a.useEffect)(()=>{l&&m>=d.length-2&&l()},[m]),function({active:e},t,n){s({active:e},(e,n)=>{"tab"===n.name&&(n.shift?t(c.BEFORE):t(c.AFTER))},n)}({active:e&&!!o},e=>{null==o||o(e)},[o]),f(h,d,{active:e,minus:"up",plus:"down",set:v,loop:i});let g=m-n,y=m+n;y>d.length&&(g-=y-d.length,y=d.length),g<0&&(y+=-g,g=0),y>=d.length&&(y=d.length-1);const _=[];for(let n=g;n<=y;++n){const i=d[n],o=e&&i===h;_.push(a.createElement(u.Box,{key:i,height:r},a.createElement(u.Box,{marginLeft:1,marginRight:1},a.createElement(u.Text,null,o?a.createElement(u.Text,{color:"cyan",bold:!0},">"):" ")),a.createElement(u.Box,null,a.cloneElement(t[n],{active:o}))))}return a.createElement(u.Box,{flexDirection:"column",width:"100%"},_)},p=require("readline"),h=a.createContext(null),v=({children:e})=>{const{stdin:t,setRawMode:n}=(0,u.useStdin)();(0,a.useEffect)(()=>{n&&n(!0),t&&(0,p.emitKeypressEvents)(t)},[t,n]);const[r,i]=(0,a.useState)(new Map),o=(0,a.useMemo)(()=>({getAll:()=>r,get:e=>r.get(e),set:(e,t)=>i(new Map([...r,[e,t]]))}),[r,i]);return a.createElement(h.Provider,{value:o,children:e})};function m(e,t){const n=(0,a.useContext)(h);if(null===n)throw new Error("Expected this hook to run with a ministore context attached");if(void 0===e)return n.getAll();const r=(0,a.useCallback)(t=>{n.set(e,t)},[e,n.set]);let i=n.get(e);return void 0===i&&(i=t),[i,r]}async function g(e,t){let n;const{waitUntilExit:r}=(0,u.render)(a.createElement(v,null,a.createElement(e,Object.assign({},t,{useSubmit:e=>{const{exit:t}=(0,u.useApp)();s({active:!0},(r,i)=>{"return"===i.name&&(n=e,t())},[t,e])}}))));return await r(),n}const y=require("clipanion");var _=n(7840),b=n(4410);const w={appId:"OFCNCOG2CU",apiKey:"6fe4476ee5a1832882e326b506d14126",indexName:"npm-search"},E=n.n(b)()(w.appId,w.apiKey).initIndex(w.indexName),D=async(e,t=0)=>await E.search(e,{analyticsTags:["yarn-plugin-interactive-tools"],attributesToRetrieve:["name","version","owner","repository","humanDownloadsLast30Days"],page:t,hitsPerPage:10}),S=["regular","dev","peer"];class C extends i.BaseCommand{async execute(){const e=await o.Configuration.find(this.context.cwd,this.context.plugins),t=()=>a.createElement(u.Box,{flexDirection:"row"},a.createElement(u.Box,{flexDirection:"column",width:48},a.createElement(u.Box,null,a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},""),"/",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to move between packages.")),a.createElement(u.Box,null,a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to select a package.")),a.createElement(u.Box,null,a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," again to change the target."))),a.createElement(u.Box,{flexDirection:"column"},a.createElement(u.Box,{marginLeft:1},a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to install the selected packages.")),a.createElement(u.Box,{marginLeft:1},a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to abort.")))),n=()=>a.createElement(a.Fragment,null,a.createElement(u.Box,{width:15},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Owner")),a.createElement(u.Box,{width:11},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Version")),a.createElement(u.Box,{width:10},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Downloads"))),r=()=>a.createElement(u.Box,{width:17},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Target")),i=({hit:t,active:n})=>{const[r,i]=m(t.name,null);s({active:n},(e,t)=>{if("space"!==t.name)return;if(!r)return void i(S[0]);const n=S.indexOf(r)+1;n===S.length?i(null):i(S[n])},[r,i]);const l=o.structUtils.parseIdent(t.name),c=o.structUtils.prettyIdent(e,l);return a.createElement(u.Box,null,a.createElement(u.Box,{width:45},a.createElement(u.Text,{bold:!0,wrap:"wrap"},c)),a.createElement(u.Box,{width:14,marginLeft:1},a.createElement(u.Text,{bold:!0,wrap:"truncate"},t.owner.name)),a.createElement(u.Box,{width:10,marginLeft:1},a.createElement(u.Text,{italic:!0,wrap:"truncate"},t.version)),a.createElement(u.Box,{width:16,marginLeft:1},a.createElement(u.Text,null,t.humanDownloadsLast30Days)))},c=({name:t,active:n})=>{const[r]=m(t,null),i=o.structUtils.parseIdent(t);return a.createElement(u.Box,null,a.createElement(u.Box,{width:47},a.createElement(u.Text,{bold:!0}," - ",o.structUtils.prettyIdent(e,i))),S.map(e=>a.createElement(u.Box,{key:e,width:14,marginLeft:1},a.createElement(u.Text,null," ",a.createElement(l,{active:r===e})," ",a.createElement(u.Text,{bold:!0},e)))))},f=()=>a.createElement(u.Box,{marginTop:1},a.createElement(u.Text,null,"Powered by Algolia.")),p=await g(({useSubmit:e})=>{const o=m();e(o);const l=Array.from(o.keys()).filter(e=>null!==o.get(e)),[s,p]=(0,a.useState)(""),[h,v]=(0,a.useState)(0),[g,y]=(0,a.useState)([]);return(0,a.useEffect)(()=>{s?(async()=>{v(0);const e=await D(s);e.query===s&&y(e.hits)})():y([])},[s]),a.createElement(u.Box,{flexDirection:"column"},a.createElement(t,null),a.createElement(u.Box,{flexDirection:"row",marginTop:1},a.createElement(u.Text,{bold:!0},"Search: "),a.createElement(u.Box,{width:41},a.createElement(_.ZP,{value:s,onChange:e=>{e.match(/\t| /)||p(e)},placeholder:"i.e. babel, webpack, react...",showCursor:!1})),a.createElement(n,null)),g.length?a.createElement(d,{radius:2,loop:!1,children:g.map(e=>a.createElement(i,{key:e.name,hit:e,active:!1})),willReachEnd:async()=>{const e=await D(s,h+1);e.query===s&&e.page-1===h&&(v(e.page),y([...g,...e.hits]))}}):a.createElement(u.Text,{color:"gray"},"Start typing..."),a.createElement(u.Box,{flexDirection:"row",marginTop:1},a.createElement(u.Box,{width:49},a.createElement(u.Text,{bold:!0},"Selected:")),a.createElement(r,null)),l.length?l.map(e=>a.createElement(c,{key:e,name:e,active:!1})):a.createElement(u.Text,{color:"gray"},"No selected packages..."),a.createElement(f,null))},{});if(void 0===p)return 1;const h=Array.from(p.keys()).filter(e=>"regular"===p.get(e)),v=Array.from(p.keys()).filter(e=>"dev"===p.get(e)),y=Array.from(p.keys()).filter(e=>"peer"===p.get(e));return h.length&&await this.cli.run(["add",...h]),v.length&&await this.cli.run(["add","--dev",...v]),y&&await this.cli.run(["add","--peer",...y]),0}}C.usage=y.Command.Usage({category:"Interactive commands",description:"open the search interface",details:"\n This command opens a fullscreen terminal interface where you can search for and install packages from the npm registry.\n ",examples:[["Open the search window","yarn search"]]}),r([y.Command.Path("search")],C.prototype,"execute",null);var k=n(5882),T=n.n(k);const x=({length:e,active:t})=>{if(0===e)return null;const n=e>1?" "+T().underline(" ".repeat(e-1)):" ";return a.createElement(u.Text,{dimColor:!t},n)},A=function({active:e,skewer:t,options:n,value:r,onChange:i,sizes:o=[]}){const s=n.map(({value:e})=>e),c=s.indexOf(r);return f(r,s,{active:e,minus:"left",plus:"right",set:i}),a.createElement(a.Fragment,null,n.map(({label:n},r)=>{const i=r===c,s=o[r]-1||0,f=n.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,""),d=Math.max(0,s-f.length-2);return a.createElement(u.Box,{key:n,width:s,marginLeft:1},a.createElement(u.Text,{wrap:"truncate"},a.createElement(l,{active:i})," ",n),t?a.createElement(x,{active:e,length:d}):null)}))},O=require("@yarnpkg/plugin-essentials");function P(){}function I(e,t,n,r,i){for(var o=0,u=t.length,a=0,l=0;oe.length?n:e})),s.value=e.join(f)}else s.value=e.join(n.slice(a,a+s.count));a+=s.count,s.added||(l+=s.count)}}var d=t[u-1];return u>1&&"string"==typeof d.value&&(d.added||d.removed)&&e.equals("",d.value)&&(t[u-2].value+=d.value,t.pop()),t}function N(e){return{newPos:e.newPos,components:e.components.slice(0)}}P.prototype={diff:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.callback;"function"==typeof n&&(r=n,n={}),this.options=n;var i=this;function o(e){return r?(setTimeout((function(){r(void 0,e)}),0),!0):e}e=this.castInput(e),t=this.castInput(t),e=this.removeEmpty(this.tokenize(e));var u=(t=this.removeEmpty(this.tokenize(t))).length,a=e.length,l=1,s=u+a,c=[{newPos:-1,components:[]}],f=this.extractCommon(c[0],t,e,0);if(c[0].newPos+1>=u&&f+1>=a)return o([{value:this.join(t),count:t.length}]);function d(){for(var n=-1*l;n<=l;n+=2){var r=void 0,s=c[n-1],f=c[n+1],d=(f?f.newPos:0)-n;s&&(c[n-1]=void 0);var p=s&&s.newPos+1=u&&d+1>=a)return o(I(i,r.components,t,e,i.useLongestToken));c[n]=r}else c[n]=void 0}l++}if(r)!function e(){setTimeout((function(){if(l>s)return r();d()||e()}),0)}();else for(;l<=s;){var p=d();if(p)return p}},pushComponent:function(e,t,n){var r=e[e.length-1];r&&r.added===t&&r.removed===n?e[e.length-1]={count:r.count+1,added:t,removed:n}:e.push({count:1,added:t,removed:n})},extractCommon:function(e,t,n,r){for(var i=t.length,o=n.length,u=e.newPos,a=u-r,l=0;u+1=?)?)([0-9]+)(\.[0-9]+)(\.[0-9]+)((?:-\S+)?)$/;class Y extends i.BaseCommand{async execute(){const e=await o.Configuration.find(this.context.cwd,this.context.plugins),{project:t,workspace:n}=await o.Project.find(e,this.context.cwd),r=await o.Cache.find(e);if(!n)throw new i.WorkspaceRequiredError(t.cwd,this.context.cwd);const l=(t,n)=>{const r=(i=t,u=n,a=M(a,{ignoreWhitespace:!0}),L.diff(i,u,a));var i,u,a;let l="";for(const t of r)t.added?l+=o.formatUtils.pretty(e,t.value,"green"):t.removed||(l+=t.value);return l},s=(t,n)=>{if(t===n)return n;const r=o.structUtils.parseRange(t),i=o.structUtils.parseRange(n),u=r.selector.match($),a=i.selector.match($);if(!u||!a)return l(t,n);const s=["gray","red","yellow","green","magenta"];let c=null,f="";for(let t=1;t{const u=await O.suggestUtils.fetchDescriptorFrom(e,o,{project:t,cache:r,preserveModifier:i,workspace:n});return null!==u?u.range:e.range},f=()=>a.createElement(u.Box,{flexDirection:"row"},a.createElement(u.Box,{flexDirection:"column",width:49},a.createElement(u.Box,{marginLeft:1},a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},""),"/",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to select packages.")),a.createElement(u.Box,{marginLeft:1},a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},""),"/",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to select versions."))),a.createElement(u.Box,{flexDirection:"column"},a.createElement(u.Box,{marginLeft:1},a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to install.")),a.createElement(u.Box,{marginLeft:1},a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to abort.")))),p=()=>a.createElement(u.Box,{flexDirection:"row",paddingTop:1,paddingBottom:1},a.createElement(u.Box,{width:50},a.createElement(u.Text,{bold:!0},a.createElement(u.Text,{color:"greenBright"},"?")," Pick the packages you want to upgrade.")),a.createElement(u.Box,{width:17},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Current")),a.createElement(u.Box,{width:17},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Range")),a.createElement(u.Box,{width:17},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Latest"))),h=({active:t,descriptor:n,suggestions:r})=>{const[i,l]=m(n.descriptorHash,null),s=o.structUtils.stringifyIdent(n),c=Math.max(0,45-s.length);return a.createElement(a.Fragment,null,a.createElement(u.Box,null,a.createElement(u.Box,{width:45},a.createElement(u.Text,{bold:!0},o.structUtils.prettyIdent(e,n)),a.createElement(x,{active:t,length:c})),null!==r?a.createElement(A,{active:t,options:r,value:i,skewer:!0,onChange:l,sizes:[17,17,17]}):a.createElement(u.Box,{marginLeft:2},a.createElement(u.Text,{color:"gray"},"Fetching suggestions..."))))},v=({dependencies:e})=>{const[t,n]=(0,a.useState)(null),r=(0,a.useRef)(!0);return(0,a.useEffect)(()=>()=>{r.current=!1}),(0,a.useEffect)(()=>{Promise.all(e.map(e=>(async e=>{const t=G().valid(e.range)?"^"+e.range:e.range,[n,r]=await Promise.all([c(e,e.range,t).catch(()=>null),c(e,e.range,"latest").catch(()=>null)]),i=[{value:null,label:e.range}];return n&&n!==e.range&&i.push({value:n,label:s(e.range,n)}),r&&r!==n&&r!==e.range&&i.push({value:r,label:s(e.range,r)}),i})(e))).then(t=>{const i=e.map((e,n)=>[e,t[n]]).filter(([e,t])=>t.length>1);r.current&&n(i)})},[]),t?t.length?a.createElement(d,{radius:10,children:t.map(([e,t])=>a.createElement(h,{key:e.descriptorHash,active:!1,descriptor:e,suggestions:t}))}):a.createElement(u.Text,null,"No upgrades found"):a.createElement(u.Text,null,"Fetching suggestions...")},y=await g(({useSubmit:e})=>{e(m());const n=new Map;for(const e of t.workspaces)for(const r of["dependencies","devDependencies"])for(const i of e.manifest[r].values())null===t.tryWorkspaceByDescriptor(i)&&n.set(i.descriptorHash,i);const r=o.miscUtils.sortMap(n.values(),e=>o.structUtils.stringifyDescriptor(e));return a.createElement(u.Box,{flexDirection:"column"},a.createElement(f,null),a.createElement(p,null),a.createElement(v,{dependencies:r}))},{});if(void 0===y)return 1;let _=!1;for(const e of t.workspaces)for(const t of["dependencies","devDependencies"]){const n=e.manifest[t];for(const e of n.values()){const t=y.get(e.descriptorHash);null!=t&&(n.set(e.identHash,o.structUtils.makeDescriptor(e,t)),_=!0)}}if(!_)return 0;return(await o.StreamReport.start({configuration:e,stdout:this.context.stdout,includeLogs:!this.context.quiet},async e=>{await t.install({cache:r,report:e})})).exitCode()}}Y.usage=y.Command.Usage({category:"Interactive commands",description:"open the upgrade interface",details:"\n This command opens a fullscreen terminal interface where you can see any out of date packages used by your application, their status compared to the latest versions available on the remote registry, and select packages to upgrade.\n ",examples:[["Open the upgrade window","yarn upgrade-interactive"]]}),r([y.Command.Path("upgrade-interactive")],Y.prototype,"execute",null);const K={commands:[C,Y]}},7840:(e,t,n)=>{"use strict";const r=n(7382),i=n(7382),o=n(9245),u=n(1525),a=({value:e,placeholder:t="",focus:n=!0,mask:a,highlightPastedText:l=!1,showCursor:s=!0,onChange:c,onSubmit:f})=>{const[{cursorOffset:d,cursorWidth:p},h]=i.useState({cursorOffset:(e||"").length,cursorWidth:0});i.useEffect(()=>{h(t=>{if(!n||!s)return t;const r=e||"";return t.cursorOffset>r.length-1?{cursorOffset:r.length,cursorWidth:0}:t})},[e,n,s]);const v=l?p:0,m=a?a.repeat(e.length):e;let g=m,y=t?u.grey(t):void 0;if(s&&n){y=t.length>0?u.inverse(t[0])+u.grey(t.slice(1)):u.inverse(" "),g=m.length>0?"":u.inverse(" ");let e=0;for(const t of m)g+=e>=d-v&&e<=d?u.inverse(t):t,e++;m.length>0&&d===m.length&&(g+=u.inverse(" "))}return o.useInput((t,n)=>{if(n.upArrow||n.downArrow||n.ctrl&&"c"===t||n.tab||n.shift&&n.tab)return;if(n.return)return void(f&&f(e));let r=d,i=e,o=0;n.leftArrow?s&&r--:n.rightArrow?s&&r++:n.backspace||n.delete?d>0&&(i=e.slice(0,d-1)+e.slice(d,e.length),r--):(i=e.slice(0,d)+t+e.slice(d,e.length),r+=t.length,t.length>1&&(o=t.length)),d<0&&(r=0),d>e.length&&(r=e.length),h({cursorOffset:r,cursorWidth:o}),i!==e&&c(i)},{isActive:n}),r.createElement(o.Text,null,t?m.length>0?g:y:g)};t.ZP=a},9902:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(1525)),o=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,u=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,a=(e,t)=>"foreground"===t?e:"bg"+e[0].toUpperCase()+e.slice(1);t.default=(e,t,n)=>{if(!t)return e;if(t in i.default){const r=a(t,n);return i.default[r](e)}if(t.startsWith("#")){const r=a("hex",n);return i.default[r](t)(e)}if(t.startsWith("ansi")){const r=u.exec(t);if(!r)return e;const o=a(r[1],n),l=Number(r[2]);return i.default[o](l)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){const r=o.exec(t);if(!r)return e;const u=a(r[1],n),l=Number(r[2]),s=Number(r[3]),c=Number(r[4]);return i.default[u](l,s,c)(e)}return e}},2773:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=o(n(7382)),l=u(n(1696)),s=u(n(5512)),c=u(n(1489)),f=u(n(6834)),d=u(n(5001)),p=u(n(2560)),h=u(n(9052));class v extends a.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=e=>{const{stdin:t}=this.props;if(!this.isRawModeSupported())throw t===process.stdin?new Error("Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default.\nRead about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported"):new Error("Raw mode is not supported on the stdin provided to Ink.\nRead about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported");if(t.setEncoding("utf8"),e)return 0===this.rawModeEnabledCount&&(t.addListener("data",this.handleInput),t.resume(),t.setRawMode(!0)),void this.rawModeEnabledCount++;0==--this.rawModeEnabledCount&&(t.setRawMode(!1),t.removeListener("data",this.handleInput),t.pause())},this.handleInput=e=>{""===e&&this.props.exitOnCtrlC&&this.handleExit(),""===e&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&("\t"===e&&this.focusNext(),"[Z"===e&&this.focusPrevious())},this.handleExit=e=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(e)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focusNext=()=>{this.setState(e=>{const t=e.focusables[0].id;return{activeFocusId:this.findNextFocusable(e)||t}})},this.focusPrevious=()=>{this.setState(e=>{const t=e.focusables[e.focusables.length-1].id;return{activeFocusId:this.findPreviousFocusable(e)||t}})},this.addFocusable=(e,{autoFocus:t})=>{this.setState(n=>{let r=n.activeFocusId;return!r&&t&&(r=e),{activeFocusId:r,focusables:[...n.focusables,{id:e,isActive:!0}]}})},this.removeFocusable=e=>{this.setState(t=>({activeFocusId:t.activeFocusId===e?void 0:t.activeFocusId,focusables:t.focusables.filter(t=>t.id!==e)}))},this.activateFocusable=e=>{this.setState(t=>({focusables:t.focusables.map(t=>t.id!==e?t:{id:e,isActive:!0})}))},this.deactivateFocusable=e=>{this.setState(t=>({activeFocusId:t.activeFocusId===e?void 0:t.activeFocusId,focusables:t.focusables.map(t=>t.id!==e?t:{id:e,isActive:!1})}))},this.findNextFocusable=e=>{for(let t=e.focusables.findIndex(t=>t.id===e.activeFocusId)+1;t{for(let t=e.focusables.findIndex(t=>t.id===e.activeFocusId)-1;t>=0;t--)if(e.focusables[t].isActive)return e.focusables[t].id}}static getDerivedStateFromError(e){return{error:e}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return a.default.createElement(s.default.Provider,{value:{exit:this.handleExit}},a.default.createElement(c.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},a.default.createElement(f.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},a.default.createElement(d.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},a.default.createElement(p.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious}},this.state.error?a.default.createElement(h.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){l.default.hide(this.props.stdout)}componentWillUnmount(){l.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(e){this.handleExit(e)}}t.default=v,v.displayName="InternalApp"},5512:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(7382).createContext({exit:()=>{}});r.displayName="InternalAppContext",t.default=r},5277:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t},u=this&&this.__rest||function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i{var{children:n}=e,r=u(e,["children"]);const i=Object.assign(Object.assign({},r),{marginLeft:r.marginLeft||r.marginX||r.margin||0,marginRight:r.marginRight||r.marginX||r.margin||0,marginTop:r.marginTop||r.marginY||r.margin||0,marginBottom:r.marginBottom||r.marginY||r.margin||0,paddingLeft:r.paddingLeft||r.paddingX||r.padding||0,paddingRight:r.paddingRight||r.paddingX||r.padding||0,paddingTop:r.paddingTop||r.paddingY||r.padding||0,paddingBottom:r.paddingBottom||r.paddingY||r.padding||0});return a.default.createElement("ink-box",{ref:t,style:i},n)});l.displayName="Box",l.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1},t.default=l},9052:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=o(n(5747)),l=u(n(7382)),s=u(n(9796)),c=u(n(9908)),f=u(n(5277)),d=u(n(9146)),p=new s.default({cwd:process.cwd(),internals:s.default.nodeInternals()});t.default=({error:e})=>{const t=e.stack?e.stack.split("\n").slice(1):void 0,n=t?p.parseLine(t[0]):void 0;let r,i=0;if((null==n?void 0:n.file)&&(null==n?void 0:n.line)&&a.existsSync(n.file)){const e=a.readFileSync(n.file,"utf8");if(r=c.default(e,n.line),r)for(const{line:e}of r)i=Math.max(i,String(e).length)}return l.default.createElement(f.default,{flexDirection:"column",padding:1},l.default.createElement(f.default,null,l.default.createElement(d.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),l.default.createElement(d.default,null," ",e.message)),n&&l.default.createElement(f.default,{marginTop:1},l.default.createElement(d.default,{dimColor:!0},n.file,":",n.line,":",n.column)),n&&r&&l.default.createElement(f.default,{marginTop:1,flexDirection:"column"},r.map(({line:e,value:t})=>l.default.createElement(f.default,{key:e},l.default.createElement(f.default,{width:i+1},l.default.createElement(d.default,{dimColor:e!==n.line,backgroundColor:e===n.line?"red":void 0,color:e===n.line?"white":void 0},String(e).padStart(i," "),":")),l.default.createElement(d.default,{key:e,backgroundColor:e===n.line?"red":void 0,color:e===n.line?"white":void 0}," "+t)))),e.stack&&l.default.createElement(f.default,{marginTop:1,flexDirection:"column"},e.stack.split("\n").slice(1).map(e=>{const t=p.parseLine(e);return t?l.default.createElement(f.default,{key:e},l.default.createElement(d.default,{dimColor:!0},"- "),l.default.createElement(d.default,{dimColor:!0,bold:!0},t.function),l.default.createElement(d.default,{dimColor:!0,color:"gray"}," ","(",t.file,":",t.line,":",t.column,")")):l.default.createElement(f.default,{key:e},l.default.createElement(d.default,{dimColor:!0},"- "),l.default.createElement(d.default,{dimColor:!0,bold:!0},e))})))}},2560:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(7382).createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{}});r.displayName="InternalFocusContext",t.default=r},8200:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(7382)),o=({count:e=1})=>i.default.createElement("ink-text",null,"\n".repeat(e));o.displayName="Newline",t.default=o},2198:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(7382)),o=r(n(5277)),u=()=>i.default.createElement(o.default,{flexGrow:1});u.displayName="Spacer",t.default=u},8915:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0});const u=o(n(7382)),a=e=>{const{items:t,children:n,style:r}=e,[i,o]=u.useState(0),a=u.useMemo(()=>t.slice(i),[t,i]);u.useLayoutEffect(()=>{o(t.length)},[t.length]);const l=a.map((e,t)=>n(e,i+t)),s=u.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},r),[r]);return u.default.createElement("ink-box",{internal_static:!0,style:s},l)};a.displayName="Static",t.default=a},5001:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(7382).createContext({stderr:void 0,write:()=>{}});r.displayName="InternalStderrContext",t.default=r},1489:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(7382).createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});r.displayName="InternalStdinContext",t.default=r},6834:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(7382).createContext({stdout:void 0,write:()=>{}});r.displayName="InternalStdoutContext",t.default=r},9146:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(7382)),o=r(n(1525)),u=r(n(9902)),a=({color:e,backgroundColor:t,dimColor:n,bold:r,italic:a,underline:l,strikethrough:s,inverse:c,wrap:f,children:d})=>{if(null==d)return null;return i.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:i=>(n&&(i=o.default.dim(i)),e&&(i=u.default(i,e,"foreground")),t&&(i=u.default(i,t,"background")),r&&(i=o.default.bold(i)),a&&(i=o.default.italic(i)),l&&(i=o.default.underline(i)),s&&(i=o.default.strikethrough(i)),c&&(i=o.default.inverse(i)),i)},d)};a.displayName="Text",a.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"},t.default=a},4592:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(7382)),o=({children:e,transform:t})=>null==e?null:i.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);o.displayName="Transform",t.default=o},146:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(3296)),o=n(5187),u=global;u.WebSocket||(u.WebSocket=i.default),u.window||(u.window=global),u.window.__REACT_DEVTOOLS_COMPONENT_FILTERS__=[{type:1,value:7,isEnabled:!0},{type:2,value:"InternalApp",isEnabled:!0,isValid:!0},{type:2,value:"InternalAppContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStdoutContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStderrContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStdinContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalFocusContext",isEnabled:!0,isValid:!0}],o.connectToDevTools()},9864:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.setTextNodeValue=t.createTextNode=t.setStyle=t.setAttribute=t.removeChildNode=t.insertBeforeNode=t.appendChildNode=t.createNode=t.TEXT_NAME=void 0;const i=r(n(6401)),o=r(n(8113)),u=r(n(5809)),a=r(n(2030)),l=r(n(9099));t.TEXT_NAME="#text",t.createNode=e=>{var t;const n={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:"ink-virtual-text"===e?void 0:i.default.Node.create()};return"ink-text"===e&&(null===(t=n.yogaNode)||void 0===t||t.setMeasureFunc(s.bind(null,n))),n},t.appendChildNode=(e,n)=>{var r;n.parentNode&&t.removeChildNode(n.parentNode,n),n.parentNode=e,e.childNodes.push(n),n.yogaNode&&(null===(r=e.yogaNode)||void 0===r||r.insertChild(n.yogaNode,e.yogaNode.getChildCount())),"ink-text"!==e.nodeName&&"ink-virtual-text"!==e.nodeName||f(e)},t.insertBeforeNode=(e,n,r)=>{var i,o;n.parentNode&&t.removeChildNode(n.parentNode,n),n.parentNode=e;const u=e.childNodes.indexOf(r);if(u>=0)return e.childNodes.splice(u,0,n),void(n.yogaNode&&(null===(i=e.yogaNode)||void 0===i||i.insertChild(n.yogaNode,u)));e.childNodes.push(n),n.yogaNode&&(null===(o=e.yogaNode)||void 0===o||o.insertChild(n.yogaNode,e.yogaNode.getChildCount())),"ink-text"!==e.nodeName&&"ink-virtual-text"!==e.nodeName||f(e)},t.removeChildNode=(e,t)=>{var n,r;t.yogaNode&&(null===(r=null===(n=t.parentNode)||void 0===n?void 0:n.yogaNode)||void 0===r||r.removeChild(t.yogaNode)),t.parentNode=null;const i=e.childNodes.indexOf(t);i>=0&&e.childNodes.splice(i,1),"ink-text"!==e.nodeName&&"ink-virtual-text"!==e.nodeName||f(e)},t.setAttribute=(e,t,n)=>{e.attributes[t]=n},t.setStyle=(e,t)=>{e.style=t,e.yogaNode&&u.default(e.yogaNode,t)},t.createTextNode=e=>{const n={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return t.setTextNodeValue(n,e),n};const s=function(e,t){var n,r;const i="#text"===e.nodeName?e.nodeValue:l.default(e),u=o.default(i);if(u.width<=t)return u;if(u.width>=1&&t>0&&t<1)return u;const s=null!==(r=null===(n=e.style)||void 0===n?void 0:n.textWrap)&&void 0!==r?r:"wrap",c=a.default(i,t,s);return o.default(c)},c=e=>{var t;if(e&&e.parentNode)return null!==(t=e.yogaNode)&&void 0!==t?t:c(e.parentNode)},f=e=>{const t=c(e);null==t||t.markDirty()};t.setTextNodeValue=(e,t)=>{"string"!=typeof t&&(t=String(t)),e.nodeValue=t,f(e)}},317:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(6401));t.default=e=>e.getComputedWidth()-e.getComputedPadding(i.default.EDGE_LEFT)-e.getComputedPadding(i.default.EDGE_RIGHT)-e.getComputedBorder(i.default.EDGE_LEFT)-e.getComputedBorder(i.default.EDGE_RIGHT)},4699:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(5512));t.default=()=>i.useContext(o.default)},5442:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(2560));t.default=()=>{const e=i.useContext(o.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious}}},8230:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(2560)),u=r(n(1541));t.default=({isActive:e=!0,autoFocus:t=!1}={})=>{const{isRawModeSupported:n,setRawMode:r}=u.default(),{activeId:a,add:l,remove:s,activate:c,deactivate:f}=i.useContext(o.default),d=i.useMemo(()=>Math.random().toString().slice(2,7),[]);return i.useEffect(()=>(l(d,{autoFocus:t}),()=>{s(d)}),[d,t]),i.useEffect(()=>{e?c(d):f(d)},[e,d]),i.useEffect(()=>{if(n&&e)return r(!0),()=>{r(!1)}},[e]),{isFocused:Boolean(d)&&a===d}}},4495:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(1541));t.default=(e,t={})=>{const{stdin:n,setRawMode:r,internal_exitOnCtrlC:u}=o.default();i.useEffect(()=>{if(!1!==t.isActive)return r(!0),()=>{r(!1)}},[t.isActive,r]),i.useEffect(()=>{if(!1===t.isActive)return;const r=t=>{let n=String(t);const r={upArrow:"[A"===n,downArrow:"[B"===n,leftArrow:"[D"===n,rightArrow:"[C"===n,pageDown:"[6~"===n,pageUp:"[5~"===n,return:"\r"===n,escape:""===n,ctrl:!1,shift:!1,tab:"\t"===n||"[Z"===n,backspace:"\b"===n,delete:""===n||"[3~"===n,meta:!1};n<=""&&!r.return&&(n=String.fromCharCode(n.charCodeAt(0)+"a".charCodeAt(0)-1),r.ctrl=!0),n.startsWith("")&&(n=n.slice(1),r.meta=!0);const i=n>="A"&&n<="Z",o=n>="А"&&n<="Я";1===n.length&&(i||o)&&(r.shift=!0),r.tab&&"[Z"===n&&(r.shift=!0),(r.tab||r.backspace||r.delete)&&(n=""),"c"===n&&r.ctrl&&u||e(n,r)};return null==n||n.on("data",r),()=>{null==n||n.off("data",r)}},[t.isActive,n,u,e])}},1686:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(5001));t.default=()=>i.useContext(o.default)},1541:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(1489));t.default=()=>i.useContext(o.default)},9890:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(6834));t.default=()=>i.useContext(o.default)},9245:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(9417);Object.defineProperty(t,"render",{enumerable:!0,get:function(){return r.default}});var i=n(5277);Object.defineProperty(t,"Box",{enumerable:!0,get:function(){return i.default}});var o=n(9146);Object.defineProperty(t,"Text",{enumerable:!0,get:function(){return o.default}});var u=n(8915);Object.defineProperty(t,"Static",{enumerable:!0,get:function(){return u.default}});var a=n(4592);Object.defineProperty(t,"Transform",{enumerable:!0,get:function(){return a.default}});var l=n(8200);Object.defineProperty(t,"Newline",{enumerable:!0,get:function(){return l.default}});var s=n(2198);Object.defineProperty(t,"Spacer",{enumerable:!0,get:function(){return s.default}});var c=n(4495);Object.defineProperty(t,"useInput",{enumerable:!0,get:function(){return c.default}});var f=n(4699);Object.defineProperty(t,"useApp",{enumerable:!0,get:function(){return f.default}});var d=n(1541);Object.defineProperty(t,"useStdin",{enumerable:!0,get:function(){return d.default}});var p=n(9890);Object.defineProperty(t,"useStdout",{enumerable:!0,get:function(){return p.default}});var h=n(1686);Object.defineProperty(t,"useStderr",{enumerable:!0,get:function(){return h.default}});var v=n(8230);Object.defineProperty(t,"useFocus",{enumerable:!0,get:function(){return v.default}});var m=n(5442);Object.defineProperty(t,"useFocusManager",{enumerable:!0,get:function(){return m.default}});var g=n(3887);Object.defineProperty(t,"measureElement",{enumerable:!0,get:function(){return g.default}})},3206:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=u(n(7382)),l=n(464),s=u(n(503)),c=u(n(7589)),f=u(n(2738)),d=u(n(2633)),p=u(n(5117)),h=u(n(5691)),v=u(n(6458)),m=u(n(8070)),g=o(n(9864)),y=u(n(9679)),_=u(n(2773)),b="false"!==process.env.CI&&f.default,w=()=>{};t.default=class{constructor(e){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;const{output:e,outputHeight:t,staticOutput:n}=h.default(this.rootNode,this.options.stdout.columns||80),r=n&&"\n"!==n;return this.options.debug?(r&&(this.fullStaticOutput+=n),void this.options.stdout.write(this.fullStaticOutput+e)):b?(r&&this.options.stdout.write(n),void(this.lastOutput=e)):(r&&(this.fullStaticOutput+=n),t>=this.options.stdout.rows?(this.options.stdout.write(c.default.clearTerminal+this.fullStaticOutput+e),void(this.lastOutput=e)):(r&&(this.log.clear(),this.options.stdout.write(n),this.log(e)),r||e===this.lastOutput||this.throttledLog(e),void(this.lastOutput=e)))},d.default(this),this.options=e,this.rootNode=g.createNode("ink-root"),this.rootNode.onRender=e.debug?this.onRender:l.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=s.default.create(e.stdout),this.throttledLog=e.debug?this.log:l.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=p.default.createContainer(this.rootNode,!1,!1),this.unsubscribeExit=v.default(this.unmount,{alwaysLast:!1}),"true"===process.env.DEV&&p.default.injectIntoDevTools({bundleType:0,version:"16.13.1",rendererPackageName:"ink"}),e.patchConsole&&this.patchConsole(),b||(e.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{e.stdout.off("resize",this.onRender)})}render(e){const t=a.default.createElement(_.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},e);p.default.updateContainer(t,this.container,null,w)}writeToStdout(e){this.isUnmounted||(this.options.debug?this.options.stdout.write(e+this.fullStaticOutput+this.lastOutput):b?this.options.stdout.write(e):(this.log.clear(),this.options.stdout.write(e),this.log(this.lastOutput)))}writeToStderr(e){if(!this.isUnmounted)return this.options.debug?(this.options.stderr.write(e),void this.options.stdout.write(this.fullStaticOutput+this.lastOutput)):void(b?this.options.stderr.write(e):(this.log.clear(),this.options.stderr.write(e),this.log(this.lastOutput)))}unmount(e){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),"function"==typeof this.restoreConsole&&this.restoreConsole(),"function"==typeof this.unsubscribeResize&&this.unsubscribeResize(),b?this.options.stdout.write(this.lastOutput+"\n"):this.options.debug||this.log.done(),this.isUnmounted=!0,p.default.updateContainer(null,this.container,null,w),y.default.delete(this.options.stdout),e instanceof Error?this.rejectExitPromise(e):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((e,t)=>{this.resolveExitPromise=e,this.rejectExitPromise=t})),this.exitPromise}clear(){b||this.options.debug||this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=m.default((e,t)=>{if("stdout"===e&&this.writeToStdout(t),"stderr"===e){t.startsWith("The above error occurred")||this.writeToStderr(t)}}))}}},9679:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=new WeakMap},503:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(7589)),o=r(n(1696));t.default={create:(e,{showCursor:t=!1}={})=>{let n=0,r="",u=!1;const a=a=>{t||u||(o.default.hide(),u=!0);const l=a+"\n";l!==r&&(r=l,e.write(i.default.eraseLines(n)+l),n=l.split("\n").length)};return a.clear=()=>{e.write(i.default.eraseLines(n)),r="",n=0},a.done=()=>{r="",n=0,t||(o.default.show(),u=!1)},a}}},3887:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=e=>{var t,n,r,i;return{width:null!==(n=null===(t=e.yogaNode)||void 0===t?void 0:t.getComputedWidth())&&void 0!==n?n:0,height:null!==(i=null===(r=e.yogaNode)||void 0===r?void 0:r.getComputedHeight())&&void 0!==i?i:0}}},8113:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(8949)),o={};t.default=e=>{if(0===e.length)return{width:0,height:0};if(o[e])return o[e];const t=i.default(e),n=e.split("\n").length;return o[e]={width:t,height:n},{width:t,height:n}}},4110:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(1566)),o=r(n(3262));t.default=class{constructor(e){this.writes=[];const{width:t,height:n}=e;this.width=t,this.height=n}write(e,t,n,r){const{transformers:i}=r;n&&this.writes.push({x:e,y:t,text:n,transformers:i})}get(){const e=[];for(let t=0;te.trimRight()).join("\n"),height:e.length}}}},5117:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7181),o=r(n(7714)),u=r(n(6401)),a=n(9864);"true"===process.env.DEV&&n(146);const l=e=>{null==e||e.unsetMeasureFunc(),null==e||e.freeRecursive()};t.default=o.default({schedulePassiveEffects:i.unstable_scheduleCallback,cancelPassiveEffects:i.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>{},resetAfterCommit:e=>{if(e.isStaticDirty)return e.isStaticDirty=!1,void("function"==typeof e.onImmediateRender&&e.onImmediateRender());"function"==typeof e.onRender&&e.onRender()},getChildHostContext:(e,t)=>{const n="ink-text"===t||"ink-virtual-text"===t;return e.isInsideText===n?e:{isInsideText:n}},shouldSetTextContent:()=>!1,createInstance:(e,t,n,r)=>{if(r.isInsideText&&"ink-box"===e)throw new Error(" can’t be nested inside component");const i="ink-text"===e&&r.isInsideText?"ink-virtual-text":e,o=a.createNode(i);for(const[e,n]of Object.entries(t))"children"!==e&&("style"===e?a.setStyle(o,n):"internal_transform"===e?o.internal_transform=n:"internal_static"===e?o.internal_static=!0:a.setAttribute(o,e,n));return o},createTextInstance:(e,t,n)=>{if(!n.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return a.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{a.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{a.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;null===(t=e.yogaNode)||void 0===t||t.setDisplay(u.default.DISPLAY_NONE)},unhideInstance:e=>{var t;null===(t=e.yogaNode)||void 0===t||t.setDisplay(u.default.DISPLAY_FLEX)},appendInitialChild:a.appendChildNode,appendChild:a.appendChildNode,insertBefore:a.insertBeforeNode,finalizeInitialChildren:(e,t,n,r)=>(e.internal_static&&(r.isStaticDirty=!0,r.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:a.appendChildNode,insertInContainerBefore:a.insertBeforeNode,removeChildFromContainer:(e,t)=>{a.removeChildNode(e,t),l(t.yogaNode)},prepareUpdate:(e,t,n,r,i)=>{e.internal_static&&(i.isStaticDirty=!0);const o={},u=Object.keys(r);for(const e of u)if(r[e]!==n[e]){if("style"===e&&"object"==typeof r.style&&"object"==typeof n.style){const e=r.style,t=n.style,i=Object.keys(e);for(const n of i){if("borderStyle"===n||"borderColor"===n){if("object"!=typeof o.style){const e={};o.style=e}o.style.borderStyle=e.borderStyle,o.style.borderColor=e.borderColor}if(e[n]!==t[n]){if("object"!=typeof o.style){const e={};o.style=e}o.style[n]=e[n]}}continue}o[e]=r[e]}return o},commitUpdate:(e,t)=>{for(const[n,r]of Object.entries(t))"children"!==n&&("style"===n?a.setStyle(e,r):"internal_transform"===n?e.internal_transform=r:"internal_static"===n?e.internal_static=!0:a.setAttribute(e,n,r))},commitTextUpdate:(e,t,n)=>{a.setTextNodeValue(e,n)},removeChild:(e,t)=>{a.removeChildNode(e,t),l(t.yogaNode)}})},4907:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(4097)),o=r(n(9902));t.default=(e,t,n,r)=>{if("string"==typeof n.style.borderStyle){const u=n.yogaNode.getComputedWidth(),a=n.yogaNode.getComputedHeight(),l=n.style.borderColor,s=i.default[n.style.borderStyle],c=o.default(s.topLeft+s.horizontal.repeat(u-2)+s.topRight,l,"foreground"),f=(o.default(s.vertical,l,"foreground")+"\n").repeat(a-2),d=o.default(s.bottomLeft+s.horizontal.repeat(u-2)+s.bottomRight,l,"foreground");r.write(e,t,c,{transformers:[]}),r.write(e,t+1,f,{transformers:[]}),r.write(e+u-1,t+1,f,{transformers:[]}),r.write(e,t+a-1,d,{transformers:[]})}}},3782:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(6401)),o=r(n(8949)),u=r(n(9646)),a=r(n(2030)),l=r(n(317)),s=r(n(9099)),c=r(n(4907)),f=(e,t,n)=>{var r;const{offsetX:d=0,offsetY:p=0,transformers:h=[],skipStaticElements:v}=n;if(v&&e.internal_static)return;const{yogaNode:m}=e;if(m){if(m.getDisplay()===i.default.DISPLAY_NONE)return;const n=d+m.getComputedLeft(),g=p+m.getComputedTop();let y=h;if("function"==typeof e.internal_transform&&(y=[e.internal_transform,...h]),"ink-text"===e.nodeName){let i=s.default(e);if(i.length>0){const s=o.default(i),c=l.default(m);if(s>c){const t=null!==(r=e.style.textWrap)&&void 0!==r?r:"wrap";i=a.default(i,c,t)}i=((e,t)=>{var n;const r=null===(n=e.childNodes[0])||void 0===n?void 0:n.yogaNode;if(r){const e=r.getComputedLeft(),n=r.getComputedTop();t="\n".repeat(n)+u.default(t,e)}return t})(e,i),t.write(n,g,i,{transformers:y})}return}if("ink-box"===e.nodeName&&c.default(n,g,e,t),"ink-root"===e.nodeName||"ink-box"===e.nodeName)for(const r of e.childNodes)f(r,t,{offsetX:n,offsetY:g,transformers:y,skipStaticElements:v})}};t.default=f},9417:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(3206)),o=r(n(9679)),u=n(2413);t.default=(e,t)=>{const n=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},a(t)),r=l(n.stdout,()=>new i.default(n));return r.render(e),{rerender:r.render,unmount:()=>r.unmount(),waitUntilExit:r.waitUntilExit,cleanup:()=>o.default.delete(n.stdout),clear:r.clear}};const a=(e={})=>e instanceof u.Stream?{stdout:e,stdin:process.stdin}:e,l=(e,t)=>{let n;return o.default.has(e)?n=o.default.get(e):(n=t(),o.default.set(e,n)),n}},5691:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(6401)),o=r(n(3782)),u=r(n(4110));t.default=(e,t)=>{var n;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,i.default.DIRECTION_LTR);const t=new u.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});let r;o.default(e,t,{skipStaticElements:!0}),(null===(n=e.staticNode)||void 0===n?void 0:n.yogaNode)&&(r=new u.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),o.default(e.staticNode,r,{skipStaticElements:!1}));const{output:a,height:l}=t.get();return{output:a,outputHeight:l,staticOutput:r?r.get().output+"\n":""}}return{output:"",outputHeight:0,staticOutput:""}}},9099:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=e=>{let t="";if(e.childNodes.length>0)for(const r of e.childNodes){let e="";"#text"===r.nodeName?e=r.nodeValue:("ink-text"!==r.nodeName&&"ink-virtual-text"!==r.nodeName||(e=n(r)),e.length>0&&"function"==typeof r.internal_transform&&(e=r.internal_transform(e))),t+=e}return t};t.default=n},5809:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(6401));t.default=(e,t={})=>{((e,t)=>{"position"in t&&e.setPositionType("absolute"===t.position?i.default.POSITION_TYPE_ABSOLUTE:i.default.POSITION_TYPE_RELATIVE)})(e,t),((e,t)=>{"marginLeft"in t&&e.setMargin(i.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(i.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(i.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(i.default.EDGE_BOTTOM,t.marginBottom||0)})(e,t),((e,t)=>{"paddingLeft"in t&&e.setPadding(i.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(i.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(i.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(i.default.EDGE_BOTTOM,t.paddingBottom||0)})(e,t),((e,t)=>{var n;"flexGrow"in t&&e.setFlexGrow(null!==(n=t.flexGrow)&&void 0!==n?n:0),"flexShrink"in t&&e.setFlexShrink("number"==typeof t.flexShrink?t.flexShrink:1),"flexDirection"in t&&("row"===t.flexDirection&&e.setFlexDirection(i.default.FLEX_DIRECTION_ROW),"row-reverse"===t.flexDirection&&e.setFlexDirection(i.default.FLEX_DIRECTION_ROW_REVERSE),"column"===t.flexDirection&&e.setFlexDirection(i.default.FLEX_DIRECTION_COLUMN),"column-reverse"===t.flexDirection&&e.setFlexDirection(i.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&("number"==typeof t.flexBasis?e.setFlexBasis(t.flexBasis):"string"==typeof t.flexBasis?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&("stretch"!==t.alignItems&&t.alignItems||e.setAlignItems(i.default.ALIGN_STRETCH),"flex-start"===t.alignItems&&e.setAlignItems(i.default.ALIGN_FLEX_START),"center"===t.alignItems&&e.setAlignItems(i.default.ALIGN_CENTER),"flex-end"===t.alignItems&&e.setAlignItems(i.default.ALIGN_FLEX_END)),"alignSelf"in t&&("auto"!==t.alignSelf&&t.alignSelf||e.setAlignSelf(i.default.ALIGN_AUTO),"flex-start"===t.alignSelf&&e.setAlignSelf(i.default.ALIGN_FLEX_START),"center"===t.alignSelf&&e.setAlignSelf(i.default.ALIGN_CENTER),"flex-end"===t.alignSelf&&e.setAlignSelf(i.default.ALIGN_FLEX_END)),"justifyContent"in t&&("flex-start"!==t.justifyContent&&t.justifyContent||e.setJustifyContent(i.default.JUSTIFY_FLEX_START),"center"===t.justifyContent&&e.setJustifyContent(i.default.JUSTIFY_CENTER),"flex-end"===t.justifyContent&&e.setJustifyContent(i.default.JUSTIFY_FLEX_END),"space-between"===t.justifyContent&&e.setJustifyContent(i.default.JUSTIFY_SPACE_BETWEEN),"space-around"===t.justifyContent&&e.setJustifyContent(i.default.JUSTIFY_SPACE_AROUND))})(e,t),((e,t)=>{var n,r;"width"in t&&("number"==typeof t.width?e.setWidth(t.width):"string"==typeof t.width?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&("number"==typeof t.height?e.setHeight(t.height):"string"==typeof t.height?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&("string"==typeof t.minWidth?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth(null!==(n=t.minWidth)&&void 0!==n?n:0)),"minHeight"in t&&("string"==typeof t.minHeight?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight(null!==(r=t.minHeight)&&void 0!==r?r:0))})(e,t),((e,t)=>{"display"in t&&e.setDisplay("flex"===t.display?i.default.DISPLAY_FLEX:i.default.DISPLAY_NONE)})(e,t),((e,t)=>{if("borderStyle"in t){const n="string"==typeof t.borderStyle?1:0;e.setBorder(i.default.EDGE_TOP,n),e.setBorder(i.default.EDGE_BOTTOM,n),e.setBorder(i.default.EDGE_LEFT,n),e.setBorder(i.default.EDGE_RIGHT,n)}})(e,t)}},2030:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(4332)),o=r(n(5301)),u={};t.default=(e,t,n)=>{const r=e+String(t)+String(n);if(u[r])return u[r];let a=e;if("wrap"===n&&(a=i.default(e,t,{trim:!1,hard:!0})),n.startsWith("truncate")){let r="end";"truncate-middle"===n&&(r="middle"),"truncate-start"===n&&(r="start"),a=o.default(e,t,{position:r})}return u[r]=a,a}},5767:(e,t,n)=>{
+/** @license React v0.24.0
+ * react-reconciler.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+e.exports=function t(r){"use strict";var i=n(9381),o=n(7382),u=n(7181);function a(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;nOe||(e.current=Ae[Oe],Ae[Oe]=null,Oe--)}function Ie(e,t){Oe++,Ae[Oe]=e.current,e.current=t}var Ne={},Me={current:Ne},Re={current:!1},Fe=Ne;function Le(e,t){var n=e.type.contextTypes;if(!n)return Ne;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i,o={};for(i in n)o[i]=t[i];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function Be(e){return null!=(e=e.childContextTypes)}function je(e){Pe(Re),Pe(Me)}function Ue(e){Pe(Re),Pe(Me)}function ze(e,t,n){if(Me.current!==Ne)throw Error(a(168));Ie(Me,t),Ie(Re,n)}function We(e,t,n){var r=e.stateNode;if(e=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var o in r=r.getChildContext())if(!(o in e))throw Error(a(108,C(t)||"Unknown",o));return i({},n,{},r)}function He(e){var t=e.stateNode;return t=t&&t.__reactInternalMemoizedMergedChildContext||Ne,Fe=Me.current,Ie(Me,t),Ie(Re,Re.current),!0}function Ve(e,t,n){var r=e.stateNode;if(!r)throw Error(a(169));n?(t=We(e,t,Fe),r.__reactInternalMemoizedMergedChildContext=t,Pe(Re),Pe(Me),Ie(Me,t)):Pe(Re),Ie(Re,n)}var qe=u.unstable_runWithPriority,Ge=u.unstable_scheduleCallback,$e=u.unstable_cancelCallback,Ye=u.unstable_shouldYield,Ke=u.unstable_requestPaint,Xe=u.unstable_now,Qe=u.unstable_getCurrentPriorityLevel,Je=u.unstable_ImmediatePriority,Ze=u.unstable_UserBlockingPriority,et=u.unstable_NormalPriority,tt=u.unstable_LowPriority,nt=u.unstable_IdlePriority,rt={},it=void 0!==Ke?Ke:function(){},ot=null,ut=null,at=!1,lt=Xe(),st=1e4>lt?Xe:function(){return Xe()-lt};function ct(){switch(Qe()){case Je:return 99;case Ze:return 98;case et:return 97;case tt:return 96;case nt:return 95;default:throw Error(a(332))}}function ft(e){switch(e){case 99:return Je;case 98:return Ze;case 97:return et;case 96:return tt;case 95:return nt;default:throw Error(a(332))}}function dt(e,t){return e=ft(e),qe(e,t)}function pt(e,t,n){return e=ft(e),Ge(e,t,n)}function ht(e){return null===ot?(ot=[e],ut=Ge(Je,mt)):ot.push(e),rt}function vt(){if(null!==ut){var e=ut;ut=null,$e(e)}mt()}function mt(){if(!at&&null!==ot){at=!0;var e=0;try{var t=ot;dt(99,(function(){for(;e=t&&(dr=!0),e.firstContext=null)}function It(e,t){if(kt!==e&&!1!==t&&0!==t)if("number"==typeof t&&1073741823!==t||(kt=e,t=1073741823),t={context:e,observedBits:t,next:null},null===Ct){if(null===St)throw Error(a(308));Ct=t,St.dependencies={expirationTime:0,firstContext:t,responders:null}}else Ct=Ct.next=t;return q?e._currentValue:e._currentValue2}var Nt=!1;function Mt(e){return{baseState:e,firstUpdate:null,lastUpdate:null,firstCapturedUpdate:null,lastCapturedUpdate:null,firstEffect:null,lastEffect:null,firstCapturedEffect:null,lastCapturedEffect:null}}function Rt(e){return{baseState:e.baseState,firstUpdate:e.firstUpdate,lastUpdate:e.lastUpdate,firstCapturedUpdate:null,lastCapturedUpdate:null,firstEffect:null,lastEffect:null,firstCapturedEffect:null,lastCapturedEffect:null}}function Ft(e,t){return{expirationTime:e,suspenseConfig:t,tag:0,payload:null,callback:null,next:null,nextEffect:null}}function Lt(e,t){null===e.lastUpdate?e.firstUpdate=e.lastUpdate=t:(e.lastUpdate.next=t,e.lastUpdate=t)}function Bt(e,t){var n=e.alternate;if(null===n){var r=e.updateQueue,i=null;null===r&&(r=e.updateQueue=Mt(e.memoizedState))}else r=e.updateQueue,i=n.updateQueue,null===r?null===i?(r=e.updateQueue=Mt(e.memoizedState),i=n.updateQueue=Mt(n.memoizedState)):r=e.updateQueue=Rt(i):null===i&&(i=n.updateQueue=Rt(r));null===i||r===i?Lt(r,t):null===r.lastUpdate||null===i.lastUpdate?(Lt(r,t),Lt(i,t)):(Lt(r,t),i.lastUpdate=t)}function jt(e,t){var n=e.updateQueue;null===(n=null===n?e.updateQueue=Mt(e.memoizedState):Ut(e,n)).lastCapturedUpdate?n.firstCapturedUpdate=n.lastCapturedUpdate=t:(n.lastCapturedUpdate.next=t,n.lastCapturedUpdate=t)}function Ut(e,t){var n=e.alternate;return null!==n&&t===n.updateQueue&&(t=e.updateQueue=Rt(t)),t}function zt(e,t,n,r,o,u){switch(n.tag){case 1:return"function"==typeof(e=n.payload)?e.call(u,r,o):e;case 3:e.effectTag=-4097&e.effectTag|64;case 0:if(null==(o="function"==typeof(e=n.payload)?e.call(u,r,o):e))break;return i({},r,o);case 2:Nt=!0}return r}function Wt(e,t,n,r,i){Nt=!1;for(var o=(t=Ut(e,t)).baseState,u=null,a=0,l=t.firstUpdate,s=o;null!==l;){var c=l.expirationTime;cd?(p=f,f=null):p=f.sibling;var h=m(i,f,a[d],l);if(null===h){null===f&&(f=p);break}e&&f&&null===h.alternate&&t(i,f),u=o(h,u,d),null===c?s=h:c.sibling=h,c=h,f=p}if(d===a.length)return n(i,f),s;if(null===f){for(;dp?(h=d,d=null):h=d.sibling;var _=m(i,d,y.value,s);if(null===_){null===d&&(d=h);break}e&&d&&null===_.alternate&&t(i,d),u=o(_,u,p),null===f?c=_:f.sibling=_,f=_,d=h}if(y.done)return n(i,d),c;if(null===d){for(;!y.done;p++,y=l.next())null!==(y=v(i,y.value,s))&&(u=o(y,u,p),null===f?c=y:f.sibling=y,f=y);return c}for(d=r(i,d);!y.done;p++,y=l.next())null!==(y=g(d,i,p,y.value,s))&&(e&&null!==y.alternate&&d.delete(null===y.key?p:y.key),u=o(y,u,p),null===f?c=y:f.sibling=y,f=y);return e&&d.forEach((function(e){return t(i,e)})),c}return function(e,r,o,l){var s="object"==typeof o&&null!==o&&o.type===d&&null===o.key;s&&(o=o.props.children);var p="object"==typeof o&&null!==o;if(p)switch(o.$$typeof){case c:e:{for(p=o.key,s=r;null!==s;){if(s.key===p){if(7===s.tag?o.type===d:s.elementType===o.type){n(e,s.sibling),(r=i(s,o.type===d?o.props.children:o.props)).ref=en(e,s,o),r.return=e,e=r;break e}n(e,s);break}t(e,s),s=s.sibling}o.type===d?((r=so(o.props.children,e.mode,l,o.key)).return=e,e=r):((l=lo(o.type,o.key,o.props,null,e.mode,l)).ref=en(e,r,o),l.return=e,e=l)}return u(e);case f:e:{for(s=o.key;null!==r;){if(r.key===s){if(4===r.tag&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),(r=i(r,o.children||[])).return=e,e=r;break e}n(e,r);break}t(e,r),r=r.sibling}(r=fo(o,e.mode,l)).return=e,e=r}return u(e)}if("string"==typeof o||"number"==typeof o)return o=""+o,null!==r&&6===r.tag?(n(e,r.sibling),(r=i(r,o)).return=e,e=r):(n(e,r),(r=co(o,e.mode,l)).return=e,e=r),u(e);if(Zt(o))return y(e,r,o,l);if(S(o))return _(e,r,o,l);if(p&&tn(e,o),void 0===o&&!s)switch(e.tag){case 1:case 0:throw e=e.type,Error(a(152,e.displayName||e.name||"Component"))}return n(e,r)}}var rn=nn(!0),on=nn(!1),un={},an={current:un},ln={current:un},sn={current:un};function cn(e){if(e===un)throw Error(a(174));return e}function fn(e,t){Ie(sn,t),Ie(ln,e),Ie(an,un),t=P(t),Pe(an),Ie(an,t)}function dn(e){Pe(an),Pe(ln),Pe(sn)}function pn(e){var t=cn(sn.current),n=cn(an.current);n!==(t=I(n,e.type,t))&&(Ie(ln,e),Ie(an,t))}function hn(e){ln.current===e&&(Pe(an),Pe(ln))}var vn={current:0};function mn(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||ye(n)||_e(n)))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!=(64&t.effectTag))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}function gn(e,t){return{responder:e,props:t}}var yn=l.ReactCurrentDispatcher,_n=l.ReactCurrentBatchConfig,bn=0,wn=null,En=null,Dn=null,Sn=null,Cn=null,kn=null,Tn=0,xn=null,An=0,On=!1,Pn=null,In=0;function Nn(){throw Error(a(321))}function Mn(e,t){if(null===t)return!1;for(var n=0;nTn&&zi(Tn=f)):(Ui(f,s.suspenseConfig),o=s.eagerReducer===e?s.eagerState:e(o,s.action)),u=s,s=s.next}while(null!==s&&s!==r);c||(l=u,i=o),_t(o,t.memoizedState)||(dr=!0),t.memoizedState=o,t.baseUpdate=l,t.baseState=i,n.lastRenderedState=o}return[t.memoizedState,n.dispatch]}function zn(e){var t=Ln();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e=(e=t.queue={last:null,dispatch:null,lastRenderedReducer:jn,lastRenderedState:e}).dispatch=Jn.bind(null,wn,e),[t.memoizedState,e]}function Wn(e){return Un(jn)}function Hn(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===xn?(xn={lastEffect:null}).lastEffect=e.next=e:null===(t=xn.lastEffect)?xn.lastEffect=e.next=e:(n=t.next,t.next=e,e.next=n,xn.lastEffect=e),e}function Vn(e,t,n,r){var i=Ln();An|=e,i.memoizedState=Hn(t,n,void 0,void 0===r?null:r)}function qn(e,t,n,r){var i=Bn();r=void 0===r?null:r;var o=void 0;if(null!==En){var u=En.memoizedState;if(o=u.destroy,null!==r&&Mn(r,u.deps))return void Hn(0,n,o,r)}An|=e,i.memoizedState=Hn(t,n,o,r)}function Gn(e,t){return Vn(516,192,e,t)}function $n(e,t){return qn(516,192,e,t)}function Yn(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function Kn(){}function Xn(e,t){return Ln().memoizedState=[e,void 0===t?null:t],e}function Qn(e,t){var n=Bn();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&Mn(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Jn(e,t,n){if(!(25>In))throw Error(a(301));var r=e.alternate;if(e===wn||null!==r&&r===wn)if(On=!0,e={expirationTime:bn,suspenseConfig:null,action:n,eagerReducer:null,eagerState:null,next:null},null===Pn&&(Pn=new Map),void 0===(n=Pn.get(t)))Pn.set(t,e);else{for(t=n;null!==t.next;)t=t.next;t.next=e}else{var i=xi(),o=qt.suspense;o={expirationTime:i=Ai(i,e,o),suspenseConfig:o,action:n,eagerReducer:null,eagerState:null,next:null};var u=t.last;if(null===u)o.next=o;else{var l=u.next;null!==l&&(o.next=l),u.next=o}if(t.last=o,0===e.expirationTime&&(null===r||0===r.expirationTime)&&null!==(r=t.lastRenderedReducer))try{var s=t.lastRenderedState,c=r(s,n);if(o.eagerReducer=r,o.eagerState=c,_t(c,s))return}catch(e){}Oi(e,i)}}var Zn={readContext:It,useCallback:Nn,useContext:Nn,useEffect:Nn,useImperativeHandle:Nn,useLayoutEffect:Nn,useMemo:Nn,useReducer:Nn,useRef:Nn,useState:Nn,useDebugValue:Nn,useResponder:Nn,useDeferredValue:Nn,useTransition:Nn},er={readContext:It,useCallback:Xn,useContext:It,useEffect:Gn,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,Vn(4,36,Yn.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Vn(4,36,e,t)},useMemo:function(e,t){var n=Ln();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Ln();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e=(e=r.queue={last:null,dispatch:null,lastRenderedReducer:e,lastRenderedState:t}).dispatch=Jn.bind(null,wn,e),[r.memoizedState,e]},useRef:function(e){return e={current:e},Ln().memoizedState=e},useState:zn,useDebugValue:Kn,useResponder:gn,useDeferredValue:function(e,t){var n=zn(e),r=n[0],i=n[1];return Gn((function(){u.unstable_next((function(){var n=_n.suspense;_n.suspense=void 0===t?null:t;try{i(e)}finally{_n.suspense=n}}))}),[e,t]),r},useTransition:function(e){var t=zn(!1),n=t[0],r=t[1];return[Xn((function(t){r(!0),u.unstable_next((function(){var n=_n.suspense;_n.suspense=void 0===e?null:e;try{r(!1),t()}finally{_n.suspense=n}}))}),[e,n]),n]}},tr={readContext:It,useCallback:Qn,useContext:It,useEffect:$n,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,qn(4,36,Yn.bind(null,t,e),n)},useLayoutEffect:function(e,t){return qn(4,36,e,t)},useMemo:function(e,t){var n=Bn();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&Mn(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)},useReducer:Un,useRef:function(){return Bn().memoizedState},useState:Wn,useDebugValue:Kn,useResponder:gn,useDeferredValue:function(e,t){var n=Wn(),r=n[0],i=n[1];return $n((function(){u.unstable_next((function(){var n=_n.suspense;_n.suspense=void 0===t?null:t;try{i(e)}finally{_n.suspense=n}}))}),[e,t]),r},useTransition:function(e){var t=Wn(),n=t[0],r=t[1];return[Qn((function(t){r(!0),u.unstable_next((function(){var n=_n.suspense;_n.suspense=void 0===e?null:e;try{r(!1),t()}finally{_n.suspense=n}}))}),[e,n]),n]}},nr=null,rr=null,ir=!1;function or(e,t){var n=oo(5,null,null,0);n.elementType="DELETED",n.type="DELETED",n.stateNode=t,n.return=e,n.effectTag=8,null!==e.lastEffect?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function ur(e,t){switch(e.tag){case 5:return null!==(t=me(t,e.type,e.pendingProps))&&(e.stateNode=t,!0);case 6:return null!==(t=ge(t,e.pendingProps))&&(e.stateNode=t,!0);case 13:default:return!1}}function ar(e){if(ir){var t=rr;if(t){var n=t;if(!ur(e,t)){if(!(t=be(n))||!ur(e,t))return e.effectTag=-1025&e.effectTag|2,ir=!1,void(nr=e);or(nr,n)}nr=e,rr=we(t)}else e.effectTag=-1025&e.effectTag|2,ir=!1,nr=e}}function lr(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;nr=e}function sr(e){if(!Y||e!==nr)return!1;if(!ir)return lr(e),ir=!0,!1;var t=e.type;if(5!==e.tag||"head"!==t&&"body"!==t&&!j(t,e.memoizedProps))for(t=rr;t;)or(e,t),t=be(t);if(lr(e),13===e.tag){if(!Y)throw Error(a(316));if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(a(317));rr=Se(e)}else rr=nr?be(e.stateNode):null;return!0}function cr(){Y&&(rr=nr=null,ir=!1)}var fr=l.ReactCurrentOwner,dr=!1;function pr(e,t,n,r){t.child=null===e?on(t,null,n,r):rn(t,e.child,n,r)}function hr(e,t,n,r,i){n=n.render;var o=t.ref;return Pt(t,i),r=Rn(e,t,n,r,o,i),null===e||dr?(t.effectTag|=1,pr(e,t,r,i),t.child):(t.updateQueue=e.updateQueue,t.effectTag&=-517,e.expirationTime<=i&&(e.expirationTime=0),Pr(e,t,i))}function vr(e,t,n,r,i,o){if(null===e){var u=n.type;return"function"!=typeof u||uo(u)||void 0!==u.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=lo(n.type,null,r,null,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=u,mr(e,t,u,r,i,o))}return u=e.child,it)&&Si.set(e,t))}}function Pi(e,t){e.expirationTime(e=e.nextKnownPendingLevel)?t:e:t}function Ni(e){if(0!==e.lastExpiredTime)e.callbackExpirationTime=1073741823,e.callbackPriority=99,e.callbackNode=ht(Ri.bind(null,e));else{var t=Ii(e),n=e.callbackNode;if(0===t)null!==n&&(e.callbackNode=null,e.callbackExpirationTime=0,e.callbackPriority=90);else{var r=xi();if(1073741823===t?r=99:1===t||2===t?r=95:r=0>=(r=10*(1073741821-t)-10*(1073741821-r))?99:250>=r?98:5250>=r?97:95,null!==n){var i=e.callbackPriority;if(e.callbackExpirationTime===t&&i>=r)return;n!==rt&&$e(n)}e.callbackExpirationTime=t,e.callbackPriority=r,t=1073741823===t?ht(Ri.bind(null,e)):pt(r,Mi.bind(null,e),{timeout:10*(1073741821-t)-st()}),e.callbackNode=t}}}function Mi(e,t){if(Ti=0,t)return go(e,t=xi()),Ni(e),null;var n=Ii(e);if(0!==n){if(t=e.callbackNode,0!=(48&oi))throw Error(a(327));if(Xi(),e===ui&&n===li||Li(e,n),null!==ai){var r=oi;oi|=ii;for(var i=ji();;)try{Hi();break}catch(t){Bi(e,t)}if(Tt(),oi=r,ni.current=i,1===si)throw t=ci,Li(e,n),vo(e,n),Ni(e),t;if(null===ai)switch(i=e.finishedWork=e.current.alternate,e.finishedExpirationTime=n,r=si,ui=null,r){case 0:case 1:throw Error(a(345));case 2:go(e,2=n){e.lastPingedTime=n,Li(e,n);break}}if(0!==(o=Ii(e))&&o!==n)break;if(0!==r&&r!==n){e.lastPingedTime=r;break}e.timeoutHandle=W($i.bind(null,e),i);break}$i(e);break;case 4:if(vo(e,n),n===(r=e.lastSuspendedTime)&&(e.nextKnownPendingLevel=Gi(i)),vi&&(0===(i=e.lastPingedTime)||i>=n)){e.lastPingedTime=n,Li(e,n);break}if(0!==(i=Ii(e))&&i!==n)break;if(0!==r&&r!==n){e.lastPingedTime=r;break}if(1073741823!==di?r=10*(1073741821-di)-st():1073741823===fi?r=0:(r=10*(1073741821-fi)-5e3,0>(r=(i=st())-r)&&(r=0),(n=10*(1073741821-n)-i)<(r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*ti(r/1960))-r)&&(r=n)),10=(r=0|u.busyMinDurationMs)?r=0:(i=0|u.busyDelayMs,r=(o=st()-(10*(1073741821-o)-(0|u.timeoutMs||5e3)))<=i?0:i+r-o),10 component higher in the tree to provide a loading indicator or placeholder to display."+xe(i))}5!==si&&(si=2),o=Fr(o,i),l=r;do{switch(l.tag){case 3:u=o,l.effectTag|=4096,l.expirationTime=t,jt(l,Jr(l,u,t));break e;case 1:u=o;var g=l.type,y=l.stateNode;if(0==(64&l.effectTag)&&("function"==typeof g.getDerivedStateFromError||null!==y&&"function"==typeof y.componentDidCatch&&(null===bi||!bi.has(y)))){l.effectTag|=4096,l.expirationTime=t,jt(l,Zr(l,u,t));break e}}l=l.return}while(null!==l)}ai=qi(ai)}catch(e){t=e;continue}break}}function ji(){var e=ni.current;return ni.current=Zn,null===e?Zn:e}function Ui(e,t){ehi&&(hi=e)}function Wi(){for(;null!==ai;)ai=Vi(ai)}function Hi(){for(;null!==ai&&!Ye();)ai=Vi(ai)}function Vi(e){var t=ei(e.alternate,e,li);return e.memoizedProps=e.pendingProps,null===t&&(t=qi(e)),ri.current=null,t}function qi(e){ai=e;do{var t=ai.alternate;if(e=ai.return,0==(2048&ai.effectTag)){e:{var n=t,r=li,i=(t=ai).pendingProps;switch(t.tag){case 2:case 16:break;case 15:case 0:break;case 1:Be(t.type)&&je();break;case 3:dn(),Ue(),(i=t.stateNode).pendingContext&&(i.context=i.pendingContext,i.pendingContext=null),(null===n||null===n.child)&&sr(t)&&Ir(t),Dr(t);break;case 5:hn(t);var o=cn(sn.current);if(r=t.type,null!==n&&null!=t.stateNode)Sr(n,t,r,i,o),n.ref!==t.ref&&(t.effectTag|=128);else if(i){if(n=cn(an.current),sr(t)){if(i=t,!Y)throw Error(a(175));n=Ee(i.stateNode,i.type,i.memoizedProps,o,n,i),i.updateQueue=n,(n=null!==n)&&Ir(t)}else{var u=R(r,i,o,n,t);Er(u,t,!1,!1),t.stateNode=u,L(u,r,i,o,n)&&Ir(t)}null!==t.ref&&(t.effectTag|=128)}else if(null===t.stateNode)throw Error(a(166));break;case 6:if(n&&null!=t.stateNode)Cr(n,t,n.memoizedProps,i);else{if("string"!=typeof i&&null===t.stateNode)throw Error(a(166));if(n=cn(sn.current),o=cn(an.current),sr(t)){if(n=t,!Y)throw Error(a(176));(n=De(n.stateNode,n.memoizedProps,n))&&Ir(t)}else t.stateNode=z(i,n,o,t)}break;case 11:break;case 13:if(Pe(vn),i=t.memoizedState,0!=(64&t.effectTag)){t.expirationTime=r;break e}i=null!==i,o=!1,null===n?void 0!==t.memoizedProps.fallback&&sr(t):(o=null!==(r=n.memoizedState),i||null===r||null!==(r=n.child.sibling)&&(null!==(u=t.firstEffect)?(t.firstEffect=r,r.nextEffect=u):(t.firstEffect=t.lastEffect=r,r.nextEffect=null),r.effectTag=8)),i&&!o&&0!=(2&t.mode)&&(null===n&&!0!==t.memoizedProps.unstable_avoidThisFallback||0!=(1&vn.current)?0===si&&(si=3):(0!==si&&3!==si||(si=4),0!==hi&&null!==ui&&(vo(ui,li),mo(ui,hi)))),$&&i&&(t.effectTag|=4),G&&(i||o)&&(t.effectTag|=4);break;case 7:case 8:case 12:break;case 4:dn(),Dr(t);break;case 10:At(t);break;case 9:case 14:break;case 17:Be(t.type)&&je();break;case 19:if(Pe(vn),null===(i=t.memoizedState))break;if(o=0!=(64&t.effectTag),null===(u=i.rendering)){if(o)Mr(i,!1);else if(0!==si||null!==n&&0!=(64&n.effectTag))for(n=t.child;null!==n;){if(null!==(u=mn(n))){for(t.effectTag|=64,Mr(i,!1),null!==(n=u.updateQueue)&&(t.updateQueue=n,t.effectTag|=4),null===i.lastEffect&&(t.firstEffect=null),t.lastEffect=i.lastEffect,n=r,i=t.child;null!==i;)r=n,(o=i).effectTag&=2,o.nextEffect=null,o.firstEffect=null,o.lastEffect=null,null===(u=o.alternate)?(o.childExpirationTime=0,o.expirationTime=r,o.child=null,o.memoizedProps=null,o.memoizedState=null,o.updateQueue=null,o.dependencies=null):(o.childExpirationTime=u.childExpirationTime,o.expirationTime=u.expirationTime,o.child=u.child,o.memoizedProps=u.memoizedProps,o.memoizedState=u.memoizedState,o.updateQueue=u.updateQueue,r=u.dependencies,o.dependencies=null===r?null:{expirationTime:r.expirationTime,firstContext:r.firstContext,responders:r.responders}),i=i.sibling;Ie(vn,1&vn.current|2),t=t.child;break e}n=n.sibling}}else{if(!o)if(null!==(n=mn(u))){if(t.effectTag|=64,o=!0,null!==(n=n.updateQueue)&&(t.updateQueue=n,t.effectTag|=4),Mr(i,!0),null===i.tail&&"hidden"===i.tailMode&&!u.alternate){null!==(t=t.lastEffect=i.lastEffect)&&(t.nextEffect=null);break}}else st()>i.tailExpiration&&1i&&(i=r),(u=o.childExpirationTime)>i&&(i=u),o=o.sibling;n.childExpirationTime=i}if(null!==t)return t;null!==e&&0==(2048&e.effectTag)&&(null===e.firstEffect&&(e.firstEffect=ai.firstEffect),null!==ai.lastEffect&&(null!==e.lastEffect&&(e.lastEffect.nextEffect=ai.firstEffect),e.lastEffect=ai.lastEffect),1(e=e.childExpirationTime)?t:e}function $i(e){var t=ct();return dt(99,Yi.bind(null,e,t)),null}function Yi(e,t){do{Xi()}while(null!==Ei);if(0!=(48&oi))throw Error(a(327));var n=e.finishedWork,r=e.finishedExpirationTime;if(null===n)return null;if(e.finishedWork=null,e.finishedExpirationTime=0,n===e.current)throw Error(a(177));e.callbackNode=null,e.callbackExpirationTime=0,e.callbackPriority=90,e.nextKnownPendingLevel=0;var i=Gi(n);if(e.firstPendingTime=i,r<=e.lastSuspendedTime?e.firstSuspendedTime=e.lastSuspendedTime=e.nextKnownPendingLevel=0:r<=e.firstSuspendedTime&&(e.firstSuspendedTime=r-1),r<=e.lastPingedTime&&(e.lastPingedTime=0),r<=e.lastExpiredTime&&(e.lastExpiredTime=0),e===ui&&(ai=ui=null,li=0),1=n?Tr(e,t,n):(Ie(vn,1&vn.current),null!==(t=Pr(e,t,n))?t.sibling:null);Ie(vn,1&vn.current);break;case 19:if(r=t.childExpirationTime>=n,0!=(64&e.effectTag)){if(r)return Or(e,t,n);t.effectTag|=64}if(null!==(i=t.memoizedState)&&(i.rendering=null,i.tail=null),Ie(vn,vn.current),!r)return null}return Pr(e,t,n)}dr=!1}}else dr=!1;switch(t.expirationTime=0,t.tag){case 2:if(r=t.type,null!==e&&(e.alternate=null,t.alternate=null,t.effectTag|=2),e=t.pendingProps,i=Le(t,Me.current),Pt(t,n),i=Rn(null,t,r,e,i,n),t.effectTag|=1,"object"==typeof i&&null!==i&&"function"==typeof i.render&&void 0===i.$$typeof){if(t.tag=1,Fn(),Be(r)){var o=!0;He(t)}else o=!1;t.memoizedState=null!==i.state&&void 0!==i.state?i.state:null;var u=r.getDerivedStateFromProps;"function"==typeof u&&$t(t,r,u,e),i.updater=Yt,t.stateNode=i,i._reactInternalFiber=t,Jt(t,r,e,n),t=br(null,t,r,!0,o,n)}else t.tag=0,pr(null,t,i,n),t=t.child;return t;case 16:if(i=t.elementType,null!==e&&(e.alternate=null,t.alternate=null,t.effectTag|=2),e=t.pendingProps,function(e){if(-1===e._status){e._status=0;var t=e._ctor;t=t(),e._result=t,t.then((function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)}),(function(t){0===e._status&&(e._status=2,e._result=t)}))}}(i),1!==i._status)throw i._result;switch(i=i._result,t.type=i,o=t.tag=function(e){if("function"==typeof e)return uo(e)?1:0;if(null!=e){if((e=e.$$typeof)===y)return 11;if(e===w)return 14}return 2}(i),e=Et(i,e),o){case 0:t=yr(null,t,i,e,n);break;case 1:t=_r(null,t,i,e,n);break;case 11:t=hr(null,t,i,e,n);break;case 14:t=vr(null,t,i,Et(i.type,e),r,n);break;default:throw Error(a(306,i,""))}return t;case 0:return r=t.type,i=t.pendingProps,yr(e,t,r,i=t.elementType===r?i:Et(r,i),n);case 1:return r=t.type,i=t.pendingProps,_r(e,t,r,i=t.elementType===r?i:Et(r,i),n);case 3:if(wr(t),null===(r=t.updateQueue))throw Error(a(282));if(i=null!==(i=t.memoizedState)?i.element:null,Wt(t,r,t.pendingProps,null,n),(r=t.memoizedState.element)===i)cr(),t=Pr(e,t,n);else{if((i=t.stateNode.hydrate)&&(Y?(rr=we(t.stateNode.containerInfo),nr=t,i=ir=!0):i=!1),i)for(n=on(t,null,r,n),t.child=n;n;)n.effectTag=-3&n.effectTag|1024,n=n.sibling;else pr(e,t,r,n),cr();t=t.child}return t;case 5:return pn(t),null===e&&ar(t),r=t.type,i=t.pendingProps,o=null!==e?e.memoizedProps:null,u=i.children,j(r,i)?u=null:null!==o&&j(r,o)&&(t.effectTag|=16),gr(e,t),4&t.mode&&1!==n&&U(r,i)?(t.expirationTime=t.childExpirationTime=1,t=null):(pr(e,t,u,n),t=t.child),t;case 6:return null===e&&ar(t),null;case 13:return Tr(e,t,n);case 4:return fn(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=rn(t,null,r,n):pr(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,hr(e,t,r,i=t.elementType===r?i:Et(r,i),n);case 7:return pr(e,t,t.pendingProps,n),t.child;case 8:case 12:return pr(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,u=t.memoizedProps,xt(t,o=i.value),null!==u){var l=u.value;if(0===(o=_t(l,o)?0:0|("function"==typeof r._calculateChangedBits?r._calculateChangedBits(l,o):1073741823))){if(u.children===i.children&&!Re.current){t=Pr(e,t,n);break e}}else for(null!==(l=t.child)&&(l.return=t);null!==l;){var s=l.dependencies;if(null!==s){u=l.child;for(var c=s.firstContext;null!==c;){if(c.context===r&&0!=(c.observedBits&o)){1===l.tag&&((c=Ft(n,null)).tag=2,Bt(l,c)),l.expirationTime=t&&e<=t}function vo(e,t){var n=e.firstSuspendedTime,r=e.lastSuspendedTime;nt||0===n)&&(e.lastSuspendedTime=t),t<=e.lastPingedTime&&(e.lastPingedTime=0),t<=e.lastExpiredTime&&(e.lastExpiredTime=0)}function mo(e,t){t>e.firstPendingTime&&(e.firstPendingTime=t);var n=e.firstSuspendedTime;0!==n&&(t>=n?e.firstSuspendedTime=e.lastSuspendedTime=e.nextKnownPendingLevel=0:t>=e.lastSuspendedTime&&(e.lastSuspendedTime=t+1),t>e.nextKnownPendingLevel&&(e.nextKnownPendingLevel=t))}function go(e,t){var n=e.lastExpiredTime;(0===n||n>t)&&(e.lastExpiredTime=t)}function yo(e){var t=e._reactInternalFiber;if(void 0===t){if("function"==typeof e.render)throw Error(a(188));throw Error(a(268,Object.keys(e)))}return null===(e=A(t))?null:e.stateNode}function _o(e,t){null!==(e=e.memoizedState)&&null!==e.dehydrated&&e.retryTime{"use strict";e.exports=n(5767)},3296:(e,t,n)=>{"use strict";const r=n(5760);r.createWebSocketStream=n(6387),r.Server=n(43),r.Receiver=n(1762),r.Sender=n(9576),e.exports=r},8716:(e,t,n)=>{"use strict";const{EMPTY_BUFFER:r}=n(5739);function i(e,t){if(0===e.length)return r;if(1===e.length)return e[0];const n=Buffer.allocUnsafe(t);let i=0;for(let t=0;t{"use strict";e.exports={BINARY_TYPES:["nodebuffer","arraybuffer","fragments"],GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),EMPTY_BUFFER:Buffer.alloc(0),NOOP:()=>{}}},7002:e=>{"use strict";class t{constructor(e,t){this.target=t,this.type=e}}class n extends t{constructor(e,t){super("message",t),this.data=e}}class r extends t{constructor(e,t,n){super("close",n),this.wasClean=n._closeFrameReceived&&n._closeFrameSent,this.reason=t,this.code=e}}class i extends t{constructor(e){super("open",e)}}class o extends t{constructor(e,t){super("error",t),this.message=e.message,this.error=e}}const u={addEventListener(e,t,u){if("function"!=typeof t)return;function a(e){t.call(this,new n(e,this))}function l(e,n){t.call(this,new r(e,n,this))}function s(e){t.call(this,new o(e,this))}function c(){t.call(this,new i(this))}const f=u&&u.once?"once":"on";"message"===e?(a._listener=t,this[f](e,a)):"close"===e?(l._listener=t,this[f](e,l)):"error"===e?(s._listener=t,this[f](e,s)):"open"===e?(c._listener=t,this[f](e,c)):this[f](e,t)},removeEventListener(e,t){const n=this.listeners(e);for(let r=0;r{"use strict";const t=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function n(e,t,n){void 0===e[t]?e[t]=[n]:e[t].push(n)}e.exports={format:function(e){return Object.keys(e).map(t=>{let n=e[t];return Array.isArray(n)||(n=[n]),n.map(e=>[t].concat(Object.keys(e).map(t=>{let n=e[t];return Array.isArray(n)||(n=[n]),n.map(e=>!0===e?t:`${t}=${e}`).join("; ")})).join("; ")).join(", ")}).join(", ")},parse:function(e){const r=Object.create(null);if(void 0===e||""===e)return r;let i,o,u=Object.create(null),a=!1,l=!1,s=!1,c=-1,f=-1,d=0;for(;d{"use strict";const t=Symbol("kDone"),n=Symbol("kRun");e.exports=class{constructor(e){this[t]=()=>{this.pending--,this[n]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[n]()}[n](){if(this.pending!==this.concurrency&&this.jobs.length){const e=this.jobs.shift();this.pending++,e(this[t])}}}},2309:(e,t,n)=>{"use strict";const r=n(8761),i=n(8716),o=n(1390),{kStatusCode:u,NOOP:a}=n(5739),l=Buffer.from([0,0,255,255]),s=Symbol("permessage-deflate"),c=Symbol("total-length"),f=Symbol("callback"),d=Symbol("buffers"),p=Symbol("error");let h;function v(e){this[d].push(e),this[c]+=e.length}function m(e){this[c]+=e.length,this[s]._maxPayload<1||this[c]<=this[s]._maxPayload?this[d].push(e):(this[p]=new RangeError("Max payload size exceeded"),this[p][u]=1009,this.removeListener("data",m),this.reset())}function g(e){this[s]._inflate=null,e[u]=1007,this[f](e)}e.exports=class{constructor(e,t,n){if(this._maxPayload=0|n,this._options=e||{},this._threshold=void 0!==this._options.threshold?this._options.threshold:1024,this._isServer=!!t,this._deflate=null,this._inflate=null,this.params=null,!h){const e=void 0!==this._options.concurrencyLimit?this._options.concurrencyLimit:10;h=new o(e)}}static get extensionName(){return"permessage-deflate"}offer(){const e={};return this._options.serverNoContextTakeover&&(e.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(e.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(e.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?e.client_max_window_bits=this._options.clientMaxWindowBits:null==this._options.clientMaxWindowBits&&(e.client_max_window_bits=!0),e}accept(e){return e=this.normalizeParams(e),this.params=this._isServer?this.acceptAsServer(e):this.acceptAsClient(e),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){const e=this._deflate[f];this._deflate.close(),this._deflate=null,e&&e(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(e){const t=this._options,n=e.find(e=>!(!1===t.serverNoContextTakeover&&e.server_no_context_takeover||e.server_max_window_bits&&(!1===t.serverMaxWindowBits||"number"==typeof t.serverMaxWindowBits&&t.serverMaxWindowBits>e.server_max_window_bits)||"number"==typeof t.clientMaxWindowBits&&!e.client_max_window_bits));if(!n)throw new Error("None of the extension offers can be accepted");return t.serverNoContextTakeover&&(n.server_no_context_takeover=!0),t.clientNoContextTakeover&&(n.client_no_context_takeover=!0),"number"==typeof t.serverMaxWindowBits&&(n.server_max_window_bits=t.serverMaxWindowBits),"number"==typeof t.clientMaxWindowBits?n.client_max_window_bits=t.clientMaxWindowBits:!0!==n.client_max_window_bits&&!1!==t.clientMaxWindowBits||delete n.client_max_window_bits,n}acceptAsClient(e){const t=e[0];if(!1===this._options.clientNoContextTakeover&&t.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(t.client_max_window_bits){if(!1===this._options.clientMaxWindowBits||"number"==typeof this._options.clientMaxWindowBits&&t.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"')}else"number"==typeof this._options.clientMaxWindowBits&&(t.client_max_window_bits=this._options.clientMaxWindowBits);return t}normalizeParams(e){return e.forEach(e=>{Object.keys(e).forEach(t=>{let n=e[t];if(n.length>1)throw new Error(`Parameter "${t}" must have only a single value`);if(n=n[0],"client_max_window_bits"===t){if(!0!==n){const e=+n;if(!Number.isInteger(e)||e<8||e>15)throw new TypeError(`Invalid value for parameter "${t}": ${n}`);n=e}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${t}": ${n}`)}else if("server_max_window_bits"===t){const e=+n;if(!Number.isInteger(e)||e<8||e>15)throw new TypeError(`Invalid value for parameter "${t}": ${n}`);n=e}else{if("client_no_context_takeover"!==t&&"server_no_context_takeover"!==t)throw new Error(`Unknown parameter "${t}"`);if(!0!==n)throw new TypeError(`Invalid value for parameter "${t}": ${n}`)}e[t]=n})}),e}decompress(e,t,n){h.add(r=>{this._decompress(e,t,(e,t)=>{r(),n(e,t)})})}compress(e,t,n){h.add(r=>{this._compress(e,t,(e,t)=>{r(),n(e,t)})})}_decompress(e,t,n){const o=this._isServer?"client":"server";if(!this._inflate){const e=o+"_max_window_bits",t="number"!=typeof this.params[e]?r.Z_DEFAULT_WINDOWBITS:this.params[e];this._inflate=r.createInflateRaw({...this._options.zlibInflateOptions,windowBits:t}),this._inflate[s]=this,this._inflate[c]=0,this._inflate[d]=[],this._inflate.on("error",g),this._inflate.on("data",m)}this._inflate[f]=n,this._inflate.write(e),t&&this._inflate.write(l),this._inflate.flush(()=>{const e=this._inflate[p];if(e)return this._inflate.close(),this._inflate=null,void n(e);const r=i.concat(this._inflate[d],this._inflate[c]);t&&this.params[o+"_no_context_takeover"]?(this._inflate.close(),this._inflate=null):(this._inflate[c]=0,this._inflate[d]=[]),n(null,r)})}_compress(e,t,n){const o=this._isServer?"server":"client";if(!this._deflate){const e=o+"_max_window_bits",t="number"!=typeof this.params[e]?r.Z_DEFAULT_WINDOWBITS:this.params[e];this._deflate=r.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:t}),this._deflate[c]=0,this._deflate[d]=[],this._deflate.on("error",a),this._deflate.on("data",v)}this._deflate[f]=n,this._deflate.write(e),this._deflate.flush(r.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let e=i.concat(this._deflate[d],this._deflate[c]);t&&(e=e.slice(0,e.length-4)),this._deflate[f]=null,t&&this.params[o+"_no_context_takeover"]?(this._deflate.close(),this._deflate=null):(this._deflate[c]=0,this._deflate[d]=[]),n(null,e)})}}},1762:(e,t,n)=>{"use strict";const{Writable:r}=n(2413),i=n(2309),{BINARY_TYPES:o,EMPTY_BUFFER:u,kStatusCode:a,kWebSocket:l}=n(5739),{concat:s,toArrayBuffer:c,unmask:f}=n(8716),{isValidStatusCode:d,isValidUTF8:p}=n(9498);function h(e,t,n,r){const i=new e(n?"Invalid WebSocket frame: "+t:t);return Error.captureStackTrace(i,h),i[a]=r,i}e.exports=class extends r{constructor(e,t,n,r){super(),this._binaryType=e||o[0],this[l]=void 0,this._extensions=t||{},this._isServer=!!n,this._maxPayload=0|r,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._state=0,this._loop=!1}_write(e,t,n){if(8===this._opcode&&0==this._state)return n();this._bufferedBytes+=e.length,this._buffers.push(e),this.startLoop(n)}consume(e){if(this._bufferedBytes-=e,e===this._buffers[0].length)return this._buffers.shift();if(e=n.length?t.set(this._buffers.shift(),r):(t.set(new Uint8Array(n.buffer,n.byteOffset,e),r),this._buffers[0]=n.slice(e)),e-=n.length}while(e>0);return t}startLoop(e){let t;this._loop=!0;do{switch(this._state){case 0:t=this.getInfo();break;case 1:t=this.getPayloadLength16();break;case 2:t=this.getPayloadLength64();break;case 3:this.getMask();break;case 4:t=this.getData(e);break;default:return void(this._loop=!1)}}while(this._loop);e(t)}getInfo(){if(this._bufferedBytes<2)return void(this._loop=!1);const e=this.consume(2);if(0!=(48&e[0]))return this._loop=!1,h(RangeError,"RSV2 and RSV3 must be clear",!0,1002);const t=64==(64&e[0]);if(t&&!this._extensions[i.extensionName])return this._loop=!1,h(RangeError,"RSV1 must be clear",!0,1002);if(this._fin=128==(128&e[0]),this._opcode=15&e[0],this._payloadLength=127&e[1],0===this._opcode){if(t)return this._loop=!1,h(RangeError,"RSV1 must be clear",!0,1002);if(!this._fragmented)return this._loop=!1,h(RangeError,"invalid opcode 0",!0,1002);this._opcode=this._fragmented}else if(1===this._opcode||2===this._opcode){if(this._fragmented)return this._loop=!1,h(RangeError,"invalid opcode "+this._opcode,!0,1002);this._compressed=t}else{if(!(this._opcode>7&&this._opcode<11))return this._loop=!1,h(RangeError,"invalid opcode "+this._opcode,!0,1002);if(!this._fin)return this._loop=!1,h(RangeError,"FIN must be set",!0,1002);if(t)return this._loop=!1,h(RangeError,"RSV1 must be clear",!0,1002);if(this._payloadLength>125)return this._loop=!1,h(RangeError,"invalid payload length "+this._payloadLength,!0,1002)}if(this._fin||this._fragmented||(this._fragmented=this._opcode),this._masked=128==(128&e[1]),this._isServer){if(!this._masked)return this._loop=!1,h(RangeError,"MASK must be set",!0,1002)}else if(this._masked)return this._loop=!1,h(RangeError,"MASK must be clear",!0,1002);if(126===this._payloadLength)this._state=1;else{if(127!==this._payloadLength)return this.haveLength();this._state=2}}getPayloadLength16(){if(!(this._bufferedBytes<2))return this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength();this._loop=!1}getPayloadLength64(){if(this._bufferedBytes<8)return void(this._loop=!1);const e=this.consume(8),t=e.readUInt32BE(0);return t>Math.pow(2,21)-1?(this._loop=!1,h(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009)):(this._payloadLength=t*Math.pow(2,32)+e.readUInt32BE(4),this.haveLength())}haveLength(){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0))return this._loop=!1,h(RangeError,"Max payload size exceeded",!1,1009);this._masked?this._state=3:this._state=4}getMask(){this._bufferedBytes<4?this._loop=!1:(this._mask=this.consume(4),this._state=4)}getData(e){let t=u;if(this._payloadLength){if(this._bufferedBytes7?this.controlMessage(t):this._compressed?(this._state=5,void this.decompress(t,e)):(t.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(t)),this.dataMessage())}decompress(e,t){this._extensions[i.extensionName].decompress(e,this._fin,(e,n)=>{if(e)return t(e);if(n.length){if(this._messageLength+=n.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return t(h(RangeError,"Max payload size exceeded",!1,1009));this._fragments.push(n)}const r=this.dataMessage();if(r)return t(r);this.startLoop(t)})}dataMessage(){if(this._fin){const e=this._messageLength,t=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],2===this._opcode){let n;n="nodebuffer"===this._binaryType?s(t,e):"arraybuffer"===this._binaryType?c(s(t,e)):t,this.emit("message",n)}else{const n=s(t,e);if(!p(n))return this._loop=!1,h(Error,"invalid UTF-8 sequence",!0,1007);this.emit("message",n.toString())}}this._state=0}controlMessage(e){if(8===this._opcode)if(this._loop=!1,0===e.length)this.emit("conclude",1005,""),this.end();else{if(1===e.length)return h(RangeError,"invalid payload length 1",!0,1002);{const t=e.readUInt16BE(0);if(!d(t))return h(RangeError,"invalid status code "+t,!0,1002);const n=e.slice(2);if(!p(n))return h(Error,"invalid UTF-8 sequence",!0,1007);this.emit("conclude",t,n.toString()),this.end()}}else 9===this._opcode?this.emit("ping",e):this.emit("pong",e);this._state=0}}},9576:(e,t,n)=>{"use strict";const{randomFillSync:r}=n(6417),i=n(2309),{EMPTY_BUFFER:o}=n(5739),{isValidStatusCode:u}=n(9498),{mask:a,toBuffer:l}=n(8716),s=Buffer.alloc(4);class c{constructor(e,t){this._extensions=t||{},this._socket=e,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._deflating=!1,this._queue=[]}static frame(e,t){const n=t.mask&&t.readOnly;let i=t.mask?6:2,o=e.length;e.length>=65536?(i+=8,o=127):e.length>125&&(i+=2,o=126);const u=Buffer.allocUnsafe(n?e.length+i:i);return u[0]=t.fin?128|t.opcode:t.opcode,t.rsv1&&(u[0]|=64),u[1]=o,126===o?u.writeUInt16BE(e.length,2):127===o&&(u.writeUInt32BE(0,2),u.writeUInt32BE(e.length,6)),t.mask?(r(s,0,4),u[1]|=128,u[i-4]=s[0],u[i-3]=s[1],u[i-2]=s[2],u[i-1]=s[3],n?(a(e,s,u,i,e.length),[u]):(a(e,s,e,0,e.length),[u,e])):[u,e]}close(e,t,n,r){let i;if(void 0===e)i=o;else{if("number"!=typeof e||!u(e))throw new TypeError("First argument must be a valid error code number");if(void 0===t||""===t)i=Buffer.allocUnsafe(2),i.writeUInt16BE(e,0);else{const n=Buffer.byteLength(t);if(n>123)throw new RangeError("The message must not be greater than 123 bytes");i=Buffer.allocUnsafe(2+n),i.writeUInt16BE(e,0),i.write(t,2)}}this._deflating?this.enqueue([this.doClose,i,n,r]):this.doClose(i,n,r)}doClose(e,t,n){this.sendFrame(c.frame(e,{fin:!0,rsv1:!1,opcode:8,mask:t,readOnly:!1}),n)}ping(e,t,n){const r=l(e);if(r.length>125)throw new RangeError("The data size must not be greater than 125 bytes");this._deflating?this.enqueue([this.doPing,r,t,l.readOnly,n]):this.doPing(r,t,l.readOnly,n)}doPing(e,t,n,r){this.sendFrame(c.frame(e,{fin:!0,rsv1:!1,opcode:9,mask:t,readOnly:n}),r)}pong(e,t,n){const r=l(e);if(r.length>125)throw new RangeError("The data size must not be greater than 125 bytes");this._deflating?this.enqueue([this.doPong,r,t,l.readOnly,n]):this.doPong(r,t,l.readOnly,n)}doPong(e,t,n,r){this.sendFrame(c.frame(e,{fin:!0,rsv1:!1,opcode:10,mask:t,readOnly:n}),r)}send(e,t,n){const r=l(e),o=this._extensions[i.extensionName];let u=t.binary?2:1,a=t.compress;if(this._firstFragment?(this._firstFragment=!1,a&&o&&(a=r.length>=o._threshold),this._compress=a):(a=!1,u=0),t.fin&&(this._firstFragment=!0),o){const e={fin:t.fin,rsv1:a,opcode:u,mask:t.mask,readOnly:l.readOnly};this._deflating?this.enqueue([this.dispatch,r,this._compress,e,n]):this.dispatch(r,this._compress,e,n)}else this.sendFrame(c.frame(r,{fin:t.fin,rsv1:!1,opcode:u,mask:t.mask,readOnly:l.readOnly}),n)}dispatch(e,t,n,r){if(!t)return void this.sendFrame(c.frame(e,n),r);const o=this._extensions[i.extensionName];this._bufferedBytes+=e.length,this._deflating=!0,o.compress(e,n.fin,(t,i)=>{if(this._socket.destroyed){const e=new Error("The socket was closed while data was being compressed");"function"==typeof r&&r(e);for(let t=0;t{"use strict";const{Duplex:r}=n(2413);function i(e){e.emit("close")}function o(){!this.destroyed&&this._writableState.finished&&this.destroy()}function u(e){this.removeListener("error",u),this.destroy(),0===this.listenerCount("error")&&this.emit("error",e)}e.exports=function(e,t){let n=!0;function a(){n&&e._socket.resume()}e.readyState===e.CONNECTING?e.once("open",(function(){e._receiver.removeAllListeners("drain"),e._receiver.on("drain",a)})):(e._receiver.removeAllListeners("drain"),e._receiver.on("drain",a));const l=new r({...t,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return e.on("message",(function(t){l.push(t)||(n=!1,e._socket.pause())})),e.once("error",(function(e){l.destroyed||l.destroy(e)})),e.once("close",(function(){l.destroyed||l.push(null)})),l._destroy=function(t,n){if(e.readyState===e.CLOSED)return n(t),void process.nextTick(i,l);let r=!1;e.once("error",(function(e){r=!0,n(e)})),e.once("close",(function(){r||n(t),process.nextTick(i,l)})),e.terminate()},l._final=function(t){e.readyState!==e.CONNECTING?null!==e._socket&&(e._socket._writableState.finished?(t(),l._readableState.endEmitted&&l.destroy()):(e._socket.once("finish",(function(){t()})),e.close())):e.once("open",(function(){l._final(t)}))},l._read=function(){e.readyState!==e.OPEN||n||(n=!0,e._receiver._writableState.needDrain||e._socket.resume())},l._write=function(t,n,r){e.readyState!==e.CONNECTING?e.send(t,r):e.once("open",(function(){l._write(t,n,r)}))},l.on("end",o),l.on("error",u),l}},9498:(e,t,n)=>{"use strict";try{const e=n(Object(function(){var e=new Error("Cannot find module 'utf-8-validate'");throw e.code="MODULE_NOT_FOUND",e}()));t.isValidUTF8="object"==typeof e?e.Validation.isValidUTF8:e}catch(e){t.isValidUTF8=()=>!0}t.isValidStatusCode=e=>e>=1e3&&e<=1014&&1004!==e&&1005!==e&&1006!==e||e>=3e3&&e<=4999},43:(e,t,n)=>{"use strict";const r=n(8614),{createHash:i}=n(6417),{createServer:o,STATUS_CODES:u}=n(8605),a=n(2309),l=n(5760),{format:s,parse:c}=n(8162),{GUID:f,kWebSocket:d}=n(5739),p=/^[+/0-9A-Za-z]{22}==$/;function h(e){e.emit("close")}function v(){this.destroy()}function m(e,t,n,r){e.writable&&(n=n||u[t],r={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(n),...r},e.write(`HTTP/1.1 ${t} ${u[t]}\r\n`+Object.keys(r).map(e=>`${e}: ${r[e]}`).join("\r\n")+"\r\n\r\n"+n)),e.removeListener("error",v),e.destroy()}e.exports=class extends r{constructor(e,t){if(super(),null==(e={maxPayload:104857600,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,...e}).port&&!e.server&&!e.noServer)throw new TypeError('One of the "port", "server", or "noServer" options must be specified');null!=e.port?(this._server=o((e,t)=>{const n=u[426];t.writeHead(426,{"Content-Length":n.length,"Content-Type":"text/plain"}),t.end(n)}),this._server.listen(e.port,e.host,e.backlog,t)):e.server&&(this._server=e.server),this._server&&(this._removeListeners=function(e,t){for(const n of Object.keys(t))e.on(n,t[n]);return function(){for(const n of Object.keys(t))e.removeListener(n,t[n])}}(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(e,t,n)=>{this.handleUpgrade(e,t,n,t=>{this.emit("connection",t,e)})}})),!0===e.perMessageDeflate&&(e.perMessageDeflate={}),e.clientTracking&&(this.clients=new Set),this.options=e}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(e){if(e&&this.once("close",e),this.clients)for(const e of this.clients)e.terminate();const t=this._server;t&&(this._removeListeners(),this._removeListeners=this._server=null,null!=this.options.port)?t.close(()=>this.emit("close")):process.nextTick(h,this)}shouldHandle(e){if(this.options.path){const t=e.url.indexOf("?");if((-1!==t?e.url.slice(0,t):e.url)!==this.options.path)return!1}return!0}handleUpgrade(e,t,n,r){t.on("error",v);const i=void 0!==e.headers["sec-websocket-key"]&&e.headers["sec-websocket-key"].trim(),o=+e.headers["sec-websocket-version"],u={};if("GET"!==e.method||"websocket"!==e.headers.upgrade.toLowerCase()||!i||!p.test(i)||8!==o&&13!==o||!this.shouldHandle(e))return m(t,400);if(this.options.perMessageDeflate){const n=new a(this.options.perMessageDeflate,!0,this.options.maxPayload);try{const t=c(e.headers["sec-websocket-extensions"]);t[a.extensionName]&&(n.accept(t[a.extensionName]),u[a.extensionName]=n)}catch(e){return m(t,400)}}if(this.options.verifyClient){const a={origin:e.headers[""+(8===o?"sec-websocket-origin":"origin")],secure:!(!e.connection.authorized&&!e.connection.encrypted),req:e};if(2===this.options.verifyClient.length)return void this.options.verifyClient(a,(o,a,l,s)=>{if(!o)return m(t,a||401,l,s);this.completeUpgrade(i,u,e,t,n,r)});if(!this.options.verifyClient(a))return m(t,401)}this.completeUpgrade(i,u,e,t,n,r)}completeUpgrade(e,t,n,r,o,u){if(!r.readable||!r.writable)return r.destroy();if(r[d])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");const c=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade","Sec-WebSocket-Accept: "+i("sha1").update(e+f).digest("base64")],p=new l(null);let h=n.headers["sec-websocket-protocol"];if(h&&(h=h.trim().split(/ *, */),h=this.options.handleProtocols?this.options.handleProtocols(h,n):h[0],h&&(c.push("Sec-WebSocket-Protocol: "+h),p.protocol=h)),t[a.extensionName]){const e=t[a.extensionName].params,n=s({[a.extensionName]:[e]});c.push("Sec-WebSocket-Extensions: "+n),p._extensions=t}this.emit("headers",c,n),r.write(c.concat("\r\n").join("\r\n")),r.removeListener("error",v),p.setSocket(r,o,this.options.maxPayload),this.clients&&(this.clients.add(p),p.on("close",()=>this.clients.delete(p))),u(p)}}},5760:(e,t,n)=>{"use strict";const r=n(8614),i=n(7211),o=n(8605),u=n(1631),a=n(4016),{randomBytes:l,createHash:s}=n(6417),{URL:c}=n(8835),f=n(2309),d=n(1762),p=n(9576),{BINARY_TYPES:h,EMPTY_BUFFER:v,GUID:m,kStatusCode:g,kWebSocket:y,NOOP:_}=n(5739),{addEventListener:b,removeEventListener:w}=n(7002),{format:E,parse:D}=n(8162),{toBuffer:S}=n(8716),C=["CONNECTING","OPEN","CLOSING","CLOSED"],k=[8,13];class T extends r{constructor(e,t,n){super(),this.readyState=T.CONNECTING,this.protocol="",this._binaryType=h[0],this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage="",this._closeTimer=null,this._closeCode=1006,this._extensions={},this._receiver=null,this._sender=null,this._socket=null,null!==e?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,Array.isArray(t)?t=t.join(", "):"object"==typeof t&&null!==t&&(n=t,t=void 0),function e(t,n,r,u){const a={protocolVersion:k[1],maxPayload:104857600,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...u,createConnection:void 0,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:void 0,host:void 0,path:void 0,port:void 0};if(!k.includes(a.protocolVersion))throw new RangeError(`Unsupported protocol version: ${a.protocolVersion} (supported versions: ${k.join(", ")})`);let d;n instanceof c?(d=n,t.url=n.href):(d=new c(n),t.url=n);const p="ws+unix:"===d.protocol;if(!(d.host||p&&d.pathname))throw new Error("Invalid URL: "+t.url);const h="wss:"===d.protocol||"https:"===d.protocol,v=h?443:80,g=l(16).toString("base64"),y=h?i.get:o.get;let _;a.createConnection=h?A:x,a.defaultPort=a.defaultPort||v,a.port=d.port||v,a.host=d.hostname.startsWith("[")?d.hostname.slice(1,-1):d.hostname,a.headers={"Sec-WebSocket-Version":a.protocolVersion,"Sec-WebSocket-Key":g,Connection:"Upgrade",Upgrade:"websocket",...a.headers},a.path=d.pathname+d.search,a.timeout=a.handshakeTimeout,a.perMessageDeflate&&(_=new f(!0!==a.perMessageDeflate?a.perMessageDeflate:{},!1,a.maxPayload),a.headers["Sec-WebSocket-Extensions"]=E({[f.extensionName]:_.offer()}));r&&(a.headers["Sec-WebSocket-Protocol"]=r);a.origin&&(a.protocolVersion<13?a.headers["Sec-WebSocket-Origin"]=a.origin:a.headers.Origin=a.origin);(d.username||d.password)&&(a.auth=`${d.username}:${d.password}`);if(p){const e=a.path.split(":");a.socketPath=e[0],a.path=e[1]}let b=t._req=y(a);a.timeout&&b.on("timeout",()=>{O(t,b,"Opening handshake has timed out")});b.on("error",e=>{t._req.aborted||(b=t._req=null,t.readyState=T.CLOSING,t.emit("error",e),t.emitClose())}),b.on("response",i=>{const o=i.headers.location,l=i.statusCode;if(o&&a.followRedirects&&l>=300&&l<400){if(++t._redirects>a.maxRedirects)return void O(t,b,"Maximum redirects exceeded");b.abort();const i=new c(o,n);e(t,i,r,u)}else t.emit("unexpected-response",b,i)||O(t,b,"Unexpected server response: "+i.statusCode)}),b.on("upgrade",(e,n,i)=>{if(t.emit("upgrade",e),t.readyState!==T.CONNECTING)return;b=t._req=null;const o=s("sha1").update(g+m).digest("base64");if(e.headers["sec-websocket-accept"]!==o)return void O(t,n,"Invalid Sec-WebSocket-Accept header");const u=e.headers["sec-websocket-protocol"],l=(r||"").split(/, */);let c;if(!r&&u?c="Server sent a subprotocol but none was requested":r&&!u?c="Server sent no subprotocol":u&&!l.includes(u)&&(c="Server sent an invalid subprotocol"),c)O(t,n,c);else{if(u&&(t.protocol=u),_)try{const n=D(e.headers["sec-websocket-extensions"]);n[f.extensionName]&&(_.accept(n[f.extensionName]),t._extensions[f.extensionName]=_)}catch(e){return void O(t,n,"Invalid Sec-WebSocket-Extensions header")}t.setSocket(n,i,a.maxPayload)}})}(this,e,t,n)):this._isServer=!0}get CONNECTING(){return T.CONNECTING}get CLOSING(){return T.CLOSING}get CLOSED(){return T.CLOSED}get OPEN(){return T.OPEN}get binaryType(){return this._binaryType}set binaryType(e){h.includes(e)&&(this._binaryType=e,this._receiver&&(this._receiver._binaryType=e))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}setSocket(e,t,n){const r=new d(this._binaryType,this._extensions,this._isServer,n);this._sender=new p(e,this._extensions),this._receiver=r,this._socket=e,r[y]=this,e[y]=this,r.on("conclude",I),r.on("drain",N),r.on("error",M),r.on("message",F),r.on("ping",L),r.on("pong",B),e.setTimeout(0),e.setNoDelay(),t.length>0&&e.unshift(t),e.on("close",j),e.on("data",U),e.on("end",z),e.on("error",W),this.readyState=T.OPEN,this.emit("open")}emitClose(){if(!this._socket)return this.readyState=T.CLOSED,void this.emit("close",this._closeCode,this._closeMessage);this._extensions[f.extensionName]&&this._extensions[f.extensionName].cleanup(),this._receiver.removeAllListeners(),this.readyState=T.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(e,t){if(this.readyState!==T.CLOSED){if(this.readyState===T.CONNECTING){const e="WebSocket was closed before the connection was established";return O(this,this._req,e)}this.readyState!==T.CLOSING?(this.readyState=T.CLOSING,this._sender.close(e,t,!this._isServer,e=>{e||(this._closeFrameSent=!0,this._closeFrameReceived&&this._socket.end())}),this._closeTimer=setTimeout(this._socket.destroy.bind(this._socket),3e4)):this._closeFrameSent&&this._closeFrameReceived&&this._socket.end()}}ping(e,t,n){if(this.readyState===T.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");"function"==typeof e?(n=e,e=t=void 0):"function"==typeof t&&(n=t,t=void 0),"number"==typeof e&&(e=e.toString()),this.readyState===T.OPEN?(void 0===t&&(t=!this._isServer),this._sender.ping(e||v,t,n)):P(this,e,n)}pong(e,t,n){if(this.readyState===T.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");"function"==typeof e?(n=e,e=t=void 0):"function"==typeof t&&(n=t,t=void 0),"number"==typeof e&&(e=e.toString()),this.readyState===T.OPEN?(void 0===t&&(t=!this._isServer),this._sender.pong(e||v,t,n)):P(this,e,n)}send(e,t,n){if(this.readyState===T.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if("function"==typeof t&&(n=t,t={}),"number"==typeof e&&(e=e.toString()),this.readyState!==T.OPEN)return void P(this,e,n);const r={binary:"string"!=typeof e,mask:!this._isServer,compress:!0,fin:!0,...t};this._extensions[f.extensionName]||(r.compress=!1),this._sender.send(e||v,r,n)}terminate(){if(this.readyState!==T.CLOSED){if(this.readyState===T.CONNECTING){const e="WebSocket was closed before the connection was established";return O(this,this._req,e)}this._socket&&(this.readyState=T.CLOSING,this._socket.destroy())}}}function x(e){return e.path=e.socketPath,u.connect(e)}function A(e){return e.path=void 0,e.servername||""===e.servername||(e.servername=e.host),a.connect(e)}function O(e,t,n){e.readyState=T.CLOSING;const r=new Error(n);Error.captureStackTrace(r,O),t.setHeader?(t.abort(),t.once("abort",e.emitClose.bind(e)),e.emit("error",r)):(t.destroy(r),t.once("error",e.emit.bind(e,"error")),t.once("close",e.emitClose.bind(e)))}function P(e,t,n){if(t){const n=S(t).length;e._socket?e._sender._bufferedBytes+=n:e._bufferedAmount+=n}if(n){n(new Error(`WebSocket is not open: readyState ${e.readyState} (${C[e.readyState]})`))}}function I(e,t){const n=this[y];n._socket.removeListener("data",U),n._socket.resume(),n._closeFrameReceived=!0,n._closeMessage=t,n._closeCode=e,1005===e?n.close():n.close(e,t)}function N(){this[y]._socket.resume()}function M(e){const t=this[y];t._socket.removeListener("data",U),t.readyState=T.CLOSING,t._closeCode=e[g],t.emit("error",e),t._socket.destroy()}function R(){this[y].emitClose()}function F(e){this[y].emit("message",e)}function L(e){const t=this[y];t.pong(e,!t._isServer,_),t.emit("ping",e)}function B(e){this[y].emit("pong",e)}function j(){const e=this[y];this.removeListener("close",j),this.removeListener("end",z),e.readyState=T.CLOSING,e._socket.read(),e._receiver.end(),this.removeListener("data",U),this[y]=void 0,clearTimeout(e._closeTimer),e._receiver._writableState.finished||e._receiver._writableState.errorEmitted?e.emitClose():(e._receiver.on("error",R),e._receiver.on("finish",R))}function U(e){this[y]._receiver.write(e)||this.pause()}function z(){const e=this[y];e.readyState=T.CLOSING,e._receiver.end(),this.end()}function W(){const e=this[y];this.removeListener("error",W),this.on("error",_),e&&(e.readyState=T.CLOSING,this.destroy())}C.forEach((e,t)=>{T[e]=t}),["open","error","close","message"].forEach(e=>{Object.defineProperty(T.prototype,"on"+e,{get(){const t=this.listeners(e);for(let e=0;e{"use strict";function r(e){const t=[...e.caches],n=t.shift();return void 0===n?i():{get:(e,i,o={miss:()=>Promise.resolve()})=>n.get(e,i,o).catch(()=>r({caches:t}).get(e,i,o)),set:(e,i)=>n.set(e,i).catch(()=>r({caches:t}).set(e,i)),delete:e=>n.delete(e).catch(()=>r({caches:t}).delete(e)),clear:()=>n.clear().catch(()=>r({caches:t}).clear())}}function i(){return{get:(e,t,n={miss:()=>Promise.resolve()})=>t().then(e=>Promise.all([e,n.miss(e)])).then(([e])=>e),set:(e,t)=>Promise.resolve(t),delete:e=>Promise.resolve(),clear:()=>Promise.resolve()}}n.r(t),n.d(t,{createFallbackableCache:()=>r,createNullCache:()=>i})},6712:(e,t,n)=>{"use strict";function r(e={serializable:!0}){let t={};return{get(n,r,i={miss:()=>Promise.resolve()}){const o=JSON.stringify(n);if(o in t)return Promise.resolve(e.serializable?JSON.parse(t[o]):t[o]);const u=r(),a=i&&i.miss||(()=>Promise.resolve());return u.then(e=>a(e)).then(()=>u)},set:(n,r)=>(t[JSON.stringify(n)]=e.serializable?JSON.stringify(r):r,Promise.resolve(r)),delete:e=>(delete t[JSON.stringify(e)],Promise.resolve()),clear:()=>(t={},Promise.resolve())}}n.r(t),n.d(t,{createInMemoryCache:()=>r})},2223:(e,t,n)=>{"use strict";n.r(t),n.d(t,{addABTest:()=>a,createAnalyticsClient:()=>u,deleteABTest:()=>l,getABTest:()=>s,getABTests:()=>c,stopABTest:()=>f});var r=n(1757),i=n(7858),o=n(5541);const u=e=>{const t=e.region||"us",n=(0,r.createAuth)(r.AuthMode.WithinHeaders,e.appId,e.apiKey),o=(0,i.createTransporter)({hosts:[{url:`analytics.${t}.algolia.com`}],...e,headers:{...n.headers(),"content-type":"application/json",...e.headers},queryParameters:{...n.queryParameters(),...e.queryParameters}}),u=e.appId;return(0,r.addMethods)({appId:u,transporter:o},e.methods)},a=e=>(t,n)=>e.transporter.write({method:o.N.Post,path:"2/abtests",data:t},n),l=e=>(t,n)=>e.transporter.write({method:o.N.Delete,path:(0,r.encode)("2/abtests/%s",t)},n),s=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("2/abtests/%s",t)},n),c=e=>t=>e.transporter.read({method:o.N.Get,path:"2/abtests"},t),f=e=>(t,n)=>e.transporter.write({method:o.N.Post,path:(0,r.encode)("2/abtests/%s/stop",t)},n)},1757:(e,t,n)=>{"use strict";function r(e,t,n){const r={"x-algolia-api-key":n,"x-algolia-application-id":t};return{headers:()=>e===f.WithinHeaders?r:{},queryParameters:()=>e===f.WithinQueryParameters?r:{}}}function i(e){let t=0;const n=()=>(t++,new Promise(r=>{setTimeout(()=>{r(e(n))},Math.min(100*t,1e3))}));return e(n)}function o(e,t=((e,t)=>Promise.resolve())){return Object.assign(e,{wait:n=>o(e.then(e=>Promise.all([t(e,n),e])).then(e=>e[1]))})}function u(e){let t=e.length-1;for(;t>0;t--){const n=Math.floor(Math.random()*(t+1)),r=e[t];e[t]=e[n],e[n]=r}return e}function a(e,t){return Object.keys(void 0!==t?t:{}).forEach(n=>{e[n]=t[n](e)}),e}function l(e,...t){let n=0;return e.replace(/%s/g,()=>encodeURIComponent(t[n++]))}n.r(t),n.d(t,{AuthMode:()=>f,addMethods:()=>a,createAuth:()=>r,createRetryablePromise:()=>i,createWaitablePromise:()=>o,destroy:()=>c,encode:()=>l,shuffle:()=>u,version:()=>s});const s="4.2.0",c=e=>()=>e.transporter.requester.destroy(),f={WithinQueryParameters:0,WithinHeaders:1}},103:(e,t,n)=>{"use strict";n.r(t),n.d(t,{createRecommendationClient:()=>u,getPersonalizationStrategy:()=>a,setPersonalizationStrategy:()=>l});var r=n(1757),i=n(7858),o=n(5541);const u=e=>{const t=e.region||"us",n=(0,r.createAuth)(r.AuthMode.WithinHeaders,e.appId,e.apiKey),o=(0,i.createTransporter)({hosts:[{url:`recommendation.${t}.algolia.com`}],...e,headers:{...n.headers(),"content-type":"application/json",...e.headers},queryParameters:{...n.queryParameters(),...e.queryParameters}});return(0,r.addMethods)({appId:e.appId,transporter:o},e.methods)},a=e=>t=>e.transporter.read({method:o.N.Get,path:"1/strategies/personalization"},t),l=e=>(t,n)=>e.transporter.write({method:o.N.Post,path:"1/strategies/personalization",data:t},n)},6586:(e,t,n)=>{"use strict";n.r(t),n.d(t,{ApiKeyACLEnum:()=>Te,BatchActionEnum:()=>xe,ScopeEnum:()=>Ae,StrategyEnum:()=>Oe,SynonymEnum:()=>Pe,addApiKey:()=>d,assignUserID:()=>p,assignUserIDs:()=>h,batch:()=>z,browseObjects:()=>W,browseRules:()=>H,browseSynonyms:()=>V,chunkedBatch:()=>q,clearObjects:()=>G,clearRules:()=>$,clearSynonyms:()=>Y,copyIndex:()=>v,copyRules:()=>m,copySettings:()=>g,copySynonyms:()=>y,createBrowsablePromise:()=>a,createMissingObjectIDError:()=>s,createObjectNotFoundError:()=>c,createSearchClient:()=>l,createValidUntilNotFoundError:()=>f,deleteApiKey:()=>_,deleteBy:()=>K,deleteIndex:()=>X,deleteObject:()=>Q,deleteObjects:()=>J,deleteRule:()=>Z,deleteSynonym:()=>ee,exists:()=>te,findObject:()=>ne,generateSecuredApiKey:()=>b,getApiKey:()=>w,getLogs:()=>E,getObject:()=>re,getObjectPosition:()=>ie,getObjects:()=>oe,getRule:()=>ue,getSecuredApiKeyRemainingValidity:()=>D,getSettings:()=>ae,getSynonym:()=>le,getTask:()=>se,getTopUserIDs:()=>S,getUserID:()=>C,hasPendingMappings:()=>k,initIndex:()=>T,listApiKeys:()=>x,listClusters:()=>A,listIndices:()=>O,listUserIDs:()=>P,moveIndex:()=>I,multipleBatch:()=>N,multipleGetObjects:()=>M,multipleQueries:()=>R,multipleSearchForFacetValues:()=>F,partialUpdateObject:()=>ce,partialUpdateObjects:()=>fe,removeUserID:()=>L,replaceAllObjects:()=>de,replaceAllRules:()=>pe,replaceAllSynonyms:()=>he,restoreApiKey:()=>B,saveObject:()=>ve,saveObjects:()=>me,saveRule:()=>ge,saveRules:()=>ye,saveSynonym:()=>_e,saveSynonyms:()=>be,search:()=>we,searchForFacetValues:()=>Ee,searchRules:()=>De,searchSynonyms:()=>Se,searchUserIDs:()=>j,setSettings:()=>Ce,updateApiKey:()=>U,waitTask:()=>ke});var r=n(1757),i=n(7858),o=n(5541),u=n(6417);function a(e){const t=n=>e.request(n).then(r=>{if(void 0!==e.batch&&e.batch(r.hits),!e.shouldStop(r))return r.cursor?t({cursor:r.cursor}):t({page:(n.page||0)+1})});return t({})}const l=e=>{const t=e.appId,n=(0,r.createAuth)(void 0!==e.authMode?e.authMode:r.AuthMode.WithinHeaders,t,e.apiKey),o=(0,i.createTransporter)({hosts:[{url:t+"-dsn.algolia.net",accept:i.CallEnum.Read},{url:t+".algolia.net",accept:i.CallEnum.Write}].concat((0,r.shuffle)([{url:t+"-1.algolianet.com"},{url:t+"-2.algolianet.com"},{url:t+"-3.algolianet.com"}])),...e,headers:{...n.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...n.queryParameters(),...e.queryParameters}}),u={transporter:o,appId:t,addAlgoliaAgent(e,t){o.userAgent.add({segment:e,version:t})},clearCache:()=>Promise.all([o.requestsCache.clear(),o.responsesCache.clear()]).then(()=>{})};return(0,r.addMethods)(u,e.methods)};function s(){return{name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}}function c(){return{name:"ObjectNotFoundError",message:"Object not found."}}function f(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}const d=e=>(t,n)=>{const{queryParameters:i,...u}=n||{},a={acl:t,...void 0!==i?{queryParameters:i}:{}};return(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:"1/keys",data:a},u),(t,n)=>(0,r.createRetryablePromise)(r=>w(e)(t.key,n).catch(e=>{if(404!==e.status)throw e;return r()})))},p=e=>(t,n,r)=>{const u=(0,i.createMappedRequestOptions)(r);return u.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:o.N.Post,path:"1/clusters/mapping",data:{cluster:n}},u)},h=e=>(t,n,r)=>e.transporter.write({method:o.N.Post,path:"1/clusters/mapping/batch",data:{users:t,cluster:n}},r),v=e=>(t,n,i)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/operation",t),data:{operation:"copy",destination:n}},i),(n,r)=>T(e)(t,{methods:{waitTask:ke}}).waitTask(n.taskID,r)),m=e=>(t,n,r)=>v(e)(t,n,{...r,scope:[Ae.Rules]}),g=e=>(t,n,r)=>v(e)(t,n,{...r,scope:[Ae.Settings]}),y=e=>(t,n,r)=>v(e)(t,n,{...r,scope:[Ae.Synonyms]}),_=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Delete,path:(0,r.encode)("1/keys/%s",t)},n),(n,i)=>(0,r.createRetryablePromise)(n=>w(e)(t,i).then(n).catch(e=>{if(404!==e.status)throw e}))),b=()=>(e,t)=>{const n=(0,i.serializeQueryParameters)(t),r=(0,u.createHmac)("sha256",e).update(n).digest("hex");return Buffer.from(r+n).toString("base64")},w=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/keys/%s",t)},n),E=e=>t=>e.transporter.read({method:o.N.Get,path:"1/logs"},t),D=()=>e=>{const t=Buffer.from(e,"base64").toString("ascii").match(/validUntil=(\d+)/);if(null===t)throw{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."};return parseInt(t[1],10)-Math.round((new Date).getTime()/1e3)},S=e=>t=>e.transporter.read({method:o.N.Get,path:"1/clusters/mapping/top"},t),C=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/clusters/mapping/%s",t)},n),k=e=>t=>{const{retrieveMappings:n,...r}=t||{};return!0===n&&(r.getClusters=!0),e.transporter.read({method:o.N.Get,path:"1/clusters/mapping/pending"},r)},T=e=>(t,n={})=>{const i={transporter:e.transporter,appId:e.appId,indexName:t};return(0,r.addMethods)(i,n.methods)},x=e=>t=>e.transporter.read({method:o.N.Get,path:"1/keys"},t),A=e=>t=>e.transporter.read({method:o.N.Get,path:"1/clusters"},t),O=e=>t=>e.transporter.read({method:o.N.Get,path:"1/indexes"},t),P=e=>t=>e.transporter.read({method:o.N.Get,path:"1/clusters/mapping"},t),I=e=>(t,n,i)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/operation",t),data:{operation:"move",destination:n}},i),(n,r)=>T(e)(t,{methods:{waitTask:ke}}).waitTask(n.taskID,r)),N=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:"1/indexes/*/batch",data:{requests:t}},n),(t,n)=>Promise.all(Object.keys(t.taskID).map(r=>T(e)(r,{methods:{waitTask:ke}}).waitTask(t.taskID[r],n)))),M=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:"1/indexes/*/objects",data:{requests:t}},n),R=e=>(t,n)=>{const r=t.map(e=>({...e,params:(0,i.serializeQueryParameters)(e.params||{})}));return e.transporter.read({method:o.N.Post,path:"1/indexes/*/queries",data:{requests:r},cacheable:!0},n)},F=e=>(t,n)=>Promise.all(t.map(t=>{const{facetName:r,facetQuery:i,...o}=t.params;return T(e)(t.indexName,{methods:{searchForFacetValues:Ee}}).searchForFacetValues(r,i,{...n,...o})})),L=e=>(t,n)=>{const r=(0,i.createMappedRequestOptions)(n);return r.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:o.N.Delete,path:"1/clusters/mapping"},r)},B=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/keys/%s/restore",t)},n),(n,i)=>(0,r.createRetryablePromise)(n=>w(e)(t,i).catch(e=>{if(404!==e.status)throw e;return n()}))),j=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:"1/clusters/mapping/search",data:{query:t}},n),U=e=>(t,n)=>{const i=Object.assign({},n),{queryParameters:u,...a}=n||{},l=u?{queryParameters:u}:{},s=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"];return(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Put,path:(0,r.encode)("1/keys/%s",t),data:l},a),(n,o)=>(0,r.createRetryablePromise)(n=>w(e)(t,o).then(e=>(e=>Object.keys(i).filter(e=>-1!==s.indexOf(e)).every(t=>e[t]===i[t]))(e)?Promise.resolve():n())))},z=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/batch",e.indexName),data:{requests:t}},n),(t,n)=>ke(e)(t.taskID,n)),W=e=>t=>a({...t,shouldStop:e=>void 0===e.cursor,request:n=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/browse",e.indexName),data:n},t)}),H=e=>t=>{const n={hitsPerPage:1e3,...t};return a({...n,shouldStop:e=>e.hits.lengthDe(e)("",{...n,...t}).then(e=>({...e,hits:e.hits.map(e=>(delete e._highlightResult,e))}))})},V=e=>t=>{const n={hitsPerPage:1e3,...t};return a({...n,shouldStop:e=>e.hits.lengthSe(e)("",{...n,...t}).then(e=>({...e,hits:e.hits.map(e=>(delete e._highlightResult,e))}))})},q=e=>(t,n,i)=>{const{batchSize:o,...u}=i||{},a={taskIDs:[],objectIDs:[]},l=(r=0)=>{const i=[];let s;for(s=r;s({action:n,body:e})),u).then(e=>(a.objectIDs=a.objectIDs.concat(e.objectIDs),a.taskIDs.push(e.taskID),s++,l(s)))};return(0,r.createWaitablePromise)(l(),(t,n)=>Promise.all(t.taskIDs.map(t=>ke(e)(t,n))))},G=e=>t=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/clear",e.indexName)},t),(t,n)=>ke(e)(t.taskID,n)),$=e=>t=>{const{forwardToReplicas:n,...u}=t||{},a=(0,i.createMappedRequestOptions)(u);return n&&(a.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/rules/clear",e.indexName)},a),(t,n)=>ke(e)(t.taskID,n))},Y=e=>t=>{const{forwardToReplicas:n,...u}=t||{},a=(0,i.createMappedRequestOptions)(u);return n&&(a.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/synonyms/clear",e.indexName)},a),(t,n)=>ke(e)(t.taskID,n))},K=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/deleteByQuery",e.indexName),data:t},n),(t,n)=>ke(e)(t.taskID,n)),X=e=>t=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Delete,path:(0,r.encode)("1/indexes/%s",e.indexName)},t),(t,n)=>ke(e)(t.taskID,n)),Q=e=>(t,n)=>(0,r.createWaitablePromise)(J(e)([t],n).then(e=>({taskID:e.taskIDs[0]})),(t,n)=>ke(e)(t.taskID,n)),J=e=>(t,n)=>{const r=t.map(e=>({objectID:e}));return q(e)(r,xe.DeleteObject,n)},Z=e=>(t,n)=>{const{forwardToReplicas:u,...a}=n||{},l=(0,i.createMappedRequestOptions)(a);return u&&(l.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Delete,path:(0,r.encode)("1/indexes/%s/rules/%s",e.indexName,t)},l),(t,n)=>ke(e)(t.taskID,n))},ee=e=>(t,n)=>{const{forwardToReplicas:u,...a}=n||{},l=(0,i.createMappedRequestOptions)(a);return u&&(l.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Delete,path:(0,r.encode)("1/indexes/%s/synonyms/%s",e.indexName,t)},l),(t,n)=>ke(e)(t.taskID,n))},te=e=>t=>ae(e)(t).then(()=>!0).catch(e=>{if(404!==e.status)throw e;return!1}),ne=e=>(t,n)=>{const{query:r,paginate:i,...o}=n||{};let u=0;const a=()=>we(e)(r||"",{...o,page:u}).then(e=>{for(const[n,r]of Object.entries(e.hits))if(t(r))return{object:r,position:parseInt(n,10),page:u};if(u++,!1===i||u>=e.nbPages)throw{name:"ObjectNotFoundError",message:"Object not found."};return a()});return a()},re=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/%s",e.indexName,t)},n),ie=()=>(e,t)=>{for(const[n,r]of Object.entries(e.hits))if(r.objectID===t)return parseInt(n,10);return-1},oe=e=>(t,n)=>{const{attributesToRetrieve:r,...i}=n||{},u=t.map(t=>({indexName:e.indexName,objectID:t,...r?{attributesToRetrieve:r}:{}}));return e.transporter.read({method:o.N.Post,path:"1/indexes/*/objects",data:{requests:u}},i)},ue=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/rules/%s",e.indexName,t)},n),ae=e=>t=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/settings",e.indexName),data:{getVersion:2}},t),le=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/synonyms/%s",e.indexName,t)},n),se=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/task/%s",e.indexName,t.toString())},n),ce=e=>(t,n)=>(0,r.createWaitablePromise)(fe(e)([t],n).then(e=>({objectID:e.objectIDs[0],taskID:e.taskIDs[0]})),(t,n)=>ke(e)(t.taskID,n)),fe=e=>(t,n)=>{const{createIfNotExists:r,...i}=n||{},o=r?xe.PartialUpdateObject:xe.PartialUpdateObjectNoCreate;return q(e)(t,o,i)},de=e=>(t,n)=>{const{safe:i,autoGenerateObjectIDIfNotExist:u,batchSize:a,...l}=n||{},s=(t,n,i,u)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/operation",t),data:{operation:i,destination:n}},u),(t,n)=>ke(e)(t.taskID,n)),c=Math.random().toString(36).substring(7),f=`${e.indexName}_tmp_${c}`,d=me({appId:e.appId,transporter:e.transporter,indexName:f});let p=[];const h=s(e.indexName,f,"copy",{...l,scope:["settings","synonyms","rules"]});p.push(h);const v=(i?h.wait(l):h).then(()=>{const e=d(t,{...l,autoGenerateObjectIDIfNotExist:u,batchSize:a});return p.push(e),i?e.wait(l):e}).then(()=>{const t=s(f,e.indexName,"move",l);return p.push(t),i?t.wait(l):t}).then(()=>Promise.all(p)).then(([e,t,n])=>({objectIDs:t.objectIDs,taskIDs:[e.taskID,...t.taskIDs,n.taskID]}));return(0,r.createWaitablePromise)(v,(e,t)=>Promise.all(p.map(e=>e.wait(t))))},pe=e=>(t,n)=>ye(e)(t,{...n,clearExistingRules:!0}),he=e=>(t,n)=>be(e)(t,{...n,replaceExistingSynonyms:!0}),ve=e=>(t,n)=>(0,r.createWaitablePromise)(me(e)([t],n).then(e=>({objectID:e.objectIDs[0],taskID:e.taskIDs[0]})),(t,n)=>ke(e)(t.taskID,n)),me=e=>(t,n)=>{const{autoGenerateObjectIDIfNotExist:i,...o}=n||{},u=i?xe.AddObject:xe.UpdateObject;if(u===xe.UpdateObject)for(const e of t)if(void 0===e.objectID)return(0,r.createWaitablePromise)(Promise.reject({name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}));return q(e)(t,u,o)},ge=e=>(t,n)=>ye(e)([t],n),ye=e=>(t,n)=>{const{forwardToReplicas:u,clearExistingRules:a,...l}=n||{},s=(0,i.createMappedRequestOptions)(l);return u&&(s.queryParameters.forwardToReplicas=1),a&&(s.queryParameters.clearExistingRules=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/rules/batch",e.indexName),data:t},s),(t,n)=>ke(e)(t.taskID,n))},_e=e=>(t,n)=>be(e)([t],n),be=e=>(t,n)=>{const{forwardToReplicas:u,replaceExistingSynonyms:a,...l}=n||{},s=(0,i.createMappedRequestOptions)(l);return u&&(s.queryParameters.forwardToReplicas=1),a&&(s.queryParameters.replaceExistingSynonyms=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/synonyms/batch",e.indexName),data:t},s),(t,n)=>ke(e)(t.taskID,n))},we=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},n),Ee=e=>(t,n,i)=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:n},cacheable:!0},i),De=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/rules/search",e.indexName),data:{query:t}},n),Se=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/synonyms/search",e.indexName),data:{query:t}},n),Ce=e=>(t,n)=>{const{forwardToReplicas:u,...a}=n||{},l=(0,i.createMappedRequestOptions)(a);return u&&(l.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Put,path:(0,r.encode)("1/indexes/%s/settings",e.indexName),data:t},l),(t,n)=>ke(e)(t.taskID,n))},ke=e=>(t,n)=>(0,r.createRetryablePromise)(r=>se(e)(t,n).then(e=>"published"!==e.status?r():void 0)),Te={AddObject:"addObject",Analytics:"analytics",Browser:"browse",DeleteIndex:"deleteIndex",DeleteObject:"deleteObject",EditSettings:"editSettings",ListIndexes:"listIndexes",Logs:"logs",Recommendation:"recommendation",Search:"search",SeeUnretrievableAttributes:"seeUnretrievableAttributes",Settings:"settings",Usage:"usage"},xe={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject"},Ae={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},Oe={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},Pe={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"}},8045:(e,t,n)=>{"use strict";function r(){return{debug:(e,t)=>Promise.resolve(),info:(e,t)=>Promise.resolve(),error:(e,t)=>Promise.resolve()}}n.r(t),n.d(t,{LogLevelEnum:()=>i,createNullLogger:()=>r});const i={Debug:1,Info:2,Error:3}},5541:(e,t,n)=>{"use strict";n.d(t,{N:()=>r});const r={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"}},9178:(e,t,n)=>{"use strict";n.r(t),n.d(t,{createNodeHttpRequester:()=>u});var r=n(8605),i=n(7211),o=n(8835);function u(){const e={keepAlive:!0},t=new r.Agent(e),n=new i.Agent(e);return{send:e=>new Promise(u=>{const a=(0,o.parse)(e.url),l=null===a.query?a.pathname:`${a.pathname}?${a.query}`,s={agent:"https:"===a.protocol?n:t,hostname:a.hostname,path:l,method:e.method,headers:e.headers,...void 0!==a.port?{port:a.port||""}:{}},c=("https:"===a.protocol?i:r).request(s,e=>{let t="";e.on("data",e=>t+=e),e.on("end",()=>{clearTimeout(d),clearTimeout(p),u({status:e.statusCode||0,content:t,isTimedOut:!1})})}),f=(e,t)=>setTimeout(()=>{c.abort(),u({status:0,content:t,isTimedOut:!0})},1e3*e),d=f(e.connectTimeout,"Connection timeout");let p;c.on("error",e=>{clearTimeout(d),clearTimeout(p),u({status:0,content:e.message,isTimedOut:!1})}),c.once("response",()=>{clearTimeout(d),p=f(e.responseTimeout,"Socket timeout")}),void 0!==e.data&&c.write(e.data),c.end()}),destroy:()=>(t.destroy(),n.destroy(),Promise.resolve())}}},7858:(e,t,n)=>{"use strict";n.r(t),n.d(t,{CallEnum:()=>o,HostStatusEnum:()=>u,createApiError:()=>E,createDeserializationError:()=>D,createMappedRequestOptions:()=>i,createRetryError:()=>S,createStatefulHost:()=>a,createStatelessHost:()=>c,createTransporter:()=>d,createUserAgent:()=>p,deserializeFailure:()=>v,deserializeSuccess:()=>h,isStatefulHostTimeouted:()=>s,isStatefulHostUp:()=>l,serializeData:()=>y,serializeHeaders:()=>_,serializeQueryParameters:()=>g,serializeUrl:()=>m,stackFrameWithoutCredentials:()=>w,stackTraceWithoutCredentials:()=>b});var r=n(5541);function i(e,t){const n=e||{},r=n.data||{};return Object.keys(n).forEach(e=>{-1===["timeout","headers","queryParameters","data","cacheable"].indexOf(e)&&(r[e]=n[e])}),{data:Object.entries(r).length>0?r:void 0,timeout:n.timeout||t,headers:n.headers||{},queryParameters:n.queryParameters||{},cacheable:n.cacheable}}const o={Read:1,Write:2,Any:3},u={Up:1,Down:2,Timeouted:3};function a(e,t=u.Up){return{...e,status:t,lastUpdate:Date.now()}}function l(e){return e.status===u.Up||Date.now()-e.lastUpdate>12e4}function s(e){return e.status===u.Timeouted&&Date.now()-e.lastUpdate<=12e4}function c(e){return{protocol:e.protocol||"https",url:e.url,accept:e.accept||o.Any}}function f(e,t,n,i){const o=[],f=y(n,i),d=_(e,i),p=n.method,g=n.method!==r.N.Get?{}:{...n.data,...i.data},E={"x-algolia-agent":e.userAgent.value,...e.queryParameters,...g,...i.queryParameters};let D=0;const C=(t,r)=>{const l=t.pop();if(void 0===l)throw S(b(o));const s={data:f,headers:d,method:p,url:m(l,n.path,E),connectTimeout:r(D,e.timeouts.connect),responseTimeout:r(D,i.timeout)},c=e=>{const n={request:s,response:e,host:l,triesLeft:t.length};return o.push(n),n},g={onSucess:e=>h(e),onRetry(n){const i=c(n);return n.isTimedOut&&D++,Promise.all([e.logger.info("Retryable failure",w(i)),e.hostsCache.set(l,a(l,n.isTimedOut?u.Timeouted:u.Down))]).then(()=>C(t,r))},onFail(e){throw c(e),v(e,b(o))}};return e.requester.send(s).then(e=>((e,t)=>(e=>{const t=e.status;return e.isTimedOut||(({isTimedOut:e,status:t})=>!e&&0==~~t)(e)||2!=~~(t/100)&&4!=~~(t/100)})(e)?t.onRetry(e):(({status:e})=>2==~~(e/100))(e)?t.onSucess(e):t.onFail(e))(e,g))};return function(e,t){return Promise.all(t.map(t=>e.get(t,()=>Promise.resolve(a(t))))).then(e=>{const n=e.filter(e=>l(e)),r=e.filter(e=>s(e)),i=[...n,...r];return{getTimeout:(e,t)=>(0===r.length&&0===e?1:r.length+3+e)*t,statelessHosts:i.length>0?i.map(e=>c(e)):t}})}(e.hostsCache,t).then(e=>C([...e.statelessHosts].reverse(),e.getTimeout))}function d(e){const{hostsCache:t,logger:n,requester:r,requestsCache:u,responsesCache:a,timeouts:l,userAgent:s,hosts:d,queryParameters:p,headers:h}=e,v={hostsCache:t,logger:n,requester:r,requestsCache:u,responsesCache:a,timeouts:l,userAgent:s,headers:h,queryParameters:p,hosts:d.map(e=>c(e)),read(e,t){const n=i(t,v.timeouts.read),r=()=>f(v,v.hosts.filter(e=>0!=(e.accept&o.Read)),e,n);if(!0!==(void 0!==n.cacheable?n.cacheable:e.cacheable))return r();const u={request:e,mappedRequestOptions:n,transporter:{queryParameters:v.queryParameters,headers:v.headers}};return v.responsesCache.get(u,()=>v.requestsCache.get(u,()=>v.requestsCache.set(u,r()).then(e=>Promise.all([v.requestsCache.delete(u),e]),e=>Promise.all([v.requestsCache.delete(u),Promise.reject(e)])).then(([e,t])=>t)),{miss:e=>v.responsesCache.set(u,e)})},write:(e,t)=>f(v,v.hosts.filter(e=>0!=(e.accept&o.Write)),e,i(t,v.timeouts.write))};return v}function p(e){const t={value:`Algolia for JavaScript (${e})`,add(e){const n=`; ${e.segment}${void 0!==e.version?` (${e.version})`:""}`;return-1===t.value.indexOf(n)&&(t.value=`${t.value}${n}`),t}};return t}function h(e){try{return JSON.parse(e.content)}catch(t){throw D(t.message,e)}}function v({content:e,status:t},n){let r=e;try{r=JSON.parse(e).message}catch(e){}return E(r,t,n)}function m(e,t,n){const r=g(n);let i=`${e.protocol}://${e.url}/${"/"===t.charAt(0)?t.substr(1):t}`;return r.length&&(i+="?"+r),i}function g(e){return Object.keys(e).map(t=>{return function(e,...t){let n=0;return e.replace(/%s/g,()=>encodeURIComponent(t[n++]))}("%s=%s",t,(n=e[t],"[object Object]"===Object.prototype.toString.call(n)||"[object Array]"===Object.prototype.toString.call(n)?JSON.stringify(e[t]):e[t]));var n}).join("&")}function y(e,t){if(e.method===r.N.Get||void 0===e.data&&void 0===t.data)return;const n=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(n)}function _(e,t){const n={...e.headers,...t.headers},r={};return Object.keys(n).forEach(e=>{const t=n[e];r[e.toLowerCase()]=t}),r}function b(e){return e.map(e=>w(e))}function w(e){const t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function E(e,t,n){return{name:"ApiError",message:e,status:t,transporterStackTrace:n}}function D(e,t){return{name:"DeserializationError",message:e,response:t}}function S(e){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:e}}},8774:(e,t,n)=>{"use strict";var r=n(469),i=n(6712),o=n(2223),u=n(1757),a=n(103),l=n(6586),s=n(8045),c=n(9178),f=n(7858);function d(e,t,n){const d={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:c.createNodeHttpRequester(),logger:s.createNullLogger(),responsesCache:r.createNullCache(),requestsCache:r.createNullCache(),hostsCache:i.createInMemoryCache(),userAgent:f.createUserAgent(u.version).add({segment:"Node.js",version:process.versions.node})};return l.createSearchClient({...d,...n,methods:{search:l.multipleQueries,searchForFacetValues:l.multipleSearchForFacetValues,multipleBatch:l.multipleBatch,multipleGetObjects:l.multipleGetObjects,multipleQueries:l.multipleQueries,copyIndex:l.copyIndex,copySettings:l.copySettings,copyRules:l.copyRules,copySynonyms:l.copySynonyms,moveIndex:l.moveIndex,listIndices:l.listIndices,getLogs:l.getLogs,listClusters:l.listClusters,multipleSearchForFacetValues:l.multipleSearchForFacetValues,getApiKey:l.getApiKey,addApiKey:l.addApiKey,listApiKeys:l.listApiKeys,updateApiKey:l.updateApiKey,deleteApiKey:l.deleteApiKey,restoreApiKey:l.restoreApiKey,assignUserID:l.assignUserID,assignUserIDs:l.assignUserIDs,getUserID:l.getUserID,searchUserIDs:l.searchUserIDs,listUserIDs:l.listUserIDs,getTopUserIDs:l.getTopUserIDs,removeUserID:l.removeUserID,hasPendingMappings:l.hasPendingMappings,generateSecuredApiKey:l.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:l.getSecuredApiKeyRemainingValidity,destroy:u.destroy,initIndex:e=>t=>l.initIndex(e)(t,{methods:{batch:l.batch,delete:l.deleteIndex,getObject:l.getObject,getObjects:l.getObjects,saveObject:l.saveObject,saveObjects:l.saveObjects,search:l.search,searchForFacetValues:l.searchForFacetValues,waitTask:l.waitTask,setSettings:l.setSettings,getSettings:l.getSettings,partialUpdateObject:l.partialUpdateObject,partialUpdateObjects:l.partialUpdateObjects,deleteObject:l.deleteObject,deleteObjects:l.deleteObjects,deleteBy:l.deleteBy,clearObjects:l.clearObjects,browseObjects:l.browseObjects,getObjectPosition:l.getObjectPosition,findObject:l.findObject,exists:l.exists,saveSynonym:l.saveSynonym,saveSynonyms:l.saveSynonyms,getSynonym:l.getSynonym,searchSynonyms:l.searchSynonyms,browseSynonyms:l.browseSynonyms,deleteSynonym:l.deleteSynonym,clearSynonyms:l.clearSynonyms,replaceAllObjects:l.replaceAllObjects,replaceAllSynonyms:l.replaceAllSynonyms,searchRules:l.searchRules,getRule:l.getRule,deleteRule:l.deleteRule,saveRule:l.saveRule,saveRules:l.saveRules,replaceAllRules:l.replaceAllRules,browseRules:l.browseRules,clearRules:l.clearRules}}),initAnalytics:()=>e=>o.createAnalyticsClient({...d,...e,methods:{addABTest:o.addABTest,getABTest:o.getABTest,getABTests:o.getABTests,stopABTest:o.stopABTest,deleteABTest:o.deleteABTest}}),initRecommendation:()=>e=>a.createRecommendationClient({...d,...e,methods:{getPersonalizationStrategy:a.getPersonalizationStrategy,setPersonalizationStrategy:a.setPersonalizationStrategy}})}})}d.version=u.version,e.exports=d},4410:(e,t,n)=>{const r=n(8774);e.exports=r,e.exports.default=r},7589:e=>{"use strict";const t=e.exports;e.exports.default=t;const n="[",r="]",i="",o=";",u="Apple_Terminal"===process.env.TERM_PROGRAM;t.cursorTo=(e,t)=>{if("number"!=typeof e)throw new TypeError("The `x` argument is required");return"number"!=typeof t?n+(e+1)+"G":n+(t+1)+";"+(e+1)+"H"},t.cursorMove=(e,t)=>{if("number"!=typeof e)throw new TypeError("The `x` argument is required");let r="";return e<0?r+=n+-e+"D":e>0&&(r+=n+e+"C"),t<0?r+=n+-t+"A":t>0&&(r+=n+t+"B"),r},t.cursorUp=(e=1)=>n+e+"A",t.cursorDown=(e=1)=>n+e+"B",t.cursorForward=(e=1)=>n+e+"C",t.cursorBackward=(e=1)=>n+e+"D",t.cursorLeft="[G",t.cursorSavePosition=u?"7":"[s",t.cursorRestorePosition=u?"8":"[u",t.cursorGetPosition="[6n",t.cursorNextLine="[E",t.cursorPrevLine="[F",t.cursorHide="[?25l",t.cursorShow="[?25h",t.eraseLines=e=>{let n="";for(let r=0;r[r,"8",o,o,t,i,e,r,"8",o,o,i].join(""),t.image=(e,t={})=>{let n=r+"1337;File=inline=1";return t.width&&(n+=";width="+t.width),t.height&&(n+=";height="+t.height),!1===t.preserveAspectRatio&&(n+=";preserveAspectRatio=0"),n+":"+e.toString("base64")+i},t.iTerm={setCwd:(e=process.cwd())=>`${r}50;CurrentDir=${e}${i}`,annotation:(e,t={})=>{let n=r+"1337;";const o=void 0!==t.x,u=void 0!==t.y;if((o||u)&&(!o||!u||void 0===t.length))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),n+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?n+=(o?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):n+=e,n+i}}},5378:e=>{"use strict";e.exports=e=>{e=Object.assign({onlyFirst:!1},e);const t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e.onlyFirst?void 0:"g")}},1337:e=>{"use strict";e.exports=({onlyFirst:e=!1}={})=>{const t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}},8483:(e,t,n)=>{"use strict";e=n.nmd(e);const r=(e,t)=>(...n)=>`[${e(...n)+t}m`,i=(e,t)=>(...n)=>{const r=e(...n);return`[${38+t};5;${r}m`},o=(e,t)=>(...n)=>{const r=e(...n);return`[${38+t};2;${r[0]};${r[1]};${r[2]}m`},u=e=>e,a=(e,t,n)=>[e,t,n],l=(e,t,n)=>{Object.defineProperty(e,t,{get:()=>{const r=n();return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0}),r},enumerable:!0,configurable:!0})};let s;const c=(e,t,r,i)=>{void 0===s&&(s=n(2744));const o=i?10:0,u={};for(const[n,i]of Object.entries(s)){const a="ansi16"===n?"ansi":n;n===t?u[a]=e(r,o):"object"==typeof i&&(u[a]=e(i[t],o))}return u};Object.defineProperty(e,"exports",{enumerable:!0,get:function(){const e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.gray=t.color.blackBright,t.bgColor.bgGray=t.bgColor.bgBlackBright,t.color.grey=t.color.blackBright,t.bgColor.bgGrey=t.bgColor.bgBlackBright;for(const[n,r]of Object.entries(t)){for(const[n,i]of Object.entries(r))t[n]={open:`[${i[0]}m`,close:`[${i[1]}m`},r[n]=t[n],e.set(i[0],i[1]);Object.defineProperty(t,n,{value:r,enumerable:!1})}return Object.defineProperty(t,"codes",{value:e,enumerable:!1}),t.color.close="[39m",t.bgColor.close="[49m",l(t.color,"ansi",()=>c(r,"ansi16",u,!1)),l(t.color,"ansi256",()=>c(i,"ansi256",u,!1)),l(t.color,"ansi16m",()=>c(o,"rgb",a,!1)),l(t.bgColor,"ansi",()=>c(r,"ansi16",u,!0)),l(t.bgColor,"ansi256",()=>c(i,"ansi256",u,!0)),l(t.bgColor,"ansi16m",()=>c(o,"rgb",a,!0)),t}})},5640:e=>{"use strict";e.exports=e=>e&&e.exact?new RegExp("^[\ud800-\udbff][\udc00-\udfff]$"):new RegExp("[\ud800-\udbff][\udc00-\udfff]","g")},409:e=>{"use strict";e.exports=e=>e&&e.exact?new RegExp("^[\ud800-\udbff][\udc00-\udfff]$"):new RegExp("[\ud800-\udbff][\udc00-\udfff]","g")},2633:e=>{"use strict";e.exports=(e,{include:t,exclude:n}={})=>{const r=e=>{const r=t=>"string"==typeof t?e===t:t.test(e);return t?t.some(r):!n||!n.some(r)};for(const[t,n]of(e=>{const t=new Set;do{for(const n of Reflect.ownKeys(e))t.add([e,n])}while((e=Reflect.getPrototypeOf(e))&&e!==Object.prototype);return t})(e.constructor.prototype)){if("constructor"===n||!r(n))continue;const i=Reflect.getOwnPropertyDescriptor(t,n);i&&"function"==typeof i.value&&(e[n]=e[n].bind(e))}return e}},5882:(e,t,n)=>{"use strict";const r=n(8483),{stdout:i,stderr:o}=n(9428),{stringReplaceAll:u,stringEncaseCRLFWithFirstIndex:a}=n(3327),l=["ansi","ansi","ansi256","ansi16m"],s=Object.create(null);class c{constructor(e){return f(e)}}const f=e=>{const t={};return((e,t={})=>{if(t.level>3||t.level<0)throw new Error("The `level` option should be an integer from 0 to 3");const n=i?i.level:0;e.level=void 0===t.level?n:t.level})(t,e),t.template=(...e)=>_(t.template,...e),Object.setPrototypeOf(t,d.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=c,t.template};function d(e){return f(e)}for(const[e,t]of Object.entries(r))s[e]={get(){const n=m(this,v(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:n}),n}};s.visible={get(){const e=m(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};const p=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(const e of p)s[e]={get(){const{level:t}=this;return function(...n){const i=v(r.color[l[t]][e](...n),r.color.close,this._styler);return m(this,i,this._isEmpty)}}};for(const e of p){s["bg"+e[0].toUpperCase()+e.slice(1)]={get(){const{level:t}=this;return function(...n){const i=v(r.bgColor[l[t]][e](...n),r.bgColor.close,this._styler);return m(this,i,this._isEmpty)}}}}const h=Object.defineProperties(()=>{},{...s,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),v=(e,t,n)=>{let r,i;return void 0===n?(r=e,i=t):(r=n.openAll+e,i=t+n.closeAll),{open:e,close:t,openAll:r,closeAll:i,parent:n}},m=(e,t,n)=>{const r=(...e)=>g(r,1===e.length?""+e[0]:e.join(" "));return r.__proto__=h,r._generator=e,r._styler=t,r._isEmpty=n,r},g=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let n=e._styler;if(void 0===n)return t;const{openAll:r,closeAll:i}=n;if(-1!==t.indexOf(""))for(;void 0!==n;)t=u(t,n.close,n.open),n=n.parent;const o=t.indexOf("\n");return-1!==o&&(t=a(t,i,r,o)),r+t+i};let y;const _=(e,...t)=>{const[r]=t;if(!Array.isArray(r))return t.join(" ");const i=t.slice(1),o=[r.raw[0]];for(let e=1;e{"use strict";const t=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,r=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,i=/\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi,o=new Map([["n","\n"],["r","\r"],["t","\t"],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a",""]]);function u(e){const t="u"===e[0],n="{"===e[1];return t&&!n&&5===e.length||"x"===e[0]&&3===e.length?String.fromCharCode(parseInt(e.slice(1),16)):t&&n?String.fromCodePoint(parseInt(e.slice(2,-1),16)):o.get(e)||e}function a(e,t){const n=[],o=t.trim().split(/\s*,\s*/g);let a;for(const t of o){const o=Number(t);if(Number.isNaN(o)){if(!(a=t.match(r)))throw new Error(`Invalid Chalk template style argument: ${t} (in style '${e}')`);n.push(a[2].replace(i,(e,t,n)=>t?u(t):n))}else n.push(o)}return n}function l(e){n.lastIndex=0;const t=[];let r;for(;null!==(r=n.exec(e));){const e=r[1];if(r[2]){const n=a(e,r[2]);t.push([e].concat(n))}else t.push([e])}return t}function s(e,t){const n={};for(const e of t)for(const t of e.styles)n[t[0]]=e.inverse?null:t.slice(1);let r=e;for(const[e,t]of Object.entries(n))if(Array.isArray(t)){if(!(e in r))throw new Error("Unknown Chalk style: "+e);r=t.length>0?r[e](...t):r[e]}return r}e.exports=(e,n)=>{const r=[],i=[];let o=[];if(n.replace(t,(t,n,a,c,f,d)=>{if(n)o.push(u(n));else if(c){const t=o.join("");o=[],i.push(0===r.length?t:s(e,r)(t)),r.push({inverse:a,styles:l(c)})}else if(f){if(0===r.length)throw new Error("Found extraneous } in Chalk template literal");i.push(s(e,r)(o.join(""))),o=[],r.pop()}else o.push(d)}),i.push(o.join("")),r.length>0){const e=`Chalk template literal is missing ${r.length} closing bracket${1===r.length?"":"s"} (\`}\`)`;throw new Error(e)}return i.join("")}},3327:e=>{"use strict";e.exports={stringReplaceAll:(e,t,n)=>{let r=e.indexOf(t);if(-1===r)return e;const i=t.length;let o=0,u="";do{u+=e.substr(o,r-o)+t+n,o=r+i,r=e.indexOf(t,o)}while(-1!==r);return u+=e.substr(o),u},stringEncaseCRLFWithFirstIndex:(e,t,n,r)=>{let i=0,o="";do{const u="\r"===e[r-1];o+=e.substr(i,(u?r-1:r)-i)+t+(u?"\r\n":"\n")+n,i=r+1,r=e.indexOf("\n",i)}while(-1!==r);return o+=e.substr(i),o}}},1525:(e,t,n)=>{"use strict";const r=n(8483),{stdout:i,stderr:o}=n(9428),{stringReplaceAll:u,stringEncaseCRLFWithFirstIndex:a}=n(6539),{isArray:l}=Array,s=["ansi","ansi","ansi256","ansi16m"],c=Object.create(null);class f{constructor(e){return d(e)}}const d=e=>{const t={};return((e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");const n=i?i.level:0;e.level=void 0===t.level?n:t.level})(t,e),t.template=(...e)=>b(t.template,...e),Object.setPrototypeOf(t,p.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=f,t.template};function p(e){return d(e)}for(const[e,t]of Object.entries(r))c[e]={get(){const n=g(this,m(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:n}),n}};c.visible={get(){const e=g(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};const h=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(const e of h)c[e]={get(){const{level:t}=this;return function(...n){const i=m(r.color[s[t]][e](...n),r.color.close,this._styler);return g(this,i,this._isEmpty)}}};for(const e of h){c["bg"+e[0].toUpperCase()+e.slice(1)]={get(){const{level:t}=this;return function(...n){const i=m(r.bgColor[s[t]][e](...n),r.bgColor.close,this._styler);return g(this,i,this._isEmpty)}}}}const v=Object.defineProperties(()=>{},{...c,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),m=(e,t,n)=>{let r,i;return void 0===n?(r=e,i=t):(r=n.openAll+e,i=t+n.closeAll),{open:e,close:t,openAll:r,closeAll:i,parent:n}},g=(e,t,n)=>{const r=(...e)=>l(e[0])&&l(e[0].raw)?y(r,b(r,...e)):y(r,1===e.length?""+e[0]:e.join(" "));return Object.setPrototypeOf(r,v),r._generator=e,r._styler=t,r._isEmpty=n,r},y=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let n=e._styler;if(void 0===n)return t;const{openAll:r,closeAll:i}=n;if(-1!==t.indexOf(""))for(;void 0!==n;)t=u(t,n.close,n.open),n=n.parent;const o=t.indexOf("\n");return-1!==o&&(t=a(t,i,r,o)),r+t+i};let _;const b=(e,...t)=>{const[r]=t;if(!l(r)||!l(r.raw))return t.join(" ");const i=t.slice(1),o=[r.raw[0]];for(let e=1;e{"use strict";const t=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,r=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,i=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,o=new Map([["n","\n"],["r","\r"],["t","\t"],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a",""]]);function u(e){const t="u"===e[0],n="{"===e[1];return t&&!n&&5===e.length||"x"===e[0]&&3===e.length?String.fromCharCode(parseInt(e.slice(1),16)):t&&n?String.fromCodePoint(parseInt(e.slice(2,-1),16)):o.get(e)||e}function a(e,t){const n=[],o=t.trim().split(/\s*,\s*/g);let a;for(const t of o){const o=Number(t);if(Number.isNaN(o)){if(!(a=t.match(r)))throw new Error(`Invalid Chalk template style argument: ${t} (in style '${e}')`);n.push(a[2].replace(i,(e,t,n)=>t?u(t):n))}else n.push(o)}return n}function l(e){n.lastIndex=0;const t=[];let r;for(;null!==(r=n.exec(e));){const e=r[1];if(r[2]){const n=a(e,r[2]);t.push([e].concat(n))}else t.push([e])}return t}function s(e,t){const n={};for(const e of t)for(const t of e.styles)n[t[0]]=e.inverse?null:t.slice(1);let r=e;for(const[e,t]of Object.entries(n))if(Array.isArray(t)){if(!(e in r))throw new Error("Unknown Chalk style: "+e);r=t.length>0?r[e](...t):r[e]}return r}e.exports=(e,n)=>{const r=[],i=[];let o=[];if(n.replace(t,(t,n,a,c,f,d)=>{if(n)o.push(u(n));else if(c){const t=o.join("");o=[],i.push(0===r.length?t:s(e,r)(t)),r.push({inverse:a,styles:l(c)})}else if(f){if(0===r.length)throw new Error("Found extraneous } in Chalk template literal");i.push(s(e,r)(o.join(""))),o=[],r.pop()}else o.push(d)}),i.push(o.join("")),r.length>0){const e=`Chalk template literal is missing ${r.length} closing bracket${1===r.length?"":"s"} (\`}\`)`;throw new Error(e)}return i.join("")}},6539:e=>{"use strict";e.exports={stringReplaceAll:(e,t,n)=>{let r=e.indexOf(t);if(-1===r)return e;const i=t.length;let o=0,u="";do{u+=e.substr(o,r-o)+t+n,o=r+i,r=e.indexOf(t,o)}while(-1!==r);return u+=e.substr(o),u},stringEncaseCRLFWithFirstIndex:(e,t,n,r)=>{let i=0,o="";do{const u="\r"===e[r-1];o+=e.substr(i,(u?r-1:r)-i)+t+(u?"\r\n":"\n")+n,i=r+1,r=e.indexOf("\n",i)}while(-1!==r);return o+=e.substr(i),o}}},5864:(e,t,n)=>{"use strict";var r=n(5832),i=process.env;function o(e){return"string"==typeof e?!!i[e]:Object.keys(e).every((function(t){return i[t]===e[t]}))}Object.defineProperty(t,"_vendors",{value:r.map((function(e){return e.constant}))}),t.name=null,t.isPR=null,r.forEach((function(e){var n=(Array.isArray(e.env)?e.env:[e.env]).every((function(e){return o(e)}));if(t[e.constant]=n,n)switch(t.name=e.name,typeof e.pr){case"string":t.isPR=!!i[e.pr];break;case"object":"env"in e.pr?t.isPR=e.pr.env in i&&i[e.pr.env]!==e.pr.ne:"any"in e.pr?t.isPR=e.pr.any.some((function(e){return!!i[e]})):t.isPR=o(e.pr);break;default:t.isPR=null}})),t.isCI=!!(i.CI||i.CONTINUOUS_INTEGRATION||i.BUILD_NUMBER||i.RUN_ID||t.name)},5832:e=>{"use strict";e.exports=JSON.parse('[{"name":"AppVeyor","constant":"APPVEYOR","env":"APPVEYOR","pr":"APPVEYOR_PULL_REQUEST_NUMBER"},{"name":"Azure Pipelines","constant":"AZURE_PIPELINES","env":"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI","pr":"SYSTEM_PULLREQUEST_PULLREQUESTID"},{"name":"Bamboo","constant":"BAMBOO","env":"bamboo_planKey"},{"name":"Bitbucket Pipelines","constant":"BITBUCKET","env":"BITBUCKET_COMMIT","pr":"BITBUCKET_PR_ID"},{"name":"Bitrise","constant":"BITRISE","env":"BITRISE_IO","pr":"BITRISE_PULL_REQUEST"},{"name":"Buddy","constant":"BUDDY","env":"BUDDY_WORKSPACE_ID","pr":"BUDDY_EXECUTION_PULL_REQUEST_ID"},{"name":"Buildkite","constant":"BUILDKITE","env":"BUILDKITE","pr":{"env":"BUILDKITE_PULL_REQUEST","ne":"false"}},{"name":"CircleCI","constant":"CIRCLE","env":"CIRCLECI","pr":"CIRCLE_PULL_REQUEST"},{"name":"Cirrus CI","constant":"CIRRUS","env":"CIRRUS_CI","pr":"CIRRUS_PR"},{"name":"AWS CodeBuild","constant":"CODEBUILD","env":"CODEBUILD_BUILD_ARN"},{"name":"Codeship","constant":"CODESHIP","env":{"CI_NAME":"codeship"}},{"name":"Drone","constant":"DRONE","env":"DRONE","pr":{"DRONE_BUILD_EVENT":"pull_request"}},{"name":"dsari","constant":"DSARI","env":"DSARI"},{"name":"GitLab CI","constant":"GITLAB","env":"GITLAB_CI"},{"name":"GoCD","constant":"GOCD","env":"GO_PIPELINE_LABEL"},{"name":"Hudson","constant":"HUDSON","env":"HUDSON_URL"},{"name":"Jenkins","constant":"JENKINS","env":["JENKINS_URL","BUILD_ID"],"pr":{"any":["ghprbPullId","CHANGE_ID"]}},{"name":"Magnum CI","constant":"MAGNUM","env":"MAGNUM"},{"name":"Netlify CI","constant":"NETLIFY","env":"NETLIFY_BUILD_BASE","pr":{"env":"PULL_REQUEST","ne":"false"}},{"name":"Sail CI","constant":"SAIL","env":"SAILCI","pr":"SAIL_PULL_REQUEST_NUMBER"},{"name":"Semaphore","constant":"SEMAPHORE","env":"SEMAPHORE","pr":"PULL_REQUEST_NUMBER"},{"name":"Shippable","constant":"SHIPPABLE","env":"SHIPPABLE","pr":{"IS_PULL_REQUEST":"true"}},{"name":"Solano CI","constant":"SOLANO","env":"TDDIUM","pr":"TDDIUM_PR_ID"},{"name":"Strider CD","constant":"STRIDER","env":"STRIDER"},{"name":"TaskCluster","constant":"TASKCLUSTER","env":["TASK_ID","RUN_ID"]},{"name":"TeamCity","constant":"TEAMCITY","env":"TEAMCITY_VERSION"},{"name":"Travis CI","constant":"TRAVIS","env":"TRAVIS","pr":{"env":"TRAVIS_PULL_REQUEST","ne":"false"}}]')},4163:e=>{"use strict";e.exports=JSON.parse('{"single":{"topLeft":"┌","topRight":"┐","bottomRight":"┘","bottomLeft":"└","vertical":"│","horizontal":"─"},"double":{"topLeft":"╔","topRight":"╗","bottomRight":"╝","bottomLeft":"╚","vertical":"║","horizontal":"═"},"round":{"topLeft":"╭","topRight":"╮","bottomRight":"╯","bottomLeft":"╰","vertical":"│","horizontal":"─"},"bold":{"topLeft":"┏","topRight":"┓","bottomRight":"┛","bottomLeft":"┗","vertical":"┃","horizontal":"━"},"singleDouble":{"topLeft":"╓","topRight":"╖","bottomRight":"╜","bottomLeft":"╙","vertical":"║","horizontal":"─"},"doubleSingle":{"topLeft":"╒","topRight":"╕","bottomRight":"╛","bottomLeft":"╘","vertical":"│","horizontal":"═"},"classic":{"topLeft":"+","topRight":"+","bottomRight":"+","bottomLeft":"+","vertical":"|","horizontal":"-"}}')},4097:(e,t,n)=>{"use strict";const r=n(4163);e.exports=r,e.exports.default=r},1696:(e,t,n)=>{"use strict";const r=n(3390);let i=!1;t.show=(e=process.stderr)=>{e.isTTY&&(i=!1,e.write("[?25h"))},t.hide=(e=process.stderr)=>{e.isTTY&&(r(),i=!0,e.write("[?25l"))},t.toggle=(e,n)=>{void 0!==e&&(i=e),i?t.show(n):t.hide(n)}},5301:(e,t,n)=>{"use strict";const r=n(1566),i=n(5043);function o(e,t,n){if(" "===e.charAt(t))return t;for(let r=1;r<=3;r++)if(n){if(" "===e.charAt(t+r))return t+r}else if(" "===e.charAt(t-r))return t-r;return t}e.exports=(e,t,n)=>{n={position:"end",preferTruncationOnSpace:!1,...n};const{position:u,space:a,preferTruncationOnSpace:l}=n;let s="…",c=1;if("string"!=typeof e)throw new TypeError("Expected `input` to be a string, got "+typeof e);if("number"!=typeof t)throw new TypeError("Expected `columns` to be a number, got "+typeof t);if(t<1)return"";if(1===t)return s;const f=i(e);if(f<=t)return e;if("start"===u){if(l){const n=o(e,f-t+1,!0);return s+r(e,n,f).trim()}return!0===a&&(s+=" ",c=2),s+r(e,f-t+c,f)}if("middle"===u){!0===a&&(s=" "+s+" ",c=3);const n=Math.floor(t/2);if(l){const i=o(e,n),u=o(e,f-(t-n)+1,!0);return r(e,0,i)+s+r(e,u,f).trim()}return r(e,0,n)+s+r(e,f-(t-n)+c,f)}if("end"===u){if(l){const n=o(e,t-1);return r(e,0,n)+s}return!0===a&&(s=" "+s,c=2),r(e,0,t-c)+s}throw new Error("Expected `options.position` to be either `start`, `middle` or `end`, got "+u)}},9908:(e,t,n)=>{"use strict";const r=n(3287);e.exports=(e,t,n)=>{if("string"!=typeof e)throw new TypeError("Source code is missing.");if(!t||t<1)throw new TypeError("Line number must start from `1`.");if(!(t>(e=r(e).split(/\r?\n/)).length))return((e,t)=>{const n=[],r=e+t;for(let i=e-t;i<=r;i++)n.push(i);return n})(t,(n={around:3,...n}).around).filter(t=>void 0!==e[t-1]).map(t=>({line:t,value:e[t-1]}))}},5311:(e,t,n)=>{const r=n(3300),i={};for(const e of Object.keys(r))i[r[e]]=e;const o={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};e.exports=o;for(const e of Object.keys(o)){if(!("channels"in o[e]))throw new Error("missing channels property: "+e);if(!("labels"in o[e]))throw new Error("missing channel labels property: "+e);if(o[e].labels.length!==o[e].channels)throw new Error("channel and label counts mismatch: "+e);const{channels:t,labels:n}=o[e];delete o[e].channels,delete o[e].labels,Object.defineProperty(o[e],"channels",{value:t}),Object.defineProperty(o[e],"labels",{value:n})}o.rgb.hsl=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.min(t,n,r),o=Math.max(t,n,r),u=o-i;let a,l;o===i?a=0:t===o?a=(n-r)/u:n===o?a=2+(r-t)/u:r===o&&(a=4+(t-n)/u),a=Math.min(60*a,360),a<0&&(a+=360);const s=(i+o)/2;return l=o===i?0:s<=.5?u/(o+i):u/(2-o-i),[a,100*l,100*s]},o.rgb.hsv=function(e){let t,n,r,i,o;const u=e[0]/255,a=e[1]/255,l=e[2]/255,s=Math.max(u,a,l),c=s-Math.min(u,a,l),f=function(e){return(s-e)/6/c+.5};return 0===c?(i=0,o=0):(o=c/s,t=f(u),n=f(a),r=f(l),u===s?i=r-n:a===s?i=1/3+t-r:l===s&&(i=2/3+n-t),i<0?i+=1:i>1&&(i-=1)),[360*i,100*o,100*s]},o.rgb.hwb=function(e){const t=e[0],n=e[1];let r=e[2];const i=o.rgb.hsl(e)[0],u=1/255*Math.min(t,Math.min(n,r));return r=1-1/255*Math.max(t,Math.max(n,r)),[i,100*u,100*r]},o.rgb.cmyk=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.min(1-t,1-n,1-r);return[100*((1-t-i)/(1-i)||0),100*((1-n-i)/(1-i)||0),100*((1-r-i)/(1-i)||0),100*i]},o.rgb.keyword=function(e){const t=i[e];if(t)return t;let n,o=1/0;for(const t of Object.keys(r)){const i=r[t],l=(a=i,((u=e)[0]-a[0])**2+(u[1]-a[1])**2+(u[2]-a[2])**2);l.04045?((t+.055)/1.055)**2.4:t/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92;return[100*(.4124*t+.3576*n+.1805*r),100*(.2126*t+.7152*n+.0722*r),100*(.0193*t+.1192*n+.9505*r)]},o.rgb.lab=function(e){const t=o.rgb.xyz(e);let n=t[0],r=t[1],i=t[2];n/=95.047,r/=100,i/=108.883,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116;return[116*r-16,500*(n-r),200*(r-i)]},o.hsl.rgb=function(e){const t=e[0]/360,n=e[1]/100,r=e[2]/100;let i,o,u;if(0===n)return u=255*r,[u,u,u];i=r<.5?r*(1+n):r+n-r*n;const a=2*r-i,l=[0,0,0];for(let e=0;e<3;e++)o=t+1/3*-(e-1),o<0&&o++,o>1&&o--,u=6*o<1?a+6*(i-a)*o:2*o<1?i:3*o<2?a+(i-a)*(2/3-o)*6:a,l[e]=255*u;return l},o.hsl.hsv=function(e){const t=e[0];let n=e[1]/100,r=e[2]/100,i=n;const o=Math.max(r,.01);r*=2,n*=r<=1?r:2-r,i*=o<=1?o:2-o;return[t,100*(0===r?2*i/(o+i):2*n/(r+n)),100*((r+n)/2)]},o.hsv.rgb=function(e){const t=e[0]/60,n=e[1]/100;let r=e[2]/100;const i=Math.floor(t)%6,o=t-Math.floor(t),u=255*r*(1-n),a=255*r*(1-n*o),l=255*r*(1-n*(1-o));switch(r*=255,i){case 0:return[r,l,u];case 1:return[a,r,u];case 2:return[u,r,l];case 3:return[u,a,r];case 4:return[l,u,r];case 5:return[r,u,a]}},o.hsv.hsl=function(e){const t=e[0],n=e[1]/100,r=e[2]/100,i=Math.max(r,.01);let o,u;u=(2-n)*r;const a=(2-n)*i;return o=n*i,o/=a<=1?a:2-a,o=o||0,u/=2,[t,100*o,100*u]},o.hwb.rgb=function(e){const t=e[0]/360;let n=e[1]/100,r=e[2]/100;const i=n+r;let o;i>1&&(n/=i,r/=i);const u=Math.floor(6*t),a=1-r;o=6*t-u,0!=(1&u)&&(o=1-o);const l=n+o*(a-n);let s,c,f;switch(u){default:case 6:case 0:s=a,c=l,f=n;break;case 1:s=l,c=a,f=n;break;case 2:s=n,c=a,f=l;break;case 3:s=n,c=l,f=a;break;case 4:s=l,c=n,f=a;break;case 5:s=a,c=n,f=l}return[255*s,255*c,255*f]},o.cmyk.rgb=function(e){const t=e[0]/100,n=e[1]/100,r=e[2]/100,i=e[3]/100;return[255*(1-Math.min(1,t*(1-i)+i)),255*(1-Math.min(1,n*(1-i)+i)),255*(1-Math.min(1,r*(1-i)+i))]},o.xyz.rgb=function(e){const t=e[0]/100,n=e[1]/100,r=e[2]/100;let i,o,u;return i=3.2406*t+-1.5372*n+-.4986*r,o=-.9689*t+1.8758*n+.0415*r,u=.0557*t+-.204*n+1.057*r,i=i>.0031308?1.055*i**(1/2.4)-.055:12.92*i,o=o>.0031308?1.055*o**(1/2.4)-.055:12.92*o,u=u>.0031308?1.055*u**(1/2.4)-.055:12.92*u,i=Math.min(Math.max(0,i),1),o=Math.min(Math.max(0,o),1),u=Math.min(Math.max(0,u),1),[255*i,255*o,255*u]},o.xyz.lab=function(e){let t=e[0],n=e[1],r=e[2];t/=95.047,n/=100,r/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116;return[116*n-16,500*(t-n),200*(n-r)]},o.lab.xyz=function(e){let t,n,r;n=(e[0]+16)/116,t=e[1]/500+n,r=n-e[2]/200;const i=n**3,o=t**3,u=r**3;return n=i>.008856?i:(n-16/116)/7.787,t=o>.008856?o:(t-16/116)/7.787,r=u>.008856?u:(r-16/116)/7.787,t*=95.047,n*=100,r*=108.883,[t,n,r]},o.lab.lch=function(e){const t=e[0],n=e[1],r=e[2];let i;i=360*Math.atan2(r,n)/2/Math.PI,i<0&&(i+=360);return[t,Math.sqrt(n*n+r*r),i]},o.lch.lab=function(e){const t=e[0],n=e[1],r=e[2]/360*2*Math.PI;return[t,n*Math.cos(r),n*Math.sin(r)]},o.rgb.ansi16=function(e,t=null){const[n,r,i]=e;let u=null===t?o.rgb.hsv(e)[2]:t;if(u=Math.round(u/50),0===u)return 30;let a=30+(Math.round(i/255)<<2|Math.round(r/255)<<1|Math.round(n/255));return 2===u&&(a+=60),a},o.hsv.ansi16=function(e){return o.rgb.ansi16(o.hsv.rgb(e),e[2])},o.rgb.ansi256=function(e){const t=e[0],n=e[1],r=e[2];if(t===n&&n===r)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;return 16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},o.ansi16.rgb=function(e){let t=e%10;if(0===t||7===t)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];const n=.5*(1+~~(e>50));return[(1&t)*n*255,(t>>1&1)*n*255,(t>>2&1)*n*255]},o.ansi256.rgb=function(e){if(e>=232){const t=10*(e-232)+8;return[t,t,t]}let t;e-=16;return[Math.floor(e/36)/5*255,Math.floor((t=e%36)/6)/5*255,t%6/5*255]},o.rgb.hex=function(e){const t=(((255&Math.round(e[0]))<<16)+((255&Math.round(e[1]))<<8)+(255&Math.round(e[2]))).toString(16).toUpperCase();return"000000".substring(t.length)+t},o.hex.rgb=function(e){const t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let n=t[0];3===t[0].length&&(n=n.split("").map(e=>e+e).join(""));const r=parseInt(n,16);return[r>>16&255,r>>8&255,255&r]},o.rgb.hcg=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.max(Math.max(t,n),r),o=Math.min(Math.min(t,n),r),u=i-o;let a,l;return a=u<1?o/(1-u):0,l=u<=0?0:i===t?(n-r)/u%6:i===n?2+(r-t)/u:4+(t-n)/u,l/=6,l%=1,[360*l,100*u,100*a]},o.hsl.hcg=function(e){const t=e[1]/100,n=e[2]/100,r=n<.5?2*t*n:2*t*(1-n);let i=0;return r<1&&(i=(n-.5*r)/(1-r)),[e[0],100*r,100*i]},o.hsv.hcg=function(e){const t=e[1]/100,n=e[2]/100,r=t*n;let i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],100*r,100*i]},o.hcg.rgb=function(e){const t=e[0]/360,n=e[1]/100,r=e[2]/100;if(0===n)return[255*r,255*r,255*r];const i=[0,0,0],o=t%1*6,u=o%1,a=1-u;let l=0;switch(Math.floor(o)){case 0:i[0]=1,i[1]=u,i[2]=0;break;case 1:i[0]=a,i[1]=1,i[2]=0;break;case 2:i[0]=0,i[1]=1,i[2]=u;break;case 3:i[0]=0,i[1]=a,i[2]=1;break;case 4:i[0]=u,i[1]=0,i[2]=1;break;default:i[0]=1,i[1]=0,i[2]=a}return l=(1-n)*r,[255*(n*i[0]+l),255*(n*i[1]+l),255*(n*i[2]+l)]},o.hcg.hsv=function(e){const t=e[1]/100,n=t+e[2]/100*(1-t);let r=0;return n>0&&(r=t/n),[e[0],100*r,100*n]},o.hcg.hsl=function(e){const t=e[1]/100,n=e[2]/100*(1-t)+.5*t;let r=0;return n>0&&n<.5?r=t/(2*n):n>=.5&&n<1&&(r=t/(2*(1-n))),[e[0],100*r,100*n]},o.hcg.hwb=function(e){const t=e[1]/100,n=t+e[2]/100*(1-t);return[e[0],100*(n-t),100*(1-n)]},o.hwb.hcg=function(e){const t=e[1]/100,n=1-e[2]/100,r=n-t;let i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],100*r,100*i]},o.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},o.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},o.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},o.gray.hsl=function(e){return[0,0,e[0]]},o.gray.hsv=o.gray.hsl,o.gray.hwb=function(e){return[0,100,e[0]]},o.gray.cmyk=function(e){return[0,0,0,e[0]]},o.gray.lab=function(e){return[e[0],0,0]},o.gray.hex=function(e){const t=255&Math.round(e[0]/100*255),n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(n.length)+n},o.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}},2744:(e,t,n)=>{const r=n(5311),i=n(8577),o={};Object.keys(r).forEach(e=>{o[e]={},Object.defineProperty(o[e],"channels",{value:r[e].channels}),Object.defineProperty(o[e],"labels",{value:r[e].labels});const t=i(e);Object.keys(t).forEach(n=>{const r=t[n];o[e][n]=function(e){const t=function(...t){const n=t[0];if(null==n)return n;n.length>1&&(t=n);const r=e(t);if("object"==typeof r)for(let e=r.length,t=0;t1&&(t=n),e(t))};return"conversion"in e&&(t.conversion=e.conversion),t}(r)})}),e.exports=o},8577:(e,t,n)=>{const r=n(5311);function i(e){const t=function(){const e={},t=Object.keys(r);for(let n=t.length,r=0;r{"use strict";e.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},3287:e=>{"use strict";e.exports=(e,t)=>e.replace(/^\t+/gm,e=>" ".repeat(e.length*(t||2)))},1013:e=>{"use strict";e.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}},8759:e=>{"use strict";const t=/[|\\{}()[\]^$+*?.-]/g;e.exports=e=>{if("string"!=typeof e)throw new TypeError("Expected a string");return e.replace(t,"\\$&")}},2918:e=>{"use strict";e.exports=(e,t=process.argv)=>{const n=e.startsWith("-")?"":1===e.length?"-":"--",r=t.indexOf(n+e),i=t.indexOf("--");return-1!==r&&(-1===i||r{"use strict";e.exports=(e,t=1,n)=>{if(n={indent:" ",includeEmptyLines:!1,...n},"string"!=typeof e)throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if("number"!=typeof t)throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if("string"!=typeof n.indent)throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof n.indent}\``);if(0===t)return e;const r=n.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(r,n.indent.repeat(t))}},2738:(e,t,n)=>{"use strict";e.exports=n(5864).isCI},7347:e=>{"use strict";const t=e=>!Number.isNaN(e)&&(e>=4352&&(e<=4447||9001===e||9002===e||11904<=e&&e<=12871&&12351!==e||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141));e.exports=t,e.exports.default=t},464:function(e,t,n){var r;
+/**
+ * @license
+ * Lodash
+ * Copyright OpenJS Foundation and other contributors
+ * Released under MIT license
+ * Based on Underscore.js 1.8.3
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ */e=n.nmd(e),function(){var i="Expected a function",o="__lodash_placeholder__",u=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],a="[object Arguments]",l="[object Array]",s="[object Boolean]",c="[object Date]",f="[object Error]",d="[object Function]",p="[object GeneratorFunction]",h="[object Map]",v="[object Number]",m="[object Object]",g="[object RegExp]",y="[object Set]",_="[object String]",b="[object Symbol]",w="[object WeakMap]",E="[object ArrayBuffer]",D="[object DataView]",S="[object Float32Array]",C="[object Float64Array]",k="[object Int8Array]",T="[object Int16Array]",x="[object Int32Array]",A="[object Uint8Array]",O="[object Uint16Array]",P="[object Uint32Array]",I=/\b__p \+= '';/g,N=/\b(__p \+=) '' \+/g,M=/(__e\(.*?\)|\b__t\)) \+\n'';/g,R=/&(?:amp|lt|gt|quot|#39);/g,F=/[&<>"']/g,L=RegExp(R.source),B=RegExp(F.source),j=/<%-([\s\S]+?)%>/g,U=/<%([\s\S]+?)%>/g,z=/<%=([\s\S]+?)%>/g,W=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,H=/^\w*$/,V=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,q=/[\\^$.*+?()[\]{}|]/g,G=RegExp(q.source),$=/^\s+|\s+$/g,Y=/^\s+/,K=/\s+$/,X=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Q=/\{\n\/\* \[wrapped with (.+)\] \*/,J=/,? & /,Z=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ee=/\\(\\)?/g,te=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ne=/\w*$/,re=/^[-+]0x[0-9a-f]+$/i,ie=/^0b[01]+$/i,oe=/^\[object .+?Constructor\]$/,ue=/^0o[0-7]+$/i,ae=/^(?:0|[1-9]\d*)$/,le=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,se=/($^)/,ce=/['\n\r\u2028\u2029\\]/g,fe="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",de="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",pe="[\\ud800-\\udfff]",he="["+de+"]",ve="["+fe+"]",me="\\d+",ge="[\\u2700-\\u27bf]",ye="[a-z\\xdf-\\xf6\\xf8-\\xff]",_e="[^\\ud800-\\udfff"+de+me+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",be="\\ud83c[\\udffb-\\udfff]",we="[^\\ud800-\\udfff]",Ee="(?:\\ud83c[\\udde6-\\uddff]){2}",De="[\\ud800-\\udbff][\\udc00-\\udfff]",Se="[A-Z\\xc0-\\xd6\\xd8-\\xde]",Ce="(?:"+ye+"|"+_e+")",ke="(?:"+Se+"|"+_e+")",Te="(?:"+ve+"|"+be+")"+"?",xe="[\\ufe0e\\ufe0f]?"+Te+("(?:\\u200d(?:"+[we,Ee,De].join("|")+")[\\ufe0e\\ufe0f]?"+Te+")*"),Ae="(?:"+[ge,Ee,De].join("|")+")"+xe,Oe="(?:"+[we+ve+"?",ve,Ee,De,pe].join("|")+")",Pe=RegExp("['’]","g"),Ie=RegExp(ve,"g"),Ne=RegExp(be+"(?="+be+")|"+Oe+xe,"g"),Me=RegExp([Se+"?"+ye+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[he,Se,"$"].join("|")+")",ke+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[he,Se+Ce,"$"].join("|")+")",Se+"?"+Ce+"+(?:['’](?:d|ll|m|re|s|t|ve))?",Se+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",me,Ae].join("|"),"g"),Re=RegExp("[\\u200d\\ud800-\\udfff"+fe+"\\ufe0e\\ufe0f]"),Fe=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Le=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Be=-1,je={};je[S]=je[C]=je[k]=je[T]=je[x]=je[A]=je["[object Uint8ClampedArray]"]=je[O]=je[P]=!0,je[a]=je[l]=je[E]=je[s]=je[D]=je[c]=je[f]=je[d]=je[h]=je[v]=je[m]=je[g]=je[y]=je[_]=je[w]=!1;var Ue={};Ue[a]=Ue[l]=Ue[E]=Ue[D]=Ue[s]=Ue[c]=Ue[S]=Ue[C]=Ue[k]=Ue[T]=Ue[x]=Ue[h]=Ue[v]=Ue[m]=Ue[g]=Ue[y]=Ue[_]=Ue[b]=Ue[A]=Ue["[object Uint8ClampedArray]"]=Ue[O]=Ue[P]=!0,Ue[f]=Ue[d]=Ue[w]=!1;var ze={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},We=parseFloat,He=parseInt,Ve="object"==typeof global&&global&&global.Object===Object&&global,qe="object"==typeof self&&self&&self.Object===Object&&self,Ge=Ve||qe||Function("return this")(),$e=t&&!t.nodeType&&t,Ye=$e&&e&&!e.nodeType&&e,Ke=Ye&&Ye.exports===$e,Xe=Ke&&Ve.process,Qe=function(){try{var e=Ye&&Ye.require&&Ye.require("util").types;return e||Xe&&Xe.binding&&Xe.binding("util")}catch(e){}}(),Je=Qe&&Qe.isArrayBuffer,Ze=Qe&&Qe.isDate,et=Qe&&Qe.isMap,tt=Qe&&Qe.isRegExp,nt=Qe&&Qe.isSet,rt=Qe&&Qe.isTypedArray;function it(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function ot(e,t,n,r){for(var i=-1,o=null==e?0:e.length;++i-1}function ft(e,t,n){for(var r=-1,i=null==e?0:e.length;++r-1;);return n}function Nt(e,t){for(var n=e.length;n--&&bt(t,e[n],0)>-1;);return n}function Mt(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}var Rt=Ct({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),Ft=Ct({"&":"&","<":"<",">":">",'"':""","'":"'"});function Lt(e){return"\\"+ze[e]}function Bt(e){return Re.test(e)}function jt(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function Ut(e,t){return function(n){return e(t(n))}}function zt(e,t){for(var n=-1,r=e.length,i=0,u=[];++n",""":'"',"'":"'"});var $t=function e(t){var n,r=(t=null==t?Ge:$t.defaults(Ge.Object(),t,$t.pick(Ge,Le))).Array,fe=t.Date,de=t.Error,pe=t.Function,he=t.Math,ve=t.Object,me=t.RegExp,ge=t.String,ye=t.TypeError,_e=r.prototype,be=pe.prototype,we=ve.prototype,Ee=t["__core-js_shared__"],De=be.toString,Se=we.hasOwnProperty,Ce=0,ke=(n=/[^.]+$/.exec(Ee&&Ee.keys&&Ee.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Te=we.toString,xe=De.call(ve),Ae=Ge._,Oe=me("^"+De.call(Se).replace(q,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ne=Ke?t.Buffer:void 0,Re=t.Symbol,ze=t.Uint8Array,Ve=Ne?Ne.allocUnsafe:void 0,qe=Ut(ve.getPrototypeOf,ve),$e=ve.create,Ye=we.propertyIsEnumerable,Xe=_e.splice,Qe=Re?Re.isConcatSpreadable:void 0,gt=Re?Re.iterator:void 0,Ct=Re?Re.toStringTag:void 0,Yt=function(){try{var e=Zi(ve,"defineProperty");return e({},"",{}),e}catch(e){}}(),Kt=t.clearTimeout!==Ge.clearTimeout&&t.clearTimeout,Xt=fe&&fe.now!==Ge.Date.now&&fe.now,Qt=t.setTimeout!==Ge.setTimeout&&t.setTimeout,Jt=he.ceil,Zt=he.floor,en=ve.getOwnPropertySymbols,tn=Ne?Ne.isBuffer:void 0,nn=t.isFinite,rn=_e.join,on=Ut(ve.keys,ve),un=he.max,an=he.min,ln=fe.now,sn=t.parseInt,cn=he.random,fn=_e.reverse,dn=Zi(t,"DataView"),pn=Zi(t,"Map"),hn=Zi(t,"Promise"),vn=Zi(t,"Set"),mn=Zi(t,"WeakMap"),gn=Zi(ve,"create"),yn=mn&&new mn,_n={},bn=To(dn),wn=To(pn),En=To(hn),Dn=To(vn),Sn=To(mn),Cn=Re?Re.prototype:void 0,kn=Cn?Cn.valueOf:void 0,Tn=Cn?Cn.toString:void 0;function xn(e){if(Vu(e)&&!Nu(e)&&!(e instanceof In)){if(e instanceof Pn)return e;if(Se.call(e,"__wrapped__"))return xo(e)}return new Pn(e)}var An=function(){function e(){}return function(t){if(!Hu(t))return{};if($e)return $e(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();function On(){}function Pn(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=void 0}function In(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function Nn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t=t?e:t)),e}function Xn(e,t,n,r,i,o){var u,l=1&t,f=2&t,w=4&t;if(n&&(u=i?n(e,r,i,o):n(e)),void 0!==u)return u;if(!Hu(e))return e;var I=Nu(e);if(I){if(u=function(e){var t=e.length,n=new e.constructor(t);t&&"string"==typeof e[0]&&Se.call(e,"index")&&(n.index=e.index,n.input=e.input);return n}(e),!l)return gi(e,u)}else{var N=no(e),M=N==d||N==p;if(Lu(e))return fi(e,l);if(N==m||N==a||M&&!i){if(u=f||M?{}:io(e),!l)return f?function(e,t){return yi(e,to(e),t)}(e,function(e,t){return e&&yi(t,wa(t),e)}(u,e)):function(e,t){return yi(e,eo(e),t)}(e,Gn(u,e))}else{if(!Ue[N])return i?e:{};u=function(e,t,n){var r=e.constructor;switch(t){case E:return di(e);case s:case c:return new r(+e);case D:return function(e,t){var n=t?di(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case S:case C:case k:case T:case x:case A:case"[object Uint8ClampedArray]":case O:case P:return pi(e,n);case h:return new r;case v:case _:return new r(e);case g:return function(e){var t=new e.constructor(e.source,ne.exec(e));return t.lastIndex=e.lastIndex,t}(e);case y:return new r;case b:return i=e,kn?ve(kn.call(i)):{}}var i}(e,N,l)}}o||(o=new Ln);var R=o.get(e);if(R)return R;o.set(e,u),Ku(e)?e.forEach((function(r){u.add(Xn(r,t,n,r,e,o))})):qu(e)&&e.forEach((function(r,i){u.set(i,Xn(r,t,n,i,e,o))}));var F=I?void 0:(w?f?Gi:qi:f?wa:ba)(e);return ut(F||e,(function(r,i){F&&(r=e[i=r]),Hn(u,i,Xn(r,t,n,i,e,o))})),u}function Qn(e,t,n){var r=n.length;if(null==e)return!r;for(e=ve(e);r--;){var i=n[r],o=t[i],u=e[i];if(void 0===u&&!(i in e)||!o(u))return!1}return!0}function Jn(e,t,n){if("function"!=typeof e)throw new ye(i);return bo((function(){e.apply(void 0,n)}),t)}function Zn(e,t,n,r){var i=-1,o=ct,u=!0,a=e.length,l=[],s=t.length;if(!a)return l;n&&(t=dt(t,At(n))),r?(o=ft,u=!1):t.length>=200&&(o=Pt,u=!1,t=new Fn(t));e:for(;++i-1},Mn.prototype.set=function(e,t){var n=this.__data__,r=Vn(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Rn.prototype.clear=function(){this.size=0,this.__data__={hash:new Nn,map:new(pn||Mn),string:new Nn}},Rn.prototype.delete=function(e){var t=Qi(this,e).delete(e);return this.size-=t?1:0,t},Rn.prototype.get=function(e){return Qi(this,e).get(e)},Rn.prototype.has=function(e){return Qi(this,e).has(e)},Rn.prototype.set=function(e,t){var n=Qi(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},Fn.prototype.add=Fn.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},Fn.prototype.has=function(e){return this.__data__.has(e)},Ln.prototype.clear=function(){this.__data__=new Mn,this.size=0},Ln.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Ln.prototype.get=function(e){return this.__data__.get(e)},Ln.prototype.has=function(e){return this.__data__.has(e)},Ln.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Mn){var r=n.__data__;if(!pn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Rn(r)}return n.set(e,t),this.size=n.size,this};var er=wi(lr),tr=wi(sr,!0);function nr(e,t){var n=!0;return er(e,(function(e,r,i){return n=!!t(e,r,i)})),n}function rr(e,t,n){for(var r=-1,i=e.length;++r0&&n(a)?t>1?or(a,t-1,n,r,i):pt(i,a):r||(i[i.length]=a)}return i}var ur=Ei(),ar=Ei(!0);function lr(e,t){return e&&ur(e,t,ba)}function sr(e,t){return e&&ar(e,t,ba)}function cr(e,t){return st(t,(function(t){return Uu(e[t])}))}function fr(e,t){for(var n=0,r=(t=ai(t,e)).length;null!=e&&nt}function vr(e,t){return null!=e&&Se.call(e,t)}function mr(e,t){return null!=e&&t in ve(e)}function gr(e,t,n){for(var i=n?ft:ct,o=e[0].length,u=e.length,a=u,l=r(u),s=1/0,c=[];a--;){var f=e[a];a&&t&&(f=dt(f,At(t))),s=an(f.length,s),l[a]=!n&&(t||o>=120&&f.length>=120)?new Fn(a&&f):void 0}f=e[0];var d=-1,p=l[0];e:for(;++d=a)return l;var s=n[r];return l*("desc"==s?-1:1)}}return e.index-t.index}(e,t,n)}))}function Nr(e,t,n){for(var r=-1,i=t.length,o={};++r-1;)a!==e&&Xe.call(a,l,1),Xe.call(e,l,1);return e}function Rr(e,t){for(var n=e?t.length:0,r=n-1;n--;){var i=t[n];if(n==r||i!==o){var o=i;uo(i)?Xe.call(e,i,1):Zr(e,i)}}return e}function Fr(e,t){return e+Zt(cn()*(t-e+1))}function Lr(e,t){var n="";if(!e||t<1||t>9007199254740991)return n;do{t%2&&(n+=e),(t=Zt(t/2))&&(e+=e)}while(t);return n}function Br(e,t){return wo(vo(e,t,Ga),e+"")}function jr(e){return jn(Aa(e))}function Ur(e,t){var n=Aa(e);return So(n,Kn(t,0,n.length))}function zr(e,t,n,r){if(!Hu(e))return e;for(var i=-1,o=(t=ai(t,e)).length,u=o-1,a=e;null!=a&&++io?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var u=r(o);++i>>1,u=e[o];null!==u&&!Qu(u)&&(n?u<=t:u=200){var s=t?null:Li(e);if(s)return Wt(s);u=!1,i=Pt,l=new Fn}else l=t?[]:a;e:for(;++r=r?e:qr(e,t,n)}var ci=Kt||function(e){return Ge.clearTimeout(e)};function fi(e,t){if(t)return e.slice();var n=e.length,r=Ve?Ve(n):new e.constructor(n);return e.copy(r),r}function di(e){var t=new e.constructor(e.byteLength);return new ze(t).set(new ze(e)),t}function pi(e,t){var n=t?di(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function hi(e,t){if(e!==t){var n=void 0!==e,r=null===e,i=e==e,o=Qu(e),u=void 0!==t,a=null===t,l=t==t,s=Qu(t);if(!a&&!s&&!o&&e>t||o&&u&&l&&!a&&!s||r&&u&&l||!n&&l||!i)return 1;if(!r&&!o&&!s&&e1?n[i-1]:void 0,u=i>2?n[2]:void 0;for(o=e.length>3&&"function"==typeof o?(i--,o):void 0,u&&ao(n[0],n[1],u)&&(o=i<3?void 0:o,i=1),t=ve(t);++r-1?i[o?t[u]:u]:void 0}}function Ti(e){return Vi((function(t){var n=t.length,r=n,o=Pn.prototype.thru;for(e&&t.reverse();r--;){var u=t[r];if("function"!=typeof u)throw new ye(i);if(o&&!a&&"wrapper"==Yi(u))var a=new Pn([],!0)}for(r=a?r:n;++r1&&_.reverse(),f&&sa))return!1;var s=o.get(e),c=o.get(t);if(s&&c)return s==t&&c==e;var f=-1,d=!0,p=2&n?new Fn:void 0;for(o.set(e,t),o.set(t,e);++f-1&&e%1==0&&e1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(X,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return ut(u,(function(n){var r="_."+n[0];t&n[1]&&!ct(e,r)&&e.push(r)})),e.sort()}(function(e){var t=e.match(Q);return t?t[1].split(J):[]}(r),n)))}function Do(e){var t=0,n=0;return function(){var r=ln(),i=16-(r-n);if(n=r,i>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function So(e,t){var n=-1,r=e.length,i=r-1;for(t=void 0===t?r:t;++n1?e[t-1]:void 0;return n="function"==typeof n?(e.pop(),n):void 0,Yo(e,n)}));function tu(e){var t=xn(e);return t.__chain__=!0,t}function nu(e,t){return t(e)}var ru=Vi((function(e){var t=e.length,n=t?e[0]:0,r=this.__wrapped__,i=function(t){return Yn(t,e)};return!(t>1||this.__actions__.length)&&r instanceof In&&uo(n)?((r=r.slice(n,+n+(t?1:0))).__actions__.push({func:nu,args:[i],thisArg:void 0}),new Pn(r,this.__chain__).thru((function(e){return t&&!e.length&&e.push(void 0),e}))):this.thru(i)}));var iu=_i((function(e,t,n){Se.call(e,n)?++e[n]:$n(e,n,1)}));var ou=ki(Io),uu=ki(No);function au(e,t){return(Nu(e)?ut:er)(e,Xi(t,3))}function lu(e,t){return(Nu(e)?at:tr)(e,Xi(t,3))}var su=_i((function(e,t,n){Se.call(e,n)?e[n].push(t):$n(e,n,[t])}));var cu=Br((function(e,t,n){var i=-1,o="function"==typeof t,u=Ru(e)?r(e.length):[];return er(e,(function(e){u[++i]=o?it(t,e,n):yr(e,t,n)})),u})),fu=_i((function(e,t,n){$n(e,n,t)}));function du(e,t){return(Nu(e)?dt:Tr)(e,Xi(t,3))}var pu=_i((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]}));var hu=Br((function(e,t){if(null==e)return[];var n=t.length;return n>1&&ao(e,t[0],t[1])?t=[]:n>2&&ao(t[0],t[1],t[2])&&(t=[t[0]]),Ir(e,or(t,1),[])})),vu=Xt||function(){return Ge.Date.now()};function mu(e,t,n){return t=n?void 0:t,ji(e,128,void 0,void 0,void 0,void 0,t=e&&null==t?e.length:t)}function gu(e,t){var n;if("function"!=typeof t)throw new ye(i);return e=ra(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=void 0),n}}var yu=Br((function(e,t,n){var r=1;if(n.length){var i=zt(n,Ki(yu));r|=32}return ji(e,r,t,n,i)})),_u=Br((function(e,t,n){var r=3;if(n.length){var i=zt(n,Ki(_u));r|=32}return ji(t,r,e,n,i)}));function bu(e,t,n){var r,o,u,a,l,s,c=0,f=!1,d=!1,p=!0;if("function"!=typeof e)throw new ye(i);function h(t){var n=r,i=o;return r=o=void 0,c=t,a=e.apply(i,n)}function v(e){return c=e,l=bo(g,t),f?h(e):a}function m(e){var n=e-s;return void 0===s||n>=t||n<0||d&&e-c>=u}function g(){var e=vu();if(m(e))return y(e);l=bo(g,function(e){var n=t-(e-s);return d?an(n,u-(e-c)):n}(e))}function y(e){return l=void 0,p&&r?h(e):(r=o=void 0,a)}function _(){var e=vu(),n=m(e);if(r=arguments,o=this,s=e,n){if(void 0===l)return v(s);if(d)return ci(l),l=bo(g,t),h(s)}return void 0===l&&(l=bo(g,t)),a}return t=oa(t)||0,Hu(n)&&(f=!!n.leading,u=(d="maxWait"in n)?un(oa(n.maxWait)||0,t):u,p="trailing"in n?!!n.trailing:p),_.cancel=function(){void 0!==l&&ci(l),c=0,r=s=o=l=void 0},_.flush=function(){return void 0===l?a:y(vu())},_}var wu=Br((function(e,t){return Jn(e,1,t)})),Eu=Br((function(e,t,n){return Jn(e,oa(t)||0,n)}));function Du(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new ye(i);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var u=e.apply(this,r);return n.cache=o.set(i,u)||o,u};return n.cache=new(Du.Cache||Rn),n}function Su(e){if("function"!=typeof e)throw new ye(i);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Du.Cache=Rn;var Cu=li((function(e,t){var n=(t=1==t.length&&Nu(t[0])?dt(t[0],At(Xi())):dt(or(t,1),At(Xi()))).length;return Br((function(r){for(var i=-1,o=an(r.length,n);++i=t})),Iu=_r(function(){return arguments}())?_r:function(e){return Vu(e)&&Se.call(e,"callee")&&!Ye.call(e,"callee")},Nu=r.isArray,Mu=Je?At(Je):function(e){return Vu(e)&&pr(e)==E};function Ru(e){return null!=e&&Wu(e.length)&&!Uu(e)}function Fu(e){return Vu(e)&&Ru(e)}var Lu=tn||ol,Bu=Ze?At(Ze):function(e){return Vu(e)&&pr(e)==c};function ju(e){if(!Vu(e))return!1;var t=pr(e);return t==f||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!$u(e)}function Uu(e){if(!Hu(e))return!1;var t=pr(e);return t==d||t==p||"[object AsyncFunction]"==t||"[object Proxy]"==t}function zu(e){return"number"==typeof e&&e==ra(e)}function Wu(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}function Hu(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Vu(e){return null!=e&&"object"==typeof e}var qu=et?At(et):function(e){return Vu(e)&&no(e)==h};function Gu(e){return"number"==typeof e||Vu(e)&&pr(e)==v}function $u(e){if(!Vu(e)||pr(e)!=m)return!1;var t=qe(e);if(null===t)return!0;var n=Se.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&De.call(n)==xe}var Yu=tt?At(tt):function(e){return Vu(e)&&pr(e)==g};var Ku=nt?At(nt):function(e){return Vu(e)&&no(e)==y};function Xu(e){return"string"==typeof e||!Nu(e)&&Vu(e)&&pr(e)==_}function Qu(e){return"symbol"==typeof e||Vu(e)&&pr(e)==b}var Ju=rt?At(rt):function(e){return Vu(e)&&Wu(e.length)&&!!je[pr(e)]};var Zu=Mi(kr),ea=Mi((function(e,t){return e<=t}));function ta(e){if(!e)return[];if(Ru(e))return Xu(e)?qt(e):gi(e);if(gt&&e[gt])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[gt]());var t=no(e);return(t==h?jt:t==y?Wt:Aa)(e)}function na(e){return e?(e=oa(e))===1/0||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function ra(e){var t=na(e),n=t%1;return t==t?n?t-n:t:0}function ia(e){return e?Kn(ra(e),0,4294967295):0}function oa(e){if("number"==typeof e)return e;if(Qu(e))return NaN;if(Hu(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Hu(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace($,"");var n=ie.test(e);return n||ue.test(e)?He(e.slice(2),n?2:8):re.test(e)?NaN:+e}function ua(e){return yi(e,wa(e))}function aa(e){return null==e?"":Qr(e)}var la=bi((function(e,t){if(fo(t)||Ru(t))yi(t,ba(t),e);else for(var n in t)Se.call(t,n)&&Hn(e,n,t[n])})),sa=bi((function(e,t){yi(t,wa(t),e)})),ca=bi((function(e,t,n,r){yi(t,wa(t),e,r)})),fa=bi((function(e,t,n,r){yi(t,ba(t),e,r)})),da=Vi(Yn);var pa=Br((function(e,t){e=ve(e);var n=-1,r=t.length,i=r>2?t[2]:void 0;for(i&&ao(t[0],t[1],i)&&(r=1);++n1),t})),yi(e,Gi(e),n),r&&(n=Xn(n,7,Wi));for(var i=t.length;i--;)Zr(n,t[i]);return n}));var Ca=Vi((function(e,t){return null==e?{}:function(e,t){return Nr(e,t,(function(t,n){return ma(e,n)}))}(e,t)}));function ka(e,t){if(null==e)return{};var n=dt(Gi(e),(function(e){return[e]}));return t=Xi(t),Nr(e,n,(function(e,n){return t(e,n[0])}))}var Ta=Bi(ba),xa=Bi(wa);function Aa(e){return null==e?[]:Ot(e,ba(e))}var Oa=Si((function(e,t,n){return t=t.toLowerCase(),e+(n?Pa(t):t)}));function Pa(e){return ja(aa(e).toLowerCase())}function Ia(e){return(e=aa(e))&&e.replace(le,Rt).replace(Ie,"")}var Na=Si((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),Ma=Si((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),Ra=Di("toLowerCase");var Fa=Si((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()}));var La=Si((function(e,t,n){return e+(n?" ":"")+ja(t)}));var Ba=Si((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),ja=Di("toUpperCase");function Ua(e,t,n){return e=aa(e),void 0===(t=n?void 0:t)?function(e){return Fe.test(e)}(e)?function(e){return e.match(Me)||[]}(e):function(e){return e.match(Z)||[]}(e):e.match(t)||[]}var za=Br((function(e,t){try{return it(e,void 0,t)}catch(e){return ju(e)?e:new de(e)}})),Wa=Vi((function(e,t){return ut(t,(function(t){t=ko(t),$n(e,t,yu(e[t],e))})),e}));function Ha(e){return function(){return e}}var Va=Ti(),qa=Ti(!0);function Ga(e){return e}function $a(e){return Dr("function"==typeof e?e:Xn(e,1))}var Ya=Br((function(e,t){return function(n){return yr(n,e,t)}})),Ka=Br((function(e,t){return function(n){return yr(e,n,t)}}));function Xa(e,t,n){var r=ba(t),i=cr(t,r);null!=n||Hu(t)&&(i.length||!r.length)||(n=t,t=e,e=this,i=cr(t,ba(t)));var o=!(Hu(n)&&"chain"in n&&!n.chain),u=Uu(e);return ut(i,(function(n){var r=t[n];e[n]=r,u&&(e.prototype[n]=function(){var t=this.__chain__;if(o||t){var n=e(this.__wrapped__),i=n.__actions__=gi(this.__actions__);return i.push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,pt([this.value()],arguments))})})),e}function Qa(){}var Ja=Pi(dt),Za=Pi(lt),el=Pi(mt);function tl(e){return lo(e)?St(ko(e)):function(e){return function(t){return fr(t,e)}}(e)}var nl=Ni(),rl=Ni(!0);function il(){return[]}function ol(){return!1}var ul=Oi((function(e,t){return e+t}),0),al=Fi("ceil"),ll=Oi((function(e,t){return e/t}),1),sl=Fi("floor");var cl,fl=Oi((function(e,t){return e*t}),1),dl=Fi("round"),pl=Oi((function(e,t){return e-t}),0);return xn.after=function(e,t){if("function"!=typeof t)throw new ye(i);return e=ra(e),function(){if(--e<1)return t.apply(this,arguments)}},xn.ary=mu,xn.assign=la,xn.assignIn=sa,xn.assignInWith=ca,xn.assignWith=fa,xn.at=da,xn.before=gu,xn.bind=yu,xn.bindAll=Wa,xn.bindKey=_u,xn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Nu(e)?e:[e]},xn.chain=tu,xn.chunk=function(e,t,n){t=(n?ao(e,t,n):void 0===t)?1:un(ra(t),0);var i=null==e?0:e.length;if(!i||t<1)return[];for(var o=0,u=0,a=r(Jt(i/t));oi?0:i+n),(r=void 0===r||r>i?i:ra(r))<0&&(r+=i),r=n>r?0:ia(r);n>>0)?(e=aa(e))&&("string"==typeof t||null!=t&&!Yu(t))&&!(t=Qr(t))&&Bt(e)?si(qt(e),0,n):e.split(t,n):[]},xn.spread=function(e,t){if("function"!=typeof e)throw new ye(i);return t=null==t?0:un(ra(t),0),Br((function(n){var r=n[t],i=si(n,0,t);return r&&pt(i,r),it(e,this,i)}))},xn.tail=function(e){var t=null==e?0:e.length;return t?qr(e,1,t):[]},xn.take=function(e,t,n){return e&&e.length?qr(e,0,(t=n||void 0===t?1:ra(t))<0?0:t):[]},xn.takeRight=function(e,t,n){var r=null==e?0:e.length;return r?qr(e,(t=r-(t=n||void 0===t?1:ra(t)))<0?0:t,r):[]},xn.takeRightWhile=function(e,t){return e&&e.length?ti(e,Xi(t,3),!1,!0):[]},xn.takeWhile=function(e,t){return e&&e.length?ti(e,Xi(t,3)):[]},xn.tap=function(e,t){return t(e),e},xn.throttle=function(e,t,n){var r=!0,o=!0;if("function"!=typeof e)throw new ye(i);return Hu(n)&&(r="leading"in n?!!n.leading:r,o="trailing"in n?!!n.trailing:o),bu(e,t,{leading:r,maxWait:t,trailing:o})},xn.thru=nu,xn.toArray=ta,xn.toPairs=Ta,xn.toPairsIn=xa,xn.toPath=function(e){return Nu(e)?dt(e,ko):Qu(e)?[e]:gi(Co(aa(e)))},xn.toPlainObject=ua,xn.transform=function(e,t,n){var r=Nu(e),i=r||Lu(e)||Ju(e);if(t=Xi(t,4),null==n){var o=e&&e.constructor;n=i?r?new o:[]:Hu(e)&&Uu(o)?An(qe(e)):{}}return(i?ut:lr)(e,(function(e,r,i){return t(n,e,r,i)})),n},xn.unary=function(e){return mu(e,1)},xn.union=Vo,xn.unionBy=qo,xn.unionWith=Go,xn.uniq=function(e){return e&&e.length?Jr(e):[]},xn.uniqBy=function(e,t){return e&&e.length?Jr(e,Xi(t,2)):[]},xn.uniqWith=function(e,t){return t="function"==typeof t?t:void 0,e&&e.length?Jr(e,void 0,t):[]},xn.unset=function(e,t){return null==e||Zr(e,t)},xn.unzip=$o,xn.unzipWith=Yo,xn.update=function(e,t,n){return null==e?e:ei(e,t,ui(n))},xn.updateWith=function(e,t,n,r){return r="function"==typeof r?r:void 0,null==e?e:ei(e,t,ui(n),r)},xn.values=Aa,xn.valuesIn=function(e){return null==e?[]:Ot(e,wa(e))},xn.without=Ko,xn.words=Ua,xn.wrap=function(e,t){return ku(ui(t),e)},xn.xor=Xo,xn.xorBy=Qo,xn.xorWith=Jo,xn.zip=Zo,xn.zipObject=function(e,t){return ii(e||[],t||[],Hn)},xn.zipObjectDeep=function(e,t){return ii(e||[],t||[],zr)},xn.zipWith=eu,xn.entries=Ta,xn.entriesIn=xa,xn.extend=sa,xn.extendWith=ca,Xa(xn,xn),xn.add=ul,xn.attempt=za,xn.camelCase=Oa,xn.capitalize=Pa,xn.ceil=al,xn.clamp=function(e,t,n){return void 0===n&&(n=t,t=void 0),void 0!==n&&(n=(n=oa(n))==n?n:0),void 0!==t&&(t=(t=oa(t))==t?t:0),Kn(oa(e),t,n)},xn.clone=function(e){return Xn(e,4)},xn.cloneDeep=function(e){return Xn(e,5)},xn.cloneDeepWith=function(e,t){return Xn(e,5,t="function"==typeof t?t:void 0)},xn.cloneWith=function(e,t){return Xn(e,4,t="function"==typeof t?t:void 0)},xn.conformsTo=function(e,t){return null==t||Qn(e,t,ba(t))},xn.deburr=Ia,xn.defaultTo=function(e,t){return null==e||e!=e?t:e},xn.divide=ll,xn.endsWith=function(e,t,n){e=aa(e),t=Qr(t);var r=e.length,i=n=void 0===n?r:Kn(ra(n),0,r);return(n-=t.length)>=0&&e.slice(n,i)==t},xn.eq=Au,xn.escape=function(e){return(e=aa(e))&&B.test(e)?e.replace(F,Ft):e},xn.escapeRegExp=function(e){return(e=aa(e))&&G.test(e)?e.replace(q,"\\$&"):e},xn.every=function(e,t,n){var r=Nu(e)?lt:nr;return n&&ao(e,t,n)&&(t=void 0),r(e,Xi(t,3))},xn.find=ou,xn.findIndex=Io,xn.findKey=function(e,t){return yt(e,Xi(t,3),lr)},xn.findLast=uu,xn.findLastIndex=No,xn.findLastKey=function(e,t){return yt(e,Xi(t,3),sr)},xn.floor=sl,xn.forEach=au,xn.forEachRight=lu,xn.forIn=function(e,t){return null==e?e:ur(e,Xi(t,3),wa)},xn.forInRight=function(e,t){return null==e?e:ar(e,Xi(t,3),wa)},xn.forOwn=function(e,t){return e&&lr(e,Xi(t,3))},xn.forOwnRight=function(e,t){return e&&sr(e,Xi(t,3))},xn.get=va,xn.gt=Ou,xn.gte=Pu,xn.has=function(e,t){return null!=e&&ro(e,t,vr)},xn.hasIn=ma,xn.head=Ro,xn.identity=Ga,xn.includes=function(e,t,n,r){e=Ru(e)?e:Aa(e),n=n&&!r?ra(n):0;var i=e.length;return n<0&&(n=un(i+n,0)),Xu(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&bt(e,t,n)>-1},xn.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:ra(n);return i<0&&(i=un(r+i,0)),bt(e,t,i)},xn.inRange=function(e,t,n){return t=na(t),void 0===n?(n=t,t=0):n=na(n),function(e,t,n){return e>=an(t,n)&&e=-9007199254740991&&e<=9007199254740991},xn.isSet=Ku,xn.isString=Xu,xn.isSymbol=Qu,xn.isTypedArray=Ju,xn.isUndefined=function(e){return void 0===e},xn.isWeakMap=function(e){return Vu(e)&&no(e)==w},xn.isWeakSet=function(e){return Vu(e)&&"[object WeakSet]"==pr(e)},xn.join=function(e,t){return null==e?"":rn.call(e,t)},xn.kebabCase=Na,xn.last=jo,xn.lastIndexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=r;return void 0!==n&&(i=(i=ra(n))<0?un(r+i,0):an(i,r-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,i):_t(e,Et,i,!0)},xn.lowerCase=Ma,xn.lowerFirst=Ra,xn.lt=Zu,xn.lte=ea,xn.max=function(e){return e&&e.length?rr(e,Ga,hr):void 0},xn.maxBy=function(e,t){return e&&e.length?rr(e,Xi(t,2),hr):void 0},xn.mean=function(e){return Dt(e,Ga)},xn.meanBy=function(e,t){return Dt(e,Xi(t,2))},xn.min=function(e){return e&&e.length?rr(e,Ga,kr):void 0},xn.minBy=function(e,t){return e&&e.length?rr(e,Xi(t,2),kr):void 0},xn.stubArray=il,xn.stubFalse=ol,xn.stubObject=function(){return{}},xn.stubString=function(){return""},xn.stubTrue=function(){return!0},xn.multiply=fl,xn.nth=function(e,t){return e&&e.length?Pr(e,ra(t)):void 0},xn.noConflict=function(){return Ge._===this&&(Ge._=Ae),this},xn.noop=Qa,xn.now=vu,xn.pad=function(e,t,n){e=aa(e);var r=(t=ra(t))?Vt(e):0;if(!t||r>=t)return e;var i=(t-r)/2;return Ii(Zt(i),n)+e+Ii(Jt(i),n)},xn.padEnd=function(e,t,n){e=aa(e);var r=(t=ra(t))?Vt(e):0;return t&&rt){var r=e;e=t,t=r}if(n||e%1||t%1){var i=cn();return an(e+i*(t-e+We("1e-"+((i+"").length-1))),t)}return Fr(e,t)},xn.reduce=function(e,t,n){var r=Nu(e)?ht:kt,i=arguments.length<3;return r(e,Xi(t,4),n,i,er)},xn.reduceRight=function(e,t,n){var r=Nu(e)?vt:kt,i=arguments.length<3;return r(e,Xi(t,4),n,i,tr)},xn.repeat=function(e,t,n){return t=(n?ao(e,t,n):void 0===t)?1:ra(t),Lr(aa(e),t)},xn.replace=function(){var e=arguments,t=aa(e[0]);return e.length<3?t:t.replace(e[1],e[2])},xn.result=function(e,t,n){var r=-1,i=(t=ai(t,e)).length;for(i||(i=1,e=void 0);++r9007199254740991)return[];var n=4294967295,r=an(e,4294967295);e-=4294967295;for(var i=xt(r,t=Xi(t));++n=o)return e;var a=n-Vt(r);if(a<1)return r;var l=u?si(u,0,a).join(""):e.slice(0,a);if(void 0===i)return l+r;if(u&&(a+=l.length-a),Yu(i)){if(e.slice(a).search(i)){var s,c=l;for(i.global||(i=me(i.source,aa(ne.exec(i))+"g")),i.lastIndex=0;s=i.exec(c);)var f=s.index;l=l.slice(0,void 0===f?a:f)}}else if(e.indexOf(Qr(i),a)!=a){var d=l.lastIndexOf(i);d>-1&&(l=l.slice(0,d))}return l+r},xn.unescape=function(e){return(e=aa(e))&&L.test(e)?e.replace(R,Gt):e},xn.uniqueId=function(e){var t=++Ce;return aa(e)+t},xn.upperCase=Ba,xn.upperFirst=ja,xn.each=au,xn.eachRight=lu,xn.first=Ro,Xa(xn,(cl={},lr(xn,(function(e,t){Se.call(xn.prototype,t)||(cl[t]=e)})),cl),{chain:!1}),xn.VERSION="4.17.20",ut(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){xn[e].placeholder=xn})),ut(["drop","take"],(function(e,t){In.prototype[e]=function(n){n=void 0===n?1:un(ra(n),0);var r=this.__filtered__&&!t?new In(this):this.clone();return r.__filtered__?r.__takeCount__=an(n,r.__takeCount__):r.__views__.push({size:an(n,4294967295),type:e+(r.__dir__<0?"Right":"")}),r},In.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),ut(["filter","map","takeWhile"],(function(e,t){var n=t+1,r=1==n||3==n;In.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:Xi(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}})),ut(["head","last"],(function(e,t){var n="take"+(t?"Right":"");In.prototype[e]=function(){return this[n](1).value()[0]}})),ut(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");In.prototype[e]=function(){return this.__filtered__?new In(this):this[n](1)}})),In.prototype.compact=function(){return this.filter(Ga)},In.prototype.find=function(e){return this.filter(e).head()},In.prototype.findLast=function(e){return this.reverse().find(e)},In.prototype.invokeMap=Br((function(e,t){return"function"==typeof e?new In(this):this.map((function(n){return yr(n,e,t)}))})),In.prototype.reject=function(e){return this.filter(Su(Xi(e)))},In.prototype.slice=function(e,t){e=ra(e);var n=this;return n.__filtered__&&(e>0||t<0)?new In(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),void 0!==t&&(n=(t=ra(t))<0?n.dropRight(-t):n.take(t-e)),n)},In.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},In.prototype.toArray=function(){return this.take(4294967295)},lr(In.prototype,(function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),i=xn[r?"take"+("last"==t?"Right":""):t],o=r||/^find/.test(t);i&&(xn.prototype[t]=function(){var t=this.__wrapped__,u=r?[1]:arguments,a=t instanceof In,l=u[0],s=a||Nu(t),c=function(e){var t=i.apply(xn,pt([e],u));return r&&f?t[0]:t};s&&n&&"function"==typeof l&&1!=l.length&&(a=s=!1);var f=this.__chain__,d=!!this.__actions__.length,p=o&&!f,h=a&&!d;if(!o&&s){t=h?t:new In(this);var v=e.apply(t,u);return v.__actions__.push({func:nu,args:[c],thisArg:void 0}),new Pn(v,f)}return p&&h?e.apply(this,u):(v=this.thru(c),p?r?v.value()[0]:v.value():v)})})),ut(["pop","push","shift","sort","splice","unshift"],(function(e){var t=_e[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);xn.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var i=this.value();return t.apply(Nu(i)?i:[],e)}return this[n]((function(n){return t.apply(Nu(n)?n:[],e)}))}})),lr(In.prototype,(function(e,t){var n=xn[t];if(n){var r=n.name+"";Se.call(_n,r)||(_n[r]=[]),_n[r].push({name:t,func:n})}})),_n[xi(void 0,2).name]=[{name:"wrapper",func:void 0}],In.prototype.clone=function(){var e=new In(this.__wrapped__);return e.__actions__=gi(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=gi(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=gi(this.__views__),e},In.prototype.reverse=function(){if(this.__filtered__){var e=new In(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},In.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Nu(e),r=t<0,i=n?e.length:0,o=function(e,t,n){var r=-1,i=n.length;for(;++r=this.__values__.length;return{done:e,value:e?void 0:this.__values__[this.__index__++]}},xn.prototype.plant=function(e){for(var t,n=this;n instanceof On;){var r=xo(n);r.__index__=0,r.__values__=void 0,t?i.__wrapped__=r:t=r;var i=r;n=n.__wrapped__}return i.__wrapped__=e,t},xn.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof In){var t=e;return this.__actions__.length&&(t=new In(this)),(t=t.reverse()).__actions__.push({func:nu,args:[Ho],thisArg:void 0}),new Pn(t,this.__chain__)}return this.thru(Ho)},xn.prototype.toJSON=xn.prototype.valueOf=xn.prototype.value=function(){return ni(this.__wrapped__,this.__actions__)},xn.prototype.first=xn.prototype.head,gt&&(xn.prototype[gt]=function(){return this}),xn}();Ge._=$t,void 0===(r=function(){return $t}.call(t,n,t,e))||(e.exports=r)}.call(this)},1573:e=>{"use strict";const t=(e,t)=>{for(const n of Reflect.ownKeys(t))Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n));return e};e.exports=t,e.exports.default=t},9381:e=>{"use strict";
+/*
+object-assign
+(c) Sindre Sorhus
+@license MIT
+*/var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;function i(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,o){for(var u,a,l=i(e),s=1;s{"use strict";const r=n(1573),i=new WeakMap,o=(e,t={})=>{if("function"!=typeof e)throw new TypeError("Expected a function");let n,o=!1,u=0;const a=e.displayName||e.name||"",l=function(...r){if(i.set(l,++u),o){if(!0===t.throw)throw new Error(`Function \`${a}\` can only be called once`);return n}return o=!0,n=e.apply(this,r),e=null,n};return r(l,e),i.set(l,u),l};e.exports=o,e.exports.default=o,e.exports.callCount=e=>{if(!i.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return i.get(e)}},8070:(e,t,n)=>{"use strict";const r=n(2413),i=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"];let o={};e.exports=e=>{const t=new r.PassThrough,n=new r.PassThrough;t.write=t=>e("stdout",t),n.write=t=>e("stderr",t);const u=new console.Console(t,n);for(const e of i)o[e]=console[e],console[e]=u[e];return()=>{for(const e of i)console[e]=o[e];o={}}}},5187:e=>{window,e.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=20)}([function(e,t,n){"use strict";e.exports=n(12)},function(e,t,n){"use strict";
+/*
+object-assign
+(c) Sindre Sorhus
+@license MIT
+*/var r=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;function u(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,a,l=u(e),s=1;s=t||n<0||f&&e-s>=o}function w(){var e=h();if(b(e))return E(e);a=setTimeout(w,function(e){var n=t-(e-l);return f?p(n,o-(e-s)):n}(e))}function E(e){return a=void 0,m&&r?y(e):(r=i=void 0,u)}function D(){var e=h(),n=b(e);if(r=arguments,i=this,l=e,n){if(void 0===a)return _(l);if(f)return a=setTimeout(w,t),y(l)}return void 0===a&&(a=setTimeout(w,t)),u}return t=g(t)||0,v(n)&&(c=!!n.leading,o=(f="maxWait"in n)?d(g(n.maxWait)||0,t):o,m="trailing"in n?!!n.trailing:m),D.cancel=function(){void 0!==a&&clearTimeout(a),s=0,r=l=i=a=void 0},D.flush=function(){return void 0===a?u:E(h())},D}(e,t,{leading:r,maxWait:t,trailing:i})}}).call(this,n(4))},function(e,t,n){(function(n){function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i;t=e.exports=p,i="object"===(void 0===n?"undefined":r(n))&&n.env&&n.env.NODE_DEBUG&&/\bsemver\b/i.test(n.env.NODE_DEBUG)?function(){var e=Array.prototype.slice.call(arguments,0);e.unshift("SEMVER"),console.log.apply(console,e)}:function(){},t.SEMVER_SPEC_VERSION="2.0.0";var o=Number.MAX_SAFE_INTEGER||9007199254740991,u=t.re=[],a=t.src=[],l=t.tokens={},s=0;function c(e){l[e]=s++}c("NUMERICIDENTIFIER"),a[l.NUMERICIDENTIFIER]="0|[1-9]\\d*",c("NUMERICIDENTIFIERLOOSE"),a[l.NUMERICIDENTIFIERLOOSE]="[0-9]+",c("NONNUMERICIDENTIFIER"),a[l.NONNUMERICIDENTIFIER]="\\d*[a-zA-Z-][a-zA-Z0-9-]*",c("MAINVERSION"),a[l.MAINVERSION]="("+a[l.NUMERICIDENTIFIER]+")\\.("+a[l.NUMERICIDENTIFIER]+")\\.("+a[l.NUMERICIDENTIFIER]+")",c("MAINVERSIONLOOSE"),a[l.MAINVERSIONLOOSE]="("+a[l.NUMERICIDENTIFIERLOOSE]+")\\.("+a[l.NUMERICIDENTIFIERLOOSE]+")\\.("+a[l.NUMERICIDENTIFIERLOOSE]+")",c("PRERELEASEIDENTIFIER"),a[l.PRERELEASEIDENTIFIER]="(?:"+a[l.NUMERICIDENTIFIER]+"|"+a[l.NONNUMERICIDENTIFIER]+")",c("PRERELEASEIDENTIFIERLOOSE"),a[l.PRERELEASEIDENTIFIERLOOSE]="(?:"+a[l.NUMERICIDENTIFIERLOOSE]+"|"+a[l.NONNUMERICIDENTIFIER]+")",c("PRERELEASE"),a[l.PRERELEASE]="(?:-("+a[l.PRERELEASEIDENTIFIER]+"(?:\\."+a[l.PRERELEASEIDENTIFIER]+")*))",c("PRERELEASELOOSE"),a[l.PRERELEASELOOSE]="(?:-?("+a[l.PRERELEASEIDENTIFIERLOOSE]+"(?:\\."+a[l.PRERELEASEIDENTIFIERLOOSE]+")*))",c("BUILDIDENTIFIER"),a[l.BUILDIDENTIFIER]="[0-9A-Za-z-]+",c("BUILD"),a[l.BUILD]="(?:\\+("+a[l.BUILDIDENTIFIER]+"(?:\\."+a[l.BUILDIDENTIFIER]+")*))",c("FULL"),c("FULLPLAIN"),a[l.FULLPLAIN]="v?"+a[l.MAINVERSION]+a[l.PRERELEASE]+"?"+a[l.BUILD]+"?",a[l.FULL]="^"+a[l.FULLPLAIN]+"$",c("LOOSEPLAIN"),a[l.LOOSEPLAIN]="[v=\\s]*"+a[l.MAINVERSIONLOOSE]+a[l.PRERELEASELOOSE]+"?"+a[l.BUILD]+"?",c("LOOSE"),a[l.LOOSE]="^"+a[l.LOOSEPLAIN]+"$",c("GTLT"),a[l.GTLT]="((?:<|>)?=?)",c("XRANGEIDENTIFIERLOOSE"),a[l.XRANGEIDENTIFIERLOOSE]=a[l.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*",c("XRANGEIDENTIFIER"),a[l.XRANGEIDENTIFIER]=a[l.NUMERICIDENTIFIER]+"|x|X|\\*",c("XRANGEPLAIN"),a[l.XRANGEPLAIN]="[v=\\s]*("+a[l.XRANGEIDENTIFIER]+")(?:\\.("+a[l.XRANGEIDENTIFIER]+")(?:\\.("+a[l.XRANGEIDENTIFIER]+")(?:"+a[l.PRERELEASE]+")?"+a[l.BUILD]+"?)?)?",c("XRANGEPLAINLOOSE"),a[l.XRANGEPLAINLOOSE]="[v=\\s]*("+a[l.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+a[l.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+a[l.XRANGEIDENTIFIERLOOSE]+")(?:"+a[l.PRERELEASELOOSE]+")?"+a[l.BUILD]+"?)?)?",c("XRANGE"),a[l.XRANGE]="^"+a[l.GTLT]+"\\s*"+a[l.XRANGEPLAIN]+"$",c("XRANGELOOSE"),a[l.XRANGELOOSE]="^"+a[l.GTLT]+"\\s*"+a[l.XRANGEPLAINLOOSE]+"$",c("COERCE"),a[l.COERCE]="(^|[^\\d])(\\d{1,16})(?:\\.(\\d{1,16}))?(?:\\.(\\d{1,16}))?(?:$|[^\\d])",c("COERCERTL"),u[l.COERCERTL]=new RegExp(a[l.COERCE],"g"),c("LONETILDE"),a[l.LONETILDE]="(?:~>?)",c("TILDETRIM"),a[l.TILDETRIM]="(\\s*)"+a[l.LONETILDE]+"\\s+",u[l.TILDETRIM]=new RegExp(a[l.TILDETRIM],"g"),c("TILDE"),a[l.TILDE]="^"+a[l.LONETILDE]+a[l.XRANGEPLAIN]+"$",c("TILDELOOSE"),a[l.TILDELOOSE]="^"+a[l.LONETILDE]+a[l.XRANGEPLAINLOOSE]+"$",c("LONECARET"),a[l.LONECARET]="(?:\\^)",c("CARETTRIM"),a[l.CARETTRIM]="(\\s*)"+a[l.LONECARET]+"\\s+",u[l.CARETTRIM]=new RegExp(a[l.CARETTRIM],"g"),c("CARET"),a[l.CARET]="^"+a[l.LONECARET]+a[l.XRANGEPLAIN]+"$",c("CARETLOOSE"),a[l.CARETLOOSE]="^"+a[l.LONECARET]+a[l.XRANGEPLAINLOOSE]+"$",c("COMPARATORLOOSE"),a[l.COMPARATORLOOSE]="^"+a[l.GTLT]+"\\s*("+a[l.LOOSEPLAIN]+")$|^$",c("COMPARATOR"),a[l.COMPARATOR]="^"+a[l.GTLT]+"\\s*("+a[l.FULLPLAIN]+")$|^$",c("COMPARATORTRIM"),a[l.COMPARATORTRIM]="(\\s*)"+a[l.GTLT]+"\\s*("+a[l.LOOSEPLAIN]+"|"+a[l.XRANGEPLAIN]+")",u[l.COMPARATORTRIM]=new RegExp(a[l.COMPARATORTRIM],"g"),c("HYPHENRANGE"),a[l.HYPHENRANGE]="^\\s*("+a[l.XRANGEPLAIN]+")\\s+-\\s+("+a[l.XRANGEPLAIN]+")\\s*$",c("HYPHENRANGELOOSE"),a[l.HYPHENRANGELOOSE]="^\\s*("+a[l.XRANGEPLAINLOOSE]+")\\s+-\\s+("+a[l.XRANGEPLAINLOOSE]+")\\s*$",c("STAR"),a[l.STAR]="(<|>)?=?\\s*\\*";for(var f=0;f256)return null;if(!(t.loose?u[l.LOOSE]:u[l.FULL]).test(e))return null;try{return new p(e,t)}catch(e){return null}}function p(e,t){if(t&&"object"===r(t)||(t={loose:!!t,includePrerelease:!1}),e instanceof p){if(e.loose===t.loose)return e;e=e.version}else if("string"!=typeof e)throw new TypeError("Invalid Version: "+e);if(e.length>256)throw new TypeError("version is longer than 256 characters");if(!(this instanceof p))return new p(e,t);i("SemVer",e,t),this.options=t,this.loose=!!t.loose;var n=e.trim().match(t.loose?u[l.LOOSE]:u[l.FULL]);if(!n)throw new TypeError("Invalid Version: "+e);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>o||this.major<0)throw new TypeError("Invalid major version");if(this.minor>o||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>o||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map((function(e){if(/^[0-9]+$/.test(e)){var t=+e;if(t>=0&&t=0;)"number"==typeof this.prerelease[n]&&(this.prerelease[n]++,n=-2);-1===n&&this.prerelease.push(0)}t&&(this.prerelease[0]===t?isNaN(this.prerelease[1])&&(this.prerelease=[t,0]):this.prerelease=[t,0]);break;default:throw new Error("invalid increment argument: "+e)}return this.format(),this.raw=this.version,this},t.inc=function(e,t,n,r){"string"==typeof n&&(r=n,n=void 0);try{return new p(e,n).inc(t,r).version}catch(e){return null}},t.diff=function(e,t){if(_(e,t))return null;var n=d(e),r=d(t),i="";if(n.prerelease.length||r.prerelease.length){i="pre";var o="prerelease"}for(var u in n)if(("major"===u||"minor"===u||"patch"===u)&&n[u]!==r[u])return i+u;return o},t.compareIdentifiers=v;var h=/^[0-9]+$/;function v(e,t){var n=h.test(e),r=h.test(t);return n&&r&&(e=+e,t=+t),e===t?0:n&&!r?-1:r&&!n?1:e0}function y(e,t,n){return m(e,t,n)<0}function _(e,t,n){return 0===m(e,t,n)}function b(e,t,n){return 0!==m(e,t,n)}function w(e,t,n){return m(e,t,n)>=0}function E(e,t,n){return m(e,t,n)<=0}function D(e,t,n,i){switch(t){case"===":return"object"===r(e)&&(e=e.version),"object"===r(n)&&(n=n.version),e===n;case"!==":return"object"===r(e)&&(e=e.version),"object"===r(n)&&(n=n.version),e!==n;case"":case"=":case"==":return _(e,n,i);case"!=":return b(e,n,i);case">":return g(e,n,i);case">=":return w(e,n,i);case"<":return y(e,n,i);case"<=":return E(e,n,i);default:throw new TypeError("Invalid operator: "+t)}}function S(e,t){if(t&&"object"===r(t)||(t={loose:!!t,includePrerelease:!1}),e instanceof S){if(e.loose===!!t.loose)return e;e=e.value}if(!(this instanceof S))return new S(e,t);i("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===C?this.value="":this.value=this.operator+this.semver.version,i("comp",this)}t.rcompareIdentifiers=function(e,t){return v(t,e)},t.major=function(e,t){return new p(e,t).major},t.minor=function(e,t){return new p(e,t).minor},t.patch=function(e,t){return new p(e,t).patch},t.compare=m,t.compareLoose=function(e,t){return m(e,t,!0)},t.compareBuild=function(e,t,n){var r=new p(e,n),i=new p(t,n);return r.compare(i)||r.compareBuild(i)},t.rcompare=function(e,t,n){return m(t,e,n)},t.sort=function(e,n){return e.sort((function(e,r){return t.compareBuild(e,r,n)}))},t.rsort=function(e,n){return e.sort((function(e,r){return t.compareBuild(r,e,n)}))},t.gt=g,t.lt=y,t.eq=_,t.neq=b,t.gte=w,t.lte=E,t.cmp=D,t.Comparator=S;var C={};function k(e,t){if(t&&"object"===r(t)||(t={loose:!!t,includePrerelease:!1}),e instanceof k)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new k(e.raw,t);if(e instanceof S)return new k(e.value,t);if(!(this instanceof k))return new k(e,t);if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e,this.set=e.split(/\s*\|\|\s*/).map((function(e){return this.parseRange(e.trim())}),this).filter((function(e){return e.length})),!this.set.length)throw new TypeError("Invalid SemVer Range: "+e);this.format()}function T(e,t){for(var n=!0,r=e.slice(),i=r.pop();n&&r.length;)n=r.every((function(e){return i.intersects(e,t)})),i=r.pop();return n}function x(e){return!e||"x"===e.toLowerCase()||"*"===e}function A(e,t,n,r,i,o,u,a,l,s,c,f,d){return((t=x(n)?"":x(r)?">="+n+".0.0":x(i)?">="+n+"."+r+".0":">="+t)+" "+(a=x(l)?"":x(s)?"<"+(+l+1)+".0.0":x(c)?"<"+l+"."+(+s+1)+".0":f?"<="+l+"."+s+"."+c+"-"+f:"<="+a)).trim()}function O(e,t,n){for(var r=0;r0){var o=e[r].semver;if(o.major===t.major&&o.minor===t.minor&&o.patch===t.patch)return!0}return!1}return!0}function P(e,t,n){try{t=new k(t,n)}catch(e){return!1}return t.test(e)}function I(e,t,n,r){var i,o,u,a,l;switch(e=new p(e,r),t=new k(t,r),n){case">":i=g,o=E,u=y,a=">",l=">=";break;case"<":i=y,o=w,u=g,a="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(P(e,t,r))return!1;for(var s=0;s=0.0.0")),f=f||e,d=d||e,i(e.semver,f.semver,r)?f=e:u(e.semver,d.semver,r)&&(d=e)})),f.operator===a||f.operator===l)return!1;if((!d.operator||d.operator===a)&&o(e,d.semver))return!1;if(d.operator===l&&u(e,d.semver))return!1}return!0}S.prototype.parse=function(e){var t=this.options.loose?u[l.COMPARATORLOOSE]:u[l.COMPARATOR],n=e.match(t);if(!n)throw new TypeError("Invalid comparator: "+e);this.operator=void 0!==n[1]?n[1]:"","="===this.operator&&(this.operator=""),n[2]?this.semver=new p(n[2],this.options.loose):this.semver=C},S.prototype.toString=function(){return this.value},S.prototype.test=function(e){if(i("Comparator.test",e,this.options.loose),this.semver===C||e===C)return!0;if("string"==typeof e)try{e=new p(e,this.options)}catch(e){return!1}return D(e,this.operator,this.semver,this.options)},S.prototype.intersects=function(e,t){if(!(e instanceof S))throw new TypeError("a Comparator is required");var n;if(t&&"object"===r(t)||(t={loose:!!t,includePrerelease:!1}),""===this.operator)return""===this.value||(n=new k(e.value,t),P(this.value,n,t));if(""===e.operator)return""===e.value||(n=new k(this.value,t),P(e.semver,n,t));var i=!(">="!==this.operator&&">"!==this.operator||">="!==e.operator&&">"!==e.operator),o=!("<="!==this.operator&&"<"!==this.operator||"<="!==e.operator&&"<"!==e.operator),u=this.semver.version===e.semver.version,a=!(">="!==this.operator&&"<="!==this.operator||">="!==e.operator&&"<="!==e.operator),l=D(this.semver,"<",e.semver,t)&&(">="===this.operator||">"===this.operator)&&("<="===e.operator||"<"===e.operator),s=D(this.semver,">",e.semver,t)&&("<="===this.operator||"<"===this.operator)&&(">="===e.operator||">"===e.operator);return i||o||u&&a||l||s},t.Range=k,k.prototype.format=function(){return this.range=this.set.map((function(e){return e.join(" ").trim()})).join("||").trim(),this.range},k.prototype.toString=function(){return this.range},k.prototype.parseRange=function(e){var t=this.options.loose;e=e.trim();var n=t?u[l.HYPHENRANGELOOSE]:u[l.HYPHENRANGE];e=e.replace(n,A),i("hyphen replace",e),e=e.replace(u[l.COMPARATORTRIM],"$1$2$3"),i("comparator trim",e,u[l.COMPARATORTRIM]),e=(e=(e=e.replace(u[l.TILDETRIM],"$1~")).replace(u[l.CARETTRIM],"$1^")).split(/\s+/).join(" ");var r=t?u[l.COMPARATORLOOSE]:u[l.COMPARATOR],o=e.split(" ").map((function(e){return function(e,t){return i("comp",e,t),e=function(e,t){return e.trim().split(/\s+/).map((function(e){return function(e,t){i("caret",e,t);var n=t.loose?u[l.CARETLOOSE]:u[l.CARET];return e.replace(n,(function(t,n,r,o,u){var a;return i("caret",e,t,n,r,o,u),x(n)?a="":x(r)?a=">="+n+".0.0 <"+(+n+1)+".0.0":x(o)?a="0"===n?">="+n+"."+r+".0 <"+n+"."+(+r+1)+".0":">="+n+"."+r+".0 <"+(+n+1)+".0.0":u?(i("replaceCaret pr",u),a="0"===n?"0"===r?">="+n+"."+r+"."+o+"-"+u+" <"+n+"."+r+"."+(+o+1):">="+n+"."+r+"."+o+"-"+u+" <"+n+"."+(+r+1)+".0":">="+n+"."+r+"."+o+"-"+u+" <"+(+n+1)+".0.0"):(i("no pr"),a="0"===n?"0"===r?">="+n+"."+r+"."+o+" <"+n+"."+r+"."+(+o+1):">="+n+"."+r+"."+o+" <"+n+"."+(+r+1)+".0":">="+n+"."+r+"."+o+" <"+(+n+1)+".0.0"),i("caret return",a),a}))}(e,t)})).join(" ")}(e,t),i("caret",e),e=function(e,t){return e.trim().split(/\s+/).map((function(e){return function(e,t){var n=t.loose?u[l.TILDELOOSE]:u[l.TILDE];return e.replace(n,(function(t,n,r,o,u){var a;return i("tilde",e,t,n,r,o,u),x(n)?a="":x(r)?a=">="+n+".0.0 <"+(+n+1)+".0.0":x(o)?a=">="+n+"."+r+".0 <"+n+"."+(+r+1)+".0":u?(i("replaceTilde pr",u),a=">="+n+"."+r+"."+o+"-"+u+" <"+n+"."+(+r+1)+".0"):a=">="+n+"."+r+"."+o+" <"+n+"."+(+r+1)+".0",i("tilde return",a),a}))}(e,t)})).join(" ")}(e,t),i("tildes",e),e=function(e,t){return i("replaceXRanges",e,t),e.split(/\s+/).map((function(e){return function(e,t){e=e.trim();var n=t.loose?u[l.XRANGELOOSE]:u[l.XRANGE];return e.replace(n,(function(n,r,o,u,a,l){i("xRange",e,n,r,o,u,a,l);var s=x(o),c=s||x(u),f=c||x(a),d=f;return"="===r&&d&&(r=""),l=t.includePrerelease?"-0":"",s?n=">"===r||"<"===r?"<0.0.0-0":"*":r&&d?(c&&(u=0),a=0,">"===r?(r=">=",c?(o=+o+1,u=0,a=0):(u=+u+1,a=0)):"<="===r&&(r="<",c?o=+o+1:u=+u+1),n=r+o+"."+u+"."+a+l):c?n=">="+o+".0.0"+l+" <"+(+o+1)+".0.0"+l:f&&(n=">="+o+"."+u+".0"+l+" <"+o+"."+(+u+1)+".0"+l),i("xRange return",n),n}))}(e,t)})).join(" ")}(e,t),i("xrange",e),e=function(e,t){return i("replaceStars",e,t),e.trim().replace(u[l.STAR],"")}(e,t),i("stars",e),e}(e,this.options)}),this).join(" ").split(/\s+/);return this.options.loose&&(o=o.filter((function(e){return!!e.match(r)}))),o.map((function(e){return new S(e,this.options)}),this)},k.prototype.intersects=function(e,t){if(!(e instanceof k))throw new TypeError("a Range is required");return this.set.some((function(n){return T(n,t)&&e.set.some((function(e){return T(e,t)&&n.every((function(n){return e.every((function(e){return n.intersects(e,t)}))}))}))}))},t.toComparators=function(e,t){return new k(e,t).set.map((function(e){return e.map((function(e){return e.value})).join(" ").trim().split(" ")}))},k.prototype.test=function(e){if(!e)return!1;if("string"==typeof e)try{e=new p(e,this.options)}catch(e){return!1}for(var t=0;t":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":n&&!g(n,t)||(n=t);break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+e.operator)}}));return n&&e.test(n)?n:null},t.validRange=function(e,t){try{return new k(e,t).range||"*"}catch(e){return null}},t.ltr=function(e,t,n){return I(e,t,"<",n)},t.gtr=function(e,t,n){return I(e,t,">",n)},t.outside=I,t.prerelease=function(e,t){var n=d(e,t);return n&&n.prerelease.length?n.prerelease:null},t.intersects=function(e,t,n){return e=new k(e,n),t=new k(t,n),e.intersects(t)},t.coerce=function(e,t){if(e instanceof p)return e;if("number"==typeof e&&(e=String(e)),"string"!=typeof e)return null;var n=null;if((t=t||{}).rtl){for(var r;(r=u[l.COERCERTL].exec(e))&&(!n||n.index+n[0].length!==e.length);)n&&r.index+r[0].length===n.index+n[0].length||(n=r),u[l.COERCERTL].lastIndex=r.index+r[1].length+r[2].length;u[l.COERCERTL].lastIndex=-1}else n=e.match(u[l.COERCE]);return null===n?null:d(n[2]+"."+(n[3]||"0")+"."+(n[4]||"0"),t)}}).call(this,n(5))},function(e,t){function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var r;r=function(){return this}();try{r=r||new Function("return this")()}catch(e){"object"===("undefined"==typeof window?"undefined":n(window))&&(r=window)}e.exports=r},function(e,t){var n,r,i=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function u(){throw new Error("clearTimeout has not been defined")}function a(e){if(n===setTimeout)return setTimeout(e,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(e){n=o}try{r="function"==typeof clearTimeout?clearTimeout:u}catch(e){r=u}}();var l,s=[],c=!1,f=-1;function d(){c&&l&&(c=!1,l.length?s=l.concat(s):f=-1,s.length&&p())}function p(){if(!c){var e=a(d);c=!0;for(var t=s.length;t;){for(l=s,s=[];++f1)for(var n=1;nthis[u])return w(this,this[h].get(e)),!1;var o=this[h].get(e).value;return this[f]&&(this[d]||this[f](e,o.value)),o.now=r,o.maxAge=n,o.value=t,this[a]+=i-o.length,o.length=i,this.get(e),b(this),!0}var s=new E(e,t,i,r,n);return s.length>this[u]?(this[f]&&this[f](e,t),!1):(this[a]+=s.length,this[p].unshift(s),this[h].set(e,this[p].head),b(this),!0)}},{key:"has",value:function(e){if(!this[h].has(e))return!1;var t=this[h].get(e).value;return!_(this,t)}},{key:"get",value:function(e){return y(this,e,!0)}},{key:"peek",value:function(e){return y(this,e,!1)}},{key:"pop",value:function(){var e=this[p].tail;return e?(w(this,e),e.value):null}},{key:"del",value:function(e){w(this,this[h].get(e))}},{key:"load",value:function(e){this.reset();for(var t=Date.now(),n=e.length-1;n>=0;n--){var r=e[n],i=r.e||0;if(0===i)this.set(r.k,r.v);else{var o=i-t;o>0&&this.set(r.k,r.v,o)}}}},{key:"prune",value:function(){var e=this;this[h].forEach((function(t,n){return y(e,n,!1)}))}},{key:"max",set:function(e){if("number"!=typeof e||e<0)throw new TypeError("max must be a non-negative number");this[u]=e||1/0,b(this)},get:function(){return this[u]}},{key:"allowStale",set:function(e){this[s]=!!e},get:function(){return this[s]}},{key:"maxAge",set:function(e){if("number"!=typeof e)throw new TypeError("maxAge must be a non-negative number");this[c]=e,b(this)},get:function(){return this[c]}},{key:"lengthCalculator",set:function(e){var t=this;"function"!=typeof e&&(e=m),e!==this[l]&&(this[l]=e,this[a]=0,this[p].forEach((function(e){e.length=t[l](e.value,e.key),t[a]+=e.length}))),b(this)},get:function(){return this[l]}},{key:"length",get:function(){return this[a]}},{key:"itemCount",get:function(){return this[p].length}}])&&i(t.prototype,n),e}(),y=function(e,t,n){var r=e[h].get(t);if(r){var i=r.value;if(_(e,i)){if(w(e,r),!e[s])return}else n&&(e[v]&&(r.value.now=Date.now()),e[p].unshiftNode(r));return i.value}},_=function(e,t){if(!t||!t.maxAge&&!e[c])return!1;var n=Date.now()-t.now;return t.maxAge?n>t.maxAge:e[c]&&n>e[c]},b=function(e){if(e[a]>e[u])for(var t=e[p].tail;e[a]>e[u]&&null!==t;){var n=t.prev;w(e,t),t=n}},w=function(e,t){if(t){var n=t.value;e[f]&&e[f](n.key,n.value),e[a]-=n.length,e[h].delete(n.key),e[p].removeNode(t)}},E=function e(t,n,i,o,u){r(this,e),this.key=t,this.value=n,this.length=i,this.now=o,this.maxAge=u||0},D=function(e,t,n,r){var i=n.value;_(e,i)&&(w(e,n),e[s]||(i=void 0)),i&&t.call(r,i.value,i.key,e)};e.exports=g},function(e,t,n){(function(t){function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}e.exports=function(){if("undefined"==typeof document||!document.addEventListener)return null;var r,i,o,u={};return u.copy=function(){var e=!1,t=null,n=!1;function r(){e=!1,t=null,n&&window.getSelection().removeAllRanges(),n=!1}return document.addEventListener("copy",(function(n){if(e){for(var r in t)n.clipboardData.setData(r,t[r]);n.preventDefault()}})),function(i){return new Promise((function(o,u){e=!0,"string"==typeof i?t={"text/plain":i}:i instanceof Node?t={"text/html":(new XMLSerializer).serializeToString(i)}:i instanceof Object?t=i:u("Invalid data type. Must be string, DOM node, or an object mapping MIME types to strings."),function e(t){try{if(document.execCommand("copy"))r(),o();else{if(t)throw r(),new Error("Unable to copy. Perhaps it's not available in your browser?");!function(){var e=document.getSelection();if(!document.queryCommandEnabled("copy")&&e.isCollapsed){var t=document.createRange();t.selectNodeContents(document.body),e.removeAllRanges(),e.addRange(t),n=!0}}(),e(!0)}}catch(e){r(),u(e)}}(!1)}))}}(),u.paste=(o=!1,document.addEventListener("paste",(function(e){if(o){o=!1,e.preventDefault();var t=r;r=null,t(e.clipboardData.getData(i))}})),function(e){return new Promise((function(t,n){o=!0,r=t,i=e||"text/plain";try{document.execCommand("paste")||(o=!1,n(new Error("Unable to paste. Pasting only works in Internet Explorer at the moment.")))}catch(e){o=!1,n(new Error(e))}}))}),"undefined"==typeof ClipboardEvent&&void 0!==window.clipboardData&&void 0!==window.clipboardData.setData&&(
+/*! promise-polyfill 2.0.1 */
+function(r){function i(e,t){return function(){e.apply(t,arguments)}}function o(e){if("object"!=n(this))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=null,this._value=null,this._deferreds=[],f(e,i(a,this),i(l,this))}function u(e){var t=this;return null===this._state?void this._deferreds.push(e):void d((function(){var n=t._state?e.onFulfilled:e.onRejected;if(null!==n){var r;try{r=n(t._value)}catch(t){return void e.reject(t)}e.resolve(r)}else(t._state?e.resolve:e.reject)(t._value)}))}function a(e){try{if(e===this)throw new TypeError("A promise cannot be resolved with itself.");if(e&&("object"==n(e)||"function"==typeof e)){var t=e.then;if("function"==typeof t)return void f(i(t,e),i(a,this),i(l,this))}this._state=!0,this._value=e,s.call(this)}catch(e){l.call(this,e)}}function l(e){this._state=!1,this._value=e,s.call(this)}function s(){for(var e=0,t=this._deferreds.length;t>e;e++)u.call(this,this._deferreds[e]);this._deferreds=null}function c(e,t,n,r){this.onFulfilled="function"==typeof e?e:null,this.onRejected="function"==typeof t?t:null,this.resolve=n,this.reject=r}function f(e,t,n){var r=!1;try{e((function(e){r||(r=!0,t(e))}),(function(e){r||(r=!0,n(e))}))}catch(e){if(r)return;r=!0,n(e)}}var d=o.immediateFn||"function"==typeof t&&t||function(e){setTimeout(e,1)},p=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)};o.prototype.catch=function(e){return this.then(null,e)},o.prototype.then=function(e,t){var n=this;return new o((function(r,i){u.call(n,new c(e,t,r,i))}))},o.all=function(){var e=Array.prototype.slice.call(1===arguments.length&&p(arguments[0])?arguments[0]:arguments);return new o((function(t,r){function i(u,a){try{if(a&&("object"==n(a)||"function"==typeof a)){var l=a.then;if("function"==typeof l)return void l.call(a,(function(e){i(u,e)}),r)}e[u]=a,0==--o&&t(e)}catch(e){r(e)}}if(0===e.length)return t([]);for(var o=e.length,u=0;ur;r++)e[r].then(t,n)}))},e.exports?e.exports=o:r.Promise||(r.Promise=o)}(this),u.copy=function(e){return new Promise((function(t,n){if("string"!=typeof e&&!("text/plain"in e))throw new Error("You must provide a text/plain type.");var r="string"==typeof e?e:e["text/plain"];window.clipboardData.setData("Text",r)?t():n(new Error("Copying was rejected."))}))},u.paste=function(){return new Promise((function(e,t){var n=window.clipboardData.getData("Text");n?e(n):t(new Error("Pasting was rejected."))}))}),u}()}).call(this,n(13).setImmediate)},function(e,t,n){"use strict";e.exports=n(15)},function(e,t,n){"use strict";n.r(t),t.default=":root {\n /**\n * IMPORTANT: When new theme variables are added below– also add them to SettingsContext updateThemeVariables()\n */\n\n /* Light theme */\n --light-color-attribute-name: #ef6632;\n --light-color-attribute-name-not-editable: #23272f;\n --light-color-attribute-name-inverted: rgba(255, 255, 255, 0.7);\n --light-color-attribute-value: #1a1aa6;\n --light-color-attribute-value-inverted: #ffffff;\n --light-color-attribute-editable-value: #1a1aa6;\n --light-color-background: #ffffff;\n --light-color-background-hover: rgba(0, 136, 250, 0.1);\n --light-color-background-inactive: #e5e5e5;\n --light-color-background-invalid: #fff0f0;\n --light-color-background-selected: #0088fa;\n --light-color-button-background: #ffffff;\n --light-color-button-background-focus: #ededed;\n --light-color-button: #5f6673;\n --light-color-button-disabled: #cfd1d5;\n --light-color-button-active: #0088fa;\n --light-color-button-focus: #23272f;\n --light-color-button-hover: #23272f;\n --light-color-border: #eeeeee;\n --light-color-commit-did-not-render-fill: #cfd1d5;\n --light-color-commit-did-not-render-fill-text: #000000;\n --light-color-commit-did-not-render-pattern: #cfd1d5;\n --light-color-commit-did-not-render-pattern-text: #333333;\n --light-color-commit-gradient-0: #37afa9;\n --light-color-commit-gradient-1: #63b19e;\n --light-color-commit-gradient-2: #80b393;\n --light-color-commit-gradient-3: #97b488;\n --light-color-commit-gradient-4: #abb67d;\n --light-color-commit-gradient-5: #beb771;\n --light-color-commit-gradient-6: #cfb965;\n --light-color-commit-gradient-7: #dfba57;\n --light-color-commit-gradient-8: #efbb49;\n --light-color-commit-gradient-9: #febc38;\n --light-color-commit-gradient-text: #000000;\n --light-color-component-name: #6a51b2;\n --light-color-component-name-inverted: #ffffff;\n --light-color-component-badge-background: rgba(0, 0, 0, 0.1);\n --light-color-component-badge-background-inverted: rgba(255, 255, 255, 0.25);\n --light-color-component-badge-count: #777d88;\n --light-color-component-badge-count-inverted: rgba(255, 255, 255, 0.7);\n --light-color-context-background: rgba(0,0,0,.9);\n --light-color-context-background-hover: rgba(255, 255, 255, 0.1);\n --light-color-context-background-selected: #178fb9;\n --light-color-context-border: #3d424a;\n --light-color-context-text: #ffffff;\n --light-color-context-text-selected: #ffffff;\n --light-color-dim: #777d88;\n --light-color-dimmer: #cfd1d5;\n --light-color-dimmest: #eff0f1;\n --light-color-error-background: hsl(0, 100%, 97%);\n --light-color-error-border: hsl(0, 100%, 92%);\n --light-color-error-text: #ff0000;\n --light-color-expand-collapse-toggle: #777d88;\n --light-color-link: #0000ff;\n --light-color-modal-background: rgba(255, 255, 255, 0.75);\n --light-color-record-active: #fc3a4b;\n --light-color-record-hover: #3578e5;\n --light-color-record-inactive: #0088fa;\n --light-color-scroll-thumb: #c2c2c2;\n --light-color-scroll-track: #fafafa;\n --light-color-search-match: yellow;\n --light-color-search-match-current: #f7923b;\n --light-color-selected-tree-highlight-active: rgba(0, 136, 250, 0.1);\n --light-color-selected-tree-highlight-inactive: rgba(0, 0, 0, 0.05);\n --light-color-shadow: rgba(0, 0, 0, 0.25);\n --light-color-tab-selected-border: #0088fa;\n --light-color-text: #000000;\n --light-color-text-invalid: #ff0000;\n --light-color-text-selected: #ffffff;\n --light-color-toggle-background-invalid: #fc3a4b;\n --light-color-toggle-background-on: #0088fa;\n --light-color-toggle-background-off: #cfd1d5;\n --light-color-toggle-text: #ffffff;\n --light-color-tooltip-background: rgba(0, 0, 0, 0.9);\n --light-color-tooltip-text: #ffffff;\n\n /* Dark theme */\n --dark-color-attribute-name: #9d87d2;\n --dark-color-attribute-name-not-editable: #ededed;\n --dark-color-attribute-name-inverted: #282828;\n --dark-color-attribute-value: #cedae0;\n --dark-color-attribute-value-inverted: #ffffff;\n --dark-color-attribute-editable-value: yellow;\n --dark-color-background: #282c34;\n --dark-color-background-hover: rgba(255, 255, 255, 0.1);\n --dark-color-background-inactive: #3d424a;\n --dark-color-background-invalid: #5c0000;\n --dark-color-background-selected: #178fb9;\n --dark-color-button-background: #282c34;\n --dark-color-button-background-focus: #3d424a;\n --dark-color-button: #afb3b9;\n --dark-color-button-active: #61dafb;\n --dark-color-button-disabled: #4f5766;\n --dark-color-button-focus: #a2e9fc;\n --dark-color-button-hover: #ededed;\n --dark-color-border: #3d424a;\n --dark-color-commit-did-not-render-fill: #777d88;\n --dark-color-commit-did-not-render-fill-text: #000000;\n --dark-color-commit-did-not-render-pattern: #666c77;\n --dark-color-commit-did-not-render-pattern-text: #ffffff;\n --dark-color-commit-gradient-0: #37afa9;\n --dark-color-commit-gradient-1: #63b19e;\n --dark-color-commit-gradient-2: #80b393;\n --dark-color-commit-gradient-3: #97b488;\n --dark-color-commit-gradient-4: #abb67d;\n --dark-color-commit-gradient-5: #beb771;\n --dark-color-commit-gradient-6: #cfb965;\n --dark-color-commit-gradient-7: #dfba57;\n --dark-color-commit-gradient-8: #efbb49;\n --dark-color-commit-gradient-9: #febc38;\n --dark-color-commit-gradient-text: #000000;\n --dark-color-component-name: #61dafb;\n --dark-color-component-name-inverted: #282828;\n --dark-color-component-badge-background: rgba(255, 255, 255, 0.25);\n --dark-color-component-badge-background-inverted: rgba(0, 0, 0, 0.25);\n --dark-color-component-badge-count: #8f949d;\n --dark-color-component-badge-count-inverted: rgba(255, 255, 255, 0.7);\n --dark-color-context-background: rgba(255,255,255,.9);\n --dark-color-context-background-hover: rgba(0, 136, 250, 0.1);\n --dark-color-context-background-selected: #0088fa;\n --dark-color-context-border: #eeeeee;\n --dark-color-context-text: #000000;\n --dark-color-context-text-selected: #ffffff;\n --dark-color-dim: #8f949d;\n --dark-color-dimmer: #777d88;\n --dark-color-dimmest: #4f5766;\n --dark-color-error-background: #200;\n --dark-color-error-border: #900;\n --dark-color-error-text: #f55;\n --dark-color-expand-collapse-toggle: #8f949d;\n --dark-color-link: #61dafb;\n --dark-color-modal-background: rgba(0, 0, 0, 0.75);\n --dark-color-record-active: #fc3a4b;\n --dark-color-record-hover: #a2e9fc;\n --dark-color-record-inactive: #61dafb;\n --dark-color-scroll-thumb: #afb3b9;\n --dark-color-scroll-track: #313640;\n --dark-color-search-match: yellow;\n --dark-color-search-match-current: #f7923b;\n --dark-color-selected-tree-highlight-active: rgba(23, 143, 185, 0.15);\n --dark-color-selected-tree-highlight-inactive: rgba(255, 255, 255, 0.05);\n --dark-color-shadow: rgba(0, 0, 0, 0.5);\n --dark-color-tab-selected-border: #178fb9;\n --dark-color-text: #ffffff;\n --dark-color-text-invalid: #ff8080;\n --dark-color-text-selected: #ffffff;\n --dark-color-toggle-background-invalid: #fc3a4b;\n --dark-color-toggle-background-on: #178fb9;\n --dark-color-toggle-background-off: #777d88;\n --dark-color-toggle-text: #ffffff;\n --dark-color-tooltip-background: rgba(255, 255, 255, 0.9);\n --dark-color-tooltip-text: #000000;\n\n /* Font smoothing */\n --light-font-smoothing: auto;\n --dark-font-smoothing: antialiased;\n --font-smoothing: auto;\n\n /* Compact density */\n --compact-font-size-monospace-small: 9px;\n --compact-font-size-monospace-normal: 11px;\n --compact-font-size-monospace-large: 15px;\n --compact-font-size-sans-small: 10px;\n --compact-font-size-sans-normal: 12px;\n --compact-font-size-sans-large: 14px;\n --compact-line-height-data: 18px;\n --compact-root-font-size: 16px;\n\n /* Comfortable density */\n --comfortable-font-size-monospace-small: 10px;\n --comfortable-font-size-monospace-normal: 13px;\n --comfortable-font-size-monospace-large: 17px;\n --comfortable-font-size-sans-small: 12px;\n --comfortable-font-size-sans-normal: 14px;\n --comfortable-font-size-sans-large: 16px;\n --comfortable-line-height-data: 22px;\n --comfortable-root-font-size: 20px;\n\n /* GitHub.com system fonts */\n --font-family-monospace: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo,\n Courier, monospace;\n --font-family-sans: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica,\n Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;\n\n /* Constant values shared between JS and CSS */\n --interaction-commit-size: 10px;\n --interaction-label-width: 200px;\n}\n"},function(e,t,n){"use strict";function r(e){var t=this;if(t instanceof r||(t=new r),t.tail=null,t.head=null,t.length=0,e&&"function"==typeof e.forEach)e.forEach((function(e){t.push(e)}));else if(arguments.length>0)for(var n=0,i=arguments.length;n1)n=t;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");r=this.head.next,n=this.head.value}for(var i=0;null!==r;i++)n=e(n,r.value,i),r=r.next;return n},r.prototype.reduceReverse=function(e,t){var n,r=this.tail;if(arguments.length>1)n=t;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");r=this.tail.prev,n=this.tail.value}for(var i=this.length-1;null!==r;i--)n=e(n,r.value,i),r=r.prev;return n},r.prototype.toArray=function(){for(var e=new Array(this.length),t=0,n=this.head;null!==n;t++)e[t]=n.value,n=n.next;return e},r.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,n=this.tail;null!==n;t++)e[t]=n.value,n=n.prev;return e},r.prototype.slice=function(e,t){(t=t||this.length)<0&&(t+=this.length),(e=e||0)<0&&(e+=this.length);var n=new r;if(tthis.length&&(t=this.length);for(var i=0,o=this.head;null!==o&&ithis.length&&(t=this.length);for(var i=this.length,o=this.tail;null!==o&&i>t;i--)o=o.prev;for(;null!==o&&i>e;i--,o=o.prev)n.push(o.value);return n},r.prototype.splice=function(e,t){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var n=0,r=this.head;null!==r&&n=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n(14),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,n(4))},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var r,i,o,u,a,l=1,s={},c=!1,f=e.document,d=Object.getPrototypeOf&&Object.getPrototypeOf(e);d=d&&d.setTimeout?d:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick((function(){h(e)}))}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?(u="setImmediate$"+Math.random()+"$",a=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(u)&&h(+t.data.slice(u.length))},e.addEventListener?e.addEventListener("message",a,!1):e.attachEvent("onmessage",a),r=function(t){e.postMessage(u+t,"*")}):e.MessageChannel?((o=new MessageChannel).port1.onmessage=function(e){h(e.data)},r=function(e){o.port2.postMessage(e)}):f&&"onreadystatechange"in f.createElement("script")?(i=f.documentElement,r=function(e){var t=f.createElement("script");t.onreadystatechange=function(){h(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):r=function(e){setTimeout(h,0,e)},d.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;nv;v++)if(-1!==(h=g(p,c,v))){m=v,c=h;break e}c=-1}}e:{if(p=f,void 0!==(h=d().get(s.primitive)))for(v=0;vc-p?null:f.slice(p,c-1))){if(c=0,null!==r){for(;cc;r--)i=a.pop()}for(r=f.length-c-1;1<=r;r--)c=[],i.push({id:null,isStateEditable:!1,name:_(f[r-1].functionName),value:void 0,subHooks:c}),a.push(i),i=c;r=f}c="Context"===(f=s.primitive)||"DebugValue"===f?null:u++,i.push({id:c,isStateEditable:"Reducer"===f||"State"===f,name:f,value:s.value,subHooks:[]})}return function e(t,n){for(var r=[],i=0;i-1&&(t=t.replace(/eval code/g,"eval").replace(/(\(eval at [^()]*)|(\),.*$)/g,""));var n=t.replace(/^\s+/,"").replace(/\(eval code/g,"("),r=n.match(/ (\((.+):(\d+):(\d+)\)$)/),i=(n=r?n.replace(r[0],""):n).split(/\s+/).slice(1),o=this.extractLocation(r?r[1]:i.pop()),u=i.join(" ")||void 0,a=["eval",""].indexOf(o[0])>-1?void 0:o[0];return new e({functionName:u,fileName:a,lineNumber:o[1],columnNumber:o[2],source:t})}),this)},parseFFOrSafari:function(t){return t.stack.split("\n").filter((function(e){return!e.match(r)}),this).map((function(t){if(t.indexOf(" > eval")>-1&&(t=t.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,":$1")),-1===t.indexOf("@")&&-1===t.indexOf(":"))return new e({functionName:t});var n=/((.*".+"[^@]*)?[^@]*)(?:@)/,r=t.match(n),i=r&&r[1]?r[1]:void 0,o=this.extractLocation(t.replace(n,""));return new e({functionName:i,fileName:o[0],lineNumber:o[1],columnNumber:o[2],source:t})}),this)},parseOpera:function(e){return!e.stacktrace||e.message.indexOf("\n")>-1&&e.message.split("\n").length>e.stacktrace.split("\n").length?this.parseOpera9(e):e.stack?this.parseOpera11(e):this.parseOpera10(e)},parseOpera9:function(t){for(var n=/Line (\d+).*script (?:in )?(\S+)/i,r=t.message.split("\n"),i=[],o=2,u=r.length;o/,"$2").replace(/\([^)]*\)/g,"")||void 0;o.match(/\(([^)]*)\)/)&&(n=o.replace(/^[^(]+\(([^)]*)\)$/,"$1"));var a=void 0===n||"[arguments not available]"===n?void 0:n.split(",");return new e({functionName:u,args:a,fileName:i[0],lineNumber:i[1],columnNumber:i[2],source:t})}),this)}}})?r.apply(t,i):r)||(e.exports=o)}()},function(e,t,n){var r,i,o;!function(n,u){"use strict";i=[],void 0===(o="function"==typeof(r=function(){function e(e){return e.charAt(0).toUpperCase()+e.substring(1)}function t(e){return function(){return this[e]}}var n=["isConstructor","isEval","isNative","isToplevel"],r=["columnNumber","lineNumber"],i=["fileName","functionName","source"],o=n.concat(r,i,["args"]);function u(t){if(t)for(var n=0;n1?n-1:0),i=1;i=0&&n.splice(r,1)}}}])&&r(t.prototype,n),e}(),o=n(2),u=n.n(o);try{var a=n(9).default,l=function(e){var t=new RegExp("".concat(e,": ([0-9]+)")),n=a.match(t);return parseInt(n[1],10)};l("comfortable-line-height-data"),l("compact-line-height-data")}catch(e){}function s(e){try{return sessionStorage.getItem(e)}catch(e){return null}}function c(e){try{sessionStorage.removeItem(e)}catch(e){}}function f(e,t){try{return sessionStorage.setItem(e,t)}catch(e){}}var d=function(e,t){return e===t},p=n(1),h=n.n(p);function v(e){return e.ownerDocument?e.ownerDocument.defaultView:null}function m(e){var t=v(e);return t?t.frameElement:null}function g(e){var t=b(e);return y([e.getBoundingClientRect(),{top:t.borderTop,left:t.borderLeft,bottom:t.borderBottom,right:t.borderRight,width:0,height:0}])}function y(e){return e.reduce((function(e,t){return null==e?t:{top:e.top+t.top,left:e.left+t.left,width:e.width,height:e.height,bottom:e.bottom+t.bottom,right:e.right+t.right}}))}function _(e,t){var n=m(e);if(n&&n!==t){for(var r=[e.getBoundingClientRect()],i=n,o=!1;i;){var u=g(i);if(r.push(u),i=m(i),o)break;i&&v(i)===t&&(o=!0)}return y(r)}return e.getBoundingClientRect()}function b(e){var t=window.getComputedStyle(e);return{borderLeft:parseInt(t.borderLeftWidth,10),borderRight:parseInt(t.borderRightWidth,10),borderTop:parseInt(t.borderTopWidth,10),borderBottom:parseInt(t.borderBottomWidth,10),marginLeft:parseInt(t.marginLeft,10),marginRight:parseInt(t.marginRight,10),marginTop:parseInt(t.marginTop,10),marginBottom:parseInt(t.marginBottom,10),paddingLeft:parseInt(t.paddingLeft,10),paddingRight:parseInt(t.paddingRight,10),paddingTop:parseInt(t.paddingTop,10),paddingBottom:parseInt(t.paddingBottom,10)}}function w(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nt.left+t.width&&(u=t.left+t.width-o-5),{style:{top:r+="px",left:u+="px"}}}(e,t,{width:n.width,height:n.height});h()(this.tip.style,r.style)}}]),e}(),T=function(){function e(){E(this,e);var t=window.__REACT_DEVTOOLS_TARGET_WINDOW__||window;this.window=t;var n=window.__REACT_DEVTOOLS_TARGET_WINDOW__||window;this.tipBoundsWindow=n;var r=t.document;this.container=r.createElement("div"),this.container.style.zIndex="10000000",this.tip=new k(r,this.container),this.rects=[],r.body.appendChild(this.container)}return S(e,[{key:"remove",value:function(){this.tip.remove(),this.rects.forEach((function(e){e.remove()})),this.rects.length=0,this.container.parentNode&&this.container.parentNode.removeChild(this.container)}},{key:"inspect",value:function(e,t){for(var n=this,r=e.filter((function(e){return e.nodeType===Node.ELEMENT_NODE}));this.rects.length>r.length;)this.rects.pop().remove();if(0!==r.length){for(;this.rects.length=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,u=!0,a=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return u=e.done,e},e:function(e){a=!0,o=e},f:function(){try{u||null==n.return||n.return()}finally{if(a)throw o}}}}(u.rendererInterfaces.values());try{for(s.s();!(a=s.n()).done;){var c=a.value,f=c.getFiberIDForNative(o,!0);if(null!==f){l=c.getDisplayNameForFiberID(f,!0);break}}}catch(e){s.e(e)}finally{s.f()}l&&(t+=" (in "+l+")")}}this.tip.updateText(t,i.right-i.left,i.bottom-i.top);var d=_(this.tipBoundsWindow.document.documentElement,this.window);this.tip.updatePosition({top:i.top,left:i.left,height:i.bottom-i.top,width:i.right-i.left},{top:d.top+this.tipBoundsWindow.scrollY,left:d.left+this.tipBoundsWindow.scrollX,height:this.tipBoundsWindow.innerHeight,width:this.tipBoundsWindow.innerWidth})}}}]),e}();function x(e,t,n){h()(n.style,{borderTopWidth:e[t+"Top"]+"px",borderLeftWidth:e[t+"Left"]+"px",borderRightWidth:e[t+"Right"]+"px",borderBottomWidth:e[t+"Bottom"]+"px",borderStyle:"solid"})}var A={background:"rgba(120, 170, 210, 0.7)",padding:"rgba(77, 200, 0, 0.3)",margin:"rgba(255, 155, 0, 0.3)",border:"rgba(255, 200, 50, 0.3)"},O=null,P=null;function I(){O=null,null!==P&&(P.remove(),P=null)}function N(e,t,n){null!=window.document&&(null!==O&&clearTimeout(O),null!=e&&(null===P&&(P=new T),P.inspect(e,t),n&&(O=setTimeout(I,2e3))))}var M=new Set,R=["#37afa9","#63b19e","#80b393","#97b488","#abb67d","#beb771","#cfb965","#dfba57","#efbb49","#febc38"],F=null;function L(e){return(L="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var B="object"===("undefined"==typeof performance?"undefined":L(performance))&&"function"==typeof performance.now?function(){return performance.now()}:function(){return Date.now()},j=new Map,U=null,z=!1,W=null;function H(e){z&&(e.forEach((function(e){var t=j.get(e),n=B(),r=null!=t?t.lastMeasuredAt:0,i=null!=t?t.rect:null;(null===i||r+2505&&void 0!==arguments[5]?arguments[5]:0,a=me(e);switch(a){case"html_element":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:e.tagName,type:a};case"function":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:"function"!=typeof e.name&&e.name?e.name:"function",type:a};case"string":return e.length<=500?e:e.slice(0,500)+"...";case"bigint":case"symbol":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:e.toString(),type:a};case"react_element":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:ge(e)||"Unknown",type:a};case"array_buffer":case"data_view":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:"data_view"===a?"DataView":"ArrayBuffer",size:e.byteLength,type:a};case"array":return o=i(r),u>=2&&!o?Z(a,!0,e,t,r):e.map((function(e,a){return ee(e,t,n,r.concat([a]),i,o?1:u+1)}));case"html_all_collection":case"typed_array":case"iterator":if(o=i(r),u>=2&&!o)return Z(a,!0,e,t,r);var l={unserializable:!0,type:a,readonly:!0,size:"typed_array"===a?e.length:void 0,preview_short:_e(e,!1),preview_long:_e(e,!0),name:e.constructor&&"Object"!==e.constructor.name?e.constructor.name:""};return Q(e[Symbol.iterator])&&Array.from(e).forEach((function(e,a){return l[a]=ee(e,t,n,r.concat([a]),i,o?1:u+1)})),n.push(r),l;case"opaque_iterator":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:e[Symbol.toStringTag],type:a};case"date":case"regexp":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:e.toString(),type:a};case"object":if(o=i(r),u>=2&&!o)return Z(a,!0,e,t,r);var s={};return ae(e).forEach((function(a){var l=a.toString();s[l]=ee(e[a],t,n,r.concat([l]),i,o?1:u+1)})),s;case"infinity":case"nan":case"undefined":return t.push(r),{type:a};default:return e}}function te(e){return(te="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function ne(e){return function(e){if(Array.isArray(e))return re(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return re(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?re(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function re(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nt.toString()?1:t.toString()>e.toString()?-1:0}function ae(e){for(var t=[],n=e,r=function(){var e=[].concat(ne(Object.keys(n)),ne(Object.getOwnPropertySymbols(n))),r=Object.getOwnPropertyDescriptors(n);e.forEach((function(e){r[e].enumerable&&t.push(e)})),n=Object.getPrototypeOf(n)};null!=n;)r();return t}function le(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"Anonymous",n=ie.get(e);if(null!=n)return n;var r=t;return"string"==typeof e.displayName?r=e.displayName:"string"==typeof e.name&&""!==e.name&&(r=e.name),ie.set(e,r),r}var se=0;function ce(){return++se}function fe(e){var t=oe.get(e);if(void 0!==t)return t;for(var n=new Array(e.length),r=0;r1&&void 0!==arguments[1]?arguments[1]:50;return e.length>t?e.substr(0,t)+"…":e}function _e(e,t){if(null!=e&&hasOwnProperty.call(e,J.type))return t?e[J.preview_long]:e[J.preview_short];switch(me(e)){case"html_element":return"<".concat(ye(e.tagName.toLowerCase())," />");case"function":return ye("ƒ ".concat("function"==typeof e.name?"":e.name,"() {}"));case"string":return'"'.concat(e,'"');case"bigint":return ye(e.toString()+"n");case"regexp":case"symbol":return ye(e.toString());case"react_element":return"<".concat(ye(ge(e)||"Unknown")," />");case"array_buffer":return"ArrayBuffer(".concat(e.byteLength,")");case"data_view":return"DataView(".concat(e.buffer.byteLength,")");case"array":if(t){for(var n="",r=0;r0&&(n+=", "),!((n+=_e(e[r],!1)).length>50));r++);return"[".concat(ye(n),"]")}var i=hasOwnProperty.call(e,J.size)?e[J.size]:e.length;return"Array(".concat(i,")");case"typed_array":var o="".concat(e.constructor.name,"(").concat(e.length,")");if(t){for(var u="",a=0;a0&&(u+=", "),!((u+=e[a]).length>50));a++);return"".concat(o," [").concat(ye(u),"]")}return o;case"iterator":var l=e.constructor.name;if(t){for(var s=Array.from(e),c="",f=0;f0&&(c+=", "),Array.isArray(d)){var p=_e(d[0],!0),h=_e(d[1],!1);c+="".concat(p," => ").concat(h)}else c+=_e(d,!1);if(c.length>50)break}return"".concat(l,"(").concat(e.size,") {").concat(ye(c),"}")}return"".concat(l,"(").concat(e.size,")");case"opaque_iterator":return e[Symbol.toStringTag];case"date":return e.toString();case"object":if(t){for(var v=ae(e).sort(ue),m="",g=0;g0&&(m+=", "),(m+="".concat(y.toString(),": ").concat(_e(e[y],!1))).length>50)break}return"{".concat(ye(m),"}")}return"{…}";case"boolean":case"number":case"infinity":case"nan":case"null":case"undefined":return e;default:try{return ye(""+e)}catch(e){return"unserializable"}}}var be=n(7);function we(e){return(we="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Ee(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function De(e){for(var t=1;t2&&void 0!==arguments[2]?arguments[2]:[];if(null!==e){var r=[],i=[],o=ee(e,r,i,n,t);return{data:o,cleaned:r,unserializable:i}}return null}function ke(e){var t,n,r=(t=e,n=new Set,JSON.stringify(t,(function(e,t){if("object"===we(t)&&null!==t){if(n.has(t))return;n.add(t)}return"bigint"==typeof t?t.toString()+"n":t}))),i=void 0===r?"undefined":r,o=window.__REACT_DEVTOOLS_GLOBAL_HOOK__.clipboardCopyText;"function"==typeof o?o(i).catch((function(e){})):Object(be.copy)(i)}function Te(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=t[n],i=Array.isArray(e)?e.slice():De({},e);return n+1===t.length?Array.isArray(i)?i.splice(r,1):delete i[r]:i[r]=Te(e[r],t,n+1),i}function xe(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,i=t[r],o=Array.isArray(e)?e.slice():De({},e);if(r+1===t.length){var u=n[r];o[u]=o[i],Array.isArray(o)?o.splice(i,1):delete o[i]}else o[i]=xe(e[i],t,n,r+1);return o}function Ae(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;if(r>=t.length)return n;var i=t[r],o=Array.isArray(e)?e.slice():De({},e);return o[i]=Ae(e[i],t,n,r+1),o}var Oe=n(8);function Pe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ie(e){for(var t=1;t=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,u=!0,a=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return u=e.done,e},e:function(e){a=!0,o=e},f:function(){try{u||null==n.return||n.return()}finally{if(a)throw o}}}}function Le(e,t){if(e){if("string"==typeof e)return Be(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Be(e,t):void 0}}function Be(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0){var a=o(e);if(null!=a){var l,s=Fe(Y);try{for(s.s();!(l=s.n()).done;)if(l.value.test(a))return!0}catch(e){s.e(e)}finally{s.f()}}}if(null!=t&&K.size>0){var c,f=t.fileName,d=Fe(K);try{for(d.s();!(c=d.n()).done;)if(c.value.test(f))return!0}catch(e){d.e(e)}finally{d.f()}}return!1}function te(e){var t=e.type;switch(e.tag){case v:case S:return 1;case h:case C:return 5;case _:return 6;case b:return 11;case E:return 7;case w:case D:case y:return 9;case k:case x:return 8;case A:return 12;case O:return 13;default:switch(u(t)){case 60111:case"Symbol(react.concurrent_mode)":case"Symbol(react.async_mode)":return 9;case 60109:case"Symbol(react.provider)":return 2;case 60110:case"Symbol(react.context)":return 2;case 60108:case"Symbol(react.strict_mode)":return 9;case 60114:case"Symbol(react.profiler)":return 10;default:return 9}}}function ne(e){if(oe.has(e))return e;var t=e.alternate;return null!=t&&oe.has(t)?t:(oe.add(e),e)}null!=window.__REACT_DEVTOOLS_COMPONENT_FILTERS__?Z(window.__REACT_DEVTOOLS_COMPONENT_FILTERS__):Z([{type:1,value:7,isEnabled:!0}]);var re=new Map,ie=new Map,oe=new Set,ue=new Map,ae=new Map,le=-1;function se(e){if(!re.has(e)){var t=ce();re.set(e,t),ie.set(t,e)}return re.get(e)}function me(e){switch(te(e)){case 1:if(null!==dt){var t=se(ne(e)),n=ye(e);null!==n&&dt.set(t,n)}}}var ge={};function ye(e){switch(te(e)){case 1:var t=e.stateNode,n=ge,r=ge;return null!=t&&(t.constructor&&null!=t.constructor.contextType?r=t.context:(n=t.context)&&0===Object.keys(n).length&&(n=ge)),[n,r];default:return null}}function _e(e){switch(te(e)){case 1:if(null!==dt){var t=se(ne(e)),n=dt.has(t)?dt.get(t):null,r=ye(e);if(null==n||null==r)return null;var i=Re(n,2),o=i[0],u=i[1],a=Re(r,2),l=a[0],s=a[1];if(l!==ge)return we(o,l);if(s!==ge)return u!==s}}return null}function be(e,t){if(null==e||null==t)return!1;if(t.hasOwnProperty("baseState")&&t.hasOwnProperty("memoizedState")&&t.hasOwnProperty("next")&&t.hasOwnProperty("queue"))for(;null!==t;){if(t.memoizedState!==e.memoizedState)return!0;t=t.next,e=e.next}return!1}function we(e,t){if(null==e||null==t)return null;if(t.hasOwnProperty("baseState")&&t.hasOwnProperty("memoizedState")&&t.hasOwnProperty("next")&&t.hasOwnProperty("queue"))return null;var n,r=[],i=Fe(new Set([].concat(Me(Object.keys(e)),Me(Object.keys(t)))));try{for(i.s();!(n=i.n()).done;){var o=n.value;e[o]!==t[o]&&r.push(o)}}catch(e){i.e(e)}finally{i.f()}return r}function Ee(e,t){switch(t.tag){case v:case h:case m:case k:case x:return(Ue(t)&d)===d;default:return e.memoizedProps!==t.memoizedProps||e.memoizedState!==t.memoizedState||e.ref!==t.ref}}var De=[],Se=[],Pe=[],Ne=[],Le=new Map,Be=0,je=null;function ze(e){De.push(e)}function Ve(n){if(0!==De.length||0!==Se.length||0!==Pe.length||null!==je||vt){var r=Se.length+Pe.length+(null===je?0:1),i=new Array(3+Be+(r>0?2+r:0)+De.length),o=0;if(i[o++]=t,i[o++]=le,i[o++]=Be,Le.forEach((function(e,t){i[o++]=t.length;for(var n=fe(t),r=0;r0){i[o++]=2,i[o++]=r;for(var u=Se.length-1;u>=0;u--)i[o++]=Se[u];for(var a=0;a0?n.forEach((function(t){e.emit("operations",t)})):(null!==Dt&&(kt=!0),e.getFiberRoots(t).forEach((function(e){Ot(le=se(ne(e.current)),e.current),vt&&null!=e.memoizedInteractions&&(st={changeDescriptions:gt?new Map:null,durations:[],commitTime:We()-mt,interactions:Array.from(e.memoizedInteractions).map((function(e){return Ie(Ie({},e),{},{timestamp:e.timestamp-mt})})),maxActualDuration:0,priorityLevel:null}),$e(e.current,null,!1,!1),Ve(),le=-1})))},getBestMatchForTrackedPath:function(){if(null===Dt)return null;if(null===St)return null;for(var e=St;null!==e&&ee(e);)e=e.return;return null===e?null:{id:se(ne(e)),isFullMatch:Ct===Dt.length-1}},getDisplayNameForFiberID:function(e){var t=ie.get(e);return null!=t?o(t):null},getFiberIDForNative:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=n.findFiberByHostInstance(e);if(null!=r){if(t)for(;null!==r&&ee(r);)r=r.return;return se(ne(r))}return null},getInstanceAndStyle:function(e){var t=null,n=null,r=et(e);return null!==r&&(t=r.stateNode,null!==r.memoizedProps&&(n=r.memoizedProps.style)),{instance:t,style:n}},getOwnersList:function(e){var t=et(e);if(null==t)return null;var n=t._debugOwner,r=[{displayName:o(t)||"Anonymous",id:e,type:te(t)}];if(n)for(var i=n;null!==i;)r.unshift({displayName:o(i)||"Anonymous",id:se(ne(i)),type:te(i)}),i=i._debugOwner||null;return r},getPathForElement:function(e){var t=ie.get(e);if(null==t)return null;for(var n=[];null!==t;)n.push(It(t)),t=t.return;return n.reverse(),n},getProfilingData:function(){var e=[];if(null===yt)throw Error("getProfilingData() called before any profiling data was recorded");return yt.forEach((function(t,n){var r=[],i=[],o=new Map,u=new Map,a=null!==ft&&ft.get(n)||"Unknown";null!=pt&&pt.forEach((function(e,t){null!=ht&&ht.get(t)===n&&i.push([t,e])})),t.forEach((function(e,t){var n=e.changeDescriptions,i=e.durations,a=e.interactions,l=e.maxActualDuration,s=e.priorityLevel,c=e.commitTime,f=[];a.forEach((function(e){o.has(e.id)||o.set(e.id,e),f.push(e.id);var n=u.get(e.id);null!=n?n.push(t):u.set(e.id,[t])}));for(var d=[],p=[],h=0;h1?At.set(n,r-1):At.delete(n),xt.delete(e)}(le),Ge(r,!1))}else Ot(le,r),$e(r,null,!1,!1);if(vt&&o){var l=yt.get(le);null!=l?l.push(st):yt.set(le,[st])}Ve(),Q&&e.emit("traceUpdates",J),le=-1},handleCommitFiberUnmount:function(e){Ge(e,!1)},inspectElement:function(e,t){if(ot(e)){if(null!=t){ut(t);var n=null;return"hooks"===t[0]&&(n="hooks"),{id:e,type:"hydrated-path",path:t,value:Ce(de(nt,t),at(null,n),t)}}return{id:e,type:"no-change"}}if(rt=!1,null!==nt&&nt.id===e||(it={}),null===(nt=tt(e)))return{id:e,type:"not-found"};null!=t&&ut(t),function(e){var t=e.hooks,n=e.id,i=e.props,o=ie.get(n);if(null!=o){var u=o.elementType,a=o.stateNode,l=o.tag,s=o.type;switch(l){case v:case S:case C:r.$r=a;break;case h:r.$r={hooks:t,props:i,type:s};break;case _:r.$r={props:i,type:s.render};break;case k:case x:r.$r={props:i,type:null!=u&&null!=u.type?u.type:s};break;default:r.$r=null}}else console.warn('Could not find Fiber with id "'.concat(n,'"'))}(nt);var i=Ie({},nt);return i.context=Ce(i.context,at("context",null)),i.hooks=Ce(i.hooks,at("hooks","hooks")),i.props=Ce(i.props,at("props",null)),i.state=Ce(i.state,at("state",null)),{id:e,type:"full-data",value:i}},logElementToConsole:function(e){var t=ot(e)?nt:tt(e);if(null!==t){var n="function"==typeof console.groupCollapsed;n&&console.groupCollapsed("[Click to expand] %c<".concat(t.displayName||"Component"," />"),"color: var(--dom-tag-name-color); font-weight: normal;"),null!==t.props&&console.log("Props:",t.props),null!==t.state&&console.log("State:",t.state),null!==t.hooks&&console.log("Hooks:",t.hooks);var r=Je(e);null!==r&&console.log("Nodes:",r),null!==t.source&&console.log("Location:",t.source),(window.chrome||/firefox/i.test(navigator.userAgent))&&console.log("Right-click any value to save it as a global variable for further inspection."),n&&console.groupEnd()}else console.warn('Could not find Fiber with id "'.concat(e,'"'))},prepareViewAttributeSource:function(e,t){ot(e)&&(window.$attribute=de(nt,t))},prepareViewElementSource:function(e){var t=ie.get(e);if(null!=t){var n=t.elementType,i=t.tag,o=t.type;switch(i){case v:case S:case C:case h:r.$type=o;break;case _:r.$type=o.render;break;case k:case x:r.$type=null!=n&&null!=n.type?n.type:o;break;default:r.$type=null}}else console.warn('Could not find Fiber with id "'.concat(e,'"'))},overrideSuspense:function(e,t){if("function"!=typeof H||"function"!=typeof V)throw new Error("Expected overrideSuspense() to not get called for earlier React versions.");t?(wt.add(e),1===wt.size&&H(Et)):(wt.delete(e),0===wt.size&&H(bt));var n=ie.get(e);null!=n&&V(n)},overrideValueAtPath:function(e,t,n,r,i){var o=et(t);if(null!==o){var u=o.stateNode;switch(e){case"context":switch(r=r.slice(1),o.tag){case v:0===r.length?u.context=i:ve(u.context,r,i),u.forceUpdate()}break;case"hooks":"function"==typeof L&&L(o,n,r,i);break;case"props":switch(o.tag){case v:o.pendingProps=Ae(u.props,r,i),u.forceUpdate();break;default:"function"==typeof U&&U(o,r,i)}break;case"state":switch(o.tag){case v:ve(u.state,r,i),u.forceUpdate()}}}},renamePath:function(e,t,n,r,i){var o=et(t);if(null!==o){var u=o.stateNode;switch(e){case"context":switch(r=r.slice(1),i=i.slice(1),o.tag){case v:0===r.length||he(u.context,r,i),u.forceUpdate()}break;case"hooks":"function"==typeof j&&j(o,n,r,i);break;case"props":null===u?"function"==typeof W&&W(o,r,i):(o.pendingProps=xe(u.props,r,i),u.forceUpdate());break;case"state":he(u.state,r,i),u.forceUpdate()}}},renderer:n,setTraceUpdatesEnabled:function(e){Q=e},setTrackedPath:Tt,startProfiling:_t,stopProfiling:function(){vt=!1,gt=!1},storeAsGlobal:function(e,t,n){if(ot(e)){var r=de(nt,t),i="$reactTemp".concat(n);window[i]=r,console.log(i),console.log(r)}},updateComponentFilters:function(n){if(vt)throw Error("Cannot modify filter preferences while profiling");e.getFiberRoots(t).forEach((function(e){le=se(ne(e.current)),Ye(e.current),Ge(e.current,!1),le=-1})),Z(n),At.clear(),e.getFiberRoots(t).forEach((function(e){Ot(le=se(ne(e.current)),e.current),$e(e.current,null,!1,!1),Ve(),le=-1}))}}}function qe(e){return(qe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Ge(e,t,n){if(void 0===ze)try{throw Error()}catch(e){var r=e.stack.trim().match(/\n( *(at )?)/);ze=r&&r[1]||""}return"\n"+ze+e}var $e=!1;function Ye(e,t,n){if(!e||$e)return"";var r,i=Error.prepareStackTrace;Error.prepareStackTrace=void 0,$e=!0;var o=n.current;n.current=null;try{if(t){var u=function(){throw Error()};if(Object.defineProperty(u.prototype,"props",{set:function(){throw Error()}}),"object"===("undefined"==typeof Reflect?"undefined":qe(Reflect))&&Reflect.construct){try{Reflect.construct(u,[])}catch(e){r=e}Reflect.construct(e,[],u)}else{try{u.call()}catch(e){r=e}e.call(u.prototype)}}else{try{throw Error()}catch(e){r=e}e()}}catch(e){if(e&&r&&"string"==typeof e.stack){for(var a=e.stack.split("\n"),l=r.stack.split("\n"),s=a.length-1,c=l.length-1;s>=1&&c>=0&&a[s]!==l[c];)c--;for(;s>=1&&c>=0;s--,c--)if(a[s]!==l[c]){if(1!==s||1!==c)do{if(s--,--c<0||a[s]!==l[c])return"\n"+a[s].replace(" at new "," at ")}while(s>=1&&c>=0);break}}}finally{$e=!1,Error.prepareStackTrace=i,n.current=o}var f=e?e.displayName||e.name:"";return f?Ge(f):""}function Ke(e,t,n,r){return Ye(e,!1,r)}function Xe(e,t,n){var r=e.HostComponent,i=e.LazyComponent,o=e.SuspenseComponent,u=e.SuspenseListComponent,a=e.FunctionComponent,l=e.IndeterminateComponent,s=e.SimpleMemoComponent,c=e.ForwardRef,f=e.Block,d=e.ClassComponent;switch(t.tag){case r:return Ge(t.type);case i:return Ge("Lazy");case o:return Ge("Suspense");case u:return Ge("SuspenseList");case a:case l:case s:return Ke(t.type,0,0,n);case c:return Ke(t.type.render,0,0,n);case f:return Ke(t.type._render,0,0,n);case d:return function(e,t,n,r){return Ye(e,!0,r)}(t.type,0,0,n);default:return""}}function Qe(e,t,n){try{var r="",i=t;do{r+=Xe(e,i,n),i=i.return}while(i);return r}catch(e){return"\nError generating stack: "+e.message+"\n"+e.stack}}function Je(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Ze(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ze(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,u=!0,a=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return u=e.done,e},e:function(e){a=!0,o=e},f:function(){try{u||null==n.return||n.return()}finally{if(a)throw o}}}}function Ze(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?r[r.length-1]:null,u=null!==o&&(tt.test(o)||nt.test(o));if(!u){var a,l=Je(rt.values());try{for(l.s();!(a=l.n()).done;){var s=a.value,c=s.currentDispatcherRef,f=s.getCurrentFiber,d=s.workTagMap,p=f();if(null!=p){var h=Qe(d,p,c);""!==h&&r.push(h);break}}}catch(e){l.e(e)}finally{l.f()}}}catch(e){}t.apply(void 0,r)};n.__REACT_DEVTOOLS_ORIGINAL_METHOD__=t,it[e]=n}catch(e){}}))}}function ft(e){return(ft="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function dt(e,t){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:d,n=void 0,r=[],i=void 0,o=!1,u=function(e,n){return t(e,r[n])},a=function(){for(var t=arguments.length,a=Array(t),l=0;le.length)&&(t=e.length);for(var n=0,r=new Array(t);n1?t-1:0),r=1;r0?"development":"production";var t=Function.prototype.toString;if(e.Mount&&e.Mount._renderNewRootComponent){var n=t.call(e.Mount._renderNewRootComponent);return 0!==n.indexOf("function")?"production":-1!==n.indexOf("storedMeasure")?"development":-1!==n.indexOf("should be a pure function")?-1!==n.indexOf("NODE_ENV")||-1!==n.indexOf("development")||-1!==n.indexOf("true")?"development":-1!==n.indexOf("nextElement")||-1!==n.indexOf("nextComponent")?"unminified":"development":-1!==n.indexOf("nextElement")||-1!==n.indexOf("nextComponent")?"unminified":"outdated"}}catch(e){}return"production"}(r);try{var l=!1!==window.__REACT_DEVTOOLS_APPEND_COMPONENT_STACK__,s=!0===window.__REACT_DEVTOOLS_BREAK_ON_CONSOLE_ERRORS__;(l||s)&&(lt(r),ct({appendComponentStack:l,breakOnConsoleErrors:s}))}catch(e){}var c=e.__REACT_DEVTOOLS_ATTACH__;if("function"==typeof c){var f=c(a,i,r,e);a.rendererInterfaces.set(i,f)}return a.emit("renderer",{id:i,renderer:r,reactBuildType:o}),i},on:function(e,t){o[e]||(o[e]=[]),o[e].push(t)},off:function(e,t){if(o[e]){var n=o[e].indexOf(t);-1!==n&&o[e].splice(n,1),o[e].length||delete o[e]}},sub:function(e,t){return a.on(e,t),function(){return a.off(e,t)}},supportsFiber:!0,checkDCE:function(e){try{Function.prototype.toString.call(e).indexOf("^_^")>-1&&(n=!0,setTimeout((function(){throw new Error("React is running in production mode, but dead code elimination has not been applied. Read how to correctly configure React for production: https://reactjs.org/link/perf-use-production-build")})))}catch(e){}},onCommitFiberUnmount:function(e,t){var n=i.get(e);null!=n&&n.handleCommitFiberUnmount(t)},onCommitFiberRoot:function(e,t,n){var r=a.getFiberRoots(e),o=t.current,u=r.has(t),l=null==o.memoizedState||null==o.memoizedState.element;u||l?u&&l&&r.delete(t):r.add(t);var s=i.get(e);null!=s&&s.handleCommitFiberRoot(t,n)}};Object.defineProperty(e,"__REACT_DEVTOOLS_GLOBAL_HOOK__",{configurable:!1,enumerable:!1,get:function(){return a}})}(window);var $t=window.__REACT_DEVTOOLS_GLOBAL_HOOK__,Yt=[{type:1,value:7,isEnabled:!0}];function Kt(e){if(null!=$t){var t=e||{},n=t.host,r=void 0===n?"localhost":n,i=t.nativeStyleEditorValidAttributes,o=t.useHttps,u=void 0!==o&&o,a=t.port,l=void 0===a?8097:a,s=t.websocket,c=t.resolveRNStyle,f=void 0===c?null:c,d=t.isAppActive,p=u?"wss":"ws",h=null;if((void 0===d?function(){return!0}:d)()){var v=null,m=[],g=p+"://"+r+":"+l,y=s||new window.WebSocket(g);y.onclose=function(){null!==v&&v.emit("shutdown"),_()},y.onerror=function(){_()},y.onmessage=function(e){var t;try{if("string"!=typeof e.data)throw Error();t=JSON.parse(e.data)}catch(t){return void console.error("[React DevTools] Failed to parse JSON: "+e.data)}m.forEach((function(e){try{e(t)}catch(e){throw console.log("[React DevTools] Error calling listener",t),console.log("error:",e),e}}))},y.onopen=function(){(v=new xt({listen:function(e){return m.push(e),function(){var t=m.indexOf(e);t>=0&&m.splice(t,1)}},send:function(e,t,n){y.readyState===y.OPEN?y.send(JSON.stringify({event:e,payload:t})):(null!==v&&v.shutdown(),_())}})).addListener("inspectElement",(function(t){var n=t.id,r=t.rendererID,i=e.rendererInterfaces[r];if(null!=i){var o=i.findNativeNodesForFiberID(n);null!=o&&null!=o[0]&&e.emit("showNativeHighlight",o[0])}})),v.addListener("updateComponentFilters",(function(e){Yt=e})),null==window.__REACT_DEVTOOLS_COMPONENT_FILTERS__&&v.send("overrideComponentFilters",Yt);var e=new yt(v);if(e.addListener("shutdown",(function(){$t.emit("shutdown")})),function(e,t,n){if(null==e)return function(){};var r=[e.sub("renderer-attached",(function(e){var n=e.id,r=(e.renderer,e.rendererInterface);t.setRendererInterface(n,r),r.flushInitialOperations()})),e.sub("unsupported-renderer-version",(function(e){t.onUnsupportedRenderer(e)})),e.sub("operations",t.onHookOperations),e.sub("traceUpdates",t.onTraceUpdates)],i=function(t,r){var i=e.rendererInterfaces.get(t);null==i&&("function"==typeof r.findFiberByHostInstance?i=Ve(e,t,r,n):r.ComponentTree&&(i=function(e,t,n,r){var i,o=new Map,u=new WeakMap,a=new WeakMap,l=null;function s(e){if("object"!==Rt(e)||null===e)throw new Error("Invalid internal instance: "+e);if(!u.has(e)){var t=ce();u.set(e,t),o.set(t,e)}return u.get(e)}function c(e,t){if(e.length!==t.length)return!1;for(var n=0;n0?f[f.length-1]:0),f.push(i),a.set(n,s(r._topLevelWrapper));try{var o=e.apply(this,t);return f.pop(),o}catch(e){throw f=[],e}finally{if(0===f.length){var u=a.get(n);if(void 0===u)throw new Error("Expected to find root ID.");w(u)}}},performUpdateIfNecessary:function(e,t){var n=t[0];if(9===Lt(n))return e.apply(this,t);var r=s(n);f.push(r);var i=Bt(n);try{var o=e.apply(this,t),u=Bt(n);return c(i,u)||h(0,r,u),f.pop(),o}catch(e){throw f=[],e}finally{if(0===f.length){var l=a.get(n);if(void 0===l)throw new Error("Expected to find root ID.");w(l)}}},receiveComponent:function(e,t){var n=t[0];if(9===Lt(n))return e.apply(this,t);var r=s(n);f.push(r);var i=Bt(n);try{var o=e.apply(this,t),u=Bt(n);return c(i,u)||h(0,r,u),f.pop(),o}catch(e){throw f=[],e}finally{if(0===f.length){var l=a.get(n);if(void 0===l)throw new Error("Expected to find root ID.");w(l)}}},unmountComponent:function(e,t){var n=t[0];if(9===Lt(n))return e.apply(this,t);var r=s(n);f.push(r);try{var i=e.apply(this,t);return f.pop(),function(e,t){y.push(t),o.delete(t)}(0,r),i}catch(e){throw f=[],e}finally{if(0===f.length){var u=a.get(n);if(void 0===u)throw new Error("Expected to find root ID.");w(u)}}}}));var m=[],g=new Map,y=[],_=0,b=null;function w(n){if(0!==m.length||0!==y.length||null!==b){var r=y.length+(null===b?0:1),i=new Array(3+_+(r>0?2+r:0)+m.length),o=0;if(i[o++]=t,i[o++]=n,i[o++]=_,g.forEach((function(e,t){i[o++]=t.length;for(var n=fe(t),r=0;r0){i[o++]=2,i[o++]=r;for(var u=0;u "),"color: var(--dom-tag-name-color); font-weight: normal;"),null!==t.props&&console.log("Props:",t.props),null!==t.state&&console.log("State:",t.state),null!==t.context&&console.log("Context:",t.context);var r=i(e);null!==r&&console.log("Node:",r),(window.chrome||/firefox/i.test(navigator.userAgent))&&console.log("Right-click any value to save it as a global variable for further inspection."),n&&console.groupEnd()}else console.warn('Could not find element with id "'.concat(e,'"'))},overrideSuspense:function(){throw new Error("overrideSuspense not supported by this renderer")},overrideValueAtPath:function(e,t,n,r,i){var u=o.get(t);if(null!=u){var a=u._instance;if(null!=a)switch(e){case"context":ve(a.context,r,i),Pt(a);break;case"hooks":throw new Error("Hooks not supported by this renderer");case"props":var l=u._currentElement;u._currentElement=Nt(Nt({},l),{},{props:Ae(l.props,r,i)}),Pt(a);break;case"state":ve(a.state,r,i),Pt(a)}}},renamePath:function(e,t,n,r,i){var u=o.get(t);if(null!=u){var a=u._instance;if(null!=a)switch(e){case"context":he(a.context,r,i),Pt(a);break;case"hooks":throw new Error("Hooks not supported by this renderer");case"props":var l=u._currentElement;u._currentElement=Nt(Nt({},l),{},{props:xe(l.props,r,i)}),Pt(a);break;case"state":he(a.state,r,i),Pt(a)}}},prepareViewAttributeSource:function(e,t){var n=T(e);null!==n&&(window.$attribute=de(n,t))},prepareViewElementSource:function(e){var t=o.get(e);if(null!=t){var n=t._currentElement;null!=n?r.$type=n.type:console.warn('Could not find element with id "'.concat(e,'"'))}else console.warn('Could not find instance with id "'.concat(e,'"'))},renderer:n,setTraceUpdatesEnabled:function(e){},setTrackedPath:function(e){},startProfiling:function(){},stopProfiling:function(){},storeAsGlobal:function(e,t,n){var r=T(e);if(null!==r){var i=de(r,t),o="$reactTemp".concat(n);window[o]=i,console.log(o),console.log(i)}},updateComponentFilters:function(e){}}}(e,t,r,n)),null!=i&&e.rendererInterfaces.set(t,i)),null!=i?e.emit("renderer-attached",{id:t,renderer:r,rendererInterface:i}):e.emit("unsupported-renderer-version",t)};e.renderers.forEach((function(e,t){i(t,e)})),r.push(e.sub("renderer",(function(e){var t=e.id,n=e.renderer;i(t,n)}))),e.emit("react-devtools",t),e.reactDevtoolsAgent=t;var o=function(){r.forEach((function(e){return e()})),e.rendererInterfaces.forEach((function(e){e.cleanup()})),e.reactDevtoolsAgent=null};t.addListener("shutdown",o),r.push((function(){t.removeListener("shutdown",o)}))}($t,e,window),null!=f||null!=$t.resolveRNStyle)Wt(v,e,f||$t.resolveRNStyle,i||$t.nativeStyleEditorValidAttributes||null);else{var t,n,r=function(){null!==v&&Wt(v,e,t,n)};$t.hasOwnProperty("resolveRNStyle")||Object.defineProperty($t,"resolveRNStyle",{enumerable:!1,get:function(){return t},set:function(e){t=e,r()}}),$t.hasOwnProperty("nativeStyleEditorValidAttributes")||Object.defineProperty($t,"nativeStyleEditorValidAttributes",{enumerable:!1,get:function(){return n},set:function(e){n=e,r()}})}}}else _()}function _(){null===h&&(h=setTimeout((function(){return Kt(e)}),2e3))}}}])},6099:(e,t,n)=>{"use strict";
+/** @license React v16.13.1
+ * react.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */var r=n(9381),i="function"==typeof Symbol&&Symbol.for,o=i?Symbol.for("react.element"):60103,u=i?Symbol.for("react.portal"):60106,a=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode"):60108,s=i?Symbol.for("react.profiler"):60114,c=i?Symbol.for("react.provider"):60109,f=i?Symbol.for("react.context"):60110,d=i?Symbol.for("react.forward_ref"):60112,p=i?Symbol.for("react.suspense"):60113,h=i?Symbol.for("react.memo"):60115,v=i?Symbol.for("react.lazy"):60116,m="function"==typeof Symbol&&Symbol.iterator;function g(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;nO.length&&O.push(e)}function N(e,t,n){return null==e?0:function e(t,n,r,i){var a=typeof t;"undefined"!==a&&"boolean"!==a||(t=null);var l=!1;if(null===t)l=!0;else switch(a){case"string":case"number":l=!0;break;case"object":switch(t.$$typeof){case o:case u:l=!0}}if(l)return r(i,t,""===n?"."+M(t,0):n),1;if(l=0,n=""===n?".":n+":",Array.isArray(t))for(var s=0;s{"use strict";e.exports=n(6099)},3390:(e,t,n)=>{"use strict";const r=n(834),i=n(6458);e.exports=r(()=>{i(()=>{process.stderr.write("[?25h")},{alwaysLast:!0})})},706:(e,t)=>{"use strict";
+/** @license React v0.18.0
+ * scheduler.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */var n,r,i,o,u;if(Object.defineProperty(t,"__esModule",{value:!0}),"undefined"==typeof window||"function"!=typeof MessageChannel){var a=null,l=null,s=function(){if(null!==a)try{var e=t.unstable_now();a(!0,e),a=null}catch(e){throw setTimeout(s,0),e}},c=Date.now();t.unstable_now=function(){return Date.now()-c},n=function(e){null!==a?setTimeout(n,0,e):(a=e,setTimeout(s,0))},r=function(e,t){l=setTimeout(e,t)},i=function(){clearTimeout(l)},o=function(){return!1},u=t.unstable_forceFrameRate=function(){}}else{var f=window.performance,d=window.Date,p=window.setTimeout,h=window.clearTimeout;if("undefined"!=typeof console){var v=window.cancelAnimationFrame;"function"!=typeof window.requestAnimationFrame&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills"),"function"!=typeof v&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills")}if("object"==typeof f&&"function"==typeof f.now)t.unstable_now=function(){return f.now()};else{var m=d.now();t.unstable_now=function(){return d.now()-m}}var g=!1,y=null,_=-1,b=5,w=0;o=function(){return t.unstable_now()>=w},u=function(){},t.unstable_forceFrameRate=function(e){0>e||125T(u,n))void 0!==l&&0>T(l,u)?(e[r]=l,e[a]=n,r=a):(e[r]=u,e[o]=n,r=o);else{if(!(void 0!==l&&0>T(l,n)))break e;e[r]=l,e[a]=n,r=a}}}return t}return null}function T(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}var x=[],A=[],O=1,P=null,I=3,N=!1,M=!1,R=!1;function F(e){for(var t=C(A);null!==t;){if(null===t.callback)k(A);else{if(!(t.startTime<=e))break;k(A),t.sortIndex=t.expirationTime,S(x,t)}t=C(A)}}function L(e){if(R=!1,F(e),!M)if(null!==C(x))M=!0,n(B);else{var t=C(A);null!==t&&r(L,t.startTime-e)}}function B(e,n){M=!1,R&&(R=!1,i()),N=!0;var u=I;try{for(F(n),P=C(x);null!==P&&(!(P.expirationTime>n)||e&&!o());){var a=P.callback;if(null!==a){P.callback=null,I=P.priorityLevel;var l=a(P.expirationTime<=n);n=t.unstable_now(),"function"==typeof l?P.callback=l:P===C(x)&&k(x),F(n)}else k(x);P=C(x)}if(null!==P)var s=!0;else{var c=C(A);null!==c&&r(L,c.startTime-n),s=!1}return s}finally{P=null,I=u,N=!1}}function j(e){switch(e){case 1:return-1;case 2:return 250;case 5:return 1073741823;case 4:return 1e4;default:return 5e3}}var U=u;t.unstable_ImmediatePriority=1,t.unstable_UserBlockingPriority=2,t.unstable_NormalPriority=3,t.unstable_IdlePriority=5,t.unstable_LowPriority=4,t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=I;I=e;try{return t()}finally{I=n}},t.unstable_next=function(e){switch(I){case 1:case 2:case 3:var t=3;break;default:t=I}var n=I;I=t;try{return e()}finally{I=n}},t.unstable_scheduleCallback=function(e,o,u){var a=t.unstable_now();if("object"==typeof u&&null!==u){var l=u.delay;l="number"==typeof l&&0a?(e.sortIndex=l,S(A,e),null===C(x)&&e===C(A)&&(R?i():R=!0,r(L,l-a))):(e.sortIndex=u,S(x,e),M||N||(M=!0,n(B))),e},t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_wrapCallback=function(e){var t=I;return function(){var n=I;I=t;try{return e.apply(this,arguments)}finally{I=n}}},t.unstable_getCurrentPriorityLevel=function(){return I},t.unstable_shouldYield=function(){var e=t.unstable_now();F(e);var n=C(x);return n!==P&&null!==P&&null!==n&&null!==n.callback&&n.startTime<=e&&n.expirationTime{"use strict";e.exports=n(706)},6458:(e,t,n)=>{var r,i=n(2357),o=n(8082),u=n(8614);function a(){c&&(c=!1,o.forEach((function(e){try{process.removeListener(e,s[e])}catch(e){}})),process.emit=h,process.reallyExit=d,r.count-=1)}function l(e,t,n){r.emitted[e]||(r.emitted[e]=!0,r.emit(e,t,n))}"function"!=typeof u&&(u=u.EventEmitter),process.__signal_exit_emitter__?r=process.__signal_exit_emitter__:((r=process.__signal_exit_emitter__=new u).count=0,r.emitted={}),r.infinite||(r.setMaxListeners(1/0),r.infinite=!0),e.exports=function(e,t){i.equal(typeof e,"function","a callback must be provided for exit handler"),!1===c&&f();var n="exit";t&&t.alwaysLast&&(n="afterexit");return r.on(n,e),function(){r.removeListener(n,e),0===r.listeners("exit").length&&0===r.listeners("afterexit").length&&a()}},e.exports.unload=a;var s={};o.forEach((function(e){s[e]=function(){process.listeners(e).length===r.count&&(a(),l("exit",null,e),l("afterexit",null,e),process.kill(process.pid,e))}})),e.exports.signals=function(){return o},e.exports.load=f;var c=!1;function f(){c||(c=!0,r.count+=1,o=o.filter((function(e){try{return process.on(e,s[e]),!0}catch(e){return!1}})),process.emit=v,process.reallyExit=p)}var d=process.reallyExit;function p(e){process.exitCode=e||0,l("exit",process.exitCode,null),l("afterexit",process.exitCode,null),d.call(process,process.exitCode)}var h=process.emit;function v(e,t){if("exit"===e){void 0!==t&&(process.exitCode=t);var n=h.apply(this,arguments);return l("exit",process.exitCode,null),l("afterexit",process.exitCode,null),n}return h.apply(this,arguments)}},8082:e=>{e.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"],"win32"!==process.platform&&e.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT"),"linux"===process.platform&&e.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")},1566:(e,t,n)=>{"use strict";const r=n(7347),i=n(409),o=n(8483),u=["",""],a=e=>`${u[0]}[${e}m`,l=(e,t,n)=>{let r=[];e=[...e];for(let n of e){const i=n;n.match(";")&&(n=n.split(";")[0][0]+"0");const u=o.codes.get(parseInt(n,10));if(u){const n=e.indexOf(u.toString());n>=0?e.splice(n,1):r.push(a(t?u:i))}else{if(t){r.push(a(0));break}r.push(a(i))}}if(t&&(r=r.filter((e,t)=>r.indexOf(e)===t),void 0!==n)){const e=a(o.codes.get(parseInt(n,10)));r=r.reduce((t,n)=>n===e?[n,...t]:[...t,n],[])}return r.join("")};e.exports=(e,t,n)=>{const o=[...e.normalize()],a=[];n="number"==typeof n?n:o.length;let s,c=!1,f=0,d="";for(const[p,h]of o.entries()){let o=!1;if(u.includes(h)){const t=/\d[^m]*/.exec(e.slice(p,p+18));s=t&&t.length>0?t[0]:void 0,ft&&f<=n)d+=h;else if(f!==t||c||void 0===s){if(f>=n){d+=l(a,!0,s);break}}else d=l(a)}return d}},9796:(e,t,n)=>{"use strict";const r=n(8759),i=[].concat(n(2282).builtinModules,"bootstrap_node","node").map(e=>new RegExp(`(?:\\(${e}\\.js:\\d+:\\d+\\)$|^\\s*at ${e}\\.js:\\d+:\\d+$)`));i.push(/\(internal\/[^:]+:\d+:\d+\)$/,/\s*at internal\/[^:]+:\d+:\d+$/,/\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/);class o{constructor(e){"internals"in(e={ignoredPackages:[],...e})==!1&&(e.internals=o.nodeInternals()),"cwd"in e==!1&&(e.cwd=process.cwd()),this._cwd=e.cwd.replace(/\\/g,"/"),this._internals=[].concat(e.internals,function(e){if(0===e.length)return[];const t=e.map(e=>r(e));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${t.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}(e.ignoredPackages)),this._wrapCallSite=e.wrapCallSite||!1}static nodeInternals(){return[...i]}clean(e,t=0){t=" ".repeat(t),Array.isArray(e)||(e=e.split("\n")),!/^\s*at /.test(e[0])&&/^\s*at /.test(e[1])&&(e=e.slice(1));let n=!1,r=null;const i=[];return e.forEach(e=>{if(e=e.replace(/\\/g,"/"),this._internals.some(t=>t.test(e)))return;const t=/^\s*at /.test(e);n?e=e.trimEnd().replace(/^(\s+)at /,"$1"):(e=e.trim(),t&&(e=e.slice(3))),(e=e.replace(this._cwd+"/",""))&&(t?(r&&(i.push(r),r=null),i.push(e)):(n=!0,r=e))}),i.map(e=>`${t}${e}\n`).join("")}captureString(e,t=this.captureString){"function"==typeof e&&(t=e,e=1/0);const{stackTraceLimit:n}=Error;e&&(Error.stackTraceLimit=e);const r={};Error.captureStackTrace(r,t);const{stack:i}=r;return Error.stackTraceLimit=n,this.clean(i)}capture(e,t=this.capture){"function"==typeof e&&(t=e,e=1/0);const{prepareStackTrace:n,stackTraceLimit:r}=Error;Error.prepareStackTrace=(e,t)=>this._wrapCallSite?t.map(this._wrapCallSite):t,e&&(Error.stackTraceLimit=e);const i={};Error.captureStackTrace(i,t);const{stack:o}=i;return Object.assign(Error,{prepareStackTrace:n,stackTraceLimit:r}),o}at(e=this.at){const[t]=this.capture(1,e);if(!t)return{};const n={line:t.getLineNumber(),column:t.getColumnNumber()};let r;u(n,t.getFileName(),this._cwd),t.isConstructor()&&(n.constructor=!0),t.isEval()&&(n.evalOrigin=t.getEvalOrigin()),t.isNative()&&(n.native=!0);try{r=t.getTypeName()}catch(e){}r&&"Object"!==r&&"[object Object]"!==r&&(n.type=r);const i=t.getFunctionName();i&&(n.function=i);const o=t.getMethodName();return o&&i!==o&&(n.method=o),n}parseLine(e){const t=e&&e.match(a);if(!t)return null;const n="new"===t[1];let r=t[2];const i=t[3],o=t[4],s=Number(t[5]),c=Number(t[6]);let f=t[7];const d=t[8],p=t[9],h="native"===t[10],v=")"===t[11];let m;const g={};if(d&&(g.line=Number(d)),p&&(g.column=Number(p)),v&&f){let e=0;for(let t=f.length-1;t>0;t--)if(")"===f.charAt(t))e++;else if("("===f.charAt(t)&&" "===f.charAt(t-1)&&(e--,-1===e&&" "===f.charAt(t-1))){const e=f.slice(0,t-1),n=f.slice(t+1);f=n,r+=" ("+e;break}}if(r){const e=r.match(l);e&&(r=e[1],m=e[2])}return u(g,f,this._cwd),n&&(g.constructor=!0),i&&(g.evalOrigin=i,g.evalLine=s,g.evalColumn=c,g.evalFile=o&&o.replace(/\\/g,"/")),h&&(g.native=!0),r&&(g.function=r),m&&r!==m&&(g.method=m),g}}function u(e,t,n){t&&((t=t.replace(/\\/g,"/")).startsWith(n+"/")&&(t=t.slice(n.length+1)),e.file=t)}const a=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),l=/^(.*?) \[as (.*?)\]$/;e.exports=o},3262:(e,t,n)=>{"use strict";const r=n(7402),i=n(5640),o=e=>r(e).replace(i()," ").length;e.exports=o,e.exports.default=o},5043:(e,t,n)=>{"use strict";const r=n(7915),i=n(7347),o=n(1013),u=e=>{if("string"!=typeof(e=e.replace(o()," "))||0===e.length)return 0;e=r(e);let t=0;for(let n=0;n=127&&r<=159||(r>=768&&r<=879||(r>65535&&n++,t+=i(r)?2:1))}return t};e.exports=u,e.exports.default=u},7402:(e,t,n)=>{"use strict";const r=n(5378),i=e=>"string"==typeof e?e.replace(r(),""):e;e.exports=i,e.exports.default=i},7915:(e,t,n)=>{"use strict";const r=n(1337);e.exports=e=>"string"==typeof e?e.replace(r(),""):e},9428:(e,t,n)=>{"use strict";const r=n(2087),i=n(3867),o=n(2918),{env:u}=process;let a;function l(e){return 0!==e&&{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function s(e,t){if(0===a)return 0;if(o("color=16m")||o("color=full")||o("color=truecolor"))return 3;if(o("color=256"))return 2;if(e&&!t&&void 0===a)return 0;const n=a||0;if("dumb"===u.TERM)return n;if("win32"===process.platform){const e=r.release().split(".");return Number(e[0])>=10&&Number(e[2])>=10586?Number(e[2])>=14931?3:2:1}if("CI"in u)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(e=>e in u)||"codeship"===u.CI_NAME?1:n;if("TEAMCITY_VERSION"in u)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(u.TEAMCITY_VERSION)?1:0;if("GITHUB_ACTIONS"in u)return 1;if("truecolor"===u.COLORTERM)return 3;if("TERM_PROGRAM"in u){const e=parseInt((u.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(u.TERM_PROGRAM){case"iTerm.app":return e>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(u.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(u.TERM)||"COLORTERM"in u?1:n}o("no-color")||o("no-colors")||o("color=false")||o("color=never")?a=0:(o("color")||o("colors")||o("color=true")||o("color=always"))&&(a=1),"FORCE_COLOR"in u&&(a="true"===u.FORCE_COLOR?1:"false"===u.FORCE_COLOR?0:0===u.FORCE_COLOR.length?1:Math.min(parseInt(u.FORCE_COLOR,10),3)),e.exports={supportsColor:function(e){return l(s(e,e&&e.isTTY))},stdout:l(s(!0,i.isatty(1))),stderr:l(s(!0,i.isatty(2)))}},8949:(e,t,n)=>{"use strict";const r=n(5043),i=e=>{let t=0;for(const n of e.split("\n"))t=Math.max(t,r(n));return t};e.exports=i,e.exports.default=i},4332:(e,t,n)=>{"use strict";const r=n(5043),i=n(7915),o=n(8483),u=new Set(["",""]),a=e=>`${u.values().next().value}[${e}m`,l=(e,t,n)=>{const o=[...t];let a=!1,l=r(i(e[e.length-1]));for(const[t,i]of o.entries()){const s=r(i);if(l+s<=n?e[e.length-1]+=i:(e.push(i),l=0),u.has(i))a=!0;else if(a&&"m"===i){a=!1;continue}a||(l+=s,l===n&&t0&&e.length>1&&(e[e.length-2]+=e.pop())},s=e=>{const t=e.split(" ");let n=t.length;for(;n>0&&!(r(t[n-1])>0);)n--;return n===t.length?e:t.slice(0,n).join(" ")+t.slice(n).join("")},c=(e,t,n={})=>{if(!1!==n.trim&&""===e.trim())return"";let i,c="",f="";const d=(e=>e.split(" ").map(e=>r(e)))(e);let p=[""];for(const[i,o]of e.split(" ").entries()){!1!==n.trim&&(p[p.length-1]=p[p.length-1].trimLeft());let e=r(p[p.length-1]);if(0!==i&&(e>=t&&(!1===n.wordWrap||!1===n.trim)&&(p.push(""),e=0),(e>0||!1===n.trim)&&(p[p.length-1]+=" ",e++)),n.hard&&d[i]>t){const n=t-e,r=1+Math.floor((d[i]-n-1)/t);Math.floor((d[i]-1)/t)t&&e>0&&d[i]>0){if(!1===n.wordWrap&&et&&!1===n.wordWrap?l(p,o,t):p[p.length-1]+=o}}!1!==n.trim&&(p=p.map(s)),c=p.join("\n");for(const[e,t]of[...c].entries()){if(f+=t,u.has(t)){const t=parseFloat(/\d[^m]*/.exec(c.slice(e,e+4)));i=39===t?null:t}const n=o.codes.get(Number(i));i&&n&&("\n"===c[e+1]?f+=a(n):"\n"===t&&(f+=a(i)))}return f};e.exports=(e,t,n)=>String(e).normalize().replace(/\r\n/g,"\n").split("\n").map(e=>c(e,t,n)).join("\n")},3354:function(module,exports){var __WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__,wrapper;wrapper=function(Module,cb){var Module;"function"==typeof Module&&(cb=Module,Module={}),Module.onRuntimeInitialized=function(e,t){return function(){e&&e.apply(this,arguments);try{Module.ccall("nbind_init")}catch(e){return void t(e)}t(null,{bind:Module._nbind_value,reflect:Module.NBind.reflect,queryType:Module.NBind.queryType,toggleLightGC:Module.toggleLightGC,lib:Module})}}(Module.onRuntimeInitialized,cb),Module||(Module=(void 0!==Module?Module:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB=!1,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1,nodeFS,nodePath;if(Module.ENVIRONMENT)if("WEB"===Module.ENVIRONMENT)ENVIRONMENT_IS_WEB=!0;else if("WORKER"===Module.ENVIRONMENT)ENVIRONMENT_IS_WORKER=!0;else if("NODE"===Module.ENVIRONMENT)ENVIRONMENT_IS_NODE=!0;else{if("SHELL"!==Module.ENVIRONMENT)throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");ENVIRONMENT_IS_SHELL=!0}else ENVIRONMENT_IS_WEB="object"==typeof window,ENVIRONMENT_IS_WORKER="function"==typeof importScripts,ENVIRONMENT_IS_NODE="object"==typeof process&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE)Module.print||(Module.print=console.log),Module.printErr||(Module.printErr=console.warn),Module.read=function(e,t){nodeFS||(nodeFS={}("")),nodePath||(nodePath={}("")),e=nodePath.normalize(e);var n=nodeFS.readFileSync(e);return t?n:n.toString()},Module.readBinary=function(e){var t=Module.read(e,!0);return t.buffer||(t=new Uint8Array(t)),assert(t.buffer),t},Module.load=function(e){globalEval(read(e))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),module.exports=Module,Module.inspect=function(){return"[Emscripten Module object]"};else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),"undefined"!=typeof printErr&&(Module.printErr=printErr),"undefined"!=typeof read?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(e){if("function"==typeof readbuffer)return new Uint8Array(readbuffer(e));var t=read(e,"binary");return assert("object"==typeof t),t},"undefined"!=typeof scriptArgs?Module.arguments=scriptArgs:void 0!==arguments&&(Module.arguments=arguments),"function"==typeof quit&&(Module.quit=function(e,t){quit(e)});else{if(!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER)throw"Unknown runtime environment. Where are we?";if(Module.read=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),Module.readAsync=function(e,t,n){var r=new XMLHttpRequest;r.open("GET",e,!0),r.responseType="arraybuffer",r.onload=function(){200==r.status||0==r.status&&r.response?t(r.response):n()},r.onerror=n,r.send(null)},void 0!==arguments&&(Module.arguments=arguments),"undefined"!=typeof console)Module.print||(Module.print=function(e){console.log(e)}),Module.printErr||(Module.printErr=function(e){console.warn(e)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&"undefined"!=typeof dump?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),void 0===Module.setWindowTitle&&(Module.setWindowTitle=function(e){document.title=e})}function globalEval(e){eval.call(null,e)}for(var key in!Module.load&&Module.read&&(Module.load=function(e){globalEval(Module.read(e))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.quit||(Module.quit=function(e,t){throw t}),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[],moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(e){return tempRet0=e,e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:if("*"===e[e.length-1])return Runtime.QUANTUM_SIZE;if("i"===e[0]){var t=parseInt(e.substr(1));return assert(t%8==0),t/8}return 0}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,t){return"double"===t||"i64"===t?7&e&&(assert(4==(7&e)),e+=4):assert(0==(3&e)),e},getAlignSize:function(e,t,n){return n||"i64"!=e&&"double"!=e?e?Math.min(t||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(t,8):8},dynCall:function(e,t,n){return n&&n.length?Module["dynCall_"+e].apply(null,[t].concat(n)):Module["dynCall_"+e].call(null,t)},functionPointers:[],addFunction:function(e){for(var t=0;t>2],n=-16&(t+e+15|0);return HEAP32[DYNAMICTOP_PTR>>2]=n,n>=TOTAL_MEMORY&&!enlargeMemory()?(HEAP32[DYNAMICTOP_PTR>>2]=t,0):t},alignMemory:function(e,t){return e=Math.ceil(e/(t||16))*(t||16)},makeBigInt:function(e,t,n){return n?+(e>>>0)+4294967296*+(t>>>0):+(e>>>0)+4294967296*+(0|t)},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0,cwrap,ccall;function assert(e,t){e||abort("Assertion failed: "+t)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}function setValue(e,t,n,r){switch("*"===(n=n||"i8").charAt(n.length-1)&&(n="i32"),n){case"i1":case"i8":HEAP8[e>>0]=t;break;case"i16":HEAP16[e>>1]=t;break;case"i32":HEAP32[e>>2]=t;break;case"i64":tempI64=[t>>>0,(tempDouble=t,+Math_abs(tempDouble)>=1?tempDouble>0?(0|Math_min(+Math_floor(tempDouble/4294967296),4294967295))>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=t;break;case"double":HEAPF64[e>>3]=t;break;default:abort("invalid type for setValue: "+n)}}function getValue(e,t,n){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+t)}return null}!function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var t=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,t),t},stringToC:function(e){var t=0;if(null!=e&&0!==e){var n=1+(e.length<<2);stringToUTF8(e,t=Runtime.stackAlloc(n),n)}return t}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(e,t,n,r,i){var o=getCFunc(e),u=[],a=0;if(r)for(var l=0;l>2]=0;for(l=u+o;r>0]=0;return u}if("i8"===a)return e.subarray||e.slice?HEAPU8.set(e,u):HEAPU8.set(new Uint8Array(e),u),u;for(var s,c,f,d=0;d>0],(0!=n||t)&&(i++,!t||i!=t););t||(t=i);var o="";if(r<128){for(var u;t>0;)u=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(t,1024))),o=o?o+u:u,e+=1024,t-=1024;return o}return Module.UTF8ToString(e)}function AsciiToString(e){for(var t="";;){var n=HEAP8[e++>>0];if(!n)return t;t+=String.fromCharCode(n)}}function stringToAscii(e,t){return writeAsciiToMemory(e,t,!1)}Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE,Module.allocate=allocate,Module.getMemory=getMemory,Module.Pointer_stringify=Pointer_stringify,Module.AsciiToString=AsciiToString,Module.stringToAscii=stringToAscii;var UTF8Decoder="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(e,t){for(var n=t;e[n];)++n;if(n-t>16&&e.subarray&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(t,n));for(var r,i,o,u,a,l="";;){if(!(r=e[t++]))return l;if(128&r)if(i=63&e[t++],192!=(224&r))if(o=63&e[t++],224==(240&r)?r=(15&r)<<12|i<<6|o:(u=63&e[t++],240==(248&r)?r=(7&r)<<18|i<<12|o<<6|u:(a=63&e[t++],r=248==(252&r)?(3&r)<<24|i<<18|o<<12|u<<6|a:(1&r)<<30|i<<24|o<<18|u<<12|a<<6|63&e[t++])),r<65536)l+=String.fromCharCode(r);else{var s=r-65536;l+=String.fromCharCode(55296|s>>10,56320|1023&s)}else l+=String.fromCharCode((31&r)<<6|i);else l+=String.fromCharCode(r)}}function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}function stringToUTF8Array(e,t,n,r){if(!(r>0))return 0;for(var i=n,o=n+r-1,u=0;u=55296&&a<=57343&&(a=65536+((1023&a)<<10)|1023&e.charCodeAt(++u)),a<=127){if(n>=o)break;t[n++]=a}else if(a<=2047){if(n+1>=o)break;t[n++]=192|a>>6,t[n++]=128|63&a}else if(a<=65535){if(n+2>=o)break;t[n++]=224|a>>12,t[n++]=128|a>>6&63,t[n++]=128|63&a}else if(a<=2097151){if(n+3>=o)break;t[n++]=240|a>>18,t[n++]=128|a>>12&63,t[n++]=128|a>>6&63,t[n++]=128|63&a}else if(a<=67108863){if(n+4>=o)break;t[n++]=248|a>>24,t[n++]=128|a>>18&63,t[n++]=128|a>>12&63,t[n++]=128|a>>6&63,t[n++]=128|63&a}else{if(n+5>=o)break;t[n++]=252|a>>30,t[n++]=128|a>>24&63,t[n++]=128|a>>18&63,t[n++]=128|a>>12&63,t[n++]=128|a>>6&63,t[n++]=128|63&a}}return t[n]=0,n-i}function stringToUTF8(e,t,n){return stringToUTF8Array(e,HEAPU8,t,n)}function lengthBytesUTF8(e){for(var t=0,n=0;n=55296&&r<=57343&&(r=65536+((1023&r)<<10)|1023&e.charCodeAt(++n)),r<=127?++t:t+=r<=2047?2:r<=65535?3:r<=2097151?4:r<=67108863?5:6}return t}Module.UTF8ArrayToString=UTF8ArrayToString,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8Array=stringToUTF8Array,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64,STATIC_BASE,STATICTOP,staticSealed,STACK_BASE,STACKTOP,STACK_MAX,DYNAMIC_BASE,DYNAMICTOP_PTR;function demangle(e){var t=Module.___cxa_demangle||Module.__cxa_demangle;if(t){try{var n=e.substr(1),r=lengthBytesUTF8(n)+1,i=_malloc(r);stringToUTF8(n,i,r);var o=_malloc(4),u=t(i,0,0,o);if(0===getValue(o,"i32")&&u)return Pointer_stringify(u)}catch(e){}finally{i&&_free(i),o&&_free(o),u&&_free(u)}return e}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),e}function demangleAll(e){return e.replace(/__Z[\w\d_]+/g,(function(e){var t=demangle(e);return e===t?e:e+" ["+t+"]"}))}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){var e=jsStackTrace();return Module.extraStackTrace&&(e+="\n"+Module.extraStackTrace()),demangleAll(e)}function updateGlobalBufferViews(){Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer)}function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}Module.stackTrace=stackTrace,STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0,staticSealed=!1;var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||134217728;function getTotalMemory(){return TOTAL_MEMORY}if(TOTAL_MEMORY0;){var t=e.shift();if("function"!=typeof t){var n=t.func;"number"==typeof n?void 0===t.arg?Module.dynCall_v(n):Module.dynCall_vi(n,t.arg):n(void 0===t.arg?null:t.arg)}else t()}}Module.HEAP=HEAP,Module.buffer=buffer,Module.HEAP8=HEAP8,Module.HEAP16=HEAP16,Module.HEAP32=HEAP32,Module.HEAPU8=HEAPU8,Module.HEAPU16=HEAPU16,Module.HEAPU32=HEAPU32,Module.HEAPF32=HEAPF32,Module.HEAPF64=HEAPF64;var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}function addOnInit(e){__ATINIT__.unshift(e)}function addOnPreMain(e){__ATMAIN__.unshift(e)}function addOnExit(e){__ATEXIT__.unshift(e)}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}function intArrayFromString(e,t,n){var r=n>0?n:lengthBytesUTF8(e)+1,i=new Array(r),o=stringToUTF8Array(e,i,0,i.length);return t&&(i.length=o),i}function intArrayToString(e){for(var t=[],n=0;n255&&(r&=255),t.push(String.fromCharCode(r))}return t.join("")}function writeStringToMemory(e,t,n){var r,i;Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!"),n&&(i=t+lengthBytesUTF8(e),r=HEAP8[i]),stringToUTF8(e,t,1/0),n&&(HEAP8[i]=r)}function writeArrayToMemory(e,t){HEAP8.set(e,t)}function writeAsciiToMemory(e,t,n){for(var r=0;r>0]=e.charCodeAt(r);n||(HEAP8[t>>0]=0)}if(Module.addOnPreRun=addOnPreRun,Module.addOnInit=addOnInit,Module.addOnPreMain=addOnPreMain,Module.addOnExit=addOnExit,Module.addOnPostRun=addOnPostRun,Module.intArrayFromString=intArrayFromString,Module.intArrayToString=intArrayToString,Module.writeStringToMemory=writeStringToMemory,Module.writeArrayToMemory=writeArrayToMemory,Module.writeAsciiToMemory=writeAsciiToMemory,Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(e,t){var n=65535&e,r=65535&t;return n*r+((e>>>16)*r+n*(t>>>16)<<16)|0}),Math.imul=Math.imul,!Math.fround){var froundBuffer=new Float32Array(1);Math.fround=function(e){return froundBuffer[0]=e,froundBuffer[0]}}Math.fround=Math.fround,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(e){return e<0?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_round=Math.round,Math_min=Math.min,Math_clz32=Math.clz32,Math_trunc=Math.trunc,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),0==runDependencies&&(null!==runDependencyWatcher&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var t=dependenciesFulfilled;dependenciesFulfilled=null,t()}}Module.addRunDependency=addRunDependency,Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(e,t,n,r,i,o,u,a){return _nbind.callbackSignatureList[e].apply(this,arguments)}];function _emscripten_asm_const_iiiiiiii(e,t,n,r,i,o,u,a){return ASM_CONSTS[e](t,n,r,i,o,u,a)}function _emscripten_asm_const_iiiii(e,t,n,r,i){return ASM_CONSTS[e](t,n,r,i)}function _emscripten_asm_const_iiidddddd(e,t,n,r,i,o,u,a,l){return ASM_CONSTS[e](t,n,r,i,o,u,a,l)}function _emscripten_asm_const_iiididi(e,t,n,r,i,o,u){return ASM_CONSTS[e](t,n,r,i,o,u)}function _emscripten_asm_const_iiii(e,t,n,r){return ASM_CONSTS[e](t,n,r)}function _emscripten_asm_const_iiiid(e,t,n,r,i){return ASM_CONSTS[e](t,n,r,i)}function _emscripten_asm_const_iiiiii(e,t,n,r,i,o){return ASM_CONSTS[e](t,n,r,i,o)}STATIC_BASE=Runtime.GLOBAL_BASE,STATICTOP=STATIC_BASE+12800,__ATINIT__.push({func:function(){__GLOBAL__sub_I_Yoga_cpp()}},{func:function(){__GLOBAL__sub_I_nbind_cc()}},{func:function(){__GLOBAL__sub_I_common_cc()}},{func:function(){__GLOBAL__sub_I_Binding_cc()}}),allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,192,127,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,128,191,0,0,128,191,0,0,192,127,0,0,0,0,0,0,0,0,0,0,128,63,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,190,12,0,0,200,12,0,0,208,12,0,0,216,12,0,0,230,12,0,0,242,12,0,0,1,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,0,0,192,127,3,0,0,0,180,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,182,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,4,0,0,0,183,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,184,45,0,0,185,45,0,0,181,45,0,0,181,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,148,4,0,0,3,0,0,0,187,45,0,0,164,4,0,0,188,45,0,0,2,0,0,0,189,45,0,0,164,4,0,0,188,45,0,0,185,45,0,0,164,4,0,0,185,45,0,0,164,4,0,0,188,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,183,45,0,0,182,45,0,0,181,45,0,0,190,45,0,0,190,45,0,0,182,45,0,0,182,45,0,0,185,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,185,45,0,0,48,5,0,0,3,0,0,0,56,5,0,0,1,0,0,0,189,45,0,0,185,45,0,0,164,4,0,0,76,5,0,0,2,0,0,0,191,45,0,0,186,45,0,0,182,45,0,0,185,45,0,0,192,45,0,0,185,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,76,5,0,0,76,5,0,0,136,5,0,0,182,45,0,0,181,45,0,0,2,0,0,0,190,45,0,0,136,5,0,0,56,19,0,0,156,5,0,0,2,0,0,0,184,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,10,0,0,0,204,5,0,0,181,45,0,0,181,45,0,0,2,0,0,0,180,45,0,0,204,5,0,0,2,0,0,0,195,45,0,0,236,5,0,0,97,19,0,0,198,45,0,0,211,45,0,0,212,45,0,0,213,45,0,0,214,45,0,0,215,45,0,0,188,45,0,0,182,45,0,0,216,45,0,0,217,45,0,0,218,45,0,0,219,45,0,0,192,45,0,0,181,45,0,0,0,0,0,0,185,45,0,0,110,19,0,0,186,45,0,0,115,19,0,0,221,45,0,0,120,19,0,0,148,4,0,0,132,19,0,0,96,6,0,0,145,19,0,0,222,45,0,0,164,19,0,0,223,45,0,0,173,19,0,0,0,0,0,0,3,0,0,0,104,6,0,0,1,0,0,0,187,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,185,45,0,0,224,45,0,0,164,6,0,0,188,45,0,0,172,6,0,0,180,6,0,0,2,0,0,0,188,6,0,0,7,0,0,0,224,45,0,0,7,0,0,0,164,6,0,0,1,0,0,0,213,45,0,0,185,45,0,0,224,45,0,0,172,6,0,0,185,45,0,0,224,45,0,0,164,6,0,0,185,45,0,0,224,45,0,0,211,45,0,0,211,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,172,6,0,0,222,45,0,0,211,45,0,0,224,45,0,0,188,45,0,0,222,45,0,0,211,45,0,0,40,7,0,0,188,45,0,0,2,0,0,0,224,45,0,0,185,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,222,45,0,0,224,45,0,0,148,4,0,0,185,45,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,185,45,0,0,164,6,0,0,148,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,14,0,0,0,15,0,0,0,1,0,0,0,16,0,0,0,148,7,0,0,2,0,0,0,225,45,0,0,183,45,0,0,188,45,0,0,168,7,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,234,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,148,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,9,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,242,45,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,110,111,100,101,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,119,104,105,99,104,32,115,116,105,108,108,32,104,97,115,32,99,104,105,108,100,114,101,110,32,97,116,116,97,99,104,101,100,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,115,116,105,108,108,32,97,116,116,97,99,104,101,100,32,116,111,32,97,32,112,97,114,101,110,116,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,99,111,110,102,105,103,0,67,97,110,110,111,116,32,115,101,116,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,67,104,105,108,100,32,97,108,114,101,97,100,121,32,104,97,115,32,97,32,112,97,114,101,110,116,44,32,105,116,32,109,117,115,116,32,98,101,32,114,101,109,111,118,101,100,32,102,105,114,115,116,46,0,67,97,110,110,111,116,32,97,100,100,32,99,104,105,108,100,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,79,110,108,121,32,108,101,97,102,32,110,111,100,101,115,32,119,105,116,104,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,115,104,111,117,108,100,32,109,97,110,117,97,108,108,121,32,109,97,114,107,32,116,104,101,109,115,101,108,118,101,115,32,97,115,32,100,105,114,116,121,0,67,97,110,110,111,116,32,103,101,116,32,108,97,121,111,117,116,32,112,114,111,112,101,114,116,105,101,115,32,111,102,32,109,117,108,116,105,45,101,100,103,101,32,115,104,111,114,116,104,97,110,100,115,0,37,115,37,100,46,123,91,115,107,105,112,112,101,100,93,32,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,61,62,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,37,115,37,100,46,123,37,115,0,42,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,37,115,10,0,37,115,37,100,46,125,37,115,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,79,117,116,32,111,102,32,99,97,99,104,101,32,101,110,116,114,105,101,115,33,10,0,83,99,97,108,101,32,102,97,99,116,111,114,32,115,104,111,117,108,100,32,110,111,116,32,98,101,32,108,101,115,115,32,116,104,97,110,32,122,101,114,111,0,105,110,105,116,105,97,108,0,37,115,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,85,78,68,69,70,73,78,69,68,0,69,88,65,67,84,76,89,0,65,84,95,77,79,83,84,0,76,65,89,95,85,78,68,69,70,73,78,69,68,0,76,65,89,95,69,88,65,67,84,76,89,0,76,65,89,95,65,84,95,77,79,83,84,0,97,118,97,105,108,97,98,108,101,87,105,100,116,104,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,119,105,100,116,104,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,97,118,97,105,108,97,98,108,101,72,101,105,103,104,116,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,104,101,105,103,104,116,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,102,108,101,120,0,115,116,114,101,116,99,104,0,109,117,108,116,105,108,105,110,101,45,115,116,114,101,116,99,104,0,69,120,112,101,99,116,101,100,32,110,111,100,101,32,116,111,32,104,97,118,101,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,0,109,101,97,115,117,114,101,0,69,120,112,101,99,116,32,99,117,115,116,111,109,32,98,97,115,101,108,105,110,101,32,102,117,110,99,116,105,111,110,32,116,111,32,110,111,116,32,114,101,116,117,114,110,32,78,97,78,0,97,98,115,45,109,101,97,115,117,114,101,0,97,98,115,45,108,97,121,111,117,116,0,78,111,100,101,0,99,114,101,97,116,101,68,101,102,97,117,108,116,0,99,114,101,97,116,101,87,105,116,104,67,111,110,102,105,103,0,100,101,115,116,114,111,121,0,114,101,115,101,116,0,99,111,112,121,83,116,121,108,101,0,115,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,115,101,116,80,111,115,105,116,105,111,110,0,115,101,116,80,111,115,105,116,105,111,110,80,101,114,99,101,110,116,0,115,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,115,101,116,65,108,105,103,110,73,116,101,109,115,0,115,101,116,65,108,105,103,110,83,101,108,102,0,115,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,115,101,116,70,108,101,120,87,114,97,112,0,115,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,115,101,116,77,97,114,103,105,110,0,115,101,116,77,97,114,103,105,110,80,101,114,99,101,110,116,0,115,101,116,77,97,114,103,105,110,65,117,116,111,0,115,101,116,79,118,101,114,102,108,111,119,0,115,101,116,68,105,115,112,108,97,121,0,115,101,116,70,108,101,120,0,115,101,116,70,108,101,120,66,97,115,105,115,0,115,101,116,70,108,101,120,66,97,115,105,115,80,101,114,99,101,110,116,0,115,101,116,70,108,101,120,71,114,111,119,0,115,101,116,70,108,101,120,83,104,114,105,110,107,0,115,101,116,87,105,100,116,104,0,115,101,116,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,87,105,100,116,104,65,117,116,111,0,115,101,116,72,101,105,103,104,116,0,115,101,116,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,72,101,105,103,104,116,65,117,116,111,0,115,101,116,77,105,110,87,105,100,116,104,0,115,101,116,77,105,110,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,105,110,72,101,105,103,104,116,0,115,101,116,77,105,110,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,77,97,120,87,105,100,116,104,0,115,101,116,77,97,120,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,97,120,72,101,105,103,104,116,0,115,101,116,77,97,120,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,65,115,112,101,99,116,82,97,116,105,111,0,115,101,116,66,111,114,100,101,114,0,115,101,116,80,97,100,100,105,110,103,0,115,101,116,80,97,100,100,105,110,103,80,101,114,99,101,110,116,0,103,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,103,101,116,80,111,115,105,116,105,111,110,0,103,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,103,101,116,65,108,105,103,110,73,116,101,109,115,0,103,101,116,65,108,105,103,110,83,101,108,102,0,103,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,103,101,116,70,108,101,120,87,114,97,112,0,103,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,103,101,116,77,97,114,103,105,110,0,103,101,116,70,108,101,120,66,97,115,105,115,0,103,101,116,70,108,101,120,71,114,111,119,0,103,101,116,70,108,101,120,83,104,114,105,110,107,0,103,101,116,87,105,100,116,104,0,103,101,116,72,101,105,103,104,116,0,103,101,116,77,105,110,87,105,100,116,104,0,103,101,116,77,105,110,72,101,105,103,104,116,0,103,101,116,77,97,120,87,105,100,116,104,0,103,101,116,77,97,120,72,101,105,103,104,116,0,103,101,116,65,115,112,101,99,116,82,97,116,105,111,0,103,101,116,66,111,114,100,101,114,0,103,101,116,79,118,101,114,102,108,111,119,0,103,101,116,68,105,115,112,108,97,121,0,103,101,116,80,97,100,100,105,110,103,0,105,110,115,101,114,116,67,104,105,108,100,0,114,101,109,111,118,101,67,104,105,108,100,0,103,101,116,67,104,105,108,100,67,111,117,110,116,0,103,101,116,80,97,114,101,110,116,0,103,101,116,67,104,105,108,100,0,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,117,110,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,109,97,114,107,68,105,114,116,121,0,105,115,68,105,114,116,121,0,99,97,108,99,117,108,97,116,101,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,76,101,102,116,0,103,101,116,67,111,109,112,117,116,101,100,82,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,84,111,112,0,103,101,116,67,111,109,112,117,116,101,100,66,111,116,116,111,109,0,103,101,116,67,111,109,112,117,116,101,100,87,105,100,116,104,0,103,101,116,67,111,109,112,117,116,101,100,72,101,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,77,97,114,103,105,110,0,103,101,116,67,111,109,112,117,116,101,100,66,111,114,100,101,114,0,103,101,116,67,111,109,112,117,116,101,100,80,97,100,100,105,110,103,0,67,111,110,102,105,103,0,99,114,101,97,116,101,0,115,101,116,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,115,101,116,80,111,105,110,116,83,99,97,108,101,70,97,99,116,111,114,0,105,115,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,86,97,108,117,101,0,76,97,121,111,117,116,0,83,105,122,101,0,103,101,116,73,110,115,116,97,110,99,101,67,111,117,110,116,0,73,110,116,54,52,0,1,1,1,2,2,4,4,4,4,8,8,4,8,118,111,105,100,0,98,111,111,108,0,115,116,100,58,58,115,116,114,105,110,103,0,99,98,70,117,110,99,116,105,111,110,32,38,0,99,111,110,115,116,32,99,98,70,117,110,99,116,105,111,110,32,38,0,69,120,116,101,114,110,97,108,0,66,117,102,102,101,114,0,78,66,105,110,100,73,68,0,78,66,105,110,100,0,98,105,110,100,95,118,97,108,117,101,0,114,101,102,108,101,99,116,0,113,117,101,114,121,84,121,112,101,0,108,97,108,108,111,99,0,108,114,101,115,101,116,0,123,114,101,116,117,114,110,40,95,110,98,105,110,100,46,99,97,108,108,98,97,99,107,83,105,103,110,97,116,117,114,101,76,105,115,116,91,36,48,93,46,97,112,112,108,121,40,116,104,105,115,44,97,114,103,117,109,101,110,116,115,41,41,59,125,0,95,110,98,105,110,100,95,110,101,119,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);var tempDoublePtr=STATICTOP;function _atexit(e,t){__ATEXIT__.unshift({func:e,arg:t})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function _abort(){Module.abort()}function __ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj(){Module.printErr("missing function: _ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj"),abort(-1)}function __decorate(e,t,n,r){var i,o=arguments.length,u=o<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)u=Reflect.decorate(e,t,n,r);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(u=(o<3?i(u):o>3?i(t,n,u):i(t,n))||u);return o>3&&u&&Object.defineProperty(t,n,u),u}function _defineHidden(e){return function(t,n){Object.defineProperty(t,n,{configurable:!1,enumerable:!1,value:e,writable:!0})}}STATICTOP+=16;var _nbind={};function __nbind_free_external(e){_nbind.externalList[e].dereference(e)}function __nbind_reference_external(e){_nbind.externalList[e].reference()}function _llvm_stackrestore(e){var t=_llvm_stacksave,n=t.LLVM_SAVEDSTACKS[e];t.LLVM_SAVEDSTACKS.splice(e,1),Runtime.stackRestore(n)}function __nbind_register_pool(e,t,n,r){_nbind.Pool.pageSize=e,_nbind.Pool.usedPtr=t/4,_nbind.Pool.rootPtr=n,_nbind.Pool.pagePtr=r/4,HEAP32[t/4]=16909060,1==HEAP8[t]&&(_nbind.bigEndian=!0),HEAP32[t/4]=0,_nbind.makeTypeKindTbl=((i={})[1024]=_nbind.PrimitiveType,i[64]=_nbind.Int64Type,i[2048]=_nbind.BindClass,i[3072]=_nbind.BindClassPtr,i[4096]=_nbind.SharedClassPtr,i[5120]=_nbind.ArrayType,i[6144]=_nbind.ArrayType,i[7168]=_nbind.CStringType,i[9216]=_nbind.CallbackType,i[10240]=_nbind.BindType,i),_nbind.makeTypeNameTbl={Buffer:_nbind.BufferType,External:_nbind.ExternalType,Int64:_nbind.Int64Type,_nbind_new:_nbind.CreateValueType,bool:_nbind.BooleanType,"cbFunction &":_nbind.CallbackType,"const cbFunction &":_nbind.CallbackType,"const std::string &":_nbind.StringType,"std::string":_nbind.StringType},Module.toggleLightGC=_nbind.toggleLightGC,_nbind.callUpcast=Module.dynCall_ii;var i,o=_nbind.makeType(_nbind.constructType,{flags:2048,id:0,name:""});o.proto=Module,_nbind.BindClass.list.push(o)}function _emscripten_set_main_loop_timing(e,t){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=t,!Browser.mainLoop.func)return 1;if(0==e)Browser.mainLoop.scheduler=function(){var e=0|Math.max(0,Browser.mainLoop.tickStartTime+t-_emscripten_get_now());setTimeout(Browser.mainLoop.runner,e)},Browser.mainLoop.method="timeout";else if(1==e)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(2==e){if(!window.setImmediate){var n=[];window.addEventListener("message",(function(e){e.source===window&&"setimmediate"===e.data&&(e.stopPropagation(),n.shift()())}),!0),window.setImmediate=function(e){n.push(e),ENVIRONMENT_IS_WORKER?(void 0===Module.setImmediates&&(Module.setImmediates=[]),Module.setImmediates.push(e),window.postMessage({target:"setimmediate"})):window.postMessage("setimmediate","*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_get_now(){abort()}function _emscripten_set_main_loop(e,t,n,r,i){var o;Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=r,o=void 0!==r?function(){Module.dynCall_vi(e,r)}:function(){Module.dynCall_v(e)};var u=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT)if(Browser.mainLoop.queue.length>0){var e=Date.now(),t=Browser.mainLoop.queue.shift();if(t.func(t.arg),Browser.mainLoop.remainingBlockers){var n=Browser.mainLoop.remainingBlockers,r=n%1==0?n-1:Math.floor(n);t.counted?Browser.mainLoop.remainingBlockers=r:(r+=.5,Browser.mainLoop.remainingBlockers=(8*n+r)/9)}if(console.log('main loop blocker "'+t.name+'" took '+(Date.now()-e)+" ms"),Browser.mainLoop.updateStatus(),u1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0?Browser.mainLoop.scheduler():(0==Browser.mainLoop.timingMode&&(Browser.mainLoop.tickStartTime=_emscripten_get_now()),"timeout"===Browser.mainLoop.method&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter(o),u0?_emscripten_set_main_loop_timing(0,1e3/t):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),n)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,t=Browser.mainLoop.timingValue,n=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(n,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,t),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",t=Browser.mainLoop.remainingBlockers,n=Browser.mainLoop.expectedBlockers;t?t=6;){var u=r>>i-6&63;i-=6,n+=t[u]}return 2==i?(n+=t[(3&r)<<4],n+="=="):4==i&&(n+=t[(15&r)<<2],n+="="),n}(e),o(s))},s.src=l,Browser.safeSetTimeout((function(){o(s)}),1e4)}};Module.preloadPlugins.push(t);var n=Module.canvas;n&&(n.requestPointerLock=n.requestPointerLock||n.mozRequestPointerLock||n.webkitRequestPointerLock||n.msRequestPointerLock||function(){},n.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},n.exitPointerLock=n.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",r,!1),document.addEventListener("mozpointerlockchange",r,!1),document.addEventListener("webkitpointerlockchange",r,!1),document.addEventListener("mspointerlockchange",r,!1),Module.elementPointerLock&&n.addEventListener("click",(function(e){!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),e.preventDefault())}),!1))}function r(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}},createContext:function(e,t,n,r){if(t&&Module.ctx&&e==Module.canvas)return Module.ctx;var i,o;if(t){var u={antialias:!1,alpha:!1};if(r)for(var a in r)u[a]=r[a];(o=GL.createContext(e,u))&&(i=GL.getContext(o).GLctx)}else i=e.getContext("2d");return i?(n&&(t||assert("undefined"==typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=i,t&&GL.makeContextCurrent(o),Module.useWebGL=t,Browser.moduleContextCreatedCallbacks.forEach((function(e){e()})),Browser.init()),i):null},destroyContext:function(e,t,n){},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen:function(e,t,n){Browser.lockPointer=e,Browser.resizeCanvas=t,Browser.vrDevice=n,void 0===Browser.lockPointer&&(Browser.lockPointer=!0),void 0===Browser.resizeCanvas&&(Browser.resizeCanvas=!1),void 0===Browser.vrDevice&&(Browser.vrDevice=null);var r=Module.canvas;function i(){Browser.isFullscreen=!1;var e=r.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===e?(r.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},r.exitFullscreen=r.exitFullscreen.bind(document),Browser.lockPointer&&r.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas&&Browser.setFullscreenCanvasSize()):(e.parentNode.insertBefore(r,e),e.parentNode.removeChild(e),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullscreen),Module.onFullscreen&&Module.onFullscreen(Browser.isFullscreen),Browser.updateCanvasDimensions(r)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",i,!1),document.addEventListener("mozfullscreenchange",i,!1),document.addEventListener("webkitfullscreenchange",i,!1),document.addEventListener("MSFullscreenChange",i,!1));var o=document.createElement("div");r.parentNode.insertBefore(o,r),o.appendChild(r),o.requestFullscreen=o.requestFullscreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullscreen?function(){o.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(o.webkitRequestFullScreen?function(){o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),n?o.requestFullscreen({vrDisplay:n}):o.requestFullscreen()},requestFullScreen:function(e,t,n){return Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."),Browser.requestFullScreen=function(e,t,n){return Browser.requestFullscreen(e,t,n)},Browser.requestFullscreen(e,t,n)},nextRAF:0,fakeRequestAnimationFrame:function(e){var t=Date.now();if(0===Browser.nextRAF)Browser.nextRAF=t+1e3/60;else for(;t+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var n=Math.max(Browser.nextRAF-t,0);setTimeout(e,n)},requestAnimationFrame:function(e){"undefined"==typeof window?Browser.fakeRequestAnimationFrame(e):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(e))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach((function(e){e()}))}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}))},safeSetTimeout:function(e,t){return Module.noExitRuntime=!0,setTimeout((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}),t)},safeSetInterval:function(e,t){return Module.noExitRuntime=!0,setInterval((function(){ABORT||Browser.allowAsyncCallbacks&&e()}),t)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var t=0;switch(e.type){case"DOMMouseScroll":t=e.detail;break;case"mousewheel":t=e.wheelDelta;break;case"wheel":t=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return t},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)"mousemove"!=e.type&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),"undefined"!=typeof SDL?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var t=Module.canvas.getBoundingClientRect(),n=Module.canvas.width,r=Module.canvas.height,i=void 0!==window.scrollX?window.scrollX:window.pageXOffset,o=void 0!==window.scrollY?window.scrollY:window.pageYOffset;if("touchstart"===e.type||"touchend"===e.type||"touchmove"===e.type){var u=e.touch;if(void 0===u)return;var a=u.pageX-(i+t.left),l=u.pageY-(o+t.top),s={x:a*=n/t.width,y:l*=r/t.height};if("touchstart"===e.type)Browser.lastTouches[u.identifier]=s,Browser.touches[u.identifier]=s;else if("touchend"===e.type||"touchmove"===e.type){var c=Browser.touches[u.identifier];c||(c=s),Browser.lastTouches[u.identifier]=c,Browser.touches[u.identifier]=s}return}var f=e.pageX-(i+t.left),d=e.pageY-(o+t.top);f*=n/t.width,d*=r/t.height,Browser.mouseMovementX=f-Browser.mouseX,Browser.mouseMovementY=d-Browser.mouseY,Browser.mouseX=f,Browser.mouseY=d}},asyncLoad:function(e,t,n,r){var i=r?"":getUniqueRunDependency("al "+e);Module.readAsync(e,(function(n){assert(n,'Loading data file "'+e+'" failed (no arrayBuffer).'),t(new Uint8Array(n)),i&&removeRunDependency(i)}),(function(t){if(!n)throw'Loading data file "'+e+'" failed.';n()})),i&&addRunDependency(i)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach((function(t){t(e.width,e.height)}))},setCanvasSize:function(e,t,n){var r=Module.canvas;Browser.updateCanvasDimensions(r,e,t),n||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e|=8388608,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e&=-8388609,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,t,n){t&&n?(e.widthNative=t,e.heightNative=n):(t=e.widthNative,n=e.heightNative);var r=t,i=n;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(r/i>2]},getStr:function(){return Pointer_stringify(SYSCALLS.get())},get64:function(){var e=SYSCALLS.get(),t=SYSCALLS.get();return assert(e>=0?0===t:-1===t),e},getZero:function(){assert(0===SYSCALLS.get())}};function ___syscall6(e,t){SYSCALLS.varargs=t;try{var n=SYSCALLS.getStreamFromFD();return FS.close(n),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall54(e,t){SYSCALLS.varargs=t;try{return 0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function _typeModule(e){var t=[[0,1,"X"],[1,1,"const X"],[128,1,"X *"],[256,1,"X &"],[384,1,"X &&"],[512,1,"std::shared_ptr"],[640,1,"std::unique_ptr"],[5120,1,"std::vector"],[6144,2,"std::array"],[9216,-1,"std::function"]];function n(e,t,n,r,i,o){if(1==t){var u=896&r;128!=u&&256!=u&&384!=u||(e="X const")}return(o?n.replace("X",e).replace("Y",i):e.replace("X",n).replace("Y",i)).replace(/([*&]) (?=[*&])/g,"$1")}function r(e,t){var n=t.flags,r=896&n,i=15360&n;return t.name||1024!=i||(1==t.ptrSize?t.name=(16&n?"":(8&n?"un":"")+"signed ")+"char":t.name=(8&n?"u":"")+(32&n?"float":"int")+8*t.ptrSize+"_t"),8!=t.ptrSize||32&n||(i=64),2048==i&&(512==r||640==r?i=4096:r&&(i=3072)),e(i,t)}var i={Type:function(){function e(e){this.id=e.id,this.name=e.name,this.flags=e.flags,this.spec=e}return e.prototype.toString=function(){return this.name},e}(),getComplexType:function e(i,o,u,a,l,s,c,f){void 0===s&&(s="X"),void 0===f&&(f=1);var d=u(i);if(d)return d;var p,h=a(i),v=h.placeholderFlag,m=t[v];c&&m&&(s=n(c[2],c[0],s,m[0],"?",!0)),0==v&&(p="Unbound"),v>=10&&(p="Corrupt"),f>20&&(p="Deeply nested"),p&&function(e,t,n,r,i){throw new Error(e+" type "+n.replace("X",t+"?")+(r?" with flag "+r:"")+" in "+i)}(p,i,s,v,l||"?");var g,y=e(h.paramList[0],o,u,a,l,s,m,f+1),_={flags:m[0],id:i,name:"",paramList:[y]},b=[],w="?";switch(h.placeholderFlag){case 1:g=y.spec;break;case 2:if(1024==(15360&y.flags)&&1==y.spec.ptrSize){_.flags=7168;break}case 3:case 6:case 5:g=y.spec,y.flags;break;case 8:w=""+h.paramList[1],_.paramList.push(h.paramList[1]);break;case 9:for(var E=0,D=h.paramList[1];E>2]=e),e}function _llvm_stacksave(){var e=_llvm_stacksave;return e.LLVM_SAVEDSTACKS||(e.LLVM_SAVEDSTACKS=[]),e.LLVM_SAVEDSTACKS.push(Runtime.stackSave()),e.LLVM_SAVEDSTACKS.length-1}function ___syscall140(e,t){SYSCALLS.varargs=t;try{var n=SYSCALLS.getStreamFromFD(),r=(SYSCALLS.get(),SYSCALLS.get()),i=SYSCALLS.get(),o=SYSCALLS.get(),u=r;return FS.llseek(n,u,o),HEAP32[i>>2]=n.position,n.getdents&&0===u&&0===o&&(n.getdents=null),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall146(e,t){SYSCALLS.varargs=t;try{var n=SYSCALLS.get(),r=SYSCALLS.get(),i=SYSCALLS.get(),o=0;___syscall146.buffer||(___syscall146.buffers=[null,[],[]],___syscall146.printChar=function(e,t){var n=___syscall146.buffers[e];assert(n),0===t||10===t?((1===e?Module.print:Module.printErr)(UTF8ArrayToString(n,0)),n.length=0):n.push(t)});for(var u=0;u>2],l=HEAP32[r+(8*u+4)>>2],s=0;se.pageSize/2||t>e.pageSize-n?_nbind.typeNameTbl.NBind.proto.lalloc(t):(HEAPU32[e.usedPtr]=n+t,e.rootPtr+n)},e.lreset=function(t,n){HEAPU32[e.pagePtr]?_nbind.typeNameTbl.NBind.proto.lreset(t,n):HEAPU32[e.usedPtr]=t},e}();function constructType(e,t){var n=new(10240==e?_nbind.makeTypeNameTbl[t.name]||_nbind.BindType:_nbind.makeTypeKindTbl[e])(t);return typeIdTbl[t.id]=n,_nbind.typeNameTbl[t.name]=n,n}function getType(e){return typeIdTbl[e]}function queryType(e){var t=HEAPU8[e],n=_nbind.structureList[t][1];e/=4,n<0&&(++e,n=HEAPU32[e]+1);var r=Array.prototype.slice.call(HEAPU32.subarray(e+1,e+1+n));return 9==t&&(r=[r[0],r.slice(1)]),{paramList:r,placeholderFlag:t}}function getTypes(e,t){return e.map((function(e){return"number"==typeof e?_nbind.getComplexType(e,constructType,getType,queryType,t):_nbind.typeNameTbl[e]}))}function readTypeIdList(e,t){return Array.prototype.slice.call(HEAPU32,e/4,e/4+t)}function readAsciiString(e){for(var t=e;HEAPU8[t++];);return String.fromCharCode.apply("",HEAPU8.subarray(e,t-1))}function readPolicyList(e){var t={};if(e)for(;;){var n=HEAPU32[e/4];if(!n)break;t[readAsciiString(n)]=!0,e+=4}return t}function getDynCall(e,t){var n={float32_t:"d",float64_t:"d",int64_t:"d",uint64_t:"d",void:"v"},r=e.map((function(e){return n[e.name]||"i"})).join(""),i=Module["dynCall_"+r];if(!i)throw new Error("dynCall_"+r+" not found for "+t+"("+e.map((function(e){return e.name})).join(", ")+")");return i}function addMethod(e,t,n,r){var i=e[t];e.hasOwnProperty(t)&&i?((i.arity||0===i.arity)&&(i=_nbind.makeOverloader(i,i.arity),e[t]=i),i.addMethod(n,r)):(n.arity=r,e[t]=n)}function throwError(e){throw new Error(e)}_nbind.Pool=Pool,_nbind.constructType=constructType,_nbind.getType=getType,_nbind.queryType=queryType,_nbind.getTypes=getTypes,_nbind.readTypeIdList=readTypeIdList,_nbind.readAsciiString=readAsciiString,_nbind.readPolicyList=readPolicyList,_nbind.getDynCall=getDynCall,_nbind.addMethod=addMethod,_nbind.throwError=throwError,_nbind.bigEndian=!1,_a=_typeModule(_typeModule),_nbind.Type=_a.Type,_nbind.makeType=_a.makeType,_nbind.getComplexType=_a.getComplexType,_nbind.structureList=_a.structureList;var BindType=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.heap=HEAPU32,t.ptrSize=4,t}return __extends(t,e),t.prototype.needsWireRead=function(e){return!!this.wireRead||!!this.makeWireRead},t.prototype.needsWireWrite=function(e){return!!this.wireWrite||!!this.makeWireWrite},t}(_nbind.Type);_nbind.BindType=BindType;var PrimitiveType=function(e){function t(t){var n=e.call(this,t)||this,r=32&t.flags?{32:HEAPF32,64:HEAPF64}:8&t.flags?{8:HEAPU8,16:HEAPU16,32:HEAPU32}:{8:HEAP8,16:HEAP16,32:HEAP32};return n.heap=r[8*t.ptrSize],n.ptrSize=t.ptrSize,n}return __extends(t,e),t.prototype.needsWireWrite=function(e){return!!e&&!!e.Strict},t.prototype.makeWireWrite=function(e,t){return t&&t.Strict&&function(e){if("number"==typeof e)return e;throw new Error("Type mismatch")}},t}(BindType);function pushCString(e,t){if(null==e){if(t&&t.Nullable)return 0;throw new Error("Type mismatch")}if(t&&t.Strict){if("string"!=typeof e)throw new Error("Type mismatch")}else e=e.toString();var n=Module.lengthBytesUTF8(e)+1,r=_nbind.Pool.lalloc(n);return Module.stringToUTF8Array(e,HEAPU8,r,n),r}function popCString(e){return 0===e?null:Module.Pointer_stringify(e)}_nbind.PrimitiveType=PrimitiveType,_nbind.pushCString=pushCString,_nbind.popCString=popCString;var CStringType=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.wireRead=popCString,t.wireWrite=pushCString,t.readResources=[_nbind.resources.pool],t.writeResources=[_nbind.resources.pool],t}return __extends(t,e),t.prototype.makeWireWrite=function(e,t){return function(e){return pushCString(e,t)}},t}(BindType);_nbind.CStringType=CStringType;var BooleanType=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.wireRead=function(e){return!!e},t}return __extends(t,e),t.prototype.needsWireWrite=function(e){return!!e&&!!e.Strict},t.prototype.makeWireRead=function(e){return"!!("+e+")"},t.prototype.makeWireWrite=function(e,t){return t&&t.Strict&&function(e){if("boolean"==typeof e)return e;throw new Error("Type mismatch")}||e},t}(BindType);_nbind.BooleanType=BooleanType;var Wrapper=function(){function e(){}return e.prototype.persist=function(){this.__nbindState|=1},e}();function makeBound(e,t){var n=function(e){function n(t,r,i,o){var u=e.call(this)||this;if(!(u instanceof n))return new(Function.prototype.bind.apply(n,Array.prototype.concat.apply([null],arguments)));var a=r,l=i,s=o;if(t!==_nbind.ptrMarker){var c=u.__nbindConstructor.apply(u,arguments);a=4608,s=HEAPU32[c/4],l=HEAPU32[c/4+1]}var f={configurable:!0,enumerable:!1,value:null,writable:!1},d={__nbindFlags:a,__nbindPtr:l};s&&(d.__nbindShared=s,_nbind.mark(u));for(var p=0,h=Object.keys(d);p>=1;var n=_nbind.valueList[e];return _nbind.valueList[e]=firstFreeValue,firstFreeValue=e,n}if(t)return _nbind.popShared(e,t);throw new Error("Invalid value slot "+e)}_nbind.pushValue=pushValue,_nbind.popValue=popValue;var valueBase=0x10000000000000000;function push64(e){return"number"==typeof e?e:4096*pushValue(e)+valueBase}function pop64(e){return e=3?Buffer.from(o):new Buffer(o)).copy(r):getBuffer(r).set(o)}}_nbind.BufferType=BufferType,_nbind.commitBuffer=commitBuffer;var dirtyList=[],gcTimer=0;function sweep(){for(var e=0,t=dirtyList;e>2]=DYNAMIC_BASE,staticSealed=!0,Module.asmGlobalArg={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Float32Array,Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort,assert,enlargeMemory,getTotalMemory,abortOnCannotGrowMemory,invoke_viiiii,invoke_vif,invoke_vid,invoke_fiff,invoke_vi,invoke_vii,invoke_ii,invoke_viddi,invoke_vidd,invoke_iiii,invoke_diii,invoke_di,invoke_iid,invoke_iii,invoke_viiddi,invoke_viiiiii,invoke_dii,invoke_i,invoke_iiiiii,invoke_viiid,invoke_viififi,invoke_viii,invoke_v,invoke_viid,invoke_idd,invoke_viiii,_emscripten_asm_const_iiiii,_emscripten_asm_const_iiidddddd,_emscripten_asm_const_iiiid,__nbind_reference_external,_emscripten_asm_const_iiiiiiii,_removeAccessorPrefix,_typeModule,__nbind_register_pool,__decorate,_llvm_stackrestore,___cxa_atexit,__extends,__nbind_get_value_object,__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,_emscripten_set_main_loop_timing,__nbind_register_primitive,__nbind_register_type,_emscripten_memcpy_big,__nbind_register_function,___setErrNo,__nbind_register_class,__nbind_finish,_abort,_nbind_value,_llvm_stacksave,___syscall54,_defineHidden,_emscripten_set_main_loop,_emscripten_get_now,__nbind_register_callback_signature,_emscripten_asm_const_iiiiii,__nbind_free_external,_emscripten_asm_const_iiii,_emscripten_asm_const_iiididi,___syscall6,_atexit,___syscall140,___syscall146,DYNAMICTOP_PTR,tempDoublePtr,ABORT,STACKTOP,STACK_MAX,cttz_i8,___dso_handle};var asm=function(e,t,n){"use asm";var r=new e.Int8Array(n);var i=new e.Int16Array(n);var o=new e.Int32Array(n);var u=new e.Uint8Array(n);var a=new e.Uint16Array(n);var l=new e.Uint32Array(n);var s=new e.Float32Array(n);var c=new e.Float64Array(n);var f=t.DYNAMICTOP_PTR|0;var d=t.tempDoublePtr|0;var p=t.ABORT|0;var h=t.STACKTOP|0;var v=t.STACK_MAX|0;var m=t.cttz_i8|0;var g=t.___dso_handle|0;var y=0;var _=0;var b=0;var w=0;var E=e.NaN,D=e.Infinity;var S=0,C=0,k=0,T=0,x=0.0;var A=0;var O=e.Math.floor;var P=e.Math.abs;var I=e.Math.sqrt;var N=e.Math.pow;var M=e.Math.cos;var R=e.Math.sin;var F=e.Math.tan;var L=e.Math.acos;var B=e.Math.asin;var j=e.Math.atan;var U=e.Math.atan2;var z=e.Math.exp;var W=e.Math.log;var H=e.Math.ceil;var V=e.Math.imul;var q=e.Math.min;var G=e.Math.max;var $=e.Math.clz32;var Y=e.Math.fround;var K=t.abort;var X=t.assert;var Q=t.enlargeMemory;var J=t.getTotalMemory;var Z=t.abortOnCannotGrowMemory;var ee=t.invoke_viiiii;var te=t.invoke_vif;var ne=t.invoke_vid;var re=t.invoke_fiff;var ie=t.invoke_vi;var oe=t.invoke_vii;var ue=t.invoke_ii;var ae=t.invoke_viddi;var le=t.invoke_vidd;var se=t.invoke_iiii;var ce=t.invoke_diii;var fe=t.invoke_di;var de=t.invoke_iid;var pe=t.invoke_iii;var he=t.invoke_viiddi;var ve=t.invoke_viiiiii;var me=t.invoke_dii;var ge=t.invoke_i;var ye=t.invoke_iiiiii;var _e=t.invoke_viiid;var be=t.invoke_viififi;var we=t.invoke_viii;var Ee=t.invoke_v;var De=t.invoke_viid;var Se=t.invoke_idd;var Ce=t.invoke_viiii;var ke=t._emscripten_asm_const_iiiii;var Te=t._emscripten_asm_const_iiidddddd;var xe=t._emscripten_asm_const_iiiid;var Ae=t.__nbind_reference_external;var Oe=t._emscripten_asm_const_iiiiiiii;var Pe=t._removeAccessorPrefix;var Ie=t._typeModule;var Ne=t.__nbind_register_pool;var Me=t.__decorate;var Re=t._llvm_stackrestore;var Fe=t.___cxa_atexit;var Le=t.__extends;var Be=t.__nbind_get_value_object;var je=t.__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj;var Ue=t._emscripten_set_main_loop_timing;var ze=t.__nbind_register_primitive;var We=t.__nbind_register_type;var He=t._emscripten_memcpy_big;var Ve=t.__nbind_register_function;var qe=t.___setErrNo;var Ge=t.__nbind_register_class;var $e=t.__nbind_finish;var Ye=t._abort;var Ke=t._nbind_value;var Xe=t._llvm_stacksave;var Qe=t.___syscall54;var Je=t._defineHidden;var Ze=t._emscripten_set_main_loop;var et=t._emscripten_get_now;var tt=t.__nbind_register_callback_signature;var nt=t._emscripten_asm_const_iiiiii;var rt=t.__nbind_free_external;var it=t._emscripten_asm_const_iiii;var ot=t._emscripten_asm_const_iiididi;var ut=t.___syscall6;var at=t._atexit;var lt=t.___syscall140;var st=t.___syscall146;var ct=Y(0);const ft=Y(0);function dt(e){e=e|0;var t=0;t=h;h=h+e|0;h=h+15&-16;return t|0}function pt(){return h|0}function ht(e){e=e|0;h=e}function vt(e,t){e=e|0;t=t|0;h=e;v=t}function mt(e,t){e=e|0;t=t|0;if(!y){y=e;_=t}}function gt(e){e=e|0;A=e}function yt(){return A|0}function _t(){var e=0,t=0;ix(8104,8,400)|0;ix(8504,408,540)|0;e=9044;t=e+44|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));r[9088]=0;r[9089]=1;o[2273]=0;o[2274]=948;o[2275]=948;Fe(17,8104,g|0)|0;return}function bt(e){e=e|0;qt(e+948|0);return}function wt(e){e=Y(e);return((Ii(e)|0)&2147483647)>>>0>2139095040|0}function Et(e,t,n){e=e|0;t=t|0;n=n|0;e:do{if(!(o[e+(t<<3)+4>>2]|0)){if((t|2|0)==3?o[e+60>>2]|0:0){e=e+56|0;break}switch(t|0){case 0:case 2:case 4:case 5:{if(o[e+52>>2]|0){e=e+48|0;break e}break}default:{}}if(!(o[e+68>>2]|0)){e=(t|1|0)==5?948:n;break}else{e=e+64|0;break}}else e=e+(t<<3)|0}while(0);return e|0}function Dt(e){e=e|0;var t=0;t=qk(1e3)|0;St(e,(t|0)!=0,2456);o[2276]=(o[2276]|0)+1;ix(t|0,8104,1e3)|0;if(r[e+2>>0]|0){o[t+4>>2]=2;o[t+12>>2]=4}o[t+976>>2]=e;return t|0}function St(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;i=h;h=h+16|0;r=i;if(!t){o[r>>2]=n;Lr(e,5,3197,r)}h=i;return}function Ct(){return Dt(956)|0}function kt(e){e=e|0;var t=0;t=$T(1e3)|0;Tt(t,e);St(o[e+976>>2]|0,1,2456);o[2276]=(o[2276]|0)+1;o[t+944>>2]=0;return t|0}function Tt(e,t){e=e|0;t=t|0;var n=0;ix(e|0,t|0,948)|0;Ur(e+948|0,t+948|0);n=e+960|0;e=t+960|0;t=n+40|0;do{o[n>>2]=o[e>>2];n=n+4|0;e=e+4|0}while((n|0)<(t|0));return}function xt(e){e=e|0;var t=0,n=0,r=0,i=0;t=e+944|0;n=o[t>>2]|0;if(n|0){At(n+948|0,e)|0;o[t>>2]=0}n=Ot(e)|0;if(n|0){t=0;do{o[(Pt(e,t)|0)+944>>2]=0;t=t+1|0}while((t|0)!=(n|0))}n=e+948|0;r=o[n>>2]|0;i=e+952|0;t=o[i>>2]|0;if((t|0)!=(r|0))o[i>>2]=t+(~((t+-4-r|0)>>>2)<<2);It(n);Gk(e);o[2276]=(o[2276]|0)+-1;return}function At(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0;r=o[e>>2]|0;l=e+4|0;n=o[l>>2]|0;u=n;e:do{if((r|0)==(n|0)){i=r;a=4}else{e=r;while(1){if((o[e>>2]|0)==(t|0)){i=e;a=4;break e}e=e+4|0;if((e|0)==(n|0)){e=0;break}}}}while(0);if((a|0)==4)if((i|0)!=(n|0)){r=i+4|0;e=u-r|0;t=e>>2;if(t){sx(i|0,r|0,e|0)|0;n=o[l>>2]|0}e=i+(t<<2)|0;if((n|0)==(e|0))e=1;else{o[l>>2]=n+(~((n+-4-e|0)>>>2)<<2);e=1}}else e=0;return e|0}function Ot(e){e=e|0;return(o[e+952>>2]|0)-(o[e+948>>2]|0)>>2|0}function Pt(e,t){e=e|0;t=t|0;var n=0;n=o[e+948>>2]|0;if((o[e+952>>2]|0)-n>>2>>>0>t>>>0)e=o[n+(t<<2)>>2]|0;else e=0;return e|0}function It(e){e=e|0;var t=0,n=0,r=0,i=0;r=h;h=h+32|0;t=r;i=o[e>>2]|0;n=(o[e+4>>2]|0)-i|0;if(((o[e+8>>2]|0)-i|0)>>>0>n>>>0){i=n>>2;Ni(t,i,i,e+8|0);Mi(e,t);Ri(t)}h=r;return}function Nt(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0;c=Ot(e)|0;do{if(c|0){if((o[(Pt(e,0)|0)+944>>2]|0)==(e|0)){if(!(At(e+948|0,t)|0))break;ix(t+400|0,8504,540)|0;o[t+944>>2]=0;Vt(e);break}a=o[(o[e+976>>2]|0)+12>>2]|0;l=e+948|0;s=(a|0)==0;n=0;u=0;do{r=o[(o[l>>2]|0)+(u<<2)>>2]|0;if((r|0)==(t|0))Vt(e);else{i=kt(r)|0;o[(o[l>>2]|0)+(n<<2)>>2]=i;o[i+944>>2]=e;if(!s)RA[a&15](r,i,e,n);n=n+1|0}u=u+1|0}while((u|0)!=(c|0));if(n>>>0>>0){s=e+948|0;l=e+952|0;a=n;n=o[l>>2]|0;do{u=(o[s>>2]|0)+(a<<2)|0;r=u+4|0;i=n-r|0;t=i>>2;if(!t)i=n;else{sx(u|0,r|0,i|0)|0;n=o[l>>2]|0;i=n}r=u+(t<<2)|0;if((i|0)!=(r|0)){n=i+(~((i+-4-r|0)>>>2)<<2)|0;o[l>>2]=n}a=a+1|0}while((a|0)!=(c|0))}}}while(0);return}function Mt(e){e=e|0;var t=0,n=0,i=0,u=0;Rt(e,(Ot(e)|0)==0,2491);Rt(e,(o[e+944>>2]|0)==0,2545);t=e+948|0;n=o[t>>2]|0;i=e+952|0;u=o[i>>2]|0;if((u|0)!=(n|0))o[i>>2]=u+(~((u+-4-n|0)>>>2)<<2);It(t);t=e+976|0;n=o[t>>2]|0;ix(e|0,8104,1e3)|0;if(r[n+2>>0]|0){o[e+4>>2]=2;o[e+12>>2]=4}o[t>>2]=n;return}function Rt(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;i=h;h=h+16|0;r=i;if(!t){o[r>>2]=n;Cr(e,5,3197,r)}h=i;return}function Ft(){return o[2276]|0}function Lt(){var e=0;e=qk(20)|0;Bt((e|0)!=0,2592);o[2277]=(o[2277]|0)+1;o[e>>2]=o[239];o[e+4>>2]=o[240];o[e+8>>2]=o[241];o[e+12>>2]=o[242];o[e+16>>2]=o[243];return e|0}function Bt(e,t){e=e|0;t=t|0;var n=0,r=0;r=h;h=h+16|0;n=r;if(!e){o[n>>2]=t;Cr(0,5,3197,n)}h=r;return}function jt(e){e=e|0;Gk(e);o[2277]=(o[2277]|0)+-1;return}function Ut(e,t){e=e|0;t=t|0;var n=0;if(!t){n=0;t=0}else{Rt(e,(Ot(e)|0)==0,2629);n=1}o[e+964>>2]=t;o[e+988>>2]=n;return}function zt(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;u=r+8|0;i=r+4|0;a=r;o[i>>2]=t;Rt(e,(o[t+944>>2]|0)==0,2709);Rt(e,(o[e+964>>2]|0)==0,2763);Wt(e);t=e+948|0;o[a>>2]=(o[t>>2]|0)+(n<<2);o[u>>2]=o[a>>2];Ht(t,u,i)|0;o[(o[i>>2]|0)+944>>2]=e;Vt(e);h=r;return}function Wt(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0;n=Ot(e)|0;if(n|0?(o[(Pt(e,0)|0)+944>>2]|0)!=(e|0):0){r=o[(o[e+976>>2]|0)+12>>2]|0;i=e+948|0;u=(r|0)==0;t=0;do{a=o[(o[i>>2]|0)+(t<<2)>>2]|0;l=kt(a)|0;o[(o[i>>2]|0)+(t<<2)>>2]=l;o[l+944>>2]=e;if(!u)RA[r&15](a,l,e,t);t=t+1|0}while((t|0)!=(n|0))}return}function Ht(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,v=0,m=0,g=0,y=0,_=0;y=h;h=h+64|0;d=y+52|0;l=y+48|0;p=y+28|0;v=y+24|0;m=y+20|0;g=y;r=o[e>>2]|0;u=r;t=r+((o[t>>2]|0)-u>>2<<2)|0;r=e+4|0;i=o[r>>2]|0;a=e+8|0;do{if(i>>>0<(o[a>>2]|0)>>>0){if((t|0)==(i|0)){o[t>>2]=o[n>>2];o[r>>2]=(o[r>>2]|0)+4;break}Fi(e,t,i,t+4|0);if(t>>>0<=n>>>0)n=(o[r>>2]|0)>>>0>n>>>0?n+4|0:n;o[t>>2]=o[n>>2]}else{r=(i-u>>2)+1|0;i=Hr(e)|0;if(i>>>0>>0)UT(e);f=o[e>>2]|0;c=(o[a>>2]|0)-f|0;u=c>>1;Ni(g,c>>2>>>0>>1>>>0?u>>>0>>0?r:u:i,t-f>>2,e+8|0);f=g+8|0;r=o[f>>2]|0;u=g+12|0;c=o[u>>2]|0;a=c;s=r;do{if((r|0)==(c|0)){c=g+4|0;r=o[c>>2]|0;_=o[g>>2]|0;i=_;if(r>>>0<=_>>>0){r=a-i>>1;r=(r|0)==0?1:r;Ni(p,r,r>>>2,o[g+16>>2]|0);o[v>>2]=o[c>>2];o[m>>2]=o[f>>2];o[l>>2]=o[v>>2];o[d>>2]=o[m>>2];Bi(p,l,d);r=o[g>>2]|0;o[g>>2]=o[p>>2];o[p>>2]=r;r=p+4|0;_=o[c>>2]|0;o[c>>2]=o[r>>2];o[r>>2]=_;r=p+8|0;_=o[f>>2]|0;o[f>>2]=o[r>>2];o[r>>2]=_;r=p+12|0;_=o[u>>2]|0;o[u>>2]=o[r>>2];o[r>>2]=_;Ri(p);r=o[f>>2]|0;break}u=r;a=((u-i>>2)+1|0)/-2|0;l=r+(a<<2)|0;i=s-u|0;u=i>>2;if(u){sx(l|0,r|0,i|0)|0;r=o[c>>2]|0}_=l+(u<<2)|0;o[f>>2]=_;o[c>>2]=r+(a<<2);r=_}}while(0);o[r>>2]=o[n>>2];o[f>>2]=(o[f>>2]|0)+4;t=Li(e,g,t)|0;Ri(g)}}while(0);h=y;return t|0}function Vt(e){e=e|0;var t=0;do{t=e+984|0;if(r[t>>0]|0)break;r[t>>0]=1;s[e+504>>2]=Y(E);e=o[e+944>>2]|0}while((e|0)!=0);return}function qt(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-4-r|0)>>>2)<<2);KT(n)}return}function Gt(e){e=e|0;return o[e+944>>2]|0}function $t(e){e=e|0;Rt(e,(o[e+964>>2]|0)!=0,2832);Vt(e);return}function Yt(e){e=e|0;return(r[e+984>>0]|0)!=0|0}function Kt(e,t){e=e|0;t=t|0;if(iT(e,t,400)|0){ix(e|0,t|0,400)|0;Vt(e)}return}function Xt(e){e=e|0;var t=ft;t=Y(s[e+44>>2]);e=wt(t)|0;return Y(e?Y(0.0):t)}function Qt(e){e=e|0;var t=ft;t=Y(s[e+48>>2]);if(wt(t)|0)t=r[(o[e+976>>2]|0)+2>>0]|0?Y(1.0):Y(0.0);return Y(t)}function Jt(e,t){e=e|0;t=t|0;o[e+980>>2]=t;return}function Zt(e){e=e|0;return o[e+980>>2]|0}function en(e,t){e=e|0;t=t|0;var n=0;n=e+4|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function tn(e){e=e|0;return o[e+4>>2]|0}function nn(e,t){e=e|0;t=t|0;var n=0;n=e+8|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function rn(e){e=e|0;return o[e+8>>2]|0}function on(e,t){e=e|0;t=t|0;var n=0;n=e+12|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function un(e){e=e|0;return o[e+12>>2]|0}function an(e,t){e=e|0;t=t|0;var n=0;n=e+16|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function ln(e){e=e|0;return o[e+16>>2]|0}function sn(e,t){e=e|0;t=t|0;var n=0;n=e+20|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function cn(e){e=e|0;return o[e+20>>2]|0}function fn(e,t){e=e|0;t=t|0;var n=0;n=e+24|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function dn(e){e=e|0;return o[e+24>>2]|0}function pn(e,t){e=e|0;t=t|0;var n=0;n=e+28|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function hn(e){e=e|0;return o[e+28>>2]|0}function vn(e,t){e=e|0;t=t|0;var n=0;n=e+32|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function mn(e){e=e|0;return o[e+32>>2]|0}function gn(e,t){e=e|0;t=t|0;var n=0;n=e+36|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function yn(e){e=e|0;return o[e+36>>2]|0}function _n(e,t){e=e|0;t=Y(t);var n=0;n=e+40|0;if(Y(s[n>>2])!=t){s[n>>2]=t;Vt(e)}return}function bn(e,t){e=e|0;t=Y(t);var n=0;n=e+44|0;if(Y(s[n>>2])!=t){s[n>>2]=t;Vt(e)}return}function wn(e,t){e=e|0;t=Y(t);var n=0;n=e+48|0;if(Y(s[n>>2])!=t){s[n>>2]=t;Vt(e)}return}function En(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+52|0;i=e+56|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Dn(e,t){e=e|0;t=Y(t);var n=0,r=0;r=e+52|0;n=e+56|0;if(!(!(Y(s[r>>2])!=t)?(o[n>>2]|0)==2:0)){s[r>>2]=t;r=wt(t)|0;o[n>>2]=r?3:2;Vt(e)}return}function Sn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+52|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function Cn(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=(u^1)&1;i=e+132+(t<<3)|0;t=e+132+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function kn(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=u?0:2;i=e+132+(t<<3)|0;t=e+132+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function Tn(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=t+132+(n<<3)|0;t=o[r+4>>2]|0;n=e;o[n>>2]=o[r>>2];o[n+4>>2]=t;return}function xn(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=(u^1)&1;i=e+60+(t<<3)|0;t=e+60+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function An(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=u?0:2;i=e+60+(t<<3)|0;t=e+60+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function On(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=t+60+(n<<3)|0;t=o[r+4>>2]|0;n=e;o[n>>2]=o[r>>2];o[n+4>>2]=t;return}function Pn(e,t){e=e|0;t=t|0;var n=0;n=e+60+(t<<3)+4|0;if((o[n>>2]|0)!=3){s[e+60+(t<<3)>>2]=Y(E);o[n>>2]=3;Vt(e)}return}function In(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=(u^1)&1;i=e+204+(t<<3)|0;t=e+204+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function Nn(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=u?0:2;i=e+204+(t<<3)|0;t=e+204+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function Mn(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=t+204+(n<<3)|0;t=o[r+4>>2]|0;n=e;o[n>>2]=o[r>>2];o[n+4>>2]=t;return}function Rn(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=(u^1)&1;i=e+276+(t<<3)|0;t=e+276+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function Fn(e,t){e=e|0;t=t|0;return Y(s[e+276+(t<<3)>>2])}function Ln(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+348|0;i=e+352|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Bn(e,t){e=e|0;t=Y(t);var n=0,r=0;r=e+348|0;n=e+352|0;if(!(!(Y(s[r>>2])!=t)?(o[n>>2]|0)==2:0)){s[r>>2]=t;r=wt(t)|0;o[n>>2]=r?3:2;Vt(e)}return}function jn(e){e=e|0;var t=0;t=e+352|0;if((o[t>>2]|0)!=3){s[e+348>>2]=Y(E);o[t>>2]=3;Vt(e)}return}function Un(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+348|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function zn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+356|0;i=e+360|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Wn(e,t){e=e|0;t=Y(t);var n=0,r=0;r=e+356|0;n=e+360|0;if(!(!(Y(s[r>>2])!=t)?(o[n>>2]|0)==2:0)){s[r>>2]=t;r=wt(t)|0;o[n>>2]=r?3:2;Vt(e)}return}function Hn(e){e=e|0;var t=0;t=e+360|0;if((o[t>>2]|0)!=3){s[e+356>>2]=Y(E);o[t>>2]=3;Vt(e)}return}function Vn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+356|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function qn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+364|0;i=e+368|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Gn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=u?0:2;r=e+364|0;i=e+368|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function $n(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+364|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function Yn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+372|0;i=e+376|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Kn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=u?0:2;r=e+372|0;i=e+376|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Xn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+372|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function Qn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+380|0;i=e+384|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Jn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=u?0:2;r=e+380|0;i=e+384|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Zn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+380|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function er(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+388|0;i=e+392|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function tr(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=u?0:2;r=e+388|0;i=e+392|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function nr(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+388|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function rr(e,t){e=e|0;t=Y(t);var n=0;n=e+396|0;if(Y(s[n>>2])!=t){s[n>>2]=t;Vt(e)}return}function ir(e){e=e|0;return Y(s[e+396>>2])}function or(e){e=e|0;return Y(s[e+400>>2])}function ur(e){e=e|0;return Y(s[e+404>>2])}function ar(e){e=e|0;return Y(s[e+408>>2])}function lr(e){e=e|0;return Y(s[e+412>>2])}function sr(e){e=e|0;return Y(s[e+416>>2])}function cr(e){e=e|0;return Y(s[e+420>>2])}function fr(e,t){e=e|0;t=t|0;Rt(e,(t|0)<6,2918);switch(t|0){case 0:{t=(o[e+496>>2]|0)==2?5:4;break}case 2:{t=(o[e+496>>2]|0)==2?4:5;break}default:{}}return Y(s[e+424+(t<<2)>>2])}function dr(e,t){e=e|0;t=t|0;Rt(e,(t|0)<6,2918);switch(t|0){case 0:{t=(o[e+496>>2]|0)==2?5:4;break}case 2:{t=(o[e+496>>2]|0)==2?4:5;break}default:{}}return Y(s[e+448+(t<<2)>>2])}function pr(e,t){e=e|0;t=t|0;Rt(e,(t|0)<6,2918);switch(t|0){case 0:{t=(o[e+496>>2]|0)==2?5:4;break}case 2:{t=(o[e+496>>2]|0)==2?4:5;break}default:{}}return Y(s[e+472+(t<<2)>>2])}function hr(e,t){e=e|0;t=t|0;var n=0,r=ft;n=o[e+4>>2]|0;if((n|0)==(o[t+4>>2]|0)){if(!n)e=1;else{r=Y(s[e>>2]);e=Y(P(Y(r-Y(s[t>>2]))))>2]=0;o[i+4>>2]=0;o[i+8>>2]=0;je(i|0,e|0,t|0,0);Cr(e,3,(r[i+11>>0]|0)<0?o[i>>2]|0:i,n);XT(i);h=n;return}function yr(e,t,n,r){e=Y(e);t=Y(t);n=n|0;r=r|0;var i=ft;e=Y(e*t);i=Y(LT(e,Y(1.0)));do{if(!(vr(i,Y(0.0))|0)){e=Y(e-i);if(vr(i,Y(1.0))|0){e=Y(e+Y(1.0));break}if(n){e=Y(e+Y(1.0));break}if(!r){if(i>Y(.5))i=Y(1.0);else{r=vr(i,Y(.5))|0;i=r?Y(1.0):Y(0.0)}e=Y(e+i)}}else e=Y(e-i)}while(0);return Y(e/t)}function _r(e,t,n,r,i,o,u,a,l,c,f,d,p){e=e|0;t=Y(t);n=n|0;r=Y(r);i=i|0;o=Y(o);u=u|0;a=Y(a);l=Y(l);c=Y(c);f=Y(f);d=Y(d);p=p|0;var h=0,v=ft,m=ft,g=ft,y=ft,_=ft,b=ft;if(l>2]),v!=Y(0.0)):0){g=Y(yr(t,v,0,0));y=Y(yr(r,v,0,0));m=Y(yr(o,v,0,0));v=Y(yr(a,v,0,0))}else{m=o;g=t;v=a;y=r}if((i|0)==(e|0))h=vr(m,g)|0;else h=0;if((u|0)==(n|0))p=vr(v,y)|0;else p=0;if((!h?(_=Y(t-f),!(br(e,_,l)|0)):0)?!(wr(e,_,i,l)|0):0)h=Er(e,_,i,o,l)|0;else h=1;if((!p?(b=Y(r-d),!(br(n,b,c)|0)):0)?!(wr(n,b,u,c)|0):0)p=Er(n,b,u,a,c)|0;else p=1;p=h&p}return p|0}function br(e,t,n){e=e|0;t=Y(t);n=Y(n);if((e|0)==1)e=vr(t,n)|0;else e=0;return e|0}function wr(e,t,n,r){e=e|0;t=Y(t);n=n|0;r=Y(r);if((e|0)==2&(n|0)==0){if(!(t>=r))e=vr(t,r)|0;else e=1}else e=0;return e|0}function Er(e,t,n,r,i){e=e|0;t=Y(t);n=n|0;r=Y(r);i=Y(i);if((e|0)==2&(n|0)==2&r>t){if(!(i<=t))e=vr(t,i)|0;else e=1}else e=0;return e|0}function Dr(e,t,n,i,u,a,l,f,d,p,v){e=e|0;t=Y(t);n=Y(n);i=i|0;u=u|0;a=a|0;l=Y(l);f=Y(f);d=d|0;p=p|0;v=v|0;var m=0,g=0,y=0,_=0,b=ft,w=ft,E=0,D=0,S=0,C=0,k=0,T=0,x=0,A=0,O=0,P=0,I=0,N=ft,M=ft,R=ft,F=0.0,L=0.0;I=h;h=h+160|0;A=I+152|0;x=I+120|0;T=I+104|0;S=I+72|0;_=I+56|0;k=I+8|0;D=I;C=(o[2279]|0)+1|0;o[2279]=C;O=e+984|0;if((r[O>>0]|0)!=0?(o[e+512>>2]|0)!=(o[2278]|0):0)E=4;else if((o[e+516>>2]|0)==(i|0))P=0;else E=4;if((E|0)==4){o[e+520>>2]=0;o[e+924>>2]=-1;o[e+928>>2]=-1;s[e+932>>2]=Y(-1.0);s[e+936>>2]=Y(-1.0);P=1}e:do{if(!(o[e+964>>2]|0)){if(d){m=e+916|0;if(!(vr(Y(s[m>>2]),t)|0)){E=21;break}if(!(vr(Y(s[e+920>>2]),n)|0)){E=21;break}if((o[e+924>>2]|0)!=(u|0)){E=21;break}m=(o[e+928>>2]|0)==(a|0)?m:0;E=22;break}y=o[e+520>>2]|0;if(!y)E=21;else{g=0;while(1){m=e+524+(g*24|0)|0;if(((vr(Y(s[m>>2]),t)|0?vr(Y(s[e+524+(g*24|0)+4>>2]),n)|0:0)?(o[e+524+(g*24|0)+8>>2]|0)==(u|0):0)?(o[e+524+(g*24|0)+12>>2]|0)==(a|0):0){E=22;break e}g=g+1|0;if(g>>>0>=y>>>0){E=21;break}}}}else{b=Y(Sr(e,2,l));w=Y(Sr(e,0,l));m=e+916|0;R=Y(s[m>>2]);M=Y(s[e+920>>2]);N=Y(s[e+932>>2]);if(!(_r(u,t,a,n,o[e+924>>2]|0,R,o[e+928>>2]|0,M,N,Y(s[e+936>>2]),b,w,v)|0)){y=o[e+520>>2]|0;if(!y)E=21;else{g=0;while(1){m=e+524+(g*24|0)|0;N=Y(s[m>>2]);M=Y(s[e+524+(g*24|0)+4>>2]);R=Y(s[e+524+(g*24|0)+16>>2]);if(_r(u,t,a,n,o[e+524+(g*24|0)+8>>2]|0,N,o[e+524+(g*24|0)+12>>2]|0,M,R,Y(s[e+524+(g*24|0)+20>>2]),b,w,v)|0){E=22;break e}g=g+1|0;if(g>>>0>=y>>>0){E=21;break}}}}else E=22}}while(0);do{if((E|0)==21){if(!(r[11697]|0)){m=0;E=31}else{m=0;E=28}}else if((E|0)==22){g=(r[11697]|0)!=0;if(!((m|0)!=0&(P^1)))if(g){E=28;break}else{E=31;break}_=m+16|0;o[e+908>>2]=o[_>>2];y=m+20|0;o[e+912>>2]=o[y>>2];if(!((r[11698]|0)==0|g^1)){o[D>>2]=kr(C)|0;o[D+4>>2]=C;Cr(e,4,2972,D);g=o[e+972>>2]|0;if(g|0)hA[g&127](e);u=Tr(u,d)|0;a=Tr(a,d)|0;L=+Y(s[_>>2]);F=+Y(s[y>>2]);o[k>>2]=u;o[k+4>>2]=a;c[k+8>>3]=+t;c[k+16>>3]=+n;c[k+24>>3]=L;c[k+32>>3]=F;o[k+40>>2]=p;Cr(e,4,2989,k)}}}while(0);if((E|0)==28){g=kr(C)|0;o[_>>2]=g;o[_+4>>2]=C;o[_+8>>2]=P?3047:11699;Cr(e,4,3038,_);g=o[e+972>>2]|0;if(g|0)hA[g&127](e);k=Tr(u,d)|0;E=Tr(a,d)|0;o[S>>2]=k;o[S+4>>2]=E;c[S+8>>3]=+t;c[S+16>>3]=+n;o[S+24>>2]=p;Cr(e,4,3049,S);E=31}if((E|0)==31){xr(e,t,n,i,u,a,l,f,d,v);if(r[11697]|0){g=o[2279]|0;k=kr(g)|0;o[T>>2]=k;o[T+4>>2]=g;o[T+8>>2]=P?3047:11699;Cr(e,4,3083,T);g=o[e+972>>2]|0;if(g|0)hA[g&127](e);k=Tr(u,d)|0;T=Tr(a,d)|0;F=+Y(s[e+908>>2]);L=+Y(s[e+912>>2]);o[x>>2]=k;o[x+4>>2]=T;c[x+8>>3]=F;c[x+16>>3]=L;o[x+24>>2]=p;Cr(e,4,3092,x)}o[e+516>>2]=i;if(!m){g=e+520|0;m=o[g>>2]|0;if((m|0)==16){if(r[11697]|0)Cr(e,4,3124,A);o[g>>2]=0;m=0}if(d)m=e+916|0;else{o[g>>2]=m+1;m=e+524+(m*24|0)|0}s[m>>2]=t;s[m+4>>2]=n;o[m+8>>2]=u;o[m+12>>2]=a;o[m+16>>2]=o[e+908>>2];o[m+20>>2]=o[e+912>>2];m=0}}if(d){o[e+416>>2]=o[e+908>>2];o[e+420>>2]=o[e+912>>2];r[e+985>>0]=1;r[O>>0]=0}o[2279]=(o[2279]|0)+-1;o[e+512>>2]=o[2278];h=I;return P|(m|0)==0|0}function Sr(e,t,n){e=e|0;t=t|0;n=Y(n);var r=ft;r=Y(Vr(e,t,n));return Y(r+Y(qr(e,t,n)))}function Cr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=h;h=h+16|0;i=u;o[i>>2]=r;if(!e)r=0;else r=o[e+976>>2]|0;Br(r,e,t,n,i);h=u;return}function kr(e){e=e|0;return(e>>>0>60?3201:3201+(60-e)|0)|0}function Tr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+32|0;n=i+12|0;r=i;o[n>>2]=o[254];o[n+4>>2]=o[255];o[n+8>>2]=o[256];o[r>>2]=o[257];o[r+4>>2]=o[258];o[r+8>>2]=o[259];if((e|0)>2)e=11699;else e=o[(t?r:n)+(e<<2)>>2]|0;h=i;return e|0}function xr(e,t,n,i,a,l,c,f,p,v){e=e|0;t=Y(t);n=Y(n);i=i|0;a=a|0;l=l|0;c=Y(c);f=Y(f);p=p|0;v=v|0;var m=0,g=0,y=0,_=0,b=ft,w=ft,E=ft,D=ft,S=ft,C=ft,k=ft,T=0,x=0,A=0,O=ft,P=ft,I=0,N=ft,M=0,R=0,F=0,L=0,B=0,j=0,U=0,z=0,W=0,H=0,V=0,q=0,G=0,$=0,K=0,X=0,Q=0,J=0,Z=ft,ee=ft,te=ft,ne=ft,re=ft,ie=0,oe=0,ue=0,ae=0,le=0,se=ft,ce=ft,fe=ft,de=ft,pe=ft,he=ft,ve=0,me=ft,ge=ft,ye=ft,_e=ft,be=ft,we=ft,Ee=0,De=0,Se=ft,Ce=ft,ke=0,Te=0,xe=0,Ae=0,Oe=ft,Pe=0,Ie=0,Ne=0,Me=0,Re=0,Fe=0,Le=0,Be=ft,je=0,Ue=0;Le=h;h=h+16|0;ie=Le+12|0;oe=Le+8|0;ue=Le+4|0;ae=Le;Rt(e,(a|0)==0|(wt(t)|0)^1,3326);Rt(e,(l|0)==0|(wt(n)|0)^1,3406);Ie=Yr(e,i)|0;o[e+496>>2]=Ie;Re=Kr(2,Ie)|0;Fe=Kr(0,Ie)|0;s[e+440>>2]=Y(Vr(e,Re,c));s[e+444>>2]=Y(qr(e,Re,c));s[e+428>>2]=Y(Vr(e,Fe,c));s[e+436>>2]=Y(qr(e,Fe,c));s[e+464>>2]=Y(Xr(e,Re));s[e+468>>2]=Y(Qr(e,Re));s[e+452>>2]=Y(Xr(e,Fe));s[e+460>>2]=Y(Qr(e,Fe));s[e+488>>2]=Y(Jr(e,Re,c));s[e+492>>2]=Y(Zr(e,Re,c));s[e+476>>2]=Y(Jr(e,Fe,c));s[e+484>>2]=Y(Zr(e,Fe,c));do{if(!(o[e+964>>2]|0)){Ne=e+948|0;Me=(o[e+952>>2]|0)-(o[Ne>>2]|0)>>2;if(!Me){ti(e,t,n,a,l,c,f);break}if(!p?ni(e,t,n,a,l,c,f)|0:0)break;Wt(e);X=e+508|0;r[X>>0]=0;Re=Kr(o[e+4>>2]|0,Ie)|0;Fe=ri(Re,Ie)|0;Pe=Gr(Re)|0;Q=o[e+8>>2]|0;Te=e+28|0;J=(o[Te>>2]|0)!=0;be=Pe?c:f;Se=Pe?f:c;Z=Y(ii(e,Re,c));ee=Y(oi(e,Re,c));b=Y(ii(e,Fe,c));we=Y(ui(e,Re,c));Ce=Y(ui(e,Fe,c));A=Pe?a:l;ke=Pe?l:a;Oe=Pe?we:Ce;S=Pe?Ce:we;_e=Y(Sr(e,2,c));D=Y(Sr(e,0,c));w=Y(Y(Nr(e+364|0,c))-Oe);E=Y(Y(Nr(e+380|0,c))-Oe);C=Y(Y(Nr(e+372|0,f))-S);k=Y(Y(Nr(e+388|0,f))-S);te=Pe?w:C;ne=Pe?E:k;_e=Y(t-_e);t=Y(_e-Oe);if(wt(t)|0)Oe=t;else Oe=Y(NT(Y(RT(t,E)),w));ge=Y(n-D);t=Y(ge-S);if(wt(t)|0)ye=t;else ye=Y(NT(Y(RT(t,k)),C));w=Pe?Oe:ye;me=Pe?ye:Oe;e:do{if((A|0)==1){i=0;g=0;while(1){m=Pt(e,g)|0;if(!i){if(Y(li(m))>Y(0.0)?Y(si(m))>Y(0.0):0)i=m;else i=0}else if(ai(m)|0){_=0;break e}g=g+1|0;if(g>>>0>=Me>>>0){_=i;break}}}else _=0}while(0);T=_+500|0;x=_+504|0;i=0;m=0;t=Y(0.0);y=0;do{g=o[(o[Ne>>2]|0)+(y<<2)>>2]|0;if((o[g+36>>2]|0)==1){ci(g);r[g+985>>0]=1;r[g+984>>0]=0}else{Pr(g);if(p)Mr(g,Yr(g,Ie)|0,w,me,Oe);do{if((o[g+24>>2]|0)!=1){if((g|0)==(_|0)){o[T>>2]=o[2278];s[x>>2]=Y(0.0);break}else{fi(e,g,Oe,a,ye,Oe,ye,l,Ie,v);break}}else{if(m|0)o[m+960>>2]=g;o[g+960>>2]=0;m=g;i=(i|0)==0?g:i}}while(0);he=Y(s[g+504>>2]);t=Y(t+Y(he+Y(Sr(g,Re,Oe))))}y=y+1|0}while((y|0)!=(Me|0));F=t>w;ve=J&((A|0)==2&F)?1:A;M=(ke|0)==1;B=M&(p^1);j=(ve|0)==1;U=(ve|0)==2;z=976+(Re<<2)|0;W=(ke|2|0)==2;$=M&(J^1);H=1040+(Fe<<2)|0;V=1040+(Re<<2)|0;q=976+(Fe<<2)|0;G=(ke|0)!=1;F=J&((A|0)!=0&F);R=e+976|0;M=M^1;t=w;I=0;L=0;he=Y(0.0);re=Y(0.0);while(1){e:do{if(I>>>0>>0){x=o[Ne>>2]|0;y=0;k=Y(0.0);C=Y(0.0);E=Y(0.0);w=Y(0.0);g=0;m=0;_=I;while(1){T=o[x+(_<<2)>>2]|0;if((o[T+36>>2]|0)!=1?(o[T+940>>2]=L,(o[T+24>>2]|0)!=1):0){D=Y(Sr(T,Re,Oe));K=o[z>>2]|0;n=Y(Nr(T+380+(K<<3)|0,be));S=Y(s[T+504>>2]);n=Y(RT(n,S));n=Y(NT(Y(Nr(T+364+(K<<3)|0,be)),n));if(J&(y|0)!=0&Y(D+Y(C+n))>t){l=y;D=k;A=_;break e}D=Y(D+n);n=Y(C+D);D=Y(k+D);if(ai(T)|0){E=Y(E+Y(li(T)));w=Y(w-Y(S*Y(si(T))))}if(m|0)o[m+960>>2]=T;o[T+960>>2]=0;y=y+1|0;m=T;g=(g|0)==0?T:g}else{D=k;n=C}_=_+1|0;if(_>>>0>>0){k=D;C=n}else{l=y;A=_;break}}}else{l=0;D=Y(0.0);E=Y(0.0);w=Y(0.0);g=0;A=I}}while(0);K=E>Y(0.0)&EY(0.0)&wne&((wt(ne)|0)^1))){if(!(r[(o[R>>2]|0)+3>>0]|0)){if(!(O==Y(0.0))?!(Y(li(e))==Y(0.0)):0){K=53;break}t=D;K=53}else K=51}else{t=ne;K=51}}else{t=te;K=51}}else K=51}while(0);if((K|0)==51){K=0;if(wt(t)|0)K=53;else{P=Y(t-D);N=t}}if((K|0)==53){K=0;if(D>2]|0;_=PY(0.0);C=Y(P/O);E=Y(0.0);D=Y(0.0);t=Y(0.0);m=g;do{n=Y(Nr(m+380+(y<<3)|0,be));w=Y(Nr(m+364+(y<<3)|0,be));w=Y(RT(n,Y(NT(w,Y(s[m+504>>2])))));if(_){n=Y(w*Y(si(m)));if(n!=Y(-0.0)?(Be=Y(w-Y(S*n)),se=Y(di(m,Re,Be,N,Oe)),Be!=se):0){E=Y(E-Y(se-w));t=Y(t+n)}}else if((T?(ce=Y(li(m)),ce!=Y(0.0)):0)?(Be=Y(w+Y(C*ce)),fe=Y(di(m,Re,Be,N,Oe)),Be!=fe):0){E=Y(E-Y(fe-w));D=Y(D-ce)}m=o[m+960>>2]|0}while((m|0)!=0);t=Y(k+t);w=Y(P+E);if(!le){S=Y(O+D);_=o[z>>2]|0;T=wY(0.0);S=Y(w/S);t=Y(0.0);do{Be=Y(Nr(g+380+(_<<3)|0,be));E=Y(Nr(g+364+(_<<3)|0,be));E=Y(RT(Be,Y(NT(E,Y(s[g+504>>2])))));if(T){Be=Y(E*Y(si(g)));w=Y(-Be);if(Be!=Y(-0.0)){Be=Y(C*w);w=Y(di(g,Re,Y(E+(x?w:Be)),N,Oe))}else w=E}else if(y?(de=Y(li(g)),de!=Y(0.0)):0)w=Y(di(g,Re,Y(E+Y(S*de)),N,Oe));else w=E;t=Y(t-Y(w-E));D=Y(Sr(g,Re,Oe));n=Y(Sr(g,Fe,Oe));w=Y(w+D);s[oe>>2]=w;o[ae>>2]=1;E=Y(s[g+396>>2]);e:do{if(wt(E)|0){m=wt(me)|0;do{if(!m){if(F|(Ir(g,Fe,me)|0|M))break;if((pi(e,g)|0)!=4)break;if((o[(hi(g,Fe)|0)+4>>2]|0)==3)break;if((o[(vi(g,Fe)|0)+4>>2]|0)==3)break;s[ie>>2]=me;o[ue>>2]=1;break e}}while(0);if(Ir(g,Fe,me)|0){m=o[g+992+(o[q>>2]<<2)>>2]|0;Be=Y(n+Y(Nr(m,me)));s[ie>>2]=Be;m=G&(o[m+4>>2]|0)==2;o[ue>>2]=((wt(Be)|0|m)^1)&1;break}else{s[ie>>2]=me;o[ue>>2]=m?0:2;break}}else{Be=Y(w-D);O=Y(Be/E);Be=Y(E*Be);o[ue>>2]=1;s[ie>>2]=Y(n+(Pe?O:Be))}}while(0);mi(g,Re,N,Oe,ae,oe);mi(g,Fe,me,Oe,ue,ie);do{if(!(Ir(g,Fe,me)|0)?(pi(e,g)|0)==4:0){if((o[(hi(g,Fe)|0)+4>>2]|0)==3){m=0;break}m=(o[(vi(g,Fe)|0)+4>>2]|0)!=3}else m=0}while(0);Be=Y(s[oe>>2]);O=Y(s[ie>>2]);je=o[ae>>2]|0;Ue=o[ue>>2]|0;Dr(g,Pe?Be:O,Pe?O:Be,Ie,Pe?je:Ue,Pe?Ue:je,Oe,ye,p&(m^1),3488,v)|0;r[X>>0]=r[X>>0]|r[g+508>>0];g=o[g+960>>2]|0}while((g|0)!=0)}else t=Y(0.0)}else t=Y(0.0);t=Y(P+t);Ue=t>0]=Ue|u[X>>0];if(U&t>Y(0.0)){m=o[z>>2]|0;if((o[e+364+(m<<3)+4>>2]|0)!=0?(pe=Y(Nr(e+364+(m<<3)|0,be)),pe>=Y(0.0)):0)w=Y(NT(Y(0.0),Y(pe-Y(N-t))));else w=Y(0.0)}else w=t;T=I>>>0>>0;if(T){_=o[Ne>>2]|0;y=I;m=0;do{g=o[_+(y<<2)>>2]|0;if(!(o[g+24>>2]|0)){m=((o[(hi(g,Re)|0)+4>>2]|0)==3&1)+m|0;m=m+((o[(vi(g,Re)|0)+4>>2]|0)==3&1)|0}y=y+1|0}while((y|0)!=(A|0));if(m){D=Y(0.0);n=Y(0.0)}else K=101}else K=101;e:do{if((K|0)==101){K=0;switch(Q|0){case 1:{m=0;D=Y(w*Y(.5));n=Y(0.0);break e}case 2:{m=0;D=w;n=Y(0.0);break e}case 3:{if(l>>>0<=1){m=0;D=Y(0.0);n=Y(0.0);break e}n=Y((l+-1|0)>>>0);m=0;D=Y(0.0);n=Y(Y(NT(w,Y(0.0)))/n);break e}case 5:{n=Y(w/Y((l+1|0)>>>0));m=0;D=n;break e}case 4:{n=Y(w/Y(l>>>0));m=0;D=Y(n*Y(.5));break e}default:{m=0;D=Y(0.0);n=Y(0.0);break e}}}}while(0);t=Y(Z+D);if(T){E=Y(w/Y(m|0));y=o[Ne>>2]|0;g=I;w=Y(0.0);do{m=o[y+(g<<2)>>2]|0;e:do{if((o[m+36>>2]|0)!=1){switch(o[m+24>>2]|0){case 1:{if(gi(m,Re)|0){if(!p)break e;Be=Y(yi(m,Re,N));Be=Y(Be+Y(Xr(e,Re)));Be=Y(Be+Y(Vr(m,Re,Oe)));s[m+400+(o[V>>2]<<2)>>2]=Be;break e}break}case 0:{Ue=(o[(hi(m,Re)|0)+4>>2]|0)==3;Be=Y(E+t);t=Ue?Be:t;if(p){Ue=m+400+(o[V>>2]<<2)|0;s[Ue>>2]=Y(t+Y(s[Ue>>2]))}Ue=(o[(vi(m,Re)|0)+4>>2]|0)==3;Be=Y(E+t);t=Ue?Be:t;if(B){Be=Y(n+Y(Sr(m,Re,Oe)));w=me;t=Y(t+Y(Be+Y(s[m+504>>2])));break e}else{t=Y(t+Y(n+Y(_i(m,Re,Oe))));w=Y(NT(w,Y(_i(m,Fe,Oe))));break e}}default:{}}if(p){Be=Y(D+Y(Xr(e,Re)));Ue=m+400+(o[V>>2]<<2)|0;s[Ue>>2]=Y(Be+Y(s[Ue>>2]))}}}while(0);g=g+1|0}while((g|0)!=(A|0))}else w=Y(0.0);n=Y(ee+t);if(W)D=Y(Y(di(e,Fe,Y(Ce+w),Se,c))-Ce);else D=me;E=Y(Y(di(e,Fe,Y(Ce+($?me:w)),Se,c))-Ce);if(T&p){g=I;do{y=o[(o[Ne>>2]|0)+(g<<2)>>2]|0;do{if((o[y+36>>2]|0)!=1){if((o[y+24>>2]|0)==1){if(gi(y,Fe)|0){Be=Y(yi(y,Fe,me));Be=Y(Be+Y(Xr(e,Fe)));Be=Y(Be+Y(Vr(y,Fe,Oe)));m=o[H>>2]|0;s[y+400+(m<<2)>>2]=Be;if(!(wt(Be)|0))break}else m=o[H>>2]|0;Be=Y(Xr(e,Fe));s[y+400+(m<<2)>>2]=Y(Be+Y(Vr(y,Fe,Oe)));break}m=pi(e,y)|0;do{if((m|0)==4){if((o[(hi(y,Fe)|0)+4>>2]|0)==3){K=139;break}if((o[(vi(y,Fe)|0)+4>>2]|0)==3){K=139;break}if(Ir(y,Fe,me)|0){t=b;break}je=o[y+908+(o[z>>2]<<2)>>2]|0;o[ie>>2]=je;t=Y(s[y+396>>2]);Ue=wt(t)|0;w=(o[d>>2]=je,Y(s[d>>2]));if(Ue)t=E;else{P=Y(Sr(y,Fe,Oe));Be=Y(w/t);t=Y(t*w);t=Y(P+(Pe?Be:t))}s[oe>>2]=t;s[ie>>2]=Y(Y(Sr(y,Re,Oe))+w);o[ue>>2]=1;o[ae>>2]=1;mi(y,Re,N,Oe,ue,ie);mi(y,Fe,me,Oe,ae,oe);t=Y(s[ie>>2]);P=Y(s[oe>>2]);Be=Pe?t:P;t=Pe?P:t;Ue=((wt(Be)|0)^1)&1;Dr(y,Be,t,Ie,Ue,((wt(t)|0)^1)&1,Oe,ye,1,3493,v)|0;t=b}else K=139}while(0);e:do{if((K|0)==139){K=0;t=Y(D-Y(_i(y,Fe,Oe)));do{if((o[(hi(y,Fe)|0)+4>>2]|0)==3){if((o[(vi(y,Fe)|0)+4>>2]|0)!=3)break;t=Y(b+Y(NT(Y(0.0),Y(t*Y(.5)))));break e}}while(0);if((o[(vi(y,Fe)|0)+4>>2]|0)==3){t=b;break}if((o[(hi(y,Fe)|0)+4>>2]|0)==3){t=Y(b+Y(NT(Y(0.0),t)));break}switch(m|0){case 1:{t=b;break e}case 2:{t=Y(b+Y(t*Y(.5)));break e}default:{t=Y(b+t);break e}}}}while(0);Be=Y(he+t);Ue=y+400+(o[H>>2]<<2)|0;s[Ue>>2]=Y(Be+Y(s[Ue>>2]))}}while(0);g=g+1|0}while((g|0)!=(A|0))}he=Y(he+E);re=Y(NT(re,n));l=L+1|0;if(A>>>0>=Me>>>0)break;else{t=N;I=A;L=l}}do{if(p){m=l>>>0>1;if(!m?!(bi(e)|0):0)break;if(!(wt(me)|0)){t=Y(me-he);e:do{switch(o[e+12>>2]|0){case 3:{b=Y(b+t);C=Y(0.0);break}case 2:{b=Y(b+Y(t*Y(.5)));C=Y(0.0);break}case 4:{if(me>he)C=Y(t/Y(l>>>0));else C=Y(0.0);break}case 7:if(me>he){b=Y(b+Y(t/Y(l<<1>>>0)));C=Y(t/Y(l>>>0));C=m?C:Y(0.0);break e}else{b=Y(b+Y(t*Y(.5)));C=Y(0.0);break e}case 6:{C=Y(t/Y(L>>>0));C=me>he&m?C:Y(0.0);break}default:C=Y(0.0)}}while(0);if(l|0){T=1040+(Fe<<2)|0;x=976+(Fe<<2)|0;_=0;g=0;while(1){e:do{if(g>>>0>>0){w=Y(0.0);E=Y(0.0);t=Y(0.0);y=g;while(1){m=o[(o[Ne>>2]|0)+(y<<2)>>2]|0;do{if((o[m+36>>2]|0)!=1?(o[m+24>>2]|0)==0:0){if((o[m+940>>2]|0)!=(_|0))break e;if(wi(m,Fe)|0){Be=Y(s[m+908+(o[x>>2]<<2)>>2]);t=Y(NT(t,Y(Be+Y(Sr(m,Fe,Oe)))))}if((pi(e,m)|0)!=5)break;pe=Y(Ei(m));pe=Y(pe+Y(Vr(m,0,Oe)));Be=Y(s[m+912>>2]);Be=Y(Y(Be+Y(Sr(m,0,Oe)))-pe);pe=Y(NT(E,pe));Be=Y(NT(w,Be));w=Be;E=pe;t=Y(NT(t,Y(pe+Be)))}}while(0);m=y+1|0;if(m>>>0>>0)y=m;else{y=m;break}}}else{E=Y(0.0);t=Y(0.0);y=g}}while(0);S=Y(C+t);n=b;b=Y(b+S);if(g>>>0>>0){D=Y(n+E);m=g;do{g=o[(o[Ne>>2]|0)+(m<<2)>>2]|0;e:do{if((o[g+36>>2]|0)!=1?(o[g+24>>2]|0)==0:0)switch(pi(e,g)|0){case 1:{Be=Y(n+Y(Vr(g,Fe,Oe)));s[g+400+(o[T>>2]<<2)>>2]=Be;break e}case 3:{Be=Y(Y(b-Y(qr(g,Fe,Oe)))-Y(s[g+908+(o[x>>2]<<2)>>2]));s[g+400+(o[T>>2]<<2)>>2]=Be;break e}case 2:{Be=Y(n+Y(Y(S-Y(s[g+908+(o[x>>2]<<2)>>2]))*Y(.5)));s[g+400+(o[T>>2]<<2)>>2]=Be;break e}case 4:{Be=Y(n+Y(Vr(g,Fe,Oe)));s[g+400+(o[T>>2]<<2)>>2]=Be;if(Ir(g,Fe,me)|0)break e;if(Pe){w=Y(s[g+908>>2]);t=Y(w+Y(Sr(g,Re,Oe)));E=S}else{E=Y(s[g+912>>2]);E=Y(E+Y(Sr(g,Fe,Oe)));t=S;w=Y(s[g+908>>2])}if(vr(t,w)|0?vr(E,Y(s[g+912>>2]))|0:0)break e;Dr(g,t,E,Ie,1,1,Oe,ye,1,3501,v)|0;break e}case 5:{s[g+404>>2]=Y(Y(D-Y(Ei(g)))+Y(yi(g,0,me)));break e}default:break e}}while(0);m=m+1|0}while((m|0)!=(y|0))}_=_+1|0;if((_|0)==(l|0))break;else g=y}}}}}while(0);s[e+908>>2]=Y(di(e,2,_e,c,c));s[e+912>>2]=Y(di(e,0,ge,f,c));if((ve|0)!=0?(Ee=o[e+32>>2]|0,De=(ve|0)==2,!(De&(Ee|0)!=2)):0){if(De&(Ee|0)==2){t=Y(we+N);t=Y(NT(Y(RT(t,Y(Di(e,Re,re,be)))),we));K=198}}else{t=Y(di(e,Re,re,be,c));K=198}if((K|0)==198)s[e+908+(o[976+(Re<<2)>>2]<<2)>>2]=t;if((ke|0)!=0?(xe=o[e+32>>2]|0,Ae=(ke|0)==2,!(Ae&(xe|0)!=2)):0){if(Ae&(xe|0)==2){t=Y(Ce+me);t=Y(NT(Y(RT(t,Y(Di(e,Fe,Y(Ce+he),Se)))),Ce));K=204}}else{t=Y(di(e,Fe,Y(Ce+he),Se,c));K=204}if((K|0)==204)s[e+908+(o[976+(Fe<<2)>>2]<<2)>>2]=t;if(p){if((o[Te>>2]|0)==2){g=976+(Fe<<2)|0;y=1040+(Fe<<2)|0;m=0;do{_=Pt(e,m)|0;if(!(o[_+24>>2]|0)){je=o[g>>2]|0;Be=Y(s[e+908+(je<<2)>>2]);Ue=_+400+(o[y>>2]<<2)|0;Be=Y(Be-Y(s[Ue>>2]));s[Ue>>2]=Y(Be-Y(s[_+908+(je<<2)>>2]))}m=m+1|0}while((m|0)!=(Me|0))}if(i|0){m=Pe?ve:a;do{Si(e,i,Oe,m,ye,Ie,v);i=o[i+960>>2]|0}while((i|0)!=0)}m=(Re|2|0)==3;g=(Fe|2|0)==3;if(m|g){i=0;do{y=o[(o[Ne>>2]|0)+(i<<2)>>2]|0;if((o[y+36>>2]|0)!=1){if(m)Ci(e,y,Re);if(g)Ci(e,y,Fe)}i=i+1|0}while((i|0)!=(Me|0))}}}else ei(e,t,n,a,l,c,f)}while(0);h=Le;return}function Ar(e,t){e=e|0;t=Y(t);var n=0;St(e,t>=Y(0.0),3147);n=t==Y(0.0);s[e+4>>2]=n?Y(0.0):t;return}function Or(e,t,n,i){e=e|0;t=Y(t);n=Y(n);i=i|0;var u=ft,a=ft,l=0,c=0,f=0;o[2278]=(o[2278]|0)+1;Pr(e);if(!(Ir(e,2,t)|0)){u=Y(Nr(e+380|0,t));if(!(u>=Y(0.0))){f=((wt(t)|0)^1)&1;u=t}else f=2}else{u=Y(Nr(o[e+992>>2]|0,t));f=1;u=Y(u+Y(Sr(e,2,t)))}if(!(Ir(e,0,n)|0)){a=Y(Nr(e+388|0,n));if(!(a>=Y(0.0))){c=((wt(n)|0)^1)&1;a=n}else c=2}else{a=Y(Nr(o[e+996>>2]|0,n));c=1;a=Y(a+Y(Sr(e,0,t)))}l=e+976|0;if(Dr(e,u,a,i,f,c,t,n,1,3189,o[l>>2]|0)|0?(Mr(e,o[e+496>>2]|0,t,n,t),Rr(e,Y(s[(o[l>>2]|0)+4>>2]),Y(0.0),Y(0.0)),r[11696]|0):0)mr(e,7);return}function Pr(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;a=l+24|0;u=l+16|0;r=l+8|0;i=l;n=0;do{t=e+380+(n<<3)|0;if(!((o[e+380+(n<<3)+4>>2]|0)!=0?(s=t,c=o[s+4>>2]|0,f=r,o[f>>2]=o[s>>2],o[f+4>>2]=c,f=e+364+(n<<3)|0,c=o[f+4>>2]|0,s=i,o[s>>2]=o[f>>2],o[s+4>>2]=c,o[u>>2]=o[r>>2],o[u+4>>2]=o[r+4>>2],o[a>>2]=o[i>>2],o[a+4>>2]=o[i+4>>2],hr(u,a)|0):0))t=e+348+(n<<3)|0;o[e+992+(n<<2)>>2]=t;n=n+1|0}while((n|0)!=2);h=l;return}function Ir(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0;e=o[e+992+(o[976+(t<<2)>>2]<<2)>>2]|0;switch(o[e+4>>2]|0){case 0:case 3:{e=0;break}case 1:{if(Y(s[e>>2])>2])>2]|0){case 2:{t=Y(Y(Y(s[e>>2])*t)/Y(100.0));break}case 1:{t=Y(s[e>>2]);break}default:t=Y(E)}return Y(t)}function Mr(e,t,n,r,i){e=e|0;t=t|0;n=Y(n);r=Y(r);i=Y(i);var u=0,a=ft;t=o[e+944>>2]|0?t:1;u=Kr(o[e+4>>2]|0,t)|0;t=ri(u,t)|0;n=Y(Pi(e,u,n));r=Y(Pi(e,t,r));a=Y(n+Y(Vr(e,u,i)));s[e+400+(o[1040+(u<<2)>>2]<<2)>>2]=a;n=Y(n+Y(qr(e,u,i)));s[e+400+(o[1e3+(u<<2)>>2]<<2)>>2]=n;n=Y(r+Y(Vr(e,t,i)));s[e+400+(o[1040+(t<<2)>>2]<<2)>>2]=n;i=Y(r+Y(qr(e,t,i)));s[e+400+(o[1e3+(t<<2)>>2]<<2)>>2]=i;return}function Rr(e,t,n,r){e=e|0;t=Y(t);n=Y(n);r=Y(r);var i=0,u=0,a=ft,l=ft,c=0,f=0,d=ft,p=0,h=ft,v=ft,m=ft,g=ft;if(!(t==Y(0.0))){i=e+400|0;g=Y(s[i>>2]);u=e+404|0;m=Y(s[u>>2]);p=e+416|0;v=Y(s[p>>2]);f=e+420|0;a=Y(s[f>>2]);h=Y(g+n);d=Y(m+r);r=Y(h+v);l=Y(d+a);c=(o[e+988>>2]|0)==1;s[i>>2]=Y(yr(g,t,0,c));s[u>>2]=Y(yr(m,t,0,c));n=Y(LT(Y(v*t),Y(1.0)));if(vr(n,Y(0.0))|0)u=0;else u=(vr(n,Y(1.0))|0)^1;n=Y(LT(Y(a*t),Y(1.0)));if(vr(n,Y(0.0))|0)i=0;else i=(vr(n,Y(1.0))|0)^1;g=Y(yr(r,t,c&u,c&(u^1)));s[p>>2]=Y(g-Y(yr(h,t,0,c)));g=Y(yr(l,t,c&i,c&(i^1)));s[f>>2]=Y(g-Y(yr(d,t,0,c)));u=(o[e+952>>2]|0)-(o[e+948>>2]|0)>>2;if(u|0){i=0;do{Rr(Pt(e,i)|0,t,h,d);i=i+1|0}while((i|0)!=(u|0))}}return}function Fr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;switch(n|0){case 5:case 0:{e=oT(o[489]|0,r,i)|0;break}default:e=jT(r,i)|0}return e|0}function Lr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;i=h;h=h+16|0;u=i;o[u>>2]=r;Br(e,0,t,n,u);h=i;return}function Br(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;e=e|0?e:956;xA[o[e+8>>2]&1](e,t,n,r,i)|0;if((n|0)==5)Ye();else return}function jr(e,t,n){e=e|0;t=t|0;n=n|0;r[e+t>>0]=n&1;return}function Ur(e,t){e=e|0;t=t|0;var n=0,r=0;o[e>>2]=0;o[e+4>>2]=0;o[e+8>>2]=0;n=t+4|0;r=(o[n>>2]|0)-(o[t>>2]|0)>>2;if(r|0){zr(e,r);Wr(e,o[t>>2]|0,o[n>>2]|0,r)}return}function zr(e,t){e=e|0;t=t|0;var n=0;if((Hr(e)|0)>>>0>>0)UT(e);if(t>>>0>1073741823)Ye();else{n=$T(t<<2)|0;o[e+4>>2]=n;o[e>>2]=n;o[e+8>>2]=n+(t<<2);return}}function Wr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=e+4|0;e=n-t|0;if((e|0)>0){ix(o[r>>2]|0,t|0,e|0)|0;o[r>>2]=(o[r>>2]|0)+(e>>>2<<2)}return}function Hr(e){e=e|0;return 1073741823}function Vr(e,t,n){e=e|0;t=t|0;n=Y(n);if(Gr(t)|0?(o[e+96>>2]|0)!=0:0)e=e+92|0;else e=Et(e+60|0,o[1040+(t<<2)>>2]|0,992)|0;return Y($r(e,n))}function qr(e,t,n){e=e|0;t=t|0;n=Y(n);if(Gr(t)|0?(o[e+104>>2]|0)!=0:0)e=e+100|0;else e=Et(e+60|0,o[1e3+(t<<2)>>2]|0,992)|0;return Y($r(e,n))}function Gr(e){e=e|0;return(e|1|0)==3|0}function $r(e,t){e=e|0;t=Y(t);if((o[e+4>>2]|0)==3)t=Y(0.0);else t=Y(Nr(e,t));return Y(t)}function Yr(e,t){e=e|0;t=t|0;e=o[e>>2]|0;return((e|0)==0?(t|0)>1?t:1:e)|0}function Kr(e,t){e=e|0;t=t|0;var n=0;e:do{if((t|0)==2){switch(e|0){case 2:{e=3;break e}case 3:break;default:{n=4;break e}}e=2}else n=4}while(0);return e|0}function Xr(e,t){e=e|0;t=t|0;var n=ft;if(!((Gr(t)|0?(o[e+312>>2]|0)!=0:0)?(n=Y(s[e+308>>2]),n>=Y(0.0)):0))n=Y(NT(Y(s[(Et(e+276|0,o[1040+(t<<2)>>2]|0,992)|0)>>2]),Y(0.0)));return Y(n)}function Qr(e,t){e=e|0;t=t|0;var n=ft;if(!((Gr(t)|0?(o[e+320>>2]|0)!=0:0)?(n=Y(s[e+316>>2]),n>=Y(0.0)):0))n=Y(NT(Y(s[(Et(e+276|0,o[1e3+(t<<2)>>2]|0,992)|0)>>2]),Y(0.0)));return Y(n)}function Jr(e,t,n){e=e|0;t=t|0;n=Y(n);var r=ft;if(!((Gr(t)|0?(o[e+240>>2]|0)!=0:0)?(r=Y(Nr(e+236|0,n)),r>=Y(0.0)):0))r=Y(NT(Y(Nr(Et(e+204|0,o[1040+(t<<2)>>2]|0,992)|0,n)),Y(0.0)));return Y(r)}function Zr(e,t,n){e=e|0;t=t|0;n=Y(n);var r=ft;if(!((Gr(t)|0?(o[e+248>>2]|0)!=0:0)?(r=Y(Nr(e+244|0,n)),r>=Y(0.0)):0))r=Y(NT(Y(Nr(Et(e+204|0,o[1e3+(t<<2)>>2]|0,992)|0,n)),Y(0.0)));return Y(r)}function ei(e,t,n,r,i,u,a){e=e|0;t=Y(t);n=Y(n);r=r|0;i=i|0;u=Y(u);a=Y(a);var l=ft,c=ft,f=ft,d=ft,p=ft,v=ft,m=0,g=0,y=0;y=h;h=h+16|0;m=y;g=e+964|0;Rt(e,(o[g>>2]|0)!=0,3519);l=Y(ui(e,2,t));c=Y(ui(e,0,t));f=Y(Sr(e,2,t));d=Y(Sr(e,0,t));if(wt(t)|0)p=t;else p=Y(NT(Y(0.0),Y(Y(t-f)-l)));if(wt(n)|0)v=n;else v=Y(NT(Y(0.0),Y(Y(n-d)-c)));if((r|0)==1&(i|0)==1){s[e+908>>2]=Y(di(e,2,Y(t-f),u,u));t=Y(di(e,0,Y(n-d),a,u))}else{OA[o[g>>2]&1](m,e,p,r,v,i);p=Y(l+Y(s[m>>2]));v=Y(t-f);s[e+908>>2]=Y(di(e,2,(r|2|0)==2?p:v,u,u));v=Y(c+Y(s[m+4>>2]));t=Y(n-d);t=Y(di(e,0,(i|2|0)==2?v:t,a,u))}s[e+912>>2]=t;h=y;return}function ti(e,t,n,r,i,o,u){e=e|0;t=Y(t);n=Y(n);r=r|0;i=i|0;o=Y(o);u=Y(u);var a=ft,l=ft,c=ft,f=ft;c=Y(ui(e,2,o));a=Y(ui(e,0,o));f=Y(Sr(e,2,o));l=Y(Sr(e,0,o));t=Y(t-f);s[e+908>>2]=Y(di(e,2,(r|2|0)==2?c:t,o,o));n=Y(n-l);s[e+912>>2]=Y(di(e,0,(i|2|0)==2?a:n,u,o));return}function ni(e,t,n,r,i,o,u){e=e|0;t=Y(t);n=Y(n);r=r|0;i=i|0;o=Y(o);u=Y(u);var a=0,l=ft,c=ft;a=(r|0)==2;if((!(t<=Y(0.0)&a)?!(n<=Y(0.0)&(i|0)==2):0)?!((r|0)==1&(i|0)==1):0)e=0;else{l=Y(Sr(e,0,o));c=Y(Sr(e,2,o));a=t>2]=Y(di(e,2,a?Y(0.0):t,o,o));t=Y(n-l);a=n>2]=Y(di(e,0,a?Y(0.0):t,u,o));e=1}return e|0}function ri(e,t){e=e|0;t=t|0;if(ki(e)|0)e=Kr(2,t)|0;else e=0;return e|0}function ii(e,t,n){e=e|0;t=t|0;n=Y(n);n=Y(Jr(e,t,n));return Y(n+Y(Xr(e,t)))}function oi(e,t,n){e=e|0;t=t|0;n=Y(n);n=Y(Zr(e,t,n));return Y(n+Y(Qr(e,t)))}function ui(e,t,n){e=e|0;t=t|0;n=Y(n);var r=ft;r=Y(ii(e,t,n));return Y(r+Y(oi(e,t,n)))}function ai(e){e=e|0;if(!(o[e+24>>2]|0)){if(Y(li(e))!=Y(0.0))e=1;else e=Y(si(e))!=Y(0.0)}else e=0;return e|0}function li(e){e=e|0;var t=ft;if(o[e+944>>2]|0){t=Y(s[e+44>>2]);if(wt(t)|0){t=Y(s[e+40>>2]);e=t>Y(0.0)&((wt(t)|0)^1);return Y(e?t:Y(0.0))}}else t=Y(0.0);return Y(t)}function si(e){e=e|0;var t=ft,n=0,i=ft;do{if(o[e+944>>2]|0){t=Y(s[e+48>>2]);if(wt(t)|0){n=r[(o[e+976>>2]|0)+2>>0]|0;if(n<<24>>24==0?(i=Y(s[e+40>>2]),i>24?Y(1.0):Y(0.0)}}else t=Y(0.0)}while(0);return Y(t)}function ci(e){e=e|0;var t=0,n=0;tx(e+400|0,0,540)|0;r[e+985>>0]=1;Wt(e);n=Ot(e)|0;if(n|0){t=e+948|0;e=0;do{ci(o[(o[t>>2]|0)+(e<<2)>>2]|0);e=e+1|0}while((e|0)!=(n|0))}return}function fi(e,t,n,r,i,u,a,l,c,f){e=e|0;t=t|0;n=Y(n);r=r|0;i=Y(i);u=Y(u);a=Y(a);l=l|0;c=c|0;f=f|0;var d=0,p=ft,v=0,m=0,g=ft,y=ft,_=0,b=ft,w=0,D=ft,S=0,C=0,k=0,T=0,x=0,A=0,O=0,P=0,I=0,N=0;I=h;h=h+16|0;k=I+12|0;T=I+8|0;x=I+4|0;A=I;P=Kr(o[e+4>>2]|0,c)|0;S=Gr(P)|0;p=Y(Nr(Ti(t)|0,S?u:a));C=Ir(t,2,u)|0;O=Ir(t,0,a)|0;do{if(!(wt(p)|0)?!(wt(S?n:i)|0):0){d=t+504|0;if(!(wt(Y(s[d>>2]))|0)){if(!(xi(o[t+976>>2]|0,0)|0))break;if((o[t+500>>2]|0)==(o[2278]|0))break}s[d>>2]=Y(NT(p,Y(ui(t,P,u))))}else v=7}while(0);do{if((v|0)==7){w=S^1;if(!(w|C^1)){a=Y(Nr(o[t+992>>2]|0,u));s[t+504>>2]=Y(NT(a,Y(ui(t,2,u))));break}if(!(S|O^1)){a=Y(Nr(o[t+996>>2]|0,a));s[t+504>>2]=Y(NT(a,Y(ui(t,0,u))));break}s[k>>2]=Y(E);s[T>>2]=Y(E);o[x>>2]=0;o[A>>2]=0;b=Y(Sr(t,2,u));D=Y(Sr(t,0,u));if(C){g=Y(b+Y(Nr(o[t+992>>2]|0,u)));s[k>>2]=g;o[x>>2]=1;m=1}else{m=0;g=Y(E)}if(O){p=Y(D+Y(Nr(o[t+996>>2]|0,a)));s[T>>2]=p;o[A>>2]=1;d=1}else{d=0;p=Y(E)}v=o[e+32>>2]|0;if(!(S&(v|0)==2)){if(wt(g)|0?!(wt(n)|0):0){s[k>>2]=n;o[x>>2]=2;m=2;g=n}}else v=2;if((!((v|0)==2&w)?wt(p)|0:0)?!(wt(i)|0):0){s[T>>2]=i;o[A>>2]=2;d=2;p=i}y=Y(s[t+396>>2]);_=wt(y)|0;do{if(!_){if((m|0)==1&w){s[T>>2]=Y(Y(g-b)/y);o[A>>2]=1;d=1;v=1;break}if(S&(d|0)==1){s[k>>2]=Y(y*Y(p-D));o[x>>2]=1;d=1;v=1}else v=m}else v=m}while(0);N=wt(n)|0;m=(pi(e,t)|0)!=4;if(!(S|C|((r|0)!=1|N)|(m|(v|0)==1))?(s[k>>2]=n,o[x>>2]=1,!_):0){s[T>>2]=Y(Y(n-b)/y);o[A>>2]=1;d=1}if(!(O|w|((l|0)!=1|(wt(i)|0))|(m|(d|0)==1))?(s[T>>2]=i,o[A>>2]=1,!_):0){s[k>>2]=Y(y*Y(i-D));o[x>>2]=1}mi(t,2,u,u,x,k);mi(t,0,a,u,A,T);n=Y(s[k>>2]);i=Y(s[T>>2]);Dr(t,n,i,c,o[x>>2]|0,o[A>>2]|0,u,a,0,3565,f)|0;a=Y(s[t+908+(o[976+(P<<2)>>2]<<2)>>2]);s[t+504>>2]=Y(NT(a,Y(ui(t,P,u))))}}while(0);o[t+500>>2]=o[2278];h=I;return}function di(e,t,n,r,i){e=e|0;t=t|0;n=Y(n);r=Y(r);i=Y(i);r=Y(Di(e,t,n,r));return Y(NT(r,Y(ui(e,t,i))))}function pi(e,t){e=e|0;t=t|0;t=t+20|0;t=o[((o[t>>2]|0)==0?e+16|0:t)>>2]|0;if((t|0)==5?ki(o[e+4>>2]|0)|0:0)t=1;return t|0}function hi(e,t){e=e|0;t=t|0;if(Gr(t)|0?(o[e+96>>2]|0)!=0:0)t=4;else t=o[1040+(t<<2)>>2]|0;return e+60+(t<<3)|0}function vi(e,t){e=e|0;t=t|0;if(Gr(t)|0?(o[e+104>>2]|0)!=0:0)t=5;else t=o[1e3+(t<<2)>>2]|0;return e+60+(t<<3)|0}function mi(e,t,n,r,i,u){e=e|0;t=t|0;n=Y(n);r=Y(r);i=i|0;u=u|0;n=Y(Nr(e+380+(o[976+(t<<2)>>2]<<3)|0,n));n=Y(n+Y(Sr(e,t,r)));switch(o[i>>2]|0){case 2:case 1:{i=wt(n)|0;r=Y(s[u>>2]);s[u>>2]=i|r>2]=2;s[u>>2]=n}break}default:{}}return}function gi(e,t){e=e|0;t=t|0;e=e+132|0;if(Gr(t)|0?(o[(Et(e,4,948)|0)+4>>2]|0)!=0:0)e=1;else e=(o[(Et(e,o[1040+(t<<2)>>2]|0,948)|0)+4>>2]|0)!=0;return e|0}function yi(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0;e=e+132|0;if(Gr(t)|0?(r=Et(e,4,948)|0,(o[r+4>>2]|0)!=0):0)i=4;else{r=Et(e,o[1040+(t<<2)>>2]|0,948)|0;if(!(o[r+4>>2]|0))n=Y(0.0);else i=4}if((i|0)==4)n=Y(Nr(r,n));return Y(n)}function _i(e,t,n){e=e|0;t=t|0;n=Y(n);var r=ft;r=Y(s[e+908+(o[976+(t<<2)>>2]<<2)>>2]);r=Y(r+Y(Vr(e,t,n)));return Y(r+Y(qr(e,t,n)))}function bi(e){e=e|0;var t=0,n=0,r=0;e:do{if(!(ki(o[e+4>>2]|0)|0)){if((o[e+16>>2]|0)!=5){n=Ot(e)|0;if(!n)t=0;else{t=0;while(1){r=Pt(e,t)|0;if((o[r+24>>2]|0)==0?(o[r+20>>2]|0)==5:0){t=1;break e}t=t+1|0;if(t>>>0>=n>>>0){t=0;break}}}}else t=1}else t=0}while(0);return t|0}function wi(e,t){e=e|0;t=t|0;var n=ft;n=Y(s[e+908+(o[976+(t<<2)>>2]<<2)>>2]);return n>=Y(0.0)&((wt(n)|0)^1)|0}function Ei(e){e=e|0;var t=ft,n=0,r=0,i=0,u=0,a=0,l=0,c=ft;n=o[e+968>>2]|0;if(!n){u=Ot(e)|0;do{if(u|0){n=0;i=0;while(1){r=Pt(e,i)|0;if(o[r+940>>2]|0){a=8;break}if((o[r+24>>2]|0)!=1){l=(pi(e,r)|0)==5;if(l){n=r;break}else n=(n|0)==0?r:n}i=i+1|0;if(i>>>0>=u>>>0){a=8;break}}if((a|0)==8)if(!n)break;t=Y(Ei(n));return Y(t+Y(s[n+404>>2]))}}while(0);t=Y(s[e+912>>2])}else{c=Y(s[e+908>>2]);t=Y(s[e+912>>2]);t=Y(pA[n&0](e,c,t));Rt(e,(wt(t)|0)^1,3573)}return Y(t)}function Di(e,t,n,r){e=e|0;t=t|0;n=Y(n);r=Y(r);var i=ft,o=0;if(!(ki(t)|0)){if(Gr(t)|0){t=0;o=3}else{r=Y(E);i=Y(E)}}else{t=1;o=3}if((o|0)==3){i=Y(Nr(e+364+(t<<3)|0,r));r=Y(Nr(e+380+(t<<3)|0,r))}o=r=Y(0.0)&((wt(r)|0)^1));n=o?r:n;o=i>=Y(0.0)&((wt(i)|0)^1)&n>2]|0,u)|0;m=ri(y,u)|0;g=Gr(y)|0;p=Y(Sr(t,2,n));h=Y(Sr(t,0,n));if(!(Ir(t,2,n)|0)){if(gi(t,2)|0?Ai(t,2)|0:0){l=Y(s[e+908>>2]);c=Y(Xr(e,2));c=Y(l-Y(c+Y(Qr(e,2))));l=Y(yi(t,2,n));l=Y(di(t,2,Y(c-Y(l+Y(Oi(t,2,n)))),n,n))}else l=Y(E)}else l=Y(p+Y(Nr(o[t+992>>2]|0,n)));if(!(Ir(t,0,i)|0)){if(gi(t,0)|0?Ai(t,0)|0:0){c=Y(s[e+912>>2]);b=Y(Xr(e,0));b=Y(c-Y(b+Y(Qr(e,0))));c=Y(yi(t,0,i));c=Y(di(t,0,Y(b-Y(c+Y(Oi(t,0,i)))),i,n))}else c=Y(E)}else c=Y(h+Y(Nr(o[t+996>>2]|0,i)));f=wt(l)|0;d=wt(c)|0;do{if(f^d?(v=Y(s[t+396>>2]),!(wt(v)|0)):0)if(f){l=Y(p+Y(Y(c-h)*v));break}else{b=Y(h+Y(Y(l-p)/v));c=d?b:c;break}}while(0);d=wt(l)|0;f=wt(c)|0;if(d|f){w=(d^1)&1;r=n>Y(0.0)&((r|0)!=0&d);l=g?l:r?n:l;Dr(t,l,c,u,g?w:r?2:w,d&(f^1)&1,l,c,0,3623,a)|0;l=Y(s[t+908>>2]);l=Y(l+Y(Sr(t,2,n)));c=Y(s[t+912>>2]);c=Y(c+Y(Sr(t,0,n)))}Dr(t,l,c,u,1,1,l,c,1,3635,a)|0;if(Ai(t,y)|0?!(gi(t,y)|0):0){w=o[976+(y<<2)>>2]|0;b=Y(s[e+908+(w<<2)>>2]);b=Y(b-Y(s[t+908+(w<<2)>>2]));b=Y(b-Y(Qr(e,y)));b=Y(b-Y(qr(t,y,n)));b=Y(b-Y(Oi(t,y,g?n:i)));s[t+400+(o[1040+(y<<2)>>2]<<2)>>2]=b}else _=21;do{if((_|0)==21){if(!(gi(t,y)|0)?(o[e+8>>2]|0)==1:0){w=o[976+(y<<2)>>2]|0;b=Y(s[e+908+(w<<2)>>2]);b=Y(Y(b-Y(s[t+908+(w<<2)>>2]))*Y(.5));s[t+400+(o[1040+(y<<2)>>2]<<2)>>2]=b;break}if(!(gi(t,y)|0)?(o[e+8>>2]|0)==2:0){w=o[976+(y<<2)>>2]|0;b=Y(s[e+908+(w<<2)>>2]);b=Y(b-Y(s[t+908+(w<<2)>>2]));s[t+400+(o[1040+(y<<2)>>2]<<2)>>2]=b}}}while(0);if(Ai(t,m)|0?!(gi(t,m)|0):0){w=o[976+(m<<2)>>2]|0;b=Y(s[e+908+(w<<2)>>2]);b=Y(b-Y(s[t+908+(w<<2)>>2]));b=Y(b-Y(Qr(e,m)));b=Y(b-Y(qr(t,m,n)));b=Y(b-Y(Oi(t,m,g?i:n)));s[t+400+(o[1040+(m<<2)>>2]<<2)>>2]=b}else _=30;do{if((_|0)==30?!(gi(t,m)|0):0){if((pi(e,t)|0)==2){w=o[976+(m<<2)>>2]|0;b=Y(s[e+908+(w<<2)>>2]);b=Y(Y(b-Y(s[t+908+(w<<2)>>2]))*Y(.5));s[t+400+(o[1040+(m<<2)>>2]<<2)>>2]=b;break}w=(pi(e,t)|0)==3;if(w^(o[e+28>>2]|0)==2){w=o[976+(m<<2)>>2]|0;b=Y(s[e+908+(w<<2)>>2]);b=Y(b-Y(s[t+908+(w<<2)>>2]));s[t+400+(o[1040+(m<<2)>>2]<<2)>>2]=b}}}while(0);return}function Ci(e,t,n){e=e|0;t=t|0;n=n|0;var r=ft,i=0;i=o[976+(n<<2)>>2]|0;r=Y(s[t+908+(i<<2)>>2]);r=Y(Y(s[e+908+(i<<2)>>2])-r);r=Y(r-Y(s[t+400+(o[1040+(n<<2)>>2]<<2)>>2]));s[t+400+(o[1e3+(n<<2)>>2]<<2)>>2]=r;return}function ki(e){e=e|0;return(e|1|0)==1|0}function Ti(e){e=e|0;var t=ft;switch(o[e+56>>2]|0){case 0:case 3:{t=Y(s[e+40>>2]);if(t>Y(0.0)&((wt(t)|0)^1))e=r[(o[e+976>>2]|0)+2>>0]|0?1056:992;else e=1056;break}default:e=e+52|0}return e|0}function xi(e,t){e=e|0;t=t|0;return(r[e+t>>0]|0)!=0|0}function Ai(e,t){e=e|0;t=t|0;e=e+132|0;if(Gr(t)|0?(o[(Et(e,5,948)|0)+4>>2]|0)!=0:0)e=1;else e=(o[(Et(e,o[1e3+(t<<2)>>2]|0,948)|0)+4>>2]|0)!=0;return e|0}function Oi(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0;e=e+132|0;if(Gr(t)|0?(r=Et(e,5,948)|0,(o[r+4>>2]|0)!=0):0)i=4;else{r=Et(e,o[1e3+(t<<2)>>2]|0,948)|0;if(!(o[r+4>>2]|0))n=Y(0.0);else i=4}if((i|0)==4)n=Y(Nr(r,n));return Y(n)}function Pi(e,t,n){e=e|0;t=t|0;n=Y(n);if(gi(e,t)|0)n=Y(yi(e,t,n));else n=Y(-Y(Oi(e,t,n)));return Y(n)}function Ii(e){e=Y(e);return(s[d>>2]=e,o[d>>2]|0)|0}function Ni(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>1073741823)Ye();else{i=$T(t<<2)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<2)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<2);return}function Mi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>2)<<2)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Ri(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-4-t|0)>>>2)<<2);e=o[e>>2]|0;if(e|0)KT(e);return}function Fi(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;a=e+4|0;l=o[a>>2]|0;i=l-r|0;u=i>>2;e=t+(u<<2)|0;if(e>>>0>>0){r=l;do{o[r>>2]=o[e>>2];e=e+4|0;r=(o[a>>2]|0)+4|0;o[a>>2]=r}while(e>>>0>>0)}if(u|0)sx(l+(0-u<<2)|0,t|0,i|0)|0;return}function Li(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0;l=t+4|0;s=o[l>>2]|0;i=o[e>>2]|0;a=n;u=a-i|0;r=s+(0-(u>>2)<<2)|0;o[l>>2]=r;if((u|0)>0)ix(r|0,i|0,u|0)|0;i=e+4|0;u=t+8|0;r=(o[i>>2]|0)-a|0;if((r|0)>0){ix(o[u>>2]|0,n|0,r|0)|0;o[u>>2]=(o[u>>2]|0)+(r>>>2<<2)}a=o[e>>2]|0;o[e>>2]=o[l>>2];o[l>>2]=a;a=o[i>>2]|0;o[i>>2]=o[u>>2];o[u>>2]=a;a=e+8|0;n=t+12|0;e=o[a>>2]|0;o[a>>2]=o[n>>2];o[n>>2]=e;o[t>>2]=o[l>>2];return s|0}function Bi(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;a=o[t>>2]|0;u=o[n>>2]|0;if((a|0)!=(u|0)){i=e+8|0;n=((u+-4-a|0)>>>2)+1|0;e=a;r=o[i>>2]|0;do{o[r>>2]=o[e>>2];r=(o[i>>2]|0)+4|0;o[i>>2]=r;e=e+4|0}while((e|0)!=(u|0));o[t>>2]=a+(n<<2)}return}function ji(){_t();return}function Ui(){var e=0;e=$T(4)|0;zi(e);return e|0}function zi(e){e=e|0;o[e>>2]=Lt()|0;return}function Wi(e){e=e|0;if(e|0){Hi(e);KT(e)}return}function Hi(e){e=e|0;jt(o[e>>2]|0);return}function Vi(e,t,n){e=e|0;t=t|0;n=n|0;jr(o[e>>2]|0,t,n);return}function qi(e,t){e=e|0;t=Y(t);Ar(o[e>>2]|0,t);return}function Gi(e,t){e=e|0;t=t|0;return xi(o[e>>2]|0,t)|0}function $i(){var e=0;e=$T(8)|0;Yi(e,0);return e|0}function Yi(e,t){e=e|0;t=t|0;if(!t)t=Ct()|0;else t=Dt(o[t>>2]|0)|0;o[e>>2]=t;o[e+4>>2]=0;Jt(t,e);return}function Ki(e){e=e|0;var t=0;t=$T(8)|0;Yi(t,e);return t|0}function Xi(e){e=e|0;if(e|0){Qi(e);KT(e)}return}function Qi(e){e=e|0;var t=0;xt(o[e>>2]|0);t=e+4|0;e=o[t>>2]|0;o[t>>2]=0;if(e|0){Ji(e);KT(e)}return}function Ji(e){e=e|0;Zi(e);return}function Zi(e){e=e|0;e=o[e>>2]|0;if(e|0)rt(e|0);return}function eo(e){e=e|0;return Zt(e)|0}function to(e){e=e|0;var t=0,n=0;n=e+4|0;t=o[n>>2]|0;o[n>>2]=0;if(t|0){Ji(t);KT(t)}Mt(o[e>>2]|0);return}function no(e,t){e=e|0;t=t|0;Kt(o[e>>2]|0,o[t>>2]|0);return}function ro(e,t){e=e|0;t=t|0;fn(o[e>>2]|0,t);return}function io(e,t,n){e=e|0;t=t|0;n=+n;Cn(o[e>>2]|0,t,Y(n));return}function oo(e,t,n){e=e|0;t=t|0;n=+n;kn(o[e>>2]|0,t,Y(n));return}function uo(e,t){e=e|0;t=t|0;on(o[e>>2]|0,t);return}function ao(e,t){e=e|0;t=t|0;an(o[e>>2]|0,t);return}function lo(e,t){e=e|0;t=t|0;sn(o[e>>2]|0,t);return}function so(e,t){e=e|0;t=t|0;en(o[e>>2]|0,t);return}function co(e,t){e=e|0;t=t|0;pn(o[e>>2]|0,t);return}function fo(e,t){e=e|0;t=t|0;nn(o[e>>2]|0,t);return}function po(e,t,n){e=e|0;t=t|0;n=+n;xn(o[e>>2]|0,t,Y(n));return}function ho(e,t,n){e=e|0;t=t|0;n=+n;An(o[e>>2]|0,t,Y(n));return}function vo(e,t){e=e|0;t=t|0;Pn(o[e>>2]|0,t);return}function mo(e,t){e=e|0;t=t|0;vn(o[e>>2]|0,t);return}function go(e,t){e=e|0;t=t|0;gn(o[e>>2]|0,t);return}function yo(e,t){e=e|0;t=+t;_n(o[e>>2]|0,Y(t));return}function _o(e,t){e=e|0;t=+t;En(o[e>>2]|0,Y(t));return}function bo(e,t){e=e|0;t=+t;Dn(o[e>>2]|0,Y(t));return}function wo(e,t){e=e|0;t=+t;bn(o[e>>2]|0,Y(t));return}function Eo(e,t){e=e|0;t=+t;wn(o[e>>2]|0,Y(t));return}function Do(e,t){e=e|0;t=+t;Ln(o[e>>2]|0,Y(t));return}function So(e,t){e=e|0;t=+t;Bn(o[e>>2]|0,Y(t));return}function Co(e){e=e|0;jn(o[e>>2]|0);return}function ko(e,t){e=e|0;t=+t;zn(o[e>>2]|0,Y(t));return}function To(e,t){e=e|0;t=+t;Wn(o[e>>2]|0,Y(t));return}function xo(e){e=e|0;Hn(o[e>>2]|0);return}function Ao(e,t){e=e|0;t=+t;qn(o[e>>2]|0,Y(t));return}function Oo(e,t){e=e|0;t=+t;Gn(o[e>>2]|0,Y(t));return}function Po(e,t){e=e|0;t=+t;Yn(o[e>>2]|0,Y(t));return}function Io(e,t){e=e|0;t=+t;Kn(o[e>>2]|0,Y(t));return}function No(e,t){e=e|0;t=+t;Qn(o[e>>2]|0,Y(t));return}function Mo(e,t){e=e|0;t=+t;Jn(o[e>>2]|0,Y(t));return}function Ro(e,t){e=e|0;t=+t;er(o[e>>2]|0,Y(t));return}function Fo(e,t){e=e|0;t=+t;tr(o[e>>2]|0,Y(t));return}function Lo(e,t){e=e|0;t=+t;rr(o[e>>2]|0,Y(t));return}function Bo(e,t,n){e=e|0;t=t|0;n=+n;Rn(o[e>>2]|0,t,Y(n));return}function jo(e,t,n){e=e|0;t=t|0;n=+n;In(o[e>>2]|0,t,Y(n));return}function Uo(e,t,n){e=e|0;t=t|0;n=+n;Nn(o[e>>2]|0,t,Y(n));return}function zo(e){e=e|0;return dn(o[e>>2]|0)|0}function Wo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+16|0;i=r;Tn(i,o[t>>2]|0,n);Ho(e,i);h=r;return}function Ho(e,t){e=e|0;t=t|0;Vo(e,o[t+4>>2]|0,+Y(s[t>>2]));return}function Vo(e,t,n){e=e|0;t=t|0;n=+n;o[e>>2]=t;c[e+8>>3]=n;return}function qo(e){e=e|0;return un(o[e>>2]|0)|0}function Go(e){e=e|0;return ln(o[e>>2]|0)|0}function $o(e){e=e|0;return cn(o[e>>2]|0)|0}function Yo(e){e=e|0;return tn(o[e>>2]|0)|0}function Ko(e){e=e|0;return hn(o[e>>2]|0)|0}function Xo(e){e=e|0;return rn(o[e>>2]|0)|0}function Qo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+16|0;i=r;On(i,o[t>>2]|0,n);Ho(e,i);h=r;return}function Jo(e){e=e|0;return mn(o[e>>2]|0)|0}function Zo(e){e=e|0;return yn(o[e>>2]|0)|0}function eu(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Sn(r,o[t>>2]|0);Ho(e,r);h=n;return}function tu(e){e=e|0;return+ +Y(Xt(o[e>>2]|0))}function nu(e){e=e|0;return+ +Y(Qt(o[e>>2]|0))}function ru(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Un(r,o[t>>2]|0);Ho(e,r);h=n;return}function iu(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Vn(r,o[t>>2]|0);Ho(e,r);h=n;return}function ou(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;$n(r,o[t>>2]|0);Ho(e,r);h=n;return}function uu(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Xn(r,o[t>>2]|0);Ho(e,r);h=n;return}function au(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Zn(r,o[t>>2]|0);Ho(e,r);h=n;return}function lu(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;nr(r,o[t>>2]|0);Ho(e,r);h=n;return}function su(e){e=e|0;return+ +Y(ir(o[e>>2]|0))}function cu(e,t){e=e|0;t=t|0;return+ +Y(Fn(o[e>>2]|0,t))}function fu(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+16|0;i=r;Mn(i,o[t>>2]|0,n);Ho(e,i);h=r;return}function du(e,t,n){e=e|0;t=t|0;n=n|0;zt(o[e>>2]|0,o[t>>2]|0,n);return}function pu(e,t){e=e|0;t=t|0;Nt(o[e>>2]|0,o[t>>2]|0);return}function hu(e){e=e|0;return Ot(o[e>>2]|0)|0}function vu(e){e=e|0;e=Gt(o[e>>2]|0)|0;if(!e)e=0;else e=eo(e)|0;return e|0}function mu(e,t){e=e|0;t=t|0;e=Pt(o[e>>2]|0,t)|0;if(!e)e=0;else e=eo(e)|0;return e|0}function gu(e,t){e=e|0;t=t|0;var n=0,r=0;r=$T(4)|0;yu(r,t);n=e+4|0;t=o[n>>2]|0;o[n>>2]=r;if(t|0){Ji(t);KT(t)}Ut(o[e>>2]|0,1);return}function yu(e,t){e=e|0;t=t|0;Bu(e,t);return}function _u(e,t,n,r,i,o){e=e|0;t=t|0;n=Y(n);r=r|0;i=Y(i);o=o|0;var u=0,a=0;u=h;h=h+16|0;a=u;bu(a,Zt(t)|0,+n,r,+i,o);s[e>>2]=Y(+c[a>>3]);s[e+4>>2]=Y(+c[a+8>>3]);h=u;return}function bu(e,t,n,r,i,u){e=e|0;t=t|0;n=+n;r=r|0;i=+i;u=u|0;var a=0,l=0,s=0,f=0,d=0;a=h;h=h+32|0;d=a+8|0;f=a+20|0;s=a;l=a+16|0;c[d>>3]=n;o[f>>2]=r;c[s>>3]=i;o[l>>2]=u;wu(e,o[t+4>>2]|0,d,f,s,l);h=a;return}function wu(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;var a=0,l=0;a=h;h=h+16|0;l=a;Dk(l);t=Eu(t)|0;Du(e,t,+c[n>>3],o[r>>2]|0,+c[i>>3],o[u>>2]|0);Ck(l);h=a;return}function Eu(e){e=e|0;return o[e>>2]|0}function Du(e,t,n,r,i,o){e=e|0;t=t|0;n=+n;r=r|0;i=+i;o=o|0;var u=0;u=Cu(Su()|0)|0;n=+ku(n);r=Tu(r)|0;i=+ku(i);xu(e,ot(0,u|0,t|0,+n,r|0,+i,Tu(o)|0)|0);return}function Su(){var e=0;if(!(r[7608]|0)){Ru(9120);e=7608;o[e>>2]=1;o[e+4>>2]=0}return 9120}function Cu(e){e=e|0;return o[e+8>>2]|0}function ku(e){e=+e;return+ +Mu(e)}function Tu(e){e=e|0;return Nu(e)|0}function xu(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+32|0;n=i;r=t;if(!(r&1)){o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2]}else{Au(n,0);Be(r|0,n|0)|0;Ou(e,n);Pu(n)}h=i;return}function Au(e,t){e=e|0;t=t|0;Iu(e,t);o[e+8>>2]=0;r[e+24>>0]=0;return}function Ou(e,t){e=e|0;t=t|0;t=t+8|0;o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2];return}function Pu(e){e=e|0;r[e+24>>0]=0;return}function Iu(e,t){e=e|0;t=t|0;o[e>>2]=t;return}function Nu(e){e=e|0;return e|0}function Mu(e){e=+e;return+e}function Ru(e){e=e|0;Lu(e,Fu()|0,4);return}function Fu(){return 1064}function Lu(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=tt(t|0,n+1|0)|0;return}function Bu(e,t){e=e|0;t=t|0;t=o[t>>2]|0;o[e>>2]=t;Ae(t|0);return}function ju(e){e=e|0;var t=0,n=0;n=e+4|0;t=o[n>>2]|0;o[n>>2]=0;if(t|0){Ji(t);KT(t)}Ut(o[e>>2]|0,0);return}function Uu(e){e=e|0;$t(o[e>>2]|0);return}function zu(e){e=e|0;return Yt(o[e>>2]|0)|0}function Wu(e,t,n,r){e=e|0;t=+t;n=+n;r=r|0;Or(o[e>>2]|0,Y(t),Y(n),r);return}function Hu(e){e=e|0;return+ +Y(or(o[e>>2]|0))}function Vu(e){e=e|0;return+ +Y(ar(o[e>>2]|0))}function qu(e){e=e|0;return+ +Y(ur(o[e>>2]|0))}function Gu(e){e=e|0;return+ +Y(lr(o[e>>2]|0))}function $u(e){e=e|0;return+ +Y(sr(o[e>>2]|0))}function Yu(e){e=e|0;return+ +Y(cr(o[e>>2]|0))}function Ku(e,t){e=e|0;t=t|0;c[e>>3]=+Y(or(o[t>>2]|0));c[e+8>>3]=+Y(ar(o[t>>2]|0));c[e+16>>3]=+Y(ur(o[t>>2]|0));c[e+24>>3]=+Y(lr(o[t>>2]|0));c[e+32>>3]=+Y(sr(o[t>>2]|0));c[e+40>>3]=+Y(cr(o[t>>2]|0));return}function Xu(e,t){e=e|0;t=t|0;return+ +Y(fr(o[e>>2]|0,t))}function Qu(e,t){e=e|0;t=t|0;return+ +Y(dr(o[e>>2]|0,t))}function Ju(e,t){e=e|0;t=t|0;return+ +Y(pr(o[e>>2]|0,t))}function Zu(){return Ft()|0}function ea(){ta();na();ra();ia();oa();ua();return}function ta(){zb(11713,4938,1);return}function na(){tb(10448);return}function ra(){R_(10408);return}function ia(){Jy(10324);return}function oa(){qm(10096);return}function ua(){aa(9132);return}function aa(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,v=0,m=0,g=0,y=0,_=0,b=0,w=0,E=0,D=0,S=0,C=0,k=0,T=0,x=0,A=0,O=0,P=0,I=0,N=0,M=0,R=0,F=0,L=0,B=0,j=0,U=0,z=0,W=0,H=0,V=0,q=0,G=0,$=0,Y=0,K=0,X=0,Q=0,J=0,Z=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,ue=0,ae=0,le=0,se=0,ce=0,fe=0,de=0,pe=0,he=0,ve=0,me=0,ge=0,ye=0,_e=0,be=0,we=0,Ee=0,De=0,Se=0,Ce=0,ke=0,Te=0,xe=0,Ae=0,Oe=0,Pe=0,Ie=0;t=h;h=h+672|0;n=t+656|0;Ie=t+648|0;Pe=t+640|0;Oe=t+632|0;Ae=t+624|0;xe=t+616|0;Te=t+608|0;ke=t+600|0;Ce=t+592|0;Se=t+584|0;De=t+576|0;Ee=t+568|0;we=t+560|0;be=t+552|0;_e=t+544|0;ye=t+536|0;ge=t+528|0;me=t+520|0;ve=t+512|0;he=t+504|0;pe=t+496|0;de=t+488|0;fe=t+480|0;ce=t+472|0;se=t+464|0;le=t+456|0;ae=t+448|0;ue=t+440|0;oe=t+432|0;ie=t+424|0;re=t+416|0;ne=t+408|0;te=t+400|0;ee=t+392|0;Z=t+384|0;J=t+376|0;Q=t+368|0;X=t+360|0;K=t+352|0;Y=t+344|0;$=t+336|0;G=t+328|0;q=t+320|0;V=t+312|0;H=t+304|0;W=t+296|0;z=t+288|0;U=t+280|0;j=t+272|0;B=t+264|0;L=t+256|0;F=t+248|0;R=t+240|0;M=t+232|0;N=t+224|0;I=t+216|0;P=t+208|0;O=t+200|0;A=t+192|0;x=t+184|0;T=t+176|0;k=t+168|0;C=t+160|0;S=t+152|0;D=t+144|0;E=t+136|0;w=t+128|0;b=t+120|0;_=t+112|0;y=t+104|0;g=t+96|0;m=t+88|0;v=t+80|0;p=t+72|0;d=t+64|0;f=t+56|0;c=t+48|0;s=t+40|0;l=t+32|0;a=t+24|0;u=t+16|0;i=t+8|0;r=t;la(e,3646);sa(e,3651,2)|0;ca(e,3665,2)|0;fa(e,3682,18)|0;o[Ie>>2]=19;o[Ie+4>>2]=0;o[n>>2]=o[Ie>>2];o[n+4>>2]=o[Ie+4>>2];da(e,3690,n)|0;o[Pe>>2]=1;o[Pe+4>>2]=0;o[n>>2]=o[Pe>>2];o[n+4>>2]=o[Pe+4>>2];pa(e,3696,n)|0;o[Oe>>2]=2;o[Oe+4>>2]=0;o[n>>2]=o[Oe>>2];o[n+4>>2]=o[Oe+4>>2];ha(e,3706,n)|0;o[Ae>>2]=1;o[Ae+4>>2]=0;o[n>>2]=o[Ae>>2];o[n+4>>2]=o[Ae+4>>2];va(e,3722,n)|0;o[xe>>2]=2;o[xe+4>>2]=0;o[n>>2]=o[xe>>2];o[n+4>>2]=o[xe+4>>2];va(e,3734,n)|0;o[Te>>2]=3;o[Te+4>>2]=0;o[n>>2]=o[Te>>2];o[n+4>>2]=o[Te+4>>2];ha(e,3753,n)|0;o[ke>>2]=4;o[ke+4>>2]=0;o[n>>2]=o[ke>>2];o[n+4>>2]=o[ke+4>>2];ha(e,3769,n)|0;o[Ce>>2]=5;o[Ce+4>>2]=0;o[n>>2]=o[Ce>>2];o[n+4>>2]=o[Ce+4>>2];ha(e,3783,n)|0;o[Se>>2]=6;o[Se+4>>2]=0;o[n>>2]=o[Se>>2];o[n+4>>2]=o[Se+4>>2];ha(e,3796,n)|0;o[De>>2]=7;o[De+4>>2]=0;o[n>>2]=o[De>>2];o[n+4>>2]=o[De+4>>2];ha(e,3813,n)|0;o[Ee>>2]=8;o[Ee+4>>2]=0;o[n>>2]=o[Ee>>2];o[n+4>>2]=o[Ee+4>>2];ha(e,3825,n)|0;o[we>>2]=3;o[we+4>>2]=0;o[n>>2]=o[we>>2];o[n+4>>2]=o[we+4>>2];va(e,3843,n)|0;o[be>>2]=4;o[be+4>>2]=0;o[n>>2]=o[be>>2];o[n+4>>2]=o[be+4>>2];va(e,3853,n)|0;o[_e>>2]=9;o[_e+4>>2]=0;o[n>>2]=o[_e>>2];o[n+4>>2]=o[_e+4>>2];ha(e,3870,n)|0;o[ye>>2]=10;o[ye+4>>2]=0;o[n>>2]=o[ye>>2];o[n+4>>2]=o[ye+4>>2];ha(e,3884,n)|0;o[ge>>2]=11;o[ge+4>>2]=0;o[n>>2]=o[ge>>2];o[n+4>>2]=o[ge+4>>2];ha(e,3896,n)|0;o[me>>2]=1;o[me+4>>2]=0;o[n>>2]=o[me>>2];o[n+4>>2]=o[me+4>>2];ma(e,3907,n)|0;o[ve>>2]=2;o[ve+4>>2]=0;o[n>>2]=o[ve>>2];o[n+4>>2]=o[ve+4>>2];ma(e,3915,n)|0;o[he>>2]=3;o[he+4>>2]=0;o[n>>2]=o[he>>2];o[n+4>>2]=o[he+4>>2];ma(e,3928,n)|0;o[pe>>2]=4;o[pe+4>>2]=0;o[n>>2]=o[pe>>2];o[n+4>>2]=o[pe+4>>2];ma(e,3948,n)|0;o[de>>2]=5;o[de+4>>2]=0;o[n>>2]=o[de>>2];o[n+4>>2]=o[de+4>>2];ma(e,3960,n)|0;o[fe>>2]=6;o[fe+4>>2]=0;o[n>>2]=o[fe>>2];o[n+4>>2]=o[fe+4>>2];ma(e,3974,n)|0;o[ce>>2]=7;o[ce+4>>2]=0;o[n>>2]=o[ce>>2];o[n+4>>2]=o[ce+4>>2];ma(e,3983,n)|0;o[se>>2]=20;o[se+4>>2]=0;o[n>>2]=o[se>>2];o[n+4>>2]=o[se+4>>2];da(e,3999,n)|0;o[le>>2]=8;o[le+4>>2]=0;o[n>>2]=o[le>>2];o[n+4>>2]=o[le+4>>2];ma(e,4012,n)|0;o[ae>>2]=9;o[ae+4>>2]=0;o[n>>2]=o[ae>>2];o[n+4>>2]=o[ae+4>>2];ma(e,4022,n)|0;o[ue>>2]=21;o[ue+4>>2]=0;o[n>>2]=o[ue>>2];o[n+4>>2]=o[ue+4>>2];da(e,4039,n)|0;o[oe>>2]=10;o[oe+4>>2]=0;o[n>>2]=o[oe>>2];o[n+4>>2]=o[oe+4>>2];ma(e,4053,n)|0;o[ie>>2]=11;o[ie+4>>2]=0;o[n>>2]=o[ie>>2];o[n+4>>2]=o[ie+4>>2];ma(e,4065,n)|0;o[re>>2]=12;o[re+4>>2]=0;o[n>>2]=o[re>>2];o[n+4>>2]=o[re+4>>2];ma(e,4084,n)|0;o[ne>>2]=13;o[ne+4>>2]=0;o[n>>2]=o[ne>>2];o[n+4>>2]=o[ne+4>>2];ma(e,4097,n)|0;o[te>>2]=14;o[te+4>>2]=0;o[n>>2]=o[te>>2];o[n+4>>2]=o[te+4>>2];ma(e,4117,n)|0;o[ee>>2]=15;o[ee+4>>2]=0;o[n>>2]=o[ee>>2];o[n+4>>2]=o[ee+4>>2];ma(e,4129,n)|0;o[Z>>2]=16;o[Z+4>>2]=0;o[n>>2]=o[Z>>2];o[n+4>>2]=o[Z+4>>2];ma(e,4148,n)|0;o[J>>2]=17;o[J+4>>2]=0;o[n>>2]=o[J>>2];o[n+4>>2]=o[J+4>>2];ma(e,4161,n)|0;o[Q>>2]=18;o[Q+4>>2]=0;o[n>>2]=o[Q>>2];o[n+4>>2]=o[Q+4>>2];ma(e,4181,n)|0;o[X>>2]=5;o[X+4>>2]=0;o[n>>2]=o[X>>2];o[n+4>>2]=o[X+4>>2];va(e,4196,n)|0;o[K>>2]=6;o[K+4>>2]=0;o[n>>2]=o[K>>2];o[n+4>>2]=o[K+4>>2];va(e,4206,n)|0;o[Y>>2]=7;o[Y+4>>2]=0;o[n>>2]=o[Y>>2];o[n+4>>2]=o[Y+4>>2];va(e,4217,n)|0;o[$>>2]=3;o[$+4>>2]=0;o[n>>2]=o[$>>2];o[n+4>>2]=o[$+4>>2];ga(e,4235,n)|0;o[G>>2]=1;o[G+4>>2]=0;o[n>>2]=o[G>>2];o[n+4>>2]=o[G+4>>2];ya(e,4251,n)|0;o[q>>2]=4;o[q+4>>2]=0;o[n>>2]=o[q>>2];o[n+4>>2]=o[q+4>>2];ga(e,4263,n)|0;o[V>>2]=5;o[V+4>>2]=0;o[n>>2]=o[V>>2];o[n+4>>2]=o[V+4>>2];ga(e,4279,n)|0;o[H>>2]=6;o[H+4>>2]=0;o[n>>2]=o[H>>2];o[n+4>>2]=o[H+4>>2];ga(e,4293,n)|0;o[W>>2]=7;o[W+4>>2]=0;o[n>>2]=o[W>>2];o[n+4>>2]=o[W+4>>2];ga(e,4306,n)|0;o[z>>2]=8;o[z+4>>2]=0;o[n>>2]=o[z>>2];o[n+4>>2]=o[z+4>>2];ga(e,4323,n)|0;o[U>>2]=9;o[U+4>>2]=0;o[n>>2]=o[U>>2];o[n+4>>2]=o[U+4>>2];ga(e,4335,n)|0;o[j>>2]=2;o[j+4>>2]=0;o[n>>2]=o[j>>2];o[n+4>>2]=o[j+4>>2];ya(e,4353,n)|0;o[B>>2]=12;o[B+4>>2]=0;o[n>>2]=o[B>>2];o[n+4>>2]=o[B+4>>2];_a(e,4363,n)|0;o[L>>2]=1;o[L+4>>2]=0;o[n>>2]=o[L>>2];o[n+4>>2]=o[L+4>>2];ba(e,4376,n)|0;o[F>>2]=2;o[F+4>>2]=0;o[n>>2]=o[F>>2];o[n+4>>2]=o[F+4>>2];ba(e,4388,n)|0;o[R>>2]=13;o[R+4>>2]=0;o[n>>2]=o[R>>2];o[n+4>>2]=o[R+4>>2];_a(e,4402,n)|0;o[M>>2]=14;o[M+4>>2]=0;o[n>>2]=o[M>>2];o[n+4>>2]=o[M+4>>2];_a(e,4411,n)|0;o[N>>2]=15;o[N+4>>2]=0;o[n>>2]=o[N>>2];o[n+4>>2]=o[N+4>>2];_a(e,4421,n)|0;o[I>>2]=16;o[I+4>>2]=0;o[n>>2]=o[I>>2];o[n+4>>2]=o[I+4>>2];_a(e,4433,n)|0;o[P>>2]=17;o[P+4>>2]=0;o[n>>2]=o[P>>2];o[n+4>>2]=o[P+4>>2];_a(e,4446,n)|0;o[O>>2]=18;o[O+4>>2]=0;o[n>>2]=o[O>>2];o[n+4>>2]=o[O+4>>2];_a(e,4458,n)|0;o[A>>2]=3;o[A+4>>2]=0;o[n>>2]=o[A>>2];o[n+4>>2]=o[A+4>>2];ba(e,4471,n)|0;o[x>>2]=1;o[x+4>>2]=0;o[n>>2]=o[x>>2];o[n+4>>2]=o[x+4>>2];wa(e,4486,n)|0;o[T>>2]=10;o[T+4>>2]=0;o[n>>2]=o[T>>2];o[n+4>>2]=o[T+4>>2];ga(e,4496,n)|0;o[k>>2]=11;o[k+4>>2]=0;o[n>>2]=o[k>>2];o[n+4>>2]=o[k+4>>2];ga(e,4508,n)|0;o[C>>2]=3;o[C+4>>2]=0;o[n>>2]=o[C>>2];o[n+4>>2]=o[C+4>>2];ya(e,4519,n)|0;o[S>>2]=4;o[S+4>>2]=0;o[n>>2]=o[S>>2];o[n+4>>2]=o[S+4>>2];Ea(e,4530,n)|0;o[D>>2]=19;o[D+4>>2]=0;o[n>>2]=o[D>>2];o[n+4>>2]=o[D+4>>2];Da(e,4542,n)|0;o[E>>2]=12;o[E+4>>2]=0;o[n>>2]=o[E>>2];o[n+4>>2]=o[E+4>>2];Sa(e,4554,n)|0;o[w>>2]=13;o[w+4>>2]=0;o[n>>2]=o[w>>2];o[n+4>>2]=o[w+4>>2];Ca(e,4568,n)|0;o[b>>2]=2;o[b+4>>2]=0;o[n>>2]=o[b>>2];o[n+4>>2]=o[b+4>>2];ka(e,4578,n)|0;o[_>>2]=20;o[_+4>>2]=0;o[n>>2]=o[_>>2];o[n+4>>2]=o[_+4>>2];Ta(e,4587,n)|0;o[y>>2]=22;o[y+4>>2]=0;o[n>>2]=o[y>>2];o[n+4>>2]=o[y+4>>2];da(e,4602,n)|0;o[g>>2]=23;o[g+4>>2]=0;o[n>>2]=o[g>>2];o[n+4>>2]=o[g+4>>2];da(e,4619,n)|0;o[m>>2]=14;o[m+4>>2]=0;o[n>>2]=o[m>>2];o[n+4>>2]=o[m+4>>2];xa(e,4629,n)|0;o[v>>2]=1;o[v+4>>2]=0;o[n>>2]=o[v>>2];o[n+4>>2]=o[v+4>>2];Aa(e,4637,n)|0;o[p>>2]=4;o[p+4>>2]=0;o[n>>2]=o[p>>2];o[n+4>>2]=o[p+4>>2];ba(e,4653,n)|0;o[d>>2]=5;o[d+4>>2]=0;o[n>>2]=o[d>>2];o[n+4>>2]=o[d+4>>2];ba(e,4669,n)|0;o[f>>2]=6;o[f+4>>2]=0;o[n>>2]=o[f>>2];o[n+4>>2]=o[f+4>>2];ba(e,4686,n)|0;o[c>>2]=7;o[c+4>>2]=0;o[n>>2]=o[c>>2];o[n+4>>2]=o[c+4>>2];ba(e,4701,n)|0;o[s>>2]=8;o[s+4>>2]=0;o[n>>2]=o[s>>2];o[n+4>>2]=o[s+4>>2];ba(e,4719,n)|0;o[l>>2]=9;o[l+4>>2]=0;o[n>>2]=o[l>>2];o[n+4>>2]=o[l+4>>2];ba(e,4736,n)|0;o[a>>2]=21;o[a+4>>2]=0;o[n>>2]=o[a>>2];o[n+4>>2]=o[a+4>>2];Oa(e,4754,n)|0;o[u>>2]=2;o[u+4>>2]=0;o[n>>2]=o[u>>2];o[n+4>>2]=o[u+4>>2];wa(e,4772,n)|0;o[i>>2]=3;o[i+4>>2]=0;o[n>>2]=o[i>>2];o[n+4>>2]=o[i+4>>2];wa(e,4790,n)|0;o[r>>2]=4;o[r+4>>2]=0;o[n>>2]=o[r>>2];o[n+4>>2]=o[r+4>>2];wa(e,4808,n)|0;h=t;return}function la(e,t){e=e|0;t=t|0;var n=0;n=Mm()|0;o[e>>2]=n;Rm(n,t);cw(o[e>>2]|0);return}function sa(e,t,n){e=e|0;t=t|0;n=n|0;gm(e,Ia(t)|0,n,0);return e|0}function ca(e,t,n){e=e|0;t=t|0;n=n|0;Xv(e,Ia(t)|0,n,0);return e|0}function fa(e,t,n){e=e|0;t=t|0;n=n|0;Nv(e,Ia(t)|0,n,0);return e|0}function da(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];hv(e,t,i);h=r;return e|0}function pa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Gh(e,t,i);h=r;return e|0}function ha(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Th(e,t,i);h=r;return e|0}function va(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];lh(e,t,i);h=r;return e|0}function ma(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Hp(e,t,i);h=r;return e|0}function ga(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Sp(e,t,i);h=r;return e|0}function ya(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];op(e,t,i);h=r;return e|0}function _a(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Cd(e,t,i);h=r;return e|0}function ba(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ud(e,t,i);h=r;return e|0}function wa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];zf(e,t,i);h=r;return e|0}function Ea(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Ef(e,t,i);h=r;return e|0}function Da(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Zc(e,t,i);h=r;return e|0}function Sa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Nc(e,t,i);h=r;return e|0}function Ca(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];hc(e,t,i);h=r;return e|0}function ka(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];qs(e,t,i);h=r;return e|0}function Ta(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ws(e,t,i);h=r;return e|0}function xa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ts(e,t,i);h=r;return e|0}function Aa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Ol(e,t,i);h=r;return e|0}function Oa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Pa(e,t,i);h=r;return e|0}function Pa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Na(e,n,i,1);h=r;return}function Ia(e){e=e|0;return e|0}function Na(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Ma()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Ra(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Fa(u,r)|0,r);h=i;return}function Ma(){var e=0,t=0;if(!(r[7616]|0)){Ya(9136);Fe(24,9136,g|0)|0;t=7616;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9136)|0)){e=9136;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Ya(9136)}return 9136}function Ra(e){e=e|0;return 0}function Fa(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Ma()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Wa(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Ha(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function La(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;var a=0,l=0,s=0,c=0,f=0,d=0,p=0,v=0;a=h;h=h+32|0;p=a+24|0;d=a+20|0;s=a+16|0;f=a+12|0;c=a+8|0;l=a+4|0;v=a;o[d>>2]=t;o[s>>2]=n;o[f>>2]=r;o[c>>2]=i;o[l>>2]=u;u=e+28|0;o[v>>2]=o[u>>2];o[p>>2]=o[v>>2];Ba(e+24|0,p,d,f,c,s,l)|0;o[u>>2]=o[o[u>>2]>>2];h=a;return}function Ba(e,t,n,r,i,u,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;a=a|0;e=ja(t)|0;t=$T(24)|0;Ua(t+4|0,o[n>>2]|0,o[r>>2]|0,o[i>>2]|0,o[u>>2]|0,o[a>>2]|0);o[t>>2]=o[e>>2];o[e>>2]=t;return t|0}function ja(e){e=e|0;return o[e>>2]|0}function Ua(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=r;o[e+12>>2]=i;o[e+16>>2]=u;return}function za(e,t){e=e|0;t=t|0;return t|e|0}function Wa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Ha(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Va(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;qa(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Wa(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Ga(e,l);$a(l);h=c;return}}function Va(e){e=e|0;return 357913941}function qa(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Ga(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function $a(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Ya(e){e=e|0;Ja(e);return}function Ka(e){e=e|0;Qa(e+24|0);return}function Xa(e){e=e|0;return o[e>>2]|0}function Qa(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Ja(e){e=e|0;var t=0;t=Za()|0;nl(e,2,3,t,el()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Za(){return 9228}function el(){return 1140}function tl(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=rl(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=il(t,r)|0;h=n;return t|0}function nl(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=r;o[e+12>>2]=i;o[e+16>>2]=u;return}function rl(e){e=e|0;return(o[(Ma()|0)+24>>2]|0)+(e*12|0)|0}function il(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+48|0;r=i;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;vA[n&31](r,e);r=ol(r)|0;h=i;return r|0}function ol(e){e=e|0;var t=0,n=0,r=0,i=0;i=h;h=h+32|0;t=i+12|0;n=i;r=al(ul()|0)|0;if(!r)e=dl(e)|0;else{ll(t,r);sl(n,t);cl(e,n);e=fl(t)|0}h=i;return e|0}function ul(){var e=0;if(!(r[7632]|0)){Dl(9184);Fe(25,9184,g|0)|0;e=7632;o[e>>2]=1;o[e+4>>2]=0}return 9184}function al(e){e=e|0;return o[e+36>>2]|0}function ll(e,t){e=e|0;t=t|0;o[e>>2]=t;o[e+4>>2]=e;o[e+8>>2]=0;return}function sl(e,t){e=e|0;t=t|0;o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=0;return}function cl(e,t){e=e|0;t=t|0;gl(t,e,e+8|0,e+16|0,e+24|0,e+32|0,e+40|0)|0;return}function fl(e){e=e|0;return o[(o[e+4>>2]|0)+8>>2]|0}function dl(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0,s=0;s=h;h=h+16|0;n=s+4|0;r=s;i=UD(8)|0;u=i;a=$T(48)|0;l=a;t=l+48|0;do{o[l>>2]=o[e>>2];l=l+4|0;e=e+4|0}while((l|0)<(t|0));t=u+4|0;o[t>>2]=a;l=$T(8)|0;a=o[t>>2]|0;o[r>>2]=0;o[n>>2]=o[r>>2];pl(l,a,n);o[i>>2]=l;h=s;return u|0}function pl(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;n=$T(16)|0;o[n+4>>2]=0;o[n+8>>2]=0;o[n>>2]=1092;o[n+12>>2]=t;o[e+4>>2]=n;return}function hl(e){e=e|0;zT(e);KT(e);return}function vl(e){e=e|0;e=o[e+12>>2]|0;if(e|0)KT(e);return}function ml(e){e=e|0;KT(e);return}function gl(e,t,n,r,i,u,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;a=a|0;u=yl(o[e>>2]|0,t,n,r,i,u,a)|0;a=e+4|0;o[(o[a>>2]|0)+8>>2]=u;return o[(o[a>>2]|0)+8>>2]|0}function yl(e,t,n,r,i,o,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;u=u|0;var a=0,l=0;a=h;h=h+16|0;l=a;Dk(l);e=Eu(e)|0;u=_l(e,+c[t>>3],+c[n>>3],+c[r>>3],+c[i>>3],+c[o>>3],+c[u>>3])|0;Ck(l);h=a;return u|0}function _l(e,t,n,r,i,o,u){e=e|0;t=+t;n=+n;r=+r;i=+i;o=+o;u=+u;var a=0;a=Cu(bl()|0)|0;t=+ku(t);n=+ku(n);r=+ku(r);i=+ku(i);o=+ku(o);return Te(0,a|0,e|0,+t,+n,+r,+i,+o,+ +ku(u))|0}function bl(){var e=0;if(!(r[7624]|0)){wl(9172);e=7624;o[e>>2]=1;o[e+4>>2]=0}return 9172}function wl(e){e=e|0;Lu(e,El()|0,6);return}function El(){return 1112}function Dl(e){e=e|0;Al(e);return}function Sl(e){e=e|0;Cl(e+24|0);kl(e+16|0);return}function Cl(e){e=e|0;xl(e);return}function kl(e){e=e|0;Tl(e);return}function Tl(e){e=e|0;var t=0,n=0;t=o[e>>2]|0;if(t|0)do{n=t;t=o[t>>2]|0;KT(n)}while((t|0)!=0);o[e>>2]=0;return}function xl(e){e=e|0;var t=0,n=0;t=o[e>>2]|0;if(t|0)do{n=t;t=o[t>>2]|0;KT(n)}while((t|0)!=0);o[e>>2]=0;return}function Al(e){e=e|0;var t=0;o[e+16>>2]=0;o[e+20>>2]=0;t=e+24|0;o[t>>2]=0;o[e+28>>2]=t;o[e+36>>2]=0;r[e+40>>0]=0;r[e+41>>0]=0;return}function Ol(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Pl(e,n,i,0);h=r;return}function Pl(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Il()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Nl(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Ml(u,r)|0,r);h=i;return}function Il(){var e=0,t=0;if(!(r[7640]|0)){zl(9232);Fe(26,9232,g|0)|0;t=7640;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9232)|0)){e=9232;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));zl(9232)}return 9232}function Nl(e){e=e|0;return 0}function Ml(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Il()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Rl(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Fl(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Rl(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Fl(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Ll(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Bl(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Rl(u,r,n);o[s>>2]=(o[s>>2]|0)+12;jl(e,l);Ul(l);h=c;return}}function Ll(e){e=e|0;return 357913941}function Bl(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function jl(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Ul(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function zl(e){e=e|0;Vl(e);return}function Wl(e){e=e|0;Hl(e+24|0);return}function Hl(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Vl(e){e=e|0;var t=0;t=Za()|0;nl(e,2,1,t,ql()|0,3);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function ql(){return 1144}function Gl(e,t,n,r,i){e=e|0;t=t|0;n=+n;r=+r;i=i|0;var u=0,a=0,l=0,s=0;u=h;h=h+16|0;a=u+8|0;l=u;s=$l(e)|0;e=o[s+4>>2]|0;o[l>>2]=o[s>>2];o[l+4>>2]=e;o[a>>2]=o[l>>2];o[a+4>>2]=o[l+4>>2];Yl(t,a,n,r,i);h=u;return}function $l(e){e=e|0;return(o[(Il()|0)+24>>2]|0)+(e*12|0)|0}function Yl(e,t,n,r,i){e=e|0;t=t|0;n=+n;r=+r;i=i|0;var u=0,a=0,l=0,s=0,c=0;c=h;h=h+16|0;a=c+2|0;l=c+1|0;s=c;u=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)u=o[(o[e>>2]|0)+u>>2]|0;Kl(a,n);n=+Xl(a,n);Kl(l,r);r=+Xl(l,r);Ql(s,i);s=Jl(s,i)|0;gA[u&1](e,n,r,s);h=c;return}function Kl(e,t){e=e|0;t=+t;return}function Xl(e,t){e=e|0;t=+t;return+ +es(t)}function Ql(e,t){e=e|0;t=t|0;return}function Jl(e,t){e=e|0;t=t|0;return Zl(t)|0}function Zl(e){e=e|0;return e|0}function es(e){e=+e;return+e}function ts(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ns(e,n,i,1);h=r;return}function ns(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=rs()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=is(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,os(u,r)|0,r);h=i;return}function rs(){var e=0,t=0;if(!(r[7648]|0)){ds(9268);Fe(27,9268,g|0)|0;t=7648;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9268)|0)){e=9268;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));ds(9268)}return 9268}function is(e){e=e|0;return 0}function os(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=rs()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];us(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{as(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function us(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function as(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=ls(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;ss(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];us(u,r,n);o[s>>2]=(o[s>>2]|0)+12;cs(e,l);fs(l);h=c;return}}function ls(e){e=e|0;return 357913941}function ss(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function cs(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function fs(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function ds(e){e=e|0;vs(e);return}function ps(e){e=e|0;hs(e+24|0);return}function hs(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function vs(e){e=e|0;var t=0;t=Za()|0;nl(e,2,4,t,ms()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function ms(){return 1160}function gs(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=ys(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=_s(t,r)|0;h=n;return t|0}function ys(e){e=e|0;return(o[(rs()|0)+24>>2]|0)+(e*12|0)|0}function _s(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return bs(mA[n&31](e)|0)|0}function bs(e){e=e|0;return e&1|0}function ws(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Es(e,n,i,0);h=r;return}function Es(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Ds()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Ss(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Cs(u,r)|0,r);h=i;return}function Ds(){var e=0,t=0;if(!(r[7656]|0)){Is(9304);Fe(28,9304,g|0)|0;t=7656;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9304)|0)){e=9304;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Is(9304)}return 9304}function Ss(e){e=e|0;return 0}function Cs(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Ds()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];ks(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Ts(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function ks(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Ts(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=xs(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;As(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];ks(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Os(e,l);Ps(l);h=c;return}}function xs(e){e=e|0;return 357913941}function As(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Os(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Ps(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Is(e){e=e|0;Rs(e);return}function Ns(e){e=e|0;Ms(e+24|0);return}function Ms(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Rs(e){e=e|0;var t=0;t=Za()|0;nl(e,2,5,t,Fs()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Fs(){return 1164}function Ls(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=Bs(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];js(t,i,n);h=r;return}function Bs(e){e=e|0;return(o[(Ds()|0)+24>>2]|0)+(e*12|0)|0}function js(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Us(i,n);n=zs(i,n)|0;vA[r&31](e,n);Ws(i);h=u;return}function Us(e,t){e=e|0;t=t|0;Hs(e,t);return}function zs(e,t){e=e|0;t=t|0;return e|0}function Ws(e){e=e|0;Ji(e);return}function Hs(e,t){e=e|0;t=t|0;Vs(e,t);return}function Vs(e,t){e=e|0;t=t|0;o[e>>2]=t;return}function qs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Gs(e,n,i,0);h=r;return}function Gs(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=$s()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Ys(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Ks(u,r)|0,r);h=i;return}function $s(){var e=0,t=0;if(!(r[7664]|0)){nc(9340);Fe(29,9340,g|0)|0;t=7664;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9340)|0)){e=9340;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));nc(9340)}return 9340}function Ys(e){e=e|0;return 0}function Ks(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=$s()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Xs(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Qs(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Xs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Qs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Js(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Zs(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Xs(u,r,n);o[s>>2]=(o[s>>2]|0)+12;ec(e,l);tc(l);h=c;return}}function Js(e){e=e|0;return 357913941}function Zs(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function ec(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function tc(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function nc(e){e=e|0;oc(e);return}function rc(e){e=e|0;ic(e+24|0);return}function ic(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function oc(e){e=e|0;var t=0;t=Za()|0;nl(e,2,4,t,uc()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function uc(){return 1180}function ac(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=lc(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];n=sc(t,i,n)|0;h=r;return n|0}function lc(e){e=e|0;return(o[($s()|0)+24>>2]|0)+(e*12|0)|0}function sc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;cc(i,n);i=fc(i,n)|0;i=dc(DA[r&15](e,i)|0)|0;h=u;return i|0}function cc(e,t){e=e|0;t=t|0;return}function fc(e,t){e=e|0;t=t|0;return pc(t)|0}function dc(e){e=e|0;return e|0}function pc(e){e=e|0;return e|0}function hc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];vc(e,n,i,0);h=r;return}function vc(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=mc()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=gc(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,yc(u,r)|0,r);h=i;return}function mc(){var e=0,t=0;if(!(r[7672]|0)){Cc(9376);Fe(30,9376,g|0)|0;t=7672;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9376)|0)){e=9376;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Cc(9376)}return 9376}function gc(e){e=e|0;return 0}function yc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=mc()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];_c(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{bc(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function _c(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function bc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=wc(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Ec(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];_c(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Dc(e,l);Sc(l);h=c;return}}function wc(e){e=e|0;return 357913941}function Ec(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Dc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Sc(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Cc(e){e=e|0;xc(e);return}function kc(e){e=e|0;Tc(e+24|0);return}function Tc(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function xc(e){e=e|0;var t=0;t=Za()|0;nl(e,2,5,t,Ac()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Ac(){return 1196}function Oc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=Pc(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=Ic(t,r)|0;h=n;return t|0}function Pc(e){e=e|0;return(o[(mc()|0)+24>>2]|0)+(e*12|0)|0}function Ic(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return dc(mA[n&31](e)|0)|0}function Nc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Mc(e,n,i,1);h=r;return}function Mc(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Rc()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Fc(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Lc(u,r)|0,r);h=i;return}function Rc(){var e=0,t=0;if(!(r[7680]|0)){Vc(9412);Fe(31,9412,g|0)|0;t=7680;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9412)|0)){e=9412;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Vc(9412)}return 9412}function Fc(e){e=e|0;return 0}function Lc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Rc()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Bc(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{jc(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Bc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function jc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Uc(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;zc(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Bc(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Wc(e,l);Hc(l);h=c;return}}function Uc(e){e=e|0;return 357913941}function zc(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Wc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Hc(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Vc(e){e=e|0;$c(e);return}function qc(e){e=e|0;Gc(e+24|0);return}function Gc(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function $c(e){e=e|0;var t=0;t=Za()|0;nl(e,2,6,t,Yc()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Yc(){return 1200}function Kc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=Xc(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=Qc(t,r)|0;h=n;return t|0}function Xc(e){e=e|0;return(o[(Rc()|0)+24>>2]|0)+(e*12|0)|0}function Qc(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return Jc(mA[n&31](e)|0)|0}function Jc(e){e=e|0;return e|0}function Zc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ef(e,n,i,0);h=r;return}function ef(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=tf()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=nf(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,rf(u,r)|0,r);h=i;return}function tf(){var e=0,t=0;if(!(r[7688]|0)){ff(9448);Fe(32,9448,g|0)|0;t=7688;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9448)|0)){e=9448;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));ff(9448)}return 9448}function nf(e){e=e|0;return 0}function rf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=tf()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];of(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{uf(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function of(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function uf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=af(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;lf(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];of(u,r,n);o[s>>2]=(o[s>>2]|0)+12;sf(e,l);cf(l);h=c;return}}function af(e){e=e|0;return 357913941}function lf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function sf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function cf(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function ff(e){e=e|0;hf(e);return}function df(e){e=e|0;pf(e+24|0);return}function pf(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function hf(e){e=e|0;var t=0;t=Za()|0;nl(e,2,6,t,vf()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function vf(){return 1204}function mf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=gf(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];yf(t,i,n);h=r;return}function gf(e){e=e|0;return(o[(tf()|0)+24>>2]|0)+(e*12|0)|0}function yf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;_f(i,n);i=bf(i,n)|0;vA[r&31](e,i);h=u;return}function _f(e,t){e=e|0;t=t|0;return}function bf(e,t){e=e|0;t=t|0;return wf(t)|0}function wf(e){e=e|0;return e|0}function Ef(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Df(e,n,i,0);h=r;return}function Df(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Sf()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Cf(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,kf(u,r)|0,r);h=i;return}function Sf(){var e=0,t=0;if(!(r[7696]|0)){Nf(9484);Fe(33,9484,g|0)|0;t=7696;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9484)|0)){e=9484;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Nf(9484)}return 9484}function Cf(e){e=e|0;return 0}function kf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Sf()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Tf(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{xf(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Tf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function xf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Af(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Of(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Tf(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Pf(e,l);If(l);h=c;return}}function Af(e){e=e|0;return 357913941}function Of(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Pf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function If(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Nf(e){e=e|0;Ff(e);return}function Mf(e){e=e|0;Rf(e+24|0);return}function Rf(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Ff(e){e=e|0;var t=0;t=Za()|0;nl(e,2,1,t,Lf()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Lf(){return 1212}function Bf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;i=h;h=h+16|0;u=i+8|0;a=i;l=jf(e)|0;e=o[l+4>>2]|0;o[a>>2]=o[l>>2];o[a+4>>2]=e;o[u>>2]=o[a>>2];o[u+4>>2]=o[a+4>>2];Uf(t,u,n,r);h=i;return}function jf(e){e=e|0;return(o[(Sf()|0)+24>>2]|0)+(e*12|0)|0}function Uf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;l=h;h=h+16|0;u=l+1|0;a=l;i=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)i=o[(o[e>>2]|0)+i>>2]|0;_f(u,n);u=bf(u,n)|0;cc(a,r);a=fc(a,r)|0;PA[i&15](e,u,a);h=l;return}function zf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Wf(e,n,i,1);h=r;return}function Wf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Hf()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Vf(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,qf(u,r)|0,r);h=i;return}function Hf(){var e=0,t=0;if(!(r[7704]|0)){Jf(9520);Fe(34,9520,g|0)|0;t=7704;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9520)|0)){e=9520;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Jf(9520)}return 9520}function Vf(e){e=e|0;return 0}function qf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Hf()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Gf(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{$f(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Gf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function $f(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Yf(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Kf(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Gf(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Xf(e,l);Qf(l);h=c;return}}function Yf(e){e=e|0;return 357913941}function Kf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Xf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Qf(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Jf(e){e=e|0;td(e);return}function Zf(e){e=e|0;ed(e+24|0);return}function ed(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function td(e){e=e|0;var t=0;t=Za()|0;nl(e,2,1,t,nd()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function nd(){return 1224}function rd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0.0,i=0,u=0,a=0,l=0;i=h;h=h+16|0;u=i+8|0;a=i;l=id(e)|0;e=o[l+4>>2]|0;o[a>>2]=o[l>>2];o[a+4>>2]=e;o[u>>2]=o[a>>2];o[u+4>>2]=o[a+4>>2];r=+od(t,u,n);h=i;return+r}function id(e){e=e|0;return(o[(Hf()|0)+24>>2]|0)+(e*12|0)|0}function od(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0.0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Ql(i,n);i=Jl(i,n)|0;a=+Mu(+kA[r&7](e,i));h=u;return+a}function ud(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ad(e,n,i,1);h=r;return}function ad(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=ld()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=sd(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,cd(u,r)|0,r);h=i;return}function ld(){var e=0,t=0;if(!(r[7712]|0)){gd(9556);Fe(35,9556,g|0)|0;t=7712;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9556)|0)){e=9556;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));gd(9556)}return 9556}function sd(e){e=e|0;return 0}function cd(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=ld()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];fd(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{dd(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function fd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function dd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=pd(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;hd(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];fd(u,r,n);o[s>>2]=(o[s>>2]|0)+12;vd(e,l);md(l);h=c;return}}function pd(e){e=e|0;return 357913941}function hd(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function vd(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function md(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function gd(e){e=e|0;bd(e);return}function yd(e){e=e|0;_d(e+24|0);return}function _d(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function bd(e){e=e|0;var t=0;t=Za()|0;nl(e,2,5,t,wd()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function wd(){return 1232}function Ed(e,t){e=e|0;t=t|0;var n=0.0,r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=Dd(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];n=+Sd(t,i);h=r;return+n}function Dd(e){e=e|0;return(o[(ld()|0)+24>>2]|0)+(e*12|0)|0}function Sd(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return+ +Mu(+wA[n&15](e))}function Cd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];kd(e,n,i,1);h=r;return}function kd(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Td()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=xd(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Ad(u,r)|0,r);h=i;return}function Td(){var e=0,t=0;if(!(r[7720]|0)){Fd(9592);Fe(36,9592,g|0)|0;t=7720;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9592)|0)){e=9592;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Fd(9592)}return 9592}function xd(e){e=e|0;return 0}function Ad(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Td()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Od(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Pd(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Od(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Pd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Id(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Nd(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Od(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Md(e,l);Rd(l);h=c;return}}function Id(e){e=e|0;return 357913941}function Nd(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Md(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Rd(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Fd(e){e=e|0;jd(e);return}function Ld(e){e=e|0;Bd(e+24|0);return}function Bd(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function jd(e){e=e|0;var t=0;t=Za()|0;nl(e,2,7,t,Ud()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Ud(){return 1276}function zd(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=Wd(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=Hd(t,r)|0;h=n;return t|0}function Wd(e){e=e|0;return(o[(Td()|0)+24>>2]|0)+(e*12|0)|0}function Hd(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+16|0;r=i;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;vA[n&31](r,e);r=Vd(r)|0;h=i;return r|0}function Vd(e){e=e|0;var t=0,n=0,r=0,i=0;i=h;h=h+32|0;t=i+12|0;n=i;r=al(qd()|0)|0;if(!r)e=$d(e)|0;else{ll(t,r);sl(n,t);Gd(e,n);e=fl(t)|0}h=i;return e|0}function qd(){var e=0;if(!(r[7736]|0)){ip(9640);Fe(25,9640,g|0)|0;e=7736;o[e>>2]=1;o[e+4>>2]=0}return 9640}function Gd(e,t){e=e|0;t=t|0;Jd(t,e,e+8|0)|0;return}function $d(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0;n=h;h=h+16|0;i=n+4|0;a=n;r=UD(8)|0;t=r;l=$T(16)|0;o[l>>2]=o[e>>2];o[l+4>>2]=o[e+4>>2];o[l+8>>2]=o[e+8>>2];o[l+12>>2]=o[e+12>>2];u=t+4|0;o[u>>2]=l;e=$T(8)|0;u=o[u>>2]|0;o[a>>2]=0;o[i>>2]=o[a>>2];Yd(e,u,i);o[r>>2]=e;h=n;return t|0}function Yd(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;n=$T(16)|0;o[n+4>>2]=0;o[n+8>>2]=0;o[n>>2]=1244;o[n+12>>2]=t;o[e+4>>2]=n;return}function Kd(e){e=e|0;zT(e);KT(e);return}function Xd(e){e=e|0;e=o[e+12>>2]|0;if(e|0)KT(e);return}function Qd(e){e=e|0;KT(e);return}function Jd(e,t,n){e=e|0;t=t|0;n=n|0;t=Zd(o[e>>2]|0,t,n)|0;n=e+4|0;o[(o[n>>2]|0)+8>>2]=t;return o[(o[n>>2]|0)+8>>2]|0}function Zd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+16|0;i=r;Dk(i);e=Eu(e)|0;n=ep(e,o[t>>2]|0,+c[n>>3])|0;Ck(i);h=r;return n|0}function ep(e,t,n){e=e|0;t=t|0;n=+n;var r=0;r=Cu(tp()|0)|0;t=Tu(t)|0;return xe(0,r|0,e|0,t|0,+ +ku(n))|0}function tp(){var e=0;if(!(r[7728]|0)){np(9628);e=7728;o[e>>2]=1;o[e+4>>2]=0}return 9628}function np(e){e=e|0;Lu(e,rp()|0,2);return}function rp(){return 1264}function ip(e){e=e|0;Al(e);return}function op(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];up(e,n,i,1);h=r;return}function up(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=ap()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=lp(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,sp(u,r)|0,r);h=i;return}function ap(){var e=0,t=0;if(!(r[7744]|0)){mp(9684);Fe(37,9684,g|0)|0;t=7744;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9684)|0)){e=9684;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));mp(9684)}return 9684}function lp(e){e=e|0;return 0}function sp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=ap()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];cp(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{fp(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function cp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function fp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=dp(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;pp(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];cp(u,r,n);o[s>>2]=(o[s>>2]|0)+12;hp(e,l);vp(l);h=c;return}}function dp(e){e=e|0;return 357913941}function pp(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function hp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function vp(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function mp(e){e=e|0;_p(e);return}function gp(e){e=e|0;yp(e+24|0);return}function yp(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function _p(e){e=e|0;var t=0;t=Za()|0;nl(e,2,5,t,bp()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function bp(){return 1280}function wp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=Ep(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];n=Dp(t,i,n)|0;h=r;return n|0}function Ep(e){e=e|0;return(o[(ap()|0)+24>>2]|0)+(e*12|0)|0}function Dp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;a=h;h=h+32|0;i=a;u=a+16|0;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Ql(u,n);u=Jl(u,n)|0;PA[r&15](i,e,u);u=Vd(i)|0;h=a;return u|0}function Sp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Cp(e,n,i,1);h=r;return}function Cp(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=kp()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Tp(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,xp(u,r)|0,r);h=i;return}function kp(){var e=0,t=0;if(!(r[7752]|0)){Rp(9720);Fe(38,9720,g|0)|0;t=7752;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9720)|0)){e=9720;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Rp(9720)}return 9720}function Tp(e){e=e|0;return 0}function xp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=kp()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Ap(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Op(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Ap(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Op(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Pp(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Ip(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Ap(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Np(e,l);Mp(l);h=c;return}}function Pp(e){e=e|0;return 357913941}function Ip(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Np(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Mp(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Rp(e){e=e|0;Bp(e);return}function Fp(e){e=e|0;Lp(e+24|0);return}function Lp(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Bp(e){e=e|0;var t=0;t=Za()|0;nl(e,2,8,t,jp()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function jp(){return 1288}function Up(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=zp(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=Wp(t,r)|0;h=n;return t|0}function zp(e){e=e|0;return(o[(kp()|0)+24>>2]|0)+(e*12|0)|0}function Wp(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return Nu(mA[n&31](e)|0)|0}function Hp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Vp(e,n,i,0);h=r;return}function Vp(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=qp()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Gp(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,$p(u,r)|0,r);h=i;return}function qp(){var e=0,t=0;if(!(r[7760]|0)){eh(9756);Fe(39,9756,g|0)|0;t=7760;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9756)|0)){e=9756;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));eh(9756)}return 9756}function Gp(e){e=e|0;return 0}function $p(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=qp()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Yp(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Kp(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Yp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Kp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Xp(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Qp(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Yp(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Jp(e,l);Zp(l);h=c;return}}function Xp(e){e=e|0;return 357913941}function Qp(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Jp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Zp(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function eh(e){e=e|0;rh(e);return}function th(e){e=e|0;nh(e+24|0);return}function nh(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function rh(e){e=e|0;var t=0;t=Za()|0;nl(e,2,8,t,ih()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function ih(){return 1292}function oh(e,t,n){e=e|0;t=t|0;n=+n;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=uh(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ah(t,i,n);h=r;return}function uh(e){e=e|0;return(o[(qp()|0)+24>>2]|0)+(e*12|0)|0}function ah(e,t,n){e=e|0;t=t|0;n=+n;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Kl(i,n);n=+Xl(i,n);dA[r&31](e,n);h=u;return}function lh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];sh(e,n,i,0);h=r;return}function sh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=ch()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=fh(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,dh(u,r)|0,r);h=i;return}function ch(){var e=0,t=0;if(!(r[7768]|0)){_h(9792);Fe(40,9792,g|0)|0;t=7768;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9792)|0)){e=9792;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));_h(9792)}return 9792}function fh(e){e=e|0;return 0}function dh(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=ch()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];ph(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{hh(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function ph(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function hh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=vh(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;mh(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];ph(u,r,n);o[s>>2]=(o[s>>2]|0)+12;gh(e,l);yh(l);h=c;return}}function vh(e){e=e|0;return 357913941}function mh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function gh(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function yh(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function _h(e){e=e|0;Eh(e);return}function bh(e){e=e|0;wh(e+24|0);return}function wh(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Eh(e){e=e|0;var t=0;t=Za()|0;nl(e,2,1,t,Dh()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Dh(){return 1300}function Sh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=+r;var i=0,u=0,a=0,l=0;i=h;h=h+16|0;u=i+8|0;a=i;l=Ch(e)|0;e=o[l+4>>2]|0;o[a>>2]=o[l>>2];o[a+4>>2]=e;o[u>>2]=o[a>>2];o[u+4>>2]=o[a+4>>2];kh(t,u,n,r);h=i;return}function Ch(e){e=e|0;return(o[(ch()|0)+24>>2]|0)+(e*12|0)|0}function kh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=+r;var i=0,u=0,a=0,l=0;l=h;h=h+16|0;u=l+1|0;a=l;i=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)i=o[(o[e>>2]|0)+i>>2]|0;Ql(u,n);u=Jl(u,n)|0;Kl(a,r);r=+Xl(a,r);NA[i&15](e,u,r);h=l;return}function Th(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];xh(e,n,i,0);h=r;return}function xh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Ah()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Oh(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Ph(u,r)|0,r);h=i;return}function Ah(){var e=0,t=0;if(!(r[7776]|0)){Bh(9828);Fe(41,9828,g|0)|0;t=7776;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9828)|0)){e=9828;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Bh(9828)}return 9828}function Oh(e){e=e|0;return 0}function Ph(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Ah()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Ih(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Nh(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Ih(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Nh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Mh(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Rh(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Ih(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Fh(e,l);Lh(l);h=c;return}}function Mh(e){e=e|0;return 357913941}function Rh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Fh(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Lh(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Bh(e){e=e|0;zh(e);return}function jh(e){e=e|0;Uh(e+24|0);return}function Uh(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function zh(e){e=e|0;var t=0;t=Za()|0;nl(e,2,7,t,Wh()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Wh(){return 1312}function Hh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=Vh(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];qh(t,i,n);h=r;return}function Vh(e){e=e|0;return(o[(Ah()|0)+24>>2]|0)+(e*12|0)|0}function qh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Ql(i,n);i=Jl(i,n)|0;vA[r&31](e,i);h=u;return}function Gh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];$h(e,n,i,0);h=r;return}function $h(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Yh()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Kh(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Xh(u,r)|0,r);h=i;return}function Yh(){var e=0,t=0;if(!(r[7784]|0)){rv(9864);Fe(42,9864,g|0)|0;t=7784;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9864)|0)){e=9864;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));rv(9864)}return 9864}function Kh(e){e=e|0;return 0}function Xh(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Yh()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Qh(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Jh(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Qh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Jh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Zh(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;ev(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Qh(u,r,n);o[s>>2]=(o[s>>2]|0)+12;tv(e,l);nv(l);h=c;return}}function Zh(e){e=e|0;return 357913941}function ev(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function tv(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function nv(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function rv(e){e=e|0;uv(e);return}function iv(e){e=e|0;ov(e+24|0);return}function ov(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function uv(e){e=e|0;var t=0;t=Za()|0;nl(e,2,8,t,av()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function av(){return 1320}function lv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=sv(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];cv(t,i,n);h=r;return}function sv(e){e=e|0;return(o[(Yh()|0)+24>>2]|0)+(e*12|0)|0}function cv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;fv(i,n);i=dv(i,n)|0;vA[r&31](e,i);h=u;return}function fv(e,t){e=e|0;t=t|0;return}function dv(e,t){e=e|0;t=t|0;return pv(t)|0}function pv(e){e=e|0;return e|0}function hv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];vv(e,n,i,0);h=r;return}function vv(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=mv()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=gv(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,yv(u,r)|0,r);h=i;return}function mv(){var e=0,t=0;if(!(r[7792]|0)){Cv(9900);Fe(43,9900,g|0)|0;t=7792;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9900)|0)){e=9900;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Cv(9900)}return 9900}function gv(e){e=e|0;return 0}function yv(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=mv()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];_v(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{bv(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function _v(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function bv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=wv(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Ev(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];_v(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Dv(e,l);Sv(l);h=c;return}}function wv(e){e=e|0;return 357913941}function Ev(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Dv(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Sv(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Cv(e){e=e|0;xv(e);return}function kv(e){e=e|0;Tv(e+24|0);return}function Tv(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function xv(e){e=e|0;var t=0;t=Za()|0;nl(e,2,22,t,Av()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Av(){return 1344}function Ov(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=Pv(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];Iv(t,r);h=n;return}function Pv(e){e=e|0;return(o[(mv()|0)+24>>2]|0)+(e*12|0)|0}function Iv(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;hA[n&127](e);return}function Nv(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=Mv()|0;e=Rv(n)|0;La(u,t,i,e,Fv(n,r)|0,r);return}function Mv(){var e=0,t=0;if(!(r[7800]|0)){Hv(9936);Fe(44,9936,g|0)|0;t=7800;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9936)|0)){e=9936;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Hv(9936)}return 9936}function Rv(e){e=e|0;return e|0}function Fv(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=Mv()|0;a=s+24|0;t=za(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){Lv(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{Bv(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function Lv(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function Bv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=jv(e)|0;if(r>>>0