diff --git a/_maps/map_files/cyberiad/cyberiad.dmm b/_maps/map_files/cyberiad/cyberiad.dmm
index 8b7290b31c3..fb04a097041 100644
--- a/_maps/map_files/cyberiad/cyberiad.dmm
+++ b/_maps/map_files/cyberiad/cyberiad.dmm
@@ -512,7 +512,7 @@
"ajR" = (/obj/structure/table,/obj/item/weapon/folder/red{pixel_y = 3},/turf/simulated/floor/plasteel,/area/security/main)
"ajS" = (/obj/structure/stool/bed/chair,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark/start{name = "Detective"},/turf/simulated/floor/plasteel,/area/security/main)
"ajT" = (/obj/structure/stool/bed/chair,/obj/machinery/light{dir = 1; on = 1},/obj/effect/landmark/start{name = "Brig Physician"},/turf/simulated/floor/plasteel,/area/security/main)
-"ajU" = (/obj/effect/decal/warning_stripes/northwest,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101; on = 1; pressure_checks = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"})
+"ajU" = (/obj/effect/decal/warning_stripes/northwest,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101; on = 1; pressure_checks = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"})
"ajV" = (/turf/simulated/floor/carpet,/area/security/hos)
"ajW" = (/obj/machinery/door/poddoor{id_tag = "Execution Vent"; name = "Execution Vent Shutter"},/obj/structure/grille{layer = 2.69},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/execution{name = "\improper Prisoner Transfer Center"})
"ajX" = (/obj/structure/rack,/obj/item/weapon/tank/oxygen,/obj/item/clothing/suit/space/hardsuit/security,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/hardsuit/security,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/clothing/shoes/magboots,/obj/item/weapon/tank/jetpack/oxygen,/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/security/podbay)
@@ -558,7 +558,7 @@
"akL" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen/multi,/obj/machinery/light{dir = 1; on = 1},/obj/item/device/radio/intercom/department/security{pixel_x = 0; pixel_y = 25},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos)
"akM" = (/obj/structure/table/woodentable,/obj/machinery/recharger{pixel_y = 4},/obj/item/device/radio/intercom{broadcasting = 0; name = "station intercom (General)"; pixel_y = 25},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos)
"akN" = (/obj/item/weapon/twohanded/required/kirbyplants,/obj/machinery/newscaster{pixel_y = 30},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 32},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos)
-"akO" = (/obj/structure/stool/bed/chair/e_chair{dir = 4},/obj/machinery/light/small{dir = 8},/obj/effect/landmark{name = "revenantspawn"},/obj/machinery/atmospherics/unary/outlet_injector{dir = 4; frequency = 1443; icon_state = "on"; id = "air_in"; on = 1},/obj/effect/decal/warning_stripes/west,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/security/execution{name = "\improper Prisoner Transfer Center"})
+"akO" = (/obj/structure/stool/bed/chair/e_chair{dir = 4},/obj/effect/landmark{name = "revenantspawn"},/obj/machinery/atmospherics/unary/outlet_injector{dir = 4; frequency = 1443; icon_state = "on"; id = "air_in"; on = 1},/obj/effect/decal/warning_stripes/west,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/security/execution{name = "\improper Prisoner Transfer Center"})
"akP" = (/obj/structure/grille,/obj/structure/shuttle/window{tag = "icon-window5_end (NORTH)"; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5_end"; dir = 1},/turf/simulated/shuttle/plating/vox,/area/shuttle/vox)
"akQ" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor/shutters{density = 0; dir = 4; icon_state = "shutter0"; id_tag = "Execution Shutter"; name = "Execution Decency Shutter"; opacity = 0},/turf/simulated/floor/plating,/area/security/execution{name = "\improper Prisoner Transfer Center"})
"akR" = (/obj/structure/grille,/obj/structure/shuttle/window{tag = "icon-window5_end"; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5_end"; dir = 2},/turf/simulated/shuttle/plating/vox,/area/shuttle/vox)
@@ -606,7 +606,7 @@
"alH" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos)
"alI" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/security/podbay)
"alJ" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/simulated/floor/plating/airless,/area/security/podbay)
-"alK" = (/obj/machinery/camera{c_tag = "Prison Execution Chamber"; dir = 4; network = list("Prison","SS13")},/obj/effect/decal/warning_stripes/southwest,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_CO2 = 0; scrub_N2O = 1; scrub_Toxins = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"})
+"alK" = (/obj/machinery/camera{c_tag = "Prison Execution Chamber"; dir = 1; network = list("Prison","SS13")},/obj/effect/decal/warning_stripes/southwest,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_CO2 = 0; scrub_N2O = 1; scrub_Toxins = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"})
"alL" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/machinery/door/poddoor/shutters{density = 0; dir = 4; icon_state = "shutter0"; id_tag = "Execution Shutter"; name = "Execution Decency Shutter"; opacity = 0},/turf/simulated/floor/plating,/area/security/execution{name = "\improper Prisoner Transfer Center"})
"alM" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/visible{dir = 5},/obj/effect/decal/warning_stripes/southeast,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"})
"alN" = (/obj/machinery/alarm{dir = 1; pixel_y = -24},/obj/machinery/light/small,/obj/machinery/atmospherics/binary/pump{dir = 8; on = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"})
@@ -1338,12 +1338,12 @@
"azL" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 8},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
"azM" = (/obj/machinery/atmospherics/binary/pump{dir = 8; on = 1},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
"azN" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister/air{filled = 0.1},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
-"azO" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1450; master_tag = "bar_maint"; name = "interior access button"; pixel_x = 25; pixel_y = -25; req_access_txt = "13"},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
+"azO" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1450; master_tag = "dorm_maint"; name = "interior access button"; pixel_x = 25; pixel_y = -25; req_access_txt = "13"},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
"azP" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
-"azQ" = (/obj/machinery/airlock_sensor{frequency = 1450; id_tag = "bar_sensor"; pixel_x = 0; pixel_y = 25},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{frequency = 1450; id_tag = "bar_maint"; pixel_x = 0; pixel_y = -25; req_access_txt = "13"; tag_airpump = "bar_pump"; tag_chamber_sensor = "bar_sensor"; tag_exterior_door = "bar_maint_outer"; tag_interior_door = "bar_maint_inner"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1450; id_tag = "bar_pump"},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
-"azR" = (/obj/machinery/door/airlock/external{frequency = 1450; icon_state = "door_locked"; id_tag = "bar_maint_inner"; locked = 1; name = "External Access"; req_access = null; req_access_txt = "13"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
-"azS" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1450; master_tag = "bar_maint"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/space)
-"azT" = (/obj/machinery/door/airlock/external{frequency = 1450; icon_state = "door_locked"; id_tag = "bar_maint_outer"; locked = 1; name = "External Access"; req_access = null; req_access_txt = "13"},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
+"azQ" = (/obj/machinery/airlock_sensor{frequency = 1450; id_tag = "dorm_sensor"; pixel_x = 0; pixel_y = 25},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{frequency = 1450; id_tag = "dorm_maint"; pixel_x = 0; pixel_y = -25; req_access_txt = "13"; tag_airpump = "dorm_pump"; tag_chamber_sensor = "dorm_sensor"; tag_exterior_door = "dorm_maint_outer"; tag_interior_door = "dorm_maint_inner"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1450; id_tag = "dorm_pump"},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
+"azR" = (/obj/machinery/door/airlock/external{frequency = 1450; icon_state = "door_locked"; id_tag = "dorm_maint_inner"; locked = 1; name = "External Access"; req_access = null; req_access_txt = "13"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
+"azS" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1450; master_tag = "dorm_maint"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/space)
+"azT" = (/obj/machinery/door/airlock/external{frequency = 1450; icon_state = "door_locked"; id_tag = "dorm_maint_outer"; locked = 1; name = "External Access"; req_access = null; req_access_txt = "13"},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
"azU" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/simulated/wall,/area/solar/auxstarboard)
"azV" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating,/area/security/prisonershuttle)
"azW" = (/obj/machinery/door/window/brigdoor/southleft{req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/unary/vent_pump{dir = 2; layer = 2.4; on = 1},/turf/simulated/floor/plasteel,/area/security/courtroomdandp)
@@ -1662,7 +1662,7 @@
"aFX" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/bananium{name = "Clown's Office"; req_access_txt = "46"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/clownoffice)
"aFY" = (/obj/structure/table/reinforced,/obj/machinery/light{dir = 4},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 32},/turf/simulated/floor/plasteel{dir = 2; icon_state = "barber"},/area/civilian/barber)
"aFZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_chapel_inner"; locked = 1; name = "Engineering External Access"; req_access = null; req_access_txt = "13"},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard)
-"aGa" = (/obj/item/weapon/stool,/turf/simulated/floor/plating{dir = 10; icon_regular_floor = "purplecorner"},/area/maintenance/abandonedbar)
+"aGa" = (/obj/structure/stool,/turf/simulated/floor/plating{dir = 10; icon_regular_floor = "purplecorner"},/area/maintenance/abandonedbar)
"aGb" = (/obj/structure/table/woodentable,/obj/structure/mirror{pixel_x = -28},/obj/item/weapon/storage/pill_bottle/random_drug_bottle,/turf/simulated/floor/plasteel{dir = 10; icon_state = "purple"},/area/maintenance/abandonedbar)
"aGc" = (/obj/structure/mineral_door/wood{name = "Abandoned Bar"},/turf/simulated/floor/wood{broken = 1; icon_state = "wood-broken"},/area/maintenance/abandonedbar)
"aGd" = (/obj/effect/decal/cleanable/fungus,/turf/simulated/wall/rust,/area/maintenance/abandonedbar)
@@ -2782,8 +2782,8 @@
"bbz" = (/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel,/area/hallway/primary/central/north)
"bbA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/bar)
"bbB" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{level = 1},/obj/structure/sign/securearea{desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; icon_state = "monkey_painting"; name = "Mr. Deempisi portrait"; pixel_x = -28; pixel_y = 4},/obj/structure/reagent_dispensers/beerkeg,/turf/simulated/floor/wood,/area/crew_quarters/bar)
-"bbC" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/fsmaint)
-"bbD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/wall/r_wall,/area/maintenance/fsmaint)
+"bbC" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/fsmaint)
+"bbD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 5; icon_state = "blue"},/area/hallway/primary/central/north)
"bbE" = (/turf/simulated/wall/r_wall,/area/hallway/primary/central/ne)
"bbF" = (/turf/simulated/wall,/area/hallway/primary/central/ne)
"bbG" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; level = 1},/obj/machinery/navbeacon{codes_txt = "delivery"; dir = 8; location = "Bar"},/obj/structure/plasticflaps{opacity = 1},/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/maintenance/fsmaint2)
@@ -2882,7 +2882,7 @@
"bdv" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "bluecorner"},/area/hallway/primary/central/north)
"bdw" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/item/flag/nt,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/hallway/primary/central/north)
"bdx" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "bluecorner"},/area/hallway/primary/central/north)
-"bdy" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 5; icon_state = "blue"},/area/hallway/primary/central/north)
+"bdy" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 4},/area/hallway/primary/central/north)
"bdz" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/ai_monitored/storage/eva)
"bdA" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/hallway/primary/central/ne)
"bdB" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutral"},/area/hallway/primary/central/ne)
@@ -2965,7 +2965,7 @@
"bfa" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/fpmaint)
"bfb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/central/north)
"bfc" = (/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel,/area/hallway/primary/port)
-"bfd" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 4},/area/hallway/primary/central/north)
+"bfd" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/central/north)
"bfe" = (/obj/structure/sign/securearea,/turf/simulated/wall/r_wall,/area/gateway)
"bff" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/simulated/floor/plating,/area/maintenance/fpmaint)
"bfg" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/turf/simulated/floor/plating,/area/ai_monitored/storage/eva)
@@ -3063,8 +3063,8 @@
"bgU" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plasteel,/area/hallway/primary/central/north)
"bgV" = (/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "station intercom (General)"; pixel_y = 25},/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{dir = 1; icon_state = "bluecorner"},/area/hallway/primary/central/nw)
"bgW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "L11"},/area/hallway/primary/central/north)
-"bgX" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/central/north)
-"bgY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{desc = ""; icon_state = "L13"; name = "floor"},/area/hallway/primary/central/north)
+"bgX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plasteel{desc = ""; icon_state = "L13"; name = "floor"},/area/hallway/primary/central/north)
+"bgY" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/engine/break_room)
"bgZ" = (/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 4},/area/hallway/primary/central/ne)
"bha" = (/turf/simulated/floor/plasteel{icon_state = "L1"},/area/hallway/primary/central/north)
"bhb" = (/turf/simulated/floor/plasteel{icon_state = "L3"},/area/hallway/primary/central/north)
@@ -3503,7 +3503,7 @@
"bps" = (/obj/structure/stool/bed/chair{dir = 1},/obj/machinery/door_control{id = "bridge blast"; name = "Bridge Blast Door Control"; pixel_x = 28; pixel_y = -2; req_access_txt = "19"},/obj/machinery/keycard_auth{pixel_x = 29; pixel_y = 8},/turf/simulated/floor/plasteel,/area/bridge)
"bpt" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor/plasteel,/area/bridge)
"bpu" = (/obj/structure/table/reinforced,/obj/item/weapon/book/manual/sop_command,/obj/item/device/aicard,/obj/item/device/multitool,/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/bridge)
-"bpv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitepurplecorner"},/area/medical/research{name = "Research Division"})
+"bpv" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = 0},/obj/effect/spawner/window/reinforced,/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Engineering"; name = "Engineering Security Doors"; opacity = 0},/turf/simulated/floor/plating,/area/engine/equipmentstorage)
"bpw" = (/obj/structure/table/reinforced,/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 4},/area/bridge)
"bpx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 4; icon_state = "greencorner"},/area/bridge)
"bpy" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plating,/area/crew_quarters/bar)
@@ -3535,7 +3535,7 @@
"bpY" = (/obj/machinery/door/window/northright{base_state = "right"; dir = 8; icon_state = "right"; name = "Library Desk Door"; req_access_txt = "37"},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/wood,/area/library)
"bpZ" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/light{dir = 8},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24; shock_proof = 0},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
"bqa" = (/obj/machinery/hydroponics/constructable,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/hydroponics)
-"bqb" = (/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitepurplecorner"},/area/medical/research{name = "Research Division"})
+"bqb" = (/obj/machinery/vending/tool,/turf/simulated/floor/plasteel,/area/engine/equipmentstorage)
"bqc" = (/obj/machinery/newscaster{pixel_y = 32},/turf/simulated/floor/wood,/area/library)
"bqd" = (/obj/structure/table/woodentable,/obj/machinery/computer/library/checkout{pixel_y = 0},/obj/machinery/light/small{dir = 4},/obj/machinery/light_switch{pixel_x = 27},/turf/simulated/floor/wood,/area/library)
"bqe" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{level = 1},/obj/structure/stool,/turf/simulated/floor/plasteel{dir = 8; icon_state = "chapel"},/area/chapel/main)
@@ -3665,7 +3665,7 @@
"bsy" = (/obj/effect/landmark{name = "Marauder Entry"},/turf/simulated/floor/plasteel,/area/bridge)
"bsz" = (/obj/machinery/hologram/holopad,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel,/area/bridge)
"bsA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/effect/landmark{name = "Marauder Entry"},/turf/simulated/floor/plasteel,/area/bridge)
-"bsB" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"})
+"bsB" = (/obj/structure/grille,/obj/structure/window/full/shuttle,/turf/simulated/floor/plating,/area/shuttle/constructionsite)
"bsC" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel,/area/bridge)
"bsD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/item/device/radio/beacon,/obj/effect/landmark{name = "Marauder Entry"},/turf/simulated/floor/plasteel,/area/bridge)
"bsE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel{dir = 1; icon_state = "browncorner"; tag = "icon-browncorner (EAST)"},/area/bridge)
@@ -3708,7 +3708,7 @@
"btp" = (/obj/structure/stool,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "chapel"},/area/chapel/main)
"btq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet,/area/chapel/main)
"btr" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor/plasteel,/area/hallway/secondary/exit)
-"bts" = (/obj/machinery/door/airlock/maintenance{name = "Science Maintenance"; req_access_txt = "47"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/maintenance/asmaint2)
+"bts" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plating,/area/turret_protected/aisat_interior)
"btt" = (/obj/structure/stool/bed/chair{dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "station intercom (General)"; pixel_x = -28},/obj/machinery/light/spot{tag = "icon-tube1 (WEST)"; icon_state = "tube1"; dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape)
"btu" = (/obj/structure/stool/bed/chair{dir = 8},/obj/structure/closet/walllocker/emerglocker{pixel_x = 28},/obj/machinery/light/spot{tag = "icon-tube1 (EAST)"; icon_state = "tube1"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape)
"btv" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall/interior{tag = "icon-swall_f9"; icon_state = "swall_f9"},/area/shuttle/transport)
@@ -4001,7 +4001,7 @@
"byW" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/carpet,/area/crew_quarters/captain)
"byX" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{cell_type = 5000; dir = 1; name = "north bump Important Area"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"byY" = (/obj/machinery/status_display{pixel_x = 0; pixel_y = 32},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/carpet,/area/crew_quarters/captain)
-"byZ" = (/obj/machinery/navbeacon{codes_txt = "delivery"; dir = 8; location = "Research Division"},/obj/structure/plasticflaps{opacity = 1},/turf/simulated/floor/plasteel{icon_state = "bot"},/area/medical/research{name = "Research Division"})
+"byZ" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/plasteel,/area/engine/break_room)
"bza" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/central/ne)
"bzb" = (/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel,/area/hallway/primary/central/ne)
"bzc" = (/obj/structure/sign/directions/evac{dir = 4},/obj/structure/sign/directions/medical{dir = 4; pixel_y = 7},/obj/structure/sign/directions/science{dir = 4},/turf/simulated/wall,/area/crew_quarters/bar)
@@ -7477,8 +7477,6 @@
"cPT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{level = 1},/turf/simulated/wall/r_wall,/area/atmos)
"cPU" = (/obj/machinery/portable_atmospherics/canister/sleeping_agent,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/atmos)
"cPV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/structure/table,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; level = 1},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/device/t_scanner,/turf/simulated/floor/plasteel,/area/engine/break_room)
-"cPW" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/turf/simulated/floor/plasteel,/area/engine/break_room)
-"cPX" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; level = 1},/turf/simulated/floor/plasteel,/area/engine/break_room)
"cPY" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/machinery/vending/cigarette,/obj/machinery/atmospherics/pipe/simple/hidden/supply{level = 1},/turf/simulated/floor/plasteel,/area/engine/break_room)
"cPZ" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/atmos/distribution)
"cQa" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "yellowcorner"},/turf/simulated/floor/plasteel{tag = "icon-siding8 (NORTH)"; icon_state = "siding8"; dir = 1},/area/atmos)
@@ -7521,7 +7519,6 @@
"cQL" = (/obj/machinery/light{dir = 8},/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/decal/warning_stripes/blue/hollow,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/atmos)
"cQM" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/decal/warning_stripes/blue/hollow,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/atmos)
"cQN" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Engineering"; name = "Engineering Security Doors"; opacity = 0},/turf/simulated/floor/plating,/area/engine/equipmentstorage)
-"cQO" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = 0},/obj/effect/spawner/window/reinforced,/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Engineering"; name = "Engineering Security Doors"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/engine/equipmentstorage)
"cQP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel,/area/atmos)
"cQQ" = (/obj/machinery/pipedispenser/disposal,/turf/simulated/floor/plasteel,/area/atmos)
"cQR" = (/obj/machinery/atmospherics/binary/volume_pump/on{name = "Waste In"},/turf/simulated/floor/plasteel,/area/atmos/distribution)
@@ -7587,11 +7584,9 @@
"cRZ" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/turf/simulated/wall/r_wall,/area/atmos)
"cSa" = (/obj/machinery/camera{c_tag = "Engineering Equipment North"; network = list("SS13")},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/vending/engivend,/turf/simulated/floor/plasteel,/area/engine/equipmentstorage)
"cSb" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/effect/decal/warning_stripes/red/hollow,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/atmos)
-"cSc" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel,/area/engine/equipmentstorage)
"cSd" = (/turf/simulated/floor/plasteel,/area/atmos)
"cSe" = (/obj/structure/closet/wardrobe/atmospherics_yellow,/turf/simulated/floor/plasteel,/area/atmos)
"cSf" = (/obj/machinery/atmospherics/pipe/manifold/visible/purple{dir = 8},/turf/simulated/floor/plasteel,/area/atmos/distribution)
-"cSg" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/machinery/vending/tool,/turf/simulated/floor/plasteel,/area/engine/equipmentstorage)
"cSh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{level = 1},/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/engine/equipmentstorage)
"cSi" = (/obj/machinery/atmospherics/pipe/manifold/visible/yellow{level = 2},/turf/simulated/floor/plasteel,/area/atmos/distribution)
"cSj" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/effect/decal/warning_stripes/red/hollow,/obj/machinery/camera{c_tag = "Atmospherics North-West"; dir = 4; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/atmos)
@@ -8362,7 +8357,6 @@
"dhb" = (/turf/simulated/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2)
"dhc" = (/obj/structure/lattice,/obj/structure/lattice,/turf/space,/area/space)
"dhd" = (/obj/machinery/computer/shuttle/engineering,/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/constructionsite)
-"dhe" = (/obj/structure/grille,/obj/structure/window/full/shuttle,/turf/space,/area/shuttle/constructionsite)
"dhf" = (/obj/structure/closet/radiation,/turf/simulated/floor/plating,/area/storage/secure)
"dhg" = (/turf/simulated/floor/plating/airless/catwalk{tag = "icon-catwalk6"; icon_state = "catwalk6"},/area/space)
"dhh" = (/turf/simulated/floor/plating/airless/catwalk{tag = "icon-catwalk12"; icon_state = "catwalk12"},/area/space)
@@ -8689,7 +8683,6 @@
"dnt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering)
"dnu" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating/airless,/area/space)
"dnv" = (/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plating,/area/turret_protected/aisat_interior)
-"dnw" = (/obj/machinery/atmospherics/unary/vent_pump{on = 0},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plating,/area/turret_protected/aisat_interior)
"dnx" = (/obj/structure/sign/fire,/turf/simulated/wall/r_wall/coated,/area/maintenance/turbine)
"dny" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating/airless,/area/space)
"dnz" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating/airless,/area/space)
@@ -9054,10 +9047,10 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaVVaVSaVXaVSaVSaVYaVZaVSaVSaVXaWaaVWaLdaToaWbaVcaWdaWcaWfaWeaWhaWgaTuaUuaVeaUqaWjaVeaVeaUuaTuaWkaWlaWiaWnaWmaWoaWqaWraWpaWtaVjaabaUEaWuaWsaWwaWvaWxaUEaabaSuaSzaSAaWzaWAaWyaWCaWBaSAaPiaRwaSBaSCaWEaWDaULaSCaWFaSCaULaWGaSLaSCaSMaRwaSNaFFaWJaEjaMFaLPaISaOhaLNaLPaOiaWHaUQaWKaVEaVEaVEaWLaOlaOkaOmaUSaWQaWPaOxaOtaPgaHPaaaaaaaaaaaaaaaaaaaaaaaaaaaaGXaWVaWUaWXaWWaWYaGXaNhaGYaQIaMkaGYaGXaaaaGXaGYaGYaGYaGYaMkaXbaXaaWZaWZaWZaWZaXcaXeaXdaXhaXiaXfaXiaXgaVTaVTaVUaXkaXjaXlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaVVaWaaVSaXmaXraXsaXtaXuaXvaXwaXxaXyaXzaXpaXnaSdaToaXqaVcaXBaXAaXFaXGaXFaXCaTuaXIaVeaXDaXHaXEaXHaXJaXLaXKaXMaXQaXQaXQaXQaXQaXQaXNaXSaVjaaaaUEaXOaWsaXPaWvaXRaUEaaaaSuaSzaSAaXTaXXaXVaXUaYaaSAaPiaRwaXWaXWaTCaXYaVuaTDaXZaTDaVuaYbaTIaTzaTzaRwaYcaIraYhaEjaMFaLPaLPaLPaLPaLPaPlaPkaPnaPmaPoaUQaUQaUQaUQaUQaUQaUSaPpaZVaPqaUSaOgaYwaHPaGXaGXaGXaGXaGXaGXaGXaGXaGXaGXaGXaGXaYnaGXaGXaGXaGXaGYaMkaWVaHNaabaHNaGYaYsaYvaYuaYyaYxaYzaYEaYEaYEaYEaYFaYGaYAaYIaYJaYKaYJaYBaYJaYJaYCaXoaYOaYPaYQaYRaYSaYSaYSaYSaYSaYSaYSaYSaYSafXajcaaaaaaaaaaaaaaaaaaaaaaYDaYUaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXpaYMaYLaYNaXzaYZaXsaYZaXsaYZaXsaYZaXzaYVaYTaSdaToaYWaVcaYYaYXaZfaZaaZhaZbaTuaZjaUraZcaZlaZmaZnaZdaTuaZeaZgaXQaXQaXQaXQaXQaXQaXNaZraVjaabaUEaZkaZiaZpaZoaZqaUEaabaSuaSzaSAaZsaZyaZtaZAaZuaSAaPiaRwaUJaUJaUJaZvaULaSCaUIaSCaULaZwaUJaUJaUJaRwaZxaZFaZGaEjaPtaPsaPsaPsaPsaPuaPxaPvaUQaPyaPzaUQaQmaQfaQnaUQaQoaUSaZDaZVaZEaUSaQpaZKaQqaZNaZNaZKaZXaZWaZWaZWaZWaZWaZZaZYaZWbaabacbabbaebadbagbafbaibahbajbahbalbakaGYaGXbarbambanbaubavbaobaxbaybazbapbazbaBbasbaqbatbaFbaAbawbaIbaCbaEbaDaYPbaMbaNbaObaGbaQbaRbaHbaTbaUbaVaaaaaaaaaaaaaaaaaaaaaaYDbaWbaXbaYaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaZaXsaXsaVXaXzaYZaXsaYZbbaaYZaXsaYZaXzaYVaYTaSdaTobaJaVcaVcbaKaUtbaLaUtaVcaTuaTuaTuaTubaSbaPbbhbbbaTubbjbbcbblaXQaXQbbmaXQbbebbdbbpaVjaaaaUEaUEbbqbbfbbqaUEaUEaaaaSuaSzaSAbbibbgbbkaZAbbnaSAaPiaRwaSBaSCbboaWDaULaSCaUIaSCaULaWGbbxaRwaRwaRwbbrbbzbbtbbsbbCbbDatGatGbbEbbFbbvbbuaUQbbwaVEaUQbbJaUQbbKaUQbbLaQrbbBbbAbbHbbGbbUbbIaQtbbNbbQbbPbbRbbQbbQbbSbbQbbIbbTbbIaXfbbUbbIbbVbbXbbWbbZbbYbcbbcabcdbccbcfbceaXibcmbcgbcobcpbchbcibcsbcjbaybcubckbazbcwbcxbclbczbaFbcAbcBbcCbcDbcnbcFaYPbcqbcHbcHbcIbaTbaTbaTbaTbaUbaVaaaaaaaaaaaaaaaaaaaYDbaWbcJbcKbcLbaYaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXpbcrbcNaYNaXzaYZaXsaYZaXsaYZaXsaYZaXzaYVaYTaSdaTobcvbctbcEbcybcSbcSaSfbcGbcMbcVbcWbcXbcPbcOaVebcQaTubdbbcRbddbdebcTbdgbdhbdibcUbdkaVjaaaaabaaabcYbcZbcYaaaaabaaaaSuaSzaSAbdcbdabdjbdfbdraSAaPiaRwbdmbdlaTCbdnbdoaTDbdpaTDbdsbdqbdzaRwbdubdtbdvbdDbdxbdwbdybdHaaaaaabbEbdIbdBbdAaUQbdCbdEaVEaVEbdNaVEaVEaVEbdOaUSbdFaUSbdQaUSaUSaQuaUSbdTbdUbdKbdJbdMbdLbdTbdPbeabebbecbebbebbebbebbdSbeebebbefbdVbdWbeibebbdXaGYbaubekbcpbelbembenbeobepbeqberbdYbazbetbeubevbewbdZbcAbcBbcCbcDbaEbedaYPbegbcHbcHbcIbaTbaTbaTbaTbaUbaVaaaaaaaaaaaaaaaaaaaYUbeAbeBbeCbeBbeDaYUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabehbejaVSaXmaXzaXsbeGbesaXsaXsbexbeGaXzaXpbeyaSdaTobeEbezbeMbeFbeMbeMbeMbeMbeMbeHaSfaTubePbeQbePaTuaTubeRbeIbeRaViaViaViaVibeRbeJbeUaVjbeLbeKbeKbeNbeObeNbeKbeKbeSaSubfaaSAbeTaSAbeWbeVbfeaSAbffaRwaRwaRwaRwbfgbfhbeXbeYbeXbfhbfgaRwaRwbeZbdDbdDbdDbdDbfbbfdbfnbfobfpbbEbfqbdBbfiaUQaUQaUQaUQaUQaUQaUQaUSaUSbdObfsbftbfkbfjaQvbflaSQbfrbdTbfAbfvbfCbfwbfEbdTbfxbfybfHbfzbfHbfJbfKbfMbfBbfFbfDbfIbfGbfNbfLbebbfObfQbfPbfSbfRbelbfYbfZbeobfTbazbfVbfUbfXbfWbgfbczbczbazbazbcBbcCbcDbcnbggaYPbgabgibgbbgkbgcbgmbaTbaTbgdbaVaaaaaaaaaaaaaaaaYDbaWbgobeCbeCbeCbgpbaYaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabehaVSaVXaVSaVSaVYaVZaVSaVSaVXbejbgeaLdbghbeEaSdbgsbgsbgtbgsbgjaMsbgvbglaSfbgnbfcbgzbgzbgqbgrbgzbgubgzbgzbgzbgDbgzbgzbgwbgFbgAbgCbgBbgEbgCbgHbgCbgCbgCbgCbgIbgMbgJbgzbgzbgKbfcbgQbgxbgSbgLbgObgNbgTbgPbgPbgPbgPbgPbgPbgPbgVbgUbhabhbbhcbhdbhebgWbgYbgXbdDbdDbhfbgZbhgbgZbhgbhhbhjbhibhkbhpbhqaUSbhrbhlbhtbhmbhvbhvaWMbhxaWNbhzbdTbhobhubhsbhsbhwbdTbhAbhCbhBbhEbhDbhDbhFbhHbhGbfMbhIbhJbhPbhQbhRbebbdXaTgbaubhKbhTbhTbhUbhVbhTbhLbazbhXbhNbazbhObhSbczbhWbazbhZbhYbiabcDaYPaYPaYPbibbigbihbiibigbigbigbigaYSafXajcaaaaaaaaaaaabicbikbilbeCbeCbimbinbeCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaZaXsaXsaVXaXzaYZaXsaYZbbaaYZaXsaYZaXzaYVaYTaSdaTobaJaVcaVcbaKaUtbaLaUtaVcaTuaTuaTuaTubaSbaPbbhbbbaTubbjbbcbblaXQaXQbbmaXQbbebbdbbpaVjaaaaUEaUEbbqbbfbbqaUEaUEaaaaSuaSzaSAbbibbgbbkaZAbbnaSAaPiaRwaSBaSCbboaWDaULaSCaUIaSCaULaWGbbxaRwaRwaRwbbrbbzbbtbbsbbCatGatGatGbbEbbFbbvbbuaUQbbwaVEaUQbbJaUQbbKaUQbbLaQrbbBbbAbbHbbGbbUbbIaQtbbNbbQbbPbbRbbQbbQbbSbbQbbIbbTbbIaXfbbUbbIbbVbbXbbWbbZbbYbcbbcabcdbccbcfbceaXibcmbcgbcobcpbchbcibcsbcjbaybcubckbazbcwbcxbclbczbaFbcAbcBbcCbcDbcnbcFaYPbcqbcHbcHbcIbaTbaTbaTbaTbaUbaVaaaaaaaaaaaaaaaaaaaYDbaWbcJbcKbcLbaYaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXpbcrbcNaYNaXzaYZaXsaYZaXsaYZaXsaYZaXzaYVaYTaSdaTobcvbctbcEbcybcSbcSaSfbcGbcMbcVbcWbcXbcPbcOaVebcQaTubdbbcRbddbdebcTbdgbdhbdibcUbdkaVjaaaaabaaabcYbcZbcYaaaaabaaaaSuaSzaSAbdcbdabdjbdfbdraSAaPiaRwbdmbdlaTCbdnbdoaTDbdpaTDbdsbdqbdzaRwbdubdtbdvbdDbdxbdwbbDbdHaaaaaabbEbdIbdBbdAaUQbdCbdEaVEaVEbdNaVEaVEaVEbdOaUSbdFaUSbdQaUSaUSaQuaUSbdTbdUbdKbdJbdMbdLbdTbdPbeabebbecbebbebbebbebbdSbeebebbefbdVbdWbeibebbdXaGYbaubekbcpbelbembenbeobepbeqberbdYbazbetbeubevbewbdZbcAbcBbcCbcDbaEbedaYPbegbcHbcHbcIbaTbaTbaTbaTbaUbaVaaaaaaaaaaaaaaaaaaaYUbeAbeBbeCbeBbeDaYUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabehbejaVSaXmaXzaXsbeGbesaXsaXsbexbeGaXzaXpbeyaSdaTobeEbezbeMbeFbeMbeMbeMbeMbeMbeHaSfaTubePbeQbePaTuaTubeRbeIbeRaViaViaViaVibeRbeJbeUaVjbeLbeKbeKbeNbeObeNbeKbeKbeSaSubfaaSAbeTaSAbeWbeVbfeaSAbffaRwaRwaRwaRwbfgbfhbeXbeYbeXbfhbfgaRwaRwbeZbdDbdDbdDbdDbfbbdybfnbfobfpbbEbfqbdBbfiaUQaUQaUQaUQaUQaUQaUQaUSaUSbdObfsbftbfkbfjaQvbflaSQbfrbdTbfAbfvbfCbfwbfEbdTbfxbfybfHbfzbfHbfJbfKbfMbfBbfFbfDbfIbfGbfNbfLbebbfObfQbfPbfSbfRbelbfYbfZbeobfTbazbfVbfUbfXbfWbgfbczbczbazbazbcBbcCbcDbcnbggaYPbgabgibgbbgkbgcbgmbaTbaTbgdbaVaaaaaaaaaaaaaaaaYDbaWbgobeCbeCbeCbgpbaYaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabehaVSaVXaVSaVSaVYaVZaVSaVSaVXbejbgeaLdbghbeEaSdbgsbgsbgtbgsbgjaMsbgvbglaSfbgnbfcbgzbgzbgqbgrbgzbgubgzbgzbgzbgDbgzbgzbgwbgFbgAbgCbgBbgEbgCbgHbgCbgCbgCbgCbgIbgMbgJbgzbgzbgKbfcbgQbgxbgSbgLbgObgNbgTbgPbgPbgPbgPbgPbgPbgPbgVbgUbhabhbbhcbhdbhebgWbgXbfdbdDbdDbhfbgZbhgbgZbhgbhhbhjbhibhkbhpbhqaUSbhrbhlbhtbhmbhvbhvaWMbhxaWNbhzbdTbhobhubhsbhsbhwbdTbhAbhCbhBbhEbhDbhDbhFbhHbhGbfMbhIbhJbhPbhQbhRbebbdXaTgbaubhKbhTbhTbhUbhVbhTbhLbazbhXbhNbazbhObhSbczbhWbazbhZbhYbiabcDaYPaYPaYPbibbigbihbiibigbigbigbigaYSafXajcaaaaaaaaaaaabicbikbilbeCbeCbimbinbeCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbgyaSdaSdaSdaSdaSdaSdbgyaSdaUZaLdbidbieaSdbirbisbitbitbiuaMsbivbglbifbgGbfcbijbipbiobiqbiqbixbiwbiwbiwbizbiybiybiAbiCbiBbiqbiqbiDbiybiFbiEbiGbiGbiIbiHbiKbiJbiJbiJbiLbfcbgQbgxbgSbgSbgSbgSbiMbgSbgSbgSbgSbgSbgSbiNbiUbiVbiWbiXbiObiZbiQbiPbiRbiVbiVbiVbjdbjebjebjebiSbhqbhqbhqbiYbiTbhqaUSbjabjjbhvbhvbjkbhvaWTbjmaWNbjcbdTbjobjfbjqbjhbjgbdTbjtbjibjvbjwbjxbjybebbebbjzbebbebbebbjBbjlbjBbebbdXaGYbaubjDbcpbcpbcpbjEbcpbjFbazbazbazbazbazbazbazbjnbazbcDbcDbcCbcDbjpbjIaYPbjrbjNbjLblwbgRbjubjsbjAbjRaaaaaaaaaaaaaYDbjCbjGbjCbjCbjCbjHbjCbjJbjCbjGbjCaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabbjQaLdaSdaOQaSdbjTbjSbjVbjUaSdaOQaSdaSdaLdbjWbeEaSdbjXbkcbitbitbiuaMsbkdbglaSfbgGbfcbgzbjZbjYbkgbkgbkabkibkbbkgbkebkgbkfbkgbkhbjPbkgbkgbkgbkgbkgbkjbkkbkgbklbkrbknbkmbgzbgzbkpbkobksbkqbkubktbkubkvbkwbkvbkvbkvbkvbkvbkvbkybkAbkzbkzbkzbkzbkBbkzbkCbkDbkzbkzbkEbkGbkFbkFbkFbkFbkFbkFbkFbkHbhqbhqaUSbkMbkNbkObkPbkPbkIaYdbjmaWNbkKbdTbdTbdTbdTbdTbkLbdTbkQbkRbkWbkSbfHbkYbebbhMbkTbkUblcbkVbleblfblgbebbdXaQLbaublhblibcpbljblkbcpbllbllbaubkXblabkZaYPbldblnblmbcDbcDblpbloaYPblqaYPblrdsfbjLblxblsbltbjKblzbjRaaaaaaaaaaaabicbmXblubmYbmYblDbeCblCblDblAblvblCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaMsaSdbgyaSdaToaSfaSfaTpaSdbgyaSdblyblEblBblFaSdblIblIbgtblIbgjaMsblJbglaSfaMsblKblKblGblMblMblMblMblMblMbkxblHblMblMblMblMblMblMblPblQblRblRblLblRblTblNblVblTblTblWblXblOblKblZblZblSblSblSbmbbmbbmbbmbbmbbmbbmbbmbbmcblUblUblYblUbmabmabmabmabmebmdbmabmcbmibmibmibmibmibmibmibmibmfbmfbmfaUSbmkbmlbmmbmmbmmbmmbmnbmoaYebmqbmrbmgbmjbmhbmtbmsbdTbdTbmubmybmzbmybmybebbmAbmvbmwbmwbmwbmwbmBbmxbebbmCbmHbaubmIbcpbljbljblkbljbcpbmDbaubmEbmGbmFaYPbcDbmJbmObmPbmPbmKbmRbmLbmTbmUbmMbmWboObmNbjMbjKbjKblzbjRbjRbjRbjRbjRbicbBTbDzbDzbDzbmQbeCblCbnbblAbeCbncbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -9114,9 +9107,9 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaaaaabaabaaaaabaabaaaaaaaabaabaabaabaabcLicLicMqcLicLicMrcMvcEYcEYcEYcEYcEYcEYcEYcEYcLicLwcKfcMtcMxcMwcMycMycMycMycMCcMzcMDcLGcMAcLGcLGcMBcLGcMEcMGcMFcMHcLNcnycMLcHQcMPcLOcMIcMJcMKcLOcMQcMRcMNcMOcMScMUcMTcMWcMVcMXcMXcMZcMYcNecNbcNfcNacrecrecNgcsLcNccBPcBPcBPcBPcBPaaaaaaaaaaaacNdcNicNkcNjcHdcNhchfchfcBYcBPcBPcBPcBPcBPaaaaaacBRcJKcJKcJKcNmcNlcNocNncNqcNpcNscNrcxNcNtcNycNxcBRaaaaaacLbcNzcLecNucLecNvcLbbGGbGGcFccMsbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacNwaaaalwaaacNFcNEcNMaaacNFcNEcNMaaacNFcNEcNMaaaaaacLicNAcNBcNCcLicNDcNNcLmcLmcLmcLmcLmcLmcLmcLmcLmcNRcKfcNGcLGcMBcNHcLGcLGcLGcNIcLGcNGcNGcLGcLGcLGcLGcNJcNKcMGcNLcHDcNScyEcHQcHQcNTcLOcNOcNPcNQcLOcNUcHVcNVcNZcNWcObcOacNXcsLcNYcpscNYcsLcOdcOccOecOecOecOecOgcOfcOfcOfcOfcOfcOhcBPaaaaaaaaaaaacNdcNicNkcOicOjcsLcxMchfcBYcsLcsLcsLcsKcBPaaaaaacBRcxNcxNcxNcxNcOkcEHcOlcOncOmcOpcOocxNcOqcOtcOrcBRaaaaaacLbcOvcOucOscLecODcLbcOCbGGcFcbGHaabaabaabaabaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaacNFcOFcNMaaacNFcOFcNMaaacNFcOFcNMaaaayicLicNBcNBcNBcLicLicOwcOxcLicLicOxcOxcLicLicOxcOxcLwcKfcNGcOycLGcOzcOAcOBcOBcMAcLGcNGcOGcLGcLGcLGcLGcOHcOEcOJcOIclXcOKcOMcOLcOYcORcLOcNOcOZcONcLOcOOcHVcGKcOPcGHcPbcPacOScOTcOUcOVcOWcOTcOXcOTcOTcOTcBPcBPcBPcBPcBPcBPcBPcBPcPdcBPaaaaaaaaaaaacNdcPecPgcPfcHdcsKcPcchfcPicPhcPhcPkcsLcBPaaaaaacBRcKPcKQcKRcPmcPlcNocPncPjcPocPqcPpcPscPrcPpcPtcBRaaaaaacLbcLbcPycPAcPzcLbcLbbGHbGGcPBcuQcuQcuQbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaayiaabcNFcOFcNMaaacNFcOFcNMaabcNFcOFcNMaaaaabcLicMrcPucNDcLiaaaaabaaaaaaaaaaaaaaaaabaaaaaacOxcLwcKbcPvcLGcPwcPxcPCcPEcPDcPEcPFcPEcPGcPHcLCcPIcNGcNGcNKcPLcPJcPNcPMcPPcPKcPVcPScPWcPOcPXcPQcPRcPYcPTcPUcPUcQacQccQbcQdcPZcQfcQecQhcQgcQjcQicQocQmcQpcQpcQpcQpcQpcQpcQqcBPcPdcQkcQkcQkcQkcQkcQkcQlcQucQlcQncQkcQkcQkcQkcQkcQkcBYcsLcBPaaaaaacBRcJKcKZcJKcQxcMjcEHcQzcQAcQrcQscEHcEHcQtcEHcQBcBRaaaaabaabcLbcLbcQvcLbcLbaaabGHbGGcFccuQcQwcQCbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaacNFcOFcNMaabcNFcOFcNMaaacNFcOFcNMaabaaacLicLicOxcLicLiaaaaabaabaaaaabaaaaabaabaaaaaacQycQDcKbcQFcQGcQGcQHcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcJZcQIcJZcQEcJZcFacQKcQJcQOcQNcQNcQNcQUcQScPTcQLcQMcQVcQWcQPcQQcPZcQRcQXcQTcQYcRbcRacRdcRcaabcQZcQZcQZcQZcQZcRecBPcRicRhcRkcRjcRfcRgcQkcRlcRncRmcQkcRocRqcRpcRscRrcQkcBYcsLcBPaaaaaacBRcJKcJKcJKcRDcRwcNocRHcRIcRtcRucRvcRvcRJcEHcRxcBRaabaabaaaaaaaaacRyaaaaaaaaabGHbGGcFccuQbGGbGGbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvayiaaacNFcOFcNMaabcNFcOFcNMaaacNFcOFcNMaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcRzcRAcRAcRAcRAcQycRBcLwcRCcRKcREcREcRFcRGcRMcRLcRLcRLcRLcRNcRPcROcRQcRQcRScRScRQcRTcRVcRUcRRcRRcRYcRWcSccSacSgcRXcRXcShcRZcSjcSbcSkcSdcQPcSecPZcSfcSlcSmcSicSpcSocSrcSqcQpcSncSucSscSwcQZcRecBQcPdcQkcSycSxcStcSzcSvcSCcSFcSDcQkcSIcSAcSBcSAcSMcQkcBYcsLcBPcBPaaacBRcxNcxNcxNcxNcSNcEHcQzcSEcSOcQscEHcSGcSHcSHcSPcSJcSKaabaaaaaaaaaaaaaaaaaaaaabGHbGGcPBbGGbGGcSLbGHaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaayiaabcNFcOFcNMaaacNFcOFcNMaabcNFcOFcNMaaaaabcLicMrcPucNDcLiaaaaabaaaaaaaaaaaaaaaaabaaaaaacOxcLwcKbcPvcLGcPwcPxcPCcPEcPDcPEcPFcPEcPGcPHcLCcPIcNGcNGcNKcPLcPJcPNcPMcPPcPKcPVcPSbyZcPObgYcPQcPRcPYcPTcPUcPUcQacQccQbcQdcPZcQfcQecQhcQgcQjcQicQocQmcQpcQpcQpcQpcQpcQpcQqcBPcPdcQkcQkcQkcQkcQkcQkcQlcQucQlcQncQkcQkcQkcQkcQkcQkcBYcsLcBPaaaaaacBRcJKcKZcJKcQxcMjcEHcQzcQAcQrcQscEHcEHcQtcEHcQBcBRaaaaabaabcLbcLbcQvcLbcLbaaabGHbGGcFccuQcQwcQCbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaacNFcOFcNMaabcNFcOFcNMaaacNFcOFcNMaabaaacLicLicOxcLicLiaaaaabaabaaaaabaaaaabaabaaaaaacQycQDcKbcQFcQGcQGcQHcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcJZcQIcJZcQEcJZcFacQKcQJbpvcQNcQNcQNcQUcQScPTcQLcQMcQVcQWcQPcQQcPZcQRcQXcQTcQYcRbcRacRdcRcaabcQZcQZcQZcQZcQZcRecBPcRicRhcRkcRjcRfcRgcQkcRlcRncRmcQkcRocRqcRpcRscRrcQkcBYcsLcBPaaaaaacBRcJKcJKcJKcRDcRwcNocRHcRIcRtcRucRvcRvcRJcEHcRxcBRaabaabaaaaaaaaacRyaaaaaaaaabGHbGGcFccuQbGGbGGbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvayiaaacNFcOFcNMaabcNFcOFcNMaaacNFcOFcNMaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcRzcRAcRAcRAcRAcQycRBcLwcRCcRKcREcREcRFcRGcRMcRLcRLcRLcRLcRNcRPcROcRQcRQcRScRScRQcRTcRVcRUcRRcRRcRYcRWcTecSabqbcRXcRXcShcRZcSjcSbcSkcSdcQPcSecPZcSfcSlcSmcSicSpcSocSrcSqcQpcSncSucSscSwcQZcRecBQcPdcQkcSycSxcStcSzcSvcSCcSFcSDcQkcSIcSAcSBcSAcSMcQkcBYcsLcBPcBPaaacBRcxNcxNcxNcxNcSNcEHcQzcSEcSOcQscEHcSGcSHcSHcSPcSJcSKaabaaaaaaaaaaaaaaaaaaaaabGHbGGcPBbGGbGGcSLbGHaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaabaaaaabaabcSQaabaabaabcSQaabaaaaabcSQaabaaaaaaaaaaaaaaaaaaaaaaaaaaacRzcRzcRzcSRcTacSTcRAcTbcTccNRcRCcRCcSScTdcKbcKbcMvcSUcSUcSUcSUcSVcSWcSXcSWcSWcSWcRRcRRcSYcSZcTfcTicTgcRXcTjcTecRXcRXcRXcRXcTkcPTcTlcThcQVcSdcQPcSdcPZcSfcSlcTncTmcTqcTpcTucTraabcTocTvcSwcTwcQZcRecBQcRicRhcTxcTscSAcTtcQkcTycTAcTzcQkcTCcTDcSAcTFcTEcQkcBYcsLcTBcBPaaacBRcKPcKQcKRcTJcPlcNocTKcTNcTMcTGcTGcTHcTIcTPcTOcBRaabaabaabaaaaaaaaaaaaaaaaaabGHcTLcFcbGHbGHbGHbGHbGHaabaabaabcTQcTQcTQcTQcTQcTQaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabcTRcTScTScTUcTTcTVcTVcTVcTTcTVcTVcTVcTTcTVcTVcTVcTWcTScTScTScTScTScTXcTZcTYcUbcUacUecUdcUgcUfcNBcLwcUccRCcKbcKbcKbcUhcMvcSUcUkcUjcUmcUlcUicUncUpcUocUrcUqcUucUscUxcUwcUycUqcUtcUzcTecUvcRXcRXcRXcUAcPTcUCcUCcSdcUEcUDcUGcUFcUIcUHcUKcUJcUPcUNcUScSqcUVcSncUWcSwcSwcQZcRecBQcPdcQkcULcUMcVacQncQkcUOcVbcQncQkcUQcURcVccUTcUTcQkcBYcsLcUUcBPaaacBRcJKcMgcJKcVecMjcEHcVfcUXcUYcEHcUZcVgcxNcxNcxNcBRaaaaaaaabaabaaaaaaaaaaaaaaabGHcJQcFcbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaabaaaaabaabcVkaabaaaaabcVkaabaaaaabcVkaabaaaaaaaaaaaaaaaaaaaaaaaaaaacRzcRzcRzcVlcVdcVmcRAcVncNBcNNcTccTccTccTccVocTccUfcSUcVhcVicVjcVpcVrcVqcVtcVscVvcVucVycVwcVAcVzcVCcVBcUtcTjcTecVxcVDcRXcRXcVFcPTcVGcVHcSdcVIcQPcVJcVEcVLcVKcVOcVMcVQcVPcVQcVRaabcQZcQZcQZcQZcQZcRecBPcPdcQkcVScVNcVUcVTcVWcVVcVYcVXcWbcWacWccSAcWecWdcQkcBYcsLcVZcBPaaacBRcJKcJKcJKcWicWhcWpcWjcWqcWfcEHcEHcEHcEHcWgcWrcWwaaaaaaaaaaabaabaaaaaaaaaaaabGHbGHcFcbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -9133,7 +9126,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacXucXudcMdcUdfdaaaaaadardfedfpdcPdcPdfudardfwdfAdfzdfkdfldfmdfndfodfCdfqdfrdfsddpdfodfldfldfldftdfzdfDdfvcSUdbDdfEdaMdfxdfydeQdfFdfGdfBdfIdfHdfKdfJdfNcZedcScSndfOdemdemcQZcRecBPcsLdfQdfTdfRdfgcsKchfcsLcsLcsLcYidfLcsLcXrdfMddHcuQcFcbGHaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabGHbGGbGGbGGcJQdfSdfUcuQdfPbGGbGGbGHaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfXdfYdfYdfZdfYdfYdgadardfVdcVdcPdcPdgbdardaGdgccSUcSUdfodfodfodfodgddgfdgeddUdgidfodfodfodfocSUcSUdgqdglcSUdbDcZSdgrdgsdfydggdghcSdcSddgtcXWdggcXUdgjcYbdbIcQZcQZcQZcQZcQZcRecBPcTBcsLdgkdgCcsLdgmchfchfdgnchfdgocpscJGdgpchfchfcuQcFcbGHaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaabaaaaaaaaaaaabGHbGHcuQdgAdgycJQdfScacbGGbGGbGGdgBbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgDdgudgvdgwdgvdgxdgFdardgzdgGcMMdcPdgHdarcSUdgIcSUdgJafOdgEdfodfodfodfodgKdfodfodfodfodgEafOdgJcSUdgLcSUcSUdbDcZSdgMdeHdgNdgPdgOdgRdgQdgPdgQdgPdgVdeQdgWdbIdhgdhhdhhdhhdhhdhidgSdgTdgTdgUdhjdgTdgTdgTdhkdgXdgYdgodgZchfdgochfdhacuQcFcbGHbZZbZZbZZbGHbZZbZZbZZbZZbGHbZZbZZbZZbZZbGHbGHbGHbGHbGHbGHbGHbGHbGHbGHcMsbGHcJQcuQdhbbGGcQwdfScaccuQcuQdbhcuQbGHaabdhcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgDdgudgvdgwdgwdhddhedardhfdhldcPdcPdhmdardhndhpdhoafOdhqdhrdhrdhrdhrdhrdhtdhrdhrdhrdhrdhrdhuafOdhvdhydhwcSUdhsdaIdhzdhBdhAdhCdhxdhEdhDdhFcSddhHdhGdhJdhIdbIdhKaaaaabaabaaadhMdhLdhOdhNdhTdhSdhVdhUdgTdhYcsLcsLdhPcpsdhQcYicsLcsLcEGdhZdiadiadiadiadiadiadiadiadiadiadiadiadiadiadiediadiadiadiaczLcuQbPAcAUbGGdiccMscuQcuQcuQdbhcuQdfScaccuQdidbGGbGGbGHaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgDdgudgvdgwdgwdhdbsBdardhfdhldcPdcPdhmdardhndhpdhoafOdhqdhrdhrdhrdhrdhrdhtdhrdhrdhrdhrdhrdhuafOdhvdhydhwcSUdhsdaIdhzdhBdhAdhCdhxdhEdhDdhFcSddhHdhGdhJdhIdbIdhKaaaaabaabaaadhMdhLdhOdhNdhTdhSdhVdhUdgTdhYcsLcsLdhPcpsdhQcYicsLcsLcEGdhZdiadiadiadiadiadiadiadiadiadiadiadiadiadiadiediadiadiadiaczLcuQbPAcAUbGGdiccMscuQcuQcuQdbhcuQdfScaccuQdidbGGbGGbGHaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgDdgudgvdhWdgvdhXdifdardfVdcVdcPdcPdigdardihdibdibaaadiiafOafOafOafOafOafOafOafOafOafOafOdiiaaadibdibdihcSUdaGcZSdhIdikdijdipdioditdhIdipdhIcYbdhIcYbdhIdbIdhKaaaalwalwdiudhLdivdiwdildimdindiydixdgTcsLcsLchfdgodiqchfcYicXrdfMdhRdizdiAdiAdiAdiAdiAdiAdiCdiBdiAdiAdiAdiAdiAdiAdiEdiDdiGdiFdiJdiIdiLdiLdiLdiLdiNdiMdiOdiLdiLdiLdiLdiQcjYcuQdfcbGGdiHbGHaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadiSdfYdfYdfYdfYdfYdiTdardiKdjgdcPdcPdjjdardjndjpdiPaabdiiafOdjqaaaaaaaaaaaadjqaaaaaadjqafOdiiaaadiRdjudjtcSUdaGcSUaabdiUaabdiVdiWdiXdiYdiZdiYdjadiYdjadjbdjcdhKaaaalwaabdjddgSdjedjfdjwdjhdjidjxdjkdgTdjlcsLcsLcYidjmchfcYicYidjzbGHbGHbZZbZZbZZbZZbGHbZZbZZbZZbZZbGHbZZbZZbZZbZZbGHdjobGGcuQcTLbGGcuQcuQbZZbZZcxScuQdjAbGGdjAcuQdjCcacdjrbGHbGHbGHbGHbGHaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadardjsdjgdcPdcPdjDdardjHdibdjvaaadjIdjLaaaaaaaaaaaaaaadjyaaaaaaaaadjRdjOaaadibdibdjHcSUdaGcSUcQZdjBcTodjBcQZdjBcTodjBcQZdjScTodjUcQZaabdhKaaaalwaabdjEdgSdjFdjfdjGdjVdjidjWdjJdjKdirdjYdjMcYicpscsLdjNdgochfcBPaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaabGHdjXcLhcuQdjPbGGcuQaaaaaaaaaaaacuQbGGbGGdbgdjQdjQdkadkbdjQaaaaabaabaabaabdjTaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -9145,7 +9138,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaabcSUdjHdibdmjaaadjIdjLaaaaaaaaaaabaaaaaaaaaaaaaaadjRdjOaaadibdibdjHcSUdmkdmwdmvdaGdmxdmgaabaabaabaabaabaabaabdmoaabaabaabaabaabaabdjEaabaabaabdlYdlmdmydmAdmzdmEaabdmacBPcBQdmtcBQcBPcBPaaaaabaaaaaaaaaaaaaaaaabaabbZZbZZbZZbGHbGHbGHbGGcuQbGHdmubGHbGHdbgbPAcLhbKlcMsbGHaabaaaaaaaaaaabaaadlTdmGdlTaaaaabaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcSUdmHdmIdiPaabdiiafOdjqaaaaaadjqaaaaaaaaaaaadjqafOdiiaaadiRdmKdmJcSUdmLcSUcSUcSUcSUcSUcSUaaaaaaaabaaaaaaaaadmoaaaaaadmBdmBdmBdmBdmCaaaaaaaabdlYdmDdlmdmOdlmdlmaaaaabaaaaaadmFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaabGHdmbdmMbGHdmNaabbGHbGHbZZbZZcMsbGHaaaaabaaaaaaaaaaabaaaaaadmRaaaaaaaabaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacSUdmSdmUdmTaaadiiafOafOdncafOafOdncafOafOdncafOafOdiiaaadnhdmUdnicSUdmPdmQdnjdnldnkdnmdmVdmWdmWdmXdmWdmWdmWdmYdmWdmWdmZdnadnbdnodmCaaaaaaaabdndaHQdlmdnedlmdnfaabaabaaaaaadngaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaabpaaaaaabGHdnqdnnbGHdnpaabaaaaabaaaaaaaabaaaaaaaabaaaaaaaaaaabaaaaaadnraaaaaaaabaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadnscSUcSUdntaaadnudhrdhrdnydhrdhrdnydhrdhrdnydhrdhrdnzaaadntcSUcSUcSUdmPdnBdnAdnEdnCdnHdfoaaaaaaaabaaaaaaaaadmodmBdmBdmBbfmdnwdnvdmCaaaaaaaabaabaHQdnxdnIdnxaHQaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaabZZdnJbZZbZZaabdhcaaaaabaaaaaaaabaaaamWamWalwayiaabaabaabaabdnLaabaabaabaabdhcamhamWamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadnscSUcSUdntaaadnudhrdhrdnydhrdhrdnydhrdhrdnydhrdhrdnzaaadntcSUcSUcSUdmPdnBdnAdnEdnCdnHdfoaaaaaaaabaaaaaaaaadmodmBdmBdmBbfmbtsdnvdmCaaaaaaaabaabaHQdnxdnIdnxaHQaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaabZZdnJbZZbZZaabdhcaaaaabaaaaaaaabaaaamWamWalwayiaabaabaabaabdnLaabaabaabaabdhcamhamWamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcSUcYXdnMdmTaabaabaabaabaaaaaaaaaaaaaaaaabaabaabaabdnhdnNcYXcSUcSUdnDcSUcSUcSUcSUdfocSUaabaabaabaabaabaabbhnbfubjbbhybkJdnGdnFdmCaaaaaaaaaaabaHQaaaaaaaaaaHQaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaabZZdnPbZZaaaaaaaaaaaaaabaaaaaaaabaaaamWaaaaaaaabaaaaabaaaaaadnQaaaaaaaabaaaaabaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaacSUcSUdnMdnRdnRdnRdnRdnRdnRdnRdnRdnRdnRdnRdnRdnRdnNcSUcSUcSUdnKdnScSUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadnUdnTdnWdnVdobdoadofdoeaaaaaaaaaaabaHQaHQaHQaHQaHQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaabZZdogbZZaaaaaaaaaaaaaabaaaaaaaabaaaamWaaadohdohdohdohdohaabdoiaabdohdohdohdohdohaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUaaacSUcSUdnXcSUcSUcSUcSUaaaaaaaaaaaaaaaaaaaaaaaadnYdnZdnZdnZdnZdojdokdocdoddolaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaabZZdombZZaaaaaaaaaaaaaaaaaaaaaaabaaaamWaabdondoodoodoodoodoqdopdosdordordordordotaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
diff --git a/code/__DEFINES/genetics.dm b/code/__DEFINES/genetics.dm
index 6f8bd0feabf..4cbe2a9e5f1 100644
--- a/code/__DEFINES/genetics.dm
+++ b/code/__DEFINES/genetics.dm
@@ -13,7 +13,12 @@
#define DISABILITY_FLAG_BLIND 16
#define DISABILITY_FLAG_MUTE 32
#define DISABILITY_FLAG_COLOURBLIND 64
-
+#define DISABILITY_FLAG_TOURETTES 512
+#define DISABILITY_FLAG_NERVOUS 1024
+#define DISABILITY_FLAG_SWEDISH 2048
+#define DISABILITY_FLAG_SCRAMBLED 4096 // incoherent speech
+#define DISABILITY_FLAG_LISP 8192
+#define DISABILITY_FLAG_DIZZY 16384
///////////////////////////////////////
// MUTATIONS
///////////////////////////////////////
@@ -134,4 +139,4 @@
#define RADIMMUNE 11
#define NOGUNS 12
#define NOTRANSSTING 13
-#define VIRUSIMMUNE 14
\ No newline at end of file
+#define VIRUSIMMUNE 14
diff --git a/code/_globalvars/genetics.dm b/code/_globalvars/genetics.dm
index 116aa0797cb..3ff80f3376c 100644
--- a/code/_globalvars/genetics.dm
+++ b/code/_globalvars/genetics.dm
@@ -66,4 +66,4 @@ var/LOUDBLOCK = 0
var/DIZZYBLOCK = 0
var/list/reg_dna = list( ) //this appears to be a list of UE == real_name correlations
-var/list/global_mutations = list() // list of hidden mutation things
\ No newline at end of file
+var/list/global_mutations = list() // list of hidden mutation things
diff --git a/code/datums/action.dm b/code/datums/action.dm
index 499570be291..e12bd371a6d 100644
--- a/code/datums/action.dm
+++ b/code/datums/action.dm
@@ -209,6 +209,19 @@
button.name = name
..()
+/datum/action/item_action/synthswitch
+ name = "Change Synthesizer Instrument"
+ desc = "Change the type of instrument your synthesizer is playing as."
+
+/datum/action/item_action/synthswitch/Trigger()
+ if(istype(target, /obj/item/device/instrument/piano_synth))
+ var/obj/item/device/instrument/piano_synth/synth = target
+ var/chosen = input("Choose the type of instrument you want to use", "Instrument Selection", "piano") as null|anything in synth.insTypes
+ if(!synth.insTypes[chosen])
+ return
+ return synth.changeInstrument(chosen)
+ return ..()
+
/datum/action/item_action/vortex_recall
name = "Vortex Recall"
desc = "Recall yourself, and anyone nearby, to an attuned hierophant rune at any time.
If no such rune exists, will produce a rune at your location."
@@ -337,6 +350,18 @@
var/image/img = image(button_icon, current_button, "scan_mode")
current_button.overlays += img
+/datum/action/item_action/instrument
+ name = "Use Instrument"
+ desc = "Use the instrument specified"
+
+/datum/action/item_action/instrument/Trigger()
+ if(istype(target, /obj/item/device/instrument))
+ var/obj/item/device/instrument/I = target
+ I.interact(usr)
+ return
+ return ..()
+
+
/datum/action/item_action/remove_badge
name = "Remove Holobadge"
diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm
index 739844051f6..20d9cdb2c1e 100644
--- a/code/datums/supplypacks.dm
+++ b/code/datums/supplypacks.dm
@@ -949,7 +949,8 @@ var/list/all_supply_groups = list(supply_emergency,supply_security,supply_engine
contains = list(/obj/item/pizzabox/margherita,
/obj/item/pizzabox/mushroom,
/obj/item/pizzabox/meat,
- /obj/item/pizzabox/vegetable)
+ /obj/item/pizzabox/vegetable,
+ /obj/item/pizzabox/hawaiian)
cost = 60
containername = "Pizza crate"
@@ -1513,6 +1514,22 @@ var/list/all_supply_groups = list(supply_emergency,supply_security,supply_engine
containername = "foam force pistols crate"
contraband = 1
+/datum/supply_packs/misc/bigband
+ name = "Big band instrument collection"
+ contains = list(/obj/item/device/instrument/violin,
+ /obj/item/device/instrument/guitar,
+ /obj/item/device/instrument/eguitar,
+ /obj/item/device/instrument/glockenspiel,
+ /obj/item/device/instrument/accordion,
+ /obj/item/device/instrument/saxophone,
+ /obj/item/device/instrument/trombone,
+ /obj/item/device/instrument/recorder,
+ /obj/item/device/instrument/harmonica,
+ /obj/item/device/instrument/xylophone,
+ /obj/structure/piano)
+ cost = 50
+ containername = "Big band musical instruments collection"
+
/datum/supply_packs/misc/randomised/contraband
num_contained = 5
contains = list(/obj/item/weapon/storage/pill_bottle/random_drug_bottle,
diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/game/gamemodes/cult/cult_items.dm
index abc8aa8952f..39099fb7d44 100644
--- a/code/game/gamemodes/cult/cult_items.dm
+++ b/code/game/gamemodes/cult/cult_items.dm
@@ -41,16 +41,13 @@
force = 15
throwforce = 25
embed_chance = 75
- var/cooldown = 0
-/obj/item/weapon/melee/cultblade/dagger/afterattack(atom/target, mob/living/carbon/human/user)
+/obj/item/weapon/melee/cultblade/dagger/attack(atom/target, mob/living/carbon/human/user)
..()
if(ishuman(target))
var/mob/living/carbon/human/H = target
- if(!(cooldown > world.time) && ((H.stat != DEAD) && !(NO_BLOOD in H.species.species_traits)))
- user.visible_message("The runes on the blade absorb the blood of [H]!")
- H.bleed(5000)
- cooldown = world.time + 2400
+ if((H.stat != DEAD) && !(NO_BLOOD in H.species.species_traits))
+ H.bleed(50)
/obj/item/weapon/restraints/legcuffs/bola/cult
name = "runed bola"
diff --git a/code/game/gamemodes/cult/cult_structures.dm b/code/game/gamemodes/cult/cult_structures.dm
index 60b9fcb2c85..10f6b92f517 100644
--- a/code/game/gamemodes/cult/cult_structures.dm
+++ b/code/game/gamemodes/cult/cult_structures.dm
@@ -65,6 +65,23 @@
else
return ..()
+/obj/structure/cult/functional/proc/updatehealth()
+ if(health <= 0)
+ destroy_structure()
+
+/obj/structure/cult/functional/proc/take_damage(damage, damage_type = BRUTE)
+ if(damage_type == BRUTE || damage_type == BURN)
+ health -= damage
+ updatehealth()
+
+/obj/structure/cult/functional/attackby(obj/item/I, mob/living/user)
+ ..()
+ take_damage(I.force, I.damtype)
+ playsound(loc, I.hitsound, 80, 1)
+
+/obj/structure/cult/functional/bullet_act(var/obj/item/projectile/P)
+ take_damage(P.damage, P.damage_type)
+
/obj/structure/cult/functional/attack_hand(mob/living/user)
if(!iscultist(user))
to_chat(user, "[heathen_message]")
@@ -142,6 +159,8 @@
C.apply_damage(30, BURN, "head") //30 fire damage because it's FUCKING LAVA
head.disfigure("burn") //Your face is unrecognizable because it's FUCKING LAVA
return 1
+ else
+ ..()
var/list/blacklisted_pylon_turfs = typecacheof(list(
/turf/simulated/floor/engine/cult,
diff --git a/code/game/gamemodes/miniantags/abduction/abduction_surgery.dm b/code/game/gamemodes/miniantags/abduction/abduction_surgery.dm
index 4f7ad2ade9a..64b77d3b374 100644
--- a/code/game/gamemodes/miniantags/abduction/abduction_surgery.dm
+++ b/code/game/gamemodes/miniantags/abduction/abduction_surgery.dm
@@ -11,7 +11,7 @@
var/obj/item/organ/external/affected = H.get_organ(target_zone)
if(!affected)
return 0
- if(affected.status & ORGAN_ROBOT) //Maybe add in a machine version, later?
+ if(affected.status & ORGAN_ROBOT)
return 0
var/mob/living/carbon/human/H = user
// You must either: Be of the abductor species, or contain an abductor implant
@@ -64,3 +64,31 @@
var/obj/item/organ/internal/heart/gland/gland = tool
gland.insert(target, 2)
return 1
+
+//IPC Gland Surgery//
+
+/datum/surgery/organ_extraction/synth
+ name = "experimental robotic dissection"
+ steps = list(/datum/surgery_step/robotics/external/unscrew_hatch,/datum/surgery_step/robotics/external/open_hatch,/datum/surgery_step/internal/extract_organ/synth,/datum/surgery_step/internal/gland_insert,/datum/surgery_step/robotics/external/close_hatch)
+ possible_locs = list("chest")
+ requires_organic_bodypart = 0
+
+/datum/surgery/organ_extraction/synth/can_start(mob/user, mob/living/carbon/target, target_zone, obj/item/tool,datum/surgery/surgery)
+ if(!ishuman(user))
+ return FALSE
+ if(ishuman(target))
+ var/mob/living/carbon/human/H = target
+ var/obj/item/organ/external/affected = H.get_organ(target_zone)
+ if(!affected)
+ return FALSE
+ if(!(affected.status & ORGAN_ROBOT))
+ return FALSE
+ var/mob/living/carbon/human/H = user
+ // You must either: Be of the abductor species, or contain an abductor implant
+ if((H.get_species() == "Abductor" || (locate(/obj/item/weapon/implant/abductor) in H)))
+ return TRUE
+ return FALSE
+
+/datum/surgery_step/internal/extract_organ/synth
+ name = "remove cell"
+ organ_types = list(/obj/item/organ/internal/cell)
\ No newline at end of file
diff --git a/code/game/jobs/job/support.dm b/code/game/jobs/job/support.dm
index 6b8a35ce582..573f8e72c94 100644
--- a/code/game/jobs/job/support.dm
+++ b/code/game/jobs/job/support.dm
@@ -215,17 +215,18 @@
uniform = /obj/item/clothing/under/rank/clown
shoes = /obj/item/clothing/shoes/clown_shoes
mask = /obj/item/clothing/mask/gas/clown_hat
+ l_pocket = /obj/item/weapon/bikehorn
l_ear = /obj/item/device/radio/headset/headset_service
id = /obj/item/weapon/card/id/clown
pda = /obj/item/device/pda/clown
backpack_contents = list(
/obj/item/weapon/reagent_containers/food/snacks/grown/banana = 1,
- /obj/item/weapon/bikehorn = 1,
/obj/item/weapon/stamp/clown = 1,
/obj/item/toy/crayon/rainbow = 1,
/obj/item/weapon/storage/fancy/crayons = 1,
/obj/item/weapon/reagent_containers/spray/waterflower = 1,
- /obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofbanana = 1
+ /obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofbanana = 1,
+ /obj/item/device/instrument/bikehorn = 1
)
backpack = /obj/item/weapon/storage/backpack/clown
diff --git a/code/game/machinery/computer/HolodeckControl.dm b/code/game/machinery/computer/HolodeckControl.dm
index 72dcbb7deb6..c036bedde1c 100644
--- a/code/game/machinery/computer/HolodeckControl.dm
+++ b/code/game/machinery/computer/HolodeckControl.dm
@@ -436,8 +436,10 @@
item_state = "claymorered"
/obj/item/weapon/holo/esword
- desc = "May the force be within you. Sorta"
+ name = "Holographic Energy Sword"
+ desc = "This looks like a real energy sword!"
icon_state = "sword0"
+ hitsound = "sound/weapons/blade1.ogg"
force = 3.0
throw_speed = 1
throw_range = 5
diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm
index caf6840ebc7..5b1211a7394 100644
--- a/code/game/machinery/vending.dm
+++ b/code/game/machinery/vending.dm
@@ -977,7 +977,7 @@
/obj/item/seeds/cabbage = 3, /obj/item/seeds/carrot = 3, /obj/item/seeds/cherry = 3, /obj/item/seeds/chanter = 3,
/obj/item/seeds/chili = 3, /obj/item/seeds/cocoapod = 3, /obj/item/seeds/coffee = 3, /obj/item/seeds/comfrey =3, /obj/item/seeds/corn = 3,
/obj/item/seeds/nymph =3, /obj/item/seeds/eggplant = 3, /obj/item/seeds/grape = 3, /obj/item/seeds/grass = 3, /obj/item/seeds/lemon = 3,
- /obj/item/seeds/lime = 3, /obj/item/seeds/onion = 3, /obj/item/seeds/orange = 3, /obj/item/seeds/peanuts = 3, /obj/item/seeds/potato = 3, /obj/item/seeds/poppy = 3,
+ /obj/item/seeds/lime = 3, /obj/item/seeds/onion = 3, /obj/item/seeds/orange = 3, /obj/item/seeds/peanuts = 3, /obj/item/seeds/pineapple = 3, /obj/item/seeds/potato = 3, /obj/item/seeds/poppy = 3,
/obj/item/seeds/pumpkin = 3, /obj/item/seeds/replicapod = 3, /obj/item/seeds/wheat/rice = 3, /obj/item/seeds/soya = 3, /obj/item/seeds/sunflower = 3,
/obj/item/seeds/tea = 3, /obj/item/seeds/tobacco = 3, /obj/item/seeds/tomato = 3,
/obj/item/seeds/tower = 3, /obj/item/seeds/watermelon = 3, /obj/item/seeds/wheat = 3, /obj/item/seeds/whitebeet = 3)
diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm
index a1a68ff5cf7..d40baf16877 100644
--- a/code/game/objects/items.dm
+++ b/code/game/objects/items.dm
@@ -202,7 +202,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d
to_chat(user, msg)
-/obj/item/attack_hand(mob/user as mob)
+/obj/item/attack_hand(mob/user as mob, pickupfireoverride = FALSE)
if(!user) return 0
if(hasorgans(user))
var/mob/living/carbon/human/H = user
@@ -216,7 +216,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d
to_chat(user, "You try to move your [temp.name], but cannot!")
return 0
- if(burn_state == ON_FIRE)
+ if(burn_state == ON_FIRE && !pickupfireoverride)
var/mob/living/carbon/human/H = user
if(istype(H))
if(H.gloves && (H.gloves.max_heat_protection_temperature > 360))
diff --git a/code/game/objects/items/devices/instruments.dm b/code/game/objects/items/devices/instruments.dm
index 3643b197d4c..450dad3d869 100644
--- a/code/game/objects/items/devices/instruments.dm
+++ b/code/game/objects/items/devices/instruments.dm
@@ -2,14 +2,15 @@
/obj/item/device/instrument
name = "generic instrument"
icon = 'icons/obj/musician.dmi'
+ lefthand_file = 'icons/mob/inhands/equipment/instruments_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/equipment/instruments_righthand.dmi'
burn_state = FLAMMABLE
var/datum/song/handheld/song
var/instrumentId = "generic"
- var/instrumentExt = "ogg"
+ var/instrumentExt = "mid"
/obj/item/device/instrument/New()
- song = new(instrumentId, src)
- song.instrumentExt = instrumentExt
+ song = new(instrumentId, src, instrumentExt)
..()
/obj/item/device/instrument/Destroy()
@@ -44,6 +45,7 @@
desc = "A wooden musical instrument with four strings and a bow. \"The devil went down to space, he was looking for an assistant to grief.\""
icon_state = "violin"
item_state = "violin"
+ instrumentExt = "ogg"
force = 10
hitsound = "swing_hit"
instrumentId = "violin"
@@ -55,11 +57,26 @@
item_state = "golden_violin"
burn_state = LAVA_PROOF
+/obj/item/device/instrument/piano_synth
+ name = "synthesizer"
+ desc = "An advanced electronic synthesizer that can be used as various instruments."
+ icon_state = "synth"
+ item_state = "synth"
+ instrumentId = "piano"
+ instrumentExt = "ogg"
+ var/static/list/insTypes = list("accordion" = "mid", "glockenspiel" = "mid", "guitar" = "ogg", "eguitar" = "ogg", "harmonica" = "mid", "piano" = "ogg", "recorder" = "mid", "saxophone" = "mid", "trombone" = "mid", "violin" = "ogg", "xylophone" = "mid")
+ actions_types = list(/datum/action/item_action/synthswitch)
+
+/obj/item/device/instrument/piano_synth/proc/changeInstrument(name = "piano")
+ song.instrumentDir = name
+ song.instrumentExt = insTypes[name]
+
/obj/item/device/instrument/guitar
name = "guitar"
desc = "It's made of wood and has bronze strings."
icon_state = "guitar"
item_state = "guitar"
+ instrumentExt = "ogg"
force = 10
attack_verb = list("played metal on", "serenaded", "crashed", "smashed")
hitsound = 'sound/effects/guitarsmash.ogg'
@@ -70,11 +87,79 @@
desc = "Makes all your shredding needs possible."
icon_state = "eguitar"
item_state = "eguitar"
+ instrumentExt = "ogg"
force = 12
attack_verb = list("played metal on", "shredded", "crashed", "smashed")
hitsound = 'sound/weapons/stringsmash.ogg'
instrumentId = "eguitar"
+/obj/item/device/instrument/glockenspiel
+ name = "glockenspiel"
+ desc = "Smooth metal bars perfect for any marching band."
+ icon_state = "glockenspiel"
+ item_state = "glockenspiel"
+ instrumentId = "glockenspiel"
+
+/obj/item/device/instrument/accordion
+ name = "accordion"
+ desc = "Pun-Pun not included."
+ icon_state = "accordion"
+ item_state = "accordion"
+ instrumentId = "accordion"
+
+/obj/item/device/instrument/saxophone
+ name = "saxophone"
+ desc = "This soothing sound will be sure to leave your audience in tears."
+ icon_state = "saxophone"
+ item_state = "saxophone"
+ instrumentId = "saxophone"
+
+/obj/item/device/instrument/trombone
+ name = "trombone"
+ desc = "How can any pool table ever hope to compete?"
+ icon_state = "trombone"
+ item_state = "trombone"
+ instrumentId = "trombone"
+
+/obj/item/device/instrument/recorder
+ name = "recorder"
+ desc = "Just like in school, playing ability and all."
+ icon_state = "recorder"
+ item_state = "recorder"
+ instrumentId = "recorder"
+
+/obj/item/device/instrument/harmonica
+ name = "harmonica"
+ desc = "For when you get a bad case of the space blues."
+ icon_state = "harmonica"
+ item_state = "harmonica"
+ instrumentId = "harmonica"
+ force = 5
+ w_class = WEIGHT_CLASS_SMALL
+
+/obj/item/device/instrument/xylophone
+ name = "xylophone"
+ desc = "a percussion instrument with a bright tone."
+ icon_state = "xylophone"
+ item_state = "xylophone"
+ instrumentId = "xylophone"
+
+/obj/item/device/instrument/bikehorn
+ name = "gilded bike horn"
+ desc = "An exquisitely decorated bike horn, capable of honking in a variety of notes."
+ icon_state = "bike_horn"
+ item_state = "bike_horn"
+ lefthand_file = 'icons/mob/inhands/items_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/items_righthand.dmi'
+ attack_verb = list("beautifully honks")
+ instrumentId = "bikehorn"
+ instrumentExt = "ogg"
+ w_class = WEIGHT_CLASS_TINY
+ force = 0
+ throw_speed = 3
+ throw_range = 7
+ hitsound = 'sound/items/bikehorn.ogg'
+
/datum/crafting_recipe/violin
name = "Violin"
result = /obj/item/device/instrument/violin
diff --git a/code/game/objects/items/weapons/bee_briefcase.dm b/code/game/objects/items/weapons/bee_briefcase.dm
index 229a025a18f..098fdc00549 100644
--- a/code/game/objects/items/weapons/bee_briefcase.dm
+++ b/code/game/objects/items/weapons/bee_briefcase.dm
@@ -62,14 +62,7 @@
else
if(world.time >= next_sound) //This cooldown doesn't prevent us from releasing bees, just stops the sound
next_sound = world.time + 90
- //Play sound through the station intercomms, so everyone knows the doom you have wrought.
- for(var/O in global_intercoms)
- var/obj/item/device/radio/intercom/I = O
- if(!is_station_level(I.z)) //Only broadcast to the station intercoms
- continue
- if(!I.on) //Only broadcast to active intercoms (powered, switched on)
- continue
- playsound(I, sound_file, 35)
+ playsound(loc, sound_file, 35)
//Release up to 5 bees per use. Without using strange reagent, that means two uses. WITH strange reagent, you can get more if you don't release the last bee
for(var/bee = min(5, bees_left), bee > 0, bee--)
diff --git a/code/game/objects/structures/crates_lockers/walllocker.dm b/code/game/objects/structures/crates_lockers/walllocker.dm
index 25a41a8dde7..ec736d4b04a 100644
--- a/code/game/objects/structures/crates_lockers/walllocker.dm
+++ b/code/game/objects/structures/crates_lockers/walllocker.dm
@@ -17,6 +17,10 @@
//spawns endless (3 sets) amounts of breathmask, emergency oxy tank and crowbar
+/obj/structure/closet/walllocker/CtrlClick()
+ if(ishuman(usr) && Adjacent(usr))
+ verb_toggleopen()
+
/obj/structure/closet/walllocker/emerglocker
name = "emergency locker"
desc = "A wall mounted locker with emergency supplies"
diff --git a/code/game/objects/structures/musician.dm b/code/game/objects/structures/musician.dm
index ca7c18c2e4e..1677b776c15 100644
--- a/code/game/objects/structures/musician.dm
+++ b/code/game/objects/structures/musician.dm
@@ -14,10 +14,11 @@
var/instrumentExt = "ogg" // the file extension
var/obj/instrumentObj = null // the associated obj playing the sound
-/datum/song/New(dir, obj)
+/datum/song/New(dir, obj, ext = "ogg")
tempo = sanitize_tempo(tempo)
instrumentDir = dir
instrumentObj = obj
+ instrumentExt = ext
/datum/song/Destroy()
instrumentObj = null
@@ -50,7 +51,7 @@
return
// now generate name
- var/soundfile = "sound/[instrumentDir]/[ascii2text(note+64)][acc][oct].[instrumentExt]"
+ var/soundfile = "sound/instruments/[instrumentDir]/[ascii2text(note+64)][acc][oct].[instrumentExt]"
soundfile = file(soundfile)
// make sure the note exists
if(!fexists(soundfile))
@@ -58,7 +59,8 @@
// and play
var/turf/source = get_turf(instrumentObj)
var/sound/music_played = sound(soundfile)
- for(var/mob/M in hearers(15, source))
+ for(var/A in hearers(15, source))
+ var/mob/M = A
if(!M.client || !(M.client.prefs.sound & SOUND_INSTRUMENTS))
continue
M.playsound_local(source, null, 100, falloff = 5, S = music_played)
@@ -147,6 +149,7 @@
lines = new()
tempo = sanitize_tempo(5) // default 120 BPM
name = ""
+ nanomanager.update_uis(src)
else if(href_list["import"])
playing = 0
@@ -156,11 +159,11 @@
if(!in_range(instrumentObj, usr))
return
- if(lentext(t) >= 3072)
+ if(lentext(t) >= 12000)
var/cont = input(usr, "Your message is too long! Would you like to continue editing it?", "", "yes") in list("yes", "no")
if(cont == "no")
break
- while(lentext(t) > 3072)
+ while(lentext(t) > 12000)
//split into lines
spawn()
@@ -172,19 +175,21 @@
lines.Cut(1,2)
else
tempo = sanitize_tempo(5) // default 120 BPM
- if(lines.len > 50)
+ if(lines.len > 200)
to_chat(usr, "Too many lines!")
- lines.Cut(51)
+ lines.Cut(201)
var/linenum = 1
for(var/l in lines)
- if(lentext(l) > 50)
+ if(lentext(l) > 200)
to_chat(usr, "Line [linenum] too long!")
lines.Remove(l)
else
linenum++
+ nanomanager.update_uis(src)
else if(href_list["help"])
help = !help
+ nanomanager.update_uis(src)
if(href_list["repeat"]) //Changing this from a toggle to a number of repeats to avoid infinite loops.
if(playing)
@@ -194,9 +199,11 @@
repeat = 0
if(repeat > max_repeat)
repeat = max_repeat
+ nanomanager.update_uis(src)
else if(href_list["tempo"])
tempo = sanitize_tempo(tempo + text2num(href_list["tempo"]) * world.tick_lag)
+ nanomanager.update_uis(src)
else if(href_list["play"])
if(playing)
@@ -204,6 +211,7 @@
playing = 1
spawn()
playsong(usr)
+ nanomanager.update_uis(src)
else if(href_list["insertline"])
var/num = round(text2num(href_list["insertline"]))
@@ -213,32 +221,36 @@
var/newline = html_encode(input("Enter your line: ", instrumentObj.name) as text|null)
if(!newline || !in_range(instrumentObj, usr))
return
- if(lines.len > 50)
+ if(lines.len > 200)
return
- if(lentext(newline) > 50)
- newline = copytext(newline, 1, 50)
+ if(lentext(newline) > 200)
+ newline = copytext(newline, 1, 200)
lines.Insert(num, newline)
+ nanomanager.update_uis(src)
else if(href_list["deleteline"])
var/num = round(text2num(href_list["deleteline"]))
if(num > lines.len || num < 1)
return
lines.Cut(num, num + 1)
+ nanomanager.update_uis(src)
else if(href_list["modifyline"])
var/num = round(text2num(href_list["modifyline"]))
var/content = html_encode(input("Enter your line: ", instrumentObj.name, lines[num]) as text|null)
if(!content || !in_range(instrumentObj, usr))
return
- if(lentext(content) > 50)
- content = copytext(content, 1, 50)
+ if(lentext(content) > 200)
+ content = copytext(content, 1, 200)
if(num > lines.len || num < 1)
return
lines[num] = content
+ nanomanager.update_uis(src)
else if(href_list["stop"])
playing = 0
+ nanomanager.update_uis(src)
/datum/song/proc/sanitize_tempo(new_tempo)
new_tempo = abs(new_tempo)
diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm
index a5e4190d6ea..83de35ea82c 100644
--- a/code/game/turfs/turf.dm
+++ b/code/game/turfs/turf.dm
@@ -157,6 +157,7 @@
return
if(!use_preloader && path == type) // Don't no-op if the map loader requires it to be reconstructed
return src
+ set_light(0)
var/old_opacity = opacity
var/old_dynamic_lighting = dynamic_lighting
var/old_affecting_lights = affecting_lights
diff --git a/code/modules/admin/verbs/pray.dm b/code/modules/admin/verbs/pray.dm
index 4560c7affa9..8651d26f016 100644
--- a/code/modules/admin/verbs/pray.dm
+++ b/code/modules/admin/verbs/pray.dm
@@ -13,7 +13,22 @@
return
var/image/cross = image('icons/obj/storage.dmi',"bible")
- msg = "[bicon(cross)] PRAY: [key_name(src, 1)] (?) (PP) (VV) (SM) ([admin_jump_link(src)]) (CA) (SC) (BLESS) (SMITE): [msg]"
+ var/font_color = "purple"
+ var/prayer_type = "PRAYER"
+ var/deity
+ if(usr.job == "Chaplain")
+ if(ticker && ticker.Bible_deity_name)
+ deity = ticker.Bible_deity_name
+ cross = image('icons/obj/storage.dmi',"kingyellow")
+ font_color = "blue"
+ prayer_type = "CHAPLAIN PRAYER"
+ else if(iscultist(usr))
+ cross = image('icons/obj/storage.dmi',"tome")
+ font_color = "red"
+ prayer_type = "CULTIST PRAYER"
+ deity = ticker.mode.cultdat.entity_name
+
+ msg = "[bicon(cross)][prayer_type][deity ? " (to [deity])" : ""]:[key_name(src, 1)] (?) (PP) (VV) (SM) ([admin_jump_link(src)]) (CA) (SC) (BLESS) (SMITE): [msg]"
for(var/client/X in admins)
if(check_rights(R_EVENT,0,X.mob))
diff --git a/code/modules/client/preference/preferences.dm b/code/modules/client/preference/preferences.dm
index 124767ba349..c1a0a0de770 100644
--- a/code/modules/client/preference/preferences.dm
+++ b/code/modules/client/preference/preferences.dm
@@ -819,13 +819,19 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts
var/HTML = "
"
HTML += ""
- HTML += ShowDisabilityState(user,DISABILITY_FLAG_NEARSIGHTED,"Needs Glasses")
+ HTML += ShowDisabilityState(user,DISABILITY_FLAG_NEARSIGHTED,"Needs glasses")
HTML += ShowDisabilityState(user,DISABILITY_FLAG_FAT,"Obese")
HTML += ShowDisabilityState(user,DISABILITY_FLAG_EPILEPTIC,"Seizures")
HTML += ShowDisabilityState(user,DISABILITY_FLAG_DEAF,"Deaf")
HTML += ShowDisabilityState(user,DISABILITY_FLAG_BLIND,"Blind")
HTML += ShowDisabilityState(user,DISABILITY_FLAG_COLOURBLIND,"Colourblind")
HTML += ShowDisabilityState(user,DISABILITY_FLAG_MUTE,"Mute")
+ HTML += ShowDisabilityState(user,DISABILITY_FLAG_TOURETTES,"Tourettes syndrome") // this will / can not be abused. It also SEVERELY stuns. It's just for fun.
+ HTML += ShowDisabilityState(user,DISABILITY_FLAG_NERVOUS,"Stutter")
+ HTML += ShowDisabilityState(user,DISABILITY_FLAG_SWEDISH,"Swedish accent")
+ HTML += ShowDisabilityState(user,DISABILITY_FLAG_LISP,"Lisp")
+ HTML += ShowDisabilityState(user,DISABILITY_FLAG_DIZZY,"Dizziness")
+ HTML += ShowDisabilityState(user,DISABILITY_FLAG_SCRAMBLED,"Can't speak properly")
HTML += {"
@@ -2174,6 +2180,27 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts
if(disabilities & DISABILITY_FLAG_MUTE)
character.dna.SetSEState(MUTEBLOCK,1,1)
+ if(disabilities & DISABILITY_FLAG_TOURETTES)
+ character.dna.SetSEState(TWITCHBLOCK,1,1)
+
+ if(disabilities & DISABILITY_FLAG_NERVOUS)
+ character.dna.SetSEState(NERVOUSBLOCK,1,1)
+
+ if(disabilities & DISABILITY_FLAG_SWEDISH)
+ character.dna.SetSEState(SWEDEBLOCK,1,1)
+
+ if(disabilities & DISABILITY_FLAG_SCRAMBLED)
+ character.dna.SetSEState(SCRAMBLEBLOCK,1,1)
+
+ if(disabilities & DISABILITY_FLAG_LISP)
+ character.dna.SetSEState(LISPBLOCK,1,1)
+
+ if(disabilities & DISABILITY_FLAG_DIZZY)
+ character.dna.SetSEState(DIZZYBLOCK,1,1)
+
+ if(disabilities & DISABILITY_FLAG_SCRAMBLED)
+ character.dna.SetSEState(SCRAMBLEBLOCK,1,1)
+
S.handle_dna(character)
if(character.dna.dirtySE)
diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm
index 645f12ce32b..8c616e5a8f5 100644
--- a/code/modules/customitems/item_defines.dm
+++ b/code/modules/customitems/item_defines.dm
@@ -276,7 +276,39 @@
to_chat(target, "You comb your tail with the [src].")
used = 1
-/obj/item/device/fluff/desolate_baton_kit //DesolateG: Michael steampunk_witch
+/obj/item/device/fluff/desolate_coat_kit //DesolateG: Michael Smith
+ name = "armored jacket conversion kit"
+ desc = "Flaps of dark fabric, probably used to somehow modify some sort of an armored garment. Won't help with protection, though."
+ icon_state = "modkit"
+ w_class = WEIGHT_CLASS_SMALL
+
+/obj/item/device/fluff/desolate_coat_kit/afterattack(atom/target, mob/user, proximity)
+ if(!proximity || !ishuman(user) || user.incapacitated())
+ return
+
+ if(!istype(target, /obj/item/clothing/suit/armor/hos))
+ to_chat(user, "You can't modify [target]!")
+ return
+
+ to_chat(user, "You modify the appearance of [target].")
+ var/obj/item/clothing/suit/armor/jacket = target
+ jacket.icon_state = "desolate_coat_open"
+ jacket.icon = 'icons/obj/custom_items.dmi'
+ jacket.ignore_suitadjust = 0
+ jacket.suit_adjusted = 1
+ var/has_action = FALSE
+ for(var/datum/action/A in jacket.actions)
+ if(istype(A, /datum/action/item_action/openclose))
+ has_action = TRUE
+ if(!has_action)
+ new /datum/action/item_action/openclose(jacket)//this actually works
+ jacket.adjust_flavour = "unbutton"
+ jacket.species_fit = null
+ jacket.sprite_sheets = null
+ user.update_inv_wear_suit()
+ qdel(src)
+
+/obj/item/device/fluff/desolate_baton_kit //DesolateG: Michael Smith
name = "stun baton converstion kit"
desc = "Some sci-fi looking parts for a stun baton."
icon = 'icons/obj/custom_items.dmi'
@@ -647,6 +679,43 @@
species_fit = null
sprite_sheets = null
+/obj/item/clothing/suit/jacket/miljacket/patch // sniper_fairy : P.A.T.C.H.
+ name = "custom purple military jacket"
+ desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. This one has a medical patch on it."
+ icon = 'icons/obj/custom_items.dmi'
+ icon_state = "shazjacket_purple_open"
+ ignore_suitadjust = 0
+ suit_adjusted = 1
+ actions_types = list(/datum/action/item_action/openclose)
+ adjust_flavour = "unbutton"
+
+/obj/item/clothing/suit/jacket/miljacket/patch/attack_self(mob/user)
+ var/list/options = list()
+ options["purple"] = "shazjacket_purple"
+ options["yellow"] = "shazjacket_yellow"
+ options["blue"] = "shazjacket_blue"
+ options["brown"] = "shazjacket_brown"
+ options["orange"] = "shazjacket_orange"
+ options["grey"] = "shazjacket_grey"
+ options["black"] ="shazjacket_black"
+ options["red"] ="shazjacket_red"
+ options["navy"] ="shazjacket_navy"
+ options["white"] ="shazjacket_white"
+
+ var/choice = input(user, "What color do you wish your jacket to be?", "Change color") as null|anything in options
+
+ if(choice && !user.stat && in_range(user, src))
+ if(suit_adjusted)
+ icon_state = "[options[choice]]_open"
+ else
+ icon_state = options[choice]
+ to_chat(user, "You turn your coat inside out and now it's [choice]!")
+ name = "custom [choice] military jacket"
+ user.update_inv_wear_suit()
+ return 1
+
+ . = ..()
+
/obj/item/clothing/suit/fluff/dusty_jacket //ComputerlessCitizen: Screech
name = "Dusty Jacket"
desc = "A worn leather jacket. Some burn holes have been patched."
@@ -730,6 +799,17 @@
/obj/item/clothing/head/hood/fluff/linda //Epic_Charger: Linda Clark
icon_state = "greenhood"
+/obj/item/clothing/suit/hooded/hoodie/hylo //Hylocereus: Sam Aria
+ name = "worn assymetrical hoodie"
+ desc = "A soft, cozy longline hoodie. It looks old and worn, but well cared for. There's no label, but a series of dates and names is penned on a scrap of fabric sewn on the inside of the left side of the chest - 'Sam Aria' is scrawled atop them all, next to the words 'Please Remember'."
+ icon = 'icons/obj/custom_items.dmi'
+ icon_state = "sam_hoodie"
+ hoodtype = /obj/item/clothing/head/hood/hylo
+
+/obj/item/clothing/head/hood/hylo
+ icon = 'icons/obj/custom_items.dmi'
+ icon_state = "sam_hood"
+
/obj/item/clothing/suit/hooded/fluff/bone //Doru7: Jack Bone
name = "skeleton suit"
desc = "A spooky full-body suit! This one doesn't glow in the dark."
diff --git a/code/modules/food_and_drinks/drinks/drinks/shotglass.dm b/code/modules/food_and_drinks/drinks/drinks/shotglass.dm
index 42781cd1e57..e44856951f0 100644
--- a/code/modules/food_and_drinks/drinks/drinks/shotglass.dm
+++ b/code/modules/food_and_drinks/drinks/drinks/shotglass.dm
@@ -1,3 +1,5 @@
+#define SHOT_FLAME_TEMPERATURE 700
+
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass
name = "shot glass"
desc = "No glasses were shot in the making of this glass."
@@ -5,10 +7,16 @@
amount_per_transfer_from_this = 15
volume = 15
materials = list(MAT_GLASS=100)
+ var/light_intensity = 2
+ light_color = LIGHT_COLOR_LIGHTBLUE
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/on_reagent_change()
- overlays.Cut()
+ if(!isShotFlammable() && burn_state == ON_FIRE)
+ extinguish()
+ update_icon()
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/update_icon()
+ overlays.Cut()
if(reagents.total_volume)
var/image/filling = image('icons/obj/reagentfillings.dmi', src, "[icon_state]1")
@@ -20,9 +28,77 @@
filling.icon_state = "[icon_state]5"
if(80 to INFINITY)
filling.icon_state = "[icon_state]12"
-
filling.icon += mix_color_from_reagents(reagents.reagent_list)
overlays += 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.
+ if(burn_state == ON_FIRE)
+ overlays += "shotglass_fire"
+ name = "flaming [name]"
else
name = "shot glass"
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/proc/clumsilyDrink(mob/living/carbon/human/user) //Clowns beware
+ if(burn_state != ON_FIRE)
+ return
+ user.visible_message("[user] pours [src] all over themself!", "You pour [src] all over yourself!", "You hear a 'whoompf' and a sizzle.")
+ extinguish(TRUE)
+ reagents.reaction(user, TOUCH)
+ reagents.clear_reagents()
+ user.IgniteMob()
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/proc/isShotFlammable()
+ var/datum/reagent/R = reagents.get_master_reagent()
+ if(istype(R, /datum/reagent/consumable/ethanol))
+ var/datum/reagent/consumable/ethanol/A = R
+ if(A.volume >= 5 && A.alcohol_perc >= 0.35) //Only an approximation to if something's flammable but it will do
+ return TRUE
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/fire_act(global_overlay = FALSE)
+ if(!isShotFlammable() || burn_state == ON_FIRE) //You can't light a shot that's not flammable!
+ return
+ ..()
+ set_light(light_intensity, null, light_color)
+ visible_message("[src] begins to burn with a blue hue!")
+ update_icon()
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/extinguish(silent = FALSE)
+ ..()
+ set_light(0)
+ if(!silent)
+ visible_message("The dancing flame on [src] dies out.")
+ update_icon()
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/burn() //Let's override fire deleting the reagents inside the shot
+ return
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/attack(mob/living/carbon/human/user)
+ if((CLUMSY in user.mutations) && prob(50) && burn_state == ON_FIRE)
+ clumsilyDrink(user)
+ else
+ ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/attackby(obj/item/W)
+ ..()
+ if(is_hot(W) >= 600)
+ fire_act()
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/attack_hand(mob/user, pickupfireoverride = TRUE)
+ ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/attack_self(mob/living/carbon/human/user)
+ ..()
+ if(burn_state != ON_FIRE)
+ return
+ if((CLUMSY in user.mutations) && prob(50))
+ clumsilyDrink(user)
+ else
+ user.visible_message("[user] places their hand over [src] to put it out!", "You use your hand to extinguish [src]!")
+ extinguish()
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/MouseDrop(mob/living/carbon/human/user)
+ if(!ishuman(user))
+ return
+ if((CLUMSY in user.mutations) && prob(50) && burn_state == ON_FIRE)
+ clumsilyDrink(user)
+ else
+ ..()
diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm
index d22d4eb2c93..394bce27908 100644
--- a/code/modules/food_and_drinks/food/snacks.dm
+++ b/code/modules/food_and_drinks/food/snacks.dm
@@ -1914,6 +1914,12 @@
icon_state = "watermelonslice"
filling_color = "#FF3867"
+/obj/item/weapon/reagent_containers/food/snacks/pineappleslice
+ name = "Pineapple Slices"
+ desc = "Rings of pineapple."
+ icon_state = "pineappleslice"
+ filling_color = "#e5b437"
+
/obj/item/weapon/reagent_containers/food/snacks/sliceable/applecake
name = "Apple Cake"
desc = "A cake centered with Apple."
@@ -2037,6 +2043,20 @@
icon_state = "vegetablepizzaslice"
filling_color = "#BAA14C"
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/hawaiianpizza
+ name = "Hawaiian Pizza"
+ desc = "Love it or hate it, this pizza divides opinions. Complete with juicy pineapple."
+ icon_state = "hawaiianpizza" //NEEDED
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/hawaiianpizzaslice
+ slices_num = 6
+ list_reagents = list("protein" = 15, "tomatojuice" = 6, "plantmatter" = 20, "pineapplejuice" = 6, "vitamin" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/hawaiianpizzaslice
+ name = "Hawaiian pizza slice"
+ desc = "A slice of polarising pizza."
+ icon_state = "hawaiianpizzaslice"
+ filling_color = "#e5b437"
+
/obj/item/pizzabox
name = "pizza box"
desc = "A box suited for pizzas."
@@ -2210,6 +2230,10 @@
pizza = new /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatpizza(src)
boxtag = "Meatlover's Supreme"
+/obj/item/pizzabox/hawaiian/New()
+ pizza = new /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/hawaiianpizza(src)
+ boxtag = "Hawaiian Feast"
+
////////////////////////////////FOOD ADDITIONS////////////////////////////////////////////
/obj/item/weapon/reagent_containers/food/snacks/wrap
diff --git a/code/modules/food_and_drinks/kitchen_machinery/juicer.dm b/code/modules/food_and_drinks/kitchen_machinery/juicer.dm
index edf714d0f21..e3a22e29b2b 100644
--- a/code/modules/food_and_drinks/kitchen_machinery/juicer.dm
+++ b/code/modules/food_and_drinks/kitchen_machinery/juicer.dm
@@ -27,6 +27,7 @@
/obj/item/weapon/reagent_containers/food/snacks/grown/berries = "berryjuice",
/obj/item/weapon/reagent_containers/food/snacks/grown/pumpkin = "pumpkinjuice",
/obj/item/weapon/reagent_containers/food/snacks/grown/blumpkin = "blumpkinjuice",
+ /obj/item/weapon/reagent_containers/food/snacks/grown/pineapple = "pineapplejuice"
)
/obj/machinery/juicer/New()
@@ -182,3 +183,4 @@
new/obj/item/weapon/reagent_containers/food/snacks/grown/berries(src)
new/obj/item/weapon/reagent_containers/food/snacks/grown/banana(src)
new/obj/item/weapon/reagent_containers/food/snacks/grown/grapes(src)
+ new/obj/item/weapon/reagent_containers/food/snacks/grown/pineapple(src)
diff --git a/code/modules/food_and_drinks/recipes/recipes_oven.dm b/code/modules/food_and_drinks/recipes/recipes_oven.dm
index 473641c4cc8..a1b684d9343 100644
--- a/code/modules/food_and_drinks/recipes/recipes_oven.dm
+++ b/code/modules/food_and_drinks/recipes/recipes_oven.dm
@@ -253,6 +253,17 @@
)
result = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/vegetablepizza
+/datum/recipe/oven/hawaiianpizza
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough,
+ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato,
+ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge,
+ /obj/item/weapon/reagent_containers/food/snacks/pineappleslice,
+ /obj/item/weapon/reagent_containers/food/snacks/pineappleslice,
+ /obj/item/weapon/reagent_containers/food/snacks/meat,
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/hawaiianpizza
+
/datum/recipe/oven/amanita_pie
items = list(
/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough,
diff --git a/code/modules/hydroponics/grown/pineapple.dm b/code/modules/hydroponics/grown/pineapple.dm
new file mode 100644
index 00000000000..ed8009ac079
--- /dev/null
+++ b/code/modules/hydroponics/grown/pineapple.dm
@@ -0,0 +1,27 @@
+/obj/item/seeds/pineapple
+ name = "pack of pineapple seeds"
+ desc = "These seeds grow into pineapple plants."
+ icon_state = "seed-pineapple" //NEEDED
+ species = "pineapple"
+ plantname = "Pineapple Plant"
+ product = /obj/item/weapon/reagent_containers/food/snacks/grown/pineapple
+ maturation = 6
+ lifespan = 55
+ endurance = 35
+ growthstages = 4
+ growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi'
+ icon_grow = "pineapple-grow" //NEEDED
+ icon_dead = "pineapple-dead" //NEEDED
+ genes = list(/datum/plant_gene/trait/repeated_harvest)
+ reagents_add = list("water" = 0.1, "vitamin" = 0.03, "sugar" = 0.02, "plantmatter" = 0.2)
+
+/obj/item/weapon/reagent_containers/food/snacks/grown/pineapple
+ seed = /obj/item/seeds/pineapple
+ name = "pineapple"
+ desc = "A soft sweet interior surrounded by a spiky skin."
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/pineappleslice
+ slices_num = 4
+ icon_state = "pineapple"
+ filling_color = "#e5b437"
+ w_class = WEIGHT_CLASS_NORMAL
+ bitesize_mod = 3
\ No newline at end of file
diff --git a/code/modules/mining/minebot.dm b/code/modules/mining/minebot.dm
index a1e7e775e23..fbf14349a53 100644
--- a/code/modules/mining/minebot.dm
+++ b/code/modules/mining/minebot.dm
@@ -61,6 +61,11 @@
SetCollectBehavior()
+/mob/living/simple_animal/hostile/mining_drone/emp_act(severity)
+ adjustHealth(100 / severity)
+ to_chat(src, "NOTICE: EMP detected, systems damaged!")
+ visible_message("[src] crackles and buzzes violently!")
+
/mob/living/simple_animal/hostile/mining_drone/sentience_act()
AIStatus = AI_OFF
check_friendly_fire = 0
diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm
index 7083b04ee35..3dc48f3df1a 100644
--- a/code/modules/mob/living/carbon/human/emote.dm
+++ b/code/modules/mob/living/carbon/human/emote.dm
@@ -324,8 +324,14 @@
G.affecting.forceMove(oldloc)
message = "[src] flips over [G.affecting]!"
else
- message = "[src] does a flip!"
- SpinAnimation(5,1)
+ if(prob(5))
+ message = "[src] attempts a flip and crashes to the floor!"
+ SpinAnimation(5,1)
+ sleep(3)
+ Weaken(2)
+ else
+ message = "[src] does a flip!"
+ SpinAnimation(5,1)
if("aflap", "aflaps")
if(!restrained())
diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm
index 4d5ea6b983d..e72b484e1e1 100644
--- a/code/modules/mob/living/silicon/robot/robot_modules.dm
+++ b/code/modules/mob/living/silicon/robot/robot_modules.dm
@@ -133,6 +133,7 @@
/obj/item/weapon/robot_module/medical/New()
..()
modules += new /obj/item/device/healthanalyzer/advanced(src)
+ modules += new /obj/item/device/robotanalyzer(src)
modules += new /obj/item/device/reagent_scanner/adv(src)
modules += new /obj/item/weapon/borg_defib(src)
modules += new /obj/item/roller_holder(src)
@@ -255,9 +256,7 @@
modules += new /obj/item/weapon/reagent_containers/food/condiment/enzyme(src)
modules += new /obj/item/weapon/pen(src)
modules += new /obj/item/weapon/razor(src)
- modules += new /obj/item/device/instrument/violin(src)
- modules += new /obj/item/device/instrument/guitar(src)
- modules += new /obj/item/device/instrument/eguitar(src)
+ modules += new /obj/item/device/instrument/piano_synth(src)
var/obj/item/weapon/rsf/M = new /obj/item/weapon/rsf(src)
M.matter = 30
diff --git a/code/modules/projectiles/ammunition/magazines.dm b/code/modules/projectiles/ammunition/magazines.dm
index e16ce690c45..2b736f8b1a4 100644
--- a/code/modules/projectiles/ammunition/magazines.dm
+++ b/code/modules/projectiles/ammunition/magazines.dm
@@ -420,6 +420,31 @@
/obj/item/ammo_box/magazine/toy/pistol/riot
ammo_type = /obj/item/ammo_casing/caseless/foam_dart/riot
+/obj/item/ammo_box/magazine/toy/enforcer
+ name = "Enforcer Foam magazine"
+ icon_state = "enforcer"
+ max_ammo = 8
+ multiple_sprites = 1
+ ammo_type = /obj/item/ammo_casing/caseless/foam_dart/riot
+
+/obj/item/ammo_box/magazine/toy/enforcer/update_icon()
+ ..()
+ overlays.Cut()
+
+ var/ammo = ammo_count()
+ if(ammo && is_riot())
+ overlays += image('icons/obj/ammo.dmi', icon_state = "enforcer-rd")
+ else if(ammo)
+ overlays += image('icons/obj/ammo.dmi', icon_state = "enforcer-bd")
+
+/obj/item/ammo_box/magazine/toy/enforcer/proc/is_riot()//if the topmost bullet is a riot dart
+ var/ammo = ammo_count()
+ if(!ammo)
+ return 0
+ if(istype(contents[contents.len], /obj/item/ammo_casing/caseless/foam_dart/riot))
+ return 1
+ return 0
+
/obj/item/ammo_box/magazine/toy/smgm45
name = "donksoft SMG magazine"
ammo_type = /obj/item/ammo_casing/caseless/foam_dart/riot
diff --git a/code/modules/projectiles/guns/projectile/pistol.dm b/code/modules/projectiles/guns/projectile/pistol.dm
index 3876e067f70..58fd2c0eba8 100644
--- a/code/modules/projectiles/guns/projectile/pistol.dm
+++ b/code/modules/projectiles/guns/projectile/pistol.dm
@@ -32,6 +32,46 @@
magazine = new /obj/item/ammo_box/magazine/m10mm/empty(src)
..()
+/obj/item/weapon/gun/projectile/automatic/pistol/enforcer
+ name = "Enforcer .45"
+ desc = "A pistol of modern design."
+ icon_state = "enforcer_grey"
+ force = 10
+ mag_type = /obj/item/ammo_box/magazine/m45/enforcer45
+ can_suppress = TRUE
+ unique_reskin = TRUE
+ can_flashlight = TRUE
+
+/obj/item/weapon/gun/projectile/automatic/pistol/enforcer/update_icon()
+ ..()
+ if(current_skin)
+ icon_state = "[current_skin][chambered ? "" : "-e"]"
+ else
+ icon_state = "[initial(icon_state)][chambered ? "" : "-e"]"
+ overlays.Cut()
+ if(suppressed)
+ overlays += image(icon = icon, icon_state = "enforcer_supp", pixel_x = 4)
+ if(gun_light)
+ var/iconF = "Enforcer_light"
+ if(gun_light.on)
+ iconF = "Enforcer_light-on"
+ overlays += image(icon = icon, icon_state = iconF, pixel_x = 0)
+
+/obj/item/weapon/gun/projectile/automatic/pistol/enforcer/ui_action_click()
+ toggle_gunlight()
+
+/obj/item/weapon/gun/projectile/automatic/pistol/enforcer/New()
+ ..()
+ options["Grey slide"] = "enforcer_grey"
+ options["Red slide"] = "enforcer_red"
+ options["Green slide"] = "enforcer_green"
+ options["Tan slide"] = "enforcer_tan"
+ options["Black slide"] = "enforcer_black"
+ options["Green Handle"] = "enforcer_greengrip"
+ options["Tan Handle"] = "enforcer_tangrip"
+ options["Red Handle"] = "enforcer_redgrip"
+ options["Cancel"] = null
+
/obj/item/weapon/gun/projectile/automatic/pistol/deagle
name = "desert eagle"
desc = "A robust .50 AE handgun."
@@ -40,14 +80,6 @@
mag_type = /obj/item/ammo_box/magazine/m50
can_suppress = 0
-/obj/item/weapon/gun/projectile/automatic/pistol/enforcer45
- name = "Enforcer .45"
- desc = "A pistol of modern design."
- icon_state = "enforcer"
- force = 10
- mag_type = /obj/item/ammo_box/magazine/m45/enforcer45
- can_suppress = 0
-
/obj/item/weapon/gun/projectile/automatic/pistol/deagle/update_icon()
..()
icon_state = "[initial(icon_state)][magazine ? "" : "-e"]"
diff --git a/code/modules/projectiles/guns/projectile/toy.dm b/code/modules/projectiles/guns/projectile/toy.dm
index 8a191f06b97..893844678ee 100644
--- a/code/modules/projectiles/guns/projectile/toy.dm
+++ b/code/modules/projectiles/guns/projectile/toy.dm
@@ -41,6 +41,25 @@
magazine = new /obj/item/ammo_box/magazine/toy/pistol/riot(src)
..()
+/obj/item/weapon/gun/projectile/automatic/toy/pistol/enforcer
+ name = "Enforcer trainer"
+ desc = "A foam version of the Enforcer meant to be used for training new caddets who can't be trusted with rubber bullets."
+ icon_state = "enforcer"
+ mag_type = /obj/item/ammo_box/magazine/toy/enforcer
+ can_flashlight = TRUE
+
+/obj/item/weapon/gun/projectile/automatic/toy/pistol/enforcer/update_icon()
+ ..()
+ overlays.Cut()
+ if(gun_light)
+ var/iconF = "Enforcer_light"
+ if(gun_light.on)
+ iconF = "Enforcer_light-on"
+ overlays += image(icon = 'icons/obj/guns/projectile.dmi', icon_state = iconF, pixel_x = 0)
+
+/obj/item/weapon/gun/projectile/automatic/toy/pistol/enforcer/ui_action_click()
+ toggle_gunlight()
+
/obj/item/weapon/gun/projectile/shotgun/toy
name = "foam force shotgun"
desc = "A toy shotgun with wood furniture and a four-shell capacity underneath. Ages 8 and up."
diff --git a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm
index 839ce9c0a8d..c83a626486a 100644
--- a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm
+++ b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm
@@ -75,6 +75,7 @@
/obj/item/weapon/reagent_containers/food/snacks/grown/apple = list("applejuice" = 0),
/obj/item/weapon/reagent_containers/food/snacks/grown/grapes = list("grapejuice" = 0),
/obj/item/weapon/reagent_containers/food/snacks/grown/grapes/green = list("grapejuice" = 0),
+ /obj/item/weapon/reagent_containers/food/snacks/grown/pineapple = list("pineapplejuice" = 0)
)
var/list/dried_items = list(
diff --git a/code/modules/reagents/chemistry/reagents/alcohol.dm b/code/modules/reagents/chemistry/reagents/alcohol.dm
index 2ba73d2a127..63c8275afea 100644
--- a/code/modules/reagents/chemistry/reagents/alcohol.dm
+++ b/code/modules/reagents/chemistry/reagents/alcohol.dm
@@ -424,6 +424,18 @@
drink_desc = "Does... does this mean that Arthur and Ford are on the station? Oh joy."
taste_message = "the number fourty two"
+/datum/reagent/consumable/ethanol/flaming_homer
+ name = "Flaming Moe"
+ id = "flamingmoe"
+ description = "This appears to be a mixture of various alcohols blended with prescription medicine. It is lightly toasted..."
+ reagent_state = LIQUID
+ color = "#58447f" //rgb: 88, 66, 127
+ alcohol_perc = 0.5
+ drink_icon = "flamingmoeglass"
+ drink_name = "Flaming Moe"
+ drink_desc = "Happiness is just a Flaming Moe away!"
+ taste_message = "caramelised booze and sweet, salty medicine"
+
/datum/reagent/consumable/ethanol/brave_bull
name = "Brave Bull"
id = "bravebull"
diff --git a/code/modules/reagents/chemistry/reagents/drinks.dm b/code/modules/reagents/chemistry/reagents/drinks.dm
index 9a524aa377a..cf73e0a5087 100644
--- a/code/modules/reagents/chemistry/reagents/drinks.dm
+++ b/code/modules/reagents/chemistry/reagents/drinks.dm
@@ -23,6 +23,16 @@
drink_desc = "Are you sure this is tomato juice?"
taste_message = "tomato juice"
+/datum/reagent/consumable/drink/pineapplejuice
+ name = "Pineapple Juice"
+ id = "pineapplejuice"
+ description = "Pineapples juiced into a liquid. Sweet and sugary."
+ color = "#e5b437"
+ drink_icon = "glass_orange"
+ drink_name = "Glass of pineapple juice"
+ drink_desc = "A bright drink, sweet and sugary."
+ taste_message = "pineapple juice"
+
/datum/reagent/consumable/drink/tomatojuice/on_mob_life(mob/living/M)
if(M.getFireLoss() && prob(20))
M.adjustFireLoss(-1)
diff --git a/code/modules/reagents/chemistry/recipes/drinks.dm b/code/modules/reagents/chemistry/recipes/drinks.dm
index b8d31e55e1c..c348db060ff 100644
--- a/code/modules/reagents/chemistry/recipes/drinks.dm
+++ b/code/modules/reagents/chemistry/recipes/drinks.dm
@@ -224,6 +224,16 @@
result_amount = 5
mix_sound = 'sound/goonstation/misc/drinkfizz.ogg'
+/datum/chemical_reaction/flaming_homer
+ name = "Flaming Moe"
+ id = "flamingmoe"
+ result = "flamingmoe"
+ required_reagents = list("vodka" = 1, "gin" = 1, "cognac" = 1, "tequila" = 1, "salglu_solution" = 1) //Close enough
+ min_temp = 374 //Fire makes it good!
+ result_amount = 5
+ mix_sound = 'sound/goonstation/misc/drinkfizz.ogg'
+ mix_message = "The concoction bursts into flame!"
+
/datum/chemical_reaction/brave_bull
name = "Brave Bull"
id = "bravebull"
diff --git a/code/modules/reagents/chemistry/recipes/food.dm b/code/modules/reagents/chemistry/recipes/food.dm
index 02453d44e31..44047f70049 100644
--- a/code/modules/reagents/chemistry/recipes/food.dm
+++ b/code/modules/reagents/chemistry/recipes/food.dm
@@ -197,4 +197,24 @@
required_reagents = list("beff" = 1, "saltpetre" = 1, "synthflesh" = 1)
result_amount = 2
mix_message = "The beff and the synthflesh combine to form a smoky red log."
- mix_sound = 'sound/effects/blobattack.ogg'
\ No newline at end of file
+ mix_sound = 'sound/effects/blobattack.ogg'
+
+/datum/chemical_reaction/enzyme
+ name = "Universal enzyme"
+ id = "enzyme"
+ result = "enzyme"
+ required_reagents = list("vomit" = 1, "sugar" = 1)
+ result_amount = 2
+ min_temp = 750
+ mix_message = "The mixture emits a horrible smell as you heat up the contents. Luckily, enzymes don't stink."
+ mix_sound = 'sound/goonstation/misc/fuse.ogg'
+
+/datum/chemical_reaction/enzyme
+ name = "Universal enzyme"
+ id = "enzyme"
+ result = "enzyme"
+ required_reagents = list("green_vomit" = 1, "sugar" = 1)
+ result_amount = 2
+ min_temp = 750
+ mix_message = "The mixture emits a horrible smell as you heat up the contents. Luckily, enzymes don't stink."
+ mix_sound = 'sound/goonstation/misc/fuse.ogg'
diff --git a/code/modules/store/items.dm b/code/modules/store/items.dm
index c80d3c33a94..11b4f169253 100644
--- a/code/modules/store/items.dm
+++ b/code/modules/store/items.dm
@@ -93,6 +93,12 @@
typepath = /obj/item/toy/katana
cost = 500
+/datum/storeitem/piano_synth
+ name = "piano synthesizer"
+ desc = "An advanced electronic synthesizer that can be used as various instruments."
+ typepath = /obj/item/device/instrument/piano_synth
+ cost = 1000
+
/datum/storeitem/violin
name = "space violin"
desc = "A wooden musical instrument with four strings and a bow. \"The devil went down to space, he was looking for an assistant to grief.\""
diff --git a/code/modules/surgery/organs/organ_external.dm b/code/modules/surgery/organs/organ_external.dm
index f5b96ca6bd0..cae6a3b1a8b 100644
--- a/code/modules/surgery/organs/organ_external.dm
+++ b/code/modules/surgery/organs/organ_external.dm
@@ -426,6 +426,8 @@ Note that amputating the affected organ does in fact remove the infection from t
fracture()
/obj/item/organ/external/proc/check_for_internal_bleeding(damage)
+ if(NO_BLOOD in owner.species.species_traits)
+ return
var/local_damage = brute_dam + damage
if(damage > 15 && local_damage > 30 && prob(damage) && !(status & ORGAN_ROBOT))
internal_bleeding = TRUE
diff --git a/html/changelog.html b/html/changelog.html
index d3426edeebe..23cbe4c449e 100644
--- a/html/changelog.html
+++ b/html/changelog.html
@@ -56,6 +56,68 @@
-->
+
02 September 2017
+
Landerlow updated:
+
+ - Adds a recipe to create enzymes to cook with.
+
+
+
01 September 2017
+
Birdtalon updated:
+
+ - Fixed small bug with wall lockers not respecting distance.
+
+
+
28 August 2017
+
Birdtalon updated:
+
+ - Replaces civilian door remote in the Head of Personnel locker with a brand new remote with additional access to better suit the Head of Personnel's responsibilities.
+ - Nanotrasen Mining Bots are no longer safe from EMPs.
+ - Syndicate bee-case sound now only plays locally when opened.
+ - You can open wall lockers with control click.
+
+
Birdtalon & Hylocereus updated:
+
+ - Adds pineapples which can be grown in hydroponics, juiced or sliced and made into hawaiian pizza.
+ - Adds hawaiian pizza to the pizza crate.
+
+
Fethas updated:
+
+ - The cultist dagger has had its special removed, it still cuases small bleed and retains its embed chance.
+ - Prayers now dsiplay the diety set by chaplains (if any) to admins in prayers, or eldergod if a cultist. Prayers are purple for normies, Red for cultist and blue for chaplains
+
+
Fox McCloud updated:
+
+ - IPCs can now be dissected by adbudctors
+
+
Fox Mccloud updated:
+
+ - Adds an accordian, glockenspiel, harmonica, recorder, saxaphone, trombone, xylophone, bikehorn, and piano synthesizer
+ - pick up a big band supply pack of instruments at cargo for 50 supply points
+
+
Jovaniph updated:
+
+ - Holodeck Energy Swords sound was change to simulate being attacked by a real energy sword.
+
+
Landerlow updated:
+
+ - Adds six additional roundstart disabilities to choose from
+
+
matt81093 updated:
+
+ - robot analyzer to medical module cyborgs for IPC diagnosing
+
+
+
24 August 2017
+
Birdtalon updated:
+
+ - Cultist structures can now be destroyed using melee and or projectiles
+
+
Fox McCloud updated:
+
+ - Fixes Diona, Plasmamen, and other races having internal bleeding
+
+
16 August 2017
Citinited updated:
diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml
index 4c39b8add7c..8c0cc26efca 100644
--- a/html/changelogs/.all_changelog.yml
+++ b/html/changelogs/.all_changelog.yml
@@ -5415,3 +5415,44 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py.
Kyep:
- rscadd: Admins now have a 'List SSDs' verb to list SSD players, and the ability
to move them to cryo.
+2017-08-24:
+ Birdtalon:
+ - rscadd: Cultist structures can now be destroyed using melee and or projectiles
+ Fox McCloud:
+ - bugfix: Fixes Diona, Plasmamen, and other races having internal bleeding
+2017-08-28:
+ Birdtalon:
+ - tweak: Replaces civilian door remote in the Head of Personnel locker with a brand
+ new remote with additional access to better suit the Head of Personnel's responsibilities.
+ - tweak: Nanotrasen Mining Bots are no longer safe from EMPs.
+ - tweak: Syndicate bee-case sound now only plays locally when opened.
+ - rscadd: You can open wall lockers with control click.
+ Birdtalon & Hylocereus:
+ - rscadd: Adds pineapples which can be grown in hydroponics, juiced or sliced and
+ made into hawaiian pizza.
+ - tweak: Adds hawaiian pizza to the pizza crate.
+ Fethas:
+ - tweak: The cultist dagger has had its special removed, it still cuases small bleed
+ and retains its embed chance.
+ - tweak: Prayers now dsiplay the diety set by chaplains (if any) to admins in prayers,
+ or eldergod if a cultist. Prayers are purple for normies, Red for cultist and
+ blue for chaplains
+ Fox McCloud:
+ - rscadd: IPCs can now be dissected by adbudctors
+ Fox Mccloud:
+ - rscadd: Adds an accordian, glockenspiel, harmonica, recorder, saxaphone, trombone,
+ xylophone, bikehorn, and piano synthesizer
+ - rscadd: pick up a big band supply pack of instruments at cargo for 50 supply points
+ Jovaniph:
+ - tweak: Holodeck Energy Swords sound was change to simulate being attacked by a
+ real energy sword.
+ Landerlow:
+ - rscadd: Adds six additional roundstart disabilities to choose from
+ matt81093:
+ - rscadd: robot analyzer to medical module cyborgs for IPC diagnosing
+2017-09-01:
+ Birdtalon:
+ - bugfix: Fixed small bug with wall lockers not respecting distance.
+2017-09-02:
+ Landerlow:
+ - rscadd: Adds a recipe to create enzymes to cook with.
diff --git a/html/changelogs/AutoChangeLog-pr-7856.yml b/html/changelogs/AutoChangeLog-pr-7856.yml
new file mode 100644
index 00000000000..0691d5c1e97
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-7856.yml
@@ -0,0 +1,10 @@
+author: "Citinited"
+delete-after: True
+changes:
+ - bugfix: "You can now deconstruct the indestructible stool in the old bar's back room."
+ - bugfix: "Security and bar maintenance airlocks are now decoupled."
+ - tweak: "The air vent at the fore of AI satellite now starts turned on."
+ - tweak: "Engineering equipment now only has one air vent, not three."
+ - bugfix: "Added a missing bit of plating underneath the engineering shuttle's window."
+ - bugfix: "Added a missing scrubbers pipe in Central Primary."
+ - tweak: "The camera and light fixture in the prisoner transfer centre are now wall-mounted instead of being attached to the blast doors."
diff --git a/html/changelogs/AutoChangeLog-pr-7909.yml b/html/changelogs/AutoChangeLog-pr-7909.yml
new file mode 100644
index 00000000000..5c224b4cdc8
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-7909.yml
@@ -0,0 +1,5 @@
+author: "Citinited"
+delete-after: True
+changes:
+ - rscadd: "Adds the Flaming Moe cocktail."
+ - rscadd: "Shot glasses can now be set alight using something hot."
diff --git a/html/changelogs/AutoChangeLog-pr-8001.yml b/html/changelogs/AutoChangeLog-pr-8001.yml
new file mode 100644
index 00000000000..9ef827d608f
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-8001.yml
@@ -0,0 +1,4 @@
+author: "Birdtalon"
+delete-after: True
+changes:
+ - tweak: "Flip emote has a small chance of a failure and 100% chance of embarrassing yourself."
diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi
index e2971a7c39c..f78b0cdd72e 100644
Binary files a/icons/mob/head.dmi and b/icons/mob/head.dmi differ
diff --git a/icons/mob/inhands/equipment/instruments_lefthand.dmi b/icons/mob/inhands/equipment/instruments_lefthand.dmi
new file mode 100644
index 00000000000..197cd61c6c4
Binary files /dev/null and b/icons/mob/inhands/equipment/instruments_lefthand.dmi differ
diff --git a/icons/mob/inhands/equipment/instruments_righthand.dmi b/icons/mob/inhands/equipment/instruments_righthand.dmi
new file mode 100644
index 00000000000..bcda1b18b7f
Binary files /dev/null and b/icons/mob/inhands/equipment/instruments_righthand.dmi differ
diff --git a/icons/mob/inhands/items_lefthand.dmi b/icons/mob/inhands/items_lefthand.dmi
index d525b6dc4b8..c398a552667 100644
Binary files a/icons/mob/inhands/items_lefthand.dmi and b/icons/mob/inhands/items_lefthand.dmi differ
diff --git a/icons/mob/inhands/items_righthand.dmi b/icons/mob/inhands/items_righthand.dmi
index e6e8230f25e..21e2e6c881b 100644
Binary files a/icons/mob/inhands/items_righthand.dmi and b/icons/mob/inhands/items_righthand.dmi differ
diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi
index 89e3eb94136..dea74b81df1 100644
Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ
diff --git a/icons/obj/ammo.dmi b/icons/obj/ammo.dmi
index 57807bee181..2561b88e6be 100644
Binary files a/icons/obj/ammo.dmi and b/icons/obj/ammo.dmi differ
diff --git a/icons/obj/drinks.dmi b/icons/obj/drinks.dmi
index 4008e17b3cf..8c75c1bc317 100644
Binary files a/icons/obj/drinks.dmi and b/icons/obj/drinks.dmi differ
diff --git a/icons/obj/food/food.dmi b/icons/obj/food/food.dmi
index 2fe44fcddd1..3395b112947 100644
Binary files a/icons/obj/food/food.dmi and b/icons/obj/food/food.dmi differ
diff --git a/icons/obj/guns/projectile.dmi b/icons/obj/guns/projectile.dmi
index fdc23ad6da8..2f50b165b1a 100644
Binary files a/icons/obj/guns/projectile.dmi and b/icons/obj/guns/projectile.dmi differ
diff --git a/icons/obj/guns/toy.dmi b/icons/obj/guns/toy.dmi
index c832bb3670a..a0f2a539c54 100644
Binary files a/icons/obj/guns/toy.dmi and b/icons/obj/guns/toy.dmi differ
diff --git a/icons/obj/hydroponics/growing_fruits.dmi b/icons/obj/hydroponics/growing_fruits.dmi
index ac8adc5a069..8259c77f570 100644
Binary files a/icons/obj/hydroponics/growing_fruits.dmi and b/icons/obj/hydroponics/growing_fruits.dmi differ
diff --git a/icons/obj/hydroponics/harvest.dmi b/icons/obj/hydroponics/harvest.dmi
index bd596597624..53033eb8f48 100644
Binary files a/icons/obj/hydroponics/harvest.dmi and b/icons/obj/hydroponics/harvest.dmi differ
diff --git a/icons/obj/hydroponics/seeds.dmi b/icons/obj/hydroponics/seeds.dmi
index a84ed3dd730..a2415a71a8a 100644
Binary files a/icons/obj/hydroponics/seeds.dmi and b/icons/obj/hydroponics/seeds.dmi differ
diff --git a/icons/obj/musician.dmi b/icons/obj/musician.dmi
index c57114abf63..21078c58969 100644
Binary files a/icons/obj/musician.dmi and b/icons/obj/musician.dmi differ
diff --git a/paradise.dme b/paradise.dme
index 7922492f099..dd05488bf3c 100644
--- a/paradise.dme
+++ b/paradise.dme
@@ -1402,6 +1402,7 @@
#include "code\modules\hydroponics\grown\nymph.dm"
#include "code\modules\hydroponics\grown\onion.dm"
#include "code\modules\hydroponics\grown\peanut.dm"
+#include "code\modules\hydroponics\grown\pineapple.dm"
#include "code\modules\hydroponics\grown\potato.dm"
#include "code\modules\hydroponics\grown\pumpkin.dm"
#include "code\modules\hydroponics\grown\random.dm"
diff --git a/sound/instruments/accordion/Ab2.mid b/sound/instruments/accordion/Ab2.mid
new file mode 100644
index 00000000000..0be99493a6c
Binary files /dev/null and b/sound/instruments/accordion/Ab2.mid differ
diff --git a/sound/instruments/accordion/Ab3.mid b/sound/instruments/accordion/Ab3.mid
new file mode 100644
index 00000000000..df3fbb658b2
Binary files /dev/null and b/sound/instruments/accordion/Ab3.mid differ
diff --git a/sound/instruments/accordion/Ab4.mid b/sound/instruments/accordion/Ab4.mid
new file mode 100644
index 00000000000..81cc7dd887c
Binary files /dev/null and b/sound/instruments/accordion/Ab4.mid differ
diff --git a/sound/instruments/accordion/Ab5.mid b/sound/instruments/accordion/Ab5.mid
new file mode 100644
index 00000000000..8a6f9b63a4c
Binary files /dev/null and b/sound/instruments/accordion/Ab5.mid differ
diff --git a/sound/instruments/accordion/Ab6.mid b/sound/instruments/accordion/Ab6.mid
new file mode 100644
index 00000000000..c636071299e
Binary files /dev/null and b/sound/instruments/accordion/Ab6.mid differ
diff --git a/sound/instruments/accordion/An2.mid b/sound/instruments/accordion/An2.mid
new file mode 100644
index 00000000000..fcae8a3be76
Binary files /dev/null and b/sound/instruments/accordion/An2.mid differ
diff --git a/sound/instruments/accordion/An3.mid b/sound/instruments/accordion/An3.mid
new file mode 100644
index 00000000000..0eaea1a1fd7
Binary files /dev/null and b/sound/instruments/accordion/An3.mid differ
diff --git a/sound/instruments/accordion/An4.mid b/sound/instruments/accordion/An4.mid
new file mode 100644
index 00000000000..2ae28df7a3a
Binary files /dev/null and b/sound/instruments/accordion/An4.mid differ
diff --git a/sound/instruments/accordion/An5.mid b/sound/instruments/accordion/An5.mid
new file mode 100644
index 00000000000..c955b7f2d93
Binary files /dev/null and b/sound/instruments/accordion/An5.mid differ
diff --git a/sound/instruments/accordion/An6.mid b/sound/instruments/accordion/An6.mid
new file mode 100644
index 00000000000..76c44f3bb37
Binary files /dev/null and b/sound/instruments/accordion/An6.mid differ
diff --git a/sound/instruments/accordion/Bb2.mid b/sound/instruments/accordion/Bb2.mid
new file mode 100644
index 00000000000..8af7ec2a6c5
Binary files /dev/null and b/sound/instruments/accordion/Bb2.mid differ
diff --git a/sound/instruments/accordion/Bb3.mid b/sound/instruments/accordion/Bb3.mid
new file mode 100644
index 00000000000..2fdaae5d9de
Binary files /dev/null and b/sound/instruments/accordion/Bb3.mid differ
diff --git a/sound/instruments/accordion/Bb4.mid b/sound/instruments/accordion/Bb4.mid
new file mode 100644
index 00000000000..b360ccbc9b7
Binary files /dev/null and b/sound/instruments/accordion/Bb4.mid differ
diff --git a/sound/instruments/accordion/Bb5.mid b/sound/instruments/accordion/Bb5.mid
new file mode 100644
index 00000000000..d1ed0340d5f
Binary files /dev/null and b/sound/instruments/accordion/Bb5.mid differ
diff --git a/sound/instruments/accordion/Bb6.mid b/sound/instruments/accordion/Bb6.mid
new file mode 100644
index 00000000000..45973b3eef2
Binary files /dev/null and b/sound/instruments/accordion/Bb6.mid differ
diff --git a/sound/instruments/accordion/Bn2.mid b/sound/instruments/accordion/Bn2.mid
new file mode 100644
index 00000000000..b2dec87c97a
Binary files /dev/null and b/sound/instruments/accordion/Bn2.mid differ
diff --git a/sound/instruments/accordion/Bn3.mid b/sound/instruments/accordion/Bn3.mid
new file mode 100644
index 00000000000..19aa78aded9
Binary files /dev/null and b/sound/instruments/accordion/Bn3.mid differ
diff --git a/sound/instruments/accordion/Bn4.mid b/sound/instruments/accordion/Bn4.mid
new file mode 100644
index 00000000000..1caba6169c5
Binary files /dev/null and b/sound/instruments/accordion/Bn4.mid differ
diff --git a/sound/instruments/accordion/Bn5.mid b/sound/instruments/accordion/Bn5.mid
new file mode 100644
index 00000000000..4a41cbbd746
Binary files /dev/null and b/sound/instruments/accordion/Bn5.mid differ
diff --git a/sound/instruments/accordion/Bn6.mid b/sound/instruments/accordion/Bn6.mid
new file mode 100644
index 00000000000..7d267c4b5ab
Binary files /dev/null and b/sound/instruments/accordion/Bn6.mid differ
diff --git a/sound/instruments/accordion/Cn2.mid b/sound/instruments/accordion/Cn2.mid
new file mode 100644
index 00000000000..dfc8a56b9b0
Binary files /dev/null and b/sound/instruments/accordion/Cn2.mid differ
diff --git a/sound/instruments/accordion/Cn3.mid b/sound/instruments/accordion/Cn3.mid
new file mode 100644
index 00000000000..494b4114e2f
Binary files /dev/null and b/sound/instruments/accordion/Cn3.mid differ
diff --git a/sound/instruments/accordion/Cn4.mid b/sound/instruments/accordion/Cn4.mid
new file mode 100644
index 00000000000..2ac47a442dc
Binary files /dev/null and b/sound/instruments/accordion/Cn4.mid differ
diff --git a/sound/instruments/accordion/Cn5.mid b/sound/instruments/accordion/Cn5.mid
new file mode 100644
index 00000000000..636502e6295
Binary files /dev/null and b/sound/instruments/accordion/Cn5.mid differ
diff --git a/sound/instruments/accordion/Cn6.mid b/sound/instruments/accordion/Cn6.mid
new file mode 100644
index 00000000000..57a674e7beb
Binary files /dev/null and b/sound/instruments/accordion/Cn6.mid differ
diff --git a/sound/instruments/accordion/Db2.mid b/sound/instruments/accordion/Db2.mid
new file mode 100644
index 00000000000..602e4523eea
Binary files /dev/null and b/sound/instruments/accordion/Db2.mid differ
diff --git a/sound/instruments/accordion/Db3.mid b/sound/instruments/accordion/Db3.mid
new file mode 100644
index 00000000000..4c32f61c8d0
Binary files /dev/null and b/sound/instruments/accordion/Db3.mid differ
diff --git a/sound/instruments/accordion/Db4.mid b/sound/instruments/accordion/Db4.mid
new file mode 100644
index 00000000000..99439056170
Binary files /dev/null and b/sound/instruments/accordion/Db4.mid differ
diff --git a/sound/instruments/accordion/Db5.mid b/sound/instruments/accordion/Db5.mid
new file mode 100644
index 00000000000..b4db898b292
Binary files /dev/null and b/sound/instruments/accordion/Db5.mid differ
diff --git a/sound/instruments/accordion/Db6.mid b/sound/instruments/accordion/Db6.mid
new file mode 100644
index 00000000000..b0cb648759c
Binary files /dev/null and b/sound/instruments/accordion/Db6.mid differ
diff --git a/sound/instruments/accordion/Dn2.mid b/sound/instruments/accordion/Dn2.mid
new file mode 100644
index 00000000000..a6c30398b12
Binary files /dev/null and b/sound/instruments/accordion/Dn2.mid differ
diff --git a/sound/instruments/accordion/Dn3.mid b/sound/instruments/accordion/Dn3.mid
new file mode 100644
index 00000000000..b64354f8109
Binary files /dev/null and b/sound/instruments/accordion/Dn3.mid differ
diff --git a/sound/instruments/accordion/Dn4.mid b/sound/instruments/accordion/Dn4.mid
new file mode 100644
index 00000000000..670b2ec4d35
Binary files /dev/null and b/sound/instruments/accordion/Dn4.mid differ
diff --git a/sound/instruments/accordion/Dn5.mid b/sound/instruments/accordion/Dn5.mid
new file mode 100644
index 00000000000..aea9116fb80
Binary files /dev/null and b/sound/instruments/accordion/Dn5.mid differ
diff --git a/sound/instruments/accordion/Dn6.mid b/sound/instruments/accordion/Dn6.mid
new file mode 100644
index 00000000000..84c9e9359ca
Binary files /dev/null and b/sound/instruments/accordion/Dn6.mid differ
diff --git a/sound/instruments/accordion/Eb2.mid b/sound/instruments/accordion/Eb2.mid
new file mode 100644
index 00000000000..9d274b6baf4
Binary files /dev/null and b/sound/instruments/accordion/Eb2.mid differ
diff --git a/sound/instruments/accordion/Eb3.mid b/sound/instruments/accordion/Eb3.mid
new file mode 100644
index 00000000000..9a32aee1238
Binary files /dev/null and b/sound/instruments/accordion/Eb3.mid differ
diff --git a/sound/instruments/accordion/Eb4.mid b/sound/instruments/accordion/Eb4.mid
new file mode 100644
index 00000000000..257ed5e9048
Binary files /dev/null and b/sound/instruments/accordion/Eb4.mid differ
diff --git a/sound/instruments/accordion/Eb5.mid b/sound/instruments/accordion/Eb5.mid
new file mode 100644
index 00000000000..de3edcd18cc
Binary files /dev/null and b/sound/instruments/accordion/Eb5.mid differ
diff --git a/sound/instruments/accordion/Eb6.mid b/sound/instruments/accordion/Eb6.mid
new file mode 100644
index 00000000000..a43a976ffc8
Binary files /dev/null and b/sound/instruments/accordion/Eb6.mid differ
diff --git a/sound/instruments/accordion/En2.mid b/sound/instruments/accordion/En2.mid
new file mode 100644
index 00000000000..1ebe0e081d8
Binary files /dev/null and b/sound/instruments/accordion/En2.mid differ
diff --git a/sound/instruments/accordion/En3.mid b/sound/instruments/accordion/En3.mid
new file mode 100644
index 00000000000..b24ef90118f
Binary files /dev/null and b/sound/instruments/accordion/En3.mid differ
diff --git a/sound/instruments/accordion/En4.mid b/sound/instruments/accordion/En4.mid
new file mode 100644
index 00000000000..df0b16b1968
Binary files /dev/null and b/sound/instruments/accordion/En4.mid differ
diff --git a/sound/instruments/accordion/En5.mid b/sound/instruments/accordion/En5.mid
new file mode 100644
index 00000000000..760c5e1f514
Binary files /dev/null and b/sound/instruments/accordion/En5.mid differ
diff --git a/sound/instruments/accordion/En6.mid b/sound/instruments/accordion/En6.mid
new file mode 100644
index 00000000000..92639712044
Binary files /dev/null and b/sound/instruments/accordion/En6.mid differ
diff --git a/sound/instruments/accordion/Fn2.mid b/sound/instruments/accordion/Fn2.mid
new file mode 100644
index 00000000000..31eb932cb7d
Binary files /dev/null and b/sound/instruments/accordion/Fn2.mid differ
diff --git a/sound/instruments/accordion/Fn3.mid b/sound/instruments/accordion/Fn3.mid
new file mode 100644
index 00000000000..c1c2a4a197d
Binary files /dev/null and b/sound/instruments/accordion/Fn3.mid differ
diff --git a/sound/instruments/accordion/Fn4.mid b/sound/instruments/accordion/Fn4.mid
new file mode 100644
index 00000000000..701c5ea46c5
Binary files /dev/null and b/sound/instruments/accordion/Fn4.mid differ
diff --git a/sound/instruments/accordion/Fn5.mid b/sound/instruments/accordion/Fn5.mid
new file mode 100644
index 00000000000..49d44d3de84
Binary files /dev/null and b/sound/instruments/accordion/Fn5.mid differ
diff --git a/sound/instruments/accordion/Fn6.mid b/sound/instruments/accordion/Fn6.mid
new file mode 100644
index 00000000000..acb192950bd
Binary files /dev/null and b/sound/instruments/accordion/Fn6.mid differ
diff --git a/sound/instruments/accordion/Gb2.mid b/sound/instruments/accordion/Gb2.mid
new file mode 100644
index 00000000000..4625e867af0
Binary files /dev/null and b/sound/instruments/accordion/Gb2.mid differ
diff --git a/sound/instruments/accordion/Gb3.mid b/sound/instruments/accordion/Gb3.mid
new file mode 100644
index 00000000000..3ce6d7ba923
Binary files /dev/null and b/sound/instruments/accordion/Gb3.mid differ
diff --git a/sound/instruments/accordion/Gb4.mid b/sound/instruments/accordion/Gb4.mid
new file mode 100644
index 00000000000..1106ebf9039
Binary files /dev/null and b/sound/instruments/accordion/Gb4.mid differ
diff --git a/sound/instruments/accordion/Gb5.mid b/sound/instruments/accordion/Gb5.mid
new file mode 100644
index 00000000000..9ff54c7af0f
Binary files /dev/null and b/sound/instruments/accordion/Gb5.mid differ
diff --git a/sound/instruments/accordion/Gb6.mid b/sound/instruments/accordion/Gb6.mid
new file mode 100644
index 00000000000..05b05b9870f
Binary files /dev/null and b/sound/instruments/accordion/Gb6.mid differ
diff --git a/sound/instruments/accordion/Gn2.mid b/sound/instruments/accordion/Gn2.mid
new file mode 100644
index 00000000000..def96a74d17
Binary files /dev/null and b/sound/instruments/accordion/Gn2.mid differ
diff --git a/sound/instruments/accordion/Gn3.mid b/sound/instruments/accordion/Gn3.mid
new file mode 100644
index 00000000000..4c88ab05076
Binary files /dev/null and b/sound/instruments/accordion/Gn3.mid differ
diff --git a/sound/instruments/accordion/Gn4.mid b/sound/instruments/accordion/Gn4.mid
new file mode 100644
index 00000000000..b76b5a22c63
Binary files /dev/null and b/sound/instruments/accordion/Gn4.mid differ
diff --git a/sound/instruments/accordion/Gn5.mid b/sound/instruments/accordion/Gn5.mid
new file mode 100644
index 00000000000..0fb395db34c
Binary files /dev/null and b/sound/instruments/accordion/Gn5.mid differ
diff --git a/sound/instruments/accordion/Gn6.mid b/sound/instruments/accordion/Gn6.mid
new file mode 100644
index 00000000000..b6117319ad5
Binary files /dev/null and b/sound/instruments/accordion/Gn6.mid differ
diff --git a/sound/instruments/bikehorn/Ab2.ogg b/sound/instruments/bikehorn/Ab2.ogg
new file mode 100644
index 00000000000..cc33da35f45
Binary files /dev/null and b/sound/instruments/bikehorn/Ab2.ogg differ
diff --git a/sound/instruments/bikehorn/Ab3.ogg b/sound/instruments/bikehorn/Ab3.ogg
new file mode 100644
index 00000000000..b046ed2e74a
Binary files /dev/null and b/sound/instruments/bikehorn/Ab3.ogg differ
diff --git a/sound/instruments/bikehorn/Ab4.ogg b/sound/instruments/bikehorn/Ab4.ogg
new file mode 100644
index 00000000000..ba50324d626
Binary files /dev/null and b/sound/instruments/bikehorn/Ab4.ogg differ
diff --git a/sound/instruments/bikehorn/An2.ogg b/sound/instruments/bikehorn/An2.ogg
new file mode 100644
index 00000000000..ddfbe21910b
Binary files /dev/null and b/sound/instruments/bikehorn/An2.ogg differ
diff --git a/sound/instruments/bikehorn/An3.ogg b/sound/instruments/bikehorn/An3.ogg
new file mode 100644
index 00000000000..c69e59a8da0
Binary files /dev/null and b/sound/instruments/bikehorn/An3.ogg differ
diff --git a/sound/instruments/bikehorn/An4.ogg b/sound/instruments/bikehorn/An4.ogg
new file mode 100644
index 00000000000..5b42fe4ae8f
Binary files /dev/null and b/sound/instruments/bikehorn/An4.ogg differ
diff --git a/sound/instruments/bikehorn/Bb2.ogg b/sound/instruments/bikehorn/Bb2.ogg
new file mode 100644
index 00000000000..4a909bdfc53
Binary files /dev/null and b/sound/instruments/bikehorn/Bb2.ogg differ
diff --git a/sound/instruments/bikehorn/Bb3.ogg b/sound/instruments/bikehorn/Bb3.ogg
new file mode 100644
index 00000000000..2055984a86c
Binary files /dev/null and b/sound/instruments/bikehorn/Bb3.ogg differ
diff --git a/sound/instruments/bikehorn/Bb4.ogg b/sound/instruments/bikehorn/Bb4.ogg
new file mode 100644
index 00000000000..73003e040c1
Binary files /dev/null and b/sound/instruments/bikehorn/Bb4.ogg differ
diff --git a/sound/instruments/bikehorn/Bn2.ogg b/sound/instruments/bikehorn/Bn2.ogg
new file mode 100644
index 00000000000..17532a6a7c9
Binary files /dev/null and b/sound/instruments/bikehorn/Bn2.ogg differ
diff --git a/sound/instruments/bikehorn/Bn3.ogg b/sound/instruments/bikehorn/Bn3.ogg
new file mode 100644
index 00000000000..ff36b917093
Binary files /dev/null and b/sound/instruments/bikehorn/Bn3.ogg differ
diff --git a/sound/instruments/bikehorn/Bn4.ogg b/sound/instruments/bikehorn/Bn4.ogg
new file mode 100644
index 00000000000..6750a931552
Binary files /dev/null and b/sound/instruments/bikehorn/Bn4.ogg differ
diff --git a/sound/instruments/bikehorn/Cn3.ogg b/sound/instruments/bikehorn/Cn3.ogg
new file mode 100644
index 00000000000..f75ddaa83f2
Binary files /dev/null and b/sound/instruments/bikehorn/Cn3.ogg differ
diff --git a/sound/instruments/bikehorn/Cn4.ogg b/sound/instruments/bikehorn/Cn4.ogg
new file mode 100644
index 00000000000..e5889f04bce
Binary files /dev/null and b/sound/instruments/bikehorn/Cn4.ogg differ
diff --git a/sound/instruments/bikehorn/Cn5.ogg b/sound/instruments/bikehorn/Cn5.ogg
new file mode 100644
index 00000000000..328a6edf10e
Binary files /dev/null and b/sound/instruments/bikehorn/Cn5.ogg differ
diff --git a/sound/instruments/bikehorn/Db3.ogg b/sound/instruments/bikehorn/Db3.ogg
new file mode 100644
index 00000000000..3c3e8d10305
Binary files /dev/null and b/sound/instruments/bikehorn/Db3.ogg differ
diff --git a/sound/instruments/bikehorn/Db4.ogg b/sound/instruments/bikehorn/Db4.ogg
new file mode 100644
index 00000000000..35dd47df475
Binary files /dev/null and b/sound/instruments/bikehorn/Db4.ogg differ
diff --git a/sound/instruments/bikehorn/Db5.ogg b/sound/instruments/bikehorn/Db5.ogg
new file mode 100644
index 00000000000..54c10b54c54
Binary files /dev/null and b/sound/instruments/bikehorn/Db5.ogg differ
diff --git a/sound/instruments/bikehorn/Dn3.ogg b/sound/instruments/bikehorn/Dn3.ogg
new file mode 100644
index 00000000000..33a863c8426
Binary files /dev/null and b/sound/instruments/bikehorn/Dn3.ogg differ
diff --git a/sound/instruments/bikehorn/Dn4.ogg b/sound/instruments/bikehorn/Dn4.ogg
new file mode 100644
index 00000000000..bd4c353e625
Binary files /dev/null and b/sound/instruments/bikehorn/Dn4.ogg differ
diff --git a/sound/instruments/bikehorn/Dn5.ogg b/sound/instruments/bikehorn/Dn5.ogg
new file mode 100644
index 00000000000..11b355b11cf
Binary files /dev/null and b/sound/instruments/bikehorn/Dn5.ogg differ
diff --git a/sound/instruments/bikehorn/Eb3.ogg b/sound/instruments/bikehorn/Eb3.ogg
new file mode 100644
index 00000000000..367cc5456dc
Binary files /dev/null and b/sound/instruments/bikehorn/Eb3.ogg differ
diff --git a/sound/instruments/bikehorn/Eb4.ogg b/sound/instruments/bikehorn/Eb4.ogg
new file mode 100644
index 00000000000..d7344da37c9
Binary files /dev/null and b/sound/instruments/bikehorn/Eb4.ogg differ
diff --git a/sound/instruments/bikehorn/Eb5.ogg b/sound/instruments/bikehorn/Eb5.ogg
new file mode 100644
index 00000000000..c94b994d199
Binary files /dev/null and b/sound/instruments/bikehorn/Eb5.ogg differ
diff --git a/sound/instruments/bikehorn/En2.ogg b/sound/instruments/bikehorn/En2.ogg
new file mode 100644
index 00000000000..6c2e4de57dd
Binary files /dev/null and b/sound/instruments/bikehorn/En2.ogg differ
diff --git a/sound/instruments/bikehorn/En3.ogg b/sound/instruments/bikehorn/En3.ogg
new file mode 100644
index 00000000000..37b96d48518
Binary files /dev/null and b/sound/instruments/bikehorn/En3.ogg differ
diff --git a/sound/instruments/bikehorn/En4.ogg b/sound/instruments/bikehorn/En4.ogg
new file mode 100644
index 00000000000..2a23deabf57
Binary files /dev/null and b/sound/instruments/bikehorn/En4.ogg differ
diff --git a/sound/instruments/bikehorn/Fn2.ogg b/sound/instruments/bikehorn/Fn2.ogg
new file mode 100644
index 00000000000..3ddbcb90339
Binary files /dev/null and b/sound/instruments/bikehorn/Fn2.ogg differ
diff --git a/sound/instruments/bikehorn/Fn3.ogg b/sound/instruments/bikehorn/Fn3.ogg
new file mode 100644
index 00000000000..47f8625ea9b
Binary files /dev/null and b/sound/instruments/bikehorn/Fn3.ogg differ
diff --git a/sound/instruments/bikehorn/Fn4.ogg b/sound/instruments/bikehorn/Fn4.ogg
new file mode 100644
index 00000000000..ee330535668
Binary files /dev/null and b/sound/instruments/bikehorn/Fn4.ogg differ
diff --git a/sound/instruments/bikehorn/Gb2.ogg b/sound/instruments/bikehorn/Gb2.ogg
new file mode 100644
index 00000000000..e78f9430104
Binary files /dev/null and b/sound/instruments/bikehorn/Gb2.ogg differ
diff --git a/sound/instruments/bikehorn/Gb3.ogg b/sound/instruments/bikehorn/Gb3.ogg
new file mode 100644
index 00000000000..be59509ee92
Binary files /dev/null and b/sound/instruments/bikehorn/Gb3.ogg differ
diff --git a/sound/instruments/bikehorn/Gb4.ogg b/sound/instruments/bikehorn/Gb4.ogg
new file mode 100644
index 00000000000..fac913aaff4
Binary files /dev/null and b/sound/instruments/bikehorn/Gb4.ogg differ
diff --git a/sound/instruments/bikehorn/Gn2.ogg b/sound/instruments/bikehorn/Gn2.ogg
new file mode 100644
index 00000000000..80997735440
Binary files /dev/null and b/sound/instruments/bikehorn/Gn2.ogg differ
diff --git a/sound/instruments/bikehorn/Gn3.ogg b/sound/instruments/bikehorn/Gn3.ogg
new file mode 100644
index 00000000000..1966dfd0e86
Binary files /dev/null and b/sound/instruments/bikehorn/Gn3.ogg differ
diff --git a/sound/instruments/bikehorn/Gn4.ogg b/sound/instruments/bikehorn/Gn4.ogg
new file mode 100644
index 00000000000..86f81bc1cbb
Binary files /dev/null and b/sound/instruments/bikehorn/Gn4.ogg differ
diff --git a/sound/eguitar/ab4.ogg b/sound/instruments/eguitar/ab4.ogg
similarity index 100%
rename from sound/eguitar/ab4.ogg
rename to sound/instruments/eguitar/ab4.ogg
diff --git a/sound/eguitar/ab5.ogg b/sound/instruments/eguitar/ab5.ogg
similarity index 100%
rename from sound/eguitar/ab5.ogg
rename to sound/instruments/eguitar/ab5.ogg
diff --git a/sound/eguitar/ab6.ogg b/sound/instruments/eguitar/ab6.ogg
similarity index 100%
rename from sound/eguitar/ab6.ogg
rename to sound/instruments/eguitar/ab6.ogg
diff --git a/sound/eguitar/an4.ogg b/sound/instruments/eguitar/an4.ogg
similarity index 100%
rename from sound/eguitar/an4.ogg
rename to sound/instruments/eguitar/an4.ogg
diff --git a/sound/eguitar/an5.ogg b/sound/instruments/eguitar/an5.ogg
similarity index 100%
rename from sound/eguitar/an5.ogg
rename to sound/instruments/eguitar/an5.ogg
diff --git a/sound/eguitar/an6.ogg b/sound/instruments/eguitar/an6.ogg
similarity index 100%
rename from sound/eguitar/an6.ogg
rename to sound/instruments/eguitar/an6.ogg
diff --git a/sound/eguitar/bb4.ogg b/sound/instruments/eguitar/bb4.ogg
similarity index 100%
rename from sound/eguitar/bb4.ogg
rename to sound/instruments/eguitar/bb4.ogg
diff --git a/sound/eguitar/bb5.ogg b/sound/instruments/eguitar/bb5.ogg
similarity index 100%
rename from sound/eguitar/bb5.ogg
rename to sound/instruments/eguitar/bb5.ogg
diff --git a/sound/eguitar/bb6.ogg b/sound/instruments/eguitar/bb6.ogg
similarity index 100%
rename from sound/eguitar/bb6.ogg
rename to sound/instruments/eguitar/bb6.ogg
diff --git a/sound/eguitar/bn4.ogg b/sound/instruments/eguitar/bn4.ogg
similarity index 100%
rename from sound/eguitar/bn4.ogg
rename to sound/instruments/eguitar/bn4.ogg
diff --git a/sound/eguitar/bn5.ogg b/sound/instruments/eguitar/bn5.ogg
similarity index 100%
rename from sound/eguitar/bn5.ogg
rename to sound/instruments/eguitar/bn5.ogg
diff --git a/sound/eguitar/bn6.ogg b/sound/instruments/eguitar/bn6.ogg
similarity index 100%
rename from sound/eguitar/bn6.ogg
rename to sound/instruments/eguitar/bn6.ogg
diff --git a/sound/eguitar/cn4.ogg b/sound/instruments/eguitar/cn4.ogg
similarity index 100%
rename from sound/eguitar/cn4.ogg
rename to sound/instruments/eguitar/cn4.ogg
diff --git a/sound/eguitar/cn5.ogg b/sound/instruments/eguitar/cn5.ogg
similarity index 100%
rename from sound/eguitar/cn5.ogg
rename to sound/instruments/eguitar/cn5.ogg
diff --git a/sound/eguitar/cn6.ogg b/sound/instruments/eguitar/cn6.ogg
similarity index 100%
rename from sound/eguitar/cn6.ogg
rename to sound/instruments/eguitar/cn6.ogg
diff --git a/sound/eguitar/cn7.ogg b/sound/instruments/eguitar/cn7.ogg
similarity index 100%
rename from sound/eguitar/cn7.ogg
rename to sound/instruments/eguitar/cn7.ogg
diff --git a/sound/eguitar/db4.ogg b/sound/instruments/eguitar/db4.ogg
similarity index 100%
rename from sound/eguitar/db4.ogg
rename to sound/instruments/eguitar/db4.ogg
diff --git a/sound/eguitar/db5.ogg b/sound/instruments/eguitar/db5.ogg
similarity index 100%
rename from sound/eguitar/db5.ogg
rename to sound/instruments/eguitar/db5.ogg
diff --git a/sound/eguitar/db6.ogg b/sound/instruments/eguitar/db6.ogg
similarity index 100%
rename from sound/eguitar/db6.ogg
rename to sound/instruments/eguitar/db6.ogg
diff --git a/sound/eguitar/dn4.ogg b/sound/instruments/eguitar/dn4.ogg
similarity index 100%
rename from sound/eguitar/dn4.ogg
rename to sound/instruments/eguitar/dn4.ogg
diff --git a/sound/eguitar/dn5.ogg b/sound/instruments/eguitar/dn5.ogg
similarity index 100%
rename from sound/eguitar/dn5.ogg
rename to sound/instruments/eguitar/dn5.ogg
diff --git a/sound/eguitar/dn6.ogg b/sound/instruments/eguitar/dn6.ogg
similarity index 100%
rename from sound/eguitar/dn6.ogg
rename to sound/instruments/eguitar/dn6.ogg
diff --git a/sound/eguitar/eb4.ogg b/sound/instruments/eguitar/eb4.ogg
similarity index 100%
rename from sound/eguitar/eb4.ogg
rename to sound/instruments/eguitar/eb4.ogg
diff --git a/sound/eguitar/eb5.ogg b/sound/instruments/eguitar/eb5.ogg
similarity index 100%
rename from sound/eguitar/eb5.ogg
rename to sound/instruments/eguitar/eb5.ogg
diff --git a/sound/eguitar/eb6.ogg b/sound/instruments/eguitar/eb6.ogg
similarity index 100%
rename from sound/eguitar/eb6.ogg
rename to sound/instruments/eguitar/eb6.ogg
diff --git a/sound/eguitar/en4.ogg b/sound/instruments/eguitar/en4.ogg
similarity index 100%
rename from sound/eguitar/en4.ogg
rename to sound/instruments/eguitar/en4.ogg
diff --git a/sound/eguitar/en5.ogg b/sound/instruments/eguitar/en5.ogg
similarity index 100%
rename from sound/eguitar/en5.ogg
rename to sound/instruments/eguitar/en5.ogg
diff --git a/sound/eguitar/en6.ogg b/sound/instruments/eguitar/en6.ogg
similarity index 100%
rename from sound/eguitar/en6.ogg
rename to sound/instruments/eguitar/en6.ogg
diff --git a/sound/eguitar/fn4.ogg b/sound/instruments/eguitar/fn4.ogg
similarity index 100%
rename from sound/eguitar/fn4.ogg
rename to sound/instruments/eguitar/fn4.ogg
diff --git a/sound/eguitar/fn5.ogg b/sound/instruments/eguitar/fn5.ogg
similarity index 100%
rename from sound/eguitar/fn5.ogg
rename to sound/instruments/eguitar/fn5.ogg
diff --git a/sound/eguitar/fn6.ogg b/sound/instruments/eguitar/fn6.ogg
similarity index 100%
rename from sound/eguitar/fn6.ogg
rename to sound/instruments/eguitar/fn6.ogg
diff --git a/sound/eguitar/gb4.ogg b/sound/instruments/eguitar/gb4.ogg
similarity index 100%
rename from sound/eguitar/gb4.ogg
rename to sound/instruments/eguitar/gb4.ogg
diff --git a/sound/eguitar/gb5.ogg b/sound/instruments/eguitar/gb5.ogg
similarity index 100%
rename from sound/eguitar/gb5.ogg
rename to sound/instruments/eguitar/gb5.ogg
diff --git a/sound/eguitar/gb6.ogg b/sound/instruments/eguitar/gb6.ogg
similarity index 100%
rename from sound/eguitar/gb6.ogg
rename to sound/instruments/eguitar/gb6.ogg
diff --git a/sound/eguitar/gn4.ogg b/sound/instruments/eguitar/gn4.ogg
similarity index 100%
rename from sound/eguitar/gn4.ogg
rename to sound/instruments/eguitar/gn4.ogg
diff --git a/sound/eguitar/gn5.ogg b/sound/instruments/eguitar/gn5.ogg
similarity index 100%
rename from sound/eguitar/gn5.ogg
rename to sound/instruments/eguitar/gn5.ogg
diff --git a/sound/eguitar/gn6.ogg b/sound/instruments/eguitar/gn6.ogg
similarity index 100%
rename from sound/eguitar/gn6.ogg
rename to sound/instruments/eguitar/gn6.ogg
diff --git a/sound/instruments/glockenspiel/Ab2.mid b/sound/instruments/glockenspiel/Ab2.mid
new file mode 100644
index 00000000000..5686905944d
Binary files /dev/null and b/sound/instruments/glockenspiel/Ab2.mid differ
diff --git a/sound/instruments/glockenspiel/Ab3.mid b/sound/instruments/glockenspiel/Ab3.mid
new file mode 100644
index 00000000000..284a1fff4e3
Binary files /dev/null and b/sound/instruments/glockenspiel/Ab3.mid differ
diff --git a/sound/instruments/glockenspiel/Ab4.mid b/sound/instruments/glockenspiel/Ab4.mid
new file mode 100644
index 00000000000..fa423da6d5b
Binary files /dev/null and b/sound/instruments/glockenspiel/Ab4.mid differ
diff --git a/sound/instruments/glockenspiel/Ab5.mid b/sound/instruments/glockenspiel/Ab5.mid
new file mode 100644
index 00000000000..4f49969b557
Binary files /dev/null and b/sound/instruments/glockenspiel/Ab5.mid differ
diff --git a/sound/instruments/glockenspiel/Ab6.mid b/sound/instruments/glockenspiel/Ab6.mid
new file mode 100644
index 00000000000..a9900e304d4
Binary files /dev/null and b/sound/instruments/glockenspiel/Ab6.mid differ
diff --git a/sound/instruments/glockenspiel/Ab7.mid b/sound/instruments/glockenspiel/Ab7.mid
new file mode 100644
index 00000000000..46a3712bc08
Binary files /dev/null and b/sound/instruments/glockenspiel/Ab7.mid differ
diff --git a/sound/instruments/glockenspiel/An2.mid b/sound/instruments/glockenspiel/An2.mid
new file mode 100644
index 00000000000..225c8d8e677
Binary files /dev/null and b/sound/instruments/glockenspiel/An2.mid differ
diff --git a/sound/instruments/glockenspiel/An3.mid b/sound/instruments/glockenspiel/An3.mid
new file mode 100644
index 00000000000..4517bccccf1
Binary files /dev/null and b/sound/instruments/glockenspiel/An3.mid differ
diff --git a/sound/instruments/glockenspiel/An4.mid b/sound/instruments/glockenspiel/An4.mid
new file mode 100644
index 00000000000..b0bfafe19d7
Binary files /dev/null and b/sound/instruments/glockenspiel/An4.mid differ
diff --git a/sound/instruments/glockenspiel/An5.mid b/sound/instruments/glockenspiel/An5.mid
new file mode 100644
index 00000000000..203f31ec8bf
Binary files /dev/null and b/sound/instruments/glockenspiel/An5.mid differ
diff --git a/sound/instruments/glockenspiel/An6.mid b/sound/instruments/glockenspiel/An6.mid
new file mode 100644
index 00000000000..b3c81f947e2
Binary files /dev/null and b/sound/instruments/glockenspiel/An6.mid differ
diff --git a/sound/instruments/glockenspiel/An7.mid b/sound/instruments/glockenspiel/An7.mid
new file mode 100644
index 00000000000..5f5d1f2482e
Binary files /dev/null and b/sound/instruments/glockenspiel/An7.mid differ
diff --git a/sound/instruments/glockenspiel/Bb2.mid b/sound/instruments/glockenspiel/Bb2.mid
new file mode 100644
index 00000000000..c847d75145b
Binary files /dev/null and b/sound/instruments/glockenspiel/Bb2.mid differ
diff --git a/sound/instruments/glockenspiel/Bb3.mid b/sound/instruments/glockenspiel/Bb3.mid
new file mode 100644
index 00000000000..1bb96dd7b03
Binary files /dev/null and b/sound/instruments/glockenspiel/Bb3.mid differ
diff --git a/sound/instruments/glockenspiel/Bb4.mid b/sound/instruments/glockenspiel/Bb4.mid
new file mode 100644
index 00000000000..d96c70754d0
Binary files /dev/null and b/sound/instruments/glockenspiel/Bb4.mid differ
diff --git a/sound/instruments/glockenspiel/Bb5.mid b/sound/instruments/glockenspiel/Bb5.mid
new file mode 100644
index 00000000000..b8ca38884b8
Binary files /dev/null and b/sound/instruments/glockenspiel/Bb5.mid differ
diff --git a/sound/instruments/glockenspiel/Bb6.mid b/sound/instruments/glockenspiel/Bb6.mid
new file mode 100644
index 00000000000..b82b11dbf20
Binary files /dev/null and b/sound/instruments/glockenspiel/Bb6.mid differ
diff --git a/sound/instruments/glockenspiel/Bb7.mid b/sound/instruments/glockenspiel/Bb7.mid
new file mode 100644
index 00000000000..dfcf25c6e3f
Binary files /dev/null and b/sound/instruments/glockenspiel/Bb7.mid differ
diff --git a/sound/instruments/glockenspiel/Bn2.mid b/sound/instruments/glockenspiel/Bn2.mid
new file mode 100644
index 00000000000..c34397b078a
Binary files /dev/null and b/sound/instruments/glockenspiel/Bn2.mid differ
diff --git a/sound/instruments/glockenspiel/Bn3.mid b/sound/instruments/glockenspiel/Bn3.mid
new file mode 100644
index 00000000000..6572ba58a69
Binary files /dev/null and b/sound/instruments/glockenspiel/Bn3.mid differ
diff --git a/sound/instruments/glockenspiel/Bn4.mid b/sound/instruments/glockenspiel/Bn4.mid
new file mode 100644
index 00000000000..28059d9d39a
Binary files /dev/null and b/sound/instruments/glockenspiel/Bn4.mid differ
diff --git a/sound/instruments/glockenspiel/Bn5.mid b/sound/instruments/glockenspiel/Bn5.mid
new file mode 100644
index 00000000000..acad7d78a4e
Binary files /dev/null and b/sound/instruments/glockenspiel/Bn5.mid differ
diff --git a/sound/instruments/glockenspiel/Bn6.mid b/sound/instruments/glockenspiel/Bn6.mid
new file mode 100644
index 00000000000..28cecdb28e0
Binary files /dev/null and b/sound/instruments/glockenspiel/Bn6.mid differ
diff --git a/sound/instruments/glockenspiel/Bn7.mid b/sound/instruments/glockenspiel/Bn7.mid
new file mode 100644
index 00000000000..879cdf81a13
Binary files /dev/null and b/sound/instruments/glockenspiel/Bn7.mid differ
diff --git a/sound/instruments/glockenspiel/Cn2.mid b/sound/instruments/glockenspiel/Cn2.mid
new file mode 100644
index 00000000000..c25e5eb02fa
Binary files /dev/null and b/sound/instruments/glockenspiel/Cn2.mid differ
diff --git a/sound/instruments/glockenspiel/Cn3.mid b/sound/instruments/glockenspiel/Cn3.mid
new file mode 100644
index 00000000000..2e9dc47abd1
Binary files /dev/null and b/sound/instruments/glockenspiel/Cn3.mid differ
diff --git a/sound/instruments/glockenspiel/Cn4.mid b/sound/instruments/glockenspiel/Cn4.mid
new file mode 100644
index 00000000000..6ebe22570d5
Binary files /dev/null and b/sound/instruments/glockenspiel/Cn4.mid differ
diff --git a/sound/instruments/glockenspiel/Cn5.mid b/sound/instruments/glockenspiel/Cn5.mid
new file mode 100644
index 00000000000..383cf88b989
Binary files /dev/null and b/sound/instruments/glockenspiel/Cn5.mid differ
diff --git a/sound/instruments/glockenspiel/Cn6.mid b/sound/instruments/glockenspiel/Cn6.mid
new file mode 100644
index 00000000000..919ba370850
Binary files /dev/null and b/sound/instruments/glockenspiel/Cn6.mid differ
diff --git a/sound/instruments/glockenspiel/Cn7.mid b/sound/instruments/glockenspiel/Cn7.mid
new file mode 100644
index 00000000000..6d02413f0ae
Binary files /dev/null and b/sound/instruments/glockenspiel/Cn7.mid differ
diff --git a/sound/instruments/glockenspiel/Db2.mid b/sound/instruments/glockenspiel/Db2.mid
new file mode 100644
index 00000000000..e6c4c968b5c
Binary files /dev/null and b/sound/instruments/glockenspiel/Db2.mid differ
diff --git a/sound/instruments/glockenspiel/Db3.mid b/sound/instruments/glockenspiel/Db3.mid
new file mode 100644
index 00000000000..d793ec8c5f1
Binary files /dev/null and b/sound/instruments/glockenspiel/Db3.mid differ
diff --git a/sound/instruments/glockenspiel/Db4.mid b/sound/instruments/glockenspiel/Db4.mid
new file mode 100644
index 00000000000..1c042478500
Binary files /dev/null and b/sound/instruments/glockenspiel/Db4.mid differ
diff --git a/sound/instruments/glockenspiel/Db5.mid b/sound/instruments/glockenspiel/Db5.mid
new file mode 100644
index 00000000000..bd0a7712876
Binary files /dev/null and b/sound/instruments/glockenspiel/Db5.mid differ
diff --git a/sound/instruments/glockenspiel/Db6.mid b/sound/instruments/glockenspiel/Db6.mid
new file mode 100644
index 00000000000..2c25f018b23
Binary files /dev/null and b/sound/instruments/glockenspiel/Db6.mid differ
diff --git a/sound/instruments/glockenspiel/Db7.mid b/sound/instruments/glockenspiel/Db7.mid
new file mode 100644
index 00000000000..e42abd2921a
Binary files /dev/null and b/sound/instruments/glockenspiel/Db7.mid differ
diff --git a/sound/instruments/glockenspiel/Dn2.mid b/sound/instruments/glockenspiel/Dn2.mid
new file mode 100644
index 00000000000..8b82df85769
Binary files /dev/null and b/sound/instruments/glockenspiel/Dn2.mid differ
diff --git a/sound/instruments/glockenspiel/Dn3.mid b/sound/instruments/glockenspiel/Dn3.mid
new file mode 100644
index 00000000000..c367cdf2799
Binary files /dev/null and b/sound/instruments/glockenspiel/Dn3.mid differ
diff --git a/sound/instruments/glockenspiel/Dn4.mid b/sound/instruments/glockenspiel/Dn4.mid
new file mode 100644
index 00000000000..98af4007fe3
Binary files /dev/null and b/sound/instruments/glockenspiel/Dn4.mid differ
diff --git a/sound/instruments/glockenspiel/Dn5.mid b/sound/instruments/glockenspiel/Dn5.mid
new file mode 100644
index 00000000000..e51591d8879
Binary files /dev/null and b/sound/instruments/glockenspiel/Dn5.mid differ
diff --git a/sound/instruments/glockenspiel/Dn6.mid b/sound/instruments/glockenspiel/Dn6.mid
new file mode 100644
index 00000000000..7a3723915df
Binary files /dev/null and b/sound/instruments/glockenspiel/Dn6.mid differ
diff --git a/sound/instruments/glockenspiel/Dn7.mid b/sound/instruments/glockenspiel/Dn7.mid
new file mode 100644
index 00000000000..5be8aa77e1f
Binary files /dev/null and b/sound/instruments/glockenspiel/Dn7.mid differ
diff --git a/sound/instruments/glockenspiel/Eb2.mid b/sound/instruments/glockenspiel/Eb2.mid
new file mode 100644
index 00000000000..c50981843db
Binary files /dev/null and b/sound/instruments/glockenspiel/Eb2.mid differ
diff --git a/sound/instruments/glockenspiel/Eb3.mid b/sound/instruments/glockenspiel/Eb3.mid
new file mode 100644
index 00000000000..36354cb7152
Binary files /dev/null and b/sound/instruments/glockenspiel/Eb3.mid differ
diff --git a/sound/instruments/glockenspiel/Eb4.mid b/sound/instruments/glockenspiel/Eb4.mid
new file mode 100644
index 00000000000..3d08fd703be
Binary files /dev/null and b/sound/instruments/glockenspiel/Eb4.mid differ
diff --git a/sound/instruments/glockenspiel/Eb5.mid b/sound/instruments/glockenspiel/Eb5.mid
new file mode 100644
index 00000000000..25aebfc3274
Binary files /dev/null and b/sound/instruments/glockenspiel/Eb5.mid differ
diff --git a/sound/instruments/glockenspiel/Eb6.mid b/sound/instruments/glockenspiel/Eb6.mid
new file mode 100644
index 00000000000..62cc1ef0e7f
Binary files /dev/null and b/sound/instruments/glockenspiel/Eb6.mid differ
diff --git a/sound/instruments/glockenspiel/Eb7.mid b/sound/instruments/glockenspiel/Eb7.mid
new file mode 100644
index 00000000000..b60cdad77b5
Binary files /dev/null and b/sound/instruments/glockenspiel/Eb7.mid differ
diff --git a/sound/instruments/glockenspiel/En2.mid b/sound/instruments/glockenspiel/En2.mid
new file mode 100644
index 00000000000..39758cd85f9
Binary files /dev/null and b/sound/instruments/glockenspiel/En2.mid differ
diff --git a/sound/instruments/glockenspiel/En3.mid b/sound/instruments/glockenspiel/En3.mid
new file mode 100644
index 00000000000..efc81900312
Binary files /dev/null and b/sound/instruments/glockenspiel/En3.mid differ
diff --git a/sound/instruments/glockenspiel/En4.mid b/sound/instruments/glockenspiel/En4.mid
new file mode 100644
index 00000000000..99cc66e8ee8
Binary files /dev/null and b/sound/instruments/glockenspiel/En4.mid differ
diff --git a/sound/instruments/glockenspiel/En5.mid b/sound/instruments/glockenspiel/En5.mid
new file mode 100644
index 00000000000..ad00fdf4193
Binary files /dev/null and b/sound/instruments/glockenspiel/En5.mid differ
diff --git a/sound/instruments/glockenspiel/En6.mid b/sound/instruments/glockenspiel/En6.mid
new file mode 100644
index 00000000000..f09ef0b2609
Binary files /dev/null and b/sound/instruments/glockenspiel/En6.mid differ
diff --git a/sound/instruments/glockenspiel/En7.mid b/sound/instruments/glockenspiel/En7.mid
new file mode 100644
index 00000000000..3bcb9da49ff
Binary files /dev/null and b/sound/instruments/glockenspiel/En7.mid differ
diff --git a/sound/instruments/glockenspiel/Fn2.mid b/sound/instruments/glockenspiel/Fn2.mid
new file mode 100644
index 00000000000..f127d40a4ac
Binary files /dev/null and b/sound/instruments/glockenspiel/Fn2.mid differ
diff --git a/sound/instruments/glockenspiel/Fn3.mid b/sound/instruments/glockenspiel/Fn3.mid
new file mode 100644
index 00000000000..2429099d112
Binary files /dev/null and b/sound/instruments/glockenspiel/Fn3.mid differ
diff --git a/sound/instruments/glockenspiel/Fn4.mid b/sound/instruments/glockenspiel/Fn4.mid
new file mode 100644
index 00000000000..be631cfb219
Binary files /dev/null and b/sound/instruments/glockenspiel/Fn4.mid differ
diff --git a/sound/instruments/glockenspiel/Fn5.mid b/sound/instruments/glockenspiel/Fn5.mid
new file mode 100644
index 00000000000..a9fa10ed92a
Binary files /dev/null and b/sound/instruments/glockenspiel/Fn5.mid differ
diff --git a/sound/instruments/glockenspiel/Fn6.mid b/sound/instruments/glockenspiel/Fn6.mid
new file mode 100644
index 00000000000..e31280486c7
Binary files /dev/null and b/sound/instruments/glockenspiel/Fn6.mid differ
diff --git a/sound/instruments/glockenspiel/Fn7.mid b/sound/instruments/glockenspiel/Fn7.mid
new file mode 100644
index 00000000000..d58406a9eb1
Binary files /dev/null and b/sound/instruments/glockenspiel/Fn7.mid differ
diff --git a/sound/instruments/glockenspiel/Gb2.mid b/sound/instruments/glockenspiel/Gb2.mid
new file mode 100644
index 00000000000..a75712fdcd9
Binary files /dev/null and b/sound/instruments/glockenspiel/Gb2.mid differ
diff --git a/sound/instruments/glockenspiel/Gb3.mid b/sound/instruments/glockenspiel/Gb3.mid
new file mode 100644
index 00000000000..ce8eb61c040
Binary files /dev/null and b/sound/instruments/glockenspiel/Gb3.mid differ
diff --git a/sound/instruments/glockenspiel/Gb4.mid b/sound/instruments/glockenspiel/Gb4.mid
new file mode 100644
index 00000000000..d15ee2f97b2
Binary files /dev/null and b/sound/instruments/glockenspiel/Gb4.mid differ
diff --git a/sound/instruments/glockenspiel/Gb5.mid b/sound/instruments/glockenspiel/Gb5.mid
new file mode 100644
index 00000000000..393b6d76574
Binary files /dev/null and b/sound/instruments/glockenspiel/Gb5.mid differ
diff --git a/sound/instruments/glockenspiel/Gb6.mid b/sound/instruments/glockenspiel/Gb6.mid
new file mode 100644
index 00000000000..6b0e3aef091
Binary files /dev/null and b/sound/instruments/glockenspiel/Gb6.mid differ
diff --git a/sound/instruments/glockenspiel/Gb7.mid b/sound/instruments/glockenspiel/Gb7.mid
new file mode 100644
index 00000000000..318a1ea9caa
Binary files /dev/null and b/sound/instruments/glockenspiel/Gb7.mid differ
diff --git a/sound/instruments/glockenspiel/Gn2.mid b/sound/instruments/glockenspiel/Gn2.mid
new file mode 100644
index 00000000000..39d22d66123
Binary files /dev/null and b/sound/instruments/glockenspiel/Gn2.mid differ
diff --git a/sound/instruments/glockenspiel/Gn3.mid b/sound/instruments/glockenspiel/Gn3.mid
new file mode 100644
index 00000000000..d9494886a1c
Binary files /dev/null and b/sound/instruments/glockenspiel/Gn3.mid differ
diff --git a/sound/instruments/glockenspiel/Gn4.mid b/sound/instruments/glockenspiel/Gn4.mid
new file mode 100644
index 00000000000..00a2f114bac
Binary files /dev/null and b/sound/instruments/glockenspiel/Gn4.mid differ
diff --git a/sound/instruments/glockenspiel/Gn5.mid b/sound/instruments/glockenspiel/Gn5.mid
new file mode 100644
index 00000000000..55205eae3fe
Binary files /dev/null and b/sound/instruments/glockenspiel/Gn5.mid differ
diff --git a/sound/instruments/glockenspiel/Gn6.mid b/sound/instruments/glockenspiel/Gn6.mid
new file mode 100644
index 00000000000..1aebe5ec222
Binary files /dev/null and b/sound/instruments/glockenspiel/Gn6.mid differ
diff --git a/sound/instruments/glockenspiel/Gn7.mid b/sound/instruments/glockenspiel/Gn7.mid
new file mode 100644
index 00000000000..cd0a43ceac6
Binary files /dev/null and b/sound/instruments/glockenspiel/Gn7.mid differ
diff --git a/sound/guitar/Ab3.ogg b/sound/instruments/guitar/Ab3.ogg
similarity index 100%
rename from sound/guitar/Ab3.ogg
rename to sound/instruments/guitar/Ab3.ogg
diff --git a/sound/guitar/Ab4.ogg b/sound/instruments/guitar/Ab4.ogg
similarity index 100%
rename from sound/guitar/Ab4.ogg
rename to sound/instruments/guitar/Ab4.ogg
diff --git a/sound/guitar/Ab5.ogg b/sound/instruments/guitar/Ab5.ogg
similarity index 100%
rename from sound/guitar/Ab5.ogg
rename to sound/instruments/guitar/Ab5.ogg
diff --git a/sound/guitar/Ab6.ogg b/sound/instruments/guitar/Ab6.ogg
similarity index 100%
rename from sound/guitar/Ab6.ogg
rename to sound/instruments/guitar/Ab6.ogg
diff --git a/sound/guitar/An3.ogg b/sound/instruments/guitar/An3.ogg
similarity index 100%
rename from sound/guitar/An3.ogg
rename to sound/instruments/guitar/An3.ogg
diff --git a/sound/guitar/An4.ogg b/sound/instruments/guitar/An4.ogg
similarity index 100%
rename from sound/guitar/An4.ogg
rename to sound/instruments/guitar/An4.ogg
diff --git a/sound/guitar/An5.ogg b/sound/instruments/guitar/An5.ogg
similarity index 100%
rename from sound/guitar/An5.ogg
rename to sound/instruments/guitar/An5.ogg
diff --git a/sound/guitar/An6.ogg b/sound/instruments/guitar/An6.ogg
similarity index 100%
rename from sound/guitar/An6.ogg
rename to sound/instruments/guitar/An6.ogg
diff --git a/sound/guitar/Bb3.ogg b/sound/instruments/guitar/Bb3.ogg
similarity index 100%
rename from sound/guitar/Bb3.ogg
rename to sound/instruments/guitar/Bb3.ogg
diff --git a/sound/guitar/Bb4.ogg b/sound/instruments/guitar/Bb4.ogg
similarity index 100%
rename from sound/guitar/Bb4.ogg
rename to sound/instruments/guitar/Bb4.ogg
diff --git a/sound/guitar/Bb5.ogg b/sound/instruments/guitar/Bb5.ogg
similarity index 100%
rename from sound/guitar/Bb5.ogg
rename to sound/instruments/guitar/Bb5.ogg
diff --git a/sound/guitar/Bb6.ogg b/sound/instruments/guitar/Bb6.ogg
similarity index 100%
rename from sound/guitar/Bb6.ogg
rename to sound/instruments/guitar/Bb6.ogg
diff --git a/sound/guitar/Bn3.ogg b/sound/instruments/guitar/Bn3.ogg
similarity index 100%
rename from sound/guitar/Bn3.ogg
rename to sound/instruments/guitar/Bn3.ogg
diff --git a/sound/guitar/Bn4.ogg b/sound/instruments/guitar/Bn4.ogg
similarity index 100%
rename from sound/guitar/Bn4.ogg
rename to sound/instruments/guitar/Bn4.ogg
diff --git a/sound/guitar/Bn5.ogg b/sound/instruments/guitar/Bn5.ogg
similarity index 100%
rename from sound/guitar/Bn5.ogg
rename to sound/instruments/guitar/Bn5.ogg
diff --git a/sound/guitar/Bn6.ogg b/sound/instruments/guitar/Bn6.ogg
similarity index 100%
rename from sound/guitar/Bn6.ogg
rename to sound/instruments/guitar/Bn6.ogg
diff --git a/sound/guitar/Cb4.ogg b/sound/instruments/guitar/Cb4.ogg
similarity index 100%
rename from sound/guitar/Cb4.ogg
rename to sound/instruments/guitar/Cb4.ogg
diff --git a/sound/guitar/Cb5.ogg b/sound/instruments/guitar/Cb5.ogg
similarity index 100%
rename from sound/guitar/Cb5.ogg
rename to sound/instruments/guitar/Cb5.ogg
diff --git a/sound/guitar/Cb6.ogg b/sound/instruments/guitar/Cb6.ogg
similarity index 100%
rename from sound/guitar/Cb6.ogg
rename to sound/instruments/guitar/Cb6.ogg
diff --git a/sound/guitar/Cb7.ogg b/sound/instruments/guitar/Cb7.ogg
similarity index 100%
rename from sound/guitar/Cb7.ogg
rename to sound/instruments/guitar/Cb7.ogg
diff --git a/sound/guitar/Cn4.ogg b/sound/instruments/guitar/Cn4.ogg
similarity index 100%
rename from sound/guitar/Cn4.ogg
rename to sound/instruments/guitar/Cn4.ogg
diff --git a/sound/guitar/Cn5.ogg b/sound/instruments/guitar/Cn5.ogg
similarity index 100%
rename from sound/guitar/Cn5.ogg
rename to sound/instruments/guitar/Cn5.ogg
diff --git a/sound/guitar/Cn6.ogg b/sound/instruments/guitar/Cn6.ogg
similarity index 100%
rename from sound/guitar/Cn6.ogg
rename to sound/instruments/guitar/Cn6.ogg
diff --git a/sound/guitar/Db4.ogg b/sound/instruments/guitar/Db4.ogg
similarity index 100%
rename from sound/guitar/Db4.ogg
rename to sound/instruments/guitar/Db4.ogg
diff --git a/sound/guitar/Db5.ogg b/sound/instruments/guitar/Db5.ogg
similarity index 100%
rename from sound/guitar/Db5.ogg
rename to sound/instruments/guitar/Db5.ogg
diff --git a/sound/guitar/Db6.ogg b/sound/instruments/guitar/Db6.ogg
similarity index 100%
rename from sound/guitar/Db6.ogg
rename to sound/instruments/guitar/Db6.ogg
diff --git a/sound/guitar/Dn4.ogg b/sound/instruments/guitar/Dn4.ogg
similarity index 100%
rename from sound/guitar/Dn4.ogg
rename to sound/instruments/guitar/Dn4.ogg
diff --git a/sound/guitar/Dn5.ogg b/sound/instruments/guitar/Dn5.ogg
similarity index 100%
rename from sound/guitar/Dn5.ogg
rename to sound/instruments/guitar/Dn5.ogg
diff --git a/sound/guitar/Dn6.ogg b/sound/instruments/guitar/Dn6.ogg
similarity index 100%
rename from sound/guitar/Dn6.ogg
rename to sound/instruments/guitar/Dn6.ogg
diff --git a/sound/guitar/Eb4.ogg b/sound/instruments/guitar/Eb4.ogg
similarity index 100%
rename from sound/guitar/Eb4.ogg
rename to sound/instruments/guitar/Eb4.ogg
diff --git a/sound/guitar/Eb5.ogg b/sound/instruments/guitar/Eb5.ogg
similarity index 100%
rename from sound/guitar/Eb5.ogg
rename to sound/instruments/guitar/Eb5.ogg
diff --git a/sound/guitar/Eb6.ogg b/sound/instruments/guitar/Eb6.ogg
similarity index 100%
rename from sound/guitar/Eb6.ogg
rename to sound/instruments/guitar/Eb6.ogg
diff --git a/sound/guitar/En3.ogg b/sound/instruments/guitar/En3.ogg
similarity index 100%
rename from sound/guitar/En3.ogg
rename to sound/instruments/guitar/En3.ogg
diff --git a/sound/guitar/En4.ogg b/sound/instruments/guitar/En4.ogg
similarity index 100%
rename from sound/guitar/En4.ogg
rename to sound/instruments/guitar/En4.ogg
diff --git a/sound/guitar/En5.ogg b/sound/instruments/guitar/En5.ogg
similarity index 100%
rename from sound/guitar/En5.ogg
rename to sound/instruments/guitar/En5.ogg
diff --git a/sound/guitar/En6.ogg b/sound/instruments/guitar/En6.ogg
similarity index 100%
rename from sound/guitar/En6.ogg
rename to sound/instruments/guitar/En6.ogg
diff --git a/sound/guitar/Fb3.ogg b/sound/instruments/guitar/Fb3.ogg
similarity index 100%
rename from sound/guitar/Fb3.ogg
rename to sound/instruments/guitar/Fb3.ogg
diff --git a/sound/guitar/Fb4.ogg b/sound/instruments/guitar/Fb4.ogg
similarity index 100%
rename from sound/guitar/Fb4.ogg
rename to sound/instruments/guitar/Fb4.ogg
diff --git a/sound/guitar/Fb5.ogg b/sound/instruments/guitar/Fb5.ogg
similarity index 100%
rename from sound/guitar/Fb5.ogg
rename to sound/instruments/guitar/Fb5.ogg
diff --git a/sound/guitar/Fb6.ogg b/sound/instruments/guitar/Fb6.ogg
similarity index 100%
rename from sound/guitar/Fb6.ogg
rename to sound/instruments/guitar/Fb6.ogg
diff --git a/sound/guitar/Fn3.ogg b/sound/instruments/guitar/Fn3.ogg
similarity index 100%
rename from sound/guitar/Fn3.ogg
rename to sound/instruments/guitar/Fn3.ogg
diff --git a/sound/guitar/Fn4.ogg b/sound/instruments/guitar/Fn4.ogg
similarity index 100%
rename from sound/guitar/Fn4.ogg
rename to sound/instruments/guitar/Fn4.ogg
diff --git a/sound/guitar/Fn5.ogg b/sound/instruments/guitar/Fn5.ogg
similarity index 100%
rename from sound/guitar/Fn5.ogg
rename to sound/instruments/guitar/Fn5.ogg
diff --git a/sound/guitar/Fn6.ogg b/sound/instruments/guitar/Fn6.ogg
similarity index 100%
rename from sound/guitar/Fn6.ogg
rename to sound/instruments/guitar/Fn6.ogg
diff --git a/sound/guitar/Gb3.ogg b/sound/instruments/guitar/Gb3.ogg
similarity index 100%
rename from sound/guitar/Gb3.ogg
rename to sound/instruments/guitar/Gb3.ogg
diff --git a/sound/guitar/Gb4.ogg b/sound/instruments/guitar/Gb4.ogg
similarity index 100%
rename from sound/guitar/Gb4.ogg
rename to sound/instruments/guitar/Gb4.ogg
diff --git a/sound/guitar/Gb5.ogg b/sound/instruments/guitar/Gb5.ogg
similarity index 100%
rename from sound/guitar/Gb5.ogg
rename to sound/instruments/guitar/Gb5.ogg
diff --git a/sound/guitar/Gb6.ogg b/sound/instruments/guitar/Gb6.ogg
similarity index 100%
rename from sound/guitar/Gb6.ogg
rename to sound/instruments/guitar/Gb6.ogg
diff --git a/sound/guitar/Gn3.ogg b/sound/instruments/guitar/Gn3.ogg
similarity index 100%
rename from sound/guitar/Gn3.ogg
rename to sound/instruments/guitar/Gn3.ogg
diff --git a/sound/guitar/Gn4.ogg b/sound/instruments/guitar/Gn4.ogg
similarity index 100%
rename from sound/guitar/Gn4.ogg
rename to sound/instruments/guitar/Gn4.ogg
diff --git a/sound/guitar/Gn5.ogg b/sound/instruments/guitar/Gn5.ogg
similarity index 100%
rename from sound/guitar/Gn5.ogg
rename to sound/instruments/guitar/Gn5.ogg
diff --git a/sound/guitar/Gn6.ogg b/sound/instruments/guitar/Gn6.ogg
similarity index 100%
rename from sound/guitar/Gn6.ogg
rename to sound/instruments/guitar/Gn6.ogg
diff --git a/sound/instruments/harmonica/Ab2.mid b/sound/instruments/harmonica/Ab2.mid
new file mode 100644
index 00000000000..c4c3ddeecd0
Binary files /dev/null and b/sound/instruments/harmonica/Ab2.mid differ
diff --git a/sound/instruments/harmonica/Ab3.mid b/sound/instruments/harmonica/Ab3.mid
new file mode 100644
index 00000000000..ab6c88ed510
Binary files /dev/null and b/sound/instruments/harmonica/Ab3.mid differ
diff --git a/sound/instruments/harmonica/Ab4.mid b/sound/instruments/harmonica/Ab4.mid
new file mode 100644
index 00000000000..d511cdb4750
Binary files /dev/null and b/sound/instruments/harmonica/Ab4.mid differ
diff --git a/sound/instruments/harmonica/Ab5.mid b/sound/instruments/harmonica/Ab5.mid
new file mode 100644
index 00000000000..abab8dc3221
Binary files /dev/null and b/sound/instruments/harmonica/Ab5.mid differ
diff --git a/sound/instruments/harmonica/Ab6.mid b/sound/instruments/harmonica/Ab6.mid
new file mode 100644
index 00000000000..15ca0f0d8f7
Binary files /dev/null and b/sound/instruments/harmonica/Ab6.mid differ
diff --git a/sound/instruments/harmonica/An2.mid b/sound/instruments/harmonica/An2.mid
new file mode 100644
index 00000000000..62bb9299352
Binary files /dev/null and b/sound/instruments/harmonica/An2.mid differ
diff --git a/sound/instruments/harmonica/An3.mid b/sound/instruments/harmonica/An3.mid
new file mode 100644
index 00000000000..20ee9dddcc6
Binary files /dev/null and b/sound/instruments/harmonica/An3.mid differ
diff --git a/sound/instruments/harmonica/An4.mid b/sound/instruments/harmonica/An4.mid
new file mode 100644
index 00000000000..a791135fa81
Binary files /dev/null and b/sound/instruments/harmonica/An4.mid differ
diff --git a/sound/instruments/harmonica/An5.mid b/sound/instruments/harmonica/An5.mid
new file mode 100644
index 00000000000..b78f0793c8a
Binary files /dev/null and b/sound/instruments/harmonica/An5.mid differ
diff --git a/sound/instruments/harmonica/An6.mid b/sound/instruments/harmonica/An6.mid
new file mode 100644
index 00000000000..e250b41e9f8
Binary files /dev/null and b/sound/instruments/harmonica/An6.mid differ
diff --git a/sound/instruments/harmonica/Bb2.mid b/sound/instruments/harmonica/Bb2.mid
new file mode 100644
index 00000000000..610e1f0f380
Binary files /dev/null and b/sound/instruments/harmonica/Bb2.mid differ
diff --git a/sound/instruments/harmonica/Bb3.mid b/sound/instruments/harmonica/Bb3.mid
new file mode 100644
index 00000000000..79f0966663d
Binary files /dev/null and b/sound/instruments/harmonica/Bb3.mid differ
diff --git a/sound/instruments/harmonica/Bb4.mid b/sound/instruments/harmonica/Bb4.mid
new file mode 100644
index 00000000000..af1eb969c62
Binary files /dev/null and b/sound/instruments/harmonica/Bb4.mid differ
diff --git a/sound/instruments/harmonica/Bb5.mid b/sound/instruments/harmonica/Bb5.mid
new file mode 100644
index 00000000000..e816d9cbdd0
Binary files /dev/null and b/sound/instruments/harmonica/Bb5.mid differ
diff --git a/sound/instruments/harmonica/Bb6.mid b/sound/instruments/harmonica/Bb6.mid
new file mode 100644
index 00000000000..ad5b9d2f9e6
Binary files /dev/null and b/sound/instruments/harmonica/Bb6.mid differ
diff --git a/sound/instruments/harmonica/Bn2.mid b/sound/instruments/harmonica/Bn2.mid
new file mode 100644
index 00000000000..f03c0f95358
Binary files /dev/null and b/sound/instruments/harmonica/Bn2.mid differ
diff --git a/sound/instruments/harmonica/Bn3.mid b/sound/instruments/harmonica/Bn3.mid
new file mode 100644
index 00000000000..3d078bba8ed
Binary files /dev/null and b/sound/instruments/harmonica/Bn3.mid differ
diff --git a/sound/instruments/harmonica/Bn4.mid b/sound/instruments/harmonica/Bn4.mid
new file mode 100644
index 00000000000..fff2f5e7b80
Binary files /dev/null and b/sound/instruments/harmonica/Bn4.mid differ
diff --git a/sound/instruments/harmonica/Bn5.mid b/sound/instruments/harmonica/Bn5.mid
new file mode 100644
index 00000000000..b3cf8fe0516
Binary files /dev/null and b/sound/instruments/harmonica/Bn5.mid differ
diff --git a/sound/instruments/harmonica/Bn6.mid b/sound/instruments/harmonica/Bn6.mid
new file mode 100644
index 00000000000..03b60c6a49a
Binary files /dev/null and b/sound/instruments/harmonica/Bn6.mid differ
diff --git a/sound/instruments/harmonica/Cn2.mid b/sound/instruments/harmonica/Cn2.mid
new file mode 100644
index 00000000000..6501f021d29
Binary files /dev/null and b/sound/instruments/harmonica/Cn2.mid differ
diff --git a/sound/instruments/harmonica/Cn3.mid b/sound/instruments/harmonica/Cn3.mid
new file mode 100644
index 00000000000..462bc973ef7
Binary files /dev/null and b/sound/instruments/harmonica/Cn3.mid differ
diff --git a/sound/instruments/harmonica/Cn4.mid b/sound/instruments/harmonica/Cn4.mid
new file mode 100644
index 00000000000..1d4d9ad83b2
Binary files /dev/null and b/sound/instruments/harmonica/Cn4.mid differ
diff --git a/sound/instruments/harmonica/Cn5.mid b/sound/instruments/harmonica/Cn5.mid
new file mode 100644
index 00000000000..7f0698266e3
Binary files /dev/null and b/sound/instruments/harmonica/Cn5.mid differ
diff --git a/sound/instruments/harmonica/Cn6.mid b/sound/instruments/harmonica/Cn6.mid
new file mode 100644
index 00000000000..9edc25c6259
Binary files /dev/null and b/sound/instruments/harmonica/Cn6.mid differ
diff --git a/sound/instruments/harmonica/Cn7.mid b/sound/instruments/harmonica/Cn7.mid
new file mode 100644
index 00000000000..d670d4f07c7
Binary files /dev/null and b/sound/instruments/harmonica/Cn7.mid differ
diff --git a/sound/instruments/harmonica/Db2.mid b/sound/instruments/harmonica/Db2.mid
new file mode 100644
index 00000000000..dab89a2a1bf
Binary files /dev/null and b/sound/instruments/harmonica/Db2.mid differ
diff --git a/sound/instruments/harmonica/Db3.mid b/sound/instruments/harmonica/Db3.mid
new file mode 100644
index 00000000000..06d826dfc75
Binary files /dev/null and b/sound/instruments/harmonica/Db3.mid differ
diff --git a/sound/instruments/harmonica/Db4.mid b/sound/instruments/harmonica/Db4.mid
new file mode 100644
index 00000000000..1e9f67c9ad3
Binary files /dev/null and b/sound/instruments/harmonica/Db4.mid differ
diff --git a/sound/instruments/harmonica/Db5.mid b/sound/instruments/harmonica/Db5.mid
new file mode 100644
index 00000000000..08346dd8389
Binary files /dev/null and b/sound/instruments/harmonica/Db5.mid differ
diff --git a/sound/instruments/harmonica/Db6.mid b/sound/instruments/harmonica/Db6.mid
new file mode 100644
index 00000000000..2269113e007
Binary files /dev/null and b/sound/instruments/harmonica/Db6.mid differ
diff --git a/sound/instruments/harmonica/Dn2.mid b/sound/instruments/harmonica/Dn2.mid
new file mode 100644
index 00000000000..652990ac1a4
Binary files /dev/null and b/sound/instruments/harmonica/Dn2.mid differ
diff --git a/sound/instruments/harmonica/Dn3.mid b/sound/instruments/harmonica/Dn3.mid
new file mode 100644
index 00000000000..e2e3a63d345
Binary files /dev/null and b/sound/instruments/harmonica/Dn3.mid differ
diff --git a/sound/instruments/harmonica/Dn4.mid b/sound/instruments/harmonica/Dn4.mid
new file mode 100644
index 00000000000..d9a23a5445f
Binary files /dev/null and b/sound/instruments/harmonica/Dn4.mid differ
diff --git a/sound/instruments/harmonica/Dn5.mid b/sound/instruments/harmonica/Dn5.mid
new file mode 100644
index 00000000000..3ff298d3946
Binary files /dev/null and b/sound/instruments/harmonica/Dn5.mid differ
diff --git a/sound/instruments/harmonica/Dn6.mid b/sound/instruments/harmonica/Dn6.mid
new file mode 100644
index 00000000000..6aa4c5ef434
Binary files /dev/null and b/sound/instruments/harmonica/Dn6.mid differ
diff --git a/sound/instruments/harmonica/Eb2.mid b/sound/instruments/harmonica/Eb2.mid
new file mode 100644
index 00000000000..d1a8e3fbea2
Binary files /dev/null and b/sound/instruments/harmonica/Eb2.mid differ
diff --git a/sound/instruments/harmonica/Eb3.mid b/sound/instruments/harmonica/Eb3.mid
new file mode 100644
index 00000000000..c31c6ab6e9f
Binary files /dev/null and b/sound/instruments/harmonica/Eb3.mid differ
diff --git a/sound/instruments/harmonica/Eb4.mid b/sound/instruments/harmonica/Eb4.mid
new file mode 100644
index 00000000000..eabad551599
Binary files /dev/null and b/sound/instruments/harmonica/Eb4.mid differ
diff --git a/sound/instruments/harmonica/Eb5.mid b/sound/instruments/harmonica/Eb5.mid
new file mode 100644
index 00000000000..8da3b86e483
Binary files /dev/null and b/sound/instruments/harmonica/Eb5.mid differ
diff --git a/sound/instruments/harmonica/Eb6.mid b/sound/instruments/harmonica/Eb6.mid
new file mode 100644
index 00000000000..db3d2b17b9e
Binary files /dev/null and b/sound/instruments/harmonica/Eb6.mid differ
diff --git a/sound/instruments/harmonica/En2.mid b/sound/instruments/harmonica/En2.mid
new file mode 100644
index 00000000000..48ea2d8bcb9
Binary files /dev/null and b/sound/instruments/harmonica/En2.mid differ
diff --git a/sound/instruments/harmonica/En3.mid b/sound/instruments/harmonica/En3.mid
new file mode 100644
index 00000000000..d7d2492add0
Binary files /dev/null and b/sound/instruments/harmonica/En3.mid differ
diff --git a/sound/instruments/harmonica/En4.mid b/sound/instruments/harmonica/En4.mid
new file mode 100644
index 00000000000..b2731141e6e
Binary files /dev/null and b/sound/instruments/harmonica/En4.mid differ
diff --git a/sound/instruments/harmonica/En5.mid b/sound/instruments/harmonica/En5.mid
new file mode 100644
index 00000000000..22026c14c4f
Binary files /dev/null and b/sound/instruments/harmonica/En5.mid differ
diff --git a/sound/instruments/harmonica/En6.mid b/sound/instruments/harmonica/En6.mid
new file mode 100644
index 00000000000..6730a7c5287
Binary files /dev/null and b/sound/instruments/harmonica/En6.mid differ
diff --git a/sound/instruments/harmonica/Fn2.mid b/sound/instruments/harmonica/Fn2.mid
new file mode 100644
index 00000000000..833662178d0
Binary files /dev/null and b/sound/instruments/harmonica/Fn2.mid differ
diff --git a/sound/instruments/harmonica/Fn3.mid b/sound/instruments/harmonica/Fn3.mid
new file mode 100644
index 00000000000..7dc41a47c88
Binary files /dev/null and b/sound/instruments/harmonica/Fn3.mid differ
diff --git a/sound/instruments/harmonica/Fn4.mid b/sound/instruments/harmonica/Fn4.mid
new file mode 100644
index 00000000000..025583e38d3
Binary files /dev/null and b/sound/instruments/harmonica/Fn4.mid differ
diff --git a/sound/instruments/harmonica/Fn5.mid b/sound/instruments/harmonica/Fn5.mid
new file mode 100644
index 00000000000..710b458d85b
Binary files /dev/null and b/sound/instruments/harmonica/Fn5.mid differ
diff --git a/sound/instruments/harmonica/Fn6.mid b/sound/instruments/harmonica/Fn6.mid
new file mode 100644
index 00000000000..44112e36595
Binary files /dev/null and b/sound/instruments/harmonica/Fn6.mid differ
diff --git a/sound/instruments/harmonica/Gb2.mid b/sound/instruments/harmonica/Gb2.mid
new file mode 100644
index 00000000000..8edd298ec13
Binary files /dev/null and b/sound/instruments/harmonica/Gb2.mid differ
diff --git a/sound/instruments/harmonica/Gb3.mid b/sound/instruments/harmonica/Gb3.mid
new file mode 100644
index 00000000000..438a939095a
Binary files /dev/null and b/sound/instruments/harmonica/Gb3.mid differ
diff --git a/sound/instruments/harmonica/Gb4.mid b/sound/instruments/harmonica/Gb4.mid
new file mode 100644
index 00000000000..7844063205c
Binary files /dev/null and b/sound/instruments/harmonica/Gb4.mid differ
diff --git a/sound/instruments/harmonica/Gb5.mid b/sound/instruments/harmonica/Gb5.mid
new file mode 100644
index 00000000000..4139bce10e0
Binary files /dev/null and b/sound/instruments/harmonica/Gb5.mid differ
diff --git a/sound/instruments/harmonica/Gb6.mid b/sound/instruments/harmonica/Gb6.mid
new file mode 100644
index 00000000000..e6b1a8fb897
Binary files /dev/null and b/sound/instruments/harmonica/Gb6.mid differ
diff --git a/sound/instruments/harmonica/Gn2.mid b/sound/instruments/harmonica/Gn2.mid
new file mode 100644
index 00000000000..d26e7c83af6
Binary files /dev/null and b/sound/instruments/harmonica/Gn2.mid differ
diff --git a/sound/instruments/harmonica/Gn3.mid b/sound/instruments/harmonica/Gn3.mid
new file mode 100644
index 00000000000..c741d556c9e
Binary files /dev/null and b/sound/instruments/harmonica/Gn3.mid differ
diff --git a/sound/instruments/harmonica/Gn4.mid b/sound/instruments/harmonica/Gn4.mid
new file mode 100644
index 00000000000..c6e7a3c9bb2
Binary files /dev/null and b/sound/instruments/harmonica/Gn4.mid differ
diff --git a/sound/instruments/harmonica/Gn5.mid b/sound/instruments/harmonica/Gn5.mid
new file mode 100644
index 00000000000..a9608e9d210
Binary files /dev/null and b/sound/instruments/harmonica/Gn5.mid differ
diff --git a/sound/instruments/harmonica/Gn6.mid b/sound/instruments/harmonica/Gn6.mid
new file mode 100644
index 00000000000..98f6d32bfc5
Binary files /dev/null and b/sound/instruments/harmonica/Gn6.mid differ
diff --git a/sound/piano/Ab1.ogg b/sound/instruments/piano/Ab1.ogg
similarity index 100%
rename from sound/piano/Ab1.ogg
rename to sound/instruments/piano/Ab1.ogg
diff --git a/sound/piano/Ab2.ogg b/sound/instruments/piano/Ab2.ogg
similarity index 100%
rename from sound/piano/Ab2.ogg
rename to sound/instruments/piano/Ab2.ogg
diff --git a/sound/piano/Ab3.ogg b/sound/instruments/piano/Ab3.ogg
similarity index 100%
rename from sound/piano/Ab3.ogg
rename to sound/instruments/piano/Ab3.ogg
diff --git a/sound/piano/Ab4.ogg b/sound/instruments/piano/Ab4.ogg
similarity index 100%
rename from sound/piano/Ab4.ogg
rename to sound/instruments/piano/Ab4.ogg
diff --git a/sound/piano/Ab5.ogg b/sound/instruments/piano/Ab5.ogg
similarity index 100%
rename from sound/piano/Ab5.ogg
rename to sound/instruments/piano/Ab5.ogg
diff --git a/sound/piano/Ab6.ogg b/sound/instruments/piano/Ab6.ogg
similarity index 100%
rename from sound/piano/Ab6.ogg
rename to sound/instruments/piano/Ab6.ogg
diff --git a/sound/piano/Ab7.ogg b/sound/instruments/piano/Ab7.ogg
similarity index 100%
rename from sound/piano/Ab7.ogg
rename to sound/instruments/piano/Ab7.ogg
diff --git a/sound/piano/Ab8.ogg b/sound/instruments/piano/Ab8.ogg
similarity index 100%
rename from sound/piano/Ab8.ogg
rename to sound/instruments/piano/Ab8.ogg
diff --git a/sound/piano/An1.ogg b/sound/instruments/piano/An1.ogg
similarity index 100%
rename from sound/piano/An1.ogg
rename to sound/instruments/piano/An1.ogg
diff --git a/sound/piano/An2.ogg b/sound/instruments/piano/An2.ogg
similarity index 100%
rename from sound/piano/An2.ogg
rename to sound/instruments/piano/An2.ogg
diff --git a/sound/piano/An3.ogg b/sound/instruments/piano/An3.ogg
similarity index 100%
rename from sound/piano/An3.ogg
rename to sound/instruments/piano/An3.ogg
diff --git a/sound/piano/An4.ogg b/sound/instruments/piano/An4.ogg
similarity index 100%
rename from sound/piano/An4.ogg
rename to sound/instruments/piano/An4.ogg
diff --git a/sound/piano/An5.ogg b/sound/instruments/piano/An5.ogg
similarity index 100%
rename from sound/piano/An5.ogg
rename to sound/instruments/piano/An5.ogg
diff --git a/sound/piano/An6.ogg b/sound/instruments/piano/An6.ogg
similarity index 100%
rename from sound/piano/An6.ogg
rename to sound/instruments/piano/An6.ogg
diff --git a/sound/piano/An7.ogg b/sound/instruments/piano/An7.ogg
similarity index 100%
rename from sound/piano/An7.ogg
rename to sound/instruments/piano/An7.ogg
diff --git a/sound/piano/An8.ogg b/sound/instruments/piano/An8.ogg
similarity index 100%
rename from sound/piano/An8.ogg
rename to sound/instruments/piano/An8.ogg
diff --git a/sound/piano/Bb1.ogg b/sound/instruments/piano/Bb1.ogg
similarity index 100%
rename from sound/piano/Bb1.ogg
rename to sound/instruments/piano/Bb1.ogg
diff --git a/sound/piano/Bb2.ogg b/sound/instruments/piano/Bb2.ogg
similarity index 100%
rename from sound/piano/Bb2.ogg
rename to sound/instruments/piano/Bb2.ogg
diff --git a/sound/piano/Bb3.ogg b/sound/instruments/piano/Bb3.ogg
similarity index 100%
rename from sound/piano/Bb3.ogg
rename to sound/instruments/piano/Bb3.ogg
diff --git a/sound/piano/Bb4.ogg b/sound/instruments/piano/Bb4.ogg
similarity index 100%
rename from sound/piano/Bb4.ogg
rename to sound/instruments/piano/Bb4.ogg
diff --git a/sound/piano/Bb5.ogg b/sound/instruments/piano/Bb5.ogg
similarity index 100%
rename from sound/piano/Bb5.ogg
rename to sound/instruments/piano/Bb5.ogg
diff --git a/sound/piano/Bb6.ogg b/sound/instruments/piano/Bb6.ogg
similarity index 100%
rename from sound/piano/Bb6.ogg
rename to sound/instruments/piano/Bb6.ogg
diff --git a/sound/piano/Bb7.ogg b/sound/instruments/piano/Bb7.ogg
similarity index 100%
rename from sound/piano/Bb7.ogg
rename to sound/instruments/piano/Bb7.ogg
diff --git a/sound/piano/Bb8.ogg b/sound/instruments/piano/Bb8.ogg
similarity index 100%
rename from sound/piano/Bb8.ogg
rename to sound/instruments/piano/Bb8.ogg
diff --git a/sound/piano/Bn1.ogg b/sound/instruments/piano/Bn1.ogg
similarity index 100%
rename from sound/piano/Bn1.ogg
rename to sound/instruments/piano/Bn1.ogg
diff --git a/sound/piano/Bn2.ogg b/sound/instruments/piano/Bn2.ogg
similarity index 100%
rename from sound/piano/Bn2.ogg
rename to sound/instruments/piano/Bn2.ogg
diff --git a/sound/piano/Bn3.ogg b/sound/instruments/piano/Bn3.ogg
similarity index 100%
rename from sound/piano/Bn3.ogg
rename to sound/instruments/piano/Bn3.ogg
diff --git a/sound/piano/Bn4.ogg b/sound/instruments/piano/Bn4.ogg
similarity index 100%
rename from sound/piano/Bn4.ogg
rename to sound/instruments/piano/Bn4.ogg
diff --git a/sound/piano/Bn5.ogg b/sound/instruments/piano/Bn5.ogg
similarity index 100%
rename from sound/piano/Bn5.ogg
rename to sound/instruments/piano/Bn5.ogg
diff --git a/sound/piano/Bn6.ogg b/sound/instruments/piano/Bn6.ogg
similarity index 100%
rename from sound/piano/Bn6.ogg
rename to sound/instruments/piano/Bn6.ogg
diff --git a/sound/piano/Bn7.ogg b/sound/instruments/piano/Bn7.ogg
similarity index 100%
rename from sound/piano/Bn7.ogg
rename to sound/instruments/piano/Bn7.ogg
diff --git a/sound/piano/Bn8.ogg b/sound/instruments/piano/Bn8.ogg
similarity index 100%
rename from sound/piano/Bn8.ogg
rename to sound/instruments/piano/Bn8.ogg
diff --git a/sound/piano/Cn1.ogg b/sound/instruments/piano/Cn1.ogg
similarity index 100%
rename from sound/piano/Cn1.ogg
rename to sound/instruments/piano/Cn1.ogg
diff --git a/sound/piano/Cn2.ogg b/sound/instruments/piano/Cn2.ogg
similarity index 100%
rename from sound/piano/Cn2.ogg
rename to sound/instruments/piano/Cn2.ogg
diff --git a/sound/piano/Cn3.ogg b/sound/instruments/piano/Cn3.ogg
similarity index 100%
rename from sound/piano/Cn3.ogg
rename to sound/instruments/piano/Cn3.ogg
diff --git a/sound/piano/Cn4.ogg b/sound/instruments/piano/Cn4.ogg
similarity index 100%
rename from sound/piano/Cn4.ogg
rename to sound/instruments/piano/Cn4.ogg
diff --git a/sound/piano/Cn5.ogg b/sound/instruments/piano/Cn5.ogg
similarity index 100%
rename from sound/piano/Cn5.ogg
rename to sound/instruments/piano/Cn5.ogg
diff --git a/sound/piano/Cn6.ogg b/sound/instruments/piano/Cn6.ogg
similarity index 100%
rename from sound/piano/Cn6.ogg
rename to sound/instruments/piano/Cn6.ogg
diff --git a/sound/piano/Cn7.ogg b/sound/instruments/piano/Cn7.ogg
similarity index 100%
rename from sound/piano/Cn7.ogg
rename to sound/instruments/piano/Cn7.ogg
diff --git a/sound/piano/Cn8.ogg b/sound/instruments/piano/Cn8.ogg
similarity index 100%
rename from sound/piano/Cn8.ogg
rename to sound/instruments/piano/Cn8.ogg
diff --git a/sound/piano/Cn9.ogg b/sound/instruments/piano/Cn9.ogg
similarity index 100%
rename from sound/piano/Cn9.ogg
rename to sound/instruments/piano/Cn9.ogg
diff --git a/sound/piano/Db1.ogg b/sound/instruments/piano/Db1.ogg
similarity index 100%
rename from sound/piano/Db1.ogg
rename to sound/instruments/piano/Db1.ogg
diff --git a/sound/piano/Db2.ogg b/sound/instruments/piano/Db2.ogg
similarity index 100%
rename from sound/piano/Db2.ogg
rename to sound/instruments/piano/Db2.ogg
diff --git a/sound/piano/Db3.ogg b/sound/instruments/piano/Db3.ogg
similarity index 100%
rename from sound/piano/Db3.ogg
rename to sound/instruments/piano/Db3.ogg
diff --git a/sound/piano/Db4.ogg b/sound/instruments/piano/Db4.ogg
similarity index 100%
rename from sound/piano/Db4.ogg
rename to sound/instruments/piano/Db4.ogg
diff --git a/sound/piano/Db5.ogg b/sound/instruments/piano/Db5.ogg
similarity index 100%
rename from sound/piano/Db5.ogg
rename to sound/instruments/piano/Db5.ogg
diff --git a/sound/piano/Db6.ogg b/sound/instruments/piano/Db6.ogg
similarity index 100%
rename from sound/piano/Db6.ogg
rename to sound/instruments/piano/Db6.ogg
diff --git a/sound/piano/Db7.ogg b/sound/instruments/piano/Db7.ogg
similarity index 100%
rename from sound/piano/Db7.ogg
rename to sound/instruments/piano/Db7.ogg
diff --git a/sound/piano/Db8.ogg b/sound/instruments/piano/Db8.ogg
similarity index 100%
rename from sound/piano/Db8.ogg
rename to sound/instruments/piano/Db8.ogg
diff --git a/sound/piano/Dn1.ogg b/sound/instruments/piano/Dn1.ogg
similarity index 100%
rename from sound/piano/Dn1.ogg
rename to sound/instruments/piano/Dn1.ogg
diff --git a/sound/piano/Dn2.ogg b/sound/instruments/piano/Dn2.ogg
similarity index 100%
rename from sound/piano/Dn2.ogg
rename to sound/instruments/piano/Dn2.ogg
diff --git a/sound/piano/Dn3.ogg b/sound/instruments/piano/Dn3.ogg
similarity index 100%
rename from sound/piano/Dn3.ogg
rename to sound/instruments/piano/Dn3.ogg
diff --git a/sound/piano/Dn4.ogg b/sound/instruments/piano/Dn4.ogg
similarity index 100%
rename from sound/piano/Dn4.ogg
rename to sound/instruments/piano/Dn4.ogg
diff --git a/sound/piano/Dn5.ogg b/sound/instruments/piano/Dn5.ogg
similarity index 100%
rename from sound/piano/Dn5.ogg
rename to sound/instruments/piano/Dn5.ogg
diff --git a/sound/piano/Dn6.ogg b/sound/instruments/piano/Dn6.ogg
similarity index 100%
rename from sound/piano/Dn6.ogg
rename to sound/instruments/piano/Dn6.ogg
diff --git a/sound/piano/Dn7.ogg b/sound/instruments/piano/Dn7.ogg
similarity index 100%
rename from sound/piano/Dn7.ogg
rename to sound/instruments/piano/Dn7.ogg
diff --git a/sound/piano/Dn8.ogg b/sound/instruments/piano/Dn8.ogg
similarity index 100%
rename from sound/piano/Dn8.ogg
rename to sound/instruments/piano/Dn8.ogg
diff --git a/sound/piano/Eb1.ogg b/sound/instruments/piano/Eb1.ogg
similarity index 100%
rename from sound/piano/Eb1.ogg
rename to sound/instruments/piano/Eb1.ogg
diff --git a/sound/piano/Eb2.ogg b/sound/instruments/piano/Eb2.ogg
similarity index 100%
rename from sound/piano/Eb2.ogg
rename to sound/instruments/piano/Eb2.ogg
diff --git a/sound/piano/Eb3.ogg b/sound/instruments/piano/Eb3.ogg
similarity index 100%
rename from sound/piano/Eb3.ogg
rename to sound/instruments/piano/Eb3.ogg
diff --git a/sound/piano/Eb4.ogg b/sound/instruments/piano/Eb4.ogg
similarity index 100%
rename from sound/piano/Eb4.ogg
rename to sound/instruments/piano/Eb4.ogg
diff --git a/sound/piano/Eb5.ogg b/sound/instruments/piano/Eb5.ogg
similarity index 100%
rename from sound/piano/Eb5.ogg
rename to sound/instruments/piano/Eb5.ogg
diff --git a/sound/piano/Eb6.ogg b/sound/instruments/piano/Eb6.ogg
similarity index 100%
rename from sound/piano/Eb6.ogg
rename to sound/instruments/piano/Eb6.ogg
diff --git a/sound/piano/Eb7.ogg b/sound/instruments/piano/Eb7.ogg
similarity index 100%
rename from sound/piano/Eb7.ogg
rename to sound/instruments/piano/Eb7.ogg
diff --git a/sound/piano/Eb8.ogg b/sound/instruments/piano/Eb8.ogg
similarity index 100%
rename from sound/piano/Eb8.ogg
rename to sound/instruments/piano/Eb8.ogg
diff --git a/sound/piano/En1.ogg b/sound/instruments/piano/En1.ogg
similarity index 100%
rename from sound/piano/En1.ogg
rename to sound/instruments/piano/En1.ogg
diff --git a/sound/piano/En2.ogg b/sound/instruments/piano/En2.ogg
similarity index 100%
rename from sound/piano/En2.ogg
rename to sound/instruments/piano/En2.ogg
diff --git a/sound/piano/En3.ogg b/sound/instruments/piano/En3.ogg
similarity index 100%
rename from sound/piano/En3.ogg
rename to sound/instruments/piano/En3.ogg
diff --git a/sound/piano/En4.ogg b/sound/instruments/piano/En4.ogg
similarity index 100%
rename from sound/piano/En4.ogg
rename to sound/instruments/piano/En4.ogg
diff --git a/sound/piano/En5.ogg b/sound/instruments/piano/En5.ogg
similarity index 100%
rename from sound/piano/En5.ogg
rename to sound/instruments/piano/En5.ogg
diff --git a/sound/piano/En6.ogg b/sound/instruments/piano/En6.ogg
similarity index 100%
rename from sound/piano/En6.ogg
rename to sound/instruments/piano/En6.ogg
diff --git a/sound/piano/En7.ogg b/sound/instruments/piano/En7.ogg
similarity index 100%
rename from sound/piano/En7.ogg
rename to sound/instruments/piano/En7.ogg
diff --git a/sound/piano/En8.ogg b/sound/instruments/piano/En8.ogg
similarity index 100%
rename from sound/piano/En8.ogg
rename to sound/instruments/piano/En8.ogg
diff --git a/sound/piano/Fn1.ogg b/sound/instruments/piano/Fn1.ogg
similarity index 100%
rename from sound/piano/Fn1.ogg
rename to sound/instruments/piano/Fn1.ogg
diff --git a/sound/piano/Fn2.ogg b/sound/instruments/piano/Fn2.ogg
similarity index 100%
rename from sound/piano/Fn2.ogg
rename to sound/instruments/piano/Fn2.ogg
diff --git a/sound/piano/Fn3.ogg b/sound/instruments/piano/Fn3.ogg
similarity index 100%
rename from sound/piano/Fn3.ogg
rename to sound/instruments/piano/Fn3.ogg
diff --git a/sound/piano/Fn4.ogg b/sound/instruments/piano/Fn4.ogg
similarity index 100%
rename from sound/piano/Fn4.ogg
rename to sound/instruments/piano/Fn4.ogg
diff --git a/sound/piano/Fn5.ogg b/sound/instruments/piano/Fn5.ogg
similarity index 100%
rename from sound/piano/Fn5.ogg
rename to sound/instruments/piano/Fn5.ogg
diff --git a/sound/piano/Fn6.ogg b/sound/instruments/piano/Fn6.ogg
similarity index 100%
rename from sound/piano/Fn6.ogg
rename to sound/instruments/piano/Fn6.ogg
diff --git a/sound/piano/Fn7.ogg b/sound/instruments/piano/Fn7.ogg
similarity index 100%
rename from sound/piano/Fn7.ogg
rename to sound/instruments/piano/Fn7.ogg
diff --git a/sound/piano/Fn8.ogg b/sound/instruments/piano/Fn8.ogg
similarity index 100%
rename from sound/piano/Fn8.ogg
rename to sound/instruments/piano/Fn8.ogg
diff --git a/sound/piano/Gb1.ogg b/sound/instruments/piano/Gb1.ogg
similarity index 100%
rename from sound/piano/Gb1.ogg
rename to sound/instruments/piano/Gb1.ogg
diff --git a/sound/piano/Gb2.ogg b/sound/instruments/piano/Gb2.ogg
similarity index 100%
rename from sound/piano/Gb2.ogg
rename to sound/instruments/piano/Gb2.ogg
diff --git a/sound/piano/Gb3.ogg b/sound/instruments/piano/Gb3.ogg
similarity index 100%
rename from sound/piano/Gb3.ogg
rename to sound/instruments/piano/Gb3.ogg
diff --git a/sound/piano/Gb4.ogg b/sound/instruments/piano/Gb4.ogg
similarity index 100%
rename from sound/piano/Gb4.ogg
rename to sound/instruments/piano/Gb4.ogg
diff --git a/sound/piano/Gb5.ogg b/sound/instruments/piano/Gb5.ogg
similarity index 100%
rename from sound/piano/Gb5.ogg
rename to sound/instruments/piano/Gb5.ogg
diff --git a/sound/piano/Gb6.ogg b/sound/instruments/piano/Gb6.ogg
similarity index 100%
rename from sound/piano/Gb6.ogg
rename to sound/instruments/piano/Gb6.ogg
diff --git a/sound/piano/Gb7.ogg b/sound/instruments/piano/Gb7.ogg
similarity index 100%
rename from sound/piano/Gb7.ogg
rename to sound/instruments/piano/Gb7.ogg
diff --git a/sound/piano/Gb8.ogg b/sound/instruments/piano/Gb8.ogg
similarity index 100%
rename from sound/piano/Gb8.ogg
rename to sound/instruments/piano/Gb8.ogg
diff --git a/sound/piano/Gn1.ogg b/sound/instruments/piano/Gn1.ogg
similarity index 100%
rename from sound/piano/Gn1.ogg
rename to sound/instruments/piano/Gn1.ogg
diff --git a/sound/piano/Gn2.ogg b/sound/instruments/piano/Gn2.ogg
similarity index 100%
rename from sound/piano/Gn2.ogg
rename to sound/instruments/piano/Gn2.ogg
diff --git a/sound/piano/Gn3.ogg b/sound/instruments/piano/Gn3.ogg
similarity index 100%
rename from sound/piano/Gn3.ogg
rename to sound/instruments/piano/Gn3.ogg
diff --git a/sound/piano/Gn4.ogg b/sound/instruments/piano/Gn4.ogg
similarity index 100%
rename from sound/piano/Gn4.ogg
rename to sound/instruments/piano/Gn4.ogg
diff --git a/sound/piano/Gn5.ogg b/sound/instruments/piano/Gn5.ogg
similarity index 100%
rename from sound/piano/Gn5.ogg
rename to sound/instruments/piano/Gn5.ogg
diff --git a/sound/piano/Gn6.ogg b/sound/instruments/piano/Gn6.ogg
similarity index 100%
rename from sound/piano/Gn6.ogg
rename to sound/instruments/piano/Gn6.ogg
diff --git a/sound/piano/Gn7.ogg b/sound/instruments/piano/Gn7.ogg
similarity index 100%
rename from sound/piano/Gn7.ogg
rename to sound/instruments/piano/Gn7.ogg
diff --git a/sound/piano/Gn8.ogg b/sound/instruments/piano/Gn8.ogg
similarity index 100%
rename from sound/piano/Gn8.ogg
rename to sound/instruments/piano/Gn8.ogg
diff --git a/sound/instruments/recorder/Ab2.mid b/sound/instruments/recorder/Ab2.mid
new file mode 100644
index 00000000000..2fb39fa140b
Binary files /dev/null and b/sound/instruments/recorder/Ab2.mid differ
diff --git a/sound/instruments/recorder/Ab3.mid b/sound/instruments/recorder/Ab3.mid
new file mode 100644
index 00000000000..7a04ef76019
Binary files /dev/null and b/sound/instruments/recorder/Ab3.mid differ
diff --git a/sound/instruments/recorder/Ab4.mid b/sound/instruments/recorder/Ab4.mid
new file mode 100644
index 00000000000..93e51322a02
Binary files /dev/null and b/sound/instruments/recorder/Ab4.mid differ
diff --git a/sound/instruments/recorder/Ab5.mid b/sound/instruments/recorder/Ab5.mid
new file mode 100644
index 00000000000..ad91ee6e0a3
Binary files /dev/null and b/sound/instruments/recorder/Ab5.mid differ
diff --git a/sound/instruments/recorder/Ab6.mid b/sound/instruments/recorder/Ab6.mid
new file mode 100644
index 00000000000..3376b0c0ee6
Binary files /dev/null and b/sound/instruments/recorder/Ab6.mid differ
diff --git a/sound/instruments/recorder/An2.mid b/sound/instruments/recorder/An2.mid
new file mode 100644
index 00000000000..d9e9c0e4c3c
Binary files /dev/null and b/sound/instruments/recorder/An2.mid differ
diff --git a/sound/instruments/recorder/An3.mid b/sound/instruments/recorder/An3.mid
new file mode 100644
index 00000000000..91aa5c253c7
Binary files /dev/null and b/sound/instruments/recorder/An3.mid differ
diff --git a/sound/instruments/recorder/An4.mid b/sound/instruments/recorder/An4.mid
new file mode 100644
index 00000000000..bbfba81a4a7
Binary files /dev/null and b/sound/instruments/recorder/An4.mid differ
diff --git a/sound/instruments/recorder/An5.mid b/sound/instruments/recorder/An5.mid
new file mode 100644
index 00000000000..ab73190d684
Binary files /dev/null and b/sound/instruments/recorder/An5.mid differ
diff --git a/sound/instruments/recorder/An6.mid b/sound/instruments/recorder/An6.mid
new file mode 100644
index 00000000000..8417f2916ff
Binary files /dev/null and b/sound/instruments/recorder/An6.mid differ
diff --git a/sound/instruments/recorder/Bb2.mid b/sound/instruments/recorder/Bb2.mid
new file mode 100644
index 00000000000..9ec20e3d2f3
Binary files /dev/null and b/sound/instruments/recorder/Bb2.mid differ
diff --git a/sound/instruments/recorder/Bb3.mid b/sound/instruments/recorder/Bb3.mid
new file mode 100644
index 00000000000..bd6fc036e99
Binary files /dev/null and b/sound/instruments/recorder/Bb3.mid differ
diff --git a/sound/instruments/recorder/Bb4.mid b/sound/instruments/recorder/Bb4.mid
new file mode 100644
index 00000000000..48f9db73fa0
Binary files /dev/null and b/sound/instruments/recorder/Bb4.mid differ
diff --git a/sound/instruments/recorder/Bb5.mid b/sound/instruments/recorder/Bb5.mid
new file mode 100644
index 00000000000..20ffe453eba
Binary files /dev/null and b/sound/instruments/recorder/Bb5.mid differ
diff --git a/sound/instruments/recorder/Bb6.mid b/sound/instruments/recorder/Bb6.mid
new file mode 100644
index 00000000000..954c1c20793
Binary files /dev/null and b/sound/instruments/recorder/Bb6.mid differ
diff --git a/sound/instruments/recorder/Bn2.mid b/sound/instruments/recorder/Bn2.mid
new file mode 100644
index 00000000000..ca1e63c25b4
Binary files /dev/null and b/sound/instruments/recorder/Bn2.mid differ
diff --git a/sound/instruments/recorder/Bn3.mid b/sound/instruments/recorder/Bn3.mid
new file mode 100644
index 00000000000..11b0c2fe374
Binary files /dev/null and b/sound/instruments/recorder/Bn3.mid differ
diff --git a/sound/instruments/recorder/Bn4.mid b/sound/instruments/recorder/Bn4.mid
new file mode 100644
index 00000000000..5b11df50ffd
Binary files /dev/null and b/sound/instruments/recorder/Bn4.mid differ
diff --git a/sound/instruments/recorder/Bn5.mid b/sound/instruments/recorder/Bn5.mid
new file mode 100644
index 00000000000..b353150df85
Binary files /dev/null and b/sound/instruments/recorder/Bn5.mid differ
diff --git a/sound/instruments/recorder/Bn6.mid b/sound/instruments/recorder/Bn6.mid
new file mode 100644
index 00000000000..cf69ce6d21d
Binary files /dev/null and b/sound/instruments/recorder/Bn6.mid differ
diff --git a/sound/instruments/recorder/Cn2.mid b/sound/instruments/recorder/Cn2.mid
new file mode 100644
index 00000000000..858ec955afd
Binary files /dev/null and b/sound/instruments/recorder/Cn2.mid differ
diff --git a/sound/instruments/recorder/Cn3.mid b/sound/instruments/recorder/Cn3.mid
new file mode 100644
index 00000000000..2c65b49f741
Binary files /dev/null and b/sound/instruments/recorder/Cn3.mid differ
diff --git a/sound/instruments/recorder/Cn4.mid b/sound/instruments/recorder/Cn4.mid
new file mode 100644
index 00000000000..9fc1fd5b5a8
Binary files /dev/null and b/sound/instruments/recorder/Cn4.mid differ
diff --git a/sound/instruments/recorder/Cn5.mid b/sound/instruments/recorder/Cn5.mid
new file mode 100644
index 00000000000..6a86a7e06f1
Binary files /dev/null and b/sound/instruments/recorder/Cn5.mid differ
diff --git a/sound/instruments/recorder/Cn6.mid b/sound/instruments/recorder/Cn6.mid
new file mode 100644
index 00000000000..43355e27c31
Binary files /dev/null and b/sound/instruments/recorder/Cn6.mid differ
diff --git a/sound/instruments/recorder/Cn7.mid b/sound/instruments/recorder/Cn7.mid
new file mode 100644
index 00000000000..ff5e08b0e5d
Binary files /dev/null and b/sound/instruments/recorder/Cn7.mid differ
diff --git a/sound/instruments/recorder/Db2.mid b/sound/instruments/recorder/Db2.mid
new file mode 100644
index 00000000000..1ac1299e6dd
Binary files /dev/null and b/sound/instruments/recorder/Db2.mid differ
diff --git a/sound/instruments/recorder/Db3.mid b/sound/instruments/recorder/Db3.mid
new file mode 100644
index 00000000000..7a45bdc91b8
Binary files /dev/null and b/sound/instruments/recorder/Db3.mid differ
diff --git a/sound/instruments/recorder/Db4.mid b/sound/instruments/recorder/Db4.mid
new file mode 100644
index 00000000000..6dca8557091
Binary files /dev/null and b/sound/instruments/recorder/Db4.mid differ
diff --git a/sound/instruments/recorder/Db5.mid b/sound/instruments/recorder/Db5.mid
new file mode 100644
index 00000000000..5d83733262a
Binary files /dev/null and b/sound/instruments/recorder/Db5.mid differ
diff --git a/sound/instruments/recorder/Db6.mid b/sound/instruments/recorder/Db6.mid
new file mode 100644
index 00000000000..3f45f77bcd2
Binary files /dev/null and b/sound/instruments/recorder/Db6.mid differ
diff --git a/sound/instruments/recorder/Db7.mid b/sound/instruments/recorder/Db7.mid
new file mode 100644
index 00000000000..d326ab7bd1a
Binary files /dev/null and b/sound/instruments/recorder/Db7.mid differ
diff --git a/sound/instruments/recorder/Dn2.mid b/sound/instruments/recorder/Dn2.mid
new file mode 100644
index 00000000000..8ddef0e0d04
Binary files /dev/null and b/sound/instruments/recorder/Dn2.mid differ
diff --git a/sound/instruments/recorder/Dn3.mid b/sound/instruments/recorder/Dn3.mid
new file mode 100644
index 00000000000..b11ff85aab5
Binary files /dev/null and b/sound/instruments/recorder/Dn3.mid differ
diff --git a/sound/instruments/recorder/Dn4.mid b/sound/instruments/recorder/Dn4.mid
new file mode 100644
index 00000000000..ae877932997
Binary files /dev/null and b/sound/instruments/recorder/Dn4.mid differ
diff --git a/sound/instruments/recorder/Dn5.mid b/sound/instruments/recorder/Dn5.mid
new file mode 100644
index 00000000000..440da3c7781
Binary files /dev/null and b/sound/instruments/recorder/Dn5.mid differ
diff --git a/sound/instruments/recorder/Dn6.mid b/sound/instruments/recorder/Dn6.mid
new file mode 100644
index 00000000000..d96623529fd
Binary files /dev/null and b/sound/instruments/recorder/Dn6.mid differ
diff --git a/sound/instruments/recorder/Eb2.mid b/sound/instruments/recorder/Eb2.mid
new file mode 100644
index 00000000000..5e5b8385f96
Binary files /dev/null and b/sound/instruments/recorder/Eb2.mid differ
diff --git a/sound/instruments/recorder/Eb3.mid b/sound/instruments/recorder/Eb3.mid
new file mode 100644
index 00000000000..8a907f6ebfe
Binary files /dev/null and b/sound/instruments/recorder/Eb3.mid differ
diff --git a/sound/instruments/recorder/Eb4.mid b/sound/instruments/recorder/Eb4.mid
new file mode 100644
index 00000000000..4cf1c0ed28c
Binary files /dev/null and b/sound/instruments/recorder/Eb4.mid differ
diff --git a/sound/instruments/recorder/Eb5.mid b/sound/instruments/recorder/Eb5.mid
new file mode 100644
index 00000000000..ea7c8983d38
Binary files /dev/null and b/sound/instruments/recorder/Eb5.mid differ
diff --git a/sound/instruments/recorder/Eb6.mid b/sound/instruments/recorder/Eb6.mid
new file mode 100644
index 00000000000..0c477b65fdc
Binary files /dev/null and b/sound/instruments/recorder/Eb6.mid differ
diff --git a/sound/instruments/recorder/En2.mid b/sound/instruments/recorder/En2.mid
new file mode 100644
index 00000000000..ff9a551a8e0
Binary files /dev/null and b/sound/instruments/recorder/En2.mid differ
diff --git a/sound/instruments/recorder/En3.mid b/sound/instruments/recorder/En3.mid
new file mode 100644
index 00000000000..fd192ab704f
Binary files /dev/null and b/sound/instruments/recorder/En3.mid differ
diff --git a/sound/instruments/recorder/En4.mid b/sound/instruments/recorder/En4.mid
new file mode 100644
index 00000000000..77c01ec6471
Binary files /dev/null and b/sound/instruments/recorder/En4.mid differ
diff --git a/sound/instruments/recorder/En5.mid b/sound/instruments/recorder/En5.mid
new file mode 100644
index 00000000000..be74f3f0972
Binary files /dev/null and b/sound/instruments/recorder/En5.mid differ
diff --git a/sound/instruments/recorder/En6.mid b/sound/instruments/recorder/En6.mid
new file mode 100644
index 00000000000..95365e9a264
Binary files /dev/null and b/sound/instruments/recorder/En6.mid differ
diff --git a/sound/instruments/recorder/Fn2.mid b/sound/instruments/recorder/Fn2.mid
new file mode 100644
index 00000000000..3a2563ea2ce
Binary files /dev/null and b/sound/instruments/recorder/Fn2.mid differ
diff --git a/sound/instruments/recorder/Fn3.mid b/sound/instruments/recorder/Fn3.mid
new file mode 100644
index 00000000000..3114cce6d81
Binary files /dev/null and b/sound/instruments/recorder/Fn3.mid differ
diff --git a/sound/instruments/recorder/Fn4.mid b/sound/instruments/recorder/Fn4.mid
new file mode 100644
index 00000000000..012754e474c
Binary files /dev/null and b/sound/instruments/recorder/Fn4.mid differ
diff --git a/sound/instruments/recorder/Fn5.mid b/sound/instruments/recorder/Fn5.mid
new file mode 100644
index 00000000000..83a83cc62e9
Binary files /dev/null and b/sound/instruments/recorder/Fn5.mid differ
diff --git a/sound/instruments/recorder/Fn6.mid b/sound/instruments/recorder/Fn6.mid
new file mode 100644
index 00000000000..9e7fbf85280
Binary files /dev/null and b/sound/instruments/recorder/Fn6.mid differ
diff --git a/sound/instruments/recorder/Gb2.mid b/sound/instruments/recorder/Gb2.mid
new file mode 100644
index 00000000000..639ea8a2d00
Binary files /dev/null and b/sound/instruments/recorder/Gb2.mid differ
diff --git a/sound/instruments/recorder/Gb3.mid b/sound/instruments/recorder/Gb3.mid
new file mode 100644
index 00000000000..b5b10b4993a
Binary files /dev/null and b/sound/instruments/recorder/Gb3.mid differ
diff --git a/sound/instruments/recorder/Gb4.mid b/sound/instruments/recorder/Gb4.mid
new file mode 100644
index 00000000000..4fdf67d9b99
Binary files /dev/null and b/sound/instruments/recorder/Gb4.mid differ
diff --git a/sound/instruments/recorder/Gb5.mid b/sound/instruments/recorder/Gb5.mid
new file mode 100644
index 00000000000..233260ecc17
Binary files /dev/null and b/sound/instruments/recorder/Gb5.mid differ
diff --git a/sound/instruments/recorder/Gb6.mid b/sound/instruments/recorder/Gb6.mid
new file mode 100644
index 00000000000..d594ae7c956
Binary files /dev/null and b/sound/instruments/recorder/Gb6.mid differ
diff --git a/sound/instruments/recorder/Gn2.mid b/sound/instruments/recorder/Gn2.mid
new file mode 100644
index 00000000000..2786935b6d2
Binary files /dev/null and b/sound/instruments/recorder/Gn2.mid differ
diff --git a/sound/instruments/recorder/Gn3.mid b/sound/instruments/recorder/Gn3.mid
new file mode 100644
index 00000000000..d1aae368ab4
Binary files /dev/null and b/sound/instruments/recorder/Gn3.mid differ
diff --git a/sound/instruments/recorder/Gn4.mid b/sound/instruments/recorder/Gn4.mid
new file mode 100644
index 00000000000..3308c871d48
Binary files /dev/null and b/sound/instruments/recorder/Gn4.mid differ
diff --git a/sound/instruments/recorder/Gn5.mid b/sound/instruments/recorder/Gn5.mid
new file mode 100644
index 00000000000..a46440992c8
Binary files /dev/null and b/sound/instruments/recorder/Gn5.mid differ
diff --git a/sound/instruments/recorder/Gn6.mid b/sound/instruments/recorder/Gn6.mid
new file mode 100644
index 00000000000..0f84be6cdc7
Binary files /dev/null and b/sound/instruments/recorder/Gn6.mid differ
diff --git a/sound/instruments/saxophone/Ab2.mid b/sound/instruments/saxophone/Ab2.mid
new file mode 100644
index 00000000000..3408aba1316
Binary files /dev/null and b/sound/instruments/saxophone/Ab2.mid differ
diff --git a/sound/instruments/saxophone/Ab3.mid b/sound/instruments/saxophone/Ab3.mid
new file mode 100644
index 00000000000..e469c51b65b
Binary files /dev/null and b/sound/instruments/saxophone/Ab3.mid differ
diff --git a/sound/instruments/saxophone/Ab4.mid b/sound/instruments/saxophone/Ab4.mid
new file mode 100644
index 00000000000..6ee2a9e41be
Binary files /dev/null and b/sound/instruments/saxophone/Ab4.mid differ
diff --git a/sound/instruments/saxophone/Ab5.mid b/sound/instruments/saxophone/Ab5.mid
new file mode 100644
index 00000000000..40b60e31715
Binary files /dev/null and b/sound/instruments/saxophone/Ab5.mid differ
diff --git a/sound/instruments/saxophone/Ab6.mid b/sound/instruments/saxophone/Ab6.mid
new file mode 100644
index 00000000000..d38a8a6c714
Binary files /dev/null and b/sound/instruments/saxophone/Ab6.mid differ
diff --git a/sound/instruments/saxophone/An2.mid b/sound/instruments/saxophone/An2.mid
new file mode 100644
index 00000000000..d481ec5a450
Binary files /dev/null and b/sound/instruments/saxophone/An2.mid differ
diff --git a/sound/instruments/saxophone/An3.mid b/sound/instruments/saxophone/An3.mid
new file mode 100644
index 00000000000..744579fb4b6
Binary files /dev/null and b/sound/instruments/saxophone/An3.mid differ
diff --git a/sound/instruments/saxophone/An4.mid b/sound/instruments/saxophone/An4.mid
new file mode 100644
index 00000000000..1885ad32228
Binary files /dev/null and b/sound/instruments/saxophone/An4.mid differ
diff --git a/sound/instruments/saxophone/An5.mid b/sound/instruments/saxophone/An5.mid
new file mode 100644
index 00000000000..23cf20713cf
Binary files /dev/null and b/sound/instruments/saxophone/An5.mid differ
diff --git a/sound/instruments/saxophone/An6.mid b/sound/instruments/saxophone/An6.mid
new file mode 100644
index 00000000000..0c94d822557
Binary files /dev/null and b/sound/instruments/saxophone/An6.mid differ
diff --git a/sound/instruments/saxophone/Bb2.mid b/sound/instruments/saxophone/Bb2.mid
new file mode 100644
index 00000000000..d30855aaee1
Binary files /dev/null and b/sound/instruments/saxophone/Bb2.mid differ
diff --git a/sound/instruments/saxophone/Bb3.mid b/sound/instruments/saxophone/Bb3.mid
new file mode 100644
index 00000000000..2354e4c3e87
Binary files /dev/null and b/sound/instruments/saxophone/Bb3.mid differ
diff --git a/sound/instruments/saxophone/Bb4.mid b/sound/instruments/saxophone/Bb4.mid
new file mode 100644
index 00000000000..5ac9de9585d
Binary files /dev/null and b/sound/instruments/saxophone/Bb4.mid differ
diff --git a/sound/instruments/saxophone/Bb5.mid b/sound/instruments/saxophone/Bb5.mid
new file mode 100644
index 00000000000..347560269eb
Binary files /dev/null and b/sound/instruments/saxophone/Bb5.mid differ
diff --git a/sound/instruments/saxophone/Bb6.mid b/sound/instruments/saxophone/Bb6.mid
new file mode 100644
index 00000000000..335a8df26c3
Binary files /dev/null and b/sound/instruments/saxophone/Bb6.mid differ
diff --git a/sound/instruments/saxophone/Bn2.mid b/sound/instruments/saxophone/Bn2.mid
new file mode 100644
index 00000000000..9f215b5c7ce
Binary files /dev/null and b/sound/instruments/saxophone/Bn2.mid differ
diff --git a/sound/instruments/saxophone/Bn3.mid b/sound/instruments/saxophone/Bn3.mid
new file mode 100644
index 00000000000..1d28aca7076
Binary files /dev/null and b/sound/instruments/saxophone/Bn3.mid differ
diff --git a/sound/instruments/saxophone/Bn4.mid b/sound/instruments/saxophone/Bn4.mid
new file mode 100644
index 00000000000..5c8bdf9775e
Binary files /dev/null and b/sound/instruments/saxophone/Bn4.mid differ
diff --git a/sound/instruments/saxophone/Bn5.mid b/sound/instruments/saxophone/Bn5.mid
new file mode 100644
index 00000000000..e74f1f7415c
Binary files /dev/null and b/sound/instruments/saxophone/Bn5.mid differ
diff --git a/sound/instruments/saxophone/Bn6.mid b/sound/instruments/saxophone/Bn6.mid
new file mode 100644
index 00000000000..59d6e12a145
Binary files /dev/null and b/sound/instruments/saxophone/Bn6.mid differ
diff --git a/sound/instruments/saxophone/Cn2.mid b/sound/instruments/saxophone/Cn2.mid
new file mode 100644
index 00000000000..7a816e603b8
Binary files /dev/null and b/sound/instruments/saxophone/Cn2.mid differ
diff --git a/sound/instruments/saxophone/Cn3.mid b/sound/instruments/saxophone/Cn3.mid
new file mode 100644
index 00000000000..1a575b087dc
Binary files /dev/null and b/sound/instruments/saxophone/Cn3.mid differ
diff --git a/sound/instruments/saxophone/Cn4.mid b/sound/instruments/saxophone/Cn4.mid
new file mode 100644
index 00000000000..56377f1aed9
Binary files /dev/null and b/sound/instruments/saxophone/Cn4.mid differ
diff --git a/sound/instruments/saxophone/Cn5.mid b/sound/instruments/saxophone/Cn5.mid
new file mode 100644
index 00000000000..cc023521272
Binary files /dev/null and b/sound/instruments/saxophone/Cn5.mid differ
diff --git a/sound/instruments/saxophone/Cn6.mid b/sound/instruments/saxophone/Cn6.mid
new file mode 100644
index 00000000000..ed149684846
Binary files /dev/null and b/sound/instruments/saxophone/Cn6.mid differ
diff --git a/sound/instruments/saxophone/Db2.mid b/sound/instruments/saxophone/Db2.mid
new file mode 100644
index 00000000000..3ccbf59863c
Binary files /dev/null and b/sound/instruments/saxophone/Db2.mid differ
diff --git a/sound/instruments/saxophone/Db3.mid b/sound/instruments/saxophone/Db3.mid
new file mode 100644
index 00000000000..0d10fa08d80
Binary files /dev/null and b/sound/instruments/saxophone/Db3.mid differ
diff --git a/sound/instruments/saxophone/Db4.mid b/sound/instruments/saxophone/Db4.mid
new file mode 100644
index 00000000000..2684d9bd02d
Binary files /dev/null and b/sound/instruments/saxophone/Db4.mid differ
diff --git a/sound/instruments/saxophone/Db5.mid b/sound/instruments/saxophone/Db5.mid
new file mode 100644
index 00000000000..8380516db07
Binary files /dev/null and b/sound/instruments/saxophone/Db5.mid differ
diff --git a/sound/instruments/saxophone/Db6.mid b/sound/instruments/saxophone/Db6.mid
new file mode 100644
index 00000000000..29f95c9e0c8
Binary files /dev/null and b/sound/instruments/saxophone/Db6.mid differ
diff --git a/sound/instruments/saxophone/Dn2.mid b/sound/instruments/saxophone/Dn2.mid
new file mode 100644
index 00000000000..19cf21557b4
Binary files /dev/null and b/sound/instruments/saxophone/Dn2.mid differ
diff --git a/sound/instruments/saxophone/Dn3.mid b/sound/instruments/saxophone/Dn3.mid
new file mode 100644
index 00000000000..24077502dd0
Binary files /dev/null and b/sound/instruments/saxophone/Dn3.mid differ
diff --git a/sound/instruments/saxophone/Dn4.mid b/sound/instruments/saxophone/Dn4.mid
new file mode 100644
index 00000000000..5208e98b43f
Binary files /dev/null and b/sound/instruments/saxophone/Dn4.mid differ
diff --git a/sound/instruments/saxophone/Dn5.mid b/sound/instruments/saxophone/Dn5.mid
new file mode 100644
index 00000000000..cb40d8ca9c2
Binary files /dev/null and b/sound/instruments/saxophone/Dn5.mid differ
diff --git a/sound/instruments/saxophone/Dn6.mid b/sound/instruments/saxophone/Dn6.mid
new file mode 100644
index 00000000000..f18bcbb6d7a
Binary files /dev/null and b/sound/instruments/saxophone/Dn6.mid differ
diff --git a/sound/instruments/saxophone/Eb2.mid b/sound/instruments/saxophone/Eb2.mid
new file mode 100644
index 00000000000..967622de3f0
Binary files /dev/null and b/sound/instruments/saxophone/Eb2.mid differ
diff --git a/sound/instruments/saxophone/Eb3.mid b/sound/instruments/saxophone/Eb3.mid
new file mode 100644
index 00000000000..160ed39a06b
Binary files /dev/null and b/sound/instruments/saxophone/Eb3.mid differ
diff --git a/sound/instruments/saxophone/Eb4.mid b/sound/instruments/saxophone/Eb4.mid
new file mode 100644
index 00000000000..f125b54a120
Binary files /dev/null and b/sound/instruments/saxophone/Eb4.mid differ
diff --git a/sound/instruments/saxophone/Eb5.mid b/sound/instruments/saxophone/Eb5.mid
new file mode 100644
index 00000000000..7cde98bb88f
Binary files /dev/null and b/sound/instruments/saxophone/Eb5.mid differ
diff --git a/sound/instruments/saxophone/Eb6.mid b/sound/instruments/saxophone/Eb6.mid
new file mode 100644
index 00000000000..f1804b61657
Binary files /dev/null and b/sound/instruments/saxophone/Eb6.mid differ
diff --git a/sound/instruments/saxophone/En2.mid b/sound/instruments/saxophone/En2.mid
new file mode 100644
index 00000000000..5f8168a3cbd
Binary files /dev/null and b/sound/instruments/saxophone/En2.mid differ
diff --git a/sound/instruments/saxophone/En3.mid b/sound/instruments/saxophone/En3.mid
new file mode 100644
index 00000000000..1762e61de97
Binary files /dev/null and b/sound/instruments/saxophone/En3.mid differ
diff --git a/sound/instruments/saxophone/En4.mid b/sound/instruments/saxophone/En4.mid
new file mode 100644
index 00000000000..0304e520a0f
Binary files /dev/null and b/sound/instruments/saxophone/En4.mid differ
diff --git a/sound/instruments/saxophone/En5.mid b/sound/instruments/saxophone/En5.mid
new file mode 100644
index 00000000000..40d32ab74ac
Binary files /dev/null and b/sound/instruments/saxophone/En5.mid differ
diff --git a/sound/instruments/saxophone/En6.mid b/sound/instruments/saxophone/En6.mid
new file mode 100644
index 00000000000..5bdd835c5c4
Binary files /dev/null and b/sound/instruments/saxophone/En6.mid differ
diff --git a/sound/instruments/saxophone/Fn2.mid b/sound/instruments/saxophone/Fn2.mid
new file mode 100644
index 00000000000..9260b884d8a
Binary files /dev/null and b/sound/instruments/saxophone/Fn2.mid differ
diff --git a/sound/instruments/saxophone/Fn3.mid b/sound/instruments/saxophone/Fn3.mid
new file mode 100644
index 00000000000..fb22409dcc8
Binary files /dev/null and b/sound/instruments/saxophone/Fn3.mid differ
diff --git a/sound/instruments/saxophone/Fn4.mid b/sound/instruments/saxophone/Fn4.mid
new file mode 100644
index 00000000000..fb4ffd3a593
Binary files /dev/null and b/sound/instruments/saxophone/Fn4.mid differ
diff --git a/sound/instruments/saxophone/Fn5.mid b/sound/instruments/saxophone/Fn5.mid
new file mode 100644
index 00000000000..9b7241e59e3
Binary files /dev/null and b/sound/instruments/saxophone/Fn5.mid differ
diff --git a/sound/instruments/saxophone/Fn6.mid b/sound/instruments/saxophone/Fn6.mid
new file mode 100644
index 00000000000..c402032321a
Binary files /dev/null and b/sound/instruments/saxophone/Fn6.mid differ
diff --git a/sound/instruments/saxophone/Gb2.mid b/sound/instruments/saxophone/Gb2.mid
new file mode 100644
index 00000000000..2a872b5dec5
Binary files /dev/null and b/sound/instruments/saxophone/Gb2.mid differ
diff --git a/sound/instruments/saxophone/Gb3.mid b/sound/instruments/saxophone/Gb3.mid
new file mode 100644
index 00000000000..5e5e5322826
Binary files /dev/null and b/sound/instruments/saxophone/Gb3.mid differ
diff --git a/sound/instruments/saxophone/Gb4.mid b/sound/instruments/saxophone/Gb4.mid
new file mode 100644
index 00000000000..758125de3e6
Binary files /dev/null and b/sound/instruments/saxophone/Gb4.mid differ
diff --git a/sound/instruments/saxophone/Gb5.mid b/sound/instruments/saxophone/Gb5.mid
new file mode 100644
index 00000000000..4afd8c65c90
Binary files /dev/null and b/sound/instruments/saxophone/Gb5.mid differ
diff --git a/sound/instruments/saxophone/Gb6.mid b/sound/instruments/saxophone/Gb6.mid
new file mode 100644
index 00000000000..a8f1d2107e4
Binary files /dev/null and b/sound/instruments/saxophone/Gb6.mid differ
diff --git a/sound/instruments/saxophone/Gn2.mid b/sound/instruments/saxophone/Gn2.mid
new file mode 100644
index 00000000000..750be55f685
Binary files /dev/null and b/sound/instruments/saxophone/Gn2.mid differ
diff --git a/sound/instruments/saxophone/Gn4.mid b/sound/instruments/saxophone/Gn4.mid
new file mode 100644
index 00000000000..2892048d15e
Binary files /dev/null and b/sound/instruments/saxophone/Gn4.mid differ
diff --git a/sound/instruments/saxophone/Gn5.mid b/sound/instruments/saxophone/Gn5.mid
new file mode 100644
index 00000000000..8ef4ceffe0d
Binary files /dev/null and b/sound/instruments/saxophone/Gn5.mid differ
diff --git a/sound/instruments/saxophone/Gn6.mid b/sound/instruments/saxophone/Gn6.mid
new file mode 100644
index 00000000000..26cbd145668
Binary files /dev/null and b/sound/instruments/saxophone/Gn6.mid differ
diff --git a/sound/instruments/trombone/Ab2.mid b/sound/instruments/trombone/Ab2.mid
new file mode 100644
index 00000000000..5802027e672
Binary files /dev/null and b/sound/instruments/trombone/Ab2.mid differ
diff --git a/sound/instruments/trombone/Ab3.mid b/sound/instruments/trombone/Ab3.mid
new file mode 100644
index 00000000000..9e6dc5559f2
Binary files /dev/null and b/sound/instruments/trombone/Ab3.mid differ
diff --git a/sound/instruments/trombone/Ab4.mid b/sound/instruments/trombone/Ab4.mid
new file mode 100644
index 00000000000..b5bcb5fc93d
Binary files /dev/null and b/sound/instruments/trombone/Ab4.mid differ
diff --git a/sound/instruments/trombone/Ab5.mid b/sound/instruments/trombone/Ab5.mid
new file mode 100644
index 00000000000..e42b8f6f6f1
Binary files /dev/null and b/sound/instruments/trombone/Ab5.mid differ
diff --git a/sound/instruments/trombone/Ab6.mid b/sound/instruments/trombone/Ab6.mid
new file mode 100644
index 00000000000..40d6d6b7b92
Binary files /dev/null and b/sound/instruments/trombone/Ab6.mid differ
diff --git a/sound/instruments/trombone/An2.mid b/sound/instruments/trombone/An2.mid
new file mode 100644
index 00000000000..30523e3cc3d
Binary files /dev/null and b/sound/instruments/trombone/An2.mid differ
diff --git a/sound/instruments/trombone/An3.mid b/sound/instruments/trombone/An3.mid
new file mode 100644
index 00000000000..05d4d28e2e4
Binary files /dev/null and b/sound/instruments/trombone/An3.mid differ
diff --git a/sound/instruments/trombone/An4.mid b/sound/instruments/trombone/An4.mid
new file mode 100644
index 00000000000..99d1a22bc72
Binary files /dev/null and b/sound/instruments/trombone/An4.mid differ
diff --git a/sound/instruments/trombone/An5.mid b/sound/instruments/trombone/An5.mid
new file mode 100644
index 00000000000..99978bf4bdc
Binary files /dev/null and b/sound/instruments/trombone/An5.mid differ
diff --git a/sound/instruments/trombone/An6.mid b/sound/instruments/trombone/An6.mid
new file mode 100644
index 00000000000..11e6557fe82
Binary files /dev/null and b/sound/instruments/trombone/An6.mid differ
diff --git a/sound/instruments/trombone/Bb2.mid b/sound/instruments/trombone/Bb2.mid
new file mode 100644
index 00000000000..e1068d551c1
Binary files /dev/null and b/sound/instruments/trombone/Bb2.mid differ
diff --git a/sound/instruments/trombone/Bb3.mid b/sound/instruments/trombone/Bb3.mid
new file mode 100644
index 00000000000..ce9a57613f0
Binary files /dev/null and b/sound/instruments/trombone/Bb3.mid differ
diff --git a/sound/instruments/trombone/Bb4.mid b/sound/instruments/trombone/Bb4.mid
new file mode 100644
index 00000000000..5dfdf26ec5d
Binary files /dev/null and b/sound/instruments/trombone/Bb4.mid differ
diff --git a/sound/instruments/trombone/Bb5.mid b/sound/instruments/trombone/Bb5.mid
new file mode 100644
index 00000000000..ea74dc444b9
Binary files /dev/null and b/sound/instruments/trombone/Bb5.mid differ
diff --git a/sound/instruments/trombone/Bb6.mid b/sound/instruments/trombone/Bb6.mid
new file mode 100644
index 00000000000..e30707df542
Binary files /dev/null and b/sound/instruments/trombone/Bb6.mid differ
diff --git a/sound/instruments/trombone/Bn2.mid b/sound/instruments/trombone/Bn2.mid
new file mode 100644
index 00000000000..7c89dff091c
Binary files /dev/null and b/sound/instruments/trombone/Bn2.mid differ
diff --git a/sound/instruments/trombone/Bn3.mid b/sound/instruments/trombone/Bn3.mid
new file mode 100644
index 00000000000..df92f0e4e32
Binary files /dev/null and b/sound/instruments/trombone/Bn3.mid differ
diff --git a/sound/instruments/trombone/Bn4.mid b/sound/instruments/trombone/Bn4.mid
new file mode 100644
index 00000000000..c46cb4d6a78
Binary files /dev/null and b/sound/instruments/trombone/Bn4.mid differ
diff --git a/sound/instruments/trombone/Bn5.mid b/sound/instruments/trombone/Bn5.mid
new file mode 100644
index 00000000000..f09d981ac05
Binary files /dev/null and b/sound/instruments/trombone/Bn5.mid differ
diff --git a/sound/instruments/trombone/Bn6.mid b/sound/instruments/trombone/Bn6.mid
new file mode 100644
index 00000000000..c23f2435681
Binary files /dev/null and b/sound/instruments/trombone/Bn6.mid differ
diff --git a/sound/instruments/trombone/Cn2.mid b/sound/instruments/trombone/Cn2.mid
new file mode 100644
index 00000000000..3a24f39ff91
Binary files /dev/null and b/sound/instruments/trombone/Cn2.mid differ
diff --git a/sound/instruments/trombone/Cn3.mid b/sound/instruments/trombone/Cn3.mid
new file mode 100644
index 00000000000..d24dd658b66
Binary files /dev/null and b/sound/instruments/trombone/Cn3.mid differ
diff --git a/sound/instruments/trombone/Cn4.mid b/sound/instruments/trombone/Cn4.mid
new file mode 100644
index 00000000000..756ba0ab8d2
Binary files /dev/null and b/sound/instruments/trombone/Cn4.mid differ
diff --git a/sound/instruments/trombone/Cn5.mid b/sound/instruments/trombone/Cn5.mid
new file mode 100644
index 00000000000..3d5d0a3446d
Binary files /dev/null and b/sound/instruments/trombone/Cn5.mid differ
diff --git a/sound/instruments/trombone/Cn6.mid b/sound/instruments/trombone/Cn6.mid
new file mode 100644
index 00000000000..605eec24ee1
Binary files /dev/null and b/sound/instruments/trombone/Cn6.mid differ
diff --git a/sound/instruments/trombone/Db2.mid b/sound/instruments/trombone/Db2.mid
new file mode 100644
index 00000000000..ef959df821c
Binary files /dev/null and b/sound/instruments/trombone/Db2.mid differ
diff --git a/sound/instruments/trombone/Db3.mid b/sound/instruments/trombone/Db3.mid
new file mode 100644
index 00000000000..664d67be67d
Binary files /dev/null and b/sound/instruments/trombone/Db3.mid differ
diff --git a/sound/instruments/trombone/Db4.mid b/sound/instruments/trombone/Db4.mid
new file mode 100644
index 00000000000..2b4e028f409
Binary files /dev/null and b/sound/instruments/trombone/Db4.mid differ
diff --git a/sound/instruments/trombone/Db5.mid b/sound/instruments/trombone/Db5.mid
new file mode 100644
index 00000000000..2748ba3cd4c
Binary files /dev/null and b/sound/instruments/trombone/Db5.mid differ
diff --git a/sound/instruments/trombone/Db6.mid b/sound/instruments/trombone/Db6.mid
new file mode 100644
index 00000000000..d7737f180ac
Binary files /dev/null and b/sound/instruments/trombone/Db6.mid differ
diff --git a/sound/instruments/trombone/Dn2.mid b/sound/instruments/trombone/Dn2.mid
new file mode 100644
index 00000000000..cddd3ce5bd8
Binary files /dev/null and b/sound/instruments/trombone/Dn2.mid differ
diff --git a/sound/instruments/trombone/Dn3.mid b/sound/instruments/trombone/Dn3.mid
new file mode 100644
index 00000000000..3555246d9d3
Binary files /dev/null and b/sound/instruments/trombone/Dn3.mid differ
diff --git a/sound/instruments/trombone/Dn4.mid b/sound/instruments/trombone/Dn4.mid
new file mode 100644
index 00000000000..51f80eb7f03
Binary files /dev/null and b/sound/instruments/trombone/Dn4.mid differ
diff --git a/sound/instruments/trombone/Dn5.mid b/sound/instruments/trombone/Dn5.mid
new file mode 100644
index 00000000000..d91a461b89a
Binary files /dev/null and b/sound/instruments/trombone/Dn5.mid differ
diff --git a/sound/instruments/trombone/Dn6.mid b/sound/instruments/trombone/Dn6.mid
new file mode 100644
index 00000000000..d2dc6f0e217
Binary files /dev/null and b/sound/instruments/trombone/Dn6.mid differ
diff --git a/sound/instruments/trombone/Eb2.mid b/sound/instruments/trombone/Eb2.mid
new file mode 100644
index 00000000000..7658c914be6
Binary files /dev/null and b/sound/instruments/trombone/Eb2.mid differ
diff --git a/sound/instruments/trombone/Eb3.mid b/sound/instruments/trombone/Eb3.mid
new file mode 100644
index 00000000000..5d781dd543d
Binary files /dev/null and b/sound/instruments/trombone/Eb3.mid differ
diff --git a/sound/instruments/trombone/Eb4.mid b/sound/instruments/trombone/Eb4.mid
new file mode 100644
index 00000000000..6ee879de04a
Binary files /dev/null and b/sound/instruments/trombone/Eb4.mid differ
diff --git a/sound/instruments/trombone/Eb5.mid b/sound/instruments/trombone/Eb5.mid
new file mode 100644
index 00000000000..a2278114546
Binary files /dev/null and b/sound/instruments/trombone/Eb5.mid differ
diff --git a/sound/instruments/trombone/Eb6.mid b/sound/instruments/trombone/Eb6.mid
new file mode 100644
index 00000000000..a9ffc37b89b
Binary files /dev/null and b/sound/instruments/trombone/Eb6.mid differ
diff --git a/sound/instruments/trombone/En2.mid b/sound/instruments/trombone/En2.mid
new file mode 100644
index 00000000000..f47e4460a12
Binary files /dev/null and b/sound/instruments/trombone/En2.mid differ
diff --git a/sound/instruments/trombone/En3.mid b/sound/instruments/trombone/En3.mid
new file mode 100644
index 00000000000..5f78d13af97
Binary files /dev/null and b/sound/instruments/trombone/En3.mid differ
diff --git a/sound/instruments/trombone/En4.mid b/sound/instruments/trombone/En4.mid
new file mode 100644
index 00000000000..687a503af0b
Binary files /dev/null and b/sound/instruments/trombone/En4.mid differ
diff --git a/sound/instruments/trombone/En5.mid b/sound/instruments/trombone/En5.mid
new file mode 100644
index 00000000000..134bf651b60
Binary files /dev/null and b/sound/instruments/trombone/En5.mid differ
diff --git a/sound/instruments/trombone/En6.mid b/sound/instruments/trombone/En6.mid
new file mode 100644
index 00000000000..c852475e1b1
Binary files /dev/null and b/sound/instruments/trombone/En6.mid differ
diff --git a/sound/instruments/trombone/Fn2.mid b/sound/instruments/trombone/Fn2.mid
new file mode 100644
index 00000000000..f9bc985538c
Binary files /dev/null and b/sound/instruments/trombone/Fn2.mid differ
diff --git a/sound/instruments/trombone/Fn3.mid b/sound/instruments/trombone/Fn3.mid
new file mode 100644
index 00000000000..cd5656da075
Binary files /dev/null and b/sound/instruments/trombone/Fn3.mid differ
diff --git a/sound/instruments/trombone/Fn4.mid b/sound/instruments/trombone/Fn4.mid
new file mode 100644
index 00000000000..c677ade9b17
Binary files /dev/null and b/sound/instruments/trombone/Fn4.mid differ
diff --git a/sound/instruments/trombone/Fn5.mid b/sound/instruments/trombone/Fn5.mid
new file mode 100644
index 00000000000..f610ce04c6f
Binary files /dev/null and b/sound/instruments/trombone/Fn5.mid differ
diff --git a/sound/instruments/trombone/Fn6.mid b/sound/instruments/trombone/Fn6.mid
new file mode 100644
index 00000000000..07382533cab
Binary files /dev/null and b/sound/instruments/trombone/Fn6.mid differ
diff --git a/sound/instruments/trombone/Gb2.mid b/sound/instruments/trombone/Gb2.mid
new file mode 100644
index 00000000000..d506f40642b
Binary files /dev/null and b/sound/instruments/trombone/Gb2.mid differ
diff --git a/sound/instruments/trombone/Gb3.mid b/sound/instruments/trombone/Gb3.mid
new file mode 100644
index 00000000000..fe18266802c
Binary files /dev/null and b/sound/instruments/trombone/Gb3.mid differ
diff --git a/sound/instruments/trombone/Gb4.mid b/sound/instruments/trombone/Gb4.mid
new file mode 100644
index 00000000000..7a22419215f
Binary files /dev/null and b/sound/instruments/trombone/Gb4.mid differ
diff --git a/sound/instruments/trombone/Gb5.mid b/sound/instruments/trombone/Gb5.mid
new file mode 100644
index 00000000000..7733d574e84
Binary files /dev/null and b/sound/instruments/trombone/Gb5.mid differ
diff --git a/sound/instruments/trombone/Gb6.mid b/sound/instruments/trombone/Gb6.mid
new file mode 100644
index 00000000000..3a6e4893b4d
Binary files /dev/null and b/sound/instruments/trombone/Gb6.mid differ
diff --git a/sound/instruments/trombone/Gn2.mid b/sound/instruments/trombone/Gn2.mid
new file mode 100644
index 00000000000..cdebb6bc0a3
Binary files /dev/null and b/sound/instruments/trombone/Gn2.mid differ
diff --git a/sound/instruments/trombone/Gn3.mid b/sound/instruments/trombone/Gn3.mid
new file mode 100644
index 00000000000..8c915effeb3
Binary files /dev/null and b/sound/instruments/trombone/Gn3.mid differ
diff --git a/sound/instruments/trombone/Gn4.mid b/sound/instruments/trombone/Gn4.mid
new file mode 100644
index 00000000000..1ddcaa30819
Binary files /dev/null and b/sound/instruments/trombone/Gn4.mid differ
diff --git a/sound/instruments/trombone/Gn5.mid b/sound/instruments/trombone/Gn5.mid
new file mode 100644
index 00000000000..ba787045f01
Binary files /dev/null and b/sound/instruments/trombone/Gn5.mid differ
diff --git a/sound/instruments/trombone/Gn6.mid b/sound/instruments/trombone/Gn6.mid
new file mode 100644
index 00000000000..b2e6f3f13d6
Binary files /dev/null and b/sound/instruments/trombone/Gn6.mid differ
diff --git a/sound/violin/Ab3.ogg b/sound/instruments/violin/Ab3.ogg
similarity index 100%
rename from sound/violin/Ab3.ogg
rename to sound/instruments/violin/Ab3.ogg
diff --git a/sound/violin/Ab4.ogg b/sound/instruments/violin/Ab4.ogg
similarity index 100%
rename from sound/violin/Ab4.ogg
rename to sound/instruments/violin/Ab4.ogg
diff --git a/sound/violin/Ab5.ogg b/sound/instruments/violin/Ab5.ogg
similarity index 100%
rename from sound/violin/Ab5.ogg
rename to sound/instruments/violin/Ab5.ogg
diff --git a/sound/violin/Ab6.ogg b/sound/instruments/violin/Ab6.ogg
similarity index 100%
rename from sound/violin/Ab6.ogg
rename to sound/instruments/violin/Ab6.ogg
diff --git a/sound/violin/An3.ogg b/sound/instruments/violin/An3.ogg
similarity index 100%
rename from sound/violin/An3.ogg
rename to sound/instruments/violin/An3.ogg
diff --git a/sound/violin/An4.ogg b/sound/instruments/violin/An4.ogg
similarity index 100%
rename from sound/violin/An4.ogg
rename to sound/instruments/violin/An4.ogg
diff --git a/sound/violin/An5.ogg b/sound/instruments/violin/An5.ogg
similarity index 100%
rename from sound/violin/An5.ogg
rename to sound/instruments/violin/An5.ogg
diff --git a/sound/violin/An6.ogg b/sound/instruments/violin/An6.ogg
similarity index 100%
rename from sound/violin/An6.ogg
rename to sound/instruments/violin/An6.ogg
diff --git a/sound/violin/Bb3.ogg b/sound/instruments/violin/Bb3.ogg
similarity index 100%
rename from sound/violin/Bb3.ogg
rename to sound/instruments/violin/Bb3.ogg
diff --git a/sound/violin/Bb4.ogg b/sound/instruments/violin/Bb4.ogg
similarity index 100%
rename from sound/violin/Bb4.ogg
rename to sound/instruments/violin/Bb4.ogg
diff --git a/sound/violin/Bb5.ogg b/sound/instruments/violin/Bb5.ogg
similarity index 100%
rename from sound/violin/Bb5.ogg
rename to sound/instruments/violin/Bb5.ogg
diff --git a/sound/violin/Bb6.ogg b/sound/instruments/violin/Bb6.ogg
similarity index 100%
rename from sound/violin/Bb6.ogg
rename to sound/instruments/violin/Bb6.ogg
diff --git a/sound/violin/Bn3.ogg b/sound/instruments/violin/Bn3.ogg
similarity index 100%
rename from sound/violin/Bn3.ogg
rename to sound/instruments/violin/Bn3.ogg
diff --git a/sound/violin/Bn4.ogg b/sound/instruments/violin/Bn4.ogg
similarity index 100%
rename from sound/violin/Bn4.ogg
rename to sound/instruments/violin/Bn4.ogg
diff --git a/sound/violin/Bn5.ogg b/sound/instruments/violin/Bn5.ogg
similarity index 100%
rename from sound/violin/Bn5.ogg
rename to sound/instruments/violin/Bn5.ogg
diff --git a/sound/violin/Bn6.ogg b/sound/instruments/violin/Bn6.ogg
similarity index 100%
rename from sound/violin/Bn6.ogg
rename to sound/instruments/violin/Bn6.ogg
diff --git a/sound/violin/Cn4.ogg b/sound/instruments/violin/Cn4.ogg
similarity index 100%
rename from sound/violin/Cn4.ogg
rename to sound/instruments/violin/Cn4.ogg
diff --git a/sound/violin/Cn5.ogg b/sound/instruments/violin/Cn5.ogg
similarity index 100%
rename from sound/violin/Cn5.ogg
rename to sound/instruments/violin/Cn5.ogg
diff --git a/sound/violin/Cn6.ogg b/sound/instruments/violin/Cn6.ogg
similarity index 100%
rename from sound/violin/Cn6.ogg
rename to sound/instruments/violin/Cn6.ogg
diff --git a/sound/violin/Cn7.ogg b/sound/instruments/violin/Cn7.ogg
similarity index 100%
rename from sound/violin/Cn7.ogg
rename to sound/instruments/violin/Cn7.ogg
diff --git a/sound/violin/Db4.ogg b/sound/instruments/violin/Db4.ogg
similarity index 100%
rename from sound/violin/Db4.ogg
rename to sound/instruments/violin/Db4.ogg
diff --git a/sound/violin/Db5.ogg b/sound/instruments/violin/Db5.ogg
similarity index 100%
rename from sound/violin/Db5.ogg
rename to sound/instruments/violin/Db5.ogg
diff --git a/sound/violin/Db6.ogg b/sound/instruments/violin/Db6.ogg
similarity index 100%
rename from sound/violin/Db6.ogg
rename to sound/instruments/violin/Db6.ogg
diff --git a/sound/violin/Db7.ogg b/sound/instruments/violin/Db7.ogg
similarity index 100%
rename from sound/violin/Db7.ogg
rename to sound/instruments/violin/Db7.ogg
diff --git a/sound/violin/Dn4.ogg b/sound/instruments/violin/Dn4.ogg
similarity index 100%
rename from sound/violin/Dn4.ogg
rename to sound/instruments/violin/Dn4.ogg
diff --git a/sound/violin/Dn5.ogg b/sound/instruments/violin/Dn5.ogg
similarity index 100%
rename from sound/violin/Dn5.ogg
rename to sound/instruments/violin/Dn5.ogg
diff --git a/sound/violin/Dn6.ogg b/sound/instruments/violin/Dn6.ogg
similarity index 100%
rename from sound/violin/Dn6.ogg
rename to sound/instruments/violin/Dn6.ogg
diff --git a/sound/violin/Dn7.ogg b/sound/instruments/violin/Dn7.ogg
similarity index 100%
rename from sound/violin/Dn7.ogg
rename to sound/instruments/violin/Dn7.ogg
diff --git a/sound/violin/Eb4.ogg b/sound/instruments/violin/Eb4.ogg
similarity index 100%
rename from sound/violin/Eb4.ogg
rename to sound/instruments/violin/Eb4.ogg
diff --git a/sound/violin/Eb5.ogg b/sound/instruments/violin/Eb5.ogg
similarity index 100%
rename from sound/violin/Eb5.ogg
rename to sound/instruments/violin/Eb5.ogg
diff --git a/sound/violin/Eb6.ogg b/sound/instruments/violin/Eb6.ogg
similarity index 100%
rename from sound/violin/Eb6.ogg
rename to sound/instruments/violin/Eb6.ogg
diff --git a/sound/violin/En4.ogg b/sound/instruments/violin/En4.ogg
similarity index 100%
rename from sound/violin/En4.ogg
rename to sound/instruments/violin/En4.ogg
diff --git a/sound/violin/En5.ogg b/sound/instruments/violin/En5.ogg
similarity index 100%
rename from sound/violin/En5.ogg
rename to sound/instruments/violin/En5.ogg
diff --git a/sound/violin/En6.ogg b/sound/instruments/violin/En6.ogg
similarity index 100%
rename from sound/violin/En6.ogg
rename to sound/instruments/violin/En6.ogg
diff --git a/sound/violin/Fn4.ogg b/sound/instruments/violin/Fn4.ogg
similarity index 100%
rename from sound/violin/Fn4.ogg
rename to sound/instruments/violin/Fn4.ogg
diff --git a/sound/violin/Fn5.ogg b/sound/instruments/violin/Fn5.ogg
similarity index 100%
rename from sound/violin/Fn5.ogg
rename to sound/instruments/violin/Fn5.ogg
diff --git a/sound/violin/Fn6.ogg b/sound/instruments/violin/Fn6.ogg
similarity index 100%
rename from sound/violin/Fn6.ogg
rename to sound/instruments/violin/Fn6.ogg
diff --git a/sound/violin/Gb4.ogg b/sound/instruments/violin/Gb4.ogg
similarity index 100%
rename from sound/violin/Gb4.ogg
rename to sound/instruments/violin/Gb4.ogg
diff --git a/sound/violin/Gb5.ogg b/sound/instruments/violin/Gb5.ogg
similarity index 100%
rename from sound/violin/Gb5.ogg
rename to sound/instruments/violin/Gb5.ogg
diff --git a/sound/violin/Gb6.ogg b/sound/instruments/violin/Gb6.ogg
similarity index 100%
rename from sound/violin/Gb6.ogg
rename to sound/instruments/violin/Gb6.ogg
diff --git a/sound/violin/Gn3.ogg b/sound/instruments/violin/Gn3.ogg
similarity index 100%
rename from sound/violin/Gn3.ogg
rename to sound/instruments/violin/Gn3.ogg
diff --git a/sound/violin/Gn4.ogg b/sound/instruments/violin/Gn4.ogg
similarity index 100%
rename from sound/violin/Gn4.ogg
rename to sound/instruments/violin/Gn4.ogg
diff --git a/sound/violin/Gn5.ogg b/sound/instruments/violin/Gn5.ogg
similarity index 100%
rename from sound/violin/Gn5.ogg
rename to sound/instruments/violin/Gn5.ogg
diff --git a/sound/violin/Gn6.ogg b/sound/instruments/violin/Gn6.ogg
similarity index 100%
rename from sound/violin/Gn6.ogg
rename to sound/instruments/violin/Gn6.ogg
diff --git a/sound/instruments/xylophone/Ab2.mid b/sound/instruments/xylophone/Ab2.mid
new file mode 100644
index 00000000000..f8d08b5995a
Binary files /dev/null and b/sound/instruments/xylophone/Ab2.mid differ
diff --git a/sound/instruments/xylophone/Ab3.mid b/sound/instruments/xylophone/Ab3.mid
new file mode 100644
index 00000000000..f34de3dcd6b
Binary files /dev/null and b/sound/instruments/xylophone/Ab3.mid differ
diff --git a/sound/instruments/xylophone/Ab4.mid b/sound/instruments/xylophone/Ab4.mid
new file mode 100644
index 00000000000..ecca495a6ae
Binary files /dev/null and b/sound/instruments/xylophone/Ab4.mid differ
diff --git a/sound/instruments/xylophone/Ab5.mid b/sound/instruments/xylophone/Ab5.mid
new file mode 100644
index 00000000000..4d277c9e0c7
Binary files /dev/null and b/sound/instruments/xylophone/Ab5.mid differ
diff --git a/sound/instruments/xylophone/Ab6.mid b/sound/instruments/xylophone/Ab6.mid
new file mode 100644
index 00000000000..b13d6aacdd7
Binary files /dev/null and b/sound/instruments/xylophone/Ab6.mid differ
diff --git a/sound/instruments/xylophone/An2.mid b/sound/instruments/xylophone/An2.mid
new file mode 100644
index 00000000000..cf6be5cf199
Binary files /dev/null and b/sound/instruments/xylophone/An2.mid differ
diff --git a/sound/instruments/xylophone/An3.mid b/sound/instruments/xylophone/An3.mid
new file mode 100644
index 00000000000..196be155a63
Binary files /dev/null and b/sound/instruments/xylophone/An3.mid differ
diff --git a/sound/instruments/xylophone/An4.mid b/sound/instruments/xylophone/An4.mid
new file mode 100644
index 00000000000..f7236042a6a
Binary files /dev/null and b/sound/instruments/xylophone/An4.mid differ
diff --git a/sound/instruments/xylophone/An5.mid b/sound/instruments/xylophone/An5.mid
new file mode 100644
index 00000000000..c44d8a43aa4
Binary files /dev/null and b/sound/instruments/xylophone/An5.mid differ
diff --git a/sound/instruments/xylophone/An6.mid b/sound/instruments/xylophone/An6.mid
new file mode 100644
index 00000000000..c94d839e673
Binary files /dev/null and b/sound/instruments/xylophone/An6.mid differ
diff --git a/sound/instruments/xylophone/Bb2.mid b/sound/instruments/xylophone/Bb2.mid
new file mode 100644
index 00000000000..ad96c63e5d1
Binary files /dev/null and b/sound/instruments/xylophone/Bb2.mid differ
diff --git a/sound/instruments/xylophone/Bb3.mid b/sound/instruments/xylophone/Bb3.mid
new file mode 100644
index 00000000000..96e4eabfd3f
Binary files /dev/null and b/sound/instruments/xylophone/Bb3.mid differ
diff --git a/sound/instruments/xylophone/Bb4.mid b/sound/instruments/xylophone/Bb4.mid
new file mode 100644
index 00000000000..5a9b40b71dd
Binary files /dev/null and b/sound/instruments/xylophone/Bb4.mid differ
diff --git a/sound/instruments/xylophone/Bb5.mid b/sound/instruments/xylophone/Bb5.mid
new file mode 100644
index 00000000000..74817b705a7
Binary files /dev/null and b/sound/instruments/xylophone/Bb5.mid differ
diff --git a/sound/instruments/xylophone/Bb6.mid b/sound/instruments/xylophone/Bb6.mid
new file mode 100644
index 00000000000..7a998a857b7
Binary files /dev/null and b/sound/instruments/xylophone/Bb6.mid differ
diff --git a/sound/instruments/xylophone/Bn2.mid b/sound/instruments/xylophone/Bn2.mid
new file mode 100644
index 00000000000..7bc2a1bb76d
Binary files /dev/null and b/sound/instruments/xylophone/Bn2.mid differ
diff --git a/sound/instruments/xylophone/Bn3.mid b/sound/instruments/xylophone/Bn3.mid
new file mode 100644
index 00000000000..c7375e6577c
Binary files /dev/null and b/sound/instruments/xylophone/Bn3.mid differ
diff --git a/sound/instruments/xylophone/Bn4.mid b/sound/instruments/xylophone/Bn4.mid
new file mode 100644
index 00000000000..dfdcc32f5f9
Binary files /dev/null and b/sound/instruments/xylophone/Bn4.mid differ
diff --git a/sound/instruments/xylophone/Bn5.mid b/sound/instruments/xylophone/Bn5.mid
new file mode 100644
index 00000000000..f51313d527f
Binary files /dev/null and b/sound/instruments/xylophone/Bn5.mid differ
diff --git a/sound/instruments/xylophone/Bn6.mid b/sound/instruments/xylophone/Bn6.mid
new file mode 100644
index 00000000000..6dcbc8cd6a1
Binary files /dev/null and b/sound/instruments/xylophone/Bn6.mid differ
diff --git a/sound/instruments/xylophone/Cn2.mid b/sound/instruments/xylophone/Cn2.mid
new file mode 100644
index 00000000000..6ae074d342d
Binary files /dev/null and b/sound/instruments/xylophone/Cn2.mid differ
diff --git a/sound/instruments/xylophone/Cn3.mid b/sound/instruments/xylophone/Cn3.mid
new file mode 100644
index 00000000000..bdc7d688ee4
Binary files /dev/null and b/sound/instruments/xylophone/Cn3.mid differ
diff --git a/sound/instruments/xylophone/Cn4.mid b/sound/instruments/xylophone/Cn4.mid
new file mode 100644
index 00000000000..956e93f460e
Binary files /dev/null and b/sound/instruments/xylophone/Cn4.mid differ
diff --git a/sound/instruments/xylophone/Cn5.mid b/sound/instruments/xylophone/Cn5.mid
new file mode 100644
index 00000000000..b88f09ea41a
Binary files /dev/null and b/sound/instruments/xylophone/Cn5.mid differ
diff --git a/sound/instruments/xylophone/Cn6.mid b/sound/instruments/xylophone/Cn6.mid
new file mode 100644
index 00000000000..fd1e01d0e5f
Binary files /dev/null and b/sound/instruments/xylophone/Cn6.mid differ
diff --git a/sound/instruments/xylophone/Db2.mid b/sound/instruments/xylophone/Db2.mid
new file mode 100644
index 00000000000..d6c6250abf5
Binary files /dev/null and b/sound/instruments/xylophone/Db2.mid differ
diff --git a/sound/instruments/xylophone/Db3.mid b/sound/instruments/xylophone/Db3.mid
new file mode 100644
index 00000000000..22ad1728373
Binary files /dev/null and b/sound/instruments/xylophone/Db3.mid differ
diff --git a/sound/instruments/xylophone/Db4.mid b/sound/instruments/xylophone/Db4.mid
new file mode 100644
index 00000000000..19d2b5acd6a
Binary files /dev/null and b/sound/instruments/xylophone/Db4.mid differ
diff --git a/sound/instruments/xylophone/Db5.mid b/sound/instruments/xylophone/Db5.mid
new file mode 100644
index 00000000000..bc747935ec7
Binary files /dev/null and b/sound/instruments/xylophone/Db5.mid differ
diff --git a/sound/instruments/xylophone/Db6.mid b/sound/instruments/xylophone/Db6.mid
new file mode 100644
index 00000000000..6b5e16cf66f
Binary files /dev/null and b/sound/instruments/xylophone/Db6.mid differ
diff --git a/sound/instruments/xylophone/Dn2.mid b/sound/instruments/xylophone/Dn2.mid
new file mode 100644
index 00000000000..caf81563c16
Binary files /dev/null and b/sound/instruments/xylophone/Dn2.mid differ
diff --git a/sound/instruments/xylophone/Dn3.mid b/sound/instruments/xylophone/Dn3.mid
new file mode 100644
index 00000000000..b98e10291e8
Binary files /dev/null and b/sound/instruments/xylophone/Dn3.mid differ
diff --git a/sound/instruments/xylophone/Dn4.mid b/sound/instruments/xylophone/Dn4.mid
new file mode 100644
index 00000000000..cb1b295f359
Binary files /dev/null and b/sound/instruments/xylophone/Dn4.mid differ
diff --git a/sound/instruments/xylophone/Dn5.mid b/sound/instruments/xylophone/Dn5.mid
new file mode 100644
index 00000000000..53061570639
Binary files /dev/null and b/sound/instruments/xylophone/Dn5.mid differ
diff --git a/sound/instruments/xylophone/Dn6.mid b/sound/instruments/xylophone/Dn6.mid
new file mode 100644
index 00000000000..79459d4b156
Binary files /dev/null and b/sound/instruments/xylophone/Dn6.mid differ
diff --git a/sound/instruments/xylophone/Eb2.mid b/sound/instruments/xylophone/Eb2.mid
new file mode 100644
index 00000000000..efd033ea415
Binary files /dev/null and b/sound/instruments/xylophone/Eb2.mid differ
diff --git a/sound/instruments/xylophone/Eb3.mid b/sound/instruments/xylophone/Eb3.mid
new file mode 100644
index 00000000000..16cfc8f32be
Binary files /dev/null and b/sound/instruments/xylophone/Eb3.mid differ
diff --git a/sound/instruments/xylophone/Eb4.mid b/sound/instruments/xylophone/Eb4.mid
new file mode 100644
index 00000000000..cc4333d5579
Binary files /dev/null and b/sound/instruments/xylophone/Eb4.mid differ
diff --git a/sound/instruments/xylophone/Eb5.mid b/sound/instruments/xylophone/Eb5.mid
new file mode 100644
index 00000000000..b25d5fded35
Binary files /dev/null and b/sound/instruments/xylophone/Eb5.mid differ
diff --git a/sound/instruments/xylophone/Eb6.mid b/sound/instruments/xylophone/Eb6.mid
new file mode 100644
index 00000000000..7418778e66a
Binary files /dev/null and b/sound/instruments/xylophone/Eb6.mid differ
diff --git a/sound/instruments/xylophone/En2.mid b/sound/instruments/xylophone/En2.mid
new file mode 100644
index 00000000000..ee49b6d26d7
Binary files /dev/null and b/sound/instruments/xylophone/En2.mid differ
diff --git a/sound/instruments/xylophone/En3.mid b/sound/instruments/xylophone/En3.mid
new file mode 100644
index 00000000000..8cc2fc4514a
Binary files /dev/null and b/sound/instruments/xylophone/En3.mid differ
diff --git a/sound/instruments/xylophone/En4.mid b/sound/instruments/xylophone/En4.mid
new file mode 100644
index 00000000000..12e688e309a
Binary files /dev/null and b/sound/instruments/xylophone/En4.mid differ
diff --git a/sound/instruments/xylophone/En5.mid b/sound/instruments/xylophone/En5.mid
new file mode 100644
index 00000000000..1608556bb59
Binary files /dev/null and b/sound/instruments/xylophone/En5.mid differ
diff --git a/sound/instruments/xylophone/En6.mid b/sound/instruments/xylophone/En6.mid
new file mode 100644
index 00000000000..2b728aa02f6
Binary files /dev/null and b/sound/instruments/xylophone/En6.mid differ
diff --git a/sound/instruments/xylophone/Fn2.mid b/sound/instruments/xylophone/Fn2.mid
new file mode 100644
index 00000000000..2d329eafab0
Binary files /dev/null and b/sound/instruments/xylophone/Fn2.mid differ
diff --git a/sound/instruments/xylophone/Fn3.mid b/sound/instruments/xylophone/Fn3.mid
new file mode 100644
index 00000000000..262398bd647
Binary files /dev/null and b/sound/instruments/xylophone/Fn3.mid differ
diff --git a/sound/instruments/xylophone/Fn4.mid b/sound/instruments/xylophone/Fn4.mid
new file mode 100644
index 00000000000..d0103d46f0a
Binary files /dev/null and b/sound/instruments/xylophone/Fn4.mid differ
diff --git a/sound/instruments/xylophone/Fn5.mid b/sound/instruments/xylophone/Fn5.mid
new file mode 100644
index 00000000000..2fb0d481d7e
Binary files /dev/null and b/sound/instruments/xylophone/Fn5.mid differ
diff --git a/sound/instruments/xylophone/Fn6.mid b/sound/instruments/xylophone/Fn6.mid
new file mode 100644
index 00000000000..851cc387df7
Binary files /dev/null and b/sound/instruments/xylophone/Fn6.mid differ
diff --git a/sound/instruments/xylophone/Gb2.mid b/sound/instruments/xylophone/Gb2.mid
new file mode 100644
index 00000000000..1429339b866
Binary files /dev/null and b/sound/instruments/xylophone/Gb2.mid differ
diff --git a/sound/instruments/xylophone/Gb3.mid b/sound/instruments/xylophone/Gb3.mid
new file mode 100644
index 00000000000..2e7ffcc7317
Binary files /dev/null and b/sound/instruments/xylophone/Gb3.mid differ
diff --git a/sound/instruments/xylophone/Gb4.mid b/sound/instruments/xylophone/Gb4.mid
new file mode 100644
index 00000000000..dcb800e3af8
Binary files /dev/null and b/sound/instruments/xylophone/Gb4.mid differ
diff --git a/sound/instruments/xylophone/Gb5.mid b/sound/instruments/xylophone/Gb5.mid
new file mode 100644
index 00000000000..9bfd1db08e9
Binary files /dev/null and b/sound/instruments/xylophone/Gb5.mid differ
diff --git a/sound/instruments/xylophone/Gb6.mid b/sound/instruments/xylophone/Gb6.mid
new file mode 100644
index 00000000000..2329d70b8f0
Binary files /dev/null and b/sound/instruments/xylophone/Gb6.mid differ
diff --git a/sound/instruments/xylophone/Gn2.mid b/sound/instruments/xylophone/Gn2.mid
new file mode 100644
index 00000000000..67e8ff80b15
Binary files /dev/null and b/sound/instruments/xylophone/Gn2.mid differ
diff --git a/sound/instruments/xylophone/Gn3.mid b/sound/instruments/xylophone/Gn3.mid
new file mode 100644
index 00000000000..416b3603110
Binary files /dev/null and b/sound/instruments/xylophone/Gn3.mid differ
diff --git a/sound/instruments/xylophone/Gn4.mid b/sound/instruments/xylophone/Gn4.mid
new file mode 100644
index 00000000000..81c84e8ae96
Binary files /dev/null and b/sound/instruments/xylophone/Gn4.mid differ
diff --git a/sound/instruments/xylophone/Gn5.mid b/sound/instruments/xylophone/Gn5.mid
new file mode 100644
index 00000000000..34b94805a5e
Binary files /dev/null and b/sound/instruments/xylophone/Gn5.mid differ
diff --git a/sound/instruments/xylophone/Gn6.mid b/sound/instruments/xylophone/Gn6.mid
new file mode 100644
index 00000000000..2ea9104e419
Binary files /dev/null and b/sound/instruments/xylophone/Gn6.mid differ