From 930352dd42f432886897d7bf66c522a41d8a0486 Mon Sep 17 00:00:00 2001 From: Omar Rizwan Date: Sun, 7 Feb 2021 22:57:04 -0800 Subject: [PATCH] safari: works! (it lists tabs/by-title, at least) Safari keeps stealing focus bc of how I do messaging to it now, need to fix all that next --- .../UserInterfaceState.xcuserstate | Bin 58988 -> 61059 bytes .../TabFS/TabFSService/TabFSService.swift | 1 + 2 files changed, 1 insertion(+) diff --git a/extension/safari/TabFS/TabFS.xcodeproj/project.xcworkspace/xcuserdata/osnr.xcuserdatad/UserInterfaceState.xcuserstate b/extension/safari/TabFS/TabFS.xcodeproj/project.xcworkspace/xcuserdata/osnr.xcuserdatad/UserInterfaceState.xcuserstate index 3d7d9f75fc7079d29b52ed55026a23ecf87dd440..1fff19a1210ad433f797509a76e8cd5b534c4e65 100644 GIT binary patch delta 25031 zcma&O1$-1&`v#hsb9QFOH$sqvATg2p{onh$lwF!LGiToCeO^132S-7}WiTU+c>Z1bZbH3>+)o}L zkC4a76Xa>~40)csK>kHOAfJ*i$k#vtC_n=xV1Oww18smg=mOk9PtXg5fKU(yqCjsD z2l|43APEcwBR~pB1!*7)6oE2O32Hzsr~~z&0gML|z-%xF%mwqnS71K)8Y~7Yz)G-6 z4Za26f$za4uo-Lt+rduoGq?h-f@|P9xB>nIH^D7%8{7eR!98#vJOVGkKj0;J1zv;q zkbnxvKo*M71e(JR&;nXQTj&J4LpRt1dO>gK2mN6X42B^v6o$b#*dHdtVQ@H1gIO>e zj)eJ8T@0JxI5-|ofD_>)I2lfXQ{gl?3(kjM!=ufvz{6?_ffz_;)nd=LMH9~4FksNfX5LQt40%oLW2jtVP9Cq-vPH-&@3 zQQ@iZRRk%*6yb_!MVwj@ujr@fuNbIEQDiCd6~&5CiW0>bMY&?EqE4Y!G$54gu1&Sq#rHU1bHHsF+2E|6j_lkpxLyE(SBZ{MnV~XDt#}y|OzbnotE-5Z6t|)FQ zZYdrr9w{Cxo+zFwUMt=x-YPy&fZ{0=svTuXb*5}6TT1Of1yR9N2o*|&QQ=es6-h-= z(Nr8YfJ&s2sG-y_DwE2h3aKJ$G*wEeDGi0Fda8k%PR*cZQnM&6HJ|#LT1qujtEg|O z@2KyopQxSGF6w7$KXr+^OkJU_QrD>K)D7xS>LzuICTNldG^7`fU%D3^NQcs4bQB#;$I8x~7x+>k2?n)1( zr?RIqP#LL=QubD+Dbtl1%1mXJGFzFW%vI(oM=FbyW60aea%G)Tt<)&zD(5M`QqEU? ztz4j7s9dC6tX!g8u3W49Ub#uRS*<**Jfb|RJf{3jd0cry`MdI@@|5xqsGN`_%rhGTd}#k6HQF`bz%j4k8O1TejrKqiO@WI$hWh$6zriRflh-qTRF_W0d%yec3Gn<*isOK|ZGv6}bG2b(rn9a-}2*azcNRdqs(dM40D;e!u-v=VE$oVGOw7|%p2w{^NxAX60DMCSe8|>#%z1G z18c!rvo@?B>(2(Tz1ToDhz({#*ibf%jbannL^g>X&W>PH*i<%`&12Q9M$IC&o^4;d*5dx$;E9$}BNC)hvObL@Hc z0(+6Y&fZ|}vwyJ<*oW*3_8*St1Wx26PQ@8>CY&i}#JZZJ258_EsiQn?(ikSpTKxeBh5({PBJ$9=`k=f36^a0|Ib z++uDCx0GAKt>eDqzUOvuKXSit`?w3-MeY)JnY+SW<*sqpxf|S{+#T)__c!-~d(ZvL zec)+c$y@QA_|AM6zAJCd+wit(-j28Dop=x4hxg?}_)tEU@6D(2>3jyC$!GD|d=8(> z=kX)?B7O{C&DZdad=o#8pTW_>KJc{C0jfzlT4_AL0-5 zC;3zSdHyngg}=?;;qUSf_-Fh-{7XS0Py#I|1x8S_f|<}pFc;bi?S%G1N5NLG6YPa< zf}7wjcnF?C55Y(96@r9dAw=jW^cMyQi9(VvP#7d63nPRSAyr5dvV?r0SQsUg3l&18 zP$$$24Z=L(D`CFywXi@~C@c~d3rmD$!b)M4uv%Crd?$P_Y!bE!zX%7^!a?Dva7_4J zI4PVJ{t&JUH-tZho5Ee;FX4gkkML4>CA=2ii$)?Law0DZq9{tDsc0^C7HvdZ(LwAk zI*XoSkQgk6h@oPb7%oPLF=B$)M;t5;5r>My#NlF^m?a{yUThE>#U^o_I9{9}P827J zlSTCuajG~|{7RfJel0E#7mAC-W^tw1B5n{jirk|eA3U^OJE+_ahH2-4ki(_ZeG z3E{G7vsF)0F{Kk~u-886?AXC!IomlhMP-thmL54^K-TE;yo@ZD(u%z7GHu5$Q@WD* zM!G*Fq5sz?%J8q@A5ydFP?u5#e1M4On}Y340ZDYyCOP(J?rN@R{?c65lxn|q^zXca z{E_^L+)3`zT-Dsr+|=CG1e_xGl0O?s{?zvKvJmv${7zE1<(BrTr>R=sa#rqGb4OFFxt^r!`2u;7 zyhL6muaH;qd#{n#$s6RKXigLn=3&s={C5$Od&l-(2mQ|GbpGM=1+_cf^w2ZQ>(f!kkag6$C`;ep;Ih2JEc~LvQMl*U7k;{&qSE#JS;xg0ntRxGOf>gZ ztj5UngW*q#DluD|k>sm=QmE9r6bimND)q{INIptYwGAJbn3z>r7H)tTXOL|<`IvlS zwBXYX+RJO~82y9K$md#{?#{&D+Wy@={r@rA-b}vKJk1uy~xAOX-kL&PaWJkz|>?&%)e39vvka$F8Lzym?^T=Tc)#d074 z6-jCSLBuL;H|MZEpsmr~HJ}}64>|w~Uv5)lj{A`meE5n~WB7ZJ^f_*N5e z4s-?9zy{bFNx%-+gKoe9I1=+gci;?MfGcp*?r{D_{T2}ljgjURB9w@r5djcEogu#= zzr_f?Bfke8z?0lUZY3HKVWfGjGv3;hGCtsAw0Al11%AL^^G5St^Y2IF#qR;w#@=e) zX|7{K8JL$<5msDOHoCZ=AZxVVi&Vg1v%SbpI)hv*8>FEPMC+P9e6rC~6jS-XG%f>)MhmnL*R=Hm1F__Tuoeb` z_(2H+T+-7@vxee-M`smaV=T|o7$E}UH|RSY28Jgk48Zoj3=Gq*aUBBEL58-ATU)RU zWNJIPS*ZV4!`UDQG2opq@B7)T^82@ODh_KHUTnt9Z3I?T!kPyMi z8b*YuSMeC5z0IH;5&S3JR>`_SgrHN7oz8A_2)}g1tV8KK%4I3<&1SW$iU@9Wa5YYw^=7?y!0!#-pz)Ua;5$zDs9uXZ7VXr+B z{L&jNkVRaG2n$WXX|M!G56l!;3YxKsmJcq?D#*%^eH;;1i0Ft2OGMbEsB{8(TZjC7 zcT$@p4qmPAUk%pD9k>(8W%l%yTESkyU;EW>;ZeVUBZIY;1_Vh$Zi03v!JA`lTlhzLeR2qHo^T@5QIx`DsIgH|bJ zKYC1dUICtfr{EcQjtFl=^hAUYB7C*A5kq@|H{h-Q=2ndV0vuLkjD`kCLhxk+1!=7m zY2FKRkpJ?E1XW))m_oBJ8`{El`UdT;zJA(ZcWUT=!U*gLt%&)svuxzh8rmSDKO*|d z78TiQ;|Yl9_nD1DJ7`aCfesKWHVzTdn!gYcg^1qTW9}|ppflzXVl~HL9zWSA^fcIL zthUg@OWW6jGuFib*i&!Z@z}Vv`5wNe9~~M78lLE*d*UyTe%eTPm;ZH97!Dj^B#Z*i zFdW7LOza>W0TD3*5s5nS@sGp5jDav7CbY)Dp@>NOEC|8@I0(W-m;?tR0{=}$#Ndy< z3d6ClLhP)Aw7WfR0>8+}nr}XaJD9F_=^_7#cQ8kfb(oCRrAMav6V@C9)?uwyFba+} za%_Pma5OB1WpE5EhZV3ARv{t<5vhnsLqs|vG7yo8h%7{8BO<2-RvUFQvNh@k)lfq; z8ri}IMC5APY8*9f5s{CG5-bs>Y_!HDMb%+I@t94%rOreIoGueK0}*+e09}}ZTBE%y z;B2B%{vcwcrdIc*2~ZigO1A(mGBR(53lUM!3>PD!Q0v}c*B&l|D~-&T!R2rTB8m`E zybP`~+JJ~rT3?^eYNFP9_Y-|V)!NNQ_?>+JH}G3T;CNZK%xD8#rNPcNO5>W8U0je^ zI-<2m!8JxsS?+&~mpqE;-vNKb^zVebfScw|9s6~NDA%z+2N76$IRmO&Qy|<6e{Q9} z1`!pX(||1bOM>*P(De$72y z82`*Q$eTLyHTPQ8as%Rk(gOd4H{mUK8{UC;;XQaCVlPu8LW2l|hh2m4vm@T*1=u%hM+QQ?YE1^~{{QG;NM2E1S+}%Nqx>8U_MrY$6e*nK zqDbK)#{-4C91p(MRYZuG*BTC%ei;rFJrrK8_JB?KtIzB~;fL)(;jai#;Lwi?l?8}c z_|YB|PI57h``3KaM{|8hVOn01z8GpP-~VeIiWt3dEc##LxUNXhhlV9OU`Hv?k1}Ty;@FBoiF-$RBf#cswL~M|6U#0{84I3s zYX!a*5z9XZo-G5sX8&zhISI5?X45{VfNmpaHmIv^;J> z#2VRCQdE+zsOcP0S(a5)ife~f^?Xq%>T-diTCaq4Iwhp2GH^W@h5NSploS-z1_i9s zj`C0Y-(;W|4;&Q}6_ceE1*U!zBDNr6>n9zI#~|fouvt4Gpj((O84wY=0bAB*5kj$2&-k|gGQL(1cDn&= zwhk=p)#X!GP^>k8-QMaYn-n{7WKe8YY*B1gY*YN8*sj>2_)+l_BJkgxh}eaQ-H6zO zh`osT84DN5pB3 z?@7wYNTLXe)czjSQGEsxPygcxa!Q~miU!W)FQ27^%ZNCOZ9s!1tNqdhD1j1NP2dtD z{`kxUC{t_#lo{2AGDiePeI5}PKAHfj{{NK`s4jXFxcDCv_%b2rYhKEc>VYYyoT%=U zGvz|LQf`zxH|O33lVo(>BT8yrXlV> z*2jG+2J=eABI2%rS1KO!N+nQze_y zixEj^A9b_vqm~(MUq&sbRv?l@q~haD0JWN0XJo#d98XRlCu)vsPH28#POUfUMr}kS z(6mJ))aFK8_TEHo`_ElJ;JbDpJO_a9qBX9A`{(84mdOKZ>)@KDx|Dd5+Kml-54Bew z&1R;RrS&m}<2D_SPL*f3wC=GsrvKL@R#t2}JuoF;D%P)Dg_ z)Nj;r>I5P=MDmCf5Gf*3LZk|j#)vdQq-hIQ?kVatb%r`i{Xw0h&Qlk#p4*aU2>yWJ zj|d(^cm@wXMDQ_!Pqcr=KULqRp5yT&b%(l3-J|YPe^C#phtwnLG4+IcNJ9aldPlvd{-r)3vI`=Q zA#ezR69~LTkU-EJK|ciZ5Y!^L9KqEJIpp@zF7>zERMuw@sisBR%E<8>l>}UAmBO7i zQB0-HU@UD;x24Z?Vh z2O@jm-snzrXSxgBmA0mBXj|Hjwx_$%4zwffM0cm15$TP{Xhg;!KXNc4M-^TgMF_^itmL%Uas$_pdwrnOBr z8$qYj1=wQg3_6p}qO<87I+xC)N77iCJrU`HNMA(yA<`d_0f_8{$UsB}wa|rlyoN_? zbO}A0E;X{H#~?BokJsc88ySkoFhqvq+)PI3g10G+aPX$<5gB3#-gJ}p>R?MqPobx3 zKMZbXLC>P+=;AFsTaLG6B#yWAJe*0%C~ev@Q}s^<_o5flIO2Ua>p(B1*UHj2)63}P z^a^?o?h>SyIJR%bi*$0t*5!nxs{afgDdg+Ou^y5u>6CwxbrPoYt z9d43It;5aH8Jqk|od{EUw~S&BA`@Ft{34@J(}(F}df{<}fQ28pjQ)*2j>tiXO#aU( zLN`*SPZ{l9iu2UPR#<<~*JTvv==1ai`XYUazD!@CuhQ2LIRueI5jhNz*il9xG6j*T zh)hFddJBC+kD@d26Mcuii%GbT$c&FL$Sg!=%N*nwIQU1F{v{$aTcv-4rEjCP9$~6h z0wtwGpj7A(Ba|0q9Ta<(JveG5WVank~wo1%UlU`PxCyYnr z1et}225IwUX>pVq*D7tX%z~43u#=o`jEq`UTcI4Qm%d6T{Uq!V${N`rCTrE{7Q>WC zIa!vqUfG~*R5mHcDaR`(C?_f>A#y4rry+7WB4;3SCL(7cQj5shh@8`+obo?<#jSJy zqt~wtk}j1cZARq0R!LXrtX;WIxlu0}u9q-l^JQE4R%a_;|JPRXR<#1!qTDSDyj8hP z`Ga!1a)UEy_I~mHVqaF{C_*+K?+h z)9z|qn_}gzF^GIx7WoV!SG9_K&Y)bkFO_>u`KKNNE=Mth7FoHsWaX~a7G_%(+*khf zrC~f$zLI5stbC$;s(hw=uKZj1LivvpJJSY4Zbalah{PKB4w2s@auXsqBXUcN@^!1S zl{(oO0+CxkDw{M&{sWfWn=lrz;EagKZ3e*^Eiueo+XwH@VA?SjI$4fZ5Rbu-Ndbu(QV>n|`cc8nXwz}Pe07zf6YabmhN&WsD=ipZUa#4PMaxluh6H*%Mb!@{P(N*1e)~^3nK3M9kiTn} zz0vU4DXm+NUfR^zg7(CqcAxSxGtqGUOp294t5c!upUbAG5F(sTuhH{pOnek}1UZ;nGH03ddh^1gUF_12u$$2HbZ!zQ-!PoH%G{IDUSqB^H<&+} zo6IfdHgku$i^wO4e2U0th#BLiA|)9Y5W?_1FVQinGB zUm5KOM7}YgWl4;d1uT?5hd^3n2dMFN)UbNY;|=q*DWHC945|PfuYjv>#^6x?&};cC0&&_!pg@2^fJQ)x0D}OF0EYmNfY8Fa>6O6tV7=rZ%=#c88k7K32(;0~U|^1w z;6<3S;aCf71Oig47NX^}VZ!!d`^hl-B4FIi_D8@(M=U##9ju3$tb=Kad1Hslya6-q zy)qk1HjT~HBg)VrYWw*OGNh4gnG7kPEno}TBDR3L;q5$M_q$@U|!4mwB?>_i#TBm}HmAx)Kuokldu9|UZ$8OvXo zR-u*DIqWPCkO#try~%egBH&olcD{FfOjjj-(_eg*;DLk_6!0&5x{KwBH)L?S*iS0om72W zAzosy$Ph0h5YWtCMWB}+;-BnoJ)yUBga%>=iu*DIJSldt%Esam`&19{i4J1u=hrdB z;V(HthWLto&AwsZvhUdU?7!>>&Io~U1h8F2A`pc@Gy*XQ#3Ilefw&fq)T8Doj^>m` zwj4I!_*T@|;*t;;D5D;vLmkDLW7J$*1QHCWxemIx#91=CIZGUp5a^@-#;7|R@N!)_ zJk#IIStHP|nX^TpKgMfs;lOpra5zVq(E&1}oHJ$=B+88X*VtKdUYw5(FV|CtHyPvQ zoMnB0L|tIw0=Z}mm`Oy4w2(0?-rvB97p-iQY}pggGqIzuM)jgHi5GN~hY zhBw7Pd6wsRo)>tLmv|L#%$p#*9Rp|)n2i9Y3`e|q2;hh}AAzr1cr!gvzMX!Om&c)a zK`W_?K2Gw2W*yQ9z8gl$J0O5pt8@cpzB^|1|DNP+mD`i|!b;$KAh5WZ_eNj|R)U=+ z@5lGTaCm=N3%EAK6Zajk76?2h(iaST7$2#}8==Fy4C7UFkns{TbVkg_@$zVpkLMHk zK73!kAK#xJz$fxJmf$W|BCra9)d;LXpatQ5B48Z?>s$Ci2E0S{M$BWM-O!2`uVfjF zc(VbnJQ(D0y}7X!ZZU?d98UF-KX~9M&uQzv@!Y+Bnw>A_D`mJ92z=YjS0V7740ixu z%WGt~bu!%VWw<<&Nymec|BLi}t-X!sC+U?iQKy70SP4ARk-kZ&EV@tE9g2>gJ+b_8}H@FN00A+QsHT?p)M;TIT`utaa&JT9d7v?}4}kJf!a zZ{7SivJ$>UU~j7uHtDRJ-@*SRBgK9H(#+$&_vw-D<@d=Vui)__5%$<$Ws&#mMBe{j z^QMVbq(}JQ^hl5CkRJT(F&U`?f0{pw=hFEz2pn$a|3KjA7o|UcNnb*PBU-D;i#uH9 zZx}f)idfS*T``t|C)cpzvbWY?-4kS02b~n0$8|nEBOzC5&vEw1%SYL z1n%KB1pY$ck@murW;=lsB)o@7-~~Yt5x9WBMFcJ_7gU0=fF1TS0#^{Ys%@S+%vHd- zuUW7_;Mzw?1uLNoR+i97z||5)cw?E+Rls@gPXumiyHD$3DL4pn))O2BCj@X{y1h(r z7F-axgTP&F&9qQA!AtHGd*gjgz>v7U3C=Nnoy!Kh8#E#K2?1CW0@l}qW}z1X54De` zxr7O!0-lgrC4>p#LWB@0LL~&^zCB0a?^PH>ZzEeFUPxfQbVy#vnf)IG z-eAkprc7UGCJe@lU&0V!sDM-FO9Wma@LDU)aP$+>g^Vu-#X`1_D+`i?z`JGvr@?=} zphPG#Q1V_odPabWP$HDdcaKKkL$gqZppkaZ4A1UDl~64=k42Dd7HSZLUv`4@oj{PH ziq#Fil4rI}78-@AMviNQCSjZ~UYHK5mX|`Ajl%fA;_;0rU}!9 z8Ny6qmY@}83v&<@5EK!V5L6*(jGzgEc)g&F_Q1@AqOg?gyi~JJ7eR&P+LBpb9fdVQ z%a_pC3mavrHy~)L{bg3rpv}UTFK_rkz-zWEgzdr(;YZ;o1luCm9zhEPJFXCR3A=?o z!d?VBA!vu7GlD(71ijw?x}9N5fKt0i%YPb?3P%jrJLpH!QC(w-vWs0t737tceKzJ5 zP8e>p{A^MEvtG^^E?cFj;&rOMFx$fBoN!4t{qw>F;Ua>a5$u9s*X2eVge$^T?4r;b zL0j#$IfW*-$j;5eZ3JyvRdr8$Y@UtHL*c3X{3GG9@B~471iK;VAV2?H_*;J75y9@d z=ikWBzeUig_4$9bDRZrDMN*`22OO&=o;9+<~YR8My;@1U+yEw%Vg}M+_8I zxEB!<=xOLhG&9=1^y8YH*jBXoKhTJlVn@*mK`#V*BIqk`G{jr@#4gzD#I6W>Yc=!y zOhr4nYYf1rwQENV(7LziBI2o_W<1eB7&nVp8h^~4KD~%NL|;t0=p}lKJw+b`0}$+m zU?74)D?~rhUkniOkHH9rAQ*~ZoV@pPgcvEmHVVP8&-Px5v0`ta#&akz0>N-ZsPK+U z{Z7kc6Rld`)>llFHPuh-FAhL35<%Qa^l~wYh!6)M7^BHTFcxpL?5`F_$gfC2u=mFx zC8mpCI7YoEfu}CZyM~NlkXawUCOhB*?f_)L}hhTpM@kYob)u~r!NCX)K@f|OieMUo=?G>Zn28{k zF&n`g1atM=u8<2~FH1 zVxJy~V8Jr+7jYkgMF^rV99ukOaJl>xRb8cXWk#_!c2V`GDJbzb!}Y>Ve=Hh94*Ola zi0cROq1d9TdAGYUg{uONS0DZ3HxY0!uuIvBZ5r`jze%ff)fy&h~T6ask0s^ zT_V{^c1E@mjx>`EK=CRXoQB|ZoZR3H9n!&)ywV|Im!D!lD&ei~DP%@S7bsxPcoGR&RAmD(q(Lc*n)(yTAcUz#I*h0R}@D`6yS5L~-V znlE82>k-`aWk*X4=G~$#Tix@M*-I-7?d!BVR|l9#t0kOmnv z;QeR`17eCYvnu`4aIxf4O3@YC!Zwwf4PoNCs-Npmk!F}A3$((vvdf-EwcD(d9FzM4MDt_?7!l#kj@~emwg?A z+pz59a(uR{ggsBL(423z!Sm8Z?0OP*|Lx7vB?R#j#&9fWLRw+gfU?o}@QwZ~Q0wj2 zr3XglYo!~~pVCcf@Ga@KbVs@?-IMN1eB|Vj%NzbLfr58rnx%MM?K=v;L4?$*lGK%x6($gSF2U7D$oDp z8ID$YVJYxT7R1WCsB!7nIVp5ZUO}coRd{MH=>K?36|4$T;Ye~B!7B(})woy(tMqZ9 zzhCDsbghb3#o-Rz|5sQ+rAkoskqd2j9l;wKmkguMwxm&Ko#CklPMh!TZ|W zeJjIu{blWs&iUd zXLmP0FR#vh<5l-{*;iGHx8NBWYsgQWRH*RAEL~f(YAk|}47HQ0)^KMU-mE7VQ!1pZ z!}R~(XtZ}N+@%@^WAVLm+-mId-%-fLww%zsrVdcSsN)rN|Q>ZNossj^DAkAv?P_XcnqWHGbe`#M(;H^AnWI^}S)tl&teMtqj@dl3`DP2u7MU$E zYc^YMw$g01S&P{^vwdd!%?_F!Halweo7oAolV+#Q&YGPwyI^+7?26g5Hf$TKHa=|z zv?*#csZC3pAKDykbG^-zHm}>fY4grpVa}PW%-fq=np>H7Hg_<0Gxsp>VeW12V;*51 zYaVBwU_QV+$$XHxda(I0^Az(E^HOt-d6W5g^NHru%x9R-GM{a}&U}OU4)fjSd(D3_ zKWKi~{HXbF<`>OxnBO$NZGPAMvH4T;=jJcWUz)#bt88o1ww*N;VKK{Mw#By=yDW}aoVGY?an9m`#U+bd7I!S}S^TB8cxdt1QfX;# z>1i2l8EcttnPaK3oMbuMa_m0- z=^D~?WY?0eUw8dr&0Dv(wy^GK-O0L(wY9aawTE>NYj0~GYd`A%>p<&Z>kR9$)^n}b zTc5OkX=7wV*Z>>eMzE1=>}))3f^9-=!fhgLqHSVr;%o-n47C|{Hr#AoE(zc8(XDirBw(V>?*jn0J*><+=YU^j4YCGF@i|sDky|%yD{%U)~ z_O$JF+q*Lb zeP_4XZmZo7c4zJWw7Y9}-|m6kQ#B@UNr7k#=MpIY$#mGe>jBc8(n! zyE}S0_H+z)Om@t7EOab)talvmsC8WIxXy9C;|9lX9QQf?;dtBewNo3XwodJxESx$z zb#m(GG{h;xDa$FxDbFe2snBVxQRcr=}t497CWtW+V6D4>AurTr`Jwzo!)mh z>E5Y(m+scxZM%DP59%J$J*;~~_uk#hx@)@6>%PAGp6;i*-|qgzS>fE?*}}P_b0_C6 z&eqPh&MwYP&eNRNIDg}O$oZ=CT^CcAb}nHqaV~va`ne2nNp;C{$#*GqDRwDw8S7Hx zqIRiwX;iz6bNSlkTbG|)4!E3lx#)7)<*Lhdm%A?aT^_nTc6sVbxwdz8a_!+7;Tq){ z>l*Lc*L8sFK-a;p!(2zWs$Cbj?som%^|2dpliZx$T-`j}dboMJ`ML$T1-XT~4RRae zHq32=TdG^STfW<9w=%bKw@SCMZsXl1x=nVQ>bAmdm798#+ZMNNZrk1VyB%~p>~_@c zq}x@u8*aDU?zsE9hq@=b4|gwh*SJq`pY1-^eZKob_m%GJ+`o0-@BWVm>A`t)^|1E{ z^hohY_sH_d^~m=q@+k2r^QiEc;xXN0md9+5xgPU9mU*o7SmUwQW1GhgkDoktdF=Bz z=5fK}vd1-#8=ekoPj62jPk+xq&t%Um&mzwf&oa*n&#|5jp5r_xdQS12?m5$Quji8< zoqELg$mxN4OzJVU$BZ7cdMxj;p~ts9Huc!rW4o7;7vp8_)zPc7m$jFjm$R3fm#3Gv zmycJFSEN^-SA*9auf<-?UMsv-d2RCA?6t*fo7Wz%YhHJ}Y448SYDe!d??~?$?>O&1 z-u=Ckypz3$dXMl<^Un0n@z!`Zc#rd*;62%Un)gia+1~TKzxH0_z0`ZT_e$?Q-j8}3 z_w3#?s%Lu7+McU=?(KQ0=Sv?GpH4oVeY*Hq`*ip5^6~NU_X+d~@d@)8>XYr$;4{Z( zna^^c6+WwcHu-G!+2XU!XP?^VSD*bp2Yt@?ob~y`=e*AipT|B=e4hF|_cih*d`VyE zYwT;{YwFv^x2vzUuZ^#rZ>n#$?|9!yzEgdt`_A&6BssBek#8RzXZRbek1(S{4)H$@>}V*+HbAj2EQBrjKA8`KgD0; z-{3#af1>{s|LOj-{O9<8<-fuITmMb|Tl}~AZ}#^@Oa?Kz&`>n z1YQcf68JFib>O=oMUY8Q+n^3X9fP_C*#y}KIRv=|1qP)Ar3GaMQ^BUeZGzhccL=r*_6zP692^`L92p!F92eXtxPNd`aBgsZaA9z9a7l1k za7FOg;F@4{FbZBAyfgTE2newci4Q3WnGy1hI^>6tA47J9>|a8S*sb?~s=vZ$jROdKp1G8W z2^||+6RHkHp)*1kg#Hw|JM`z!eW3?J4~HHLJrQ~;^ls>1p^rkJggy)XJM?`R45P!? zFd<9|Q(K003hNSP9p)0|AJ!`@C@dr_A*^56fUu;np<%gU`C&z2qr!HF9S!>}?Dw$K zVK2g7g}n`XA8r&5!l`g3oDc63ZWC@F?hx)2?i}tN-YYyfJS;piJUTonJUM)5`0((W z@VfBH;nTurgwG0J5&m8HrtmG{+rsyS9|%7jel)^E9T5}}5)mE|6;T$kIAT@Afr!Hq z$0ANdoQgObaX#Ww#MOwuBVId9@QhNXOv%5uc+Xtu&BtW zn5ej@lqhw2RAy9mRBlv$R8dq(RB2RsRAtnhsLfI5qTWPXMTbY{MvsqP75z>0_t9IT zw?*%XJ`{a4`gruo=rhrOM4yko7=1VTujoh7Pow{i{wKyXrgMyKOt%=P7`GVD7_XR~ zF_AGbG5uo_W71->WAb7OVoG94W6EPHW5&nKjQKidQOr_x%(9quG5cc<#T<=!81p#h zSlfQAHYheOHX*ieZ2#Dl*tFP; z*sR#mv14K@Vyj}+u~TBF#mD{)sckdy+YkDv3y}$SUI3})JoO@i4xSnyoaiMX&;}YWf z#U;iKiW?j^G;Vm@$hg9|QE{bl<#Cm9bK;i8t&Uq8w;}HPxGizp;fj5`x|A?|YA zwYXbxcjE5HJ&1c7592N4yTtp(_l{4FPm9lt&xs!yUl?B=Ulm^yU#E^o@eT1);^)RU z$8V3{AAdalWc-= z=;PGKxsPif?>@eL{QCs<3GSng?K7ayus)ds9u0Up;7y`3QA#vVv`+L+^i2#%3`z`5 zj7W@5?46j9*e@|NF*`9Yu^_QHadhIC#LC3##JWUH;=IJoiF*^zC2>g|ll+q6l5&#D zlBOojNYW2T7qq!US}lFlZbPr8(JHR*;r=~mL+ zq`#6LB|RDFHZXPIR|8KDf`eQK4IZQ&bRwBZ_DW7kE=Zo5JR@0~JU4lM^1|dL$;*;g zCa+0em%K6gyX4Ku+md%AUrfG|d_DPQ@}1=S$q$pCBtK97C;4^qyW|gp$-#=j%E9d5 zwu9RbwjA7P@R`9k2HzZfXYlg$IzWa z_Y8e7^!3oUL;oE{3`-uCH7sY?$YF)UUJNIP!{PLBcKDv*$A%vtescJk5tB!JHR9_L zi$*LRac;z|5wAwP9r14pkpffb6gEXjQKgus*rhn6IHfqJxTbidc%}HH_@(qp2}&83 zQk}9SWv@ErRw|e3nwpSWm|C7%m0FWpmpVRmM(V88*{O3=ze@c&b#>~R)RxqBshd-` zrv8$8F!f04Z>gtJ&!nD9y^wk@^+D?E)HkVbQ{ShtX&uu#r&*`jr8%T^PjgN4Nb^eb zN$Z`Kkk&V?e_CSNz_h_>L(_(*rKY8)snZsx{hW3)U74YjjGh^O8Sxo?Gx}#FW(>?o&KR08A|o{;BO@!LKBGC~*Ni)vT&865zGq+~`khvrCr_5cMdomAY9?d+Tc_s6D=FQA|nGZ4_XFkm`$^u!c zEaNPbEVHaGSzWWNvuv|GvLdpgvwCMGWcABR%o>z6Bx`t9YF24hc~)iC*sPkYx-68{ zkkynmA!}0B>a6`)_p|wIx9ox0W3%UH|B$^mdtdf}>_gcnvoB_=FK1uPzMlPO_O0w^ z*)Ox-WWUcLa}+ts95$zYj$Mv@PPZJ#oSr$cIq^Ata|YxL%o&_BEGH!=Jtr%tGN(GH zHbwTAO>=wZ4$nooOLKSU9?U(G`&;gb-1E6Na&P9| z&b^y^KlefIi##%q#=pcYPslULGs|n6*FLXXo>QJrUhlkwyncC!d4uwX8M7yMc9px|}EzlB60EMy9~La|U)*r~8xj9(Ziz0MNf;K7aJ8Tij~D&v8vd#*u1!1v3;>) zanE9(V&7u_;^^X`#UqN-iZhFIiboa~7LO_}EiNyfSUjb8TJenHS;cdTzbaNQC|*>& zw0K$Z?&2$>$Wb<RQ)QeFsN4*~PcGUY4s)Q*q zFR>`GD(O;USJJJ-sl>S?pd_dyt|Y4@wx%6B|A!Xmh36{rDT7}L3PQQl0Ql=lw2O|K00u8@aVA7k)xYOZyf#Y z=uM-ymYSDZm)e$gD|ITZE1g_AwRA?Qw)A%C^U@ckuS(yR#g+{!8(cQ5ETwF1*|xI7 zWyi`+l$|O&TXw$eQrXqA8)di3UX{Hqdtdfp3^4|dp~o;|xG~}w)fne7abre}nKfqX zm`mkqqw-GWf#p%q#;F0Wi)`Ay~b zm76PfR_?DnRC%=Wc;(5;)0Jl{&sE;4yj%HK<)g}{mCvhGRUNCkR@qi{t8%V#t@5bq zQ59AdSv8<4xoT+Dh^maLtg76qkyTYy97PE?($QlG6lS9PK4a@EzUcVjKa28~S{+cb9F*yCd#RSVVT)$OY-tF5Z-tKF(S zs(Vy>SNl}^RYz6FR>xQOtsYRFR6V*{UENqczIsyi^y*pFbE@Z6uc~gT{=Ry5^}gx@ z)rYH(SD&mtQ~gKv?ds<>R1H(Z*GM%cHEn9z)mYS6)pV)pp|0s!<6Glj)2k-9Cafl+ zCaNa3Caxy0WmTs^;z zmtR*@S5jA2S5Y^%PF-84scWbkS2w?IVcp`orFF~dR@SYlTUWQC?%TTW>yFnwQk$rI zsFT%o>SgM^>TBwI>Idq_>Zj^A8la&xjE2`p8e@&ArVUr zeq?=VeNDZ(zP`SxenS1E`YHAE>lfB9sb5yVvVL{_zWU$m&(@!>zf^y{{$~B1`g`@S z>fbiN1~t`S+R(1SqQR=cy1}l&p~0!auOX^oNW<`k)P{_P?1sFCf`;OT(G6o7CNxZL znA$MCVP?bZhItM18x}MyZdlr|v*A*sQDfJ}$i{-k8I9jG{?_u1Rb%ZZc~!Z}MykZi;A%ZtC6CSKTzAX<$=wQ%=*!ri!MTCUsMN z)A*)IO;ekuH!W^j*R-o?Z_~b}15JmUjy0WVI@NTx>3q|JrpHZBo1QoQKQ-Fve+&l$ zz;T2)TS~+c6mqX>`z6^H>Pz<%Hm za0EC9Q~}k%UEm(@5O@sK0#CvE;M-t2*bVFf_6FYr2Y`dYA>dH(Bk)sjIye)Y1&`f9+v;x`)NMIt!hH&PNxaOVJhRDs&B+ zgXW^UQ6~zb5b8!fs29ai3T4m|^a}dIlj0ffS>bVcBA(Np3QwiSan*C(bI0@0^T_kW zQ|o!^d4|=;8e)yHX4qR;ORO(86wAW0vC-IgY!dbhEyLDho3X9fc5DZ>3v*&1 zMq!1Rh($34(=h`p!;WF!W2e0fysN$Iyc@lnz1zIscpctcFYA@Paqm9we(yo=8L#C% z@4e{oUiMz~{^-5uz3;8@jq*+P&GRkvE%7b)t@N$-ZT4;TZTEfW%k}N{IenVX@>S!F z@Gf{Cd=UNto{0~`N8)4fari`hGCm*w7Wd!`9>!%{#bdaMAH`4NXK)Lzz$@{q_;vg? z{)k8*S`lrD_CyMiMsy{*6ONulKVm2`oLEMDL98P-5}ODI0TU?UB?y8h{6q;+M%cs; z#7&}_xJ%q4?h`e{pTu9p8?qjmKqit+$>wA-nL%cf)5)(%AIXyvsgovILhdIIlBdXv zKOGsb(&71)9FF<2XrPqjLxF7>CyC9dICL2BLvjARgEkI1o4%I1xA%I2*76kAiOn2Ly)(KMD>HW(Ow(Ck7`6 zmj^clw>pB`gWm;ngJ2K}x`UpeH)sYg2cNU`*aS9_ZNk38wq}#qK5QmCoE^!IVaKtb zveVd^>}Tv8b{osGN7yUuZT1fP6ZZ9k@XOm;ec>ju!Rf4CE=P-CEOCKg-5~@;Wyz~ z;pW1fg}V!ZLa6Au*idXIb`(2{X<}EgyVy(YEA|%$iDSfZ;skM$I7OT$&J<^fv&DJh z0&$zjh=;}MNJ6BSBQiPiMI=9hN2rKD5{&GLsF7I2jFd!5BL^a2hzmuRK)FlC$N}@_2coJVl-=FOrwa>*S5{W_hc;UH(>vWLD;7K`xRd zxmea@L*6Tw%9eayu8=Rum*s16m3&jaE#HxUEUs6aT0E+Fg`?P2tQA)lKULmQIx3x& zG$ljnqr9&SQ8JYem5-DxWuh`wnW4;5<|zx5#mZ7;gR)7TnxO61PHAT~ zTf3lL(k^SY+6(QKR;Sn3ll2aIirz_2)id<|`anHP&(=rlWAzF8Bz>;FSYNB})bn&u z&({$h({Y{B{SKYgd3~>5svp!3>t*_J{iJ?IxAgORg?>rDssFCOiM5OMj%CMY#n!}j z#e%U&OpEP}RmJYa?#6zLy)haYO^oKo+eTZXy^&&cG180~Mveg(9wT6IM#v~ML?dbx z8~cr;#tGw;an`6XDvhhg55^6%q3IZ8E;Lt~Ip!ua*96Uc6EQK9HUlPShD^cSW6EZ! zS!NzLPnu`U3+5&Bih13vGJiCGHXoTU;`QPQ@x*x3c&m7ucyhc$JSCnH?^AxQysG?{ z@@M7G%U_niw(404R-)C$O19ctDOMLN&C0O4S>vr7i?)t$u`H|7x@lEg_pM*8XLb|2 zncc=tw%gks?H+b-yRY5f9%R37e{7GiN7|$9$@Ua`sy)Zfu{YS8?62%?_P6#9dzbCB dT{dhZcEDzB-WLA(TN*U@$5zBY{=esj{tb7$Nyh*H delta 23465 zcmbTebzD^0|35xA=gv()z#t5|yBj17KtU9c5&;PbNeP)b5+Wj?V>iYscCFpruDZH* zt=+ZOy81nL23CFV=kfdFw~w81y>aICe7&B}*Lj`Vnj6@&Q&{T=|-+E@>)7iNr^V5XQQW{cTjPM9<1 ziTPl@m>=ek^~J)mXlxiZ9816wu@P80mVu4JGO;YI5F3k?W8*M@jmK)R30MQxgiXep zu@-C=wm^<8#a3YL*cxmtwh`NeZN;`>yRhBZ5$qIp9=nA7fnCFHVYjh+*nR9V_6?Wd z2#(?yj^hMQ;!>Q#S-cCbjqBigxIS)-o8YFn8E%eS;10MW?u0wzK6nt`4-dy9@F;vJ zJ`5j@C*Ub~7M_on;N`fy0xak6*xl$1mcS@IUa&_!ayreht5cKfoX2kMI}xOZ)@=5&wjL#{VWT0w)MUMsS2K zp-=Q8j0qFMl&~aR2{*!>@E|-1FT$JfCqm>zC=o_P5z)jDB8C`B3?qgU$wV5VAOJC* zs3B^JI-;JKKr|2&iAG`)(L}ToGl^NmY+?>Emsm(FA(j)Xh}Fb;Vl%Og*hTCk_7kUx zGsIcqH{u*|gSbiDB5o6Rh=;@@;sx=Nct?CCzL64=CK-|?HAuNOX-Qg<)}#$-OWKk4 zqyyAk3#moa3aXu2Ngbh1P$#Lg)Nhphcj_W_g}O@Jq;64vQunAw z)MM(KOd>;Ms0@?gGD1emq%umz%DTw3Wj$niG9#I>%vxq63zGGf1Z`6)0YWm!kGvrk{KpvVwpT9pDAF*FojGJQ_PewrA!%9$&6nagZoHZq%-&CIXN7G^86joHrZVD>PFnIp_8<}`DWxy1az++uDs@0kzG zN9GgrnfaUf!u-R0WxlZ(OS2lRCfl9u!RoO_tTAiJ+Ol@68|%)>Jy;($hz(`K*rDt& zHkOTJ@oH@dzQVx{?0yPAG1%`r|dKKIs1Zr$-ZLW z%Gvkq2lgZTg+n=v!#Rr6=DKm+IRnm+>%$pwW}G?a$T@M&oD1i{d2>EoC>O@{OW+c@Brcgt;nKKK+!(HeE9EMe{JjP3Th8Os*ydJO5_u_l=ZoE71!F%#vyf^Q|`|^IgKi`)hzz^o5_;`LepTMW_ z>3k($#gF5wc{#7(0Y9Fv;cNK@zD3Tr@>BS!{2YERKaXF`Z{xS~JNTXaE`B$^hu_QZ z=zCQ2Zf`;Y2lpkyKqOi zuMDGoQRIfQfmWc%wM|e32ef9>w=-^R^=hfDA}Kin~DdD8;ZNio>pF-ZRk$L zErs_5bPu{$BB1+_TJ%7CzqItc;;f9U^um~ad1>im6}J`R6nA2Vj7SZMJ};RenTZ}o zk0?)C^~4sVN0rB|dfRuAe^dW+0X+emIf5ye^gd5h5tlDW#`Hu~5_^pf(CjScdL zQrFhW>xyK18+ujoNa1lo!by1eb2ret63eCNP4pIe8@;1=taze$s(7{({S&>1-bZQ` z&jB(CAcqy>l(n|~4bkW5Yl-C&^ac77eWiGzc&T``1bu__L`lVKMUnEkZBQioS+aix z`ZxLo{RjPue#0aff}x5x0Kotv07M@k766F=NE|>i72cOI0wXagMo9!rhS3;2sZwiUxEkIC!Ac}tgBDsjJL)Sy|H=r9a9ZVPf72N`j{af)) z6`yhEMQoU!Wd9OOA2YxV6@Mu{Dn9)iEBGUQ&;yG1iVw<3_6Gjy`1KUyr&uY5t0SbC zmFm*x?-A?>5oRxjNbyB+Um;1>h*Ub*cq)w@bhrzc3;bDEXumsVuT(hb>MFh}zNlh_ zd12l$5z#Q3i!m?dT8DTn01H$yj@{)!lDWwm+WqzchAI%kO3n7j`{!Qr^rNwx`&8CLxlk%>IM+KA2AeR#pthCDOLs$U4UpQ9sooWAUewZ9=5%( z3K2vlK)OH-Ke%5ZS_2SmrG}@!hDujhtr#?bbcGTc;pw6EJyes_&vu8;x+w2@4wnDd z@vSOWDxuNSu^Ctwfb5Bhw3tBht%)^7Hc2 zM~XSc)8fBw*@JP|K5Rd9%R%gr=oTBrH-I<;#8Ty#aDX`dk6-+cV#hii;{Xt=A02aA zbj%s-EcP2ftN~&R5WDY=*#ol-1aG7KWTmH8?7#j{tott6>uQJC|JNaR)DCeJ9il`M ze3ZWx=_nO8g#1U^+)?|)u_HZVPq23q%XaK3_6&QDy}({#udvtH8w{o*7l60|#0?Sxx_?bj(x&DV}DCbFqp7>6;q(QU(F z!$EC$cYyR&z8-7Z9XG&xNpu(EhB)L`FhD{Uf1{$YcukE9{B=%?4;J&zDCuxQPWY7Mk}pC%zadtkYMqeB3)7RZzjMy zQe*yq_6aKY$;^58;RLBLFD|NC`kn z0RsD^u>dItNCiM(FI3fzA5*IzKZT#h&qz#gn9Rm?sviKP9v~A$^*5;1pI@@c!p9Z~ zyDsYg20*Gi^?zH`{~i3U_yLFvhV~e!aCxSR@isfHWyQ&J(mm zAQ*yGuIgtXpA3*g|DibS#X|@ULQ~bB|67v)WEw!4RgvfZQdO zB}4=fNeluAB==H)EK~X~3Rl*+bTuVn#UGCY$S)9k2Z#hBQDV7hk-}D0MG`5*2<1MP z-XxJqjD!{bK9^pw%GXsIxJpM6=|rK#ay5}bj3P3LEFzo8Ax0CqL>`e(6cDh^Y6r+l zfUE+@YJfm8tOdwAfUF0|27qh?$R>bnUQHAc#gf%TDN#m@CCZ5kqLQd0#u3#3`4u2r z6tI)qsdNbKw#l`v6fq|z6V08r!E&3Jg7#WUOeK`WGy=MMD?qjZWII51C$uK$*AQ!eeslw|@#hP_5?g+}pe+#F zi5==IYESMa_9%OYcf%GFdzC%Io$QDM1Qh#H;vjK|I7~o^9|g!UfE)+NiKWCb;yBWi zI0+E=?{5m2)XpnGxSt+zp7=w2=K}FNagn$LkW&CT4UjVcIjg)DK7}Rj689vQZN#4d zIj0;O(MOATOgt4YK)qgQBcNV?S0-BMc@nQA+ZPkB2{=l+2$0MFj?Rd`h))vTCFlgS z0iCEgtN2ZEZVB;OVorPk$R)9w_(O?A>i0%S;(wnaNr^d00pyDK)K#T#WY;d7L?C%m z7#0z2n>M0&M5HEOyD2j=MI0?FPYg2F5L9DS+p#0_)6xqH^Rt!6;8bo{azwPJgPZGl z7gslT0PM?Rtwlt4Am?x-i~gNC5t zXbhTyrlM(R2AYXxqhrt}v<+Q?E<=~2XV7bK)cF#9gMNaeI5*4#j*@(^SZoX|_UquZ z`DAPkHeY!rx~Cjc_PQ!=q$a7A7!e&_QamDcbb4P1WC^^~MKX72M6~#~4u+6AWKWp7 zNnNrl*^TT@_8|30ebRu0iRC6hZUN*rK<)qpW>y%RdjPo)kO%G1WxdHhq!DRMnvkZX z8EGzh?;*e^YXQ6!;EMsiAK(W7ehA=)mDNLD%bm#pC^^!FbS2$LchZCOB)v#)(uedV z{YZa+JOapLfWT-!1qh7xbAY@6$V-5{0?2ECz;M4^O$L%dWM49v3?W0wFtQ)npBz9A zB*Ovn4xozwwg6zu0IZ0yO8|QcU@eII0$51kV*y^Z=|#*~R8A(4qa~K>Gz3hGOv1g$ z6nrL`ip?O?$aFG;97SeghsbO)M;tf*r7EpHsQThhszJ-&0D;%P0Tcl!>{FcpN&r*} z8zXbcJTjjwAjgn}WD!|RmXM`n89A0LCo9NGfXV=>2T*;0y4wKM7odIs^#^DqKnDSI z1V9S_DhH?npv?enQP}=aW0M_2v-irLaocqM9gdJ4)y2nT4Re@J4V6qh`@Qxc8`ZVP zXZVtrGCh9W54T#>x4x)u*$@Bm)-?64ugZPHZGU)Uw(2q}4g=zTuwa4uGMcPW*OAc~ z<*x~WKfJg^{R9qw%3B$dSoOoL73y20$_kC7AFWuUzC|e)CHWq(f0+Q|*%MsgFm znf#U9LT)9uk=p@E1C#+M3s4TAJU|72Y5-Idpjz$ZPB@@|Lke;)xsTj0F(D5Evx|I~Tm1^H2g_mX@? zz9!$0Z^?J$U*vo813(QRKMVod6QI2S+8dyK0BQtKV}P2plb_W1kX__gq*h`gg={oc z<5Nrqs5$KTAvy~+Iw>3)wMn6a%sS9XH6c13Yoood)R;O`1)#3&Qio2uxNS+6iuh;{Y2B1`_j7T zOQWPQYIBFE%=H${9i}qZNBJ^MPcBW6cGLo$2B%0z{N#LTnlw*DkS@)Tj*@0dv!vP5 z9O-CjE7KqrC;Dr!larBl?_x2miU7p+&StdICFe~`|eTsliS`)3IAq`!y|=1Uhy7fKgN z+oX%7OQcJs%K$nUpiuyg2Ivrg#sG9EK%sYH0UFmXU2dkvK<<^Umac(OSO?H}H3pSF z5&)Vgh9RjV3_C>-y8t@86U1Is82%}c$u+b(y?ac0QjO?@3Q;l?g!Hs1h?M^V!e(~9 zbzXX1wEu$icj-mxCFvj1%hD^-tI}%#O$F#kfTjU79iSNi9R<)#fMx+SyIp$Y-w^1l z`F|gvIsb`4Zin@+MeE-Hbabcne~BT`mwu6|>w4)|mBD#11QZk!hds0a^o4$iO;))&q0`KpOx$v7PGI>B9~~Azd2( zbz!HSO==fXiK3xN0G-rn=m^nJy-X@cZD_X2(80q9hKLKRE{=yZV20O(AB&T6L=oj#@NsCwvA z2w?VipQ3XCI!|Ql{0?KMiN?bB=X4r7tAnjw^r$v!soG*Vn1DHMf#}*_MAt4&QJ{i)8@{#|lmW zT?NoJtEuhO4r(X0i`q@?q4rYysQuId>L7IppipE70Qv_&p91tNz;pp-4KP0d=bEu} zfRzDkQum*Fe(JcoBV3%UF<8~X_9*QBz5AuksP8UK)`*37BYF=i%rDL#nLpY#^M~qz zx}bjQmt+lbPSaBfrzxfub^D>2%jySKBx?+U4@7qR>Fpcpn=3nR>g4{|^j-DM)yje( zAEkS-_V?bMdZ@m&R+(HJl}J6I#92Y=DfNtcPQ9RBQm?4j)Enw8K-U9w13)(dbQ3@~ z1N2vbZUN|4fNpE2I%Wl_PwF&FLDz5Zm={1{D(c9y`&2OxmWlI$G8&*eI$|yp=L2Ot zQY(G{TzML&`hwk;Ye(jh>BzcDblYUQ0Nvdt>juz0;#`2fOkdU$GDKzo=K|2Z;#>fE zUupn*bx3QG)A}+KnYoHWGBXv0_CwN>F#o``(L;P7QD!T1hj3+fGJBbW%u(hfbC$Wt zTxD(mJqS?9gTnwl0??xXJqFO@06hWFlkGAO^)!ggM-5jN0N@INdJ+_cl}QKOiz>MN zWZ@#*2!NjMggaP-8zqYtKL9-g(6j1q2v|dd>VzCGOAsLs2k5yrSt3Bsi;xG)M#$1c zL_K9AAzpx9fTECPh@$xYznPoR?rbbamZ$bZuF4OWzQ3h*L$Rz{bVG@(R8}S%D=U{( z$SP%3G8l-<0KEdxs{p+Q(CYxb0nnQOy#>(Q?J{|X8){^=V)~T9bakiG4Sxdkkve@o zRx4em6x{%m#obOf%oH=bmTZA+k%)64K<~B5pkVK-L%U42LX8uO7UFyWBPUy_irhox z^h#rW*?QR~H6%E|huPuDj}NFqyIpor#I!@UQ?^UCTee5GSGG^KUj}9U44}^e`U0RY z0s0D{uL1f7ppfD3+GU42Fdgd%?J0o%)rsljzoGro!Q{&#Cg`5`otWTM*HYOH$Yl5d z=m(L>@Cyc(>x{%b*#i+SB;ltv*+YPSR>OTNdjZkNo{3C`( z0Y(Fi0T>G~4k9+x@Y3k1F{lGKZAHUL_%<45QK5~t1(*iJZKmf)yQrc}!|AFJfN4Th z_&bPMoUbcZ80-1a{wmb8pNJaM`SHGpnhv1{LDY089Y*(~`_lvHfpj<>K}Q0tE5Nz| ztUJJZ089^H`T&E58v?9nJ3Y7qbqqa}9tKgz0jyUiY9oM|1I$81ZK*;XN~epcGXU1R z6LppM4IVt|>b@Q$S`As)IMh8Z&z!%SDf zFk`S+vQj=AZ>mq%(i7Bx>s5fQAYi&mbO>f9@}N6CnVu;EZl+u4R(c9Ol~&Tz=;`zf zWnOhR=vqliO#)~!kCX*mh@^7+!}znb%I;3k|n*B-Y(j|4PYK^ z^bUY|iuOnCq4$gS?-lL$QrUk%wBH+A_}}z{Z0&T$F2he)} z>(>c%;J-izskKVK5`n%3SpQC-??mqYh17~4fDM3J6~AB%H9O7zLVp!~@DISk+i0kw z2$fbDj3LDs^<)SYX(J(;&fx$=(_N2c1XT8d;5P-!1Y$(8n0W20^kecxT8{W?JQiElT)ybBDBu(f93yVE;Yu*43qjPh)TffnP(1VBIx^l5S%1AUsJ1{A{dg9bC9VpKiJ6{0kVi0QA2U#f^WF^(B2B8q2*GYL#0lf)!5Da;5a6<|;{qX3o(uq=RO z11tw%qXCu+u)KCAtpib}dMS~CH}X3X!71G^^->~MqK+RkR)kazu!2rVRWN@4_bOsX z{FoZ1PJ|1iTiC|b1FT35w~?8wj$e~1e#H>Y50!9tJtZ?kjTTPz!lYCBKlc;nG2$?e zna?a>7BY*NHfAxigjvcg1K3!AK?^GYT(rlk00tRV4KO*t6z$CN4z#P(WM$R?40NJ} zU4^=4z$U7|hBD$Hj@bn_*>-~63&Bd)F#E+19Pj}QjuXUhNLQj0?osBr2=^Gk>e`qS z0IOHSJ;R)XaG0}VbSJ2ydtQt#EX=KxPn%(MFEeoF1g?)VS5h;ItdqoYG3&rO0=UBgTLQ}{RvheMOO^ZA8Y<^c)%Ny; zNZ@uIm`6Io!uqoQ;&1r@?3Xqc=CTz(|5k|lx8Pb!jOw?{l|~-@*hq=xGPXZEfE~z& zvk?Gm2iQu0tpeC;fUQ}^4q^wh5o|OIv&C9~?Sa<-whv$jm9@$?Q#OH3flD)NBAdh} z0}L{4J-{|BVMnm3>_~uZ1lT5kZB`DLmSD%`h>nNK`}MoM`D`I{9$UbU0oWFRZC%V3 zv9JS!J;8S6rD@LkYy~?`e4vtr6o);-&c$ps3rP;?x?5>FJ9#?vlAR;5{DqyyPG@JZGuc_}Y=9jC*kOPj z0oYN1L0TXG1!9;dF<}?53uRE%5XlL#qdo~RSVBKi%4W>dW>>=XRdyA-nuRVo1+dcq zJEPn_!_tG@#BTm+e9LZSw~K~AVCULc2;{=gf!V7L%z353Om8jr0DDM$_#nW3Z)2fR z7nM0Povhds>?!dwwBV067XH?ipW8UEZsT&YMt@as@mXDC*^BH=iRB9R68i^xnZ3eZ zWv{W<*&6`63b1PcyACk;-!}nv3t+bac4q~9i@nX>VehhkviI2g>;r(^1=ybey9coQ z0E2&h2(ZThd!j6wHIHXsqrDa>R;kt-*>_5V*)9g`C-(Et!2e;tiAH|~*dt~BY`>ud zNB;BxC*ydy_QTN}!?7F(ux9{!0kBs9d$W`iI1Nsd(*hV&^xptS0WSLqGuKs(`8gbF z1}po|VZV=GIeqo5mz{%TIKb`QFE1nCwm{sa^TT+R>#ctBb+X1!EA~IMWvYJSZL&tV z%C(Ji^^7ez8%TW4lC$Eh0rnTb-UIBz63H6Qjq=A2txp z4HFv}!o_ey0geG22RI=%5XZ&C25=JKQrLirvTA#fxH!}W;Mz;MNn8^*nQI2P4#0H* z+?0d&78jKhxtZe6&H{M19~PClx!gST6cG&Y9suvIfNN08jRFols#zl63_5?Tje{$q zOSr|{5^gEL^#HC9aDye>FGw)A0^o*jB>D-xS4d;(nGgx0QqH zT+MCcwsSkUo!l;NH@An|%kAU#a|gJC0Ph2EBY+zN+yvmJ05=1;IlwIdZV7NJ0QUvq zHmkYA+!5|5cZ@sEo#0M#r?}JH8SX4+@*BWy0d5CyXMno^+!f$%0Cxwt2f#f64nyh< za3A%mF?Wl*trn6xB!9wHW9}YzpL@W;l{R~TI{@4f;7)MWc!<1nWW>GXUj3}Tw;Y^; z`C%fC`@q3&;(Mwu2X1OyT7o9@;jLl$z#H+# zya{j0oAKtn1#ihizxM?=3B(WNBVb*@hXZ_28y^Yq z!D3x8n2+X%!k&#E0!t+vmbxK}`C)Kx2_CKR`tRt5tn8pNpU9`EstrC_tTyl%SQYTY zM6pMUgPSBigD(&rFpAIQv-oU2hab)7@_9Uz@GyYK0z3}j@cm}xGIK^1b72jciT(F64WhnuEU+~X%g5Acmht@r_W zD)fN(1R>tk~|5h!_e#mlQIUOYoYFiS)*N*S?APtMQh7m6K*s)XSe0X*wF zd6w{NL~u*_W&AJva()Hh&adQG@v8xz4e%U*j|O-y!1DkO;T8aV48RN9`L&&s#Oh+0 z-vaQWA0~;_#V}sdv5jbxIow6mg+Cxdgjz1{gm^@(5%u`f{BLUapH;cPR5bp)XndJ6 zWsROW{|A2s8qZ$_czGLt72uUWbNH5;tQE?oYXXA!yZoO&YvBR^Sk%Hp{t>{T59N#b zC;U@@1AxO_PCxWm{3~@k)k=%CZa-+@FZE@GxB<6&r@ue)ut#p=KLLDv8~-=JYhd|k z)SLeX5egE3*DAa(ireJ{3_T&>0)fnyOypk)G9|IDXUGJFgaUXq!0RrcivZUCRyCcu>42+c7bVklYzg#gzP{%g%&0!*W7QxpJif~KHLBmy#qHb<8#u5{oO zECp*QGr8<;PU~#0N@J&4k_BU z>CAdd#8enAB*T72NDvYQD6Ay_hrP|RB|?fYLVz9bF96>M@byZ=jd@W*reymvAxp>> za)i+WB<*s5uLbx9fd2~cZU6SlLV-{$wm3#86kvC|0^sccU%5mm5lV$JfUg2LTfHp=CKLa6;e-l2yI_0S49;e@Y)Rw!%-_lgND$r_#3>AxnS_5XNHm?BIS zpo=yFd=tPoD{PJYHPniZ^6aHPj?vk`Yys{}TH^4(#Q=9O0pU^}MRSQvdfw$^MmaJ4uFc8Sd{Mz(0c9b!Sjp;GCzpn-kh~L|i9A zXsCJB5)z!FTc!91b|K$);tTiG;y(I)oR}|%r|Le!c~=ger0Yo=!&7wTv<+=XJJQbZ z+*~0%9M=pd?xw;?yBYK>dJa7g9*0{455#StH^W15+vpweVBATDWnAD4%6K@#u$}px zxx>7J=g>aFGiYC!udIYcS)3)|=`%gnfbGflh9}VAc$T$btymjY?hl8Bqu>~=nVk#I zjU8go!;@mS*}veSuutsYEG+#w1Re|{I4P|14Y^+MP?#}i3J--@a@L$JXAcjDIm2UM zg|H0V3=5(Muz)b*gW-v*G4Q-qH9TuI9-gzRhexcG{B(XMKN}vin$NH1&+sn=1|F7j zmP1VkLTQG=lTriWDXA18SIC1$p~k?YP<2AHuvAzD4?OJ`P6%g(>%vpvx$shWExZ-} z5w3cWs z(^{_8uC+>Qm)0JweOd>!4rv|HI;M3(>y*|Rt&d&wy99K}>eAF@LzmyXe9-PH*EZJn z(e~30&<@fL)(+L~r#(PBTsu;Guy(X|jCP)Ofp(#Gv39BUSnUe!D(z}*h4y&uTJ3u6 z2JLy;o3)Q=-_`y{r<;zmPP9&{PN~i$ojE#7be8J;qO(rtSDhU?2X&6<9Md_Wb3x~- z&UKxeI=6N1>b%r>r}JLtqs~7%-*gdOIi^eM%5?Q~4RkGa?Q|Vq`ySu) zBzmYGu1D$_=vnI7={e{*>ACB9>Urz=>c#72>XqnK>nZfc>(%Pj>$T`j(NpS8m+Q^c zo2|D|@0{KZy*GOA^jUpPeM^03eP8`B{b>Cp{S^IF{gL|V`lIx-^egnI>d)0*q`z2y zss1ne>-4wl@6_L?e_a2X{$2g2`tJ-_15E=9g8+jNgGhq{gA#)o21^W98>}^0Z?Mr| zv%zkIy$1UY4jLRbIBIay;Ef?;Xlm$WD0en=F?2JGGE6p1HB2)cWte4{V_0w4Vz}CH zt>OCK$9tde{dXU; z=^N8`rteKZntnF@V*1rgVuqUGW~3QqW@2V$W?^P!W@Bb&=3wSz=3?e%=3(Y#=40k> z7HHPjtlVs#*?O~`W;e~AnSC?YH1A~|WS(UX%x9V(F#p5+p7}%b$L7z>UzoqLz%4in zEemZ6U5jpV3lj@#3tJ0&3r7nN3oi>F3qOkhi%5$Ei+qc6i}4mM7BehnSn+yXtan=P zvEFBW!1|K)GwY8wn2m-_SDWrOdNu|&#x|xl<~Ei#);0k)Lu@i^@@*70<8A6}8f+%n zG}}zEnPxN7X13gBhs`CM&$g_srLC`Rf7?vkY}?VcdA0?%MYg53V{I#KTWzP>PP3h1 zJIi*C?GoFSwySN|+OD_VXuH>TzwJTW!?xFLZ`wY!eQx{G_ODd|B<=a)+)!Mb%O|_e5H^XkB-7>qCcKhsJ*?qAm?Dg$?+sobU?r`eCP z&$iFCFR-t(Z?KpKs9J3sA9CIBPJFauw;JC?gi{n!#EhlfMM5h#|RHrnjQBK)T zxlRR6MNSP)lbo8JTAijkO>>&>wA5+2(@Li`PV1a@Iqh}Y?{v`Vj?)XL*G_Mp{&Gg0 z1!pa1ZD(C)eP;`2YiC<$d*@c?`OXWS+nkp=pLTxX{Mz}g^Lyt{&hjtL-&{}^!lj3c zflDu!J}$;CrY?3at}Y%f-Y$MF0WJ|PgI%IsVqCIa%3La3s$8mFCb=}bw7N`nndP#~ zWrfR1m({MAtA?wVtF~)bS7TQTcz3>+az0>h9t0Bi>__N4Cdkk35e`k7^Hv$9RthkLez>Jmz@J^LXm<(c`nn z7mshAy*!OPO+C#$tvqc#9Xy>q-8=_+MtVkh4)Gl78S6R1Gt)E2GtYC3XOXAEv&OUD zv%zz@XS?SX&+VQ&J$HMa^}H_kyyUGxZ zmDgLZzq~$r{q6PD8}Y`yrQZ79J-z#Q8+)62n|nKWyL)?i`+5g>2YCG~d>Vb4e42fx_)PPe=`-7Bp3efGojzB6zWVm^?dzNE+w8l>_muBN z-^;$&d~f(Z@O|m~#`iDZkG_BV{^R@25AoyuH2t*wy889-)A#f63-KG^7vVS9Z>V3K z-*CS~ztMjAeq;SA{3iG{`L*~>^_wa8o9#ExZ-L($zpZ}z{0{mZ@jK>s&hMGuOTRb% zUHowm!iu>Udtlm4gu{|T@T7#=V&U`fF4fFl9N15O3V z&jj2GcpUI7;AOy@fWHF01A_yj0^aQ@NM9iApIbtprD|*po}1S(DX$56?{ARZt%8{!`l9ug4}88SE|DI_^0B_uT@ zC!{7s-Vm}VWMjzQkYgbyL(YVp3;8|dM#$}uKSS<^JPLUd@;2n3P%5-ns74Afk4cD0j@c4(Fy?T~ z(U=oMqlP9A9Wiv|(2QaF!z_kb4YL_$KkUJrPSjSku*r?c;*x1dHmY=_3@kHe~sT7 zzaxHE{FV5R!}W*z4o@B4Fnsm!lf$13e>?pB@K3}4PQVkm1R+5)p-X~JLf3>|2{s9i z2`&ll2|fw_2|)?L2}2SR6Os~A5>gZL6UHahB{U>VN@z})k}xe{X2P6=`3dV2HYNO; zur*tjB)cT0r{Oq$^3+l5Qm3O1hJDFX=(jqok)v&y(q73wd&Qa(=Qh zd3*AWSVQsPq*Q&LjWQ!-O>QgTzOQsgO3 zDU(y0Q(9Bzr>sxel(Hpdd&;hqy(tG$4yPPTIhk@Z zA4X`8a2hdeMEQvMBMy#um`bLaq{?km9a5cBT~qy1!&3XF4orVee5smD@Jrk+W?lX@@pLF%K_C#la; zU#7lJeVh6|_2WpLk1B>erW^J!qXzt2Fuf; z(^AsX(=yX?(hAaw(n{0DrcFp|Oq-duGHp%T`m{}HThg|t?MmC5b|CF=+U2xsX*bet zrQJ!pm-aC2aoW?g7iq83xpeFFLFt9*GtzgZ-%kIQVVGf-VVPl*VVB{a5s(p-5u6d4 z(Jx~_Mr=l6MoPxWjLeMejNFX;jOq-KA#cuT$!N`(nz1lrW5%x;+cI`$?8(@laVXKcBeMr*M`y=m56h0rPR&lwF3c{=uE-vjJwCfOdqVca>{;1! zvsYyA&pw!aB>Q;wsqC}a=d&+nU(UXkeKY$`_PuQRKRJ>dEQidI<*+$Ij#iFNPPZJr z9K)R6IYv45IgUBbIc_1f$#W;8!KZ*=A8aiis<$B(`^`tIm^ zqaTcZoa>$2FLyw0cz!wuXO?G~XOm~2=alD~=aDxs zFEVd%UbH+fCNDN`cwS;&a$ag)S{}$-ly@laK|Y;tpFbqOD1U1H-24UkZTU;`SLgql zzb$`9{_gy}`TO$^=Kq#|A^%eTmHg}ZH}n54pbEGGje;%(-3s&y3=4V{*cEse1Qhfw z2rU>`5LpmaFr;8)K|w)HL4Co*f~JC&f~f`53uYC}Es!rL*if*!U`xTaf*l3B3-%Qp zC^%GbwBUHbgE7Pyi!lSn``b?*sIW}(6rFJ(6Z3F z(4)}1(62DCFt{+ZFs*P*VQFD`VO1e0tSPK7Y$%*rIHz!V;p)P5g&PaE7H%)xRk)|{ zbm7&)=Y_8d-^vT$7k(=IQuwV1Eh37jBE2HRqFzOPij0fQiY$w)i)@P=ikylD73CKx zi+(M-QuM9Zs5r2AL~(X;ZgD|zVR2<~ZE<~ZLvdqqQ*m?g+~NhrZN*EAmlwAeA1S_2 ze7X2q@y+5tiyss}E`D14x%i(FvZPB%w-UV)!xEzs(-MmkxmAg0NoYxYNn%M#$;gt7 zlB|-^CHWvt)M3+>!+)i%NEvTrZWB_9+c19bMX5x~}w0 z=^v$6OK+6kDt%P?y7XP?`_fOPf0zDK`mKyD6Uwy8bjrGw^(b>I>s!{ZY+zYr*^shf zW$|SRWjSSI%f^){~Pt!vXfE)x!v&wVIbIU8r$CWF}Ys%}(8_JiJZ!F(hzN371x%@!+;qqhUC(5ss z-z~pa{<{2q`KR(P6-WhMA+3;AbgM9_aIf&H@T~}_=vxt5(Z3?RVo*hNMMgzdMNUO- zMSewLMM=fjii(PH74nLC6+0_#RU(xpl>;jCE1N6VRBoxrI?s`#o=Rimr& zs|u^isw%3+RmrQGtL9d%t=dqvxoT_Gj;h^N`>GCB9jQ8Ab-n6V)t#z8tL|4ls(M=W zyy|7uo2qx?G{@PG8#1nR+?;Xy#@(yNs{2%1RohlOR6A9BR|i*zR`;tOP%RIyj;v0o zPOeU^POr|a&aR$NJ*|3n^}OnZ)k~|FSFfyIUA?nNTEU#h-VeY5&b^`F&m zs=vv#0sL`s?uFEUj5yv$AG& z&CZ%*HP>ox*4(MNSM#vuNzL<`S2b^I-q*@%*;>9$iTsNXFyRN9Nw646as!m=9>YD4O)J?0KSvRL{UfuS( zBXuY1&eWZ&yHt0j?t0zLy61JD>%P^a^+Y{g&(&+xYt{Fzx2+GT?^_>Q-@iV*eo%dM z{m}Zj`h@!Y`oj9+`qKKb^_BJ2^@{rO^>y_V>X+8b57s}NAe&$_A$mgDgc%clov>%Z z{t1UB9GP%-!sQ9qCfuBGXTrS+4<yle$joK1pwq;iS!z_D?!8Nq&6NsY&N1U6^!f z(&b6-n$RYuiEq+q(rW72)Tha$$-K#`$)?G($-Bw7DWGX~(=SaMnl?9WZQ9YayJ=t3 z$)+<+=bC+0(R{J_Zu9--N6k;0Uo^jJVOw-s`n1@!IJUU7xVLz<__hSJ zM6?WU8PYPeC9Wl*CAnop%jlM|EzK<}TF$mSZh7DGt(9z*wX&^3t7fZytK6*BvDL5D zzcrvWsC7_lbnDR8xYmT$q}H6)+}8Zo!q(-jn_IWG?r7cJy07)X|EuBLpR1@2IF1+7 z@Q#W`2n2%!nD8pnni3(TMXK?E1XF}sAPFIYnZ$q)9s+YI4ulw#oZY*7_MCfG_MUt8 zarRMKhiF7eMfMX5av#Ay_(?Dw4j?-Vh^O?`z@R@I8d*k05yBm8NdqD)G zfK+flNC(5f2(S{=f*qh9>;k)i1QeiwICvZE1@C|+&CC z!{pI&wme>*AWxQaNUMlWLJ#tiGTwQp?n3>T-3Hx>Mb)N~)r2>K-+rGSybOdQ|O% zL*Q6A1wI0Q4s&4v{3VTB(fve$ba0}cDx4|aZ0uRCv9)>62 zN!SXn!7kVhdtk2?(eBpn)iSh9ElV4tjnjUrP17FLrfV~_e63m|+A*yg4MmetF3LkQ z(JV9%J&zWkh3G|8j#i=d=ryzjZAEqH4YUjGMgVDO5BeBgK+z6#72QCc=r+28de9Ge zAkN0)@dP{>PsKmOxi}Bc#07XZ{xvSdWq3JWfh%z}UWM1-b$BD*jH7rP-j3@q#V7H1 z@geb?_?&o2d}llvZ;Agkev8~iBBU=#Aw$T6B!gsT-lMjg?t>iDHjhrU!tJzXE6 zkJ3l$eo}AM+w?QW9Amz*+*n~$8r8-sV~w%S*l27vqK0Hd z6$2W`h#PMk2_tEkhGV$KC&uN(fW)LkQDR*JC*Dt-O?;iWl(>?(mbjU?llX!5q5u7g zpsDnJ`XJ4qnKX+&Obh68rGsZliVd4f-aPXpBONs6(6R5qgXs zr>AHeJwwk$>6i2?+D^M@H@!puO?#7(WJ z*i-CT_8eQtN?AFpU@KWAt75OP^=u>C!5Y|G3^0{xEY5W1v%Ty?_Gk7n6YK~(%FeLs ztdo7qzGGdioAt0>Gh#+l%wgsTGt+#?9BpQsh^aBxoPfw?gQ>HH^Uw2j&t+fLbuFa>o&NC+vI-k zUUqM~-EOa!?M?J1c{991Z=UzOx4>KEm3Yg%3U8%X>FHjxcgj2Gb$D038&U5c-aoxt zUYFn3AK(x6@9~HF8Gfdp<&W{l`p@~BeaHWk-|V;e$NX0R3;(Qt-oNN~_*eZKey9J9 z|9ub%`Uiu8wBWvAcrY?}D0n!?4kiavgWTZp;OSs)P!tpgF9u73(x5!32&#hGaCDd* zJ`&Cfe-+LNqfdrUhjYWCa7kDiE(jHtVvE=z>P3TiQ>X$8B&c{#>=y^bN8*q;EIt*Vi4&q#w29NA dU37>m;`)#IMI_RvPx}8b?edS}|9g1re*hK6#1;Sm diff --git a/extension/safari/TabFS/TabFSService/TabFSService.swift b/extension/safari/TabFS/TabFSService/TabFSService.swift index 798df03..eb7508f 100644 --- a/extension/safari/TabFS/TabFSService/TabFSService.swift +++ b/extension/safari/TabFS/TabFSService/TabFSService.swift @@ -38,6 +38,7 @@ class TabFSService: NSObject, TabFSServiceProtocol { while true { // read from them let length = self.fsOutput.readData(ofLength: 4).withUnsafeBytes { $0.load(as: UInt32.self) } + os_log(.default, "TabFSmsg tfs service: read %{public}d", length) let req = self.fsOutput.readData(ofLength: Int(length)) // send to other side of XPC conn app.request(req)