From bc2a2387485f91af023fdde80da69ddfbfc5e8d5 Mon Sep 17 00:00:00 2001 From: Kmc2000 Date: Sun, 14 Jul 2019 10:15:54 +0100 Subject: [PATCH] Gives the HOP a ticket machine (#45095) * Adds a ticket machine to the HOP's office so you can keep track of unruly hoardes of greyshirts while giving the clown all access. * Fixes a logic error * Whoops * Idiot proofing * Pt 2. * Me make code less shit * Fixes more badcode --- _maps/map_files/BoxStation/BoxStation.dmm | 61 +++--- .../map_files/Deltastation/DeltaStation2.dmm | 35 +-- _maps/map_files/MetaStation/MetaStation.dmm | 46 ++-- _maps/map_files/PubbyStation/PubbyStation.dmm | 48 +++-- code/modules/paperwork/ticketmachine.dm | 202 ++++++++++++++++++ icons/obj/bureaucracy.dmi | Bin 17457 -> 19639 bytes tgstation.dme | 1 + 7 files changed, 323 insertions(+), 70 deletions(-) create mode 100644 code/modules/paperwork/ticketmachine.dm diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index 7590bcc0f2d..d63869db231 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -1503,6 +1503,25 @@ /obj/structure/cable, /turf/open/space/basic, /area/solar/port/fore) +"adv" = ( +/obj/structure/chair/office{ + dir = 8 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/machinery/button/ticket_machine{ + pixel_x = -32; + pixel_y = 38 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/heads/hop) "adw" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 @@ -1691,6 +1710,19 @@ "adR" = ( /turf/closed/wall/r_wall, /area/security/main) +"adS" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "hopqueue"; + name = "HoP Queue Shutters" + }, +/obj/effect/turf_decal/loading_area{ + dir = 4 + }, +/obj/machinery/ticket_machine{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) "adT" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -26054,21 +26086,6 @@ }, /turf/open/floor/carpet, /area/crew_quarters/heads/hop) -"bpc" = ( -/obj/structure/chair/office{ - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/heads/hop) "bpd" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/carpet, @@ -28628,16 +28645,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"bwg" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "hopqueue"; - name = "HoP Queue Shutters" - }, -/obj/effect/turf_decal/loading_area{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) "bwh" = ( /obj/structure/sign/warning/securearea{ pixel_y = 32 @@ -77408,7 +77415,7 @@ bqv bqv bqv bqv -bwg +adS aJw aJq aJq @@ -78174,7 +78181,7 @@ cNL bkY bmo bnP -bpc +adv bqA brW btB diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index 1456ad917a1..b765ca17a37 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -20,6 +20,20 @@ /obj/structure/cable, /turf/open/floor/plasteel/airless/solarpanel, /area/solar/starboard/fore) +"aaf" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "hopline"; + name = "Queue Shutters" + }, +/obj/effect/landmark/event_spawn, +/obj/effect/turf_decal/loading_area{ + dir = 4 + }, +/obj/machinery/ticket_machine{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) "aag" = ( /obj/machinery/power/solar{ id = "forestarboard"; @@ -28,6 +42,12 @@ /obj/structure/cable, /turf/open/floor/plasteel/airless/solarpanel, /area/solar/starboard/fore) +"aah" = ( +/obj/machinery/button/ticket_machine{ + pixel_y = 8 + }, +/turf/closed/wall/r_wall, +/area/crew_quarters/heads/hop) "aao" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -60445,17 +60465,6 @@ /obj/machinery/vending/coffee, /turf/open/floor/wood, /area/library) -"chY" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "hopline"; - name = "Queue Shutters" - }, -/obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/loading_area{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) "chZ" = ( /obj/machinery/computer/security/mining{ dir = 4 @@ -151620,7 +151629,7 @@ buq buq cen buq -chY +aaf bur bUB bUB @@ -152384,7 +152393,7 @@ bMp bOy bQz bSz -bUB +aah bWQ bYZ caN diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 08f4c88566b..b794554227b 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -57,6 +57,36 @@ /obj/structure/cable, /turf/open/floor/plasteel/airless/solarpanel, /area/solar/port/fore) +"aam" = ( +/obj/structure/table/wood, +/obj/item/paper_bin{ + pixel_x = -2; + pixel_y = 4 + }, +/obj/item/stamp/hop{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/machinery/button/ticket_machine{ + pixel_x = 32 + }, +/turf/open/floor/wood, +/area/crew_quarters/heads/hop) +"aan" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/machinery/ticket_machine{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/command) "aaq" = ( /obj/structure/lattice/catwalk, /turf/open/space, @@ -34049,18 +34079,6 @@ /obj/structure/cable, /turf/open/floor/wood, /area/crew_quarters/heads/hop) -"bwp" = ( -/obj/structure/table/wood, -/obj/item/paper_bin{ - pixel_x = -2; - pixel_y = 4 - }, -/obj/item/stamp/hop{ - pixel_x = -4; - pixel_y = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads/hop) "bwq" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/tile/blue, @@ -99014,7 +99032,7 @@ bwk bkz bzM bBz -bDa +aan bEE bGA bIa @@ -100295,7 +100313,7 @@ bkz bqG dbe but -bwp +aam bkz bzQ bzR diff --git a/_maps/map_files/PubbyStation/PubbyStation.dmm b/_maps/map_files/PubbyStation/PubbyStation.dmm index d1ba37ef84c..fedc8378a76 100644 --- a/_maps/map_files/PubbyStation/PubbyStation.dmm +++ b/_maps/map_files/PubbyStation/PubbyStation.dmm @@ -33,6 +33,36 @@ /obj/structure/closet/secure_closet/atmospherics, /turf/open/floor/plasteel/dark, /area/maintenance/disposal/incinerator) +"aaf" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/machinery/ticket_machine{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aag" = ( +/obj/structure/table/wood, +/obj/item/stamp/hop{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/item/radio/intercom{ + pixel_x = 27 + }, +/obj/item/paper_bin{ + layer = 2.9 + }, +/obj/machinery/button/ticket_machine{ + pixel_x = 28; + pixel_y = -12 + }, +/turf/open/floor/carpet, +/area/crew_quarters/heads/hop) "abf" = ( /obj/structure/bed, /turf/open/floor/plating, @@ -11831,20 +11861,6 @@ }, /turf/open/floor/carpet, /area/crew_quarters/heads/hop) -"aER" = ( -/obj/structure/table/wood, -/obj/item/stamp/hop{ - pixel_x = -4; - pixel_y = 4 - }, -/obj/item/radio/intercom{ - pixel_x = 27 - }, -/obj/item/paper_bin{ - layer = 2.9 - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads/hop) "aES" = ( /obj/machinery/camera{ c_tag = "Central Primary Hallway Vault"; @@ -90757,7 +90773,7 @@ aEM aFA aGv aKV -aHV +aaf aDZ aJO aKZ @@ -92038,7 +92054,7 @@ aAH aBG aCU aDY -aER +aag aAH aGy aAN diff --git a/code/modules/paperwork/ticketmachine.dm b/code/modules/paperwork/ticketmachine.dm new file mode 100644 index 00000000000..e8694a0ab02 --- /dev/null +++ b/code/modules/paperwork/ticketmachine.dm @@ -0,0 +1,202 @@ +//Bureaucracy machine! +//Simply set this up in the hopline and you can serve people based on ticket numbers + +/obj/machinery/ticket_machine + name = "ticket machine" + icon = 'icons/obj/bureaucracy.dmi' + icon_state = "ticketmachine" + desc = "A marvel of bureaucratic engineering encased in an efficient plastic shell. It can be refilled with a hand labeler refill roll and linked to buttons with a multitool." + density = FALSE + maptext_height = 26 + maptext_width = 32 + maptext_x = 7 + maptext_y = 10 + layer = HIGH_OBJ_LAYER + var/ticket_number = 0 //Increment the ticket number whenever the HOP presses his button + var/current_number = 0 //What customer are we currently serving? + var/max_number = 999 //To stop the text going fucky. At this point, you need to refill it. + var/cooldown = 50 //Small cooldown, stops the clown from immediately breaking it. + var/ready = TRUE + var/id = "ticket_machine_default" //For buttons + +/obj/machinery/ticket_machine/multitool_act(mob/living/user, obj/item/I) + if(!multitool_check_buffer(user, I)) //make sure it has a data buffer + return + var/obj/item/multitool/M = I + M.buffer = src + to_chat(user, "You store linkage information in [I]'s buffer.") + return TRUE + +/obj/machinery/ticket_machine/emag_act(mob/user) //Emag the ticket machine to dispense burning tickets, as well as randomize its customer number to destroy the HOP's mind. + if(obj_flags & EMAGGED) + return + to_chat(user, "You overload [src]'s bureaucratic logic circuitry to its MAXIMUM setting.") + ticket_number = rand(0,999) + obj_flags |= EMAGGED + +/obj/machinery/ticket_machine/Initialize() + . = ..() + update_icon() + +/obj/machinery/ticket_machine/proc/increment() + if(current_number >= ticket_number) + return + playsound(src, 'sound/misc/announce_dig.ogg', 50, 0) + say("Next customer, please!") + current_number ++ //Increment the one we're serving. + update_icon() //Update our icon here rather than when they take a ticket to show the current ticket number being served + +/obj/machinery/button/ticket_machine + name = "increment ticket counter" + desc = "Use this button when you've served a customer to tell the next one to come forward." + device_type = /obj/item/assembly/control/ticket_machine + req_access = list() + id = "ticket_machine_default" + +/obj/machinery/button/ticket_machine/Initialize() + . = ..() + if(device) + var/obj/item/assembly/control/ticket_machine/ours = device + ours.id = id + +/obj/machinery/button/ticket_machine/multitool_act(mob/living/user, obj/item/I) + if(I.tool_behaviour == TOOL_MULTITOOL) + var/obj/item/multitool/M = I + if(M.buffer && !istype(M.buffer, /obj/machinery/ticket_machine)) + return + var/obj/item/assembly/control/ticket_machine/controller = device + controller.linked = M.buffer + id = null + controller.id = null + to_chat(user, "You've linked [src] to [controller.linked].") + +/obj/item/assembly/control/ticket_machine + name = "ticket machine controller" + desc = "A remote controller for the HOP's ticket machine." + var/obj/machinery/ticket_machine/linked //To whom are we linked? + +/obj/item/assembly/control/ticket_machine/Initialize() + ..() + return INITIALIZE_HINT_LATELOAD + +/obj/item/assembly/control/ticket_machine/LateInitialize() + find_machine() + +/obj/item/assembly/control/ticket_machine/proc/find_machine() //Locate the one to which we're linked + for(var/obj/machinery/ticket_machine/ticketsplease in GLOB.machines) + if(ticketsplease.id == id) + linked = ticketsplease + if(linked) + return TRUE + else + return FALSE + +/obj/item/assembly/control/ticket_machine/activate() + if(cooldown) + return + if(!linked) + return + cooldown = TRUE + linked.increment() + addtimer(VARSET_CALLBACK(src, cooldown, FALSE), 10) + +/obj/machinery/ticket_machine/update_icon() + switch(ticket_number) //Gives you an idea of how many tickets are left + if(0 to 200) + icon_state = "ticketmachine_100" + if(201 to 800) + icon_state = "ticketmachine_50" + if(801 to 999) + icon_state = "ticketmachine_0" + handle_maptext() + +/obj/machinery/ticket_machine/proc/handle_maptext() + switch(ticket_number) //This is here to handle maptext offsets so that the numbers align. + if(0 to 9) + maptext_x = 13 + if(10 to 99) + maptext_x = 10 + if(100 to 999) + maptext_x = 8 + maptext = "[current_number]" //Finally, apply the maptext + +/obj/machinery/ticket_machine/attackby(obj/item/I, mob/user, params) + ..() + if(ticket_number >= max_number) + to_chat(user, "[src] refuses [I]!, perhaps it's already full?.") + return + if(istype(I, /obj/item/hand_labeler_refill)) + to_chat(user, "You start to refill [src]'s ticket holder (doing this will reset its ticket count!).") + if(do_after(user, 30, target = src)) + to_chat(user, "You insert [I] into [src] as it whirrs nondescriptly.") + qdel(I) + ticket_number = 0 + current_number = 0 + max_number = initial(max_number) + update_icon() + return + if(istype(I, /obj/item/ticket_machine_ticket)) + to_chat(user, "You start to cram [I] into [src]'s recycling bin.") + if(do_after(user, 20, target = src)) //Slight delay so they don't accidentally dispose of their ticket and move to the BACK OF THE LINE + qdel(I) + return + +/obj/machinery/ticket_machine/proc/reset_cooldown() + ready = TRUE + +/obj/machinery/ticket_machine/attack_hand(mob/living/carbon/user) + . = ..() + if(!ready) + to_chat(user,"Temporarily unable to dispense ticket, please be patient!") + return + if(ticket_number >= max_number) + to_chat(user,"Ticket supply depleted, please refill this unit with a hand labeller refill cartridge!") + return + ready = FALSE + playsound(src, 'sound/machines/terminal_insert_disc.ogg', 100, 0) + addtimer(CALLBACK(src, .proc/reset_cooldown), cooldown)//Small cooldown to prevent the clown from ripping out every ticket + ticket_number ++ + to_chat(user, "You take a ticket from [src], looks like you're customer #[ticket_number]...") + var/obj/item/ticket_machine_ticket/theirticket = new /obj/item/ticket_machine_ticket(get_turf(src)) + theirticket.name = "Ticket #[ticket_number]" + theirticket.maptext = "[ticket_number]" + theirticket.saved_maptext = "[ticket_number]" + user.put_in_hands(theirticket) + if(obj_flags & EMAGGED) //Emag the machine to destroy the HOP's life. + theirticket.fire_act() + user.dropItemToGround(theirticket) + user.adjust_fire_stacks(1) + user.IgniteMob() + return + +/obj/item/ticket_machine_ticket + name = "Ticket" + desc = "A ticket which shows your place in the line, you can put it back into the ticket machine when youre done with it." + icon = 'icons/obj/bureaucracy.dmi' + icon_state = "ticket" + maptext_x = 7 + maptext_y = 10 + w_class = WEIGHT_CLASS_TINY + var/saved_maptext = null + +/obj/item/ticket_machine_ticket/attack_hand(mob/user) + . = ..() + maptext = saved_maptext //For some reason, storage code removes all maptext off objs, this stops its number from being wiped off when taken out of storage. + +/obj/item/ticket_machine_ticket/attackby(obj/item/P, mob/living/carbon/human/user, params) //Stolen from papercode + ..() + if(P.is_hot()) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(10)) + user.visible_message("[user] accidentally ignites [user.p_them()]self!", \ + "You miss the paper and accidentally light yourself on fire!") + user.dropItemToGround(P) + user.adjust_fire_stacks(1) + user.IgniteMob() + return + user.visible_message("[user] lights [src] ablaze with [P]!", "You light [src] on fire!") + fire_act() + +/obj/item/ticket_machine_ticket/fire_act(exposed_temperature, exposed_volume) + ..() + if(!(resistance_flags & FIRE_PROOF)) + icon_state = "ticket_onfire" \ No newline at end of file diff --git a/icons/obj/bureaucracy.dmi b/icons/obj/bureaucracy.dmi index 1169888b344461bca9b5048c1d003368e8dc1710..fb5489f22033744154f5c723d475df7e0029161d 100644 GIT binary patch literal 19639 zcmb5W1z1$?n>Rjmmx#1ONGKp6NSCC7gi_KVA>G~G5>g@!BHg7RB?w6O5W)=I%@6}K z^B%sx-F^Ri?R)L+pX-`4=Q-z@bDp^S{@lc9s40;U(h-6{Ad*)v<==up82P{_7#|n7 zviGIg2?WB7_SJglE^p~(?rP)gZsX(#0(oZ_XLLKR@{vc5tv{~3AmqwlTK-;Hs>86L z8_nP+Td8JW;}GqABN@&U!gG4GME?>hO`9lye*N%wA|$WPt1e(sTZwQ&giC1kda?cs ziDHSGeeYE37Y~aIBRX{NBg&YM-qwtEgdR*tjgdxzH}<{dUz%QA2% zFuhko7DI{2kFw@e&e_dBwVT}T#yO|^aC|;h4&4wv%i&t1LOewgBtCFk56NvCj9k*t z37lzTF;0=BBKWIhCh0IpMBc*GX1&zSZZinO(MWpS!P|p@{=BM6Tg}wrI5#JLS>JIr zGIYD4gGHe^2le--+A$|HTn1FrYRu@g}t24ah%r6v$b`8Z1m=3NyZ{y z&$N~JcbM=juzu9OJARZo@t1@9!QY`}FJk#-L3w-Hm?un2`Jv|?J)<^QjfXyNl~_%Y zqH%U5@7p<4x;cq2o~_5_=fuL3Lv50?n=~m-*$%XNvlANs9vv-p_bNfo;O7aFI36zv zmL4g2Vkj$Cnw53`Ubo5%94$aMR3>0_@a^1cc7A?P`jU$Ah-fTK0rD*tybFH9@8PQ@ zkmKon@-01~ytML|NswAr{FtBpyrfRkPR%3hQ(1j~#PJ&;c>`n7LI6Mm5H8ALP z^`A^L_RJ`^YCHBbpH5?+5%W#IQ47}q;Q0K5U=4(bg@t84vdkF7!ZN5v%*4X-HWWi% zUS63mI6C?z0WLWO#bbU$I3_s-TX|jG1o>7)MMaZ+g|rrMpR-6%NQh2VRkdJtKuITE1IDkrbL-HWI5R-I>y4HseC2!unv%W?L)7&Bh zrRnJCG&D7_WYq9WtMi_2j$}nmPEL+*OisRSY-(EBo+u)a){$i#SN=-_LGIR(HMKgv zW0c)!*y{J_+>~4_&=scBi5jo>E9vv-B;jR{?}_~#Im6s&HS*>AVT&)^7FY{?)L8zW zui@pHZ@Y8b5^#6j^~Y*!-q==H^Nc^E}O_7wE=X!Q*Y z94d~^t_zKiTz|mMuK64m1oxqxd2lM1ABK_rYjw9ScQi3rZo8J?G`o_Mt_}jNvBzVR z@5^ICqMVq^D$9i`i7{s2QH5W{^Nkd**mr(>`MWjm-S&9D-m^!x4Bm2xV%k3qHKNE$Kv?3-xYJ$EPLqO(B5J6L^Z3HWu(%dxFo?O+Sj0e z;;^(tfD5d`iLC`06MBUMYti;b$=$o<3JkhJi07Qnnm|0TF;}J}7!!KG#eDm<;aX5s#Jb0%(<|Kv%|O7 zvc-epps#F=dYs{SZ7H%Q%F3(>pf@)Ia>B@WC7Bx1^lVEQzX`L`zEi+CijG+8-&S@J z9N^XKRd!L_gzP`ya_$XeYWq#dPzN4xtiv^|1Bb(Bc5Y1HzXj+1ZQH<`qu)Su!OzT5 zV|dkhi84_7NvkQFXHLr6z`U|?GRzK<-Splob&FcOinC=rpuvC~mnAPp3=KQ@qik`V zRr{Y<3ydw8HM0gkK^OGa0@{|^O%w4j`mvqo(nM_|J6 z#be1+PY3o*dcPhu%d0gvZBVd5hW#&aUIn2zV>zK~TZmV)T)527FIa((8eF`0CX3A& z4PQL{Iy?4&IG_0Rmw5}n|75VJb+3=!3KkQ$b?59A@___q}9^{ATw za{|}DUmST8$SR$Z;@|%A0y4%Yu{nx|wC4EC98L%f9}N zm^WYR`&jUlWme0^t%Uh7#s1Q)n);O@(mq)O#OCUbRgs8=$5c>6|1N+*1Vq5N)U~_T zh4FHG8`qQJK7aDRUk_-7CamRK`XSvZ#_}Dvx@uZc8ijv8KU0yH|5Ns(xYrt_qB4|JuAW*gCNBQ**DqO1^MqYQCie=db$*Sdqk{uuy$O#0 zYA-=CoSH{JbsSkmnm;-^`l5|b98I7n9k4s*9bbhRf>o&dtLe=XS< zx^^;$QsZOX!#kXS&DmQ(5V|zchWBXUtTEjt+*$kNpY%+^$57NJ499^}4|w|~i&eZ9 zC}ch3r3t)bp2+rPca-ZdB_xniSqj8X?Sw;*belzG6$1J)Nk0M&4Cs|rR2*ug-(5xDyf*kbmvGwrQY2W5BFH|m-yC!r#%XlX4JZu^5YTPq z#2e-=CYPaoc7p`%FR?$gLt4&&qf-%yiKGz;qW+-#aY@GSeia9MU|Rps$}MUAEBt4& zob?^vJUUuha|Y0pdrwrpk$7kD9Nh5m(vNsLSj}x*_bq>Y$YGB8QiE2WG>WzQ1_u*k zF}<5X@T9r-nUSUs8-xa3P2K$^0_S7u!6Jy9CS;S(x?@z(Z zzXgJ&(U^6T-i z@IneXKdUJ&rXSk+UJha}Y{MaoAeCKRs&N@~P2ipGDn?mUp% ztfd&vN#`l^68ZCFbt;$v=2nT?<0U&J^PLAS|qGg$>n~h)N`3n5qlF z7`Bt|P0i2SeCGH<+*^GdQ^|YbrQiu|jwDMGVoaJFPIqeTDNYL)W4Zqb^$vLFgoWlY z{-&O3au!>InOpWC+-rD%jI@K&-SpxDW*YYc8Rq0AaJ+8VbsZW2KXSuD9dv6_$QA~g zh=`2a`y4=ymSbZjFLC#b+n&AKlM-eC?jIgC{pc2#^2Mz^cC(I%i1;%1Q)(OvsqU86 zL0aDg+LM5pc*K~zNJ24X*?(Y68gbY^vT6vA}E6$G(zX<=zvU`iAIVgo_#w2QbXv$-b|jgcqn&O?=Fld zSK21(-S!(p;vN3H2fHYeUy0PHP3>*Fh7qU(A>X}qK2$ly#~cFj+BQg!Mi1OtMntZD|8+kMZOcDm@4R4 z8hSto+VXE~N|f7SZ41RZ{@c_xuyd3f}umE*hKFdUH+=`>nVR*R#RI>}XG|tEwYV$Tq;F$GV0=fVMkJ ze`?g~CQVn%w%M-CcMwBokbtw*BVu@Y_`uzUP2}{Dl;N{60ks+iDB))tR?4>^e(!Re zOS}!TD{Ca+GuXlFNk#7z_9xMMp=l=l`Snt!&~ALaJa~#;dPfh6Qyf%YjtFB+noc;z z069fCO1QeZI@e=>sMS{fg!XVs`>=i?y6E;daO;-Z&b=a4&f#YyFDv#<;n@4&6(BGX zQ>xFN20tMD+`av@_nef6RpwPWgj9eR{ z`vN;2_UrL}f{VdV8X1?j0fP23@R;afPrp1B(eNK+cRG{in=eLmG^aTK|MhMDf9ci# zp>ry;p%BAIjLOSXfnM(2l6rPJO6%=)PhI-(#%)-%Ni|8*&*AF>B@?V zDZu$5$HyKYA2)r4U(6sw!u5cD=rE_8J6x;t>PbcU$4{Ms@_P7H{ufCuo-fks$$dZU z5t`34nx{r2wa5xT6cyD2?i$Zq_}`ofs}L|#NNsAKupY9C-@UtUfp?IoK)*(}qF*W+ z?Q?=QNen23`=;3^++R7fmpmSn{V`NqsU!SUdjTx#;odF)y=-=yT@=3{46l!x+ zDSZ43BBB|R_&|{AG9g2Xw)^g;E%!Oe4gp1S*1T3!B0eL9EWPc432uelOTcY>#T$>$ zJio$P>e#7(|A!R(B0OpTm_q(Pof3ng&Bm(X8tXo7drJ41ABp=9qc1^UJzs2&zoC)} z#b?%Aq5KFe@!;Sf%vprbZkAh6P%yu``stzNtH;5?s1fJKk}nD6@xGRKYzJ%2P-m?G z2gamwL?PB&Z4-ByXSOk*XL*SpPt1LSQKT<*+O3_$EITQ*=db1OF(wUKk~2>)ED+|6 z;W=Rjg{1<<=*w^a>d{{DN?0pOUCagWeaE)2KzG4|V(CEgwEw|e{U6xsKL;cJmz`t6 zF}L$emX8H1pGlBZ5Vt+BW-1X58gkD0YZ-r0t@#$}v1AZgv2D}yeE%sMJS*s!vd3e; z(B;goN_qEap=s#*^=8&bqc+dSW$0tgPC;YZwP(4u0;$t@Ab_X8FFDSRO(JBgs_B;r zmr7?m*oNxYCw$E}8lvLa5@)%}OaNDv+oy54w6a{SEKnBX+^G|V<;d*2GC9c-KyDGx1RpsMh1o#DKAL4%K5ji60tIV}|Kc6`q-%%?@^090pWCo_ zG>s8}{?Ivn@iPDv)xQ*)Bkr{-9&|%nmNR}CbfKaeo)k+i!e8=AlU6p-aUs9mXFtII z{Lf>U+tJIKBe?H#fD&sUaq3dn*bN`X(&=P7-(7xYm$hCB&wFWtZfzB-Dk#7RkpYpA zkWAuryI1m_EqOHpBJ?_|>n8^WxDNwA*H?Y8DrmKfcf3{DyTiljxc>DA@dcOND;!W4 z;I}(B7fJ5)PyRG^`s=maWS7D3b!eyx@hJMXs`K~VYS&Ckb+=s&nt`iHYbY1raf%6nLGS&^biT#Ag6C~{!y%taf~*>aLJ%B*-4Zfj>(uqUQd`L5tm zIBK)gj~`X8;2da%A@|Z139t*j0wjPIh!|VdDvRHxhor#pMDxnbuNZ zomItYb1-oRk%EH4T)kyn6|-qIbXkBds`JY3_3}vz=O0Pd_73!M6zBDx(m1M(V

P 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 literal 17457 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