From 2d101d064e1625e424d0e504def878fe15ed31c2 Mon Sep 17 00:00:00 2001 From: voiper Date: Tue, 11 Aug 2015 10:59:50 -0700 Subject: [PATCH] Git fix #3. --- addons/flashlights/$PBOPREFIX$ | 1 + addons/flashlights/CfgEventHandlers.hpp | 5 + addons/flashlights/CfgSounds.hpp | 7 ++ addons/flashlights/CfgVehicles.hpp | 89 ++++++++++++++++++ addons/flashlights/CfgWeapons.hpp | 61 ++++++++++++ addons/flashlights/README.md | 11 +++ .../UI/Flashlight_Beam_blue_ca.paa | Bin 0 -> 131489 bytes .../UI/Flashlight_Beam_green_ca.paa | Bin 0 -> 143504 bytes .../flashlights/UI/Flashlight_Beam_red_ca.paa | Bin 0 -> 133266 bytes .../UI/Flashlight_Beam_white_ca.paa | Bin 0 -> 123643 bytes .../UI/Flashlight_Beam_yellow_ca.paa | Bin 0 -> 143639 bytes addons/flashlights/UI/KSF1_ca.paa | Bin 0 -> 34359 bytes addons/flashlights/UI/mx991_ca.paa | Bin 0 -> 32340 bytes addons/flashlights/UI/xl50_ca.paa | Bin 0 -> 29497 bytes addons/flashlights/XEH_postInitClient.sqf | 8 ++ addons/flashlights/config.cpp | 18 ++++ addons/flashlights/data/KSF_1.p3d | Bin 0 -> 48588 bytes addons/flashlights/data/KSF_1.rvmat | 79 ++++++++++++++++ addons/flashlights/data/KSF_1_co.paa | Bin 0 -> 28405 bytes addons/flashlights/data/KSF_1_nohq.paa | Bin 0 -> 51285 bytes addons/flashlights/data/KSF_1_smdi.paa | Bin 0 -> 21947 bytes addons/flashlights/data/MX_991.p3d | Bin 0 -> 33648 bytes addons/flashlights/data/MX_991.rvmat | 79 ++++++++++++++++ addons/flashlights/data/MX_991_co.paa | Bin 0 -> 30434 bytes addons/flashlights/data/MX_991_nohq.paa | Bin 0 -> 77567 bytes addons/flashlights/data/Maglight.p3d | Bin 0 -> 29928 bytes addons/flashlights/data/Maglite.rvmat | 79 ++++++++++++++++ addons/flashlights/data/Maglite_co.paa | Bin 0 -> 11080 bytes addons/flashlights/data/Maglite_nohq.paa | Bin 0 -> 22016 bytes addons/flashlights/data/Maglite_smdi.paa | Bin 0 -> 11096 bytes addons/flashlights/script_component.hpp | 12 +++ addons/flashlights/stringtable.xml | 29 ++++++ 32 files changed, 478 insertions(+) create mode 100644 addons/flashlights/$PBOPREFIX$ create mode 100644 addons/flashlights/CfgEventHandlers.hpp create mode 100644 addons/flashlights/CfgSounds.hpp create mode 100644 addons/flashlights/CfgVehicles.hpp create mode 100644 addons/flashlights/CfgWeapons.hpp create mode 100644 addons/flashlights/README.md create mode 100644 addons/flashlights/UI/Flashlight_Beam_blue_ca.paa create mode 100644 addons/flashlights/UI/Flashlight_Beam_green_ca.paa create mode 100644 addons/flashlights/UI/Flashlight_Beam_red_ca.paa create mode 100644 addons/flashlights/UI/Flashlight_Beam_white_ca.paa create mode 100644 addons/flashlights/UI/Flashlight_Beam_yellow_ca.paa create mode 100644 addons/flashlights/UI/KSF1_ca.paa create mode 100644 addons/flashlights/UI/mx991_ca.paa create mode 100644 addons/flashlights/UI/xl50_ca.paa create mode 100644 addons/flashlights/XEH_postInitClient.sqf create mode 100644 addons/flashlights/config.cpp create mode 100644 addons/flashlights/data/KSF_1.p3d create mode 100644 addons/flashlights/data/KSF_1.rvmat create mode 100644 addons/flashlights/data/KSF_1_co.paa create mode 100644 addons/flashlights/data/KSF_1_nohq.paa create mode 100644 addons/flashlights/data/KSF_1_smdi.paa create mode 100644 addons/flashlights/data/MX_991.p3d create mode 100644 addons/flashlights/data/MX_991.rvmat create mode 100644 addons/flashlights/data/MX_991_co.paa create mode 100644 addons/flashlights/data/MX_991_nohq.paa create mode 100644 addons/flashlights/data/Maglight.p3d create mode 100644 addons/flashlights/data/Maglite.rvmat create mode 100644 addons/flashlights/data/Maglite_co.paa create mode 100644 addons/flashlights/data/Maglite_nohq.paa create mode 100644 addons/flashlights/data/Maglite_smdi.paa create mode 100644 addons/flashlights/script_component.hpp create mode 100644 addons/flashlights/stringtable.xml diff --git a/addons/flashlights/$PBOPREFIX$ b/addons/flashlights/$PBOPREFIX$ new file mode 100644 index 0000000000..674d0d255c --- /dev/null +++ b/addons/flashlights/$PBOPREFIX$ @@ -0,0 +1 @@ +z\ace\addons\flashlights \ No newline at end of file diff --git a/addons/flashlights/CfgEventHandlers.hpp b/addons/flashlights/CfgEventHandlers.hpp new file mode 100644 index 0000000000..d5f49bd5c3 --- /dev/null +++ b/addons/flashlights/CfgEventHandlers.hpp @@ -0,0 +1,5 @@ +class Extended_PostInit_EventHandlers { + class ADDON { + clientInit = QUOTE(call COMPILE_FILE(XEH_postInitClient) ); + }; +}; diff --git a/addons/flashlights/CfgSounds.hpp b/addons/flashlights/CfgSounds.hpp new file mode 100644 index 0000000000..f0fabe3a39 --- /dev/null +++ b/addons/flashlights/CfgSounds.hpp @@ -0,0 +1,7 @@ +class CfgSounds { + class ACE_flashlights_flashlightClick { + name = "ACE_flashlights_flashlightClick"; + sound[] = {"\a3\sounds_f\weapons\Other\dry4.wss", 0.2, 2}; + titles[] = {}; + }; +}; \ No newline at end of file diff --git a/addons/flashlights/CfgVehicles.hpp b/addons/flashlights/CfgVehicles.hpp new file mode 100644 index 0000000000..fa766ad87b --- /dev/null +++ b/addons/flashlights/CfgVehicles.hpp @@ -0,0 +1,89 @@ +class CfgVehicles { + class Man; + class CAManBase: Man { + class ACE_SelfActions { + //todo: add flashlight attach actions + }; + }; + + class Item_Base_F; + + class ACE_Flashlight_MX991Item: Item_Base_F { + scope = 2; + scopeCurator = 2; + displayName = CSTRING(MX991_DisplayName); + author = ECSTRING(common,ACETeam); + vehicleClass = "WeaponAccessories"; + class TransportItems { + class ACE_Flashlight_MX991 { + name = "ACE_Flashlight_MX991"; + count = 1; + }; + }; + }; + + class ACE_Flashlight_KSF1Item: Item_Base_F { + scope = 2; + scopeCurator = 2; + displayName = CSTRING(KSF1_DisplayName); + author = ECSTRING(common,ACETeam); + vehicleClass = "WeaponAccessories"; + class TransportItems { + class ACE_Flashlight_KSF1 { + name = "ACE_Flashlight_KSF1"; + count = 1; + }; + }; + }; + + class ACE_Flashlight_XL50Item: Item_Base_F { + scope = 2; + scopeCurator = 2; + displayName = CSTRING(XL50_DisplayName); + author = ECSTRING(common,ACETeam); + vehicleClass = "WeaponAccessories"; + class TransportItems { + class ACE_Flashlight_XL50 { + name = "ACE_Flashlight_XL50"; + count = 1; + }; + }; + }; + + class NATO_Box_Base; + class EAST_Box_Base; + class IND_Box_Base; + class FIA_Box_Base_F; + + class Box_NATO_Support_F: NATO_Box_Base { + class TransportItems { + MACRO_ADDITEM(ACE_Flashlight_MX991,12); + }; + }; + + class Box_East_Support_F: EAST_Box_Base { + class TransportItems { + MACRO_ADDITEM(ACE_Flashlight_KSF1,12); + }; + }; + + class Box_IND_Support_F: IND_Box_Base { + class TransportItems { + MACRO_ADDITEM(ACE_Flashlight_XL50,12); + }; + }; + + class Box_FIA_Support_F: FIA_Box_Base_F { + class TransportItems { + MACRO_ADDITEM(ACE_Flashlight_MX991,12); + }; + }; + + class ACE_Box_Misc: Box_NATO_Support_F { + class TransportItems { + MACRO_ADDITEM(ACE_Flashlight_MX991,12); + MACRO_ADDITEM(ACE_Flashlight_KSF1,12); + MACRO_ADDITEM(ACE_Flashlight_XL50,12); + }; + }; +}; \ No newline at end of file diff --git a/addons/flashlights/CfgWeapons.hpp b/addons/flashlights/CfgWeapons.hpp new file mode 100644 index 0000000000..09fe70d764 --- /dev/null +++ b/addons/flashlights/CfgWeapons.hpp @@ -0,0 +1,61 @@ +class CfgWeapons { + + class ItemCore; + class ACE_ItemCore; + class InventoryItem_Base_F; + class InventoryFlashlightItem_Base_F; + + class acc_flashlight: ItemCore { + class ItemInfo: InventoryFlashlightItem_Base_F { + class Flashlight { + ACE_Flashlight_Colour = "white"; + ACE_Flashlight_Size = 2.75; + }; + }; + }; + + class ACE_Flashlight_MX991: ACE_ItemCore { + displayName = CSTRING(MX991_DisplayName); + descriptionShort = CSTRING(MX991_Description); + model = QUOTE(PATHTOF(data\MX_991.p3d)); + picture = PATHTOF(UI\mx991_ca.paa); + scope = 2; + class ItemInfo: InventoryItem_Base_F { + mass = 1; + class FlashLight { + ACE_Flashlight_Colour = "red"; + ACE_Flashlight_Size = 1.75; + }; + }; + }; + + class ACE_Flashlight_KSF1: ACE_ItemCore { + displayName = CSTRING(KSF1_DisplayName); + descriptionShort = CSTRING(KSF1_Description); + model = QUOTE(PATHTOF(data\KSF_1.p3d)); + picture = PATHTOF(UI\ksf1_ca.paa); + scope = 2; + class ItemInfo: InventoryItem_Base_F { + mass = 1; + class FlashLight { + ACE_Flashlight_Colour = "red"; + ACE_Flashlight_Size = 1.5; + }; + }; + }; + + class ACE_Flashlight_XL50: ACE_ItemCore { + displayName = CSTRING(XL50_DisplayName); + descriptionShort = CSTRING(XL50_Description); + model = QUOTE(PATHTOF(data\Maglight.p3d)); + picture = PATHTOF(UI\xl50_ca.paa); + scope = 2; + class ItemInfo: InventoryItem_Base_F { + mass = 1; + class FlashLight { + ACE_Flashlight_Colour = "white"; + ACE_Flashlight_Size = 2.15; + }; + }; + }; +}; \ No newline at end of file diff --git a/addons/flashlights/README.md b/addons/flashlights/README.md new file mode 100644 index 0000000000..6a04b78091 --- /dev/null +++ b/addons/flashlights/README.md @@ -0,0 +1,11 @@ +ace_flashlights +======= + +Flashlights for use on map and to attach to player. + + +## Maintainers + +The people responsible for merging changes to this component or answering potential questions. + +- [voiper](https://github.com/voiperr) diff --git a/addons/flashlights/UI/Flashlight_Beam_blue_ca.paa b/addons/flashlights/UI/Flashlight_Beam_blue_ca.paa new file mode 100644 index 0000000000000000000000000000000000000000..737780d1c8a7a97a007654621d91fe8ce81d7eed GIT binary patch literal 131489 zcma&Odvp_5mNi~iWyKcQAio+MW2;Iky)A=DAOWhRlIcvx$>f`KG8tg3hfV02FB9Ce zW=(hI(N!hc$uKM3J!>3y8aj<+z;QCPoy3HI6X2F4^GHGn;S~oPTL$CsG8h8Hab#7M ze#hzg{{O*}ED52i@o+l|mxos)f_?`Pj$4RWsvu$|p(8k?BVK{a|BpXygznu{ zs4SNw+yp`W?|-<;{&3U65!xF>-kJ!3qD+lUw7XaW8HvX`YDA)8HA_5gfE(@9QyhUf zLAR76j2@XJ;3rzj>6!n1vHydsBZwy`mzT&R-0Fim4_jHQR&~IAO{+;DO|8L|53xib z|AkA>A!1NPbQ0w>r4XT}k$#VpC3JgQMz%5!bA;;Qh#XbR5^@nLA~)Mvq896FI3gTJ zh|@^I=oB9?a2j1;tWD5)29KBK+bM%!`|~IHqgqYXcwu!ORjQxPu9mCS8Wzc@W2sP` z9-fxR`_pJJFpg6FEsY9^ayeCT%0w=VvP4w9Hi%ImACrx!N15f(sKMbSwlau80fhP{ zm5h|zx-WrxazV6bLFEYJ_7W}I$MSo6+#Hc~utZ$nQ#gMON6fC|&^9+l2#tKT626&O z4sY70EXq}=S+Z#1aado5r4#y`7C@rDC1=%?k)r&Dg#Nj8wJII1e}FJ9m1)CLfnGKD z-FzBV084I&{`m_&!VO{WbFWq&OZ8 z-m%%$%I^y-=vAi09w&QrMD}}!x};A;Glltiuk}wIB?{<>AvZfyl>cskgtgB9uKmXy z-7R)q0o92z-v#quEXqftWDxaB27keh;@tP&!H2hV#568Sqh8pn9*Xf1>8<^_qRe-d zE`gBCTijSDF6ve)LRF`K?!=@%JJZ2G(_dwW*B7lX$Ye5vlB-tDTv{ZYZYN*Bj9~MNzRD4&P znB+Bq3;>y{NxZQYkfSxbbT+S+Zyv{|HETmrq6qjjN$6(gP8Y>!!Z%q&uy z68_mfivnR{pJg~lyW9|AWU9z6KOeSZ$}0ceI{Ddlm-mJCJP)SoL_hVz!tN1Gypt={ zol|vU`cXNk-)w;L^(^xmO`{gjK;A#w>8kF=0kP zc9s2h!TgSWu=nzGw|rMi-+wKvrwi)S1KHr&t@Ai6AY<>dWy&WWjfg7Xx7)s19==sYf5%g}$?_x!9H1*e3 znx!=K%@iza4NC+U&4c)iE=v-3r*t7h{3xvBZCdp-KKZFlivWik>B7xtw$QZV8>>-xz|G4j{YNJaa#W z>^bK9Z#!a(n?z0a*|7g1 zOf?rO7LIONnWS>+NQ`ufh3!jm_foaZ_`@EEf{Bs69=B+E+{tdYB!d0c&Rv75kg;>y zr$cY4v*G*~M{HIh_&~4nJ;A(cZdemXeapS3s6&|6KK%Y$I>VdoK5y^LeSANGdV3Nx zQ;b8Y4x)WdmHh@{OD~>G?l?2lzdvx(E?3`<&D03h@|}Y8ji@;Ce9@u;`d_2E+&8z3 zKNbuak-6NRTSUKIAVP-Qw?g@i9dR@$qMONyjRls%(t2X*X1!@-tAisZ85|Mx0SiVK z4Y^zo^*0=`EsbWy@@1~1?)FX6&60`AZT*ryoRjFv(=K1$H@8Y?$^XVs9IXqXDZ(KT zG~uOLvyN(5Sur9!WKNjx-5$L^S_ffXL<>CR(l=7>jUiD#YZYxpR)Jn$Zc{1vb`&Gf z4vi||7gWA6G}`b$&+K&f(;Y39haQ!w60vwldQO{MD*Af^LA%@?ac~0o0bx!0ux&0@&vlD(S)Bou+ZS><~uD^vDFaQ3^vG|dLJKYc$P zy3u&f&IV(dAW6qaA%pXsDi^hR*<7DElM2p^#1OrPpLg#zRF6Quja^M+Hjs&_%1lg^ zPpaW_ss49ea`jDVX2j-Xt1U`IzStK)f*$Ap?fsrx;zR?^uD_z|xpiacD?hVRK;hz^ zn>Uz9>&Ai~cN!*d2urbk19HXCXnqh8bzY*Kfq0)+L|(@R84=VY9MK}9sJPGwFm7Sl zG}>9ThIC^xZQ87$ptaqV%$u4Vv0#53&Dv$UTlP%SENxL+yS2JIw}Sc?+$>E?%@rdy zFMW3^e1GK|L$KHwDSk6skDjr?KVZ9A@!Rm)^+hyx&^g*xKH|nyD4!@u>c9V1M<=NA zk@RzuMIV&KNC&0@WFX(pZOm8_=6?FWS|%+*H!2$5y2;J?4bEJ%O0+v9YF*@qJt-5Y zWnxEL4HtiWX(U8FZgeW%c-D%u7R|e*#U+|D!EB>d^Co-gB#@9-(;2Plk9pJWj*iVE zs~yRu2AMy zyM+zMlhd)8*tA=%ei0HUe2UooWcpNJe7fIXZ3EmuL%<{eHYgXaT#A>Z^~StBv$pZZ z_0b6dg(`1c3ojh%_XJREQ2^omF?9V}>=5vihBl~79aM{Nj&wOVaxNj#m2+fAq#sYv z>vF24-5$xCyiP7vX{e#}?mB^v&)?)^X@_c^6gUf8?^GxeZG&sb6=~}36eBcuqUXXE zLT~N(v8!JYXzoK)_(?u^>MgJrt`JY(nz#D0HBWil){Wq-aM%`>rX1Zhn z`Nkh?+6&nk8%x_*KdGY(w({+^WScr$X;$BQ$sZY;5R6|7N#b$=9&eqk0)#l`}63!)q^GzdE$wk;V=gO_OEUuZ&11 z`(GJLU%Sd^FTY}Bq>b0Ei0AiuSi&I@SFbP%4H)0f_+d{QR&m7F$%>baKVAh?8kiyB z7IowTOGC#af^G*I?r%{Lx_$+2jZC+D1lp-G z*8`>L72(kMkE#z#N(tUHQoA0m*{!r1~+h$z9<2hnC!3ciTV5`{f@NF#PpK-DqY0l3JS%=TB zJ&szXdNcVzb}D z^0oML8giBLyOl1Qwa-O`$Wrlt(K+z~#78NfLOA5&d>&T%>gdCa(%wG;Z-8C^?C0qR{E}UcV~jk4^t_ zTAJzijGkYQg!2~VlFM67@T&m*rmXg4)z?G)IGsROzP52(_X=R_$%*HUuM|F{JJ^%E zG7&bM=x^zSRv?L>X`z-v+E(R+g>ls3NTRQyY;n5YAhaurPCDKWkVHc2x>TC*h!(=B z(CFHg$~`Wu4=lB?yhETvb;q}kt%&4et6T~HHB$6!a>|s^#{I>4hwR@JdyN0yBl@F( zrz}cRL{KIDq2l9P?b62EH*qfa+?|^pG1%#s$#15}(+gg(N`5E;LbqAq)6KnwCjwck zKn3UTeh6U4U>5(f&mvG}iT?c`9Aa}>&`{wPnh{EG{e?qlW)zD(!7C}D!lq0-gj<(N z69q;i?Bg#8Yv>=T0@yrM$NAbka(u5N5uZ)biO|87b~bBH;I0;n5T_4>fOBFS>$3?V zfrKlw5))LL@H$YK-iIWUhwD=GOQrYzcm>cx2eHiAro5!b=ZMT z4E~iz3|aC~&b}i?S+yWH2@(-1Xp!M{#xhJYU0AQll5wmycc%7A7XXp7_Ob zT?ezt_+|{aVdui16^x>E<}DdrR_-Lw#O2ugzzLlRVq!c5yXIpFVTP(?2~I>UZb^sQ zoqsOFqm_0{)UkOM{3{JznHat6lEB7pusdhWw82G83rOdupZr&Jy8;$ziHzyt9E1E@dg>x<2_t|i_mG#Ha z`n$jf0CXX*_;0-erT^~k>!+XjdF3Iy(42Sw^{1csdBumYHFS>ZF8duYN9Fqk3!iwO z5xUHpU(L{hIY1^_wVM{M>o~)8t+R7o?RK`yXh2q^<4{Kp=I0WzT4^#C@PA8teg3vJ zoR6_<@xf^~E87yGp@UXV>NDrCqodowO0+V99Ith+wIxTAGxrwe@7)x%duONb(g|_j zgoS%H8Ozda1PB;F?ipKBoTnqw+0`B{WP=B+W4n^Q%dr=$@&9pIWG^94Jl|=!aaGcf ztc0fZ$*~WgQv(?>zkij&VbaB!D3`c;0+aC*lcO^(@xjYV)+JQ0;i~rtrRf{<3Q3#F zztTxwz7#W%Ot*1UK@KBG83CESYsW7I4B<81i(d)ZbGbNbSTon2fKJd()q3F@Q}aN^ zxO{13k6JNlm&vUTnH;ytzE>P_UV~lEiw4oMWeK{y#Us+2oUos+!~<6*%2KBIsy;@c zVt0dRlGdoJUt@A*&VTL72$08hP*X#t?VDY~%T~OxGc$SJ%2HN|p1gr?I5c}X8l4nyV9=2f|>nR@lcxjMN*sCLUsE{KBt3)eiFBgZdR zx)mZ|k4-!((xjcEXX7hIV)tDfjcUD*831hSi=5v2D-(EHd}BrSMt zDd&622@keA_HK5tJ{pHaat++5$>DEqMIjIwjLkwkbmzr$c8tkelc_D9Cn=rcT_c+I z+P!7hu3%DlSEv-SF69j=Ll7?3q!`3Qvz;00@wwXz9juAw=o&jmTq<;&8fl|7ZPkxheB6 zSyg_L7Q32$#OovZcW;xlcz7G59EPf_|MpJz)6YQtg{{on{oTE?rYGuL^5GJT(&|X^ zZ#O*y#Z^b4x67V&DVK#h2j(3R1(DXA*04-#^0!0bJ;YMQM?T6cC@~fjYzf&2y?|2< zJs=!&LjU!^JB=SWeQBfff<9|^Nz!Xwib{*p-J<;dfI7G7KFa(QWbi0NMBZ6BR{-Sj zCQwFJa)|Mipjy?D-T+{)f3MXknzq>4IA4&?dW7F?n90SmP9?TfG<}W7m0iMH!i+;S z4LM}*ES>aTCZd48+Dg8oM(_so>HWIE0gFJ}mB4b&)CiqU)P=eD$;aJFHI!!5i_fcM zZw%I%=#5R65j!8@sz>ky^ppWKS`3nn^w{W#6BAFM(F>i6m}5n2jAr5a0P4*Dc(I6{ zTgDN?g{6UkQH0do$S}ihlu?c<;XW=b>sL}%MVQGeKvI$lXAn)X*F|wAe$Hk9e3g5SB8z;tXBL9l=Q+(IX`75pB z#9I%uFWXta8}eH@_K-*oOXTwfzq)qg8WfVRp)NC+vIxyqrPZ!X=%yyqr(Y^3^y}}J z4CI}5vCZZL|GW3gQ=ln@A+-%4x?rBc17!mYP_R~7rVhpai}oI!{Z1l*Nn;+B@bl^z z`Lbq}FBduSWp}P=T{vPi5I?5>X_ot=f$2qUYe4)Xfm8*MKW{pyp0$cf64ZuVJnz*mhZ3jNY=NM+Cq^gR z&0=`9m6cH6tsAMOa)`0x5OV2mTvzThifEBW_zpKPF*W>hI(sdIJWqO5FAsHMOD!w9 zK;g&`28YKjd!KX(L7W5r6;oGnrv6&iR3me#8jc%b*#D5vxB} z*d=vrl|}ef429;848@klkmSBFq})hUT^M3=KY45M$DL?+XmnUb=VJ?l=&FM74Qe$< zAQ!0mPz6{*sZfw^WN75{OIFDo$<=Xr!@=Be+Pcmx)0M!y)(LKL;bz$r4m^bK#_M)6 zQ0*aOd+K##qrf0k3Ry*Z)}i`0*>nCe!dMG!&wa@H(ISV}-wx$tBg00`GNnly#z|MC zx%cbKHo^CZNEvHY9=R1BgJ#`qVJDp2*KoJhA+`4GUbyzwjkLIQpM!0tef*8BzpzFo zChy#WYBZf zUv7N2@sJ&xilZI62i{r#fz72T!hLvvyk~Uo-Sm`G3DF5}*Hca`(-04Wn*QfWMwHGu zBT{P1yEd;c*;~iT!SY6{9G_=qeGK+Fa43eX7+b{n7D4Y&M4Yi};zY_Jg(fvM>ruAH zvyVgBu(~29YePqkEbz5*upioSj}UZ;-XtS>`&~*v%xnh0_o&eDD0}Ckg62n`8u6sa5g&(4|MMFbhF#TDOQGX{AZZFW+w0nr2DRZeqLWe{WWmfc;0j#ik6nxmG^rcCtUB*;Xha ztgve-HqrNf&9|)*I*sUMc5qr%RIAXLpS+`dZ}eQ)_q<(Ei=&OY2R0Aw1%*mN#wWje z2Y%At&b(J0YRE-vp@K6WEp)cqrG(JX!IdozLGp0Ed18d|u)a|=`l>|@S)D>WHe;7V z6E-1iPK-=ywTdWafv|@ziS$9YEPC9Ex0Ve7b&>y+3}(03v6p`^kg==Pa~cjKu%PPL z6~ZiRtWg8gu?*n*z+f;tWD$4S917>bTph4Qp%_HZMo^uF`LMSPuGg-8^`$_nH+ltB z3P3f-F$T{`=lZP+$g4&Hsz?-H0i7(azZNKuqqBke7S4RF6McEshRxIpFEMzwbih0} zZV-wCr|g{WoRS5VU(DZ>LtlMKf=;ZU*d4n@p8qmFzu$#vkZ^Jui0}<_V+9ju81ehwt!rci*C=%g_(9t-7)%Lw}ju*ZS7#wg|{c8b~U6jxzNG=FFLi*b;2o0^K}2)Xjt7|-;*5> zH2?xW5!J+hGfT_y%O!2>UXL>;ZfO~^tKvK%8$4%qaPc9J5URnU8W42c&`{)C)Zma^ z_Uf#l>gY@A`O)D(KFwZ=@1Kqxu&`@852$l(V)0fNOfp)Wc&^+)vp86ax>h;?nH*Ae zt}iqgZE>m9=K>szwjPG~xfW56QP(;RU!EyTjce%K8IYItP-9M)w#6U*7y_as6(u{E zx2gPM37tJvHjuiOEF#XFlJ8#&6oUu^VF67^$EZGy8aOX;e6Ie~aA=t;G574~4q3mu zkQ5dL?_UMM_H+$P2Cf8-JJ>u78a8njs~Q?SE0Np!T{4Y;wmQXn&8$+Dqx$%Y$-pCG z`DPak-D+iO*pZ+v3^8O-ccBaxScKyQ1QKxMzg|yk5ebfW&+?=oyH&sL*b>mJ5Girfs`qr$5 zPFfS`WFIYcy8CG*?Mj-?bggwNGR_BJlTZt2d6I7Zq5c=oEh65qVmYR+R|Be*4Fd&k zJY-Qv2TN0{pPsIjWWKFNlp1kHn*a4Uqj()j(~*9wlN~iDpowuOLORAJj*QWD{tY(o zFOz*zwh$%~UUMWyJ>F*Zu5h`etmg!ydR=1nLRl){P`#&roJ~H~7s#L^{l9$C={22QY?f0t>@R`i@cSu(J8WCv1{&@=@f zd8#PCAb{4-M}4P0hpu;J65Z+fqL3_!t_hJ>7Yn5k1jsk0@0lloGXeq&NOmj}M;dUY zG>K{?f*>3s5sekuB{bVpXpyG2?-Lf9rAJSl6!SaO^2yMmJwK0Ee$rWb`irt?l~^hA zg#lCO#`f+weX(#pg!0H~2S-Pt_p7wB=D0Ij)JTekeVXUXGl9D_t2kt;lGfhb)~&7h z>ReIjF9W1Y^EaO`D^!4^U*^saF19K@o9I8{PHr4NU+MPwFAR-%)aDU~NJXql^W(Rq z=hpp;B|=3}B_mQhA9vEew)V{p4*UcyQp<||u^+lHGlnVM#>kCJV~YXX9ZG9pk<orAhmv^;W*=Cp8wArCF z6~C-&*|yKlwcZTpy33wr*j6(Ol{oBXFVo7njlEn-T58L;CEl8yw0Nl-Td4;*kfRBW z-Bl|jmL@uf0K80ryR{I*#n^<5&a>S$2?$%4&}kN$G_|kSrpQhxpn??2sJU8fvZ^7^ zBWmbtn-B-EoVBouOAU=n`M}-;2|~-k%JM?c(|j=mSEC4kba4zhg%Au+EkekmdJjQF z2TTu%rbZXwBuiMiM^d#)uvYeNfo)F;879eJUHm_4ChB2L4C_-frx+nPN5f}I(b&rP z;9y=EI(?Fe=FoJmFE(953<%@vQDCBs7{KGGcitB#;2mHbyrA^tXL7znz6tSH8oh)H zXefZCpC7j*c$)+Lw!*Bm0)Hp3Q+b6_>51ck6@e-E0H1mUf?7UTG!N#`=f_F6K%`5% zW99T=_T*<}(TmEWKxK&Bwof$8!b4x2!1+7q$(=;ulVwEGmY`34j*Bod3k=Q|JrO!5 zp828@z9b05voOHuPON~Z{&N{$1<^(VXOHDulhk`(owF&>Vo^1$A8C_AgHThS8vY6+ z?WY&c!+!<^8|vV;eVxH@&L%c*vI)(!+S)H5hs=*acd9u!crd|_UmQg>;>0FL@-W$6 z6q~jQt&9-%s7)%(&S9;B9{?PysM6-Vhewy`!Q&Cm@iA|Xdz`)nrz~(Cje7> zEgV(1!bfSdlPg62=i>WXEpFmVmb1GkA`Q5zs*l%ze<<~UogHh|W`&!YnoHJdQf4}s z>2g9S&BG>Ph88=2Z3CW_OZN3H!|A7saTfYLPmOGPK$wPt2<*zmb?$Ytonofnt%W>| z4lOi(321~%i&KyWhbySZLC{Ns8ENhnLIB=$0dJMCIucj++7+=*jcsvZZ!Y`R;%l8i zYrsgc5=JNIEF8BI#wMYu7tdMozoW_bzC2yoYFeYoXHSjhpo(Q2te5{jexgxED*wGz z=4^>mP@`smhT$0uwg!(}Js7(pX2C?X(Z*e2){p{nCwU=M8I|F)fN*(`r z$w0UP!mNlqR!rC`z?N1(H&irM<~}_(cGuC+Y54SLLAbc}$eNgbZQiFxqYp;Cp?pJy z*?Z)ZqgXEj*)IX5_S2&sylR+@BSJ(&c8ok;-SJ~3yrP!(1`z$P$BLskQ8C$5xTg5! z3g(TYa#c?e`AIyxFHQF_33^*M2n5|lr4EaaIr$kG%f>uwN542x3CX8WFq_NG?k@c2 z*i;C8yf|_OBGDoHBWCQ!cVQ3)rARCS`sE)y6R0TWIqfH3os%-#_dyd0um7k(h2~Ff zg*$ah7YKz;wRKbMXKTMskC02*W}9*t5LQ8fDhobr#-N*kHVs#1Heyr$PiZST3{iL7 zk=S+h>(Pu|X+o7Sva4ZR-O4}-@%A!dmy^8=Tr!fqbF<9OQi7h+vy=ljm7ulHl&4;{ ztI;$A3Q`7TOQL3*Fo4#D=M)A1QNl=kMd$?8nCB1rJ=i2(+u~4E4?70+%q(}l6PU8$ zPFj;{h6B0PY}k=7O{>&GY$_#w_4v0Cby)AlQcS->4P90YcDB=kqgrJAqF{0e3c55# zJm6MFmx@x#*{xPALJ(RN9%gtk1I&3E zT_82V81He=9JWpU|_|0Lwey8tnN6Lbm=S#r)GL%84DZIPM!F) zESkGG*!S7TOHvWLQY}sIn@V4t6z-Q2m+f5jktG9uXEHPU@sWg~fzHcoEbTdVSi9q* zrJKhNn|=Nc<_Uq+_4N=(2W0YzA`1=11aPiF<`6_dDZ{OOqHvLrFQ8F9h*C+=AZH(y ziS8UaI#B6U5#ix>VAHk}K)~%iW^k_+C%4@^4 z4F=^B4WE>cVh`%sec}^rxL7y&`KM;-k6?v>&NJtKVSBgD``8yJfHVR5+h$WX(wHhs z1;xk0^<`(jC~dvCT|gxX_1tN!hv6%68U?bz__jF(3g_%l?zp3y98xpcUZb?)o1jRK z4x7C{-qsEJB#K1R7Z@cXw3rncw60Cdg;wdxr7=cGLoLHl6L(dXrARY-csbtn2-G~b zwU(oXjk@|x*Aev~OD)GuI;N>)Ww}F(e*3yeHp=hM(j4_8H-wown?7xq$F-&Mc*I!f zH^c1VgXo)!3y6=520myc+c-4~YJyWyQNfumi-n8y(fk@3LQYjYPVX4yt`QQhM5oKO zOp%;iIGI;QElrrdp1>8*a{^&jLtEg|E2*jehm?>V%XmI4L_GpgrxeQL1qSB?a)S!0 zwNF}f;ru8$x(y_Ylv5rV3=9X(X*<6965x34y}`37>AvkMh>$E7%sOfmFO*lsD`vap z>@;+tm=q86#pFFF5n^!hfY6PT~n@Q3rDa z3C7#>5441GfU=2e&KDy^Jt=uK3&k`}HWZSfo4E*tBGjVil9-VjC7INBgvB3Oq$LWJ{ivrLGT?LsBDc6 z#hsJ7ypIpdr~$(=Sg}4`*Jl>%4MGkkAZFDc31v=vQpS&^xmmO5FA{PN$-f6#<>p!b z7WhAy1f@-yCF*pMO>5RBeJ~wX_+o!>JCktr9<)f!Q2oT_!8!3rX@xETrYT)6Wdf?4 zbYt{_Fjdayg@)53c&41RM#s{4T0m0v(ipzuWDl37LT!x)EeMs zYV_?IC2G`1%^3)z(AvOD6{UXj_}>3u8(rJBA8gD*=D;n3!Gb zj3nA?&KPykDu_y|7*Lo6vIjaz|3iSoiY(;2)e!H23(RF=hQxo)(^&+GW`ErIo55-5 zdtYSK>@?%`ZE30T`oPqaaRB*ac`K-`$-b}7mXYSGi{BQDTxK>-b3WUnbDHa#a~5xC zP%T^tV|dVoxKOW{-CrY^MADW!aN?7wOAhwY-oMRjDCQZP6#Vq)60$kp`9$oPn0a+9 zqXG>q<0q7i6&ybz+ea&0U?w;R%!|%{h|KRv9Fk{V43O&=KF}i{B$jOsjyw#Q8$%4&`eI>eC&CAWo4WIF|Hk>3 zBKkGh8JOP|&3DoV#9kR~SHPd#ucE;?sk4RPuPmtYFGJRPy6z-mVylS53y~*c}I^m+;kAkyZBEWm%m|}V|1w+n z{E}!CF9p}q(SdlT8y*913iewuRd0kso7xWeER7sLwj>&k`NI&#ufv>zQSF+A^$RmF z#4~ek4u+$87>U}p&w-oc6TB zdfnE2PPPlrKo|#dP%tgB{};?0a8nM&M?VTKo2GWa?sll00L)`(VjLS>Y^$Jmveam{ zbl{afY7snFje3d?zq#!ffYN3B^MKH1FLnP;2-W@GfyeXiZEbqi@cTa)5uu}f&2{C! ztJdkk_&ond(R%t{X_}=16=S(bZn?VCZ=BD+NfAHKbrNmVqe|zqH%In*m_%Y)Em<4f zocc8*g_C#8N@skAP}Tc1d_?Rsi!UT;m?|BvI@84nK4GHb@Os0UGE`kaACQTFY7uyc zcWmh3VlwsUa@<*?NDs*-D>WZjsXP{ZFaJ=0Dt&UU9J_U+kS*j~`Ah6H^)8wEN3Ut13gg)SRK|OxT zDtMujK9U6ISK`E=EM$UJjGTdPTr3^2V@{aCcZ0)80Vq*eO!wjOT3qecst$bwHoQip zJM>|E;hGqty_SO?Chzn*H;2hw&w(N`YUW;fH?9YM+Rte8JI=g9I>Q2~jOjlx~Y zBMKk&Gs@*SQsZb3bUwLGL=Xy!<=1j(F=#+iX~WjB;>n&rPo(EcGB{b~s_nTd0v})i zq*Yogdh!6HgseV#cj6%Q8lrR33hq2|v*4*;kitt+p>*9e5Y50fyW*#@--5%5RpD8f zONYjf9R^J@fargtc7l{hE6t^RoZBOPZRI9LqoK};)r#@HIz?)>U&vo*% zRIFG;?&5myiBB1U7gXBU+56eC;`%o?1;GQ8wDx{_v@Ckr%swJaN!hdepo_Obn9HAL>{j?w=?Cu#e< zklZo9|ASO4dlB{Q|3KBh7uWBX^iOuA$zBZe*=N6~i_L$8B`}1%lSQcigAuTwp+xca z?lCmkFD@E(By}I|BNJ-f$xZ}s2yIN|Uqg<7Nd&x!lh(NoD`AaHGG4fG(K&hOBaEO} zPeu!$uWSts>B--U^ZU$-->igenm>7n29pZKu+6qbQO)b;2SlBRhh#*LRx1 z{3N#;%=l9}NI9jaCbc4mITf8 z^+kR&Jl|{Ap%$FU?#Bf~-cdUrxPxZf>9KgV{`cN0(Ayq(~aRzpCTLreG&G=!qz9HYef1u)Ht zWg6>}Uz~u9qLU%r=f^?$v?oHJeO#7W%ZMxb0@;$bBTucdvHudxG6Dh%*wIuJ&OnH! zWPCmYlB&$W_(U`vf~1KJ&}~%WAg$~KiYFceW61&W?l}v$dYT7Ej5lx&`p(2TwJ&hq zjCaO|2l-pUnSL-Jd=Mk;iR%4(EmCUbNf9N3H}^955~x(A``(XbgXFuNcRqN(jG#ew zh@tfKyPf(E_Arv~i@H1}yolJl2j|eqy7!zyRRHannOgOpxDd#8Ab$;55j>a(=HL3E zC3H&YgFW$FKMaZ9hgu>P=O%@UvM8Ze>f+XD=S44C*^kTXEgz4V9sK*dw2 zxeRfGK>*TK-&waV2SXxz!jC@!_WKB(i|ht=ln<@nUnF4_d<^H;Xx49*4p;on=7mg% z%)Bx5qE(`frj`)Zv8QN_J$AU%FYmJm|Cbh`W}&$xC0Nw1Nnt}7&&D={$j?88#J5RZ zUwnpx5#gvI&6w$OC(k_ zV$cYplQ)3;E#iY^1A@mmKUK9MKNnYrpyhOOW0UBX21>^=-06WRFOf|(&IC+@NAvAi zVpzYCT)SjHjLwtN;MpM%L2a^fy42sb2GAfdV^u=o`AN_xku@SMJ^7i4My#9O*z-!>MqtcYW6XoDkNKg;W zUL)Dl_a5IoilpMccjvs!HE>?>&j%)9*@<{j!{|a@i6ON(7b~{2C|Euls|Y~bOFhU3 z1E`W8)v6#@NR5WGzu7i==6!KHgnt+k8(b+qI^ z*uP|;^BsY!FFf=S!|o9Ljrlv}195V@O=-3W6bu3cy@l-tBa_0H`UBhJKV1ib4X`0L z@1&Jhi=5qVmR*t1$>T?tM7<#8qa@IK7@=#BTNd2PBo3cC5l6q<@q#vcsSq3}VWDM? zmxGeQ9X?yy+Pc}A-1Xj9U*a3_f75JwYG=a4N^{5Im>Qb~_Xfo!l{R7p|ZX}jRfq6yxlgkBAWNOob z)d}=2NQa2Iz3Lka>jlf9BuDcj7Epm#w z_snq2#;j4N>I8kDsv`QQfIfg8^uN7_xI=q)ZSNON5ndOt2IZ|uYdCisENBCfFN)SW zAwl+nJy>wU!~!`mg;8t;t>gCZ1rz~}^Wg__?zaKbEIsnkeyo@LVGX$ZoRJhmitMzi z{LaGduxeIc+wLR=+rmBz1`!?Xgs5SAw=+Nr^DV*=SShJ%UDym&Jr%Rc{7wtzi&Lsi z`BTZudGl<)wt?C7=mm#x*sNRz$%X74N5BD2vvc*)W{rOt+hb zT{axm&D?wI>5@XSx}KT+uJG@Jk34JV#xpc)1M2mo!(EyZb1vckgP&JgKQY`76?=jp z{1j27m{1$Vmn<%6J2`5MIQ`E23*?G2(GTQW-sG%oc|jz6rZ` z-oZw6>wmNV#X~MgCpKK(7Q8-}=(b#Eo3#=Cv6Rm~t~uFA3|gRwkvv>Ar%kFg-m$T? zLo@aD)___GX6OWby1;ZoomQ964WxZveHqFh+Ok?Uf#bz=62pNrDW;YXT~Hj6d)~?8 zWl;+Z{$8`Gp`@?uwaSFmf&)okDl&W}b6s)eBY^k-;6A#d|hK z^s5%Sc1-oG|Bx2_`!w`Uk2Jlv#m*7EOL&6@2Snf4L^)aFxqa=y`QM0lHB7>}tZ!B= zaAL4R5Y#dlKQ9cFO8M{f;`iNN-3idvbv>yNoVc8B&ko|%G zfkSEQ!23hCSY?YAaAGUi@p`P@dP6&Q^S48Fd%$AjumAS_zEXaTTl6CVAZO$5ha_rF zc%=5lz@f$;*e~TOMxbw)HA`=vE^>*@2k?DHYwhhT>Kz$Hpdr?OmXeE6yuk&~0h*l5 z|9jyP;1MiE&Q9)(esV;buGntPJ=ycwvC`J`Hb%Rw!MWw8a);V<;z7QNQ3hyvR}^?m zAPq7P3*cb~n;y`khXCFaO;a#zrfPhsb-CIT@Z&ovJ zITO*2ysFfH0^dc)+c&{yiDG>z@pADN(~ax)A7I5qd}<-6>@>7f3d@5S3jpC={6OoH zAsQbnZ>^p#9#AsjWQk{a6?x&#?04df$0dd5pM|7h*ksk(MmWO@nvqQmt8^qh^y?K? zAriP)6A8Oq^NjiYDC3Q^fuXCDR>G@TIJJ~(~}7$Z!&1ux7fL4Z(HH#^2_L3N8= zNbuSm`BJ4XrQt&>sfxJ+JDl*F#>~9WKc!hI0H-@m(#%?WLhW@yQ&mpv zd6<^>(TNDOgSpra-QfOrQ#h_)eeun3;$V>M0=*yF_+-d^5c*)Vu=2sSypQ%R;dcqy z@Etc`iIRgeMQ}DO1r0`@nr-nwlfq6UvcQQ>!Gw5yelU|tXTA{6%nJ-+I1?Bd#F-L4 zBo2fBY)R^6hp>cE{-H*$24`bcgJdu+2a_1uG4;)=+EEg#D%m5e1Z2aX{($V5z(~r} zE(fmwkq58s0SUghr=gvx!#d~OZ^2;6*o=oW6Asq0B)S720h$@X*?1uLUav(}_DP^> z0z^0ke=G;KQLS~)dyJq$d+;l5@_hh6jr(8^Rs}!3DjuzssQ$fWsVoqu5c+VRMdZK? z)Hu8o+KU|c#w1!e0?dhPzD|P$nT^`zR&0^QU)ZES9Zr-I!d(4-l!9yFzD+v(@!>fJ zr8I>W0-5EPSn)0z)X6AoW?Rf`(_Dz_8R_!uBvlLoCT=q0^fEO{;;f6^Wx>s6Zdb&O z$LUp}s8t>>GLnQ2;=??L1LGA|c4ukpo4adqv=UhjOO>5YscE>~NTw#-LQ}nRYqDrj zp_LsFip^rv&#l6E8By;MnsoQxZhErL&5iQ{NKUD$g{B+ro0p_4W-T?c)h_RhRQpN7 zt)$!nMP1673Uo{jyF;hTDa^3s&SXrjOd)7ZWc358LN*;Mi@q$V>&s&* zxXTjK(G=FlRkxsGQrJ!oPRo5sZ1#CSu>FQ+|Jtl@G?(3CR=`km=tF2f8dcqa{jpL8 z#`xgJWjETSmHYSNjQBy45n`phS@^J|&9}D?jw*_w_prKBGQIasC-T5=EeQ4DQzicA ztq!G;(s@mMhdR;+UPw4oS?z&XF8mXeZOcEswlH8wBEExwBQ;O!f&CcfZe1)guD(r` z`-ndgIyQ+K2v}DFeyd6__c)w84(^J=^xSBV5WPL97IcvmSTy{TR+-APVP?5ZAwhKt z8$nK{BR27T1Z{d3=PZhiW;-En0f}I~EWlK=$|^SRF4~^9E3MKebG$ETO**xY_Q!5A z-ezewwBhw8@H3jdm*!9}1WtQeXoW&%Rd%7-fkc&X#;!HNYG#EO=zsOm991S{EnKTq zZ-miYe&8Hf8Y4NX#7CV?w+rLIQiN%S-32}ASFtIy=|2`X$TO^mnPC?|BVln%M6 zr~aFZX>d}AXtq3B?@C0$SAm;casJB~mGei;LOmliIU?gX zZwwnB7@(`n9RHFF2>*f?UW4P2O%mDul3i@NPisE9*r}vI(u2_V)489dxBk2;YN36+ z!I)Q#j;;Gqls4YuQ7!f@V|N(IR#`1=s~&2z2oXavdFLh^dM~ggX$^sij;5GAClx`-2xk_ZtrxQIs?04^(|sM7}GKs`{l_WDbIQE6kamaA%yh z$*SC`p6LRCbUp+U)bOzI-;J5xqp7kem_TJTPdAW&WA%Yd zYOR3ag_Gp8cw^3qG88POt$2YlMCLl6%}Ktm`1`|>mZaF`^S-@aulMVt9Zq)B(CS^I zlQ+}!#Kvs$EvNuIzT1Vk+m_euxkM4bA)nx1Y5}pUZo(oOU+7?c{_LUG%<^hS?x