mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-09 16:05:07 +00:00
## About The Pull Request Refactors most of blood handling code untouched by #90593 and completely rewrites all blood decals, components and reagents. - Blood types now have behavioral flags which allow them to control where they leave decals/DNA/viruses. Oil no longer transfers DNA and viruses with it, while podpeople water-blood doesn't leave visible decals on turfs and items, but still can be picked up by DNA scanners. - Multiple blood types have received unique handling - liquid electricity blood now glows in the dark, oil trails are flammable and lube ones are slippery. Oil blood can be restored with fuel, lube with silicon and slime with stable plasma (as normal plasma already passively regenerates their blood), instead of everything using iron. Saline solution only supplements on iron-based blood and won't do anything to help with bloodloss for species who rely on different blood types. (Roundstart this applies only to Ethereals) - All blood logic has been moved away from the blood reagent itself into a blood element that is assigned to the blood reagent by default, and to any reagent that's drawn from a mob as their "blood" (in ``transfer_blood_to``). This means that blood you draw from lizards will be green and have lizard's blood description instead of mentioning red blood cells, Ethereal "blood" will actually contain their DNA and genes, etc. - Refactored all blood decals. Blood states are no more, everything is now handled via blood DNA. Credits to MrMelbert and Maplestation, as a significant amount of code has been taken from https://github.com/MrMelbert/MapleStationCode/pull/436 and many of his followup PRs. Oil and xenomorph splatters are now subtypes of blood, blood drying is now animated, blood trails now curve and can be diagonal. - Rewrote bloodysoles and bloody_spreader components, credits to Melbert again for the former, while latter now makes more sense with its interactions. Bloody soles no longer share blood DNA with your hands. - Ported Melbert's bloody footprint sprites and bot-blood-spreading functionality. - Removed all species-side reagent interactions, instead they're handled by said species' livers. (This previously included exotic blood handling, thus the removal) - Slightly optimized human rendering by removing inbetween overlay holders for clothing when they're not needed. - Blood-transmitted diseases will now get added to many more decals than before. - Cleaned up and partially refactored replica pods, fixed an issue where monkeys/manipulators were unable to harvest mindless pods. - Exotic bloodtype on species now automatically assigns their blood reagent, without the need to assign them separately. - Clown mobs now bleed (with colorful reagent instead of blood during april fools), and so do vatbeasts (lizard blood) - Implemented generic procs for handling bleeding checks, all sorts of scanners now also correctly call your blood for what it is. - Podpeople's guts are now lime-green like their organs, instead of being weirdly greyish like their water-blood. (Their bleeding overlays are still grey, as they're bleeding water) - Slimepeople now can bleed. Their jelly is pale purple in color, but their wound overlays copy their body color. - Injecting/spraying/splashing/etc mob with a reagent preserves its data, so you could theoretically recycle fine wines from someone's bloodstream - Fixed burdened chaplain's sect never actually giving a blessing when applying effects, and giving a blessing when nothing can be healed. Inverted check strikes again. - Closes #91039 #### Examples A lot of blood here has dried, visually the blood colors are almost exactly the same as before either of the blood refactors.  
1725 lines
14 KiB
Plaintext
1725 lines
14 KiB
Plaintext
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
|
|
"bK" = (
|
|
/turf/closed/wall/mineral/abductor,
|
|
/area/virtual_domain)
|
|
"cp" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/food/soylentgreen{
|
|
pixel_x = -6;
|
|
pixel_y = 5
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"cr" = (
|
|
/obj/item/flashlight/lantern{
|
|
pixel_x = 4;
|
|
pixel_y = -8;
|
|
light_on = 1
|
|
},
|
|
/obj/item/flashlight/lantern{
|
|
pixel_x = -9;
|
|
pixel_y = 8;
|
|
light_on = 1
|
|
},
|
|
/turf/template_noop,
|
|
/area/virtual_domain/safehouse)
|
|
"dM" = (
|
|
/obj/item/storage/medkit/regular,
|
|
/obj/item/storage/medkit/regular,
|
|
/turf/template_noop,
|
|
/area/virtual_domain/safehouse)
|
|
"fk" = (
|
|
/obj/effect/mob_spawn/corpse/human/abductor,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"ge" = (
|
|
/turf/template_noop,
|
|
/area/virtual_domain/safehouse)
|
|
"gF" = (
|
|
/obj/machinery/abductor/pad{
|
|
desc = "A funky looking disc, built into the floor."
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"gO" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/poster/random_abductor{
|
|
pixel_x = 9;
|
|
pixel_y = 3
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"ih" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/storage/belt/military/abductor{
|
|
pixel_x = 5;
|
|
pixel_y = 8
|
|
},
|
|
/obj/item/storage/belt/military/abductor{
|
|
pixel_x = -5;
|
|
pixel_y = -1
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"kl" = (
|
|
/obj/structure/table_frame/abductor,
|
|
/obj/item/organ/lungs{
|
|
pixel_x = 8;
|
|
pixel_y = 7
|
|
},
|
|
/obj/item/shard/plastitanium{
|
|
pixel_x = -8;
|
|
pixel_y = 1
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"kt" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/multitool/abductor{
|
|
pixel_y = 6;
|
|
pixel_x = 5
|
|
},
|
|
/obj/item/screwdriver/abductor{
|
|
pixel_y = 8;
|
|
pixel_x = -1
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"kN" = (
|
|
/obj/machinery/fat_sucker,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"lC" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/clothing/head/helmet/abductor{
|
|
pixel_x = -5;
|
|
pixel_y = 7
|
|
},
|
|
/obj/item/abductor/silencer{
|
|
pixel_x = 6;
|
|
pixel_y = -4
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"lN" = (
|
|
/turf/closed/indestructible/binary,
|
|
/area/virtual_domain/fullbright)
|
|
"lR" = (
|
|
/obj/effect/baseturf_helper/virtual_domain,
|
|
/turf/template_noop,
|
|
/area/virtual_domain/safehouse)
|
|
"lW" = (
|
|
/obj/machinery/iv_drip,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"mR" = (
|
|
/obj/machinery/abductor/pad,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"nT" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/food/soylentgreen{
|
|
pixel_x = 4;
|
|
pixel_y = -1
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"oL" = (
|
|
/obj/effect/landmark/bitrunning/mob_segment,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"pL" = (
|
|
/turf/closed/indestructible/alien/nodiagonal,
|
|
/area/virtual_domain)
|
|
"pT" = (
|
|
/obj/effect/decal/cleanable/blood/footprints,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"rw" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/toy/plush/abductor/agent{
|
|
pixel_x = 10;
|
|
pixel_y = 8
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"rY" = (
|
|
/obj/modular_map_root/safehouse{
|
|
key = "abductor"
|
|
},
|
|
/turf/template_noop,
|
|
/area/virtual_domain/safehouse)
|
|
"sv" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/crowbar/abductor,
|
|
/obj/item/stock_parts/power_store/cell/infinite/abductor{
|
|
pixel_x = 5;
|
|
pixel_y = -3
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"to" = (
|
|
/obj/effect/decal/cleanable/molten_object{
|
|
pixel_x = 9;
|
|
pixel_y = 7
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"uk" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/wrench/abductor{
|
|
pixel_x = 2;
|
|
pixel_y = 7
|
|
},
|
|
/obj/item/wirecutters/abductor{
|
|
pixel_x = -3;
|
|
pixel_y = 4
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"uw" = (
|
|
/obj/structure/bed/abductor,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"ux" = (
|
|
/obj/machinery/door/airlock/abductor{
|
|
name = "Command Center";
|
|
locked = 1
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"uD" = (
|
|
/obj/machinery/computer/camera_advanced/abductor,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"vY" = (
|
|
/obj/machinery/door/airlock/abductor{
|
|
name = "Repair Bay"
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"vZ" = (
|
|
/obj/machinery/abductor/gland_dispenser,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"xB" = (
|
|
/turf/closed/indestructible/opsglass,
|
|
/area/virtual_domain)
|
|
"xM" = (
|
|
/obj/effect/decal/cleanable/molten_object{
|
|
pixel_x = -6;
|
|
pixel_y = -7
|
|
},
|
|
/obj/effect/landmark/bitrunning/cache_spawn,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"yt" = (
|
|
/obj/effect/decal/cleanable/blood/tracks/xeno,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"zX" = (
|
|
/obj/machinery/abductor/experiment,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"AG" = (
|
|
/obj/item/shell/server,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"Bj" = (
|
|
/obj/effect/baseturf_helper/virtual_domain,
|
|
/turf/closed/indestructible/alien/nodiagonal,
|
|
/area/virtual_domain)
|
|
"Fy" = (
|
|
/obj/effect/decal/cleanable/molten_object/large{
|
|
pixel_x = -5;
|
|
pixel_y = 14
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"GX" = (
|
|
/obj/structure/chair/office{
|
|
dir = 4
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"IC" = (
|
|
/obj/structure/table/abductor,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"JC" = (
|
|
/obj/item/organ/tail/cat,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"JR" = (
|
|
/obj/machinery/door/airlock/abductor{
|
|
name = "Experimentation Lab"
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"JU" = (
|
|
/obj/structure/closet/abductor,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"KK" = (
|
|
/obj/structure/bed/abductor,
|
|
/obj/effect/decal/cleanable/blood/old,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"KX" = (
|
|
/turf/open/floor/holofloor/hyperspace,
|
|
/area/space/virtual_domain)
|
|
"Lz" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/melee/baton/abductor{
|
|
desc = "Even aliens can see the use of a good old-fashioned beating stick.";
|
|
pixel_x = 6;
|
|
pixel_y = -5
|
|
},
|
|
/obj/item/gun/energy/shrink_ray{
|
|
pixel_x = -5;
|
|
pixel_y = 7
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"Mr" = (
|
|
/obj/machinery/chem_dispenser/abductor,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"MC" = (
|
|
/obj/item/kirbyplants/photosynthetic,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"Ne" = (
|
|
/obj/machinery/abductor/console,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"NW" = (
|
|
/obj/structure/server,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"PB" = (
|
|
/obj/item/organ/antennae,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"Qp" = (
|
|
/turf/template_noop,
|
|
/area/template_noop)
|
|
"QC" = (
|
|
/obj/structure/chair/comfy/teal{
|
|
dir = 8
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"Rd" = (
|
|
/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"Rg" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/ammo_box/magazine/smgm45,
|
|
/obj/item/ammo_box/magazine/smgm45{
|
|
pixel_x = 9;
|
|
pixel_y = 3
|
|
},
|
|
/obj/item/gun/ballistic/automatic/c20r/unrestricted{
|
|
pixel_x = -5;
|
|
pixel_y = -5
|
|
},
|
|
/turf/template_noop,
|
|
/area/virtual_domain/safehouse)
|
|
"RI" = (
|
|
/obj/machinery/door/airlock/abductor,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"Sd" = (
|
|
/obj/machinery/recharge_station,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"Ub" = (
|
|
/obj/structure/chair/comfy/shuttle{
|
|
dir = 8
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"Uf" = (
|
|
/obj/item/flashlight/seclite{
|
|
pixel_x = 9;
|
|
pixel_y = -11
|
|
},
|
|
/obj/item/clothing/suit/armor/vest/alt{
|
|
pixel_x = 10;
|
|
pixel_y = 8
|
|
},
|
|
/obj/item/clothing/suit/armor/vest/alt{
|
|
pixel_x = -6;
|
|
pixel_y = 6
|
|
},
|
|
/obj/item/clothing/suit/armor/vest/alt{
|
|
pixel_x = 2;
|
|
pixel_y = -2
|
|
},
|
|
/turf/template_noop,
|
|
/area/virtual_domain/safehouse)
|
|
"Us" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/abductor/mind_device{
|
|
desc = "Just holding this makes your head ache.";
|
|
pixel_x = 3
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"UX" = (
|
|
/obj/effect/landmark/bitrunning/cache_spawn,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"Vl" = (
|
|
/obj/machinery/harvester,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"VE" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/storage/box/alienhandcuffs,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"VY" = (
|
|
/obj/effect/mob_spawn/corpse/human/abductor{
|
|
pixel_x = 9;
|
|
pixel_y = -5
|
|
},
|
|
/obj/effect/decal/cleanable/blood/xeno,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"We" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/dualsaber/green{
|
|
pixel_x = -5;
|
|
pixel_y = 2
|
|
},
|
|
/obj/item/gun/ballistic/automatic/c20r/unrestricted{
|
|
pixel_x = 8;
|
|
pixel_y = -6
|
|
},
|
|
/turf/template_noop,
|
|
/area/virtual_domain/safehouse)
|
|
"Wk" = (
|
|
/obj/structure/table/abductor,
|
|
/obj/item/weldingtool/abductor,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"WS" = (
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"XU" = (
|
|
/obj/effect/decal/cleanable/blood/gibs/xeno/body,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"Yq" = (
|
|
/obj/effect/decal/cleanable/blood/splatter/xeno,
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
"YV" = (
|
|
/turf/closed/indestructible/alien,
|
|
/area/virtual_domain)
|
|
"ZM" = (
|
|
/obj/structure/chair/comfy/shuttle{
|
|
dir = 4
|
|
},
|
|
/turf/open/floor/plating/abductor,
|
|
/area/virtual_domain)
|
|
|
|
(1,1,1) = {"
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
pL
|
|
pL
|
|
pL
|
|
pL
|
|
pL
|
|
pL
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(2,1,1) = {"
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(3,1,1) = {"
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
kN
|
|
lW
|
|
uw
|
|
IC
|
|
IC
|
|
uw
|
|
lW
|
|
kN
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(4,1,1) = {"
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(5,1,1) = {"
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
oL
|
|
WS
|
|
WS
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(6,1,1) = {"
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(7,1,1) = {"
|
|
Qp
|
|
lN
|
|
lN
|
|
lN
|
|
lN
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
MC
|
|
YV
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
YV
|
|
MC
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(8,1,1) = {"
|
|
lN
|
|
lN
|
|
KX
|
|
KX
|
|
lN
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
lW
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
YV
|
|
bK
|
|
YV
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
lW
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(9,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
lN
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
bK
|
|
bK
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(10,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
lN
|
|
Qp
|
|
pL
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
JU
|
|
yt
|
|
VY
|
|
YV
|
|
MC
|
|
WS
|
|
WS
|
|
MC
|
|
YV
|
|
ih
|
|
Yq
|
|
JU
|
|
YV
|
|
YV
|
|
UX
|
|
WS
|
|
WS
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(11,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
lN
|
|
pL
|
|
YV
|
|
UX
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
Wk
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
rw
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
Vl
|
|
WS
|
|
MC
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
"}
|
|
(12,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
pL
|
|
bK
|
|
YV
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
uk
|
|
WS
|
|
oL
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
JU
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
Bj
|
|
Qp
|
|
"}
|
|
(13,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
YV
|
|
bK
|
|
YV
|
|
WS
|
|
WS
|
|
YV
|
|
JU
|
|
WS
|
|
WS
|
|
WS
|
|
vY
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
RI
|
|
WS
|
|
WS
|
|
XU
|
|
gO
|
|
YV
|
|
YV
|
|
YV
|
|
AG
|
|
YV
|
|
YV
|
|
pL
|
|
"}
|
|
(14,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
pL
|
|
YV
|
|
YV
|
|
MC
|
|
Vl
|
|
YV
|
|
UX
|
|
WS
|
|
MC
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
JU
|
|
fk
|
|
lC
|
|
YV
|
|
YV
|
|
NW
|
|
WS
|
|
NW
|
|
YV
|
|
pL
|
|
"}
|
|
(15,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
xB
|
|
pL
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
MC
|
|
WS
|
|
WS
|
|
ge
|
|
ge
|
|
ge
|
|
ge
|
|
ge
|
|
rY
|
|
WS
|
|
WS
|
|
MC
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
NW
|
|
WS
|
|
NW
|
|
YV
|
|
pL
|
|
"}
|
|
(16,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
xB
|
|
xB
|
|
uD
|
|
ZM
|
|
ZM
|
|
WS
|
|
Rd
|
|
MC
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
ge
|
|
ge
|
|
ge
|
|
ge
|
|
ge
|
|
ge
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
xB
|
|
xB
|
|
xB
|
|
YV
|
|
pL
|
|
"}
|
|
(17,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
xB
|
|
Ne
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
ux
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
ge
|
|
ge
|
|
Uf
|
|
cr
|
|
ge
|
|
ge
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
pL
|
|
"}
|
|
(18,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
xB
|
|
Lz
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
Rd
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
ge
|
|
ge
|
|
We
|
|
Rg
|
|
ge
|
|
ge
|
|
WS
|
|
WS
|
|
WS
|
|
oL
|
|
WS
|
|
WS
|
|
WS
|
|
RI
|
|
WS
|
|
oL
|
|
WS
|
|
YV
|
|
pL
|
|
"}
|
|
(19,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
xB
|
|
Ne
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
ux
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
ge
|
|
ge
|
|
ge
|
|
ge
|
|
ge
|
|
ge
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
pL
|
|
"}
|
|
(20,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
xB
|
|
xB
|
|
uD
|
|
Ub
|
|
Ub
|
|
WS
|
|
Rd
|
|
MC
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
ge
|
|
ge
|
|
ge
|
|
ge
|
|
dM
|
|
ge
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
xB
|
|
xB
|
|
xB
|
|
YV
|
|
pL
|
|
"}
|
|
(21,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
xB
|
|
pL
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
MC
|
|
WS
|
|
WS
|
|
ge
|
|
ge
|
|
ge
|
|
ge
|
|
ge
|
|
lR
|
|
WS
|
|
WS
|
|
MC
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
bK
|
|
NW
|
|
WS
|
|
NW
|
|
YV
|
|
pL
|
|
"}
|
|
(22,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
pL
|
|
YV
|
|
YV
|
|
MC
|
|
uw
|
|
YV
|
|
Mr
|
|
JC
|
|
uw
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
MC
|
|
xM
|
|
cp
|
|
YV
|
|
bK
|
|
NW
|
|
WS
|
|
NW
|
|
YV
|
|
pL
|
|
"}
|
|
(23,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
YV
|
|
bK
|
|
YV
|
|
UX
|
|
WS
|
|
YV
|
|
uw
|
|
WS
|
|
WS
|
|
pT
|
|
JR
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
RI
|
|
WS
|
|
WS
|
|
WS
|
|
Us
|
|
YV
|
|
bK
|
|
bK
|
|
AG
|
|
YV
|
|
YV
|
|
pL
|
|
"}
|
|
(24,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
pL
|
|
bK
|
|
YV
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
mR
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
Fy
|
|
WS
|
|
IC
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
pL
|
|
Qp
|
|
"}
|
|
(25,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
lN
|
|
pL
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
kl
|
|
PB
|
|
WS
|
|
KK
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
VE
|
|
to
|
|
oL
|
|
QC
|
|
YV
|
|
YV
|
|
UX
|
|
WS
|
|
MC
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
"}
|
|
(26,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
lN
|
|
Qp
|
|
pL
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
uw
|
|
MC
|
|
vZ
|
|
YV
|
|
MC
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
nT
|
|
WS
|
|
MC
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(27,1,1) = {"
|
|
lN
|
|
KX
|
|
KX
|
|
KX
|
|
lN
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
gF
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
gF
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(28,1,1) = {"
|
|
lN
|
|
lN
|
|
KX
|
|
KX
|
|
lN
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
lW
|
|
oL
|
|
WS
|
|
YV
|
|
YV
|
|
YV
|
|
bK
|
|
YV
|
|
WS
|
|
WS
|
|
YV
|
|
bK
|
|
YV
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
lW
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(29,1,1) = {"
|
|
Qp
|
|
lN
|
|
lN
|
|
lN
|
|
lN
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
MC
|
|
YV
|
|
YV
|
|
YV
|
|
WS
|
|
WS
|
|
YV
|
|
YV
|
|
YV
|
|
MC
|
|
WS
|
|
WS
|
|
oL
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(30,1,1) = {"
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(31,1,1) = {"
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(32,1,1) = {"
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
zX
|
|
WS
|
|
GX
|
|
WS
|
|
WS
|
|
WS
|
|
WS
|
|
GX
|
|
WS
|
|
zX
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(33,1,1) = {"
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
Sd
|
|
sv
|
|
Sd
|
|
WS
|
|
WS
|
|
Sd
|
|
kt
|
|
Sd
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(34,1,1) = {"
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
YV
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|
|
(35,1,1) = {"
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
pL
|
|
pL
|
|
pL
|
|
pL
|
|
pL
|
|
pL
|
|
pL
|
|
pL
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
Qp
|
|
"}
|