From 7cc0e1903f4008abdd6cc8ec6ebf73b602b308bf Mon Sep 17 00:00:00 2001 From: Rodi Date: Thu, 19 May 2022 12:13:01 +0100 Subject: [PATCH 1/6] Remove unused message filters. --- .../snapmod/features/conversations/MessageInterceptor.kt | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/app/src/main/java/xyz/rodit/snapmod/features/conversations/MessageInterceptor.kt b/app/src/main/java/xyz/rodit/snapmod/features/conversations/MessageInterceptor.kt index 32438e8..1527929 100644 --- a/app/src/main/java/xyz/rodit/snapmod/features/conversations/MessageInterceptor.kt +++ b/app/src/main/java/xyz/rodit/snapmod/features/conversations/MessageInterceptor.kt @@ -27,15 +27,12 @@ class MessageInterceptor(context: FeatureContext) : StealthFeature(context) { { MessageUpdate.wrap(it.args[2]) }, { it.args[0].toUUIDString() }, ObjectFilter(context, "hide_read", MessageUpdate.READ()), - ObjectFilter(context, "hide_save", MessageUpdate.SAVE(), MessageUpdate.UNSAVE()), ObjectFilter( context, "hide_screenshot", MessageUpdate.SCREENSHOT(), MessageUpdate.SCREEN_RECORD() - ), - ObjectFilter(context, "hide_replay", MessageUpdate.REPLAY()), - ObjectFilter(context, "dont_release", MessageUpdate.RELEASE()) + ) ) } } \ No newline at end of file From 472dbe5f2bedbd24d4a640b6da47770951ac100a Mon Sep 17 00:00:00 2001 From: Rodi Date: Thu, 19 May 2022 12:55:43 +0100 Subject: [PATCH 2/6] Fix save to camera roll in message context menu. --- .../conversations/MessageInterceptor.kt | 5 +- .../features/conversations/StealthFeature.kt | 4 +- .../snapmod/features/saving/ChatSaving.kt | 71 ++++++++++--------- app/src/main/res/xml/root_preferences.xml | 6 -- snap.ds | 14 ++++ 5 files changed, 57 insertions(+), 43 deletions(-) diff --git a/app/src/main/java/xyz/rodit/snapmod/features/conversations/MessageInterceptor.kt b/app/src/main/java/xyz/rodit/snapmod/features/conversations/MessageInterceptor.kt index 1527929..756882c 100644 --- a/app/src/main/java/xyz/rodit/snapmod/features/conversations/MessageInterceptor.kt +++ b/app/src/main/java/xyz/rodit/snapmod/features/conversations/MessageInterceptor.kt @@ -12,7 +12,10 @@ class MessageInterceptor(context: FeatureContext) : StealthFeature(context) { putFilters( ConversationManager.sendMessageWithContent, { LocalMessageContent.wrap(it.args[1]).contentType }, - { MessageDestinations.wrap(it.args[0]).conversations[0].toUUIDString() }, + { + val conversations = MessageDestinations.wrap(it.args[0]).conversations + if (conversations.isNotEmpty()) conversations[0].toUUIDString() else null + }, ObjectFilter( context, "hide_screenshot", diff --git a/app/src/main/java/xyz/rodit/snapmod/features/conversations/StealthFeature.kt b/app/src/main/java/xyz/rodit/snapmod/features/conversations/StealthFeature.kt index 06f1b14..8f09d04 100644 --- a/app/src/main/java/xyz/rodit/snapmod/features/conversations/StealthFeature.kt +++ b/app/src/main/java/xyz/rodit/snapmod/features/conversations/StealthFeature.kt @@ -10,7 +10,7 @@ import xyz.rodit.snapmod.features.FeatureContext import xyz.rodit.snapmod.features.shared.Filter typealias FilterObjectSupplier = (MethodHookParam) -> Any? -typealias ConversationIdSupplier = (MethodHookParam) -> String +typealias ConversationIdSupplier = (MethodHookParam) -> String? abstract class StealthFeature(context: FeatureContext) : Feature(context) { @@ -55,7 +55,7 @@ abstract class StealthFeature(context: FeatureContext) : Feature(context) { MappedObject.hook(className, methodName, object : XC_MethodHook() { override fun beforeHookedMethod(param: MethodHookParam) { val obj = supplier?.invoke(param) - val id = conversationIdSupplier!!.invoke(param) + val id = conversationIdSupplier?.invoke(param) ?: return val stealth = context.stealth.isEnabled(id) if (filters[methodName]!!.any { f -> diff --git a/app/src/main/java/xyz/rodit/snapmod/features/saving/ChatSaving.kt b/app/src/main/java/xyz/rodit/snapmod/features/saving/ChatSaving.kt index 20fca01..dbe7730 100644 --- a/app/src/main/java/xyz/rodit/snapmod/features/saving/ChatSaving.kt +++ b/app/src/main/java/xyz/rodit/snapmod/features/saving/ChatSaving.kt @@ -65,40 +65,43 @@ class ChatSaving(context: FeatureContext) : Feature(context) { val base = ChatModelBase.wrap(it.args[2]) lastMessageData = base.messageData - if (ChatModelLiveSnap.isInstance(it.args[2])) { - // Convert live snap to saved snap. - val hashCode = it.args[2].hashCode() - val media = LiveSnapMedia.wrap(chatMediaMap[hashCode]) - it.args[2] = ChatModelSavedSnap( - base.context, - base.messageData, - base.senderId, - emptyMap(), - true, - base.reactionsViewModel, - true, - 0, - 0, - media, - null, - base.status, - true, - true - ).instance - } else if (ChatModelAudioNote.isInstance(it.args[2])) { - val audio = ChatModelAudioNote.wrap(it.args[2]) - resolveAndDownload(audio.uri, base.messageData) - - it.result = null - } else if (ChatModelPlugin.isInstance(it.args[2])) { - val messageData = base.messageData - - if (messageData.type != "audio_note") return@before - val media = GallerySnapMedia.wrap(messageData.media.instance).media - val uri = createMediaUri(messageData.arroyoMessageId, media.id) - - resolveAndDownload(uri, messageData) - it.result = null + when { + ChatModelLiveSnap.isInstance(it.args[2]) -> { + // Convert live snap to saved snap. + val hashCode = it.args[2].hashCode() + val media = LiveSnapMedia.wrap(chatMediaMap[hashCode]) + it.args[2] = ChatModelSavedSnap( + base.context, + base.messageData, + base.senderId, + emptyMap(), + true, + base.reactionsViewModel, + true, + 0, + 0, + media, + null, + base.status, + true, + true + ).instance + } + ChatModelAudioNote.isInstance(it.args[2]) -> { + val audio = ChatModelAudioNote.wrap(it.args[2]) + resolveAndDownload(audio.uri, base.messageData) + it.result = null + } + ChatModelPlugin.isInstance(it.args[2]) -> { + val messageData = base.messageData + + if (messageData.type != "audio_note") return@before + val media = GallerySnapMedia.wrap(messageData.media.instance).media + val uri = createMediaUri(messageData.arroyoMessageId, media.id) + + resolveAndDownload(uri, messageData) + it.result = null + } } } diff --git a/app/src/main/res/xml/root_preferences.xml b/app/src/main/res/xml/root_preferences.xml index c9e8c63..e3cf605 100644 --- a/app/src/main/res/xml/root_preferences.xml +++ b/app/src/main/res/xml/root_preferences.xml @@ -91,12 +91,6 @@ - - Date: Thu, 19 May 2022 13:14:25 +0100 Subject: [PATCH 3/6] Bypass 60s video limit from in-app camera roll. --- app/libs/snapmod.jar | Bin 178675 -> 181643 bytes .../tweaks/BypassVideoLengthGlobal.kt | 8 ++++++++ snap.ds | 17 +++++++++++++++++ 3 files changed, 25 insertions(+) diff --git a/app/libs/snapmod.jar b/app/libs/snapmod.jar index b4eb64c45301b3f58a071e94f397a69cddce15d9..3bdce52f884675e2c851240cf3582c5c8ce475af 100644 GIT binary patch delta 76241 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∈V^u@RoPOWsyT z_63+jn)^#2$kQF|S-Q%_XR;>arC0j{KR?@>hhh{5H3e+)e3L49fn? z0Z?}#asBV8Q7DOfA#;%02EGD9tn05(17*f@ZBB z8BdNs(a;UFDs-IT{DoB{=$#|(Tm8WJ_#asP({dvGZ`nv;@PGn>GF2Cq7u7NKs3`9O z@B%C?2Q#6>{veUYe#Xa$UtVXMUwU2#u^F^X9;u$ex2bN)l6f~BChX_ zhg@1+*+`N>n0?PcQ)5L;wp8r4j;J3`bmXR-2-kzngB!G?=RN|Jkg8B3^@n$l`PaCIf;9w{dRFpPPPCd%ebQ@~pE$ zeoZ)!a@}PG(a6tX#zchoph5yyM4w|Z>7tCly)~%*{W@NtNzPm2?ctN8aYrdMT%$%) za+R6$YOs>7`JRpReL!xOV&I1ehEOG+)vc^!nSMdFtH;Ty@Q>+}`h|w7Ed$kryp>v{ z;fd36`l>(5@G94NMMvRhTR&}OQ2>jYcLfXE%CwJ)z%1U~vALsRE~crnU$fa%KG2yn zcQNmMNPp}G8KhPq$auQN_7wwgR^gF*Bv<*Jx*}&1ZFKX@pdVjQxmqu>Zy#pCv(!g8gXX?^ z5UNsVt;Kth2Oc|zDXbgKkXmW7tH?-=9#uD`zG4mqDUE&kaJt@3+W53$cZaeaf=784 zx~`5wU_eD?=R;wYkQZpykAZ*O)_m6Bu}m=(8pj>8b)G+_14t_HpnV+^rXcMtfZTAJ z*15~xGIB5=NwgaLKo&o3Nn95>qCNW742~MrG9FOR1ouPgiLGY+HGeZ)tN2^JQk|k6q9#%73Z0Ny|z_Kh)&tVIPJ%-EVL~=mZni;=JR?|Zl_^ut{ zVvt+qSnv@Vu;uC&q`Hnezq*%@`{mZxv($b2>@E{IFcVqJJB+Ft0_35#xdA@Nzn~Jo zq`f2V)v)hWdnzBj2qyEs(o?>&(TrN>`dD5LvI-zx|IGxy#^FsESS7*vfTN_aQ60?+ zbJV%A*P~AA$VIBfwRy*OzKWK)zv%-qcA`qEA~HI#$Mo&5khjD24zxE}^;kGOXm*NR zcgEw3j{vTZavxK6r$(-^S2!#%s zQPXo?{DLW!Jy3 z^x%a9RTL+4bB3Agt|2jQ1RlP|ATQ%Gs&7Y?i*{=f%+(qm4Tm8%0^sg6Ng#Ilj!OIB zv0sQyeL_#IdbSl&Tn^fqKGTr$T#k{hf8{1thH0t*sa+ZVbx_JI&dT$s%G=h&WGnH* zASon|!)XNP?4+n5@Xt0jvA=pV%<3c8Qmbs{@$>_ zrL6G&2CF}3w1EWP@Wk}#A0J#7=-+@BnV7Hj*z1iuJ+8iU-Aq@DE0I7}&6CmTRwE1dc z^UP4HxuPx+ueS>Iw-8e=(9fWP-bt1~go%xdPlk<234EuCU^#?J){GS{CJCia-+ttV zYY}o*vg~E*=|sT!2@c z2%Yzbth`WpAH{W=MPXp++0gjzK?z}$L1NLsTdFSP#(*{*a}7!`9`r6H8mmVp7N581 zoJG|3L*y%V+0=V3(ilmhnJZDps*VY?bI}#}0p%yb9X)Vi>!{UB2xkG_b*oS0tVo5Z z=Pk=MvXoE@OQ^BU)neSbDK>3ux%;RlB(pn*_eFak!I!=OA%uU2E@DfyCfdX#35cBR zp-}Mib$EXCb%Hde2*j`Obn-&;!)7ptM@h)7m(YOL@*)S*+zh?B0nq&3A4AbBWkNP- zvakV`vdRWeD7T6Ra{vxl1^kL1eDLmo>1xm+qz}DqTNiei5YNGy`*Uxx<{%WKl3#5p zAM--ed;Mpg{^g!!oFy~g8N;LlPJOS$lxKdyp(UpHnp)bec2JbF&^9+H+I+{Gq;5hR zK>($n_C%?hWHkcPeyiftku%TUK727}sb-vA4piw~b!gK2!8_)-jiQ>J&k2y5eE5Xu z6Tq@}Wv5EnS2N&tUOGio#&aC6<+2dYvr{`{K4_(oC>t!^OFyN_sfMSflCQ+ppZR`; zkg^;Ahf*WrEO=#*FxEu4WQqUP?>2jV78%>pP8P}G5jXkr!DHZN*0)Q6PjASk37XN7=&C%pgIzi)XoP*T#PJGumBe@8;k&)6uG za&?=Tg)bBZST?pC6n&(^q7brQK_BubgY^c*f5{kyh52;6et#Ly$}-`;t}Pb2jXBuQ zG$Ugf7Jon-9$tBDazC+oxxbC+c&7^)Lx%;5Zzl6G zCx5a-qAefHK`I*fNi&j#=6gkiQf1f8M(XK+K(%G_Ml|V)5`61|qO_S%W3D|N7t%VE zPx>n9aw+IYpZw5>O>y(N2OO-3+eVsaraAiCE6s*%JcG+o6!43T#+ZkL9_pKhR*@-r zmDYR-cH{|+8s~+q#dkR4kSyb4oBvC*}Y76{SsXH)Cx&{Zp2T z$^JKY6dT}u{&)8DdTVtTaKz){isK_u)sF_#49Fq?9V;Az6MWfiy-&nrtOUOaXh*7> zovexR1~qm%e5-;dN{)?$4;t(W*Dj-}x5mc;-?s;lN$Z}Xaa}}5x;us$zZT@q;ueWX zNnfXYZJsj=7ay6Y;E?a=<~#ABP0{G-t=odY0VJCHrKV=fJjwjZ8YwqNddMD}S>x}5{6-iZN;@ua9@6vTs$;cV6NV)Rm?Pb0DJY1Cm}t?lfym@e zEEFUp5;PjD)iCfLr9b~{d}Y=7ZF+fC`1$cpm)<~{$~=Juen>UzzQ-wxdS16WQHH)C z9E5%nmxxYBZZ1Rk+Xo!D|AjYQhB7g_ASh(|DtbqmRcNj&X`_0nd;?MpNHGuqY+`em z=c`p$h|7a8Kf{{|%F=p)2jwFXeGy6+H_=J~PK9N%nI2{xxm4^pg&%tvq7aT1e=}dp z+O(B(U0632T`FTli-UhqdpygP2K0w+f#Qlhoh?`)raxY9L*h3|57PMZqQRbU=vX<% zs&X@S92rB`lCmKdd0ybaHHIa3?(qm&u`H($=-%Y!q)GzhXA}{?k9K?)+*f4-$7jfg zF3?Gr5p|2W?CN_1`vB{2D-o(w(}J}JZsHcJ#{dM1<6AdziPE?8G0Rsc3+4>apNXYK z+^s=&ieHy|Q+}HxKQt@E#X4-yy7^iU^;5pF?!hBWn!t`@d8|(z5LE2<7Otu-L>Zw% zUkRZj|KfzDYFK|ALF3wUPkp&hqbv8IB{)z!yVQWFaZ4aPO}`R!8GpmCdZtAc3hQs_ z;aMd%T_5DsH$b0I$lnRirZDma9gv-K%0H8$>WAzjWIK-TrEfM5pdh+J-3(+MCp|~{ z!i|5*bY$0iDR{iLjD_h3zx3R17;0K=8sjIly~A@%b;25JX#gU@k&T_LtTsLXh;LSc zyTr@5P~ucOev_-e_#1!n^8)1NYfzx(x z0Dm8$|71o28cct!i|yFz?V#FvORs*s7h`(yAp!NKzgEO{Z1jStw}j4iKvY{osFxJp zF~s`AIl>`A4+MqA^s%<0&xC1v40mYW7tdG3e|fbJn0E&Q^X{Dz%6}S{8hy>>fB3UT zP&fSF0hqofYl4F=Yzi~@ZEH74&DI_7ZEM#q)QBX#mZC_zu7V?qB4=K6H7!0xxqvb` z1@j|AN%+tS=X~@0Hoc7Ovz+hvW{AVl1o2wT1-E+(JN%LyJaMww$uJw+n2-70ZAZt; z`!fy~coP7QvsbAG`_V~}#nGI8Z4`IkxjH5WYhEmH2if4Mv@zPwGaO_`;0BnPxxpM^ zMOst|w{EdrXdwg-RIam>QzDMdK&w@&dTEq+GG>}#BUrrKqOY5RS7deUVZjZiH$j*J zL|F6?)@MfNKHej>EqU5mCi)onz6}SWj2L*FMlr720|x1*JqU3;&{BZ25+R6?YsYLPK# zX7&1~AL#`LIU>LfyLka*^3>*YVuhl66I>H}%G8KiI#-!^vB zthLk>u4SXv*Cn???d<>bBzTiyq?zohfNnbfuy=(OaB>!|2pYcWylfOqSBc|K8EiY7Ub<|C&@SH?C)S#48Ic;y{~@nmmv}r zAAFcfy_cOi%L2g^`c`40?L_zGu}r8yGQK!WBeSv$7e$saVZKWmn+H@&gi&kxJ}=WI zX~ld$^96*orpGY$J%x5MX1``S-yurLlb zM-=E$(`YL%dTYKg+ZZPVLdk|DE-0t`*trJ1>TAB48BHA0Cjzan>7DmzwEmYItKt^E z`+2;jKhV}qRBi{nQs?q(=0;s zA@Fg5o2qXHn?Ja^kD0>W$`d@`ZJMh3D zh0qS7=+}HykO1Jd9aRWFdKGiSqW2EnHvq43EP?M;w(U!0oT0?PYZ%f5L4)^<^(!>t zU-HQ3PuaVB6J<4s|0NG1)5(81BiDnYhT8J^UnTa}Yft${p(%twp@5RqwcMw~F<-z1 z--PMWbZGdD95c{WW|iTnrP4&wQKf(QkBgYu#DBybOxmJ%$$e};^?LnGya3^mlIJx*<(f|vu&`kN1gettCpT7v)Gw_h2RbX zV2ON&>aQ7~#%=N2nUsD>kyq2g%0aBljrKIZ*#FvlSOOe7JAVR2;0!$cmLIAPm;w~5 zAT8>yof62_Gf+KgQe{{gaZhniyJD#W4sn$)QQJ*0`*qpaC_!u~B~oqCQQa4m;3%3p zdtRdHpD-va>@m$Jw%}IM{cysB1jPIE$o0Rb+cu{Dar^vOpwb+_grRD=Vl}3wThU^j zEvt2tyykaXym}Kj(aDQ3K3_v_m{A8q$3?S-kS_|ylRxpjfE&}aMjOBznnyEVI?SQI z>Xce2cll3X&@+U?TyfhP11RRz9qtI6FOgVpE>G-X=9Lms51i zDWUu`h~&0XdA`5#6rZfM|6?RM*g*ii8>BJDR?8HwF@Z4EZaH-wpeheWa!uy zpn$djFZ&i?Q$WkL{aG_Rd{U^oJBMRqTlPWCSh^|R7q<27f(%@4w zgPMkNXCGh5+roT2du?#0aKjeXweokEr|2a^o%Bnsuz zr>&$8;plk3Tk)eK1uMat-*s-&0I`dZ^zsCJ*KO2_Z$?l*^m^_YY?M(yB%wa1Aw1i7V~BMqqde<) z1@rg!_s{5%tI1NlBxi8icKeJq{R5%>#zLfK4%rSCtK;?1o1~;ZCm1 zy7x}5^twr^m9GR@Lk2JZ_@QzqoO6+Hvd|FqKg|AS6EUZ}u{TW0&k!i&8g-|Vf2sX_ z-24Bfc9;~@P$)o+sGH6|hc&q#W&bQ!b_{ow54=&rL_g~~??Fj!ZM#{Ju{rg*dMyUMKsyk|IRAk# z>t3fU`0jmaJ@8`6RHyn$+J8#~_wvi+GRKdd72y{x<`z&~U40eL-yXylXLOkqt0U|@ zVcCp)OKLJ|-9T7{#af`vZ=5=7Q&ny@BLW!W|TSsSJ@DdA|Ex{z6gAy0HQ2hQ zBw1v=1Fo1!r-BP!Q4c@c@I@lTR&ct=+87__72Tl9#z3lhD)94WiZRxK=uCr^+szz7 zjL-o+$G5X-YfvMmR0n)HC#3c3g-we-ZK-CQz>Fbc^;xEzw{ZIBz>Ex7(?-F&!Tz62 zQrm97;Nh-Unk)v=<%eqW-LWBxiVt znWt^o*tx6hG{K`OrcM6PZodm9sz3VM(~^73;pj9F6AF( zcNq5eM$0qI<6lPjXY3{s{x)_i{2%`qQJVNm*PX8)0#xpd__-}zj+!@?;?VRQ9F=V{ zI+7HX6x!2UkLU=?%eskjCc(23B}}WA6a5@pknTJtz~goDa(92s=XaPIksp}LcglOI zUT6BpHLHi{C@NP*7~lx*+D?jT-c3`_N%x-L1#4)H)4d71&)FbOYmT9k2SBD85%bb4 z!f7OhXaiDlDGqeZikSo=AL^DZX+%CV83LR=O@r{98` z-M8uc5&CfZ>gv5X_n+kw2pQlB+eCWagTro0Rt6f4xd)hArPlexZ6`Rcdk1))nKso3 zuzg~f31+u`s}g`z90;g@H}s7sUf^FnPJ`itQlCAfxCo}48Jr=VDfbOi{F)9UAz#FG zu&`&LhbZ;x<>cO0scyFu0|c+w$QfSaHsQc3>i{yo+m+a7ZSsT2fEu7-sEVS`YfTUSNbaf_CAG6Cn8+JzugnRvqL(gacGQJ_cKgGlI?{@gN0X z`4EmV%!0q_b&2WbX`T0$*IMb*L=OSN2X~{I34?-Ibj=zYA6;T$h0YF=I?<%5$(j2B9)GmAbiFv_fK>m|@1(P$!PmoOzaaaknVYV+ht zSp<{Z5`#EZAmzi8H}M7w=3DwITQt=Zk!%HZH)CwzXC)f0`~l)=ZD{#@Ms2nJj|cjD za)_iUcvP_>x^i8^mamCIrMIu8b9EpZoR_OuKQB2JQ|@E0*TwQ&PA$#$clw~bM zt~56O@xG!idL14C?M3#g!m+zpBQB0dDC&DfcA9d3sGhjMqlH2GkN&M`NB-WLj{;vT z&lek_>8e!g!8QhtDn&aUcQd^PfAJ@Yr3evv!{62aakKuuy#8B$6B=WgVKd7dMZ%2} zPGb4qODE9A@#2;X&fReI&SoSlBl3G{q^c{tr=Cwcm7oqz@QEV?S@Nj=?ELu&CF8Qf zGsX~M3Q51;L%#$zb9i-!WSEZ|5gkPucfPpO)S+I z6oU(P*SpmK7x}sQ_cE7+?zHFefOoa~Si)jt#yE!!=QvIdk;REar6Z|{eOl@fxd^jH?O z^$gxem=+!6keoLu-A+v!)t|aL(4L|k64T<|1i+xB2S(|TnU5w=Bv62i?Q+NS9lDf3 z#obm(L#Md0BqicxT{#1%7{j>R>v1Av^C1Wn%ah;f65UWUMS_WV2xt8#o*1AoRC*h7)vmd48u5e0S-1CnNII`|T+^_%6cnj!xuh``eR+$deh1FG9!X zh^69zOwefi7c06UWThAUTQTP)fLhrr%3p*~cq94Dy&=T>zY~eSo4xPer9dk~Q6@0w z!hq~tR6QL2|L$Irtp=V3YX7T7IsH#5`nQ*Bv;4RiLF!*0Frlpnq)V~1hDgPyk{OS} z(>EC5ux%c`KjaDckQDPA!|jC}>@T@Ssh^Nu_x@UWdm}uY$;bA1D+GFiS(9NWk7Vw_ z?01t}WazN_t`xbE$=qieM8YCV*baK(S#|>q$>Hx9^-nKex4E=g#qqXPHfSd=?=c7A z6%GB2rEZ->xpGlyz_%K)ozgciVt$vyel6c$Y?>EJiVddUL}z3hM*hk7m4|TZ>?s|r z?PWGQ_^3Jii@`n4h=rwgjP0Drgq018sGl2UD=Ci9T)5)51iKR8v`^asSdfBu)^JwKoD0!r8RTcd%6eSO z0{xmKK)oc3Kdu#&y)$3qRfekDyzUkI$ltb^Dn?6}9bH@OSosN#9?6dg^_ARB-^2=R z7(%ZMKBV@iwtNb|mUy=h7Nt~RJyvO9FP0yOVsCc z0+C=P7pK5}k*s&`mY7Ve&idhxGGTW^EAWNRr96c3>oj%f%C*H%G^K;ohHWKtW7^9= zNzU7HRpr~XcUGEJw5`8=Xw(_XLIQ(JreU7D^6}{I;&({WM2WUXl)B1kihR0Ct4d8# z#(*cUCzCHCw6v0IWml4tbhx8-0nYfJQ3rkcZQT#6rx?@P6}Res@Y?>?DaqQZ$I82^ z8lX1F5~|K2RGt?gWXB9XVdc~4&y8sXDb?E4|5~m|JN~L?JvrDI>|n=iB8tzUL!=J7 z(~sVWG?Oe?3seeU4`qXxu1>Q*K4(c@xzpihm~q%FA2)SEe$#v%=pAky#q^;@bVCql z{&Nz61hg-V!X!Pi-*mX+9Em@Do5nVL@nLEydI}zC&(1?=YSGoJWDLL`d9{io49r{A zU>)^BE{b_`Hi&Jo@@0?Ca_)BGKE@tJf#-F#6FQLO#5n!8d-mKke5t*qlaV zdo)>RAio(feX%I?{W5xdIAkwKK?1j8?`9RQdz(8r7A}SHd+WkcVICTq9~!lW++MpNUxTh*^7Llq74dpKs9o?zD{8&bwT@NHE_P+hly++Z+pQB>;3F$>A zv4~3e*@yXsmkcBjmV_)eWyYZgJz zz7P2RhZ-`Q$PkBtoA+I$%T3S=EA5iCnomZ%CSZ*pA&3^IkU)G6bT@g$H~_EoCX{!*j*!>3Yi=VX*gVsnqUd)U9SfO8OA`uUzGy zRH1$?K!UEr;cLMyx1*fJ%SK$gFE`)wH@PS1A(bojWBgv)>>=UhX-w>92tdHS3bJvEPpqeW*?am~npk)MuI`G*%8`kDE$s+qmq;7aV3n;$=~=tmuj z+D}R5W%64XOIyNZ0G8!xT!Da;qLBJ_oDAGaAi2s`GXN)wE%VnYNTf$hoh5*{x0h8n zWgQ%>lUzAUfsoVCY7sD%T4=JJ2NN)~6+h*^u zsf)jK!T1+3Ztf5q2+aFrC-y_QtPSFDeD+1?7c*+Q+7{C1+X{N=7P|YRl`errDSZwR zmbRJ=Z9W5qDqUvWW0&TMcdin&bbvcjMD3;Ux^C8;kZy@k$`ZK?Y+PfF+=Bz5&6m+q z0HQRzA223`Bv#O-dIowwu54{!t(4g%f^@nMuXKe=bfJ9(J^lVzRgM%jKtZU?ZW@m% zmpA7v7y|@jQ8y>BxGJ3zO9RpnN>0)g*}@>xhKj=@@e^fD7y~EBGK_9K-qNSd0Vr=z zHcEaAtiQK;&v#iRfCuosAz=yj2AZ{5#bF|2?!TwVb#*Jb(wGTc1h?9o1Vd zyrT`glQZfF#t%Pl^@#53g+lPIehkrHhTdIM*Zo|e7N&hmfFQ-==73tL(}KmpXPuSq zq;FqNdstITDNW-)`|F%2ehL_cK^|4T&d%%hfw(8 z{^mdNM*`G600kaM_207ov0i_fmZONu4rcA$a&NwA}# z8A;RPIDX(F6L&eGK&Hm3eBJ3xom@ekZXPSMtcUagOs(al^7F&Zp36>-@{g({BuasWZMd;I#CbJ(ppRG3Qz2ULO*w zmkRYyw#1LCk5<6}$9-VXv5h!7MimF-LZ?4AT64vs<=LtyPTSQ8tnGEovAPECe^NCT zK;O^c*0J8q-8iR~?o1WKaTE?H-w?TCjcWRC`!VomUBYb)zdGnx1E;O-_KO+E7wPmJ* zV^uOC{eWd_p))oS-Tc2aJxmH$#a;@ZzPJ);DHr1wdWMvsf}Y`F&TBtyjtZ%@hL%m3O*xM%D^gb2E%91Bx#HGf0 z-_8O$X{JGSQ*NZ=^&>+HsqX5&q?{1Z%&1-$PjHm<{rS^(hl4kKGydz9D?H8D6**m7 zCE@ocAYplYR-D}+GYjq;-7n?OY9SIKNa+fMBRu0Rv|$&;szTFH03fr9J@5dZ3Y@<3 zk!;6u+QTX_jkYD{{2KD(ZG&lQfjLHJuhuKlPJGaK3IdMB371ZRWy24i!zDXGCiL>StgC%g-=w1OYf}mJB}ezPg?0OkQ9chC z_PH@zKSX8gY821BQB!(RpRBk}Zd5w4*LlWPZ)S<_oox7iNxx$jafhEX#EgAQ7D=$$ zFKed2;`tbcPh%D%E%Hd|&fHj8$B=5zQXkabFe|Oya)Y;8+@3LT((b~UePs1D-y==( z>;UxVA`+Ec1Xm2L1PT91mDN910REkDv>GXpnzlMLfaDoH=mQ(#w1*|bN-NhePX4di zgLhiR2xUPHMiSqfJ|+-@$K!^jS^wCE7Phsz<7XIi9tzspK2t6Y!xUe}Ie)!8?)+A7 zZw^(XJ*~d7Gu9MCg0y};t-5%}PTqf0YY9=cb>@ff#Q2eKQRO>PxiY40N*3y1P#m$nZ}kY>|jb`@Mcc~qS@*rq>Bq)6Jx z>sVEQ_y6$Pi*-JFe%z1(id8?!K5FYaBQ__U{JplVMC3l2w%qmij4WH34hv}HQ}tYs z-wDZMwnu3`|VwnCxIYy+7UAcIV7UBCmxyaYpi&(<@^I*f4*D<`K)XG_=tHtoyrCg+-C7rVK zwK7fTR>@2kt+>95ZX0IV0k5u$Z~e%M)B`c|E6Am!%-(pQ(wj2ZgjNZHpUr}s1YTIG zc2u1po}3dG@KL7n&2T9}&xABtAL=GNPyMNgQ`@XT8rHGYqJ#OO)QA#p^iY9i#%yh4 zxp7autGz-2<~z<^PPoX=Jnt1dFS=upYuI~T(nCKXea(kjp>SP=tvOSHD_5BX%>pLK zaKub|HrQ#P4aBdYNjiwKm)ivGweWfg9IkvJ?$^={&3uO>oM85L1mCXO05*{1+U~gz zhR(0CgGz;^9;z{uStcWa0Da2ZI9m8s(Nk>{4;Ut_vmy=gRigt|Qo&7p*3=(*^2VU( zpoe(3r(1?P!BpbLlH429=O5iX)u2x-RYL}of?3I+(N9kPCxHST=$mljbLV3BK$nmo z(j^8h?%4V@#Xr+>Wx8w{+ofNoQhZuDFqyk*Iz)Tq+%0$!(cwljc=2`ec^PG-}}1q>Mt!}K+J^2)#qR~ z+tk#$d5~?XEz?${-jX1U!|&LG)APk(Z`JcodA1JpdTNN!r+>Rmx!P=qBSBlwO{!*2 zu402#ly=FuC1+G{s`HioGTvsC%enE8171aTsr%gepr30x!0*x3hCZ`6s+V~%T^zu)jMRIOP{2gFt)MwILZU#ok%M$$L)Hufq)u)#H!jvZ zhtaXdis({QT!Pa7^;o5%Un3zx(NWKxj*0_H3V~8_yFqKVT@p7W`lJqHa^;NousqQE zHkC~1HTht_1AnbGy4(*r83X@y(E__YQvD53wMV<$23z zuZ;`7ZPK$o+m<_czA~~VeyQ6@xlRtGw^Ozp@~Y}%CWzA?H*C(p0vfh740Jj*{?43} ztD$XPqhua*SlLdlyO=x;3vDvDOE+Cl=>|e9t=LZ*eqg7@y^-3u{1POQjUtQL!@Lag zk^>DyL#VkC#Xh{3Lm3y_-{vizlP2je0W`1ro+EF1$rl{WkCJz#{QwBu5V>7ff%&L4kR~SIfA{p+rb-2w*ON-!I> zY-Sjw$3BXGM^1iH75Z-B+*oc<*{TInXP(f(#g*ky|BSPhUU7;e`=D4*-z3z0sIt;< z3+Yn}=cV&16HmU}@75Fv!;jH3Pemgnyt^S1CJe$;DRY1`se)`R&M9Q^tjy4 z!ReZ!Y=bk2%_onY1IaX*>5@-4h!x8}#_E`*XLh(W2Ub=y4qHYp^KEfx;a-9y54Cg% z-&1rhRSy1YhakQ^7DhJs^&$H)<%4iNXWQ4Iwh_lUHiiiYJN1JOIT4M(t*AqVyxtej ze2I@Nq+ojH=nZdN^$urY^Q4~>y%v6(qLW=@s^$8dgo$Xqk%lEM;Fu+^B|&6GEJcx>%l58D3TZwDDp1VBorX?grUwWK|MC}5Xw z!lPXr@+aQ6dvmYMW90UIG=J@-N%B+2qLz#P+VL)0o-2GY_7Jat;Y)c0C0s3&T;9Yf zK5T+EyjWOOsKske*2VLFP2n@(82j>vtU9t8e7^c9CN~L4;1IsB5$~M31e>*xJK<;_ z|7+rpDT??=X&PQ{Vh&ReCYonB}n;` z4*Rd*RdmRKF5`vwDZEKkztE zgXIxedI-du+*b~>t>**m&TVsuvRm^qOfz@`x@=Tvo9a*48fu`4DPT1ZV;cgmd578G zMr#w_Y|6(!eCo2f^~0ga5XI7Ep+;?UOf~F4v2Wi1-T#eDDY^n@Bz8KFx*fgikDJmO z^~_z-H~d=0q1cb9D9Qx!In2`=H0mAickmPpJ_RPp%}sKWZ(kuYC^*WhjDMD!+~O$b z$}@Ns1Rx=*en`&yfT{o0$dR_Fp@=AEyS1s2Y8#6GOi688W_?k`<bN&4KYv-}Y_;)>EPLdC!y1ulmULS*pxY&H%@+vefS&rPG`bGGz2b{hnaR z4$OBvhCB!Yg7G*I3#S%1j*(zkOu?e`n}hO;I3+j|mC-QMutn;y^n99r@+He$1z2nv zP5YRTgR9+AxrRz^ zkoqI4cI`+XZz;i!LCDn{cX%B!$mk@YEC+i8ES}CN!@8pzSvjp-OY&UXrn#|#U7%8& z9b3V%c)WL4R5lE?F zj)c6_D^J=rtkosvQ>W4BGmwzQp^7V^#gG3ca28f|Z<1n%g_X?r4(Z#5bHllQiEBG$ z_dve(Z`m$`$QTT1A`ZqT3G-0tk~g2)@mC5sLss@n3%z5y#K&Vkdbt&;s)=};;fH@F z^T|HRy23dPbf_oGE6I+_-CR=>1%fC8HROCk?)f?+3*J(k!7K^9!av8Rl`*&CdRD=E zV!y!j3F|iE5I-Z7_lxsCU9*E1z^PM?VkPz8h%4mK%jqABhEbpP$XYsjErhw znZ!)sOgJq?fX%>K<=<<|D932~POj~PY3*2pVACdd_m_HKf8WxqPEN$q4^2s+^s61; zoSW9MhZU;3n{Ul8uUcL+1tV4#FQ&)&@8mv~DKDKU_XB%pJ&ae-aH+>NXEIVFF zhLL|~?f^ADwIBUzTOZ(Ab!t7ZP}O96ZRdFrs8vIx)@!;~?hw1KS6o|dSN^q33%7NT z`%0F8uHn_sjPgT7YH3uO%ovgQGZZg^KJ6{r8QYXYKi_Jm+xa(-`2g{3ioATb4-m|`V1$e7!gG3Fc1qJKY35qkDu6mUNr~TXk<&6jN9B`DhBu*I7*wKVy%ONQ5bnh<8HbbWoxRFslzZPi? zz-O%(`4EUKCMn1$)CVtBqu38T5j~4dk2;Hg)lR{~Pjet9uMDdUSoSJVTg01a?!|lp zuWJ#Fprb8?VD&cyd*>>%&KS{VP-Nk5gLW8Vd9BMW9F908s@V9#3HyG8Ge1><=+?>1 zeoE=Ae;|>^q+uNzuiy|GJER$2f8Zhw_Z?*eG_5r>uz$W&e%p@wMO<3IFxA3dslk5E znK0d)ckE6JHMZ_u+vC+QPl3Hfr}&;*p&x8~=5Y-LCOpK=T4{*V!JIHWYvN}Ht zv8Bn!=1gwwV~|KJGXkqiDkJ!xe}Pzj*0C*Jcif)+*nbjTPo!!@3v|RVJjqV1&7Gps z<2y}5@;z(V***e`LW;*g_#?rlSlYX2>*BrT}f0aTg_l+N#vugS7FkRw1wS))Bl&|f#S7TvkGPkWXI%`x@^cjl~b2`O6I1iFw3?-3#R z{v{0g8Nup}&%AztxxjB~Qd0|fU<3)E|DdZS^F+KBZ|(Es6j1k}et$jt8;jP#Ag)Xu zQLoZXH)%D#y91jMr|^>WD`rrD-P<*zkMDi)^~Fuq4dLh2;TV+Wuhe;Oy)fK=G!V?z zVfJ7kC{a-hGzTFm?onD9UUkGi>*BN_@J40Fihs_H(Z?u?ymPua-E^cGaZ~gNf+jTW z3-EVD7IAtIh>e}MuRZ^rt`@L^Ks{*W_`fbW6Ozz!Wd`gb9kS5c)P7Uq+!aW;Ae7lgW8FK#3a(x=)5Trd zncS*_7n!7>fjkxa{)*XsB{Av-O_aDe@|(oz;S=uH6l@sCI_x?*Y+aq4v)6luTjS9| zcmN_&W{qE@cry34>TarS-RhD0-oA_U!_}k)h|rCJIAK@a-a~fi$UvNM*57M&LcPDR z7&k#p?*IZ;IZ~FT>59mmuTaWkj@?S})0i~*3<)xAH33w}M-$6;ZJt-oKCmV8bi5msUlw z`Y}0vm|zmt0*G@Cie&*DIE4_#RB#2v0`KvBUI;`);=RIqcRm!>*`#KZ+{P@+Z50eA z5Rfw5UbBBu95Cv4+iDT-bzhFDY!P@{!4)zE@TBV44EeIJnYlhWTG#${SIj(1)e(J{ z0LLno%NKxOs9SFuVMu`hQ89Y9UUY%bGqMu>s*@z1PDOj6FKo~*W}OFn63uAtJ(F(;W|8aF zl{6LJd4+5s(1?TQja1F;w5`x$#N(O(D82tf7bZ6A(`c|ug7%o=>`D18o@#kQ ztrUcWF$|VTHg0oaV3B>s;3({-m|yqOX8nC*)9eXaU~C|cZ7!hS9F4XL|_D7*`l z+fD|8@*hV`7B(bl8-z}v2?mj@u7`bf9kkHUQ&+A;x1SSEUWr_pbt2F6Pn|%nXIv2dS0}zP(WktQhnAA|W$?cz=%V!X4(oz{|M)jOS=k!?yJzCh zaHW2JH{jn-f3{H6haZmq&x8Jm-eggWfKTpt8q!VFLzm%ibzq_pbx3A)l zJ~<^T5&AO5wfVoV{(0FU6&5i$2^Ooq^DgG!(?3+rpQrWyPg4KB^H%`<=TXu#%o|XW zHB?c8170OpW0W@vOzA6bB_s--t=nfn?0A=399Za2ncC!HK*>WhS_}TZ@LcR?p)UB- zO6>ve9?I*EaUqAWfo~0gWAhL54@Z|L{4b9WyQ{CDg|ZtN(o2Jo$9tTCoT5+3=_V)m(By|z8qO^i+(wb zaHPh!jlAAKo0oZ2);4L=mgs>@7WF_T)e=|%h)lW7`Z!!%%yZ7cq3>HYLw&Cy%<1Bt zWXQqlGMw!*#&RCwo88Zm-Qx;w{39x%7o;S}*A<;oAnY%uecPUtfE4i-)W;sn4`C+3 zG{^6IjZ%N>Z+P{S9b{69I>@M@$RVBY^_~uFmDaXEvk|GX&3FCr`(7Jye{$8_cA{pD zvcfWZX8WDO4~8W(a^uDvRi(gp{7%k-|(k-D602r)DWgf6+o>7}jj3%Ey z65tuTXl3%E<`J3}s|7*^=_Q8+BZ$&`PgknJx9y#^2JnjDLSGJHS#u>`)qpLwQ| zv1G1{WTfGJ44Ilw2Aak1yHM)RQ>%~aJEaYZvo=CD`Qy(B1k90@CV0%f_@>kN(9eoQ zt6oz7xPv{p5Ky*&-Pm9v{C)i91O%@|Iy2Pv0Ub(zc*s`oi5iIP+f8Nsf_yS;u0W?> z-9)3lIkLN@x3+eg5lsTRLC}4kpmbd#Q{s~(8-1s*TA}P@GJVGwqdz@fwkb1pq9kVv{oQ> z%!y?bY>DJ2PdndiE?czJ4Vkr>%ID@0*)FON5)Gjz%^WGj^ zAZq;7gME16tatRy<1)+GgmaYN9k2VZ-!7>@7vzgC`#ekJNL_?JK@Qwr;IdWto%)|Q zsm^}P!})a|S3r#Ut3TN09?=OdRRzgMyZP!R&8C$VjG zmop|&Rj>D3Ox~CJsCPqpkI*~n%?^letH1NMLijm?^N*&aH}V_fR*mQ7H~fpaj$0yO zzsU@J%!>pgzgL2v97lEsGGBB(gH*VON8|3`7Af)ts(H$*p8k3%vXyd@V4$c8>wlxB zKdMbGs2}c6&1lv|fcZD~ZH59VlK(MF{QDK=H4NeZQ_cSVhr%0}Pye3%rBVJoOTkEm z;;&(B7%UKxD$a8AJI^-{$VJIr+SIS}m>X3W38iU-=uvTCENQH=Oc)IfSh39!QGYA0 z-WxyWR#?NxBv<=gOSJO2v%<4FV;kMY$)04^k99p{wwvGXt_r>&I$(bjcMQw(ot|wi zlbfH-w>zV0?3Pebk1imn5gU*H1g{7l{T*!{VQUF$tFZ7{UN6tmSGqu?Xd4XHqTM(9 zZfHU4kg_gs<)f*qj4Q%{HW+0+)hRpXLE>MT#}gA9A5I=Ki;RWR5d#4{xn9i5BttlA z1m;M$l0CD_n*n>pC+MtzV#4aySbGA>DK;t(V%!fgEK9b;RzhH0AtFd4KXSi{jF^ma zL>I_OIvVf81S2prm$GP!IDsqe6Oud&JCo)ts)+piE)%g$QHti`(qc1cj3?c8!BGOr z38UtMFKj`vXLv=m9ku2Vb7`qvnqKJW2M4@e;6@vp8Bev<4mTv}zR}%M5U<{qEFiL_ z=S|U$`mBsj3MP7NF?`cjHSTwTc3@D!cS7M56va*_P`s2(+9vl+}P{9l#*n_ zy%#6+cW;g{O35Nu4qEK0k)0f)jNb=J3GKm%j0HHfhi5x?pyuel%D==EsVL^95Lr%D ziR24Rqope|jnIsYDe6pjXYfvE>SF;#$A%;gBUGBWv+f$PyToFp_8Wsm{g~25w|{%> zP%%gtKcR@&!_6LtpJ3{An+L8Xz?F1Hd`uKPTCU)tC1ANLeF41RR*n|5w_JEqslEe=FD0Wc zGK$!UGo_ZdTY1xlyhof2!g1+10Dt2J8>{3mzyae`^M2fl=3=AU$RKP6zo~-fKH}AN z=>MG+?v(Y^s;>OHB;p5E*;&Kz>|V0+EiVAbA=!DTd~E6(mhSh6rsm?QB#8=sZ~EZPJN;nszWp0add&k$?W!3KOzJZXm? zi}2Opm%9ZQTF6n&e@ypke)ACI$7*pkFTA>; z_2DcXMdAkviAisd-q?TBV)fwN>4ZwXmr zPDoFq?pVDNu+T)9F38?C2PJMF=fRMXND2&JEeYH#EtZ^i-rXI3JAGBX)(K_+@E3Kj zXOkpzHPfNLWcI1q$mGjNU=fPE3?B)a{TanC_)u=CDP*u)Gq!?6cS>h0xb*l*wI{$v4fsgl$#9OmRz4xYoFa7G+ zTU2}wm-i!iKSyNOp^`%X%|<(S;U;qob79t57ruD1`X->{V@zk}b#Q69F;C1Ue2{oA zmQ25ck|s+Wk#Gpx?pQmrx}LE^mwjL%AWXo zuwnUCtdCj`58eGHF=UOBDlY2Bc3@0oizrT>MKXF)g+ zDpujBtJGD1RmWCX#i2IU@7kY1#j!%pfM0=$rFL3Hq66dJNU6ZKtB%k5Pm*sCe`Rz0 zg2ig}EbN-3g1|xN>)Mqe5J(d`e-%1SA`2}^OhQm?F`i+R`R>Gx7|d#{1gIMUG-xot z1bYqYQmK0j70n1r8yL!A`M@B(sQTxumBGIaw{5^LsUF-U=nJbw@NU3;;KRE?s6tfu z@)&ecx~y3scrGYEx;~AurR7VYSAClqha_np&F0L!xTc@??!3QHfNE(8wm+J?D}}kF6Hb(pux`XmbBwD23FFMgddw_oOHM_th;WJq;GC`G)$xAl6^A%s*h|O%J2? z?_E6&`X*+W!G9&1A(q3;4J% zHOc*$@tE81{0p6!-|ss1;%tT8)Y@5HTCi~c_)_3BVOQXE1oZOl5vkksj9whrH+Vu> zVDz-zH!XKP>?T%@h z%O3VR4qGQ+A%OxeP|+?g`_3>_w5#z)w7YQjhn+&D1YYSz#Oc`G$4tm(vfWqCIjFb@ z^f{=cSWlhhMQq-J!q&UNr-H_%QnD$PT$vxHKfWGvhFx`S!xNz8FFUhep>Qr!8^K9g@jp6vLy9Q{#6` z-D$vSsG}^zC+4{FnfQ8gY{XMVJLW8qT=tN98EDSCSTPd_8X6?C8Z7kP=JO`H(wmX8 zTL3=Ibzaz09AjMe7=cq=cG50Gc7FsleDRT@n;NpDu2XzMNj*A_ydLG- zH8;OUs9K-hj(c*Vc~R!1%4tS`GZtoiVnXy(^(l*m;_Ulq7Y8B(txM zBa!)+qo?>g75BU{{N&yTVcrX9jQ>Js?X}%{j#@WuiSz>6wDb8@jzi4SB` zd8Y<)uF0*!ZF1bg_+y4U3P5|#>_hD(@i|lI^MiHAzNLYUR1I0aIK&Hq3G!s=tly3J3+mEQr!!HZp3bI zzP_}R#VKNZgY6oXbC$g+Is>%MoA!=(1!0%t4>Z93T9DfgEfwGYU+U=(^Yn);O34+3 zfltBbf*$eEpLp*TiWEqZPtG8HTsH7j&KHeZud3x?BKy@xDaw#(mW4c?FT=cd>!4si|AuXk?c3 zh${v52q1_M;@}X7tIs{N7L5PKn%b^lX(l%xaPa}f(vN7iFJA|$4J%lj2d}p&f(&c^ zECFMv{~~%dLObWpReI+}Y_3O-OM6W>&Q9FT3^Bo2vf_0<9iIS zLmDRBhe>?e?J6%i)*L0{Zll)4U#hc*d}x4oYabj9no~sPbVgatrO|RXYr{an>$PO& zrJ&7Hurb#ta|;d_#LP}nmU7er-4CcP%j-}u?%a%ZS9!fi|2bLshLO76L+Z16{}m~emEe2y6XsF125v2U-%I=#;?T9As? zeIx;cbm@|6> z4XT{&4o|__?DvQ#$dSI;)0T!V{|n%DO0DP5YJN&vflDo!2WFc+_tzJot6xq0(9V27 z+T~>a(jPy&rb+6&&%cwwR~&{wZ!5n0N2{Zzh-7}DKcd26={#-Q5J8Wq} zRxx3zd{-hQlx=9U*`G5E>Tb^Z+0ZLa?J=&!p*BMuxT z*#F?#QDKO)OYpU#>xEy0jpBiZs_7l$h--rPABT+{V~%=PMYzRG^V>JTGCW>4C}OAk zgV^5_$XsQEp-e_D&$O{vOk{%FZ=-~)kGYk}5~0p9 zD=wqfZUsUEjh-12?9Be%_%(cq*<+%_Q)^&99C!eR>-p_)e0D5*Vv%{%#^Q&evhvOF z-V-fl_|KkGMG2VXu3pSbg4KchmpwcRQT-VRL!p2?Tte7s$iS-)m{H$D`5^;6s=o%_ za9Lk9f%txVFI#%^9UwZUd(oRkI-6Y8vv{c9`2GCSRak%w{~EeJG-W-dD-o}CmkLXf zTOu*LL2(($zhhSHO`n$b1DM0~ii<&B*&}&t{?6VEK+~vo(=H^lzK|4zKa^Y?Ru8EP^+PV$HFwJe#BY7=l-!^&nQp}hB2EY0v zE2zke+`C`}m|gi2aHviFdt=)f*B@$*V8zKOg&?7I6~5!U?kFDIY{A^SfY_dgHs zUnB3U1Zkaj%`+k}^8XOK1Rj)0jmd-sfTC5jl^4Z<{Af7y;-B($(%DBs6tE0S)Y4_7 ztV4A&(WC$kWUjE58JgN?)R@r5PP1=+Ai|pkLz%XJ#VuGqWgkLJYz^~G@?zI{)Sb8e z?X&j{hCfZmU~a6TLo#PhSTi?ZjqP<154#C;r{~JE9YWW!Xfne`;qO6xpmi}k z%=DOMEGX>}7Pelj={qvly6t4&s|B^%)v#+WOXO}`Fw3eyW%SI2LUSxpnBWb8j_BgI zsJx?0M|bzu6S+sw@NegQOR#1AZYIg^lb?x{)?Z^pzJ@^n&0Z;9Ws{Q*!G<>K@2@JXQXiTVbU8&;gR12K$FzpdK&h0f(=?)KqqeVGLy2qE>Y`z zB49qO&rycLmWj&>06Nn%+#tJ1(-o%zLU(Op`Sn2d9WgK(lEnuOkmO)t3?J&&q(WOm z|AIAv&j@qdAjF#l*P<4Pewu%J-$mDwB7(WP2OTx3IQmlIZPJv{^egnZlB^m<2x+IB z-jNH2#ZXs;m0Q9W`;k^eiC4Uiqa!wIAELs<90@`@D_LWOcA!IBFGk z#UxcJ3+g-z4O2>1sW?7^i86kb_rEJSsQ?`7EWd##k{Z|+IF?F_v@ zToeZxqRoFZx`p#XpVan~`2pcaDX~?^2uVz62K9ym{A@1g&d* z42g0C)yr}~eF^Y>$=$5wm{8vDS;4;|Rj%871NelWQeAG0e)$197nU;y<(j|sE37He z*kh!$kFqypFU|(fX!AoQ`iV+MZX7%O%3-BNbn+#?C46Y#j=;(zdu6&v zd9kHQA_iYW7I`;;xV6KPeDu7tJcwdR-rYfDSqPDv>HM-E{eCk5{hNg6gn@SIGm*Or z!V}i#>$#V|H+XD}k`GDH(@ppPwfn!f?r}vJgp|EZSaeXd>i(atBQFeMUT=ipNIi0q zrKu;^!Zk$eRsxZjJ$xM|%@`))T;g%QL)Y^1j3Sd4Y?{AN_ct%TlbBl=Wp97D@H>54 zX}tUWu!!->IQ4U0h~X)qndGn-*XevL7uP%9VhXxPCl6%$JBZ-62|MkhK1wTYBHl>+ zp#u}Ec_m1?_k55{B!8G3Y~6RIZ9UJbJ4Bb^toZ5lLS*VS07r)oU`%%hV72%xJXMQN z0%%2SNs4&uqO45zg#)ol8o`NXaJ=j{}4)`GyK#D*5SS5NK$F|kQptPJdsjjxuT zf7-bjY7V~M*qOyd^XV5B+GKb&Xgf#iI*eEDzcDe5vE+);14sR}%w9-m8rIgG$}KR7 zea@O54^;-xSmCB|fu{!j=CPz2eNf>5gn1^_JL+_N;cS2hw+GBt7IpxcOe>9MHE4*r z+99`Gxsy7)o>ynOn`R5h^C5}3VX#BoEYa}lWklM_56D zW9GZLMsGI5FlJU~KMv}1-WbW&E^;yMfD)S7eSue4l94Bcx>|`k)!eOS-Jl){@v#h- z1F8``t;KpCZ3!cf*ZX5GCe-8g(Q0-0{@O3_F0*ixEz!Izxv{T=(^veT-?xKLKBN97 zU0NYtY`Ia75sArek4nJ!wo%a_WxgA3{>dA*gPi> zGx&e?6V1?*NA<6nLX{bEAniXp5uTg=EYL+`WGF47p-BAch8@zR5IEIfpq0MCUKHp* z1V^q7h1bb^Ux{JAg(Ibot^o*u*>{R0qqM9j=Y1R`j}B@)0x9<2oG0|hKo4-;uQj+c zjm9}!HW%F8+J%5Ku!5*?W1H(}bVJZu%a{GLWzuHIY}5RO z&WXehc=@=^@9!c^Xj@eTS)KkWHh-|4iV(i9(JGHcQMf$PV+vOqA&(7&m4o0E6D0TD zVjhvYZ#*u|+X!qk3})-P`f_R+Yp_v{dcvOyLHA(Ftfk_<(=%-0@GP}Asl&-MYw-i- z?=CLOucc;zg1Mb#2_m@26*5h^jDI@fowp&9>;fkjh0aJsl$BnE_pQU1v>GpTVIx+v z6 z(6_g032p{DO@CwwhkDpMol7G|%28L$Qu#?$na^WDYgPg4m1GQ}=oDbs*zg!`d;#3o z>a~(bjW%P(8ecxeArPt3FcX-8UGDi*ash=Sy|777e3}~XN@4UmbzS$PFrm9=sK%ePh zFt@L)v#@P;CCbJ^st*OLELHWA)Xr7|3lA=!e7nh)_aIb9wmYoX%Cl+Knj9}!b6bY?oM!bx8M$iJCz`X zySrO(cY?dSy9bBh@+y1ZcVBDgyg##1tMPNKImhgykFQ?`FP{e1Yfyqebbsr2cGKXi zwms;2CC))&&2iC{Jb77uM%A+9+alBqd8j%O6df*88vVepNhSPkKwC(_`l6-W{HzJ{ z(MeLI5MC=!6_Dmj?E=GBY}j!y;um~|Fc^7YLqt^#gS`8BS@z9tqRl!GHloy`b38X zsF7UprM*fTK2e>L_c>NYyo6>CgG#sg;R&kRI4vJFWo-HOOi6>+#h`Jzwh3m1KK)*# zs#SQ0G-{+Z=4{m-OO})#eU>}drL#$+N63<*u_M3D;bY)+NsAAa=iVfm zz*B7s#ats;u=oZ$Oez>_f<^D;X~Wk(1sedi(SAG1-OZ-C8ETcC6Q-LLrkQ~sBl#X0quIUi z+Cp`vXz&cd_IMF~;SLUMBpXT6Hs~|W7)An1Z9rdr`*4b&IxLxZz9y}Ci3-wSZ})Ku zWgBX4`d`aQWuVt+&Em;H7u_Xon!QmiM^O$_6Zo@oYT|uXjr{yKxez-3>NvG|cR^7z;;OPt_pU?`iyFe0eG;^fcEs}si z$-xR|{mx8vEL{SlHNBE=mf<3NAo}6CLcVYT)`R6r!Yg=V{%}$L)sPO>)(NmMLll)& z#fbh6p!A(n_DRr^nlG{}ll)w_aS;rQ^AwCFZT7KpJ2=dn*tYllE!@XKh+NH5uRakd@s1-^|hViU%J>E+u~ z8TBU1dQ^hROLmxdEsLjQAOBMDGdfX2O(gmwtlZGTu-nua|6K5MvCQNB*pfh@@zVJ4 zqN>ccW*8Ag?VZitk5FYQ_Q;EhMq12kUh1XLUw_}QX<~a8Kj<5V^`CE8!^Srli+@j+ zzsF9ZXC^F0Vwf=u61cF+TI6fIV0K&s8C)+tdcfro8f5`hEmAER5F<+^Awon2s@%xD zg(|NnjIqW89p_B~AqMjNU#h&xZr2a$PsS36KGKSeG_WaP*M%A^_q&BOwvfKC$ z@`l!U#i(N)U=qT>3p(L(CE&}bf@)Fuf<0HSg15!u5Bz|P<(YHE`$fQC<&`~p(k37B zr{}87;oxy+=DpvwW&5-}RzL7k&+AJNW@?uSXIssg>B9S*BDn+3U=oCIOLEnS&A94s z_4P^`lHG`!9-Jgw;jnf>fRcWqr!kXoLn}h^~{f zR)hukyNOKj8}OoPazfPE0kE?IVAdRDKaESZpp2^f^YF!jVZ-(Juqx5$qH3lKYRb?a zMJV`lOM)DdsHXGkpPlABsfw0}GA{!aT7?p&!odrXq14q#!v{(U<HJ26M)#zsU+9xll&Wy8L8Q@F&F=4BN{Q4$+?f$?SvL211lg_b#N3pi`fG||c z4w*l{(q2*PRg-mg_@T0N4IJD-gCd{U^N^j&*gh;SbFI7H zv>Zof>bJu*hJBH&Wpo+^4YP-4kB{zht!r1&ofb}p@F6d$P)aZZ%G*6F9y3e=n|syY z+CJ=xwjD2kS5W@o)+kl227D)}>JWzfPVS0nGCYbnq(3l@9}C-rqF3De0lo_%(PDTf z(59*9WGCa&_Xe#CSXLj+ zL}qQ|W|tK*(CARL+2OGLj*|r}D*@Ka2PT4%0c=a~f#PInH=ryu;}()lhSX-shb*eg``Hhf757F~`R&Mim+~JK=KOy3e^YbF)GzAg+472^3yJEm-};y2@5VD3_}u(pUvRDs4cO z8qo~~sTyi06g`xYi2=DKcIyFD!2FEhtolOvmUv4I9?oIV%{qMQEv30n9f8M-(F->U zq0#5beOL14kN)>qs|PtD(v2fo39nI9mPX;o%12`gpm>sb5pB_YG^AEoVMKygvlv&2 z3@B(s62c;D{&X^eHj+v$23Ny&rm3R&hzzbDCRR(7UI7~>5G--UMc?2utv#3q7)Z@A z2E1Ac`gKOF);H}Xze>-yXO*Mx*6t=@L|eRAgwZg0oNkpL4$a&m3jZ``Xf)OMldCXG z(pQ5CCuQtEaJqCcrc`jX!)dYLAvG;pag=yZsNK^pj!~j$;H#yT+Ycl0i996UlnSf} zGs%e&ZoznwGx_?l3;}8JtC6Rg5x&IET=av8G=%qg*&NGJDCvR5K%b8!V7UO(OnNp;S zEe`$UApd!TgO+W4U|r>9H8egPOj`T^vK-0O`g=G$gNC32eHdIsCNg`YZFU4q32ka^ zWJ>H9@q~YcPVbIsnZGV`?o}G&Z|Cte0t3HGYRqm=Gjw0C&N9Jo?~oz>BoLWiW*eht z+2J8WAkGvpIvUc$Xn(hdGkPn-Ga>W4(gxSZQQnFhT)&H;)oWg7?b2OE;VqrxDnV-dz8lc7|rn_G95yyT<8bt1Eft+T6G z!K4FL?RBSelkanG9cOIacNbt{g@eaQOZpgKM_>-IddRT38M@7BRIc*n8~2hjo++BB z!d!?@yCw+qg~krM>$l#;q&Su<^phZE?g>Pdj^)YG8Hh6fh|5$|3XT%V}zUe z4PyCPV^<5@6P2a@V!^g*nXvh_xcbRB9&y|k!vtI`Hzs0(|HV$(R*HuJ29UtRYKAjZ-Z0 z#u8w7CoyI+ogY74o+_f0xWw!CoSzE*EbQqL@oZ*p-WCw%Pt?CH($O(84v&?kNzTxp zu0YCT6j{&Z3UH1dA||==Lm0cboY!G+t&qI)NpXK~LgNbdclE*S zsK|9d7`tad9^P$nb5-u~d25CK^zp~NMaqV**Lleson8*~J5x8Yv#uFYcdyWWk%hpv z*~qdo{E>PgH@PdEkjN=;fgx6K2gzN0xlN;BDv3zS@zx?XtOmBBds zp+kfRTlzsiSs8XRL-*G)F2{TIE^z#xJa}L0qx2)U^|3A)dai!`T`vTnYwr~_f=M6a zO8SmSK;)dt_iDViL1Rs60X+n~QDr{n@>TWuj`;7XN+nlk>01SHn#kzeTa1uD`e>yIJmA67`j*){R*r3 ziDgf?+Vj+X%zf+{dWl{YT5*di5MDT^+1j&b?HSlZ?>7YobS&h*EOET#Mb*f6kb^tmLZF zt5TLzy~E{{Ks1_e^vURFIlhMEmncDTtQh~{1LGvlcj|P@^z+`YI{K8>_TjA!^0*0` zvMe%Rv~LzW8cZqpQgC?75i!(piRx^RM3c%Wn{f+{D0HOh60LQq;FFcLC@Yh>0lmOb!Iq=O+adxL)c@t0S;dr}fe-%Ig8qV})b%9Q(B93Z`! zYEtm0v?cJdp&yZTP5l>~XPCPU7l?+QGwH;wrwq^=>a#D+O8cC(WNS5jQDl21>V5DP zyAc%1-<1^eEVc#}xhIC@{P=Ii%hWRa4+rzJm_F?N48)Wj9^W z&dpa2l;qjz52J#~)Cp}#4L`ZV2yzyaZ@7g>Ze(DHm~%=pv5VrCuC}qZlS$CtJDH(O z%97%!fxm*XQw0ln;2ZrLfkGZ3q3s3h^o;f}Q@4@V>_O~PFx*PaJc7#${98~ip`Xge6UJ)1~V(5T>j0z)oKrU&rDTW#Y?$%YC|*Jb%~NqJ#P_#1Iw1s>(gZ_E0? zweIu=pj98U#x-#@1Q!*yF)gP5HmkLFhlt-6)vr^msR<0X&G+uk`h&6o+ar?P8z7<= znbIXrdt^lyXVW?C^YRZr;9+FCL7VTFQS_0!IkVgIy9TrYRF_E7ps4o(zRB%xcfNY} zDD;-R0Y$#qnsy8dU`syPUgpr?@1f=!_IuO-`<-=5wBLkYUxEMbMq^u_ChVbx>W2RT z7$RZ4K}1CSXJGHz35FM}J*|f2!yq~Z3DPP|UB;>_%BNIh|Dub|9V%1*ITaf#?Jv|6 zTH#BAtTQdZ){)~ZZhe1I1C*KRscRq243{Sb9KbuRXYP)tT>Cef^WYbhjgLMuM&E@r zw}ig2HiifhC_)>fLMbE-S62+pXPPcW+FoBaAa=F~1xAh>;F-iQ(`grc7~!9t!jR?r zqk@a63BqohgSv@A*Zd1h9N!QlxF5z;#R^QNg3}-@(!U^69$AJBwVh1u;XksrF}K;c z%XQtFkVUU`{`HCF9IEgNWWxS{AWVScvofFLmJ%pta|=dv18m}`>6ztfZe zl#oveva3vE%q6P(}uUu5}OQ;hyG1EbMB)dBxkyLO4%LVqHfRTkwU*x^s_kzBUL*% zg+7T^SG5D(SOk8OmUN04uW&~r&WH<-jnRI6>WZq&LBimB-{#kZ6B4$n(2=uRivP$0CK zm6+V9swC>3i2s4DbHSfHd|cG?nm#52oaeXAh2Cc^zFm*v0UabXHL4_kHMuV)4X~#F zgG2xPgT^x{$f&r=fF+`7vePTZpK42#fMvDQ3!2B?9c;A6oy4$}#9F^0HKP20N$TTz zTUD80($aW~tbb;dytlYQ-|ig{=-^DM#TQd@XkJI5?l^fQsiftuh?e>a3*8^^5PLR1 z`Tfm&i}_E&X#-T;tN2$$hMK7pKRLs^OKi@D{gBA!4FiOZ9J?{WmCnGG31OAhr5>}< z`mZ{<`h8n}tP{x9f6V5~Q0CmNErenXJ-BaA;Q^Wn6KSy{!(%KguBRi`|2JhfQn8ka zfCe-_OXDSVd+lp;Zb?AsM&~Psf-ZvlFgK^4N4U(`R@*tRQ_i#7>(pfFFf5I8tux7d~&^lgY?`26OV1c_F#fhdrZX{1q&m?B_~D9foYQY>g@I>eRKjd;EMC6mWNF* z`xMPjhr_+2FB3Grncog%5egGKQt{-r=)jN&(PceTO86N*K_k#mPHoEEUvimIOUMUD z`S(!jPPq0?*r_z^?+i`Z{bS2`-;{cChJ8YmLQo2cZ8J;4??bg@79GUMw)7j)NwqUe z&d^(6&J10(3t%5s+f*DV#=wBYUr)-{@XsmqUzX!rC#%Uz`&|E7A(Occ;D= zvi3c3?^;{M^OVysS@Z=NcBwydfIZfCBShzMMH8~E#OaP507y#4g#CIAvyF()tlf(4 z+{NgDd-h&o+UO%e!aiTippzAn3mLt$OSrC^PCdNB{tn676^g=R%sSj|u8LebpHj4_0S&#F*!5pPJ0On42 z+8{V$Le5JRDsVwIvAj8&)`0yN4Y5y|mcTyD&OsIZ)%-j=V+M7eSH2}+|8CK9YSX8+AgPX8>cgKJO zySo=8vn{shxp%&qN60Bvcm9f7`$bfDTeRgg?p{`T1$?$uS2m4-X#ASnkk#1wm!io48QZ_1YO!lO_>G>^YFH{4vEx|4kp%-{H9!H$f1;d)t8 zJ+$;fzA z)r8o97pC1S#<%0_@-TU6LcZAIce_;~`#Y6`H!?LRc+d3)>5V?E3NPa&xkQrW4@<8- zP3!iXb^vyx!*TL)({}~9EOp9$sX|F!3Tev*_BnSS*QrLvuYW0e`7C`kAn9ZW?USF{7-ZautRoP$ z_ZX3*NFF+p>&8#vNa4jRNlI=jF~>OxOO3~|Qss-1%Su{EQcE`EtDxXboSE>vod0v} zLNJ1>PJp*|Gc99ZZmzv`>QcjPhmA0s7QIl}6 zp-sM!Ld4I7Zo2_0js8LM3UO-*+ZclU=hUTSmo#)SvHr~G+_cm8*+uR|^N*X}i^pcJ z>!)V7YpvcF$Q`$CIwHi~6TFc|Exl&$$0B+>NTk@$cOsqN5#U83mk(#)B&bzC`0x_^ zCuupl#t=%k_UlP&Shis>?*#;Wln2t||0%plv3YQrV8)3FYS)bSzt4KU8ZH>{x=off<_dA8ig@$7hin|j}B9AYqZu(;22VVhb-je_0}gWiMI?Q~W^ zG-yo)%^5eH7a>?UnVn!$uNg^>xd#8{Bx@x$)~?>Rh($9g&eL#w5ZAMoz^$-(^eZe<;E+=?mLX?@1dA#p=} zYh{AUhB2QPi4J?LJ>r|uTs{ZtUrk-_SF=-iO@5!WP=SGugVR1#!N8KZy>L?R?D5L4 zlWSnMxS4FP_*o;1CB~uf5LgblszsfkAA<$`&i(%EE*RX`djbIYzWJ)P2#^omRz^_~OPgHNq3C|>_oj{M zOgjbXH3(S|6HQpaePDSktS&@V`{S@lF2~=0C>yp{#mWkz>Q-SMQBW1gG|=1ba@2XE zc}HW2G>m&p{hS%3Z}J{fntS>CAAquUQg)5rS_l0xi_W<1{`9h}rYdp1-QB(Z-)qVn zNtCxC&?*G`|J#cATYEGBATTQbb{+p2kpHJ1S^JU3Yz4J6!)oFWxsn*3?zL-O{+aW$}&N5l8+W?UbkZ3@au{w{+ zmS3!ilD|`bsOv!C2_tA@8L_P#qbS0J2cb0rr~~)t&v`5tBeFd&P}&rhIgYTrjVEhm zT$2sB_(4!%^@edU+2((^9r2xt70@u4K3t-V&jiv|gbU3M8|q*=^jQH&D(@3q_h=($ zCvYv1Dfj~ra%=tg1(K3==}Wkp#cLTDVtQz^JR^T}Csnowa2=oHKoaBF<8sldDK2uU zkra|$zAWD-#ci+;B(dbi9kypHv1R0KWG7vhX%K(abw;dg4vh- z`Z+@d(Zsm6ne^$4J={K)drM2Jk`#tGmfyH+s$*D}ylYSm78-1gh<&mnBagtX+yT=b zWATQUB+C(52Ph*1%O&L|HCkBUaA+vi^?6owRVJQX0sIBRp|oh-tPy=4W>9OUME9{; z6R8Ansa24qHat6J`ZFn^vX60ZSzUS;_EyWRu{}esLN)ZT%sRjMAxDRPr+dLT>Gkz6 zYl&>qrSNp=BnL|BLTKN#`SYZsogQb&^EG~Oa3EK(cve1LGB=VT1-1($sfVClc+;4| zMn}5N1unupsaCU^8WYjsqyfg{@BmBA8s0*BQUAaW_7N)qYA!n8F?VCH&rUp>5=P!O zP#hK+v(t{A)I!5xG-)XkV)vIs&h3GDvOuCipyw0fp%tbF9L?e{4? za-s$C40_bdJecywc`!?yG%hK6g*SXqdRkT)n7?YeNGGr5(0k#leTHCd;z;vgol}Xx zFqfVwUJVo8!W;4ta@i6|t!edu4DEmNU~<+cMZ%oXQ~1PoK8!zUdqhky=sN})W_8c{ z1R`dJwRiJ5Y_vo-1gT>5H(s=KcwywT?4=P0SM^xqH0XsKG$`JTp2aY&qr|%75Wj#a z7=3=&tlvd6h@Z7Wwc6Gm8rYk~wUdUj2}eYp9Y^8{@0Ze77v4TY( zDdhrhyQlgL2?JEDrPk#|20``KGzMzdEI%;S&nal&3rUhb_9c$*UFcUI=A_r$s7%1$ zycg+CFWCWoCOiJ0(I-(BFh39R5$W zNel)!DC=G+BlqhI+SV$D$G~KPXzbB!zKY)?|4ySj+90j6Lu-m(|4sUchWQFswQD3dPCqQM@EJoiY>N)X zh?{i>X*yN=m&Ok}o@kTdQH2n2R*k8%j<`p39jymn|8Hn0in^G8i|Ka20$Ku1Yx!&# z?28&5TLhDWt0RLaX1(W43M0;X zo80C5;dRKc(m{joNjIIzHkU5iZ@cwWRsXa{4Bvf^+BXa?Ce;}%P5MEpRMuDj-+hg5=u`}-RuCzd^{6F`q6T4S_jmUsT3=TT9;+vMY{_28$C z;HRn}?K>6hfpk*%YI(hq4ptTCk!|{x6F|qvP55>Q*EHc32pq}CBSON8XFdR8wt|vtMV>zu zP~|h}msd@3U4hS4I1k`nVlvInJcSdbQ}mUrAD**Fi8(`Vr^VfVQj+q*0*ELCQQ=kd zyr_#t`aQ|lLO-#=xO)#YSj-V@K8q}75$>2aDBh)4_>=4PyQ!PO-yPL`4`$8!UNI^0 zCJ{F)FF+Savul&~LMQypoA9BS<`Ld+sD_90mUj37o);`N!%$TnV_Dkn=L#NG@CmcS z*bS`;`_-Fm)_XyhQP~-HnqO-hJCDx0I}K=;KGv7b;MQX=a0G7+(dazl*I3ZLK5v=& zQjsSORx`PNuhQGhy;i<7-_(TF-UzPn$=6-cVlu~X(BG=jow>7?vD^L(MzJstGI)frpSBxiH`ROwjh;P;a9G0Y3=wZu@&YOVO#&AY$c!Zs2_ z(nO^j>C{&DwOjAgE1wncTKheI2i*cLfe|N9zh8&>C7vtYX`(j+qStt(1F+*8o-p#% z0ApC0-BSV7zq?}o!5B1OYPsRhW>8saSxHsBFktao?61TV=h$kIzA5S zNpWN``yV7`@31)#QRa65m~D<{6M7h<&XS!bItBv@<08n+I`QmdV*!OMNAZqiH-!k0p&gQ@VFSIvbF z>#f^~vO;zu3zbW4rBOeJ#h25$)iylmHvk(s!E8?x z#{D2tMRbZEK^Xn9rl%-p1K(>nE2(8{#)89Rw1$;1n5SRizzAP-8xy_MP!COqQzhh8 z!6!#hJlx>thlsP7_@W4t@f=)&@+Erkik=PVwRjRVaCr_^b6IE4!6IK|dRQh4eOC&u zB-bLTh1vQeiEQ<(j}7=@sBYU!vs0U(0|YFltU85Po;WfsAoa-jBnTF`_}iYrV>hol z7E|v*4$tA&SqA5?q_Ii58f$?_)AiJ6rcP2kLzFR&mHka_aehb<$+$|Mj~KERT~Q_O zHtRbdtS9A2FK;MASSF;@4;|h_kkEh;A~ULUQV;cEFgb9a`STl?@}MCO<0Yk`D%pO= znb$+-e9x$pzo0%^<#*hGFND>#&mWBfhj%`eF47hK@p^amO7bJKzlINlE>KeKl^yya zV=yOj%N_7b0?L@cYz>WGC*R;sFgym93c=c z)U5Es@jm+(qnbRn<)0r`bq^cnIO<8}$%G&cXUNgMmuF#FFg0R{iOhYqbQyDX`pt@byH zedEH>DU@9%lO^B)Dh|{LC>Y`aitX)>Yh?rSzU6BeN_IIv%6glt6OTx#J;FQ} zm5-rcl7sv=g$Tr0JWX#FS)Lx(e}mt6p$K;Y{aS53GUiyV+V@f=!?x2oDU5qam_~@6 z9#XfsA-gmX_l@KfaLF09$1t;vzUKUr&9JQppsL`Ig|=|GqSjm1!oo$l_@2IPcr-Ea z4VG5QegI_?Sxi!xZ~{|+BjCO87V1)j8J>{ObP>B=GPgc`Fz*F9B)PV+77LmriA&5F zcE&w64nTp~hYdAQf)Do=twEWu3L{0x#MUcKeJM98MF*~`qAgsMB`ATk=%g&UTtH03 zgMTT6lEXBM85N7olHn-h-YPe!i8KAo<=Y5;B2q|hMoE}MyFFNqyJRcIL1$KF5t`n( z{a*k$56WPW))ezzbT+JW+3c2+7I$}S^Z@$mN>=cfCc159TD03=jan`8XZ_KnYwT?G z15uPeca?Nk6+#JKBf`cn;5CEua*0kOW`spL^#@sZT#+VtV07?gnPBfF8^z(~k@0_O z6_=@UknbE?X8epdEWXr$4PO&!%d;&OMY;{nld1#fNV!QArf4mOQg9okn&?jKALV7oq6~!(GK1r$eTwWe(5Bu zXIzynoBTYSUkmENb@=>M9KX?{C+`exJnsjnfzfz6_e>GuXi#L~AIqLjltzOgI%>I; zvThId+e6^JOpae!vNAI|3!NvY=T>Q(hv?Yr6f|0#i`&#cAWV+ zMHFCk&6g}$MQ^w$O!fj;nLp$bT7MdOOC1e{*?;#I!|QDT%skb1ZA`nUr7?o7RROru zL`A;cu?tM9gh7{!wFJax-zk0h11{YGLj4vazq_l`3CL+O~AY%bm7N{*GKDUtj>*?~~ zrg<-Mf^GjSq*q~@k(};r_VjNOEe$~rV-I7!ZDaWyBYSG|9xf7K`zsbHMotiu48ikt z&6I=Fv@%qE0JGJqLFEVS0t3$>==D3rrQ0Nk6%c8lH+E(fm||$*B248;=aHB^l=*f* zGvzlzoD3{dm>7v9uv-*z==c#Aci-Y?5RO8zhw+}K5`Z_@ZV)KPj%7-{|-z56_4 zyVbM^DTIDu5=AQ8rO3Q~%|Yfl&!54O=QpHb|9}QAcleTUIm3dAtG}AE=y2g>)Qff# z!Iqg!#&y<(Z?qgAa62C99dpAzKVyUB3Q8mqQ@VKH&qy^hyqI8@5WGnwe63KkBxcVM z0+m$3w~!5!XmS}6QKUJxVQSA5vpL*31gQFO^jCd&he2eRV)<$$ZS^39>4xgD>Qs$8 z)R0C~Y?4kh4{o4qF1`i@{>M)&XkcK>8wbuw$?e$NSY2lN6rS*t579 zovK=_Zshy8nPVj^eU_2dmS;y)q^j9+Pq`A~V~WZUUb~Dx8GBq*^5k-}lu}T9Cou0J znT6_N(%pt0keF@k7$GMMqOw~O%l1}a(Zbgn%}Fn*1_7a=v(Ch&EHosf2B}ygU?rpi zG+`|wuPtUBfDQ_u`JjE%FBnN4lNtjny_Q|#@^M4@x~M}7gwAWQI13|h)NA5B5a-(B zjFC6)-R<7)4$34pb9~g?kEj*_Sd!R0cPu4Z6nd@uucyr}0W#eOtl@$Ky2SLxm&v)! zuCMW*nLngZ@|-}8ZR|~QF|U%A;1u;pQ{$KdIzgdEB@5^Dx$8v1ag65_K{(-Sz7(ly z)X#@TJ>aX+;cJ3yyY@X){A|?32f{6{Qg~F?fgfjm>z_1b3Adm1;rHe%?-RK8`(tV2 zPdEJN(4P^gf85hC@3km0pKUxaz;4sE0>bPbJg>*(b>qabm*I|U+Ggz@!66yKcL`pn zn=RinQP(2AXgV0)$;+sb7CXGV<&l8e!ZseKb5QR)#Re4*H>S}737;mkRZgMdvtL#I zhR<4aLS+N9?mNe?J``!tKUoZ(;Gto(Y5F*q``yrB>!)52R8nAoTx25MFM`@hcA)<& z{ndv)?HA3?e%IabSJ`&FF+0S2OCVTu08BKtj(M3Gde4-!@L}Z3U>dk@?OR=nalghR zA^c>T=ZS0GABMlR$)87zWJ;*$F!f)e13xNsD4wwZ_HzSw8O-dz8xizUlTZi^sm&~a z1vY3^!DRgJ{sestY!Ik}N&Qze{Yz0!L~4SvjLTGQlvh-+eCS)OV{B+ykxWo}4SenTz@3gRR`Bu$9Jk#>(l~(79I@B! z&Be9PC7AQ3W6T5-SdBSMJ4|BbpH z3~nT>XaAG1?;tRjcp}&TXBl0%eAEbX@339mX7fAaq`{d5^)Q`jl@mVebWt%b2M84| z#C(5lp`@84@sQgVVv4LtUOJl9-N!XhdS>rE*tT|5DiCq*qqo0f?7ME>V4{{tGiv1H zoN?9Ez!+oEITaFVUtL5d@TO6f6ZqKz0W(G4z;V)7>jt zLuUX%yVom$wHzWsZ53M>{NJLA?u2W^8PmF0`V4)>%KgfKvlq zSEHES7|6T^7(IAv6iP}B@vxOjOgxFY%fjL``{(Rpn1tb71apJ94lv4p-XTK6C;p_J z!TspB$rM_uZ==`u?gC}E+GElGVI=b!0sZ-dt@lCVv~oGb@0ODa}AN5A&XF` zM*0X^w0=<%di1@=hJtJat4?NxQ$q@`PE9Hi&bz3^B&-YGS{{IyS_vD%k;b;h^{?Oc ze=wK4{FcI+$=cK;UN1M)DZ3Y0<9IAm(;03#u>B01ZPp`N4004Q#mlM%!Ezs%4^XBq z7d>9@eq}$K4aX2WHVcHIbV`>;$Gj7W(9r~jm`OXMm!r0*uG0D3pdQ@~8oUyf+w-|x+G~4OrQ6UQ+ER?Bv(42^=Cs7B z7;bqoc8^4b@vW+m3Z%;MTf<*x9IU9DBxMEP3hp=#P8dhGv2Bz*0*2MfEw%1(r|~k_ z%Dz(By@b%eS~OZZVE~Dr+MvM8XJsfbm@l%zx@#&@uu4^X>9Y;u5UiRNimbLTBI|cp z+4riyDIO93F`NpW+fCu7kG(N6BLLq-9$mMa2!C&ty-0j+RCN{mUhYcg3c6gz&DLw|{L9!@8SHRB@BAstQo9G5@ zXI@*lKTTCCD_i70*VrtU3NlRw3dVG=M1G00CU5#4Y{!^yF?Z))DYwPh_f8BmPGy~2 zw`th}$}p%4*-A2du)&J0nVV8lYkC;!syfh=Il|P4no)(g1NvZKS~KOTd9zJpgvE@i zSF~qc$FppI5;-$>#iy#h)Pw{_+RzXstIkcY(k*UVMlu<@u^X>ddV5GqnbrKV9*&i> zaxWBPu3)YWdjf>y(M%)4SBCk@A9#hbEmt-sy+&w^wE$e#z_EmCkp@Yd4&K)N(*+U9 zVk%xCiF1r8GMF|l6r(83lTvKHjLK=d-8IW5)v8Wan+-@SiD@C z4mv^+*~`1+;2P?WE@KMkC{*?YZhQ9gb2K`g4FH=0^lpOgg~#wj$AhO;twGln6R2;L zHX|f`G;?wBAsA~b?>Z-h+^at;0dKJO4Q3gDf-W(;ZJZ0C*onz*$*W3@%E48YK@00p zUeZPa_gAw={ATco(*5hEJatAi-QazzY7pZe?sPnN@aLzv2^>=AmvM>{m87BY36-{D z)Ay4;Wl1L5w^p`U%9w`C>DZsPxE%t`ojKQy@qS$3CB4MKecn?EHgB>;gS0Ed3(q3% zrhomTFm+UAaInhrye2d(zoHBG{#;k@4n%GLB(rrFEi#OPuh7ARdB77~^yu4_!MY-8 z9zALuZVpTukRh7@ksAT_`wglus%QP(7Z^4ChdfNSM$$Z#2}_t zz8zg4K3IYfA0B>bMZUKS93`6??DPgahpIRdb&pR7KaGOa0?tVvC5Gb|a%M*O@hT$+ z7f^Om7sYcIxQP4@vZLC*q^BV+oSkeB3y@LaQxaEveHV|YW?;C1rY}CT5GNZIp3wna zt-@2jNwaruCtz9+Q@E`d!a{$jT*F~6!YM0aE->F5n!AYi@e}sy#aE4s)VzK+%8ag| z0c{eNtP|bk@1vN`#~i=8s;K&8HSi%!+4CRhd990rz67)?A^oqaB(f7m9GX}KO|xzr zuOn*_s}d@nc__((LX}>N&w^$myDZR~f8Zom5)+#r zuw)5+0aWn4c1MuT%iGLrgQa=Vd4}sT@AQ(EYH}8@yYu}OG%l68WJ_*jN|AZcHe>iQ z`&!j-%T8bwP()&ODC04tII}t#L1=-9+bug~Y`Hy-H4hn3*z$;DqsO{G@xvjR!PHUH z9%{Qy(vZ3CB`2+8tA~)TuVP#({uwMyq!&MB^|K$Y?om5>=fZ{zOFwj6 z{o-Y~0Vjtc<-?3gQH)3!3G%sJ(yqnX9ptvz0PvF^czt8OM>LBs+&fYEs5Z&eMW;7L zHU)|R-8~~KVGnmuf`>{&NPWM9gkj2#l=tHz#u5GGu*yB`W1P+U+Hk~6+Lvu78fyb( zIUC;H6UY^K*=}Ia*QjG0#uJH_{J!(es=Fop-Pq^pC`!$`@=0f9`SWbhGFC$xYsi_W zymVtk2(K3A8DSaS-k;By>8zml`sjdt8|K@?DO)v#gc9?+6fonQUvy1(B6@2$mE?IU zAGSx}Wdnj3qio~E+x`ZCNJMdE1!eWIyF4KCqY)&4BXl{pS`ekqe(KE;xNre zu-N_s_AHSni$&Y;N#($)vE%MM#<1NVA9zgE-QtYY7RQdG>(AMoXAA+KZF-Yc2+=Wj zB~iHzsnP_2G2l6MywLfWQ!5AcCWoh(W4B2+lMva?Tw|*|`E!Kjbw6M7Ug}ZtvW1J& zyXv-ntP^0O&bUB+(hh)Guk9a9r9e{!I#c{n0of=U|eN6U4+j(byp){JVo}SjWJ7t_8;3|YTvWXK;AoJ_I@i|XY9zwB(si)1?BXr56t%9ok_$ap4#ks_U?dR zpc}R^R|*Uw+b`BN45>y?cp~Dnj~)2+tbu-gWP< z<*5%!EXB+T1-27;ADF?~yJvS4%`WS(f&8Al4r!(6XVYZpF|&!i!4N*A zcq1uWPm4p2E(Q#I8%0JS^rc$@vn4#oz`l2LUy7ok>#Apsso>}*-xwp2O>#}&I#3nUV&M zaR6k^5Evw_(uHP-mDpNp5r;qw`jzJ{3e&15uE>sR=r0uG>X@hmcSt_T@qhUG%cwTP zZe0{El%m1i-Q5ZlEAH-I+>5&e4HS2mBE{X^U5mR@q_{hrwB74n-+sSw&Yx$DkmL^| zbKdiwmnGvu-|>VY5Ds9rp?0OCt@o&b!k-eQr+?aZ7$(z$q8h%Ah=KAAZ1a(W5>X}$ z;?I%LW+##?_Oaqq5w|~ygjOoaj186Yh2qx%RmE(T?aHBNFzv6)gO!*_=C@9;) zY2l437)D35zl9Ys(!rZRo=G)DVu*Z^8)BCMQ0Il$vpVM#k*rgraM~T*HJK)i@gaX{ ziQ*8WX0&II;9x@&=+dJjQEMy>qOInnhuw#gD@hvQq)KC$3XM^-2yp+*AuK#@n4)$I z6a&dTO)^XSnWq0}W0Xzq(d-JzT_QfQyp_H&5lP4e2fu)1eRoR-W_j|)_Y#;1)m*X+ zn}TVNBHj;n6ExY|TW%~DIeBOa3#!tcVtKDp=F!LuEaH*Zb>0s1Pnk(@RM_4+aXAG+`*Uc*G*-hgxU; znyTq^f}3^H2?tZnud943kjPS_rxb5}Tj?i_nN8C;faPHk9BL!aAYioDkAOydL#aswj^@21=W`l3r zs{{KYF9V{!KK>58U;@;Epe5R&Nn29Y^#YwtNb++CMX`)@4j#uPUNEllT>Oc{sus^b z>Sx`F2qN~X35tve#mA=kR z&8?lljUeip%IulDqh~=sinq_95@L|cm*6hl(Hm^X)Co7}=1XuT$J24QlVUdn4#&Hn z;%pK&7}{Q_4Ga#3UFqq?zPEtk@r=H<74q;8$c`7}`SJWuAM+D3YjOcR*IfNKZ4?~l zo##RKryBwqkw+ogA%N(WNtMa&elTbP1JnSilIaUlA|#j4&-lF%FOBs#?L&vx1bpu4}TofE+K$kSZd6hDl;~yC)8xih3|?oW>Ob8 z?Wr$rS8|y3@qpBIuhH&O9CbI^Z9alb`YjOJ!P`HSlJd0g-rSAg_Y1AQF3gMOyP3~YT9HB z&zo$Uu%(Wf#QnCLH*Ffa*-y;Yzp4vZPnN9lYw!vD_TPxZU+0BCzqw@aZw|WAdJ@9* z-$IYbgrO1q_o{!d{+Q$cJ*TltAkn~#W^1<@ag=ua5KUJoh~}TuSTu;VVRCt&4WRb@ z9SH0%$m>Zre|}74j0Ia?M^hB$bQTjY&mdpW7QR5dDDh`v!sp!5xjYMLpG>T#HhcXC zWjH_^z?qn9Ehwzi_Fb4a`1qcmWd>)kn1afLf|OPEtn*pxO1BrD1K7KIC%1NVY(cof zmif8#_gcj-n^fO^F?@`s9Lv6>8fp>p?CCsofQBc(p7TvyQcSRxMIhbC1|^Du zwgymx&JNb}7Jj;t?*Ta=Uf?IL4zO`1O1Gae+NgKP*3EG?9M*_&mm#-5@Pec)>+U$# zSos#%kSx8mS4+~mqpbNzSX!!nR%2^6s5{%H2WVHIuTO-qF>SGlEMJaB5g*78nl$-( zANSUAHCG74IbagAOHw4q@PTl1%%U2EYukdX0mJ-jr>QslQb6w>dsh~yLa{{Fa0bf7 zDckfJOBWoXDAA~cM-Uiiz-JTaCvbR+FLc8_{l--67)M|Ddk?o@o=AhPynN2lsa@G3 zQQf0RhfSb&A3(c(RF$zpo`@d*l+5PxY72QC{SI3kJ^J%Ev{RN0I!?SBP>>i%wqBQB z1L2KU1k%OC3fQis&CD@U|Acmm=2Y)lp3uh+dU&(D%#~5T^33eI!P~pyfYzoC!z(e7U#~OBS<9lE701{DJ?vd##A8<8xbm@G!gHk{6QQK)7w#n( zt2}CtOexr)kc)@T)#{B=k;pCun3HMDgr+g&AvNNx0hMQ#U9Z3I2lpdtF_Twee8EZ+ z%-@G<2R@|nsu~d%fC!bnWyO#*hW*b9^o1-~Wj|%Rl8df^mF#|^QqVo|_B=Rb58H8%KkoOsc4%)$8U~ive z2j4%qKg*H&3LpWsLOU^{-(h7PugLTb7M3xDp?Qts zRLZsuE_vMg%ZyG*Ej^zGw+g!dZWaG=&rO#0fFS?Z4%|v0k%5Wowr=QR7`~v{uV_hF zjeca8%gWQDEs|<|L69J_xjHpSe=JO{)*0tfGp^IGRrlb$ix8(}BCqTFCE{Nf6J}3w zryO!uq+q=9)G6C*f1MYcApIvT3_-BaA;Qoir{BjoN~eMKh{;O}uu1qKkPagsSA1dp zx#XXD3vdDQzi3UUEctj~T2p*!8D1sg8tW=ZAJNBCBcte=p`W3KyW+E&1EdHb zp8t4WTfeJ(NU#y>cj+p{Ss*1?-DwFr)ZGxcJ2?4?L2V^GC`G!h2Wov$X^(NB#W74- z`~j<*H+Rj@j%zNzk?jRUEDSzk2NXIvI^eBqIA9Tjy>s2y=|L?NM{$JV@t{ZRHG9U5 z+VT?u0p`w(ovko)eloUCUkZd{F1fzo^-13SW9*b{X=%iJ)jZilD{Nx z`6NR4sh>+5aA#7lbeLU4W3r)s@gZ!s)&F2kK%pjSfUpGOH0?D#sVI`+bUQ2Hi7bt| zwdEtJk=fuu#|-e?n^)J8jgQ-k1`Vqu1_nc7r4bYS?{~Q0rSVej@m&G%zp)xj7(qvi zu8f~rx1NZUnbH_+6cv4m65@1=EC$)#rlEkn01OZS!2)|a&YH1Z9^iyl0fFo9Efj)E zte`@$r})pNod{{8@5frRYrU8&zphTqGM^M8T10rw9f8xV*oY%}gvNK9^;+yJvi;3OM<*Zaf^)`@9FIcv=1OLFRc#M9I1Vl@%nnWiIe@%Ihs?jw}h;Pk{3 z3uEcJXdCz#OJ_rJ1;fwAmv<)gh-qzj{`@&`D_;n-w`F8wp9(g5GDBE4@_k?Eo7^>N zWQnYMZqAX!Y_r{N&USm{j@rwNrg=;UwE@;hQ2;m3E<^wwC?`{`k}a}>;E^c^?zo@g zwveV7x_m$}`eATKG30XD;y1Id-e5gYQF56rrOGIs-r?O+o2w7uBh}ZDbAnOUSLKXs zjxB_vdtFy;#4?H{8Pun`h_wN$xOQihr_xOKyQ<`GFMgVYV^m9{j<+0X_Quy3FScme zPCPm(TCgkdCc}{mZUp}Tj3T#t$Qa;}_u#)f%D?==KXXN6 z^ae!ezaZB?z=HTLSn+wLv7(COdkQb718Kb0)!&@WqP{G&S1_Rk{k0zs{ynw{y^497 zuC%5Ux74R8u!XOuE7Gr_soKd`_E#99jdYOE;fLQ-zD-hJ*Y`a(p4tSb!K;81 zSv|C%SFsr`F884qu^CTGbq{F01N9iy9Fl&Px|7H6pgv$?@{^O4)X^7PU24a9<(FHR3|Tt+7}=8Q0N!aH5%gXF2fHhuyz394?e9Uc!?#< zVPb+E5lO}7&@2b-^|aZZbYitwgAIj)^=CeJ!_J);5(9;kGs2X1rLafK=5S7>hD

9*SQmCUI4*iDhr>pPGE*TgWrbbUcrT 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 delta 73547 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�>g_e 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

iwtM-;vHrfyew%J>$X$e-CwdpiJ|Cx$4OL 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 RSLIRVQ3xxt-vP<-_y=4t, Set> { + val messages = mutableListOf() + val senderIds = hashSetOf() + SQLiteDatabase.openDatabase( + File(context.filesDir, "../databases/arroyo.db").path, + null, + 0 + ).use { + it.rawQuery( + "SELECT message_content,creation_timestamp,sender_id FROM conversation_message WHERE client_conversation_id='$conversationId' AND creation_timestamp>$after AND content_type=1 ORDER BY creation_timestamp ASC", + null + ).use { cursor -> + while (cursor.moveToNext()) { + val content = cursor.getBlob(0) + val timestamp = cursor.getLong(1) + val senderId = cursor.getString(2) + val contentString = readChatMessageContent(content) ?: continue + messages.add(ArroyoMessage(contentString, timestamp, senderId)) + senderIds.add(senderId) + } + } + } + + return messages to senderIds } fun getKeyAndIv(conversationId: String, messageId: String): Pair? { @@ -28,6 +54,10 @@ class ArroyoReader(private val context: Context) { return key to iv } + private fun readChatMessageContent(blob: ByteArray): String? { + return followProtoString(blob, 4, 4, 2, 1) + } + private fun followProtoString(data: ByteArray, vararg indices: Int): String? { val proto = followProto(data, *indices) return if (proto != null) String(proto) else null diff --git a/app/src/main/java/xyz/rodit/snapmod/features/FeatureContext.kt b/app/src/main/java/xyz/rodit/snapmod/features/FeatureContext.kt index 0574331..be4d182 100644 --- a/app/src/main/java/xyz/rodit/snapmod/features/FeatureContext.kt +++ b/app/src/main/java/xyz/rodit/snapmod/features/FeatureContext.kt @@ -2,6 +2,7 @@ package xyz.rodit.snapmod.features import android.app.Activity import android.content.Context +import xyz.rodit.snapmod.arroyo.ArroyoReader import xyz.rodit.snapmod.features.callbacks.CallbackManager import xyz.rodit.snapmod.util.ConversationManager import xyz.rodit.xposed.client.ConfigurationClient @@ -27,6 +28,7 @@ class FeatureContext( val stealth: ConversationManager = ConversationManager(appContext.filesDir, STEALTH_CONVERSATIONS_FILE) val autoSave: ConversationManager = ConversationManager(appContext.filesDir, AUTO_SAVE_CONVERSATIONS_FILE) val autoDownload: ConversationManager = ConversationManager(appContext.filesDir, AUTO_DOWNLOAD_CONVERSATIONS_FILE) + val arroyo = ArroyoReader(appContext) var activity: Activity? = null } \ No newline at end of file diff --git a/app/src/main/java/xyz/rodit/snapmod/features/chatmenu/ChatMenuModifier.kt b/app/src/main/java/xyz/rodit/snapmod/features/chatmenu/ChatMenuModifier.kt index 5053556..b984e53 100644 --- a/app/src/main/java/xyz/rodit/snapmod/features/chatmenu/ChatMenuModifier.kt +++ b/app/src/main/java/xyz/rodit/snapmod/features/chatmenu/ChatMenuModifier.kt @@ -23,6 +23,7 @@ class ChatMenuModifier(context: FeatureContext) : Feature(context) { override fun init() { registerPlugin(PreviewOption(context)) + registerPlugin(ExportOption(context)) val pinTextResource = context.appContext.resources.getIdentifier( PIN_STRING_NAME, diff --git a/app/src/main/java/xyz/rodit/snapmod/features/chatmenu/ExportOption.kt b/app/src/main/java/xyz/rodit/snapmod/features/chatmenu/ExportOption.kt new file mode 100644 index 0000000..3be9a64 --- /dev/null +++ b/app/src/main/java/xyz/rodit/snapmod/features/chatmenu/ExportOption.kt @@ -0,0 +1,57 @@ +package xyz.rodit.snapmod.features.chatmenu + +import android.content.Intent +import androidx.core.content.FileProvider +import xyz.rodit.snapmod.CustomResources.string.menu_option_export +import xyz.rodit.snapmod.features.FeatureContext +import xyz.rodit.snapmod.mappings.SelectFriendsByUserIds +import java.io.File +import java.text.SimpleDateFormat +import java.util.* + +class ExportOption(context: FeatureContext): + ButtonOption(context, "export_chat", menu_option_export) { + + override fun shouldCreate() = true + + override fun handleEvent(data: String?) { + if (data == null) return + + val (messages, senders) = context.arroyo.getAllMessages(data) + val friendData = + context.instances.friendsRepository.selectFriendsByUserIds(senders.toList()) + val senderMap = friendData.map(SelectFriendsByUserIds::wrap).associateBy { u -> u.userId } + + val dateFormat = SimpleDateFormat("dd/MM/yyyy, HH:mm:ss", Locale.getDefault()) + + val temp = File.createTempFile( + "Snapchat Export ", + ".txt", + File(context.appContext.filesDir, "file_manager/media") + ) + temp.deleteOnExit() + temp.bufferedWriter().use { + messages.forEach { m -> + val username = senderMap[m.senderId]?.displayName ?: "Unknown" + val dateTime = dateFormat.format(m.timestamp) + it.append(dateTime) + .append(" - ") + .append(username) + .append(": ") + .appendLine(m.content) + } + } + + val intent = Intent(Intent.ACTION_SEND) + .setType("text/plain") + .putExtra( + Intent.EXTRA_STREAM, + FileProvider.getUriForFile( + context.appContext, + "com.snapchat.android.media.fileprovider", + temp + ) + ) + context.activity?.startActivity(Intent.createChooser(intent, "Export Chat")) + } +} \ No newline at end of file diff --git a/app/src/main/java/xyz/rodit/snapmod/features/chatmenu/PreviewOption.kt b/app/src/main/java/xyz/rodit/snapmod/features/chatmenu/PreviewOption.kt index 8bda6cb..b758fda 100644 --- a/app/src/main/java/xyz/rodit/snapmod/features/chatmenu/PreviewOption.kt +++ b/app/src/main/java/xyz/rodit/snapmod/features/chatmenu/PreviewOption.kt @@ -2,7 +2,7 @@ package xyz.rodit.snapmod.features.chatmenu import android.app.AlertDialog import de.robv.android.xposed.XC_MethodHook -import xyz.rodit.snapmod.CustomResources +import xyz.rodit.snapmod.CustomResources.string.menu_option_preview import xyz.rodit.snapmod.createDummyProxy import xyz.rodit.snapmod.features.FeatureContext import xyz.rodit.snapmod.mappings.* @@ -11,11 +11,9 @@ import xyz.rodit.snapmod.util.toUUIDString import java.lang.Integer.min class PreviewOption(context: FeatureContext) : - ButtonOption(context, "preview", CustomResources.string.menu_option_preview) { + ButtonOption(context, "preview", menu_option_preview) { - override fun shouldCreate(): Boolean { - return true - } + override fun shouldCreate() = true override fun handleEvent(data: String?) { if (data == null) return diff --git a/app/src/main/java/xyz/rodit/snapmod/features/notifications/ShowMessageContent.kt b/app/src/main/java/xyz/rodit/snapmod/features/notifications/ShowMessageContent.kt index 187240d..332105a 100644 --- a/app/src/main/java/xyz/rodit/snapmod/features/notifications/ShowMessageContent.kt +++ b/app/src/main/java/xyz/rodit/snapmod/features/notifications/ShowMessageContent.kt @@ -17,7 +17,6 @@ import androidx.core.app.NotificationCompat import com.google.gson.Gson import com.google.gson.JsonArray import xyz.rodit.snapmod.Shared -import xyz.rodit.snapmod.arroyo.ArroyoReader import xyz.rodit.snapmod.features.Feature import xyz.rodit.snapmod.features.FeatureContext import xyz.rodit.snapmod.logging.log @@ -38,7 +37,6 @@ private val imageSig = listOf( class ShowMessageContent(context: FeatureContext) : Feature(context, 84608.toMax()) { - private val arroyoReader = ArroyoReader(context.appContext) private val gson: Gson = Gson() private val notifications @@ -78,9 +76,9 @@ class ShowMessageContent(context: FeatureContext) : Feature(context, 84608.toMax val snap = type == "snap" val (key, iv) = (if (snap) - arroyoReader.getSnapKeyAndIv(conversationId, messageId) + context.arroyo.getSnapKeyAndIv(conversationId, messageId) else - arroyoReader.getKeyAndIv(conversationId, messageId)) ?: return@before + context.arroyo.getKeyAndIv(conversationId, messageId)) ?: return@before val media = getDownloadUrls(mediaInfo) val crypt = AesCrypto(key, iv) @@ -92,10 +90,10 @@ class ShowMessageContent(context: FeatureContext) : Feature(context, 84608.toMax val group = idProvider.conversationIdentifier.group val title = (bundle.getString("ab_cnotif_body") ?: "sent Media") + - if (snap) - " (${if (isImage) "Image" else "Video"})" - else - " (Media x ${media.size})" + if (snap) + " (${if (isImage) "Image" else "Video"})" + else + " (Media x ${media.size})" val notification = NotificationCompat.Builder(context.appContext, CHANNEL_ID) .setContentTitle(bundle.getString("sender") ?: "Unknown Sender") @@ -118,7 +116,8 @@ class ShowMessageContent(context: FeatureContext) : Feature(context, 84608.toMax return@before } - val content = arroyoReader.getMessageContent(conversationId, messageId) ?: return@before + val content = + context.arroyo.getMessageContent(conversationId, messageId) ?: return@before bundle.putString("ab_cnotif_body", content) } } diff --git a/app/src/main/java/xyz/rodit/snapmod/util/PathManager.kt b/app/src/main/java/xyz/rodit/snapmod/util/PathManager.kt index fca31af..5d0b34d 100644 --- a/app/src/main/java/xyz/rodit/snapmod/util/PathManager.kt +++ b/app/src/main/java/xyz/rodit/snapmod/util/PathManager.kt @@ -15,7 +15,7 @@ object PathManager { const val DOWNLOAD_PROFILE = "profile" const val DOWNLOAD_SNAP = "snap" - private const val DEFAULT_DATE_FORMAT = "dd-MM-yyyy_HH:mm:ss" + private const val DEFAULT_DATE_FORMAT = "dd-MM-yyyy_HH-mm-ss" private val PATTERN_PUBLIC_DIR = Pattern.compile("""\$(\w+)""") private val PATTERN_PARAMETER = Pattern.compile("%([A-Za-z]+)") From 794289a77df64f8f2999c4ef6c5442a00c70c1d3 Mon Sep 17 00:00:00 2001 From: Rodi Date: Thu, 19 May 2022 16:18:32 +0100 Subject: [PATCH 5/6] Fix message content for in app notifications (maybe?) --- .../rodit/snapmod/features/notifications/ShowMessageContent.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/src/main/java/xyz/rodit/snapmod/features/notifications/ShowMessageContent.kt b/app/src/main/java/xyz/rodit/snapmod/features/notifications/ShowMessageContent.kt index 332105a..baf58c7 100644 --- a/app/src/main/java/xyz/rodit/snapmod/features/notifications/ShowMessageContent.kt +++ b/app/src/main/java/xyz/rodit/snapmod/features/notifications/ShowMessageContent.kt @@ -67,6 +67,7 @@ class ShowMessageContent(context: FeatureContext) : Feature(context, 84608.toMax val messageHandler = MessagingNotificationHandler.wrap(handler.handler) val idProvider = ConversationIdProvider.wrap(handler.conversationIdProvider) val bundle = data.bundle + log.debug("bundle=$bundle") val type = bundle.get("type") ?: "unknown" val conversationId = bundle.getString("arroyo_convo_id") val messageId = bundle.getString("arroyo_message_id") @@ -118,6 +119,7 @@ class ShowMessageContent(context: FeatureContext) : Feature(context, 84608.toMax val content = context.arroyo.getMessageContent(conversationId, messageId) ?: return@before + bundle.putString("subtitle", content) bundle.putString("ab_cnotif_body", content) } } From ea1565d3615dfc7600fde347fb511eeaaa3f0264 Mon Sep 17 00:00:00 2001 From: Rodi Date: Thu, 19 May 2022 16:18:49 +0100 Subject: [PATCH 6/6] Remove debug statement. --- .../rodit/snapmod/features/notifications/ShowMessageContent.kt | 1 - 1 file changed, 1 deletion(-) diff --git a/app/src/main/java/xyz/rodit/snapmod/features/notifications/ShowMessageContent.kt b/app/src/main/java/xyz/rodit/snapmod/features/notifications/ShowMessageContent.kt index baf58c7..8dcd54d 100644 --- a/app/src/main/java/xyz/rodit/snapmod/features/notifications/ShowMessageContent.kt +++ b/app/src/main/java/xyz/rodit/snapmod/features/notifications/ShowMessageContent.kt @@ -67,7 +67,6 @@ class ShowMessageContent(context: FeatureContext) : Feature(context, 84608.toMax val messageHandler = MessagingNotificationHandler.wrap(handler.handler) val idProvider = ConversationIdProvider.wrap(handler.conversationIdProvider) val bundle = data.bundle - log.debug("bundle=$bundle") val type = bundle.get("type") ?: "unknown" val conversationId = bundle.getString("arroyo_convo_id") val messageId = bundle.getString("arroyo_message_id")