From 3a4652d108660d4005412491b5ac076b3d20fe07 Mon Sep 17 00:00:00 2001 From: pliny <133052465+elder-plinius@users.noreply.github.com> Date: Mon, 11 Dec 2023 18:34:27 -0800 Subject: [PATCH 1/3] Create security_team.py --- .../demos/security_team/security_team.py | 80 +++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 playground/demos/security_team/security_team.py diff --git a/playground/demos/security_team/security_team.py b/playground/demos/security_team/security_team.py new file mode 100644 index 00000000..f00b0295 --- /dev/null +++ b/playground/demos/security_team/security_team.py @@ -0,0 +1,80 @@ +import os +from dotenv import load_dotenv +from swarms.models import GPT4VisionAPI +from swarms.structs import Agent +import swarms.prompts.security_team as stsp + +# Load environment variables and initialize the Vision API +load_dotenv() +api_key = os.getenv("OPENAI_API_KEY") + +llm = GPT4VisionAPI(openai_api_key=api_key) + +# Image for analysis +img = "bank_robbery.jpg" + +# Initialize agents with respective prompts for security tasks +crowd_analysis_agent = Agent( + llm=llm, + sop=stsp.CROWD_ANALYSIS_AGENT_PROMPT, + max_loops=1, + multi_modal=True, +) + +# Facial Recognition Agent is currently not operational +# facial_recognition_agent = Agent( +# llm=llm, +# sop=stsp.FACIAL_RECOGNITION_AGENT_PROMPT, +# max_loops=1, +# multi_modal=True, +# ) + +weapon_detection_agent = Agent( + llm=llm, + sop=stsp.WEAPON_DETECTION_AGENT_PROMPT, + max_loops=1, + multi_modal=True, +) + +surveillance_monitoring_agent = Agent( + llm=llm, + sop=stsp.SURVEILLANCE_MONITORING_AGENT_PROMPT, + max_loops=1, + multi_modal=True, +) + +emergency_response_coordinator = Agent( + llm=llm, + sop=stsp.EMERGENCY_RESPONSE_COORDINATOR_PROMPT, + max_loops=1, + multi_modal=True, +) + +# Run agents with respective tasks on the same image +crowd_analysis = crowd_analysis_agent.run( + "Analyze the crowd dynamics in the scene", img +) + +# Facial Recognition Agent is currently not operational +# facial_recognition_analysis = facial_recognition_agent.run( +# "Identify any known individuals in the scene", img +# ) + +weapon_detection_analysis = weapon_detection_agent.run( + "Inspect the scene for any potential threats", img +) + +surveillance_monitoring_analysis = surveillance_monitoring_agent.run( + "Monitor the overall scene for unusual activities", img +) + +emergency_response_analysis = emergency_response_coordinator.run( + "Develop a response plan based on the scene analysis", img +) + +# Process and output results for each task +# Example output (uncomment to use): +# print(f"Crowd Analysis: {crowd_analysis}") +# print(f"Weapon Detection Analysis: {weapon_detection_analysis}") +# print(f"Surveillance Monitoring Analysis: {surveillance_monitoring_analysis}") +# print(f"Emergency Response Analysis: {emergency_response_analysis}") From 57ee2d4cd0cb3f898c86ce7b0b147174be5610d8 Mon Sep 17 00:00:00 2001 From: pliny <133052465+elder-plinius@users.noreply.github.com> Date: Mon, 11 Dec 2023 18:34:45 -0800 Subject: [PATCH 2/3] Add files via upload --- playground/demos/security_team/bank_robbery.jpg | Bin 0 -> 52790 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 playground/demos/security_team/bank_robbery.jpg diff --git a/playground/demos/security_team/bank_robbery.jpg b/playground/demos/security_team/bank_robbery.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a4c6284917cb946fcfa2f0d906c9821e2eaf3d30 GIT binary patch literal 52790 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�ww z9`bCy6yh6c=0RAO5nd$kzMqw2ly!0EDge3!C^t2=FtM@QAHuS+uF_WfWe+&gwI@Lv zR(eq_O=1FhOG=zs%9=YL<4ZD4I+3%0rCvs%rZk}VNvO$NEO_gge6m4n;&ITjKDDPD zW0iYV{`UJfB-{#=?GBYbkxlCSzKBk z8@55>9v^%c-fm+bV&YP)Hs4YttcM0es=p4wH` zqm!4hb=XjNvxqFk0O9y~!Wnr#X^-7sdYo{hq>3rdi-pEaw~?owbp)QHzgp9%*OrdU zF5vG5-M!)NV+du`G8ORwp!cqM`)OKFi5nV}^ML8}%^g6u zIg?j&X3+~vO@_c(PT$I^!-_Xzi1QTE$xb?vzN%ViL?I;LFTweZHI?L{C22y!!Aaay zQ1mZm$|$h%4_!v1GH8x8pD|b!WId|J=Wxtf9ocsWr8NkSI(woTHIkO(V`lZ*B+qKrw%=75#yx>LyS{^ z)e*48R7tLkAm{X|(lSNsT1~RZ@Y)Z?a46DJ+kHU+uyERX3WYgR9ah@aqw<5bDLrTmFhWR#j7pZ5a?__+!UH2pbSL{c0{vdZlv;!5KKo>E+s|XN)&W5;8ja z)kV-9E^5kLAbC+!VeKtzP8O}IZ6_G*6O`judP)(zBz>zOeo_v7f5xdc21{Dij}LmR zNtgDa6W+L44i|CDb0|(Tn(4qiu`IJCv^cTj01T(D+jgztr$)M6U^1o~U%bU%#U0)A z^{SOxLt8d!4s2Cxkgdv9<7%{;MTpXEa@ZtK=Jf}2BZ~}lva7KGmxhFhYVK;@XNxDFTZ)Q!B zSPMtKC@JPwjCd4xrES-SeJW*|UBSydHAf9L+j&E7sd>oxRyg@-E|cc2G=}*XJ9-`4 zcLINir(&jcmEtZOwZpa>jjiSQ+z2tc^{lLKGeVUH?QCU~$&1X6;xz{o+cg&zOoWYf zWaS86uO?pU`qXu4w3X=4od_+J9l-G?^{nh%tIh#}x!%$tkUq*Ade! zYdm8uh*6NWD1&6Bty6k*Zt!G~h?&T07Qiv3Kn5 zYtP#*?~$RFwI?BENl^oHgHH|lb7srKxc<^|M3gvCn5rQ|pg65C$#O7hB1GAb6Y;F? zPi-V~tt6+Gv?bQhWe?zKaCrt{{V$5tEYRzYI9r7 zmX+{{Ob)-=MJUR|h>y#*J|;n4mciEJ(fmQfEv!tg^v1`?EJ&B5jjmq4w=VFI<`-4>#$K_0xwd47l?9DVpK7FD(f+3%Vq{ zbE*WO8+*5YlwUsy^Y>P_I&GHUakX4yEu}o$hzU@}6r_=mdy2w%tv1lU-?`o{QOL>% z+NCv&`6Os&GMxRg``pzhV4uQ_cC9y~R(s^>Gu@RDvzM|Od0QnT0Dpx}S#S7M5@o(@ zV#~8+B|*-s?Ng?Z#}X2xwucbzu9_-p;TFrS94#32?NUw8vw0o|8a<6dGHVWbt4Qgc z&0~^cn~dX$JR3C!`mY$P;;N4;VOpcIzS?nKhAkoF(L;r1amS{AHaFa#!aDXJ<4_kCz804}rbWjrLRRgd zd~5mnR(F#`*d+`^Z7egTmecru&avd@EeOj}9y%ChPUk)(jlWvL-L6H9E*iQ$k9ctr z)BgaOU!_8q5x6$q*79UIDMz3_6#oDU8fj?~1V|(LD+odJ12mJN)VB(?o&5WGRN5pR zpcjo_F-F=Ee5C@CGJ6jyl>~@^2VR<;19Itez>pK(mWVC@IJMe~o8Dn_w$+d}pN)#7l0aI9Tc4tdA%{n^$p0Cd2z$k|4mfr9T3k@uRV> zoF>VIyCs;HRD>f-GLRIEbj~W~z!?DVT4PMp9dg!|T1aq`0nb1;>-yH4C8I4xj^nmw zW4G@bHMaXo@nj6+6&tN@9MZPa#Mhf-$7e^&Qd5?sIK~pSC)9K`c;#5!BEh%gUL%`( zTu~|`FCA)wEd8Fd<Bze{1%CBCwTMTC7#zJ{5 z_DT*6^vs_w;1}=w9rUt*H3|^FFu=6wrNsSw&X};=#r$VJ)2jE#lE!v(ex1cBj?s?Mz|Af|C+Z>e7>q{zj6ea+-ENR+VxTd_~lJC+A65PA{cH zobx=n9R!9p)%~GQwwUD-tbX+S^X+U$M1;y@scoH}?ARQ0%o;v{jQhTGXDj=NL>Tj{06-Hc)P@`0P=8!k9O~~BSGL#hOT7rIkXf1@do6d$& z&3DN3s@pu0W5v428)1>#G;Fq<-G!X}vedKWHWe10)-j+k*6g+s@)b8E)U-6N<7#-; zb(FcZW89o<_;npa*C!ROH5C(5v;Gyl5yz+edj9~O0Hfp2okd(~eV*ALy2_TQkr5_C zJLS{iNa>MW{FLV_+vmNWt{qhqLrKl0 zzq?i&Yd#Q>)6e{Bwyg`uWf;cixvc5PM^^F120*E3M7~0>t(8FtQa*#Itn4#Xm1o1@ zJO2PGW+QnX74_^zTn<_uRsdGiSOHX7Dap=i1ax)0l2W#YKQ$3h=Qlo-sfOATP82l? zkS>gD*MN@Rlq45Sr3C`Nl`#N93KNG33Zg|;2it3bLd^{Ctw|^3YqQf&H~bSQuWQLT(X(zIdK<`y9gBNt*%bl)D+I2=WFr4$9@dN9hr62{t_%JPvF=mw1iEf-f zA-%}|04l$LgAK*Sy2E*->v?L@;qw^>{3))D#1UJE#SX<`Bq8)_T2R*d4cMl;t$iaa#*_WpzUb=IHO6aj7Px}lq1OKTR1Ty2XzfqBdIK|! zIDM8%t&ts=q5Wf>0rjPFS5!;A`-sdo9c9rOm-gkhJVLR#DnERRwi2cO6pFlQRi^~7)H^Jh1OSO@C3qga>uf8VGcMd2W51=D zDQ&kG8CsCEWeUju0DX1h&wg0mHQ_nyn9`5}dF2hO0P4~R{{SjgyveiTsc8k@=}m4p#@%Q$$OS{lRFpMI zL8TL!x>b!mTl|No%D2IvO@$lYZO;4Eo*{S#hTrKJ9*W({C z-lI)+rZ2SVOKl}dcUE0(Ux#zHKfO#mQA5BG`g-Fd(yy&U2-+n@V(z&u9%&9T@lM)F1b&&NGxB%gwf2yQ z({8oSXq4z)hZH*bR&1D^9EHhA2i>0WD5UOly;U$*F-~Yh2<5QY!T{^_s=-jKrAc2g zYU|pbQCms?WMtzfucbzp4jI#$j;Gmk!cvtM?vS7Bfl2z-b``Htdvvm|O2?3mjsbL_ z{xqpSt!Ks_Eh0Li-L8=j;B=5Hy9?mK&h@U$>>N^7!{^5e$HuQJk+EBkagcl{lnDQ|MBkVO`oIRuq=pom;S?enT3RF(>SE5iB; z)>v;f_Ns#;jktOs!pJGq56pj+ba7u4o`pT^yoTFA1+)Qy(z4GWd{w^dt+gQtaiyFs z3jtXlS~1L?S!>|iZxMS#zT3g~IPu#nKwt!bucywsXPE}{$}w-bN|i3(1&1d;ZE&cq zt&W5qzO?kcrClYpEo@y{=5w1*DpDR8SRi>(@GzmY>q{kVok&*sskK!)%kGU$UCKkH zvlS$_j^?Lii)^_+5_9)`-ezL-zS_HrsgWdIEE61?$h5Ql5>V!AQP~9f;;AbeZlh|L zB^KV3Z)}8=9Hbm|tm!l!&Dfp(iz->cRF@CM)QZEG!lOX*Qg*@9k2>e80SI#ir<)5x zwyVaKT-%HBqJ~*Y6&*YBj>qX*%$el{OqL&X`>VmXyT@OH^z*KXn+p<(ijV}B!99uJ z9e>KNxMVouargMqf=Y*RjYivJ zL~WEQf6-jY?!%ia=xMKHKYO5!D;-5n&u&RMK2(x+kP}W8MxRR3Qihyq^;cRpts2%; z>a&8Bj9~64+A_pAFHE<(W!faJ8^G+)KV+{$nsX*yTKh+|NbVj@^`iz+{{XHwGSaKUJMdr{>!vWGLA6Ia_7QtKy+++#Tw*(uWcUus}mpS}(c#YQ}TcGo$k?~I~**9l5T zRWPn%Yc?-D1Dgr8dAC;$T9Jh9wP}f*fa8vMccO&jgy&akOWTs~)}K^uE;H+n;$CT5 zTptOnGr-&K6ykN>8CAMULT)kl);|(HRmsVT#rCq?hSl33Ryf}(d0!i{h@5RJ@;;4N zuG~Lq?M%{NbRI%72XnPt8%jl)M+NsXpU6MXsCHPf20J6{TLAge+BT4emE2TkMnk2X ziqC0+a>v*HKgx?m6$!^via_LLO8X=iO1243^%kE+tX>_tKAfNEqs?Cz=}Mne_Bd)1 zaD}ww$8s^K=^cKQVM^l0`%`VUIGz&?wwBPAKp`U)+k$k;6nKfQygmV-6!yo?nG_7t z$WM}opNTRI*y>YnCD0P2939U}<<5Mz#q^tNTBF2q!}gCf6u+H$x%{+03C82jv$Zx6 zE&!|mezhi%scQLEXo^B<=mNJl(vg$pPQ^JT?Bh-`Si*a9}UgE4@crEh2enh>%nQG3F`45tpX4g5z==<)Cf`;~rI72=@15LFP(nM51c6 zDV202`PApV6W46frN^>GX)L9L{7G)PvVtZl#}qK3y<=j4TZ%?BxAme8oQG6<;+PbM zoY}+$4?g4TT6SedVdq$MVeV{k{Yv|NYO&0^GWWJ_Gpszt`}l);`4qmwm)g+$4hHnzm!tUoMaul zn$wSa`A%3(Ju&tZA|vt0$bFNytrI2>C$}=^A=VeMVZ|f()|lie8MGXzxUTsattMp? zTZ+?t0H@g1cOjxehv7Kdjh@lbwQnzk>|p6iHFvD+R@%R2jwRkOk+)Wja`NJ>x2oM4 z{HOUE^X?v3Jh8sfp|rcbvTrOan39E`m3Cv6ip4@>5TXFvuoa}KHOJwz_s=$+`V|cR zlqYFy2G#*WlC++MCp7|5`3K63k7VaG70XZBIo-5wuh3RB;>Hb%={)L6M0T;&-;ea8 zXQjMu6@eK5$Xca6-3Mfk(yL-(y0^0yJ3%eBhBWjE6&>SIma*lkqbg$a6kFBP6*Dg= z$~@oN+FEk&Zh0*IqLJc%wmhrQ#-WOFw{<9>9=j1;IAolHCm(pf7jc@?vPsQk4ct%b zO5Xx3ICe$2@fEO3((F{bm8A5}_^xhC;jS;BWjIwUTS>%nk;=zRdRLj8^43$@Lx+7^ zR(cgJ18fz3w8`1*pOrn9jgid88^^6toZDb1FY$TM5(BAi{qa$qR#cb{l!?z zwbnv-w&N+RVB~yM$EAh=vM~ zx4=@y-gTdE0q0)IY?f{$yj=ePX|x`J9G*jGpxomhO08?^nwUN?F;wtGyZ^9ci5bT0C9xNCnEs^fZ7AXttGO3ZgX9 zy(?&-ppumynV~vIZ79J*fU6w{rwc(j9SYq5qP52@1Xpd%Nl8qEh5YLM$kH=2xF=CB zTOQ@OKdM*5S2Kj5kR`=mBH+#neii=!h&1+TD3;=q0)l0+-M2pQe`P|A9?QsS20OSNCGHgu&i*Y9x2@xymt55#`PyL;R#mwm->uOCHDlo4&m$ zY3*n5rc0yvW~+FuA^r=C!|{@SP}PK-1D{&!#hpuUfp}^-{{T=^#QrAZ&Z+#5wbNEeJa6` z(w5%@9O9``G8`uGPY_<^I+C1{l;(r0-g-3Wp{b$X{1Tn1ND#QP0oRpwtkYh9AxXM>Y;TyIO+#;1 zKe8)J`w6^|+(#dAz>}p%rE+O-(7;K;R8pD_r8Jc%bT61YiU_I-(st5mP=Z@|vRq2K z_NmdrDQj^9!{YR+(_Nvs8V+UAMTAEXH0o>gqES#*^1;%yV2;%`q>4~j%2U&@q_cSl z#&L?$RH8d?iuhAcr(0_Ct+B{6H*O6>O6J>L(f0BC zh@|9?O0;PP;>s5t#VtN0B}FS69-qpu3*|Y_4`yKmH6l3bmFi7%MRR^Bn#Vden*GA&_J?1vwz;kBB&FN}e8?4z%yk(OuhO)x z=M9EoG&MN1x^j_KjoNy#*NLv`rwVg`h6*A_EzIJr!-Ln2tcJNvp&-jh45sj2;B9djogz{Z`@t1bQd7xx;c<|eH%U%Pbw3WXkUm1R z>RT>6t30t*HMjOTc`&$*`)9(Lt(_; zNLR!Fpis@NDBY5MGet_eLvkA@nl$-Skkou*B&&yz$NNV@e~n%yvrNTA;n5kR;tXt& z>MLAoYszCN1T8D@xK>JmuAFLgnQv_`-R<$g)v3TvK6G+7BVOUg(K@qfY#SDKZJT!0D~?h;lecj98&D5 zQJ*nf%WsSk(DbEpP;Ii>eidYSRKlq9^(#pYf}ZES1Oi(^0a8*FpDGpzQVPleQcrY| zPEycrHZ$QltC<5i4LEfEG1OL@2(vBGCO6A{0mO7U9V<+7D#~2=HTcajRp2|;A^AwL^I6}fe z?rG7pRII*8=$(ZLr*#y^RC&1fNB;os)%>eWK3V5HJ%zPtkkh|~@q=9W{J50-V#!s3 z$4AEvdcKu(DmY?PS$9;!dq`&L*DVgK2STydo+hi873+I)Md_Hv*ai`%s70H_n&LL1!a$W^75#L901!2i_ zym8w8)powzebU^*lEh#>+2TIbkzAQ_FWYNUf|L*y_ACz@t{imVCZpu;EEg2}L)3*s zvT0OZ(IQKo`s|wD3@S7q1MmztVy5wZQeBSe*A^h?N$$Rtt;^K8D9LyWIk|yhL3c*F}$~$ea0lGmm$B69#nVP z^-bZ&mm7+0kG6FEph^8}4sU~xqU1gkCj@MyrC-9hGhBo&p+nA=#)HB?0N#)hyL$C% zQuJrafRZEWI8oJ9Zd)iDq+t2f+GmdoV4n~jsMw~GmsOWG27ra330l5;Qc*c&M{V)e zmd(MTxX03@&Bl%Ku%M_;ycfU2L2LqZwrB(iNFFbxP%xzmIHD>LBSytFLb$iKbGMZ; zMUfE?f{-_-3v90xaQw$xVJxL34XiCd`BOcb^D6-$b^@+cs^r+M($$$P1uOFnkMON$ zCWK3}aNV8^#7mCO9Y;c~>HC{22lkgU-Yu5+Uy4J?&+A6ZO_NahcKC614K1{tzLm|D z@~CXVLINSxBKWVfa@#3N^%xd z8pbt#KGbN%Djg|lTSuL=N5AgX{HpNzXUY3swv``pN1H1C70-)+X|d5NJM8`$Eo6N0 zT8EXvF0=zI0%ya23DPrxnnv339kGj(Kebf8L!v+Qgro5+55-*=d=}nc9|eq$%tddE z@SKDdWPdacv;q~Rp;#N9^*JjR+lT$3GR3*OZQZh3XlZTqbP4sYZe6v4tD~#u$a+^+JbEisygzCeej>Ko zN>93L3R)62+w)UP+vUSc$CNM{j5IWWF|e+DjA${~_lEp90E`-pQ)2GpaEQcX5e}!` z9N70HR+~nZC_zZT`c_$1lMv)B&1vRtzduUC*3u5v5_UmXsi@iLr%@xY@}RUPjO?F_ z89yq#Jf|m@`&Hu$bhZ)0c6Yt$TC+9bvJ>fD+&D9@I$F7H=}6SF0vJzx*Ftpm-)Fom z?+@_HT+}5u8Q*H~?g8vga&q4-BSHd!`Bqas8_7MYScSgu#oj*5$?!ZqYp)JTOH8|D zF(rrlA=IDaQOS0xA4nst`{V6FdC^|--zO=^3>t_Q$ zS_MaUN=Ht#AzL7F(=n2k^OdU<;lo3SQNjr{%&SV)JSS>oXDjDU5vq-- z@3{4Szb$bbEN`4?dl{NvxL1S@I z)E?SP3*X?Upn8kp%%JE&{V8Y|rjYURpRF)mEw-F>6pTJsFnBst=vs=XtJkd~r%^_T z^lK;Vvys;{tT>MP-%9m4)6%76ZqA8Z6j1l!Tp4DNLU<98_FIsj;uzMHG%q;-rtj?)0QC z!pXk3FoAWqC2IcwY{Am1EI#2U_G!qCElp?oxdT5;(J^0fnvZcn%VoJN9<777(w9|Z znW|v(Ky4+Z9m@`N{^_OFU6H4474Sxta@Dcx(w-B^XMUHiv^OpO7e>{`E0aPY)TSVH zYSJ0-l^-hCvCLG*_C>h5`)NyV%JF0m5{(ljbw+^ul92l{!hPA~6o8((x9eN+WQ?QD zc}a-;h<(~{*H$Pvnz5rg&@@!kWN_>ij30#dsOzTkyB3dq3gP!?1++fnDZs&a8df4{ht0my<@=G?Uk=k6Py0T6B=6 zn;fmr;`FN6MvT%*`KnG_Jyv?s*;tyDkge)+s)KkIdR8{Iha`%Va-L{zYV=J102}c_ zEF3o`QULdd$0dzh9~YJ@ejGfr%DgS4a#>T45v|O)>XYlecj_~GC$f$QjX(Z#UPsv^ z;skThpUg!ooP}PZ{Ebf>4%n_d^YXZ6KsAqVD`LH{#xC%9kUyw-BxCsIy7;Pg@|CMp zX591AYfSMuUqIRG`$_^1Uf>Y(_$*0)FP}|O~ zPy(YQ;A!tp(9gNUlGnvwwU*+2-3Zc@cNIGeR@y0Wp5)L;4h1U+JN&6^3Yd#2@b>Lh zvx2q~Ho*p_^lgaJ zqf%vWnzQ3L6t+Y_c`MSMl=KJYGU5pD-!y4xrZaigovNlOQSr6eR^Ato;!cIgJfxoW zzaAmuOIIu+I0{n8)}WA7ci**j;GC#F@f@oOUj9d8{A+1g=T8SG6eqEBTJ-Q;ot)NF z6Lx6J5ee6=B~lQCw6!NGRy!PTQ%@X+M9EG>jKa{VGTbB;*!i9EiE`H7A+jtr4 z#qTd&l+xB&2X+RMQ=dOtQ}-Rqai&YTg3H6=Nx`ld#SZr8+9oIUD@a)NHKt0zO@C== ze%B-ON?Ef2Q3mnJ^KPl+cXHPOXUlwoI}ru8>hU-#E$46;Ynn%6|`lmZ2BN`ZOF zLJE&<>pz80DF!Xwag!|&9b9Gn3rcgV<%-WLtv4JM!6%WT~GE-S>QuvPc)v5?8POVZLNZBaw)~h8*_jc0M78tih7>^YJAxC1P^sYSe9R^ON zD<{2U*!rHdon0t{N^UZ>IdkDFgmfqZl=C^`vKb zakvJU1=rBpw;xJCjU_5P(fU!NES+Z>4k$PPZDVst6oqFw#WHYC#P^^Y<6sTWXbA2E zm1#{7(bU*igQu-DhGQuz1xF&8mDHcX*R^Mnj2b9!4s|pL2Q$Tvl(wx5N7l5N4G;o1 zrE)DIeWKh}M~BXrVW$ZB&MKuLK^g)v;uSjw#*l!lFKW3$R;G_l>a<%G4LglM;vRPD+f*K4DWc_mM?M6KJs%H)8Ra#NuJ zTZ-xUXIiVJrpr15j?RM0Rf1HsBqaW#vdffCIarAHo*(4td4(49;aDd>N-^X=Y?1gr z4atcMvq*Q|8tTf=i}Y7o=$Y;_xS>hmo6`>ln{857e*sBB&!Oo~Ar4Kx>kmHnZ<5YB zo>@|VQISrBRKD5V9=>~2=(09S)EP=!-N%#=fIE{$idVgGcLYG;n`}8Un@iW15EfLS zo?b_4I*XCqZ7Id@&E-VpONS#l{{XvHXN>ySFNGXkx@J2;I001sazL=tb4j7Ou5O+;jPK>h6RRhJgN6*5u9kqQ;TQ=mMjipCaI zvUA@Q@WzW&cVs+eu3Gv?Jx5CIlwd2ICcs7}VPBP*HQ)M~gN!TQ) z{e0`U;G^C6FNE9SD>jX3dVJJ}9gqh5?~21b)fP`DD#@-~s*(z{W93jB^ybxs>E4=Z zGlQDj=s$K_Rd zNZxxjxZJLcN_Js!=&9MYx-sJP&2wcm8zdxpR#ihbtviaHs8XOuts5sLWjo@Q!dE+C zosBSR^NfmN9pou$qzIH~-DheIHLh51Jx84Yjw!Q@QB2aD(%1`^<1`VN)70jeDQznm z6ybteK2%Z(&stkhK?*7bJ5Wcd<@8#Ay-g_UXe+fs_T;5$+qE!wb4mXI3P4uUmlAs# z0Zc+VeCnYbmWDSJ0Gy09Y(A90tRq6R_)k$zRHY^4jjF8%7aCqNH}j-sEgY{FbDBl7 z85*3_zlX}0*zfZ2G!5uDj^=dZ8Kq4J#M6iJ)Pd4<;XS0KDH%w+L3&NF

`g9lf}-}kG0Yn<=&miG;)uZp;2H6`xnBFn{adB5nC|lB1vKwq?#ClbGk{Txz+3vQ>Tm@Vk47mFIE$1p9Ft?F~r7z&-EyEWcA>u~feHn(zxso0~4%_23u3WOhk7jmgE6|;TU?Bt0bgw^? zJ*o%ID(hINU3#!{=|FUa3?wA)R|2ZyxBcDZxACn7BNfrd;hW5Cd?Uq;I_pU-$8FaN zmf^`bC$`nqITF>v_IYGvrOE1C*Rz%DI}`G(xj7-m)+l9|$zn1R(+C(#X&3^zvb!_d zB`T@Xl2hqXV$NCuK;DS}t>Ydosr3OnA*3j8lTSeO%?lXDDFgMSD;dsc0wI(wK}VqM zX=ohtgGoRDQVQ_mkg8PDknto`gI!qP&VY*Bm{tzvs3o+0DZu3*;L$_`v)-jatwjp} z4UHve*HUqe=9bH-DUr%JS4uW|Nl0nr<)vf})XPSDsq2aX=xitA@X!t_@NJ*1G?BHB zi@h*6sFoo#{fb!jhbtqDC&OqCEQ20=DS{6`Y?sX``ftD;eIHHDHfA1Px0$ z$)L=~Fkp|ZDr7iHG1`$+6#g(#R295gc^1wSn=cw&baIjPt?-8MX$`pRQK2?6?4@fU zb;+)*B6F`ni*>r%pfMNSi><~;3T!5f>l;9F>brx6LXpc)K$^m}<8)>hF66{i?wspa z$Wn)LYvgj>(%PF#ji2u%V45BLw`be0dqEuQn?ro8%iy zF;L6zCsU5JoDe+gS<3<=oCAD?CHElCW#$>mw7Lj7MLe=tp369rClB9dChCNuHPh?_ z!M`ne$6ms*xel*Zl!D5%D{y>GtviLJ^fd{wp5o;X^k(h<0EB-({j*x}{K7+U62S@U z+OW}WNyd?q^_8oL`{-*K`Bg|;6~0x`P$KhmqFMr+^#iq5d1?%5L_3nB$a*|WYGbh( zS~VvcmygAswdeA4w!;-4w5TeR1~uW8Yi+e*@K>m(>0Mr%J(f|7I!}lkgV5KhkHaHr zlc)u#$#|`JT6Cy9Ler4}=DIYm9n)NV*xJ%PYR=-~A#O`PIV!_Q?lW9jO)YG$W^|=F z^Q@F3ZMf1kezeTFByGJgdQhbdD`0xiM{>}T5(P~vYn~4k1dly#F4ZwCZu*)bw4Ua* z!{nY2@}=A2E+nSC-ea!gB{&CB>J4^$hqZA1xAskv95&85$PPM3a%-QLF9IwM0J}g$ zzuB%;1W=``!g1?CiON_2XMX0aiKSVlLM9ul@l{HbR>n@`%v) z+N8#2I+Kz{X@NN?N^`3R)~2ikq31zaBN@d^Q0Qc-Cnl%_sN)r7O+;-+O-XF3g66GB zU-77>ZdQe3Cu)tDq0bI;RS1C%D{^^dqwqg;LW`!mtl&B5yNE+eN zLQ<@sT0|PqwI^=Al#gWOX90a_X>x?@Kn_xOsZe4#{6jPYxd}o_li?J>iJDR2>p@p@ z6ycyA72)2QBr=w{UTUBipaY+~Ks!yQ=ZAl~#5Tr$9 z9h5gUK{I6T=Slzv1$j?O49Auej?}56Ez&(jA~8-UI3FKORY1b~UAqTND=TXIzZ=OO zezntxVXUv)<8d<+t_mrN&q6ocS46Dq&|Kn+47T4frhv7igo>Qd%(2cIg2+%LsW_}I z+hV=o_S^oKHPsJ!K*C!m#fm1%uTiaRCEW!&jx^L=?G%YErT+kTKYRwICl#cu(c!e( zr#(GM9O2+?N3YVJI|!UxbN!dYPrLBHDDsi#zH6dY$CR|o*hCy<@BiKJ|>Fy4e1g| zime4-6N&y+<>x%Rxc(LMVM1cmt7>&Pmr_*uQQuG%)xmDdJv{XTN)`u3)uz2}JiIxx zI<;n8Pz#ET+VQTqJtliB-n%_3iBYn|VxB6XE&S4ZHGo zG~#-3kerj=p(HLizli38ISyixh$LsFPR+}FcKE3k4Zx)*C%pt<#;qXa)|mX2QQqM~ zmf{5F5Tv$pgMdy)t#6iLaG5;T+5@5z5}bKfIbEC(1uNpHGs9$b`p{__RRj}l!jMLegQLC*RP;N2++Jzj`#V1JE z)08Bn zd7v7k9YKAm3Nvb;AIb{BG_(p@@)^ZSwoXzz3J+**uvB!=Hi}qE6}2rH5Z3q`8UewD zE8<=a0Phkz)dSlqTD0b?Kwel+PQG;k#h|05edsD;(puR)Dv~2!A=5MhJ<4f0N8Wi= z06C>!5u_Z2r!)esA&v0@4s%|B; zmM<5EwoJ!#=cZ|UB(iIbFRdJx0?8Q38{(I=l+^L@_f)eoARz}=H5(K9Qqa;D7~h)W z7h$QCmY~N@be`&`a?@@;IY;3FWApf(#zW0Cu0{{x2W*O)m4hxAzT#-lO=3KDRFy%M z<9XG5NY3~Mj@Gm5rVi~QG(jfa9ZK0MN^}xDINvz!ir)mi8rW3Ru0&A6GnVQYrv2Q2 zzSzN_D+e69$RaTlrMid4=2&8c|Hj&q@O)5JmNvSb(;Y6qFRS76~ znj8G;sl$0KXYV(tG}ei+W{9`$e;<9}jveqnlV)jXw=%X^pX?YS1nb z(9^W^YII(-c~ z^`=IK@=Y*fjDkEpXa_LbyY;9sl&u>co#+liaIIg2&=N^V=rcejqEDqx)a?iu)3Kn6 zrpDxr>Y{dr^lYmmy)%@J#X41*T2{!UG}r@Ma)X`9K z6RMCkNYZ!sO;iE%R1i{)hn)ctO}nc(%`j=n&UQ2d+XQcniUIi4a(Yl;I9n>y_-O@K z8r>0R;R!CbaQv^bY<%{uae?C&cqp5Cx7yzEHovrV4_)iB6|YEtg6*YlawNRUIsu%D zXvZxpANF#>w{GFT{i1bMM&9N%74K&XLejPJ-i)2zN^+GbdQ~GUkJ(ekoGWdxTA7~> z$58Z*xeGZ1MhOQ`@!~10?I%v^F zEQipf1T>(fxS)jMo>(qcg8jmCpg9SItQMVUEo$ru?OEr8Trz0w&6s>HrWOoPB@y7 z{FZhra0Q$I3B_oXJLQ%w_6C`N4qx3kpNM+an25-`z@F^^`OaNX(@dvUmlL`A*4j2% zw-#FpC&YTusQ=Y1< zgSn+$Xb$U4&j(9c?^8@xWGG;1{`YEWsU^a_siZ%4QjU9420a-l0ONW}BTFbw1t5^0 z7zBN3Qlg_NqsEs+VI;c^q z0SCjfe1$>6rS0h`^`I#=K-8lN#a1XN1Iuc%J0}G>@SfBF7NvA2VMrJi=R^)yjUyFl zj?e+mdNg!)&eVuh5NU&yl+!a(3Rh5Wcn-PGr3O$=2HhwEh3ijEDjlmjau}uQJt|K^ z1Gkk_Dki@NO42i-scA;*_-T|!a!$RN$WMIGqB80R#8OeoOA20mysBtFLn=y!H|%_< zG;^sL3hC!hNjSI=2d_*}ZqTU^uC zFA#lu@9U6f7X0*pW z62W{g!z<(KByglKgrl1=zrw6;D7?N(ME*994aept#Qy+0RuY!hd?>*D2B$3cxXFIi zempj#Pi@#zo7>(8i3%SvSyj!u-y4@1w?PlI%Y$Bf?_8Xc?WUT(B3n;bXHP~F&$znV zX+CALHml&DTt%K0(S7Ru1Vk7b`FmzP$tHl-`+-Eu~>3q(-*f|ZYBmqN)mqH6SM#0+}T@w)IIAEY#XYJ>qQAQaEV!^6gFtmf1>DSKG>kIV;q9 zZBh={deR8%a|)(VM7VV4_)xP|AOS!yyOIqmnwuP{NywlS>dyTt3~okQ4h^cbqkt+H z9cqKHp+rp$ZWNpWPa<)5!?(p!0XoU14bDC)a2yqi(4pfQ-heiC+K>dPY2JVqEnfxSB?^`Hop?M@mzg`-B1*Up~MjmjEwoa^sP zW@?{WHuz~75h$<2jMUl&Dk=bJ0MiCMH1C`$lz|^!vxC-{Awq`4ZhBB*sn+7hdSkc^ z$3b5HU}mcvP2e}{qtjlOa8~b2aG@V8;=6dT_-B*QtQLgZcy25&>z>1}eRr*LWV0-x zV0OmBveHV1f_9_^Z$nC4mp<+?3x__Ha8^Ho;ftlte-=y5zF|yodJkIEnzzc5g%P`s zoCEW$Z^&mZ(_~1V#h%o>A}Hq0eEz#tPbU=(+}kpw+#LHy6nSm0(0NgK)C#Wd54##o zD5&PIl2Wi8!;SeUXZh3Gq0io9r5v`ING}jHq+_po&n4}BbPvek**50K*~W*86fOcw%Fbc#h#`lV zN^}BU2VkA|th2=8Hy6ix71Ganj5I0ci*pbr3}pB_VF?AFf6YEKZ#0Zt(3h!34lxHM<9_-PWL z+(rW3*}yj6)`^zJnFme-yJtu>dCvzPx4^O07lY%rwd-5z)-l`CxH%%4TyL7?u|g$6 zk(%bMU%O1n&{XI`p;WXITVAe|!RpAVr=vp7C>lLECpgEY5DBt(?d442!NK`{l*~08 z=Aa{jOS)(Sqiw0f3HYkcQmv>5$7wmLj?0m!UtDRfJ@9!5jCa1YB)H0+2^6 z4Omw61G!1Y0IG)uLyB)1+;8FHbp{CRyAiGXgxV?CBcP$wBSWUMTZFZ zl4>Xv$!!B2Ra6nwONS)q(yjm>WyJ22kSWk(F1(+-@gujLNwdDvuZ9;6h)iuFX~7-z z*GC>9$>VHb+ra_$2F;kT&Q4WpBNjv`l3VKM2N)x^*SbGbe+7-6- zI#du6v8%DDu|u}d(@Q`^HL*0|6r!1ieJD2+5-9^w45`3#k2(n`uo8COnGmy)MKB6< zc!vI!oicN?;~%9sRWX?ZPTLxAoz2!UT5OF=UM!kwg-}3F-Dy#>1%uaWMle_vItCRC z?r2R3WM--W!g75pNRc^8!1AZF5w`H2lx)UI5slAU!qK;TzCk&l+?GuWg()M_gD~L- zT8<4cC{msM(Mpi5r7i8()}bf(eCqZATRMhmg9?jdxu67tsaZ6GmaRWJs9~wooSn@e zU1?aL+?Ns)r&bT0Do|d7J#$G^g;XRYIC4lIS^^{O<0KvEFxz(u0Y?U_5SXO|p!pF` zB1Vqbbz!{Ye3R)<6L|NuJL7Y&kEti@A^n?vrn>lvTOWik&PHlWv6Z3msj`Edk5OGx zv%es{!}nHHN4dOl-x;TKYtm^2$di+i$yyKZAl7*0<(^ojIm4Vt+y&1JA#qXhDJtB2 z#cIyeU9fQiSY|+EEtvx-T16E*0gGkv)i{=;YApTccEw0COk0Z)l>C@#ZN8fQXjstN zi%Nz7L9k5#6!Lwr(G7dbc}$1#@yh*A-Vbl>ie4ynPKx>0sJ(xFhFIQ_;$k zqoE2k`z0O67QYdtatP^4it2W#v4ZZev0lTmsj5#2z`&^o=K_gAyufMf2Il=JH#Lwq zpd`1~Y71i{N!7OFy&EDEOJ-p~>?%zW){-~xPee3kbpo#4Dd>l3EulEZe5%r8%jt>? zG?IQQ4jS&qY7b@Bpaml|jq^f8N_BPVP6PC5szJn@Q>IOLs5c=cTZ2(yj@q0?-F)d7 z=y3zDT5!UB)hlMxk>@}Ul8&p~(=&)54=OYd1d5#yx|51D99+suMNki$r?$p`inZZ+ zK)~-v6(BFZ{#8&KsNPfrbudXisTsVXk6I}~lC>c?8;VNVRJA$=JUF1X?Q23br0qaN zkh9d%2>un|j0$fiPTDk#qvu@dT0>Bg5lv^t*d$fqOC<_2^qC7&e5Vp{eQSJjMuvzBne?g4%Ulu` z(pJ)&U&5`8NVS%kz%isqQ?cbLK7RL*jGM&RMLjqaSB5BN|Ht@xUm)Et|v^{Y>k2)I!C2#j7n4~GNO2+sHI06 zjlY#oCL4;Cvw_E4h=^)LQtH#yda+zr1;zcI?GEh1xr?o>&LB zb3#sS&{k4|kSGUhAzwO?3#j8XjKxcE3{y09tf^TwK_WWzj0$PeVsxn>gG^{8qJg6n z2XjC-0QcU3PQg&=KsYiH)_~%Z+JYzH-kc8AwJ>70qz-I22Gq1;w)Waj#Z#pY7;$^A zV0#K$Ixc{bih4%OI4QxVpq7)Q1dP$MGj#mwEhi!HuMROr!F5yEB7k1zfMN2+DT6l( z^`;UK@-gB&&=C@>sQS`6T_HR7p(O!C=SCAoj+K0(tWZENAnELA05}HVQqqw3LiK+N zAWBM!z-z>{>;-FpdGECAn`)TFtqRJS8sEo3Tf=7f1}a~=NxsPYi2fGxGry&8@!^(V zEov78txl<0i>E$RZIy=dEsiMm{`M)P{@1NO z^v8J!aYU&Asa}GoE=or?7BN^ZHjY~$sbr*fqGwI!cUjHOy-JwM0waT=ybNa@_N(sE z7L=+cp{oO}GsL?Ar}I;dELiYo4?ln6c<~w{{Yi8xbgbpRq0oRS2BAfLw}JVEcEDU!nBt* zL~EdQebkYf-;NSJw2pew=aMT02T|@S;j5q4>h*T3G2oKX zH8~BfTYUh7sE539T+7RM^&jBc8C_ zcq(lQ{;|`hx$@HGdJhY5>$Y1_VZt1gvJ055OxLyJZ4!){!)i;6k?!R~tq`f1T92od zDh>k**l$P(gpzlp1aX~$lAe@|p{*gVv3LwXJ6WVH9kJ4f4(h>r$Z-^3n33&JJolb3zWr z)V89GP#motO)U+hmWtQ5!_KEhU`~bZb4(tz4zxfKG{9Q1(wKIk`qcIZl(yC!#z&PC zBQY3o>i!i(mX%>Rrc}og+Q+Q`9zY0yC18 z{ZdM`dew28#Z?~R#W!j1u&|Oz`&DF&S63bhx#@ptjeE4(6K-xR4{wz#Bxm?lUzUA` zGcQQ^?Jcj-4u6=XwCt_Sb64A26yK;;f5Ms$7lv39x?l)GfK zFJ4yWj^>a@KY7o9|OPkN|&4iPGK#VfCB1QnDyE$2gjcF6H7){L^!yFEjO*=vIM5>4gd z{{SdlJQ0BSj;*%+YZ=VTE3vpz(x~wgYr|Hph}(D-IYQW{P#aR0MiGn6C0kW{gQ%=F8!1Tmg-zu?tElcARu_>;Tb;#5 zS85v>Zxx?aY}U^yI6Vy-AyfP)&>b3l>1aDvI#SV$9VN02EgCXblsUaljtX1{dRi*v zy}zw6F=b8wO&SDK4W&6fXaI$vbRHqzk*BunZnv=UjDI5Ctx3^{R)l5}yuF zTCn5Nk(`o7Qhcypcl^>}fdey|!bmy%E<-U{+xA{`i zkyPS|%^+}EvF0c+)})-`fMHLDm(ZTO?dnK}CY%KsrVEotVWK+vBe3L`amr~WMwZnh&mz8L%#m?%AUNv2&mWeS z)Q2%DhWeI`lKAm`X{=jpcKy{zSn(_2HBih|wdM+zjr9yBgtiX2Ax9RaMT**ow zm#tUR_h+4}-XV1yMa7I;8X2_NQ`@0e$b73j`DMN$C9MfqjL~$D5g1SM6`iG3H|7+c z6}&#@-Yy)B{{Z&YSH=6GtK0G6DeGLjLHHo)J!$L@4gN%wsQf2mTJhuqyTd~->;A3n z(~i~ADo#s@QzJc7wKXHXzef02l zrN?|Htz;8D<4Q6qfup*oQfM^PHL0>GQrWCEq!gaHpvAxjq{xA}sn|U9p+V^c&>>RR z_*Y6=6j07S8bI(?fw|g%iu8{ckLgGdZgb~B#Fo}tPDgqnRJPAK8BJD`vK~@?BfScU z%8`?V(^ievX>1JAvqs4wrvgT=;Z7EY)D)dUiZlxK9;0eoBeZS3BO*C{s01z@SSM;> z%4b)@wJLBe2bxf52C1c}WE!2Gi^|)2HhK{VIR~{VPf1AS^{PcROqDMwIz>Ge#%;dG ztpjfGC0;I+$=PYcuoR4nWMu6`0qDg&4Wl^Pek|gak7f+7;h@DsXwXu6&*3rR4SWrd@??4F^eg?%D-P`c~Ls4~;2T@~F=wCGf?eFd_Y?`pf<~4tFQ5Ru!I01!82NpXwU^ zCYADqe;KK2;meyX_K5nIk1krPPA}aJPGuD!C85htYQsr$D)DvCof-)nbpAB{0>zLf zz*{GGo81S{R=DI!uf$Q`II7x(2&vk{N^wR<3$d*BqJRZPS!ifX?NQvrT7@0K?V~*? z31DrCVJQ! z6Pf}%gave<4+SJ{p`1{0D4cJnHBhOzaXC|G8SUv!D9TFIdhbG@e5DTbDb4!S1eW%o z3WJkWn?(kdBg4oe)`1Pmk9rK9CH@sFArVcgEqz zkgW1E%XkA%YMq#QQVvO@W+tKDnVPK?0M#}zn!OlG9RQ~>CnY*fJu{-G9eP#cJd-u; z8v2_j484V7Os@-g>s?b5#;`mOZufYKoc{pcJC&(N%C(BBnUW`6E^o+cXS>2|>B3K1 zym8u7EG|7R=%*Nv>(=c-u%HG$EGL; zPM*vNE=_ph2v3JUo3$z!h@9v7mkB;6q#p=Bg*6qn2dSaH)S7Ky`!#BtuRBwLDg8OuZ(A;)hyiXuQiZv3hn!KwvcDm3X;v3ud`CGD+qACwfBe)e3Z8o)1m7%1x zftOtA=~jw(2!_BXb$>EwN|TFLSmA4$Rrk+Ddtac?YWTl&H7Y?VO1oAmIU9T(Pg(*} zNx;uu^*ad>UM##6KD2gLkG!?+@3Sqv*l>+rm9EVBD9c)qeRE3Wxe;4&%|Rxzxv1n7 z0K?wZ|xm&edpWpdW~AX>86|NL~dZa5yv>Rx*%5+*1J^=mxmXI#2|ToD-S^7g*^= z%&AuR9lO)oX^tnoGT1osrmd7RkNn{sT&OkTC@}4^Qk?hCrd*fbcxDd6iR-S z;%Ge86O;9-2ZwxJC?U1b15i*oPU3>tMeo9qxut5MLnSB0y)Bu_Pg6yp(UlJ@R0MSl zuW_{iib|8>8;>fpH&{PEDwBq(+-;h;RKRzwA~t?io|QC)Wq5(R4LM_F6@5?psI-36zE$0;eT}2$Vu+1WX^FxTh=S9 ziaGv>`Tqd=%~u!hibH9&6b$sNQaDHgfOmS3e%sX5r^iZe7WZxMY;l&=-!-JBg$hE8 zMmvMX$>EK2(i>%~2kdNwxQk0IA!AiUKrB$%iC=G`6MFv(? z*Yv7QcC1qeq|yT?u0;T3JbD@kO=BLk1a}G42owRDDk-5wAPnU0dr(Fsc=o9=3eUsZ zfO%JjkTaRKYJpPl%>d%%0M*G}=|@Ts3QC6KtxZ%MKj%=Pg3>*6KygmSfB_H_Qh}$nX*l)|m&ccepuSwu z<3Sm~6<*bc86Fdee%k2w-aMm&Tf?jJ<||0cBYD+ZOm{Yp#^CPsk}_T1qyc!ki(R#H z2JgA{Y^Se?(hBQkv)ygs*G^|j`$x(3?NM4{RgLN^K=hMH-OD7x*KL&8S zw|Bqk7t&D=Kbc)NHCUw146(_J2jAzbUB=+9d#mya-xO5Vf#2y5aufGW{724`DejVV z$8Y=JDsd=MoGvIbkA)iw2~EVPE8+W_O`i*KA5)6;4U>w#FWn3T<4)ZxB%Ug0EkHXI zj8+^|D@%#$lap4o^+#!H5}O_s?xE{hR*)A`GnCd=tsQM=e=4kL=tkF+)|)L9D3gxe zsckgjvbUi2mdh#YNl7SUO1xVn(4D2nWh{&x>7^kn&q{GL;3{&UR48W^GN`Vkd};WF zS;S>4S3~opuv98R?FDCQni7!TpISiXz|QqRCtC<}Q21$tU24{IjXkLdc5_I?)(1mD zQ4)IQf(hr+ov~C%t~l;`;CWJ~4d;1Milh&3S0Zf_m@2eKAyei9Vwa0QS;i6CR+*d9qAPVR<#lMX~NmMX^BH9+t#WU zPGG4L5Pp@WD0xNfCf~)ECi(}wSgr6iE!E=sqrhodE}tLDx6!X!(HVp=-@@3VMYC4= z&rOX8cQnvcoYPkUL&xh(BrxD7#jqQbQ)hxz#npbk`^x_S=-4|YJ(jOJ!z$7)T=Bze}*zVLp?Aztt4fYMCQB3d|D#eX_Riy`95H2(lxuZo1Dok`g{zUIjk zCWpjv(;tLxs2>rBAguoY^wnB%e&{7sBj6Q?D5XKdpcf{PJaneC`(%KBqPg%Zq4lhn zE2K1}Ii%EB(-5=bK1P-;OasM@@M?;mtqI%lQ)Nc)OeQgbRSh@*zO{Ntjd=18QBOoF z29Rn23eRecfUKQc_oWQwD@e)dQ~(-Fm`}oKEKWjoQlbhN(Nj$0ND%l_njm({PW>u^ z5lBm=BjNL;AbPTKL5rs+VUtflbTp%#TVjBZCrN1IVkwd-R;I_DDgbb4#XKQ`Ur#|> zX$2Au8Uvx~nxxhiI+}_}Z783Ir67844jmJ*kyBTl}aHHI1kN8cIDQaX^PB zC$9bJ7%NUkgW{kO45J%^ngK~tRkZ+qdhz4lfMbs%PG}@GsFRw`oHQD!2TQmEKcxmx zQl;enlqR{%Cvno81jFE;j}9T7N+9NcXCcv17Mp|KIJfr-w) z%I09<8SPydn&F$XuQ-$#+EStM=W4CQ^{DS(c~7aOMcq9Pden<3w%ez_$t)#}7~HEg z9K^Q^qG3K7Y{8mZQf(netS$7qrR};KUU-ERhB*(%Nkhm z8iQ_(#8qd)6s7)RdeQ|rZRD|fvIK0bvV^_iQp#eDX8lPWn zkeUq#R-&h!>C_K8K{f<@e@J)ZSHe9h=`{Wst{pg00BuN|5PsJ*rfg%7VI9lBD%Grt+XOu{ik*)3k@pO$E?1l5x_bAV;O7 zC^pw$I?rb0l^=_I)7TjZ1Yqq=M=+$QVEqjT2P!AR1x7{?-yqZiFJVpq%FaD1fiR2^ zdY+UBY*=bud8bY~VyX(6%0pmj`qLnuR+ICnrmcM>Z%867?YyeOJMV>K6Lbj~xqI(?;)^F(Rr1yN^FQWHW9I=vnz13Cc|XBAP}cNWjV1Q%NE}f{^o3A;|XFy6iwxSX=gs(XpVv1#C>KN}-2WTfb zJDLplP#3y(RVq$G!A^yB6c9S_qBFfRIVwHswpkdZ;Pu+7Q6mTKO(~wlZa~)SJxXg? zlDgNH65+s@?sF;U26IQQyQo@oy4JlVKCE1U4wI%GHdz)ZxoL5di4o^`QQx=%KEo_U+ zE{O+Qh#$_ny8SON-1?X8+#xdowJSJ4z)x}MTwbGxPOctprp5{_B}YC#5UvhPT~i^Q zNydaHQ;XON&K6a0x8d+-4!to+3YzFVq-S!XD{OoxXnY%HmJ+L_%l?v>d5Zni6P#7) z8CHped-Sa+{{U5MVtW!PrEap?87gq;LI%|&&ARHPI;CUm$MU3NMq}O=sQtn^4>MH~ zu+KqON`5I$z8kxr!kAJ&_|;d%`=PS-*?hzXSMjHCeJdWcld3X@3OB6OT2vl`xE-nJ z7bm?)iBM$n9`i!BH7XipaLTp+09L)h6fYE2m4V<+tkAKwsig$zJCE?AWum3`NI4sg zzI&Q`8W|_Wk<@OQN2HdP=tqYEUFg{)p-UqRJJoF?G~$TRI*yd!AbB~{oRQYE$O5H( zuu$z;sWq)w89ix`$w}{2WznTNhQv^Cq1=r5b)uQ+T2wPo19d=93`z>f#>u7OcSc}Mu3TYApM}t07n*t4MTI<0IbOaIGG^vnkJ9QN%V$p?qQU)&reD6*J9#=75S*8q1LwzX&o6Rj4n#OwX z{{SE5KqlW>WQioGZ~7Vmsh8m2tx;1PcoCk*tyDQ4d&O6ETjz3*i7s@aOKYzUX`OMy zH5)cIIo`T4wOvWcRz+3L>~^E&o>N3ga!)0b z;PG$kLa|)jVx~+LvPeTIz$!kTRoTPk$LhWjuIrPFWJswzw4e;vuZ|ug!sL^5Xg0?b z#@WYuttV}KhZNco4UzWl41AMRRcQt)BCs0=rt3at znpKx6ijuxdXTT~cqamW_*f-F9;=jU>s}!XTAR#*rn5u|1N4;2AaX{0;H*?)k|}emY*zj zpdvV-Qfk=(nTMxfao4Z#s)ppX-nGRv;D9Kgc;|3CR$*j>>?3ktByG}=4QEK-V^o0FvZU?T{{Y1^AYM12aOAnETXm@e6;MW<=t{an zdKKX4bDz`v>dhKs;SHs<{7W@WBhC1Y`13DMG_~Pzli?Wa-mXgM#wrycw9s05DC0ox zYfrOuxb|y=)MZYF6tBR1s&>3%nY4t?_i1a?+CLh6&ec0@FxZ#NQ&A8fj1-m>GlSpd zT4Pvq;iOAcC&QuVH$sL{TFiFjyqXC<@gZ`VlaY^w0=hUnS2w81q2cRV9z!1Zt!<5) z^siG6Zx17%0yM93zRYK0gU}~>H-w#6sekicn z&k{tmSXmzQ-}>{Z_(sR5^Q6(YhZ;4W27sRmHc#&wY_dVTir_j6*R|Xl(N>Gc)t;(D~&jl4pg+EBl}17{{VGSEBL_w0L^=_{{Z-J z{{Zo-wc`1Q9%a-Dvf6A3Mk<2y;6D(obHr_-3JL*fIZCS@pu6U#nZV|vsJj}9XY`~G zX~NpV$6Sh?sx6#Lvl7~(jZUkoX|5u2lpkDYJP$YVq|mL18zVk+m$Zfwb|LQ$JS(L^?I8ezjr{4FVpsaqn1BWDt-VbnMc+|Nel7kg zA;AP)e|&Ww)W*d^ygCnW_tK!G_N=Tp>||!7&Q9B!a)Rte^;-bHkOrTx>ObFA2^D*9 zR1q8-oKc_wV?AjD3KE^Fp_oQHRmvO(kn2UDcG*{MzH|+yM+!+9=~>tll97yxkX`!< zASqBEI=Ml?Szn8wsv9{f&S|2ENWi26TW8`==|DO%v7Ggw9;NN;L8H1w00nj0rAM-Z zoc5###?%0xj#e|!(n2>wf;Xy$5m$*=A0a}Zfa&Q-3Oqv{Ge8Y)Y4E40q@4t{=|bQ~;_5dRe$1()9cRk4`z@iirI~I{ zxl2jQV@!7YX0WlgIjf50H1~{nSCR)>j=NvFYqvDL8N|4vr6*({*4%j3Jlwm6qGZOo zCA0$HMGq?Uc(`lIDIjHMc-n+2$&p)5l%ka11ryq1Jf^@dt`m0W|IQ`9= zeN={k#!9iuM_-w)UVAj^;l-p4vBCE5+HW3Z`g44?5uL_HI#-#Ohh7+^@RfwX zWy$k*nJAYYTD~Ej@lzLK;f9R)eC3QsYvCSdlPs4h*l)IaQ%T(untCt}ch32zqepU$ z7<++8j%Q$0d(ahJTa&`~fBYN&0Q_pLc)xTHGDsyO&%JEGP!2SjGlwe5)i;!V-Oq(z z0rIYVuw1K?v8-+;P)9>q*sYyYquJFK8AV0KQl?ubm~s%K@PnFg_PpXqsY{GqSRNSz z4r9;OtV)8e$Ih0To|Lan)M+|OMhY|@<9d>!4-ZNyXsJ8o(}O~&rAa95PQZ?Z6pi~+ z>SrQGqoo5U&W!<*+SW4Szq?CEQW1^2Q4<6Po`rT2r26(WtO0Ar-Ni+XAyQOoEK&I+ zRLC3-)cU5F=dE1DG$o@~%C(TTj^jE(BYJv1z~ePKKF%!;xZZ=XCsFO%ss?U+o>WQlyplkwijO_Dq?E01>{fGI-8wP&OHzx3G=*p% zm{UJ{cwKb9Y z*RjKk!S#7j@CgUKcF%{Ln_<+@lUqf18~qZ z!eL!=*!tI>bH6W32$93^Wbp;S@fFL)*(co4zKKtsp4H8s@^6k>Y9y?_?}G!Ya=aoIg;qJeQ>)ffhY30*)PO-Tr`r|Cj!tBX85DR(|_-~RyP zHLn-$f;`nf{wtzJN2yq+pkY^xZ@=NiMpzuJ1+Gia$I|*pT7D9HipM+^GEA;q=BmyH zq|P36jlkA)_IJcFM1yTl4ohm~Z;@t_e$^ve8S|@ERrhW9)cTQ`_Z!~LRP&>J9$*>&63(O7T@VoA|XCL zlpPrzDxyV7X`+fevs6P5;X%VyKt_K--9HsAr~njkt8+-j8UFxvFe`KcDIU!(VE+IL zTLu>sM#&ZDH~rcb0xBvP8zatuAZ%##^QLhQKnYGy(vg7XIXb;6MdE~oldK!vON7OgPT6i&MY*yTF)5Wn~u^-czyxGTOSIPKb>&g-Lh&n z4k-~>L`d5VV*{|Mx$J2s-xVWrD>_wW)510#&1F(TtvT~OC;^>^&aN6d&w8VV6%2aQ zGBuBg^`s6~=7iNZ7@Y9c(LPY$&;I~zRi_{Bf;{H~71GG&*l|OpGEa*gr1*%+yy~VY zxhypjl$45$@h;<`#H%AYP_8aaJhsO($MLLeX$}UnQFDyum4Il`-;kggNj|2YFska` z6^m@NO?BMJN8n9Xgr&I3Ox3w13D8N&6&Xg@n#zLM9(5XNp%98RT5)+OBo7jWA)JBBWP1<{o0!s zu}0*1R(2eshSCO28ZvV?(w?0&R{>PoI`^oc5^=bsW41!u!NzD273R_xwFXp>2TG_y zAdyDXp#e{SrB=&FYR3Nn#+cA9$kd&wQJ}IhQf}DL3Y^s#gKm@&+3?a3B`d#bg#zQJ z8&CmDYIm=~DZ>$d9kI1AA2CVJjn9<^jJFE>D%kfF1V`QFp<#PA25U@Bg_kMWGFIaL z5wl{hQ;5sZM~DOSt!8VLUi=7(AweY@@1)|ZyG@06v_;EKM9NOuvqa2-mY0_qETm+o zUm{G27Oq%0{n#eI@S|Fi@PzDAPJD;6%TE58< zW2r}4w^2DYBWq^T5(NZ!9e1g)7_vzxu<1)d9ZSfj0{PV#dDTqB>EWQ94l-y8UMVE- z#ocHB0NKa`{{XgYPA}a97}Qo!g0d99B02EtTaJI`zcn+!^C_9RD3%$N; zc}7t8W{p1DWtIuRzOjO?T1Vj>YA#zxK^hIUx(4T|u6{(bIn zjYn1OX4SGham<*#OY5Lj-ZX4SE=Nx;GDAr8>qNwDA6eC@M}In35e;0Vr)2JNQDb;J zOIb)t5=lLASv1(E-Uo%kQj^kyNMQgcdPF9VDqA5_>rZ8~!P30cjg{P~1mopY01G&) z4*vj*Pz%gZpa_Q*^Pq*wi1ekha!+bfneD5@0jINrV4k!=PS8HJNZ73`4Ubx7L{R{q z^dvKaa4Brg2nt3iZ9oME&rHD$ z@`yTx2I1qvzfn#YqZpwsTZlq(qf|($l($X*Ar!U?py|M)WaTBqjP;}g=3!sqKoKsQ zYCD*r>M5r}oRsZI+}J`>mHz-5kQ%Vz+u`hK8;6G@wLP2(!=0$u52pC406Nfck~UXk zK-!Op664TR%WLJk`RegKu@1F#XTstGiBIAkYfNIII;M70OCL(DFGi{K5#gt%nk<>T z*4s`pwD%N9dJEyo@sc}Mh{#AyDMOgx-Bjgalv%LTj=Gjv8Fgn!s@p3UlO8s>!pCV= zZnFOX)+BW(2d~SmKXIMKd&BlPmN-AYt=(|^OIhohE%2J0+En6;?v1|ytai^!IBly= zR53(WlD7W<3TLAiw%zF@HLC*@1a%rfB`3b*EZZrqGa(jjCGHBD(u3_kb0QQNf%Pl9{Jj_Bzh}KnFS@7K0lH|D>T5#4fgXU{3EqZPoud<4Ogb&5u zmb6HUaZ4nq??y+U*Chz`H64b7FF5JKYA#2lxX^VdDQD?Y(`$yp8%_{0QhRgWBmjGF zO2h2t*OSv~liB*gR@Eo56T0c9p0SR!5p{SefSyKM3Qxp3{c6m_ug-%JEfRCufG|ky zKq*P7u(VXvg6-G6H9;G9QZe|cl|LN~RH#2j`OPp?oMwcSCfEvkBH0pFz zjBI*T!J)!{rdleOz9kHSMR$s~Vb^n8d3huCdOfw91m4(HUB`Vc*!XedV-= zF0btwwSFHXSGE~t<#)o|K4G?Q7X@=}FZiEy`t}tlxvqv~0b2~D^DL=;80hn*wCy4? zJ>|_^7)Hq+bs=arNFC~nZpa&+f`Zsuw<( z%8I!F5~B1bJHS{ZNSae8_rcP5`Mb043$n6^6QMB#`pNw!L6JAiVfEjn9XMxlit zF}U*;#X0cLF0(0YUqx(5&dG7c*oyP(Z3}s6MhOkKy4HOXI@RT7Gj{7~>a(z};dPVC zwA*A#c>pO~tvE>YQi%X(woPZvo*aL==uB;BU`@QrRE7~_oVhU-%aVknbSRBLC?7Gs zXP2qsn%+~$_VOfYmwBpv5p0uPRArW=B`Dns#&oD2hXiWEo1a*wm|IV;j_*6Ky`U3T~|Ud($KQDW^lV>lhs<*^wy;JJW{;K@`aB zZ%boml=yQsW|1iu%HH98;_-4AS~@wqC}K+ZA>cPkD9zy6qD`i4k}A(!tsr%SlVQ$Ol2iy zZf~CS;_o1dOTO_QBzUgNl_ysvrUs>*11iAzZ(990&e>f^#`4ivlO)?s(Kg9Swxr<8 z2>UGOPsh`))b4n8>DqSuBIU8;%apk-u+64p@||Q!VmoNmrL>`xyMg!*oh!+No9#6& zzq(WGZb}^M#QRjY6CFxRs?+vtlw?-;W+Wrdjud z2bgUj6*%ALPCBP!y;gjja&F}$+dh=%IEq5j?u#_!#fEgvSw;hD8wvrR$0q(E6r9pSMw)14(B zbgXhLbC;AQ?1ZOw+|GsX*;qKPY`s?oKRLzwc_2T>5t>?~t^|ZWmGact)2J*RI!N=* z)x6cmw*H^Vb*V!8Gv5;f_9WpkNalu0Kv75L!R=W808_)Q_n$ic=k3*B5?EVhpuaN0tS zuu_~KwNcLctB;@2@_$pFcuyJd>-+D|`YVq))^GB!3^ZZ@e+ zG}%UZlN6AKMnX!uDOkzHZ|k_bWrkYwj&lD1WbxM0Zxq>Iu-f6npB6MaMt$Cl!hbN6S3*t)zt82FONVmN7RKZ|Ky0;*+EXHJ| zaxl>5XD3M2)C%Ihmy;e`bF(dLFBtu|eiz*5xRSv!ce2!|PV?@K%VYM#aunK|L{{1= zLRkS@EhHcx!`7$zPFyb^X?$_n^#1_zxBP_8A*YMsvBW%0GCZQVl3P@ZTBJ9u`}1f^ zZ7r}<;J{MCbB_)I>04hx$#{6N)~^1of77%~{LuJaMOId|9Gz|)p1IU|n)LZG*M=6Z zTT+wWvY{ys4ZUh~X(2vT$k%gYE1MrWV9*a*V4-SB^q?E7F8t^QzK}i|G!e#gzgm-o zF8I1pqYXzUoCxl|P!2lz)e;h2%8sqcp!9NptAPRZWqy>$WLF_2ew4>!?02Ma{{R%* zUXcF)yIY(~%}sMothb<)4T6*hGfzsx^$$;Zy*-o8UN!!6{gaMfRhIcy=)45$CiH~d z<)p@3SNX*;VyWFrZG9=oBXPLEFxU(lemkB9QTC5 zw@hJ(R=Hs=X-iPl){T-ifZ|&6spj;&p4JyzvwNSLN@q5=mwL8IiF}t1=!T`wRF-2y zbUUTE?jN;M5EG}HAfOzcncsTm_Bkea%&@jezwSFtAbaJSR~IFfT$L8b9xHH!midS; zu+wNtnedFHIIQQ=y0hWrR*cslt z{{T$k%a7B{a`E!ZmhUBeIgi1Z)Tqnlywb9j;2dONoDfGtT|T3W+~Uh0%uW|owvWX8 zJMXu2KI?w${NW@zw%saqlN*vl1-ukG6gDRt6JI(101xKJ3_tkmU-ws3mJ{7 zvB{MCYl#@Xl7u(*v4gozr&N@VVc$^3a5`h9dVZ_ZWy!~s$8#?q=~&~It3zkvz8AM# zptSSONRb{JFqL-+Jgq1zacR=Ow8lso$IBJwXZnAr%N@xkJ@?hGxr-=?R@Au%-cP*R z8IvJq5>k}O<&^?CtH27^w%WEC8&|834<}5dn&i06{y(!V&Hn%mHP4EyZ{3-^#*pW{ z#sYEcZKNdrkO^Au0v**H0`GmG@@X@^X)m+PDV01vxc$v5GNX|~V1$$DNE zxA69mr99d}2cMI&iOxp($gg_u9Bvrn@jQMQe=WEALu+aH=w|A}vKxZ*S7k|#`;lD> zeG3|pe$$%b0aJwKIoiA%=(D@G52w7d`#0|ux2v6zz8vBQZFex*W3W-JWd#ojWp_V zOGkPlPyVb>W+(3{1H06y!`_1cd`76L%~K(d#6DF;_jlp?)KwUMDn=q{0~bIvcAzS&n;!Obef5L!-sz(Z*)EF*z{{W9VAt1Z(8lVC?&?(=9)x`k!!9r+#>dBqr{{Z^0 z$ezsWO@MQs)&;s9wAJV)6#(M42ys jXfmg*0mrQZJMhpAZ>0uG0yWS6kCXoZbie(ko+1C)9P(hk literal 0 HcmV?d00001 From 4669f4288db20c9cc04b71d3d79b84d41621a425 Mon Sep 17 00:00:00 2001 From: pliny <133052465+elder-plinius@users.noreply.github.com> Date: Mon, 11 Dec 2023 18:35:46 -0800 Subject: [PATCH 3/3] Create security_team.py --- swarms/prompts/security_team.py | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 swarms/prompts/security_team.py diff --git a/swarms/prompts/security_team.py b/swarms/prompts/security_team.py new file mode 100644 index 00000000..85397288 --- /dev/null +++ b/swarms/prompts/security_team.py @@ -0,0 +1,28 @@ +# Filename: security_team_swarm_prompts.py + +# Surveillance Monitoring Agent Prompt +SURVEILLANCE_MONITORING_AGENT_PROMPT = """ +"Constantly monitor live video feeds for any unusual activities or potential security threats, especially during public events like parades or in high-security areas. Look for patterns indicative of suspicious behavior such as loitering, unattended items, or unauthorized entries. Pay particular attention to areas that are typically crowded or have high-value assets. Flag any anomalies and notify relevant agents immediately for further assessment and action." +""" + +# Crowd Analysis Agent Prompt +CROWD_ANALYSIS_AGENT_PROMPT = """ +"Analyze crowd density, movement, and behavior from video surveillance to detect signs of distress or panic within the bystanders/crowd, such as at concerts, sports events, or train stations. Focus on understanding and preempting incidents by recognizing patterns of crowd formation, movement speed variations, and signs of agitation or distress." +""" + +# Facial Recognition Agent Prompt +FACIAL_RECOGNITION_AGENT_PROMPT = """ +"Scan all individuals in the video feed using facial recognition technology. Cross-reference detected faces with a database of known offenders or persons of interest, ensuring a high accuracy threshold. Focus on both high-traffic public spaces and controlled environments. Your aim is to identify potential threats quickly while minimizing false positives. Alert the team immediately if any matches are found for immediate action." +""" + +# Weapon Detection Agent Prompt +WEAPON_DETECTION_AGENT_PROMPT = """ +"Inspect video frames meticulously for visible weapons or items that may be used as weapons, including firearms, knives, or any unusual objects that could pose a threat. Pay special attention to how individuals handle such objects and the context of their environment. Your goal is to ensure early detection and distinguish between real threats and benign objects. Raise an alert with precise details if any weapon is spotted." +""" + +# Emergency Response Coordinator Prompt +EMERGENCY_RESPONSE_COORDINATOR_PROMPT = """ +"Assess and coordinate the team's response to security incidents or emergencies as they arise. Evaluate the nature and severity of each identified threat, factoring in the input from other AI agents. Your role is to develop a comprehensive plan of action to mitigate the threat, communicate effectively with all involved agents, and provide a full briefing for emergency response teams. Ensure swift and efficient decision-making processes in various threat scenarios." +""" + +# You can import these prompts in your main application where the agents are defined and utilized.