From b5fe47085640c172544a09b2bd9b3d8945007dd4 Mon Sep 17 00:00:00 2001
From: Geeves <22774890+Geevies@users.noreply.github.com>
Date: Thu, 27 Aug 2026 22:06:52 +0000
Subject: [PATCH] Beanbag Launchers (#22961)
* Added less-than-lethal beanbag rounds for grenade launchers. These
have been mapped in to the armory, alongside a single grenade launcher.
More ammo can be ordered from cargo.
AI usage disclosure: The code for this was created in-part using GPT 5.6
Sol. Sprites are all my own.
---
.../objects/items/weapons/grenades/grenade.dm | 12 +++++
.../objects/items/weapons/storage/boxes.dm | 6 +++
.../closets/secure/guncabinet.dm | 2 +
code/modules/cargo/items/security.dm | 14 +++++
.../guns/launcher/grenade_launcher.dm | 50 +++++++++++++++++-
html/changelogs/geeves-beanbag-rounds.yml | 6 +++
icons/obj/grenade.dmi | Bin 14163 -> 14379 bytes
icons/obj/projectiles.dmi | Bin 36265 -> 36392 bytes
maps/runtime/runtime.dmm | 2 +
maps/sccv_horizon/sccv_horizon.dmm | 1 +
10 files changed, 92 insertions(+), 1 deletion(-)
create mode 100644 html/changelogs/geeves-beanbag-rounds.yml
diff --git a/code/game/objects/items/weapons/grenades/grenade.dm b/code/game/objects/items/weapons/grenades/grenade.dm
index 110f249c99d..cd41d9393b4 100644
--- a/code/game/objects/items/weapons/grenades/grenade.dm
+++ b/code/game/objects/items/weapons/grenades/grenade.dm
@@ -19,6 +19,10 @@
var/det_time = 30
var/fake = FALSE
var/activation_sound = 'sound/weapons/armbomb.ogg'
+ /// If TRUE, grenade launchers defer projectile processing and post-fire handling to this ammunition.
+ var/special_launcher_handling = FALSE
+ /// If TRUE, firing this ammunition from a grenade launcher sends a live notification to admins.
+ var/notify_admins_on_launcher_fire = TRUE
pickup_sound = 'sound/items/pickup/grenade.ogg'
drop_sound = 'sound/items/drop/grenade.ogg'
@@ -89,6 +93,14 @@
// Nor do we want people to instantly know when to throw a perfectly timed grenade.
animate(src, det_time + rand(-5, 5), -1, LINEAR_EASING, color = COLOR_RED)
+/// Handles firing behavior for ammunition with special_launcher_handling.
+/obj/item/grenade/proc/process_launcher_projectile(obj/item/gun/launcher/grenade/launcher, mob/user, atom/target, target_zone, params)
+ return FALSE
+
+/// Handles cleanup after special launcher ammunition has been successfully fired.
+/obj/item/grenade/proc/handle_launcher_post_fire(obj/item/gun/launcher/grenade/launcher)
+ return
+
/obj/item/grenade/proc/prime()
var/turf/T = get_turf(src)
if(T)
diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm
index f777a7c8f3a..984706b416c 100644
--- a/code/game/objects/items/weapons/storage/boxes.dm
+++ b/code/game/objects/items/weapons/storage/boxes.dm
@@ -416,6 +416,12 @@
illustration = "stinger"
starts_with = list(/obj/item/grenade/stinger = 7)
+/obj/item/storage/box/tactical/beanbags
+ name = "box of beanbag rounds"
+ desc = "A box containing 7 less-lethal beanbag rounds for grenade launchers."
+ illustration = "stinger"
+ starts_with = list(/obj/item/grenade/beanbag = 7)
+
/obj/item/storage/box/tactical/teargas
name = "box of pepperspray grenades"
desc = "A box containing 7 tear gas grenades. A gas mask is printed on the label.
WARNING: Exposure carries risk of serious injury or death. Keep away from persons with lung conditions."
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/guncabinet.dm b/code/game/objects/structures/crates_lockers/closets/secure/guncabinet.dm
index c5fdf3265fc..7667165a6d8 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/guncabinet.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/guncabinet.dm
@@ -67,6 +67,8 @@
new /obj/item/ammo_magazine/mc9mmt/rubber(src)
for(var/i = 1 to 4)
new /obj/item/storage/box/shells/beanbags(src)
+ for(var/i = 1 to 2)
+ new /obj/item/storage/box/tactical/beanbags(src)
new /obj/item/storage/box/shells/flashshells(src)
new /obj/item/storage/box/shells/stunshells(src)
new /obj/item/storage/box/shells/trackingslugs(src)
diff --git a/code/modules/cargo/items/security.dm b/code/modules/cargo/items/security.dm
index 23a59356544..24218504f68 100644
--- a/code/modules/cargo/items/security.dm
+++ b/code/modules/cargo/items/security.dm
@@ -168,6 +168,20 @@
groupable = TRUE
spawn_amount = 1
+/singleton/cargo_item/grenade_launcher_beanbags_box
+ category = "security"
+ name = "box of beanbag rounds"
+ supplier = "zavodskoi"
+ description = "A box containing 7 less-lethal beanbag rounds. These rounds can only be fired from a grenade launcher."
+ price = 400
+ items = list(
+ /obj/item/storage/box/tactical/beanbags
+ )
+ access = ACCESS_SECURITY
+ container_type = "crate"
+ groupable = TRUE
+ spawn_amount = 1
+
/singleton/cargo_item/empgrenades_box
category = "security"
name = "box of EMP grenades"
diff --git a/code/modules/projectiles/guns/launcher/grenade_launcher.dm b/code/modules/projectiles/guns/launcher/grenade_launcher.dm
index 70e588cac74..c258106663f 100644
--- a/code/modules/projectiles/guns/launcher/grenade_launcher.dm
+++ b/code/modules/projectiles/guns/launcher/grenade_launcher.dm
@@ -100,15 +100,63 @@
chambered.activate(null)
return chambered
+/obj/item/gun/launcher/grenade/process_projectile(obj/item/projectile, mob/user, atom/target, target_zone, params, pointblank, reflex)
+ var/obj/item/grenade/grenade = projectile
+ if(grenade.special_launcher_handling)
+ return grenade.process_launcher_projectile(src, user, target, target_zone, params)
+ return ..()
+
/obj/item/gun/launcher/grenade/handle_post_fire(mob/user)
- message_admins("[key_name_admin(user)] fired a grenade ([chambered.name]) from a grenade launcher ([src.name]).")
+ if(chambered.notify_admins_on_launcher_fire)
+ message_admins("[key_name_admin(user)] fired a grenade ([chambered.name]) from a grenade launcher ([src.name]).")
log_game("[key_name_admin(user)] used a grenade ([chambered.name]).")
+ if(chambered.special_launcher_handling)
+ chambered.handle_launcher_post_fire(src)
chambered = null
update_maptext()
/obj/item/gun/launcher/grenade/get_ammo()
return grenades.len + (chambered? 1 : 0)
+/**
+ * A less-lethal round which the grenade launcher converts into a conventional
+ * beanbag projectile when fired. The inert item cannot be activated by hand
+ * or produce the beanbag effect when thrown by other means.
+ */
+/obj/projectile/bullet/shotgun/beanbag/grenade_launcher
+ icon_state = "beanbag"
+ damage = 20
+ agony = 70
+
+/obj/item/grenade/beanbag
+ name = "beanbag round"
+ desc = "A less-than-lethal round intended to be fired by a standard grenade launcher."
+ icon_state = "beanbag"
+ item_state = "grenade"
+ throwforce = 0
+ special_launcher_handling = TRUE
+ notify_admins_on_launcher_fire = FALSE
+
+/obj/item/grenade/beanbag/attack_self(mob/user)
+ to_chat(user, SPAN_WARNING("\The [src] has no hand-operated firing mechanism. It must be loaded into a grenade launcher."))
+
+/obj/item/grenade/beanbag/activate(atom/user)
+ return
+
+/obj/item/grenade/beanbag/process_launcher_projectile(obj/item/gun/launcher/grenade/launcher, mob/user, atom/target, target_zone, params)
+ var/obj/projectile/bullet/shotgun/beanbag/grenade_launcher/beanbag = new(get_turf(user))
+ if(!beanbag.preparePixelProjectile(target, launcher, params))
+ qdel(beanbag)
+ return FALSE
+ beanbag.firer = user
+ beanbag.fired_from = launcher
+ beanbag.def_zone = target_zone
+ return !beanbag.fire()
+
+/obj/item/grenade/beanbag/handle_launcher_post_fire(obj/item/gun/launcher/grenade/launcher)
+ launcher.play_fire_sound()
+ qdel(src)
+
//Underslung grenade launcher to be used with the Z8
/obj/item/gun/launcher/grenade/underslung
name = "underslung grenade launcher"
diff --git a/html/changelogs/geeves-beanbag-rounds.yml b/html/changelogs/geeves-beanbag-rounds.yml
new file mode 100644
index 00000000000..09292fc71b2
--- /dev/null
+++ b/html/changelogs/geeves-beanbag-rounds.yml
@@ -0,0 +1,6 @@
+author: Geeves
+
+delete-after: True
+
+changes:
+ - rscadd: "Added less-than-lethal beanbag rounds for grenade launchers. These have been mapped in to the armory, alongside a single grenade launcher. More ammo can be ordered from cargo."
diff --git a/icons/obj/grenade.dmi b/icons/obj/grenade.dmi
index 099a8d2ec83610e72c486fd91e88f2a0441feda3..549d5b71e4fa6c085f4ed963e6a00a2b0bb03370 100644
GIT binary patch
literal 14379
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
literal 14163
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
diff --git a/icons/obj/projectiles.dmi b/icons/obj/projectiles.dmi
index d36f9006e482405a85ea6fb5d886b9a19dc8d53e..dd5796f84e3993787534c72d643ee897ed4cb584 100644
GIT binary patch
delta 16128
zcmbWeWl$c$)-{T|ySux)dvFUD+}(oP;I6@Wkl+ClJUGGK-Q6v?+a;&YeQ({jzF*%|
z&5xPYyZ7EbUAuc`ttkUR{K$q#qyk5&p?(G@xWXXEgN_;!tsw0iSy5+NsCa^WgP;kS
z-W;yugs@Qp3QW=TQT1`v77S3`+SBF?Jat*M);1;(4f+Vjd>~n#F*%hWz^TOG;CDq1
z{v_lcRUALQPR%6eDywkFl4cgIS7~>Yw6;`;Y?SA|&1$F!Z=B=qgRum?`cRVm=^}bX
zB7ZzrTHf^0B#>1RviaI+rsSnZ^l8nJhR28eTh_`8&{C>4z4jo#Yr&~h>p{_?ct~q#
z#d)7qp2W9BCEMC;4Vz66OY8WD@ejOE@*w=gu240SPG8C;I)A^VRD@e{jdEV{dlJDj
zYb5%&zdEG1{Y))E)?9x{UU@i}(4dC{!+P^j=@x&grX~_CKuU2BVxVv)ypuDe*2*wJ|M8zm{=Gq!5Znrb!@OkicH6z8I!wZHmx1gZ0AH;q*c>!3wx%
z6cU->r89kxpg=KGlj_jiR&eSJMo*;J4{R!u4G|a-lgHMN4uvk@(R29DK1qfrvTfq6
znS^F7mk7~0`M_Qc^>m{YD*a>LRk5<$;tlFV6WA4XB)*8$CCMD8M6*6s4p7|B>oQ>~
zYaSC^-VV=ZTa~)W{H1X2W)oNCyNzzc0es~XJW9BfTidWNHo~AHJRL;lYjC>v_k8x)
z_^TfeJ*7jsao)S3NCx{;+qO|HSe6HK7rYz`=U4&j0?>(#N&iXlMif4c2UU34YK$J&
z3K&@+DaX2D284U@8YfWH(NBhrN_z!^zY$|nm&=ceFh8u^47yh>F20rf2wlnQzX&QE
zarm&evj*S0bn$^5LzF?7iQt9xp7o`BIF!>mx=j4sNsKF6aVj1|>`W3GPK;O}T
zX@EP}S&;kmGa~Ltk&dmyp{h0aWI#H_U7}`hv??J|x+_%vaImSsVG`tML0Tkxp6#th
zDeBAwjDOcfq^xIl36Ny)v#%xX$0ebu7HUM(w-GTzsB3iRU$~24dKH`C+6qGN<#yPr
z`f6;sGhWD7`q9M_+MHs%VWt>U0JKjxT}q+||N5Jg&uI%ptD$@x#I0?RTgwG5Sl4AMaO({vjL^7pY|A3ZGyVERv>|-cUsJX2CRGJV|
z-7Gz2zuXmc%wmd_YZVADwLNktdF)BNA6H0jsQv<&FO)6`^UhW+dn
zd8oE71D`kV!(UE~F-3ykUn<&1;X
zXFR4(q0m_gb`5t43cUsBPS}2k9VHH^Imk8{4xjzTI=t{|Wo0z8i$ge}l-lJ8wOtl(
z0p}gmk8^58HHYhEywv2yICph8MDgLHFBZe=Ej@G%QVvGiqUnWMV>~aF?Vlx|@PZt-
zyFuiS3ZRu|@$K1bIaq6!nC6m-JpIxs_vYD;Dh+>V7>=ZEo*@jlotX6#wH#7)n@~K_
z*WBK>q`wcm&s0szD6-7ah18fD+IJXP#vw_4?Y?u>%+F?#@^L{g`OK1zd*gmpx*$cBrHC8Xj%J_gj*QuxM%qgf-WNbDQYJpUMK)~H466A_T
zEweh6C2cJkg$4r{jFG2J$tNP9e2vQ1dgGBVCh#hX7P*s4G_-|ko0hGDnuFrTUMn2b
zz?m+w4l`!eb|aBXcv07XK@0IhZARI4?{dfb+I(pc{ZN#$e9x|+kW8IZIf#Oi+*_-q
zZ=3bZtE2Vm8Ms3k<2kW=0|^$=bhIx(|GR~5YtL&@o_+wZ+0#uMvd{c=KREzVaFr(@
z$Ie}=CQy&9pzSR6*Q6muy$Go2CT$KCH!P5Zxm6dAS7FM{SGH1+iD-sG}C
zsClvh>-UvLTa+qs$pf{gHZ|3aErzDtiPU^_&H$i5VQ1s^SjbKTP!-R}wcaL+Sq8k4Ye+)eZ)$&TrFSR~fYe0$0;
z?2#tluriW>nn<4ulD&A7v0Xg5`#8S<+`OA(Tc5+yDAEz}=j)%l=|A`LE-%4-
znz8rP6#oo!+&zN`Su|F}4EojJ?Tl<`k-%_jQz)4Vqa-t)xRK=-3JDuUpf-W>t*Q*_
z_sVcX*@QOfaPAUzm#Eq>fwfpA_^>uHa0NCx^M-ZW;urqODKApBi!aFU#jtz6O#3y!
zrH7H$kAxjpJGC&Qnb0f-kZ4}rb6I%pTHIJF^bXh#T@rD-X#1kiE5A_+<(k-
zFd@2;nq(D!`4bL`xtt=p;K{Yx0pA!=@SdA^)%=cf0H2mwrxqM
zmb;JU{}RpC0Um#7>K&QQnOmaZh}kR|sPxW!ALQOZZfkSlPq!0`
zzVV+fOF-XloL1y?c>0R+i8x~K)BT8d3Vd%etM`W1QVvQhJjz5L>re
zLvI3J*POz(G4F9XH7;8d2UsSV3}Sffm_|%dI`J%fMcfQo7zYF`^^5#U1!mA*b*{ih
z_V5_Z<@_|Q5mD_DR)4DLO6EDvQmXH7EVJ#?td7P9?r@T`4vxeQqUFIq0xp(Pf51L*
za$Y6(3Yw0ts@EI(@I}Rd2Qzg6VDj{Pu&$XcM@5(*mQ}2;^c&J%DOPyjbEQ+J`xr=i
zOyNMkH7|(wRV5i)>52^_io}L*yy<)9QS{rgFrI3R?PZZ1(mY)3Qd8t|7`~Rx9!Twy
zRj-iRc%c?!9jiTpi-<5W)(1xZHASfsUy{aEk!SS1V9!&RztJt=NRXEYmWBdJI+;;x
z4HF(C2xG;>3v)c)CEccnCvF38*kl*X4rRF|66$L)HG(w<5xRYNQ?Cf6Ac?jFo5b~>
zG#GZjFr^7R-TopfmPJle01v;b{-n4jov|SgLfA{e=#YjTHHLKjiMl#pJpmY9on#-w
zLVO{3c^ez5`dW6L2sAhW_x=m#2ZH6d1G0*q_lohszx!h4YL=1c>&v<%!gVD>lab7>
zm>fbcO;w{1Sq16I!z0#+Ae7ZZREOCBQ*uZ+*h}yTehTti^}tVIK^C-svnXmo85h2Ic-#i
z$aO&*;O%bY^%omICq>odLUFe1+>2J;wF+hJTcsE*m___?_8>W=u*KcgdJqt*Z^@W5
z{KWSw#Ot)!W295eF#3u>X7wkc90`O)VW8g{0_NZyR7DeL7`S#f6zcotxiv6C!;P}%
z5(g0zyPwy{Rj6)(@Mp^cOqr{z%*dOi=yW`bz_8jBI!AjSG{pkVd^nuzn#2D7FerHf
zX5fc7U1P|X8U8ZK4psNXbEryLx%a*+UXS=nx}Ox#6w
z1Chx=(XE9P&&;;8AKV)SjQ0|K_j5F$
zF-L?!1@`5cFq9vP-Yk&JkSQ4NxTm)$ctd?8hNFnM=@3qnOYbcUhV(bl9#s2K
zC1YG%+)kr4%;dkvTv@om{uJts6L`e8x{*=z>Bl7`MBP-|y^?g=H=Y-00Hp&d^-84H+#W_LTF+P*rATco_
zN_V-v8~!Zpy0V!Qq?Q~V$cz0Wj7i!$A
zK*DEL$)eSg;a~+}h$%crPg2PCfR>jyVAU!em`ao96VnGq(Lz&7>s~F>eVUVK(`k
zUmHUR$1%9*){9|U-_Jtvv0Yn+zmi9i@13l`pBG;IIUva!c11aFo0M|F;(nC6Ow)lj
zhtk4Ft`;}>omY*5bfDmVYWi1$D6o9NVC!tgKA8BHX)0lpAOnSYNFVWE;DE~y4YUJ{eMGBU!INVmAYS7PNFR=HN
zjFI08nQw`%#LRUk)1h0c#13mGQ;kP4fTEu__swmYGZk*5nVqK&kJ}h9146`cKc~f1
z7?{Lk>)we}p#Xu7?M%@py7v^%Y9qByw^)7AvjcG+rS-3mXOzO;%1^
zu%$*a+Fx@%)j6H|2YA}E@=!_YAE7bTCy+$e<-#N$Zvvpis$!1G=x4gEuTSh_4l
zu!*`xzFZ!i9Bn&hHESO~0DSVq6h>r<*yMV2$;G4JP%%+CS-T<`o+0WdD-Zd)
zvl0&?$N;UF3|7XneX3U`3y~2ny62*>Tg@YJ=G0QD`k0JWxdfI;4}J!g`8qkRIx)m0
z=8b)*1l!P!5qlr{V!iGshFiJP(H(MnF*SNfS5EIIs>~llR3L>b0M)QDxWNpVdU
zmGMUpnFQ_HmCaH8k~v7Pav$TW0INF{Et)(n!wF3Ac1AcXZGE^XOAfv#el9S
zGfU=0vA&_P-+%E>ezVN-vNH?U~KQeTx6cbcxvrp+?1J@n~Wrl;YaoQb#P4BPaA
z07J4x)In!gOeWr15qs`Td#*SqjMfW`_(j$;f5Y!>%CJmqAEvrQixd7#
zh}qdy@NjWi+u5CjYCv?no;eM?^LBsk%SCrozKUS?G3UzI1okN5vAYKiK`479KkL<*2cLe)ER<
zt(DarY0F~`&hiD?6oSR2EFFP)r@|w$<6FinZI?iqS{k~9SG4u={A_tdh9(DHqrB<{
z6*ED8y27Ce3W+g~Hpj#R8#?-MEW|K040Je^2q56ELr!5tP9>T~{+8+QDk}aK&%ysm
z?f~p;+NN{?25(x=!-Z1i_zU$xX};#!?_*I;Ok$8RO3C7!D;5vx8YzgArah-b!sm#`>gnAVb;FNcRPuK4
zczU+$4y!YnGgf2=>L@$xHeW)HyKDYg)
zMoHqG1`e|*nK2Rn74tZe>3fK~+ZEQcO#u+OaV_7Pocizs`%pa+K|jAb?cv&ljA9cy
z4N;#)+d1kb-kSjGm2`FWQ)XKpK{Gxb5*AOc$f9g8qzuxWQs~~i*xCFFKA9Y%f1&I!
zg=1$r0uctL0ofaKVB!X+RkB*8k$tzKx`Uu){$rZKIoT5|PW&bC;;#QzY
z={~d0;3?N(#foB1vBYe*S%>#`douUMW&Fz0ys(D(X%TU)EH89!$&Z8nZHV)Z^5sS%
z0*?KTS*H=F`v%3QjD%kUXT2O&W<$S6>u?FLxowd?<*Zc}2f{6@q{;~Eiy(7G%edGix^}ACrxCm=#utDS(q6${RyZ7EB_KZp-g;CdfBKYxo{bHcnM3{7ADH-M4+e
zM$WxN2_K*5nRgaFSvqPYKmqT;n>A*S!HJr5AB#+JPziT!6@Tu7Zv2_Sdy=;I)wV-_
zlSjlx_fA04eEOA8Icx&NuA>O_mKRAL(|ckMQ0OtBn+3^OW1N~KdXqVBr$4h)Gm(`<
zYO^Cyi#WKEqiH3ea3Cg-87xXYGV!2dnpO<-aNtbBl$Mg47p_Ii!dwo~EI(pHhsT(3
z&uS(?2a<1oro-Zs@VlEr4jxx4O7mhUNbu6s8!@PNAtgB~5L?EdjGzN7!5y_A1!st3
zWz!vzA0r41$-)y@bR}}eOK?=N6uMxM7&1CZ*o2HHAaUpmI!}{$h{$uZ4lxhS>fBa@
zBX4RWzl$!a;?vol=APnmV{_)vEwz~CMy(z+I}#kZ)-FZ2aHbMu4p9+0P9;&=1;^l?
z%QGRi?{f#)pRj_y2wDNgboF9=I$t(#eGcX|Tf)1Ow3}9Q&*wB#e2lGEZO&&*z#cl*
zjZs#`pzEBswkhCU)RAC%OAS{rs?z8*AySQT8IH+C_G*!9D5?=t#fhT-kpbYhYfNx+MiNaW=YavaGNi5Y{l
zYE^_|2ucX4u3Bhem>UF5`dOQoj3(^xrc9Db(+upJsGvAcp;y18sH{1tqk_7+z3Aix
zrMWygd2u;MeWTC|HRSQ<
zm$35H%gb>hgMF}W85$J25M{t4;d?pJtf8<;CG~z7VC?{f5Uey|nwJZDvZ2ddm{;KS
z>aoKvS@rRbIVwTHCX#Yp5Wk=eXxP9Qf(^~ddZOJJo1nRJNjei_%2KMnUm405fs=kl
zs*N`E#-`O_|2qY@)78f`{9tG66$SaRd77lhwylPugKfq6$q>m5V~4JTjmE6~lbUk*
z^%7IP9?BkoWW%mr9)HM26219oMwvSt5PPbWP?Av)44v9?LHMcE=BLWEp;U
zm3F=H9ZF+1+My(kdRMv*X!ubgANb3s=V^CrfO@A$P}#Z$*>qg!Vi
zhN!nX1tCZ!^2&qw`y@*uCR52526SYz6?8SEPFhs}Oix(|<0jZ=8(9
z1fzv_(f9MpR3RUr??vI_$$d*;_PRV~yM7db`F)B$3!&MiYz=?RIf)R&AZ}!0T!lU>
z`%>G1#WrhPY2Uxi;{maz7c)G9zwhlwM0jre;|mgV8s1tf0)v+fi((iFl_F=qk;v3tRzI4~XilA9!cC1d#UuQ0PI-(D=zojq|J;Y8O
zR|TI)XPUrqO+Yy0E879|`}D(Q_5S@B+-v|m2bo9;1-CO~8pZrzR<2iIxyQ?I>PvhO
zHH-igBA#(ls47fsDc-jMd}Bh$8#XDbGbKLm{iQXTNHYJFud#&)Dqvelt4>@b7SZst
z12g1zV4E1uA?>P@7(tQ!g;U>yfAOjfu4MKQ{+N-4bdQ4_5X8F+v`TKs(moRRj-~|E
zrRC12ecFc&CH$Tt(qJP4m!KOE>0r{~1(>8x#7;Wtv{upC%zlu3V`-4jBSB*&!P53<
zC08l7P{X<+Yp@#B1y|e~tps>cdH~KcFTBR3G#lqJGay=N^u`rX26*naRY=ltM
z!DBJZHPT?2dEmFIJp&l#Y&5KU19(F)y)nV}EiZYVeaI0kDu&C6R*S=_T2TYp$+svH
zi$6pr`~%YmfoFy)sdxB{ze5(RYuHEq(9|vh!=d>hZsdd}V#wOb&Mu?jfM4;YiNz{A
z$XS$^we{qVRQ=$#H|NeV&7TPSt5y&}D$y}UYLRhWUk>*^YcWqvN~6&yIBhJz_LJ!t
zkST52!q`M_z}4e2hJ(upsxoZiCe4M`$2TfyiYiYwY0lB*4&!pGm8f(2@mOA=dQfB|
z(xwkJkpFI6S&H?n&9NJo2EIAfQY$`$je$fn{=V9)6^nnSwqEhDqryS#H`OZbboqUD
zV>4HW##_j|xX$2X_Vtm{kjLJy(uA_u)GjG)gsFTk^^o?zSd0cP9%(
zQWO4(T+vSo+NyQnOz`Z0pALPspDcuHD`@8W|3_E?{|Cm>=6@JVuedPk$xD5dxf+QbO~Xx3Tt7m4nUy;wUGmwQr@yh`AkLs*sk_D`fYbel(I}kpwB|9P5OF
zJTbNm8sze~%rd{{m|{|tK-+>_uG+(eoP}i&Ped&LX(Gq(>5cu76*;=q9Z+!^{YOvoKpSz7qKOtM@T$V=NecC$!Cb-z7le@+7^er%2HwCQ
zgX62#qZX;=Zv+|=rm+ovdL=(o?`7~;Q!W=*dkU#JN;)yjuQ+4*$CL^Ts*Bj%)OJ5p
z=%k@lsMW(2A;cDV{RNRjL)NQQmt*%(4hC$70y1-HQVx{qb%9e@A2Sh*7lnFCN_Rqdt`?D8vRBZC6IdJ%24Ui0jwhaUaZ!0soroP&;_6M`I&$cVrMgExC3
zYC~*)&Bk%$#WeR(dn90@yzV)&eao?0>15_=iU7hpQ?H%JFW(WL8`%~)Ol)II
ziKG31Kw1+=r7ccLveup2gUErx?^cRLZqZ&>Nr*Ly5S$>us%jIn{m`Qw6Wp
z+sRQ}#yW~R_)`XBmxiGW;Q^f?yM0zjVnGapO-FpiSAGV!pwQf&20-L!=6kSY*z?XS
zzBkb>KawS{&DT-9O_qwD
zm+eHgtIv$4Fm93D1amAteB`g&9MUMQlx>H9rG#nuH{)w2>N{iEen7g}@T$3(fM6PQ
zxHh*r@mxFZTxy8T;{k%~3kg!+8BIvd@*vsrL$d^^qhgs(M*kam)v=^;5??IuVTom|
zUudU$(c_RuNk-8zq^4-++4(?g$+jMsWtdQEH6L
z{WF^QTxI3H@Zk;zmn=4i_BXkH#a(WHllhP+^!I!A`p
znpJ{R4gZ_6{Sk2R>1eZB$R5@J{b<(->BgX+O=Uphv{2~PIpwLqEym$pO5%z3>6V=t
zN|87Phxog$<^tSLbhkk_jg0N+-$RAn@``
zM%j-g*hewXxC3c(=J$7+;Q#^e_`;WXt=vvYq-0?-l^KBH%o5fhm!+mnmg<;*s+UYP
z(zNUft6SOBO*J@Sgx*we?S&m}S)kZ8^=sJBKKeB=zq0#x(2yf5VP4*8%Mr!8AL;vb
zlBd3|(^A74M!Za3%+j67cK&(_-WL=eFgLSkxrh;L;mu<>QFCI>c>>uRa`-xqvD
z1*B7nBm*h@p>(FIt^LAy3JzV;?9wgidb$#{3qWm7j*vKQoL^v`*@Y~njH09t0lCC%
z5#A_Kc!Xss){7&tX0LU94w>pk;=65eD*9$ulG8bq3n7S2Ws
zj+F^b1k3XM^fGX_@rdcVuh?IX;`@L4r&%{oOe*izoHX3Q#7+C+
z&jJTRus!d#XP&I6jZdo$c<*#1uk|v;>R(iq(Td{&h*QjbA_pV@mKWWo(oK-*g(Gt^
z$W&y)7|Ew6z{fl2A&b5GW85sG0&piyx2eM#TA(ZZCXfZW-hcUQ$7)W`k~S4O
zU1T&P>}s@W5eH!EtUTxz5SgW|R&uu(`Sz+H*4-wKT2{Se6=o0>hf2h2h(U!&Se^hQ
z9PO;Ciw{mg);k>-TRlFil^LVy$#GfhM;u8CPi|)7in3M=G%4qUtjYcSYpkMI|-T_NlBc-+`kgN|gsU5wtd|GbcP+;hPp
z2K#Ai{osQc)3#3%r49+Q5k2GVHdROD>7{*C<<)DtAW?vtU>q!k$cE#6c4R9v*ZH=@
z(URJi#ehV+BV;IonOydl+;E>3U~h~_L$a{nlzt9lc-Ml-7~S;Tgg3-1&KGZ9Vt?>@
zcIX$>HezFHw|k
z!fam6v&G%1`z)1hvv#>Y;s%vH#Il0RVCEZk)@zD_?pZw7d%2~~Tq0wCeUQ6vt>vGO#Qm^pXC=Lu6Wp+W}<7?ZiOZ;v4aCkh~2D+c(^;J6UBYO
zf7PbAt|`G|FRF)?#}H_3CNsM8GG|;tXF3sbY4kDSsKpPF{gNt5^+5ihN3Bg#^`^-Y
z4=IXJCuv!1ZzzWOu$;L|xQ*X27n%UJGKyfOOq3cZL{xU=?w@JGq9(h=zWZ&%_*Jqe9dc-hK5!y4B)9od
zoXNkwNV#h)WIDPDW0$z9h=QmIMp8v
zYEU}POi>0M^Gob{=SGPNXEywMymkv3Gi`LA{uv^ZP5pl;(_~XcQ#kPt!ZZ%@?G;&q
zn#MvCtydwGEII)NMpqh&ml3Z35|aTQHisp%uW?BKJ;L&dUxw-|
zb^rwhpDG#MspZVFn``2;nJdNS*N9K}Y(-JAyk^x1;?=}E?#@ll&PZNQip&3DV2L<-
zimWc(oIj31qf!H&XVyi4s9N-4{$A0_|34_rm{HrR
z6AQn*lJ#Ty!&_^a?PJo$t=mqRMep0@myPS*TnoTorZ`|fPj8RfP>~3m=({O8W;o9uiR!kFQR`u_OIM%E{
zqr^-mE~CF5jvfIcBUiu
z-(@2ZarZ(QN@E|l)AwI<5(z2S4?3<{HPYu`|2|4;aSsrjA9I}#tRz8Fu6vdO?`g9Z
zxA#zgCmJd(FrqT2XEo>tnA06X+qN0-JIihIdAGNgGC&^Krb~_kkKLgYnxFQ+jOkpr
zd+jE9IjzF+V{)BdSE;aXsJ*(CWYd2e^`tf%^Bfzbyj*WWcMV^@T*kU4o>Q?J&ZHRf
zTVS8}XF#^Is=YMDjOG<<_J-baif74rAj8jm8L*QfdGDvE)c+dp&e`=}0P-Wdv%wwCPa`sg
z(@ez_G(Yp;r=@BcKSn|uh!tA@R&US6Fs9C6+WoX7RUHyeeOAIu-curLpVi2_&vNy8
zY9(4>^f;`211tIvB=WEs;vLllDJ|*`?`6Ato|0h=l}$8d*iXOH>bl!Ccw&w@s)Ln{
zF{Lag+N0*|D&_n6+htDl?ffM{f0l87!DdRNhr|eQJO54!3T+IuhgIkrBk1uJ9zuh4z0MZTrf?
zzQj?#%lVXg;?bXXs?Td1tYYz9>7e$l?9i1s_U-PR__3992Ksb;y)#F
z81$~lBQmIze|lHQ*u*?&4&b1KQLHkVfkN7s=fgvS*t~wEV`A#vxirRmEb~Lu3^)SK
z=mL7sGbb{p*-7sq#4}6tinF9#2Zqi(`u&w!lE1-AwsARPJY#qHzXv)&C`>T0tprMKwhL!aUjrh)%W;HbneAfEiu>Vl@qj4
zd2ImD-sjR^`Ca)fz~228a(~RT4R~e+^G5<;5xJU>osViKpXWyn4J|?#P&({1wS_croYZ1+SFl_TF{)MVLs0XtPJWt0@&zIf
zO!9~icFfYO@?}?xZaBriU*`6FAgvz&DdB)2iGl%d&sb(k0L>57)tOw)u?wn8p;M=U
z$A^qP-9vO<`d39&K*d-^ox3Ms+k4S$$Iox{is>d2loHT@4*HnJ1}V7*4N$HEq`RbV
z7ZLb2O=XHS&{IQ;!{Kh0jS&En%%35ydDvX#GJCm-yuQDKtQ-xs0|#bw=F&R*9*;xfqf(m
zJkNnBlB!mOq&HK3wAP~2iV&6}YAtc?l5AYlG))0A;Jr3Zy2`h6(fI_Gf6~`;Q>xN!
zf|iDx@k&?Gi|cA^z*uOBBocPqw!1LNNd#tR=uS+?SqqaS&hMHXPo)8NJE$(}!g?2!
z(B(}Q&KlLAT&lPR-e60B7t@wuBMsl|3Cf>K`k{>
zJ9fuLc3N!n}8C?TSZVF7#L#lKWP9d`-|ICGY3q^M%Cl;JCs8@>zp5f
z$?@AkE%W*Nq=V0GzceSX9!d=9k--)zm0@
z$mzhEpT~-+JU=mzs`^#KlVz_qn3Eu@r|8pb*TGXndL{Cby==FBKWEGAeeG2I>{;F~
z=A}2~t4Gm`H`KL~xzC33BWWCoMNaql7bI+tM>v)m>ZW~H9Nw}K
z1Y)x$Si_a$bpsl!+R1UB7DSu(vW$>&hzfzPTW#6vejysqc@Ln9SCzw};{)4wjeE|8
zCwNEi_94+#^3^LJ&h%P*tN!&+LiP=rfzYoJAF{iXyj52q?nX$+^6^V|b57I&^OkTS
z`sRn1Z`LXeN@O+uN8VnV@B7`}-fQn5#DhKi_vG8;q}+(+w;|?*Y{X(4&NzI#PLzxN
zg$|n1_lw8T+v0BoK}PQ%3Oe-)E)FF!w8Vctl*<2T>E|IgyL_5gsHd!X=Xa1pXrAqO
z_rx)J0UBK2&wuKFvJAtw>5Mw`+?py(JfM5H)*c%l(S0AQ0^+o^wDwm+lRp(fxH^cT
zeQ5NR@V03Z9VnF(7vEj{0(oxKb~`8Lgr{J*Cv!5a8uZ31H6?l
zJv~-foeu1OvU{@M%|7C~
z6#nC-$eoX7YCCMj9-wLg^CarG8>
zEvppNpxg{Mi^1ti07h%1W55Vp>EEIT^md(onZ5jSM+ywZKbQ_>WMuTd{akm20}e1~
z`l?)Q=qE=yUKi(`zjh?vc3jRqn_KhcJ`4LbiB{#X@qG0Bs(Mc71S*H0(1e89Y;Noj
zc3RH!`e|{appxNoRcl}8EDn9LPz6|R1xM?D%I$Z5e!g~nJUSG7IzU)y_~o5m^|EmP
zLDB9TXy^hm1kR8C_t0`uU6X8A0;N>bXd}ZF;I6iR;By0>j`S6-%2XY8%+my);sYA^
zv>iK@=KM^;37r3Y%5b89PGX&}GRo8ThlPzeV&AJA%zIuv=oNiNU)zhP?FNh@>95z*
zS{(=X?$>Y++s_)>q&mdbKenfSs3%%;7dJDxZ4EsiW$akdjxEXrHlxFb*Dzi@6_HV1agou5E^;F((8;r?8|bfJ
zd1mzSHohPh_2>oMM^W7BHm3nOa%d1F3cC|+YO>VRecU9!f6xw4fMosSDdQW*Ng3W#
z)V#9rwx<$iD=M&VC%Z8s&By|-fxsXy$Sxe##?gq
z6dL`vWIOSFM*Fu=cy~wr=l$@i*Lw=nai`xv+i|7AQufcv)+U=S0Rh3)8dQW32e5o?5Edm3NG_t#$C>Nf2syl8N+^WfVD8NKv*+8VR@
zLPAo5{+ILb$cZ%-T!NVzwqht
zXRui>$^pwk7`WhWy41%v96;{j?+WN<3w1-P*Xg>2_l3aeTm)=dNdl9liqt>Xei9XU
zpaHAwcuhafsP1Ww{8+$dtk#qVHzyz9uiM`kJ9?ip{cV(ZGeh}lKTHmus$MW632V%{
zQ4T2L!Si7Cx1JM4(4UUIO<3Ts4Llcqm9{rtEIY+}`=2J=$BE$&VOekN?uEuC&KveqcN
z{b9>5DI;KNzuI*2oVhs8rITj$+U6Q|E@{OymPJohFu!ZV5xPcgziHs4PD~UNyz*6Dd5L_Tw@L-&1s_9$3R<-KAit)|McE^iP_e?bzL}u
zv5)AySJIJn)qqJussc(qU!3&2FdPsLo*}%hRGj90ikB&3$w2
zgV}HjR!W&l=^1y&-?-B^