From e5dca6cf34b5e4907c0aa27306a0bc08d7d1b89e Mon Sep 17 00:00:00 2001 From: chatlanin Date: Wed, 10 May 2023 22:01:52 +0300 Subject: [PATCH] fix path error --- icon.png | Bin 0 -> 31002 bytes img_logo.png | Bin 0 -> 415578 bytes src/rrr/content/content.cpp | 18 +++++++------- src/rrr/content/content.hpp | 3 +-- .../layers/gui/browser/history/history.cpp | 2 +- .../gui/browser/navigation/navigation.cpp | 9 +++---- .../layers/gui/browser/preview/preview.cpp | 2 +- src/rrr/layers/gui/dialogs/dialogs.cpp | 4 ++++ src/rrr/utils/func.hpp | 22 ++++++++++++++++++ 9 files changed, 44 insertions(+), 16 deletions(-) create mode 100644 icon.png create mode 100644 img_logo.png diff --git a/icon.png b/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0e1fd605a554df71ab51f4f72f37d119043623f9 GIT binary patch literal 31002 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 J{gv~N{{y_9eXali literal 0 HcmV?d00001 diff --git a/img_logo.png b/img_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..304cd253e17d962a34682bd6d23daad507c0e98c GIT binary patch literal 415578 zcmeEPc|eSN_n*cf*#?oDsJO03B|B|n&0e-5R99TtqEOL(-7JN;WLFVFl1NEfEEQQw ziKIK|+MOk&B^V4w z=jqcX&toupv*4wPcsuyZ!>pVH_&>2t^Ry>2t~`~=V=&|x(18e(u{ahva#AV}S!4@0JKj$A-jI#_) z%gxeuWQZ|Y;%qq%-7hW=*?699yin(Nk$f9GP^OlcGov3If|}$W@r8y(*2B1j*b%@8JDJsCVH{KOCtNwA0>I#6NAttw%~xMFu;*_93!f@ z#bPog#F!WQcMy@II8J125LMg~XR#!iEZr&HMdT<>Ngc%s3kwhX`ugV7)}B-r70xRI zn6k36kMi^LEyl|9&$zipJ~BHy+hWtE9#y)hMdh?|^2Md4*FIL%BzfyAvTjC17@2L@ zpwHzviR=cHii?Y{%5>SeFnF;aJF}{4Ysl@}OUttV>L#k?@8A?19Gp{Ky)DU4PmyKq z;9yjCPjuft-O1I}bz$&)@vB38hKVQ)k6j3n(P!JH@Dn29Yx_W;8Cg3G&3z*J!Z`~w zS9BCBuc^Cuyv9sKR;_Hy)X~v#(1?22i+Q>3O+@CEzD^=~+;(l#GcvfhUZ-p-Ysg5X zb5GP4j|yMhPDHV6owo6|E8!Cz3vMe78YmJDj6B~~lDV$By03?bOgs+=ciuG%5fQF& zB7EIwySgqqB4XXa5D^A14iQn*zq%T}?nJo#&Ost^7KYOyh(CueFBMTFNG8JFY@>*K zJw(G{oEeaz%+M2+a#?4l)BBO*fjXeBSUapKFOViAF1e|KH+ z{eQd96cN%-^wJf-nwM{7Eg~>X>!84z_Apj7w7_th-BE#6`K~M@Elo*ZU;j~6Rn-{o z>Tx3C!IOVR#>B*wR#)EwLCY-*kq`^NQ&CxYGc`5UHe2?vh%%bUixRhQ-yT|1SN}dv zU%YtAt(uyeobvK=S6`(8B8s;eay(V9aoE$0rB~wM@<`EMz3kueU zgokT>P=IB4@M40UYV>ds`TST_Le+bR-#oF&VVzl->Z;JR!cP}e>aukbWz!3SqmQi+ zQQjUI*JG^ZMu#!E^~tF-rpZUf*{Fr@5>Xtj@4xY5roA)6$X2iKb19RdqVl~SJ#@v3 zW1RbToR?;!FMc(nNay3jN>NdNrG92!UYTTe}s z=QzC76BV|+IBPaK3<*9nSA1Bd>AEQ*3T$DG-#Y%lM92CoexebW45tZB&ok>6m`(9! z8y7!Ib`ens+1B{2TlzaQ>Xt2;AR-HIXI{KhcQMsvs(fUocR)`OX@}2^-}+&)gjjWG z(4Qi*aJ#niw%5!L>A82J;~i}iMG^7i`^Ilg+AYcaY_-0vh%DSm;%vJL9}7ikXU2B7 zXgv|h`}mFx-|E|AFzbC$iiC(P+*@*5=R%zvy^#`P?PT}*i75PgNi}}!pn2l)88>>0 z$il-E_DiP%)tO2%J84QUAzwKD^{*cH`Mm%w@R2m5u36?q-V>U}yuEEzE|E1Y15^OV(+zHFY zG?&P+Tue99iDS8#?%e<+SR`2LV2l|ob<$TbdtnCKjP7ZXFyxEjhG>f!EOi0lE5kPJ z&tZwU^rn9X7~OJV&D2^I+!3082;8&V_BTi#l> z%VfvbpY7DvU}w#etv&YcWZXM9S5)UA?44e`sn<(?eqbkqdwGiBGU(U$Nx^#}b-lLS zjBp?G%vyZdQt5NwSWB>;Z~fP1N}2X8+>kT7?^f~RI0F`4U-L~=z-6Ub*Wj|!j2}cR z-NgzF!jx0Y*B8Vfj6s+(3m{s*23PBq8A>Kp!gSSU5Uq$-sw{v?7?m((7Qnpqe=u+L zEKNGZ?**XDlTbdPd_wuuY71aM{vQm;7=&AG0aV4UHeoXf3g)oQ7^t;@3+uy_RYwIc z1#+ukyL=@b*F^gcmgGyMiU4#Ih{F^ZdV-Tjy0*F@f02IP3f-6yoR?2+Ukr8}*W7Av!frn90 zK9O=x@^41@gz||p3m{s_15hx_2)PcTl`>xyEE7;Z3API+J1wvPq7~6fnFWwrg>WJ% z0{y|85v`Q@s$dR5ZWU~o7BGuoH^$Ngg{28BN8qTCR`=8Y2-=8NL@Q+$KyF2DrOX2V z1xh$Fz$#`mBT}wYWIgwI$NuM6lp3~uGrWyJ(k5>g2+cQOIM)eN8CLHud*{)ti}@r` z+%d3MMX<$u?Jmq(hXRrPes@~~*P10EyQ3#KzKK_u!oL~HB9q_?MsU`eJ1CCX@>VXA z`_fRboTWV9!)2va(7<}(vQqA}UtbVHGoqEwaDhRXJY9b6qRp(1&>;LE)bB6;TmV|{ z0hgFo^Ku-8E-|g&i_1!@d2v~3HZRI2y45L59OV;*)9(clJqBT#qXcp*-BAK_SWIGEs2W&uPiqLnfWAh#m7Qf2{E!l;C)vH(gZ$^?Uuq9vl0Dqj_H z9pqNZm<97zM5_>#3C_65zxh8Lt(wE9Kj-%XQ1!^fb&zL~XDPD)mL@1m%mrgy6lmS} zF-^4#gTZPO$>pYWl%B7arhH#@(su)_V6D4U1ec!Qr_QQerSvEHfGhY3o4L*orr*6f zzuUW`Cpo@J5aFDz{EZHZ8$LXk=(rH~HOhs@ItrU%bPH?s$U|*(XSVrWM@Y{cS=1;Ex@@&gI^QS+Bs+clOC^*<)5Eg8g zpAG@deH?=@24Tu9fM{(FZa>W|g83fNN|~<;iJ&N%TIr(AeHgrOa0aO9PZlg6$%Np2@!%B@;>}$}E6rB@e)#<{E;k5UrH?s*nhZl8KZ#k;-U(@Mc6SqLnfWAX*WvR9OHM z96|CvGda|x55t(<&Y0`)r0v}E!?tQ)9Cpe{@L-uAgni-vw9NR%O$YZA<1N@;aRzN^ z9enfUCe$S^_p0!>=&^S@!_6~#{?8}_3f>dnR?oFYKjh+o_F~nS7q)1C+LuT8*^fth zN3JpF4jJ=otax$dYV|2p;iZ}D;IjVg0<{cFxU6)C3PfwmJoBeNg+W*l<2DmlNzo7n zVGP1lSpd<j4B#Jv{L4)LO35K6IH${_&O+=P%=?x0Ys}{lu<=Ph*s)+6%!mp zE25Pu3!oB4B}|zGFmI(wFbKKMezB-FJ0 zJ&0E7d=--&L~F~D_%qN(v?5xmvjCzM(MpvC{xg#us-Etv>tGP3E(D=u!XW$=xPC?j zk$MlJ712ta1rV)>R;nz3l8Lgt4D4&d-5gS?fc%>gt%z32EP!Yw4?rQb>ts^2&m1;1 zdo${}FAd|5rsP@5@B2mIAiz#-4R+Qn+1g|8PR6}+b6qIAg&)gHd#4v~>h;o}AK1y@ zUY;W4DSmv37R=_-_1bbX!hOs$Yw=-ArO%PSK#Po%DP`KXa6``QzFWnM;|y3-Ka`Mr z!etd)MG+#3{_*BD&c_JoFs4tQu;3>h6PK7~EJY%6sT@@G4{zstI0j@Pfs}8c)_OPw zWC32+TBH7RaWDu|X-xs)27_?(;^ChTDZqry#25_1%^0Y)9*#j6gD_ia zD{?Dk7C=-PzbXK)=r34%6wHw1Vzb2$|1?W870&IoMehIcHP161)wiLB67)tQ83F0xeg-t ze-62bRthYDs+a;J3Xy9KS4LHgs+ckhAX*Wvlvw~J6G|q^EPx4)ki>*k7W0EQBU&l* zRlyMyxmB=Tek5*5`8+CN%5X+eHXHlYcWxCX`H+Spd;W9)P463eifLuL_BvG)pE%u$~dW7vOt2LHq@m_`iIK zaamCnqbjD%0yGC?L@T0|GG7&}{!kTvXP21tzONaK?ZX%~+_lQPj{g17rsrReI#Ih0 zAf#@amT=36~PwswYxBD9SYitZcvwN&61Ga(Gwis#4Ah@ zqHVuhhF01ng0t4#L2=BMw{np%AWm>36>6xKsytj)%4Q`BSpr;E%ANM>3j*UJTImcI z7=)<~_1`cB24M`slvx1LifER;nz3 zaonWCas*|`xL|dGXhpPAW&uPiqLnfWV1h%LyvK3`COA~ddm-1M53M!vyK4Ep06#(m zF0qiM5iI=3znQ)z#$|1=0LmxI#Did;$7F{xsgI=zL@T0|G7BKL{zwA|&R>LtAi-}& zv{L4)$gPN0L@Q+$z`T`wDk?Yx3AqlUl`>yNZbh^TK^ZAX{@~4sR%*~18DJGNmcd|m zVsN=@RZM3UYz}3|bP_gn3*>Q^ir~`o`_x&LtCaqvd5!tYzk}&_ug>rG?&wL5ZxTc} zn=5~#gW`q{4<|8Bx0a;xC9L6}35W@HS)|0_W_B~bMVzZZZq_xTR6O;<+b zB62CS0P-yIEM*ozRV+MeH-+!kyg;;4=Bt7uC~~V{yR^n>zf#VqivL$sF=Z|zJfuDq&Q@R9OHe6J>%yh>S(Fw$fKwvG>pOdjXoe6!I)(EF)O^pehz@7a`y$|7Hxx z7?3Hm0HT#V0Gp#2+EXhpPAX946^S}3&%?1)zCeDy0z zZPJR!txe8G&kIa&Fu|eB0*F?6K-$D&l%tiq(qb>a7vQJd0GIf`ZHaMNzp((S;-+{) z%L`P+sEVnx0HT!^kT$UxqLn&d#T*vVifEMVe0 z6^ybbDci~yh*s)+6}c7BifEZZLny?**XCzYw`}S+>#75V`-0$fe7t5Uq4s7ST#(2!>z|{h2He z+tr#x9X&6wG=ZfF$}E6rr3a) z+73;g^ZkpF3hYrgwJw?Mn<~fIKHEf*`jKV=Y5zj6UDBzt3&&XXcVZ-2tryj#GkjXQ zkpruZYx_OSDE|w3GI}z_!wV6&l%w?f3nFe2w}{(Tly@;oeIHaP{|iPbj8Yh-FiHu` z-M@zh#$?JP@b?#NK}?=`=p~om3(yK@Zd!0$=kJ$=^1rlTopEh{GEku>W3^RC$)BtT zHMtW11>%-(3Ccs_mkS~TeX#{?=0;DZ&9q-u4?X#dEod`0dNOUM{jz%K$zN#+RP3`-AQ~u(Wx#srE{U%r4ymUofyZDk!#X)G9O%AXceJmS9wpi zm$!!aB-k=l3^)vE(8Bt%h`psSEd)qTKxXUsx`gqLX z*5+y@w&|+Af3#WZ(ek2PeV2|ikN zd7smY?1LY!?~|5a`bb5mW3Qp6o8y8u=&>fJZcdz?m$KG>ea+l!8Ai2!3iW?jcbT18 zUsI&B>D}XBx=5Cg1!1OcTizq+$VHw`zg`3@~;LL>e!D%nU+zRQ~O+3EB?}H=B z&({tTb7GWzj>>k^^3be)=5{`#uF$GXQYL2zQ|v>CBN03wDTfYCv&yjh^4HU+PX{iK za(UyRPV(E>7rOIWb^AFn7LF;c%W>?++}w~6 zKGLc%HPEi6yxL{oyn*mkcU2Z&`_*q*Xi)l@OWnvt_joJj-0d~qAKoc*j6NlsxSiYdbljkYbw{#7{l|`1Y|DI}Z}=Be^7n3CH7kw7ocmn)jqPP$ z+_qz{v!R8zeCzKHA<0DXW0(uMS`smRtx|VAm0mceLX{~tb@Ob){^T6rtAGhh9&zWC znpKyb%-Vtt4!#lAlX}AKb_Fjed=qY6`DSOnO1kb8FzqB+b?afv?5lECC!U{OCZ&IX zBuK*9jef9GneC;L@=Ts&L>apPymsf17irZy`)yOOtId|x(a|VdV5PDrU?Ed%x$;{e zQ<*|nqq-0Js(o1cJ;m8=mi{$m>6WC0tMgy@srI=rgIq%b$CpPXzjtJrZs}8PO|r9n z>JT}$@mY(cqPmZ(v}Q^z-8f;}yJM>^Nx22|WQt`eugHCRD({S|@{EYOf(_ZDJ6syd zmJ=U+?sG*1S3}7lP@yifz1FVRlUI`bR)fKf?f6|5%W)K6$7%NxEhi&lBsjkfeY?%R=d;g`=wu^OM_C*@sxq&(A2v)c6I)KU6U;<_W=M;xkw0R4Bb zp^Nt0mmc)IZ+3P($sI*MUX0kO$o5*eKG%dKXI_|T{N(tkJi8(rqh&eItGY6+(zfVV zgWXR6{Uu6!j@$I^?8--nZ@ja4U3r>-VD)n!P4|8dwIwfX!#R$XzT2{P4@$Vb^;3e1 zeTi%3laJ(JZ0C z^UEr2<_`Sq$^Fz{GINq_wQhA?k%QJXW;)sE;Lm%iHyv5;eHFaAZsYd?1a0n3@(FMC z99#B$e&VrJ9>?0XZy&mCW$dBBd4y;hueY;`SO{|kt+}U;^xOLOKzYBrM@S+=*Of=Q zlK=|m`bv@%*T(ANC+*5#txmeMP(yZ0oQFo zj*kTGo1*0-&b(RnVoBn)m5**opEs;&&yqShYOP+%wUslEkKeK;POa{?GM6oVCGu{1dSEk%FH`$h! zZ)kPFzy5V~`+nAPb!GkzeMi{MtqoInT5&k|_Q0N}dvDQ#6vRK#S<3KeKbwyMw`Tfk zlZ>6NJkNOsc$k}5wSc6zOx4f)oT#G%aXY_iKseySXNg(Jz&h}DnGtQmeRMoMT#Oy# zY~PJoZEWn7JEDHA)15naHm7ZQdG5r9@U64{l6$^2Qa_?PDNkFgdhYSj>kV{Px}Glb ztVzvHczQ}Lv7^fE`1yXf3^hMo@J=B7Mziux*YnODrCuxy@_tHSt~BRSjk2Vd_^z83 z={AXd(u;R^q`JsCx+>pN=sBs>b=ZM`V#!r%)$hIMciR!Lt?a|*`4j?C($dnGLTfKP z_XYY9->q=Be{|`lk|-&kGY$hh`fRwZYFFlKG&@d)H6QJ_Fgtn`<5vl9btj(~NJkn3DR# zAqu<^%UI>H^^bxvfuN8#=bbxpetEo=mU{MJw%1L6MgQ9tmGvL&T^x7yF}wNuSV=Eg zc;5MPoM#=QGFhk4JGcsz@E9P~ZsycS;BCFRINuocpH!u0q9?UlGH0GGj0Fvvr zuEQQ5j^jl8(zg#+7o^sx9ql8y#XGewhgl}Jjaeecd80OL*nYjsi&Sfay`Sbn9+r1}?Um_}l z_n7k%^OH=mXlw5(b&^3XdS9ej+V&NW=ju)WVC>iI>lZ#9)P&JxL5~aO+^mcP%MD>*1 z{$#_gyz`&;S>5)2(PtdD_ERF@e~sTb>8NNESc=-ekKF!snO#}Z>Zd2i-MFS=6t3>K z`1<)5$GzvSyWNf{Ie{@nA@asc!xO*FI;z{J?vz#fv0h3Bhd?f@^}Wa@DJV^r$gSDv zupsT^d5&X1+N$toCJMVlIkf>npPpJC8}-pI#mmoMbtGDK>uaOTQ&!)QfM= zjys^;?-&u@G)oV-JuiPn{F~LsBVAh9v-C1_8L2( zn?!L{oP*{mNLX)tcIG(Fi5?A$G3e;9-zVOBf5tW8u5-t=9on+Rbst3-x(KLO{UE_G zb#K&6|LB^#wG>GW<0n_^T>TKC!eQY#31uqmS1H|Zoybn zXL95sT}xy7*{r*jy-zJ+`k+(K6Bj~3>+RZ2avbx&2hTr$_Qu+m=dHr>muZv{CJzs4 z&zyC1n7oqV?Xh-{LCuQdY9?qy5jN*Gx!CI!#;akRZOaS{Zf`e^By2i&6lYm?vrRZV zeRW}K$m+a=a~f%2!-gA_^ck1EXG8)~AANptzIJLKuyB_X1G;Db-6+@A9bAGez-0M&%D zNpg{3^h8i)i638G*Cw2O>a5%;5r6K zTh5s=p4~$-yy#Kt8r)HMJq_$wb#ygAL#dR<3PwLuEFL<(idoS_$lwP0Tkkkw# zmEg`K`FF-*9_pnnYqvQiaP|Blv$kzzF>hZO#P&L(T&hg&t}J8vPDDpuiV4B5F8$(Da@69;SxB16q{CbHV$^P<)r2D_;p~uRO zDK>I6DdfSMZ%G1tCw72P+_)XT82*YZO}p|K__W8(o*3hqlk(l^aerc=lQwx2o*J6A#7@G{i3aNPJPMzSM{fHVEGj+*S79-Lusvn{(%#@MWykWWw563iZf=gIeAe$vo}=L1M*BG#@dvB{Oq^EPBHAm zLVxKJA8}T1)l*XB6kniTqYjV>upNz_>&NslV2DWi7h7@%LMmS*|w3Uo?6QA@_}5TX=c6Bjn*%%4~;y8$_Ftq}~IErMD6L z(5a0=p)M2z1_h5|dp#ZIIB_!khf&}-w%3)0|A;iLD}8l@RPGY_p6A8~yNeIorm*X99lNoxV-9Q&pnNizSe|=`Y+kD3M5&NQ5_e~$CJniw#KPRNLZF9z0cVnmV zVr{h-Y@Xb4_XRoWxf9HP`K`O;5mnQ81=U&iZ+efK8`)Vm$S{2TDHTtn?uK49w{<=# zzr1)Yc1T>+sZUEQ5}#<5)(VjBk`v^T?$lkh=%}<3w<<2? zb6%neG&v6a;MJ2^J9t${Pv++L@$y6m;aJ$+biJh_N&IQ!$KPI;0h^SeV$utOhW1AJXTRId<2qdCru#lJ+tKKq$faULNr zZinww39rmL3S9-yHoaE6x@d}Yj-L4bo?<6qFXlkOf#rt5X_ia&^j7VE{KN^@Uld(Q z-edP()3$7MxRg5akc8L_>w{GzNiNZhnO-RpV%OR{DY}(^B^g>fTs3zQy*TZ<_LFgy zQc>P!Y13YBi9Bch`t>t^iBye|nZNnNN0o&qVITHD-#?8C^+)w$u9(6A{|I=*fEsyE zsb!nzLRUmsYOr$=+34Amd9h2Oj{6eR)e>R`s+)t!Rd(fc)0jyM#IL4VzK&7~PVL@a zW+Ug>&TuHx_Eud!`SDRz@At1x47hq69(TB-d3JQv?m-@lHh+NLROs1WzSKOb=d;w* zrJrldyIc;M=;+j@eNgSvm(QO|p4tY@J?7AI83QG0R}Uq!8?FgGc}w&+ERmI471=~= z#w;%b39%q}tfSD7@%jBT@Ao|(bg|>Ubf|lI6nYMxT_2-wd_$7CVkJZ0aO=v?g=wMh zpDz}Rd@?3O##`HM-#WJicNbos=vehBSGzpa=g`dVPt`v??mcSFg1-YaVB6_{d*`9B zM>aiNm#pvT^TNaQAuNS7jdx_Te+5;iOHV=BKZ!LX$^W(Kg z%b_)EU`TzC?ScRaF%JkM?~{D>ANFE?hBlw6`($4AIko096!?uUgPG5h68$+HQ2~sL|HL6`s?8o`1UxxoWx?F0#OZ{>u zk|OQUp2+BWhb-7J4Vj&Bd`NJ7i~`Fv@u>RbuSrkcCT;o`;BWuN-k7{kUdke^p2>=%u;T>Gl7g7CAB4%vIh z7}P&3pR#Gwr$2%p#4>Je$$wF*<_%32Q@9?`mJ<#A_&qm-mFYdZ-j;0a(d5OhX?pUU zs*mH0NOpln{?SW8Pd@Sw!>OU+nrd(B%U^GB>o#EOq5Biw4en(G=#|XSi#--m8Ksi7 zXT;N8Jr(s1m97e^dhN1UJpP@V!oBuVDuy!9pS)M!$nHj`i1a}uOGmo1oEEgN@QGCl zv~*@frS`nm+#-I%Qx{CdoEd(yMFh{kk3W5&XPX5d&au794lcWDJOM(I+F=!=^y;0D z-gY3~_8hv+vhMfL*>l9mKBTOx&7a>~tr=K4x%A+L)Hb?s#AQk1pCs>g+CVS1*OqHt zH9qThk{+ob-KWoz3gcsGe(=XOO9D;jp4@o1LkTp_1s2{J9t!N2-!2GRlZZWf6F4yA zXA_@B5;+Slb1rSKnV-{3`mc$OE@@|ak&`lxoPf5H%yqZkUtWAY>*MvfeLz~X9WKl& z0=moFZUdb+XJ8X5V8z3~zx;IxBzz|=Vh5K%_u_`?Nrfbvn!K{wHmaw14urZ|y&D{o zq0R+tY@GP3Ly4!qB!K;?zIQ z0$(2V0xVu~Lh)@EXGR~{w{Q}q53$|8;v6H%VlXSY^6d45{m}Cj)k8-;pyWi_1d@R; zsl(avH?G22?*hgPKQ29|VJc9MQqOc0X znbYq>N*`+xzP`>Bp5X9WQ`22yZQ9+BvoF6M)ZK<`w~B-m4|mysyElE3N=f2Q!NYN) zK<>97P zKh_@3ibTUc`OIzh7d7X|M^>-w)2C0ii{h1C9eVtB_RNtVWO#yv2gg~w(I4a?2=}}u zue6Q+G5UWq9gp_4pb#?V6r8W;HLtd2=z9__EWv9O5NB;5TxO;v3>ytCQ*qJKr z6G7a*T)JuYQk#Ms1ILf@oI=uj2lK2eujb4+7wBu-kz^V_Pzi2BC+0eYt@qH;I&|sH zt7mf$S7*a5Uo3_moGieyYkOJSVWaG(=PI%)AC*9+@k(p&-n|1g)MUx-Dz4_+b`;!g zfTu0F?Nu@6N;$aO>+*KRciNjn_h}S(q<*`DGi!EBh-rRW54igM-j1j}zl=C@@#0`5 z+uc5J!--Y9Wt1u;NCY!jV#`_0xLW8epXWyA)D*z zVE-6uOmA1c=qG!Do!K=O^3-!j45gtbWOsCQbh(#Go|OWta-I6YK|1?DTt~a~RGhKx z4^6T`BB47kNNj_AXRT3{G)dx^v4|tjxxZ7^zPI<(y)Mw3a-{fdN<|`g#pzDQcmL{O zp0rSZ%KZ8BYr1$%&NvSbvi%sei7egxY)UL+#%9mzq2#{r+|d0WGV2$FI1lZ~JXEUu zX+6mpap(}|h7|Mi(vacG5w)c^3xZzHSfhNR#^h2M+bbYI_57@33G*Zm)P?4E1#tF% z_w-bs+>@K;*w&WB1d(+?mVpxQUVB|&dnI{SkP8oD%%mZ@ASK~oiX5~P$~<}UWbXX= z2lreDk0nI+`;;4N=cb#(tEiji*)rAjtBynFvFQ3AvxmY#p=%-M(xr?l?@FCn5^Of* zl@y#F*bPZ?^reNqE`RF}mWQ`Ku-5?)4+CW`b>qg3ht}6BYzsGex@wdsdn*)Ke|j<| z8*0wGKUSO~S>+I8uJ6Y4skIBl;}7TA>>&5#PM0JJbzNDKZ2}Hd0w=g8FI%>3_#^0! zo9fn2V>uK#1K>J+df71!B$C9zgx=#fn+{!eYvg##k4N{6Ra;~a zmE2uwg*OM3r`r^z7HutkILJFZT=Uw*HZNB(!4B5Br>qD;R#KhsKPXKK0+!MgNob+n zGr&!Kc!dJAZ>LrII8^&A0*O{QRE(sYGAA5tUqNN&z@`ml&(+FQ0x!7Q{O zXteEweAzr``dSJ{?w-Lhmls;Kt8{Lc#wwau=lKN7%qpy&<+aF}0f+HiJ1XDwN;9n~ z%YS)oOsOF>l#O{?dEeEw<5$8aN{C(B zP-LJ=l3LeGD!iQNs1%gkpEx>BlvrQiERE|&WC~dqy!W|)5!v^66-}vjet~L}YHo+2z zE9Alwa6kC^?@JG}$?XT7)rwhg>idt|-1?f3>qF$dPIeR<&IJd3=B=#_OLWD2t&HxaX!E>!Z!P+ds9a(+7TT-D94(uAR+G7jm0XY*TN}I4S0enVMO<24o#xVzxT_ zgO<%@V8V8tr6q}syWy!SCOU>yq^tF_&UAX88nUU-d{3V-%2z_(9ZwzS&ekn-W7?|LSl%C0b}8;s0kGLT7V}FKAwgHo>s*f3?_-EacyIP&L{2cq6!B?l3|R2 z#f-`7H6O1Z*b3Ipc{-%R(Lx1~v;p=rh^k}ZT#&A6&#teETXbvl>cYzwT@~PgA9F8X zf9fL3t&9oL4zR5%egD$m=&`4kmepa>P}1f@X(~YJ<6^~u|6Ic6pH0q(69Q}WNUQF1 zqRI0MbBPc=bATdq?3=%OWWm|Vhwk$`bk(0IA1S|6rn^?vL!IR()(1V*_u$ggH$ zWiL|4<@D2qN={m+l^b-K--o?U4;vXc$8SYs87&A6t$&_@lFZG8spE)KmzAYQB2La9 zupDxCRpUs<2eD$8sxCp@Wu1L+s>Mth^ZVUGw5zgQRiX#`oa`=ZTRZ_4sLKU-!()dB z`{h+_D~nUT7s08R=PzHz5a*Oq7c)uf?h9Rb)wGd4of%01Mt)?sp8AU~m?+PQ-U#PX z@55;#Z}7a31+dSZb@g5s*O!JiO8Rp`w3ZHbW@z`@x?(AuLJmmMTawf7A)L&~hPu_` zQ}dsSxkITX|4L{y%vb0OTLliMY-A4pHrwUE0PS~AyOHx3N6r>r_H_CpWYYWU*0_@- zaLEZ?^CZN8JbZ|r?#)H%8o{x^#8Begv+J^qmx2EbsDSwTxuT#~emKA`bOcD7?6`tWTSE zop!D;G7UOLVg!XjcwRzOTYSE$UVX5TElm7f)>=>PcCfPdjp2KHorg!5456=_y6 zPqE0bK@*hE*vic9+1_rNEmEq!SU}VF7#VPKO2L zYSw)00X;J=UHXoHE3FNTyr-YW_}}2vY6}!>IA1O7n&=pt;j2gTkSgZ@Ysf{m+<-jb z`BaFs2i)7d4Z9Lv{o!VL%GyuShjKo->xo|l@fmZktCkF$)O)1i2IB~bz3Re~7M(5x zPILrUBlZhrY>V%N!~|HEWQ~O>3oRtn5I&)Hmk=9b&B+$y`a#nkfT&>#lZY{9?|nuQPf3;DEtIqptj3fRG#dSC;-V=+x$U zLl<3@v(gJ`yTCx6^NtIHMbwBRkMBXt7n&0##(wayspCk;@1;(A>-su3Y;?K8hIGq| z$wU0uawp!1wU=ST0q+g4dG)qm-cePP<&cJkY>HL#>fTYT{)2!05aQ%=vgPabo7}Qt zES1}Y?d<@3!HzSAHbljB9#AkhDm1Sx502Pt7`816l5UGt9h%uD`F2UXhVx7Ml2For zS06Zpq=N4*zF@gL$1<|w?DT_K#rL|#DV0a}*>E4mrS*JtLIm1_L|pG?AGSI?%XmXZckzy46GfT)Z9&^#2`Hms?8*)yv3OAgLvhg z-(Y*HwETQel9Pe~bVPO9etDf$G!>2w=qd%yT zU;VGapnXA*4>M20tIa5tj&)Fk=p?>WQtGRX3xngnmpMB15A zaC7x-7jmd`D(!XQ^F+tKmdWz{w!J@{49x}>UDrhK`NbUOH)_N1#KOz-x)Sf$*HA zlc9%-tP3YKRu60zD_=kHuMH2hM@22O2F$zn`0?XQk9*ozul@`(EDfQ?w{%=i@kZiy zM-T<7Y(nc@mXV8d?>U)B-U=ZtS65wGvThUz+#GqL%B#HW)?1H3pYva;R4Bm6k(7D;OP{J0y=?(} z_*+R^06qb-eq`GhEZM~U>?yh1QDx7a?d@}W)xqE-St1w^JB?O)gWE5d1aijV?E&p* z=;AtQBe}R+8mzcf8S1$ z@$G^PFTVZi&-St?KkH7iUb%k}(V|9F!->&KCgA(AO2_*a+d&ui+oywb9M`~J`5!0N zXF*oC8)Dd?im~-I5nQ!7npJO8$DNbWRdQyG8Z}B4Mv5H1yX*E#z*JUbo348xn&j>+ zRVV2#J>_^T`k*IsLF6BSERrfGMVok-;ZIaeq6zhEmJBm76z6D^J-04P(%-boeGP|b zwyU?R{=D1w%B>+43fJ0XK)b+WYnX`yp@8?#gkXDoa@+`F&%j1T%E;DymWTQ{@}-ej zBVMUzw<1e{8)n*;WHbmo$QcFs-Ss%llIxyzL!nA-k-x90)^<)>ceXQQ*{#jHVLsMy z%T#mFIM$z^X)lTGKcwu^d8nD}81cvBT`&@MSjE`u5sNm#?q>{SgPX{U&)YolxgVM< zOVf9TdwdaAsOOYAZ{QK|)piz4dP(9QSo)It|AX#d<_MGR)y z13MLR6$%jhveYuF=G=zN0)V4R^twVf=PzSYH%{98F{Cebpa$9AB3GQOnx^J~ z_H2o$D|hAA#&I7jrGoq=uh!N4Q@Ol%NSx zH;)u+|Msvwblf$RtQz(khTL#mqX_b!TbIGrAOMx>{h<6FQDWQ>QD+HZy5j}#jmO-Y z46Z%Iu^+9M%5%;?5`lMQ)Ij5u{I)&Un zar`)8d~?{p%ZVKvwbM6%ZR{UbPV7a*K^KNVA8Nck3BTh%3+yO zvtWeV2BK5_S$zC{HQz(bO95=TPq1Z_KcME=0~#m3Ki|Yhl8RtG!6l z#^|}cK&>=WKJvFNsbu>I*cV<*bOeDpp4f4I4}0i^vx`CH$8@zX-fn7Y`ry>UA!11e z;vltm9v!}NhKyzM?;+YHp&50`M2bYzs{uhBh>JYt5{)y^j*`=`UDU7>4NZV8$P=pg zdBX3`jGW*KTe91bC#DkzK!z6*EoZyB4LAb}6kHEE@-IXOSm8l-e zlpdB11K=TllMqXSe5vQoPJKoXg_9K^=wQ~?Uf6>iO|-zZ068lBNZ`x%x?O(CpXC0J z@dybpEhk!Y#e@C5HEpd6I}BYCG<43moI}LHF7PAq3-1U&T9Q$%M-+ZxzY1E%4%dx> zX?&@R&#`r%5XtHswE{_knuwrxJCmd!PkziKB!LVuj;+wYG8j%7 z-OM?>#3DD)ieT7IvYP6!oqDJy3C`#ct$x;3IY&0FT3_h6%qndZ3|8q2la`;B4ThqY z8>H4M`qA&URlfIbR2CKa#I_%?nVJo3^z_t?kT%!qiZi!&jeZ$keq*WUH5g<#_T5pF ziMPHS6!QiY_`dOcvmZ!PRy zAN1;vgYz<=xujvY5=Q-JoUIwNIT7;KK17cV%-@abwPfAg;ujwo#UI09P;E%Ys}x7S zpp+rRNi=Rm3}jJ>7IIZY*;0SmmW6AxU)XSo>=rg)_N?oY9}23GkWfSexMYsq3F&Jv zAC(~Z;OW5*pp8pllBou4*j#xa(W7)JL7@E=U9CasEPn(@Fn$i%OaBwoZH!*or$Hye z87Pb7B)#%@P+t|RAKo3@%4lvEdj}ZNe8wokUa1CRqGj03+U)QL<bsVsg|u)O$&znzjj{BT9E z%dN24*W7BLcxDpmD5f;JV9Uz<$FUOEuKiW!7oySkTE@YSQp$UXDXcJSI^K|#PPTa2 zpXciLz1VWk+I1t_8M3-#Dmc_L=o(F^f55egtQZqsvUgFy@+qNqYat~CrE)$kJ@~ZL z%J#MyaAwaO+Ipg)iNv$^M8kO>EBAXz(0gDF?M^8L^TFjZj>1H{(69|AD#WBm;x{9R zlQ(Dce6XchcVE#AM_&(Hq5<${twAd;ZTSi1;?j;anmSY zq-wH~WaabfFZ@H82PQf`xw`c>*`4qwDsT#_v0nXzE8nN;Pbdm#gR5jgNLmxTp&%o| z;gM6yISUQ=VHVYO$yW&>RH`$+ATV(`9H)AiF@KNLiW(~@2Sx2lIlBjTleLJRli9a| zHO#gVrx3sg+%oFRgC82{!_iHm`~YhWnMm_cZuy)U=w+eB)=UBAi5WcZZpNIo(im8P?H}-^hd8fGSLy@fA0~0 z%z9Yl`mv2~7~2?50YL3b7CL`}mcW0@WfLQ@fmWk7sLD=nrq=fLZ5iL=1Adf**vHMJ z0S}G5ZvrYB&)+Q`UIPs!)!L`oaAu*}a>qo5Gh^VVN3VC13qlY0iQQpewp{Mi;<4Yv zsOC!HIfG$ur8rfRxo5EJY`=zk8GVVkmz5w?KWik$9N zXbF~xTObdoBFYN(@tyPUs+CtaUxYt(o<#i1-&OKu@?Wn@bBk!ftBIe^fu`J$Zt7%H z`K=NPECuy3&I~x|5UeK2d_2U}$WlT~5`1WC*#UC*GP>yy`EIUKP`pWv9r{l;Sf!4jt!`rTT@|+GEhI^7dCN>`W{hinMWGb*0 zWfbZ*+!3ITb4$zTS8@jeFIe(id!!05jPYLyR_#Vb{UWx z^yOs9=I!$SDj}Bg`*myRnr}0{`yzfX0IAhFH;6$0EXi*Tlvh{v&Xt_sEO6nujfK9r z?qIcq@#H?vHg%7LUKCkwsR}pY(yGxhPk`I-mv#@ z=69F;q#gHxoX1$ME#w-)p1Dc%A#M3c=ppJ8r&+VEaMXr1oS?4I&UR;Zm`0V|EBp7* zop<|l!pw&mH=u7P`to7`bNgj3&J5z1Xvn7A-!h~On~Rp;7?)$f^NO>l*>VM%2gt^i z-4aAeyuQAO8$LOr@Om6E&jqUH{hlQ!C!1w#gYt6}u-xkcyFND02t7}nS-A|y4NQXH z)fYhz-1@Eh7eQB7#yHf*Sm*l%gSvritsn9GEYDxO2x_2d__3S&(EZzwIQ~{z^w3^^ zMZ}01b!*Jb_Q6(547A?AH1j-Ou#;$_8^7hlbF-qE(O1L;{oXR%@BiQ z&b?mU`SeQbM1E|i`do+lK`^QOnVDxXk;q)j=<_OcW=U+9cX6@Z(m{1vdOnc~FLq9b zw4XQ`T~J@B#Z4=NlMFGC*vv4W98Pwyq+Syl4Q833mJQ7Sj}Y3Uj0+^K9Cn1dflnW~{E*O;(Gy)T>O-@nf6EL`S_Y=>_EOx}{$$w_lHkqSXqlX`wo2MdekB{1&-V zI6iJsY(`GMk)+cvuHzKQL(w$Y_)oFxFDkDxXv(I1*k112t<*?nQ!Vv|v;3Jj(8-Wc z*dwo{*ZB@6KX$nI8T^Dz9mY_|+zX`=Efq~0Il4`ZoQT>h1kc{y5%!{UBdbAJU&PaQd*(!98@OI?J>|WO=Z9 z+e`QA78b6Fo8*|A=`J$;-eBJ&J9aV(JVYk5d^lTfM#L^F*eYHubDQjsF|<^nm^Rus zp_uKJCNcqCEP0_zg?@;yMprS9?fRms4Eiab*qP(3b6UDeBo$|TqkYf4 zk>`YptOSXqN^+Hcq)-IN42~j_DxDTaQsu`idZHAPD!mEqze}ovOD8MvdjXJOX+aVa zES=$>n6MNq zXgi)d&4#7mCMiYB3oHfG8y|3gl_DY&9Il;kf0dT7&=kONe^s#KQN((IsJq-TA!$|6nZK zUu{bDXnBGAtF-J8HHBK-U&Z}ZiaZPn773ObFd?bZ!lg~J1xb~nkSAoBkW{IO1H$6z zzuOgzO-r<(2TQ>eCE`L>2T4^(v~J3UTK57;RfyvWi{d2rm5@}CR4MW>%v34Dq>zaD z|GX63ltQX}tB^oR0p)NY29ZICoFmxmWh7$E|(WJDFW=3`VUVs)A zZ5jn~jc5lH^=_Q%^%4dYWs7=hnwDq>6nQsH^{RsbMaCkZn&ufatw zPfe>6?bN?L4O6`;*22_3b5T!C^AzpWzqt)v=k_r5ZV!(v-d+sR}8_HCd>2FOXE}wQu85IV9EAd1+JX^z92LB-MWuuBi{j zyrXhRs^2;uMK$us)@H4kss7Oac~vLORH-TAeHUObQ>BU6c=3g|m4lfoMe+7q2gXd5 zCSv0mnm6D3zpNCDq>7~4=)k=5=UD!wDNDxkFHOY8190Q{b1eUoY)k!VZ^!cQw~FeA z%t89iSpNNKS8P!tg5_U<_WiTd4Sjwu0A-momV&8`4c|CCmV)Ubxkf`{DY!*x;Wu6? zT<&2hm|pv0Dfp*dk+e)Bu8gH%dhLs)V0ufHSPG`szE}#TERztpP}m7fuYIu;EL^*` zNHBbpd1EP8bP!c3K3`(ma_ZzhGAD!umo&&pJ5H9kM%_X5zV5OIH%;)LcKk%0TF^x7Bq zS6h^Jf8(XXGX&gUrPsc=zxvaz*diLltd(B-V%AD;Rz*+NDq~}1+J?cn%h|~FJLbhK zDO6v5*Qs4IPlCUSD4Zr+6q~-OOyaL1iXy?Y678fk{Cx?L@XtAsPD;bymk>!(cSN+4 z(tH{w{Vjt@X~iO+^p_ygNohC=TO>){Owo=ao!>C&?+T0}wHEcHKO|MU0wRvWrdM<~ z_Vt0_*HwNg=g6%MS%2HIt!o$rmMV46f4FPQsESdO-n)?uVr-h-KTiRJE`jg);G%xE3sSPB+EN#ALJR=fu@Rm@Z= zVj#>^=~bebsWx!-*z&^Ub_}_{oRaI8jF=$dlAjvUKkW2xt%!j?OwgK2rOu23k7wpUt@JP~~OfG#IA3q;I08|F_vy z;uDarczogR%_90z-l()P4QEE&9h*5nj3pE;DHwvE)k%n@XdDpLm-0$Y;Xdrlan^Ai z=oL=<)#mR-PLk(@4oVQwm-1Bc%L+-Rdi$br)UDeOgDSsNs=zX>m^@xYU&@>6QtdGj zrn+c|ir@4aramcmMpFHuN3;}T|H-5}!>pq;zZZaF3PggXm-LWe>7{ohSb9kh3AUwK z1YeE)(El-O{h@hU@7tKQQY;vn>H!TeFl(hXJYd#Ji`M_LW|+0o8XmsvMPk-Uizojl zXRQ=_7G|oLseUa!eoA2rl8{&mZfTY53v>QJwFVR)i4TU!~Zf-)ITkUu}hReq&2PksOoB z0%b1*##R*!9Sq^T9HO$DVSad#!_%AobxAAKP&}f zDVQ1wg_$a4Nt0mQVx~%~6va#xGgZOBBhA1_sz|Cxsw5LH%v4DljAXdRO!fa?rn*_* z&Vk(s7!=dTN^b zzc8R^P240HP~Yu)- z2AJ`yPW}Fcsedn7kW}d@?lm2iLsF$Bz2sF*kyL3?PDrXW z8J4F5cu5_SDox4>NtGtU^0q2?Ra4AVX)5kvrb?4xdFd9fzXvl_O7hb0w*)X#rOB{7 zQ}d2`Vx~&b*7>(p82<4%EdPFM8EW!n{3%3w;{*SA9F~8-=OzmN!av@L3LL84GRgC+q)QD?g%Ypl=^u`C=U!_JT2-91* zze;a>!2MNWk&~LbDQ2ql#s|z)g+)$5YL-M@o%eAp|I!;DaDSD&Pm)k{xW7uPdB6O; zBOb4zCfTI zd^-l?FQ?4)^7JOlit)1saOj`iOfYk)Wvg$NQV;5^%|dQ zlw%L4Qih3oQd&i#NQV*)lUT5`#y8a;h7v`KdQzIbv`DL_Q=L9+ba1aBj(Uz2^`tZ% z(GDe2(Cu63ZxI1QiF%8AQd-SwkskHz-S*PGx`l-=VbWi=s3)aqbr$JRB5%%?n-Q^f zFzL@&0{N`{v)wR6D7( zTf*-J5b=C(%vyhvMZSe)bD9>jR*`h|W7bL&xntJa9Ku_dZ(-I-Q{d$-3udkK+847{ zngTB`DZ{LlUi)I!N^e$$Su4Hv)oa|p#{E@#$}W+(zuG!|+e~edH`E39S82+UaetMb zxWE_HyrC}Gv_w;uj7>{q3y$Q%HLvLq%fEa;Q=DyJ`IjbQQU%wDNGYY@kpMH_^(2Pdm`_sb;)|x9Ggf5gS zD=H6x(ukN)s@}EiT1O%NyF*_}oQG!ECyPGx1@o&!V+;Ei_OC{~?cI3YUEi}v>`rMQ zRjqLDox=!HB?4Yo^?+1qnn4Cms_ozU$~H4w3&7*iK(HWK5Ufg*5et}Tiw5(n-gQ5W zMbs8B7A?_sr65&We88e59<84;dO)?(;saDGR4bnh!~Ci;imC02`kGh6{3>lHidSuT zWT|pD0HsRXi9)H;;scZ_pFTmU--1%5#Rn)=Wo}Z+Ni`iElqxMgK&kS`Qso{G^Q*M@ zpn86l$K!xhL8{6nuc~3b@1mvOhW_d(TMM9a2GeU)1Hpn|Rb{N=ALCUUPMDw&VOYUx zgoFCA_#RoowvSTEek4g@L7&{LekWkw+*fKGLuwzH7}l4A&7+}l1(uOfpx=e49do>< z5cQ$H_nBQC^6A2^W&ITav}4R}%xu%xu;`MA&jsDoRlw(4Lv)q_4U=hkM~)*?c%$^c zX`MMm&`n((^6k8sj2e4X1aaQF08=KQEa_U_v!ZV5dRMOc=Uwm0)hJ*$?^26~| zRdB7Ko4V$5>e2%J@;0=-$7+f9Z|jvTOyPy-j--X>3c9JQD}EzB%$D4k7fjWB_e4&a zfMPP%#P1PwQ}zOS!;|{dftQkLg`FHnW}D76d{)1CwV<22=5ku1vZRWS(?szbNL8jH ziVKjcTvQ|%AXQp+1*uY?LU&IBQl({AkZR8+j(39!rAjMVp;T%44N8?aB6M?G*Z&Nq zO3QChsy*|KH`~GfrR6u+zrFlKz6s3sA0@YccUb)+*;;@ej17VX!SbO%Siz)F(Y=>0 z=2!WGu!})q1(P_ya(@CVxCila2Mbuiu!1=y6;vx!tBl(|U4T?Us+?*GN)<{KN>!!w z!ThSqfT@IQ%&+>?9(be%%&*dlMvy8<6{MYEmJWK&qZ&-=0*iAF?T>CN6m31h2!u_~+W%u1$$n(YB>B5;3Q# zu^%=i+8;H@xhauV^rkMRe%O@guQgqp5}gyYX&GA|aVEAOHYK`gac)YKAbO{?)PC5M z=!?8;=cYtsL~UC3V!@P)iB}^Z8PpFu{atA8+Uf5qF$J&&luhM)(+@lSS<_6;o&JhM z@04cghn@bGSHwDZ`r9RF(=yp<%I=4q{y?fSJEehCy>9e+Io$VEElkvbR7t`s z$*;$OR7reVm#71&_UN3(1U;0@)&ktO{FT)*YnAT#ItaE$knf3%sxT`4v1=+4s+Gu^ zfNCWQtP3k#Q;|@uY8o&_G;oI(s8*uDx0Mw+mKNy7^(ST1Cm3s}K4Qy2^% zVE@wOEpyso|7ubVUJnZFUs`(y_OI8e$Vy&S!wmbEF%gYShW$&653qk}@|Jad3ij`W ze~)>YtpxzVa*}wkf;CZ?*L(*nm=-Hw1$&)}TADgo!KC5sepL>uf*JdBrFK}socaWX z(ZQ-a(Gh{c%eH^;_Ez)wC6=J@1w(&2`w8Q4|Lm>ND?9&EGUw3k8)=a%Or^~&rTM3R zd43ixYIkX#4@34n)@nUo*%G3AYUHJrv~8r!=FWcd@0|r!jN~3bYVtA>3(0+b19!kPRoG0xSWRw1JTO zw*X6kCBPDTV62Pi@3)nk${y2MES4j|=3K?WaF-~)d@?xmN>f|TajVrD(RnZ?!+PkH zzU5qKnc8B|_z3n%!E+6biG$XRK6|4+&~M%0JBIw{IYH6=A1QNuz)YP#eXk5a&BJCe`jhy=g}-FK0ZEs z%a$#P4OicI)a}n{l47Z@qM{qB%WcV2Ti94nHOo6l8ld(^#Ip!md=Z*FXB zOD#TiDynvLpkKm2)>uq~Qc_ZiEZ0H>#h@cVH*)$q%j>tUU){5Rl>Vg;7bPZ+oR;o* zy{++^Gnb2o|4`+?Y8KE)^A4|%P&!0BJWHQZhtj?02KXELn+H|QjJw3IxzUune z5fK8Or7W&$l_Z6f#Lb*B-+8;t>KXR-)`skT6`j<%*_)2v~(>dVb#w4GD;54ER1 zJW4-qsHoeSjdKmgf^yN3Zq`{qe6mk50A5UHv>#rVqwMAl|6R_tWS|tdu?TJqp810Fj z9g*?0oF|voF5B3JhQ=E=Ru>l+@2h`0M-;-zeedCKOOKyC*|B!pC++R+XUfaVC;wTL z0FW}%=i8f_npUKxrF~g#Sr}$(O0`_9s>*G-@}~Cg+m?QzB=!dZyUm7z!viK<&4pH)hPp*qXOTkd(}c^VV-TD7<6XpQ-?({dbGXz d;STB3Wiy6FS_(0, nav.data.size()), [&](tbb::blocked_range r) @@ -245,7 +247,7 @@ namespace rrr } std::string cmd = std::filesystem::is_directory(f) ? "cp -R " : "cp "; - hack::utils::unix_cmd(cmd + f.string() + " " + target.string()); + hack::utils::unix_cmd(cmd + func::sheilding(f).string() + " " + func::sheilding(target).string()); nav.fill(PWD); check_cursor_position(); @@ -253,7 +255,7 @@ namespace rrr void content::delete_file(file f) { - std::string cmd = "delete " + f.path.string(); + std::string cmd = "delete " + func::sheilding(f.path).string(); hack::utils::unix_cmd(cmd); nav.fill(PWD); increment_position(-1); @@ -276,7 +278,7 @@ namespace rrr } std::string cmd = "mv "; - hack::utils::unix_cmd(cmd + f.string() + " " + target.string()); + hack::utils::unix_cmd(cmd + func::sheilding(f).string() + " " + func::sheilding(target).string()); nav.fill(PWD); tbb::parallel_for(tbb::blocked_range(0, nav.data.size()), [&](tbb::blocked_range r) diff --git a/src/rrr/content/content.hpp b/src/rrr/content/content.hpp index a2c73cc..6276f3e 100644 --- a/src/rrr/content/content.hpp +++ b/src/rrr/content/content.hpp @@ -51,13 +51,12 @@ namespace rrr int navigation_cursor_position = 0; int preview_cursor_position = 0; int history_cursor_position = 0; + file navigation_selected_file; private: void set_history_cursor_position(); void set_preview_cursor_position(); void check_cursor_position(); - - file navigation_selected_file; }; } diff --git a/src/rrr/layers/gui/browser/history/history.cpp b/src/rrr/layers/gui/browser/history/history.cpp index 58b5bf6..51e0158 100644 --- a/src/rrr/layers/gui/browser/history/history.cpp +++ b/src/rrr/layers/gui/browser/history/history.cpp @@ -52,7 +52,7 @@ namespace rrr::layers::gui TR_PUSH_FONT(SEMI_BOLD, 18); ImGui::TextUnformatted(">"); ImGui::SameLine(22.f); - current_position = it - data->begin(); + current_position = std::distance(it, data->begin()); } else { diff --git a/src/rrr/layers/gui/browser/navigation/navigation.cpp b/src/rrr/layers/gui/browser/navigation/navigation.cpp index 81b05ae..bd45001 100644 --- a/src/rrr/layers/gui/browser/navigation/navigation.cpp +++ b/src/rrr/layers/gui/browser/navigation/navigation.cpp @@ -50,7 +50,7 @@ namespace rrr::layers::gui push_style(item); - if (selected_file.path == item.path) + if (!selected_file.path.empty() && selected_file.path == item.path) { if (selected_file.is_hidden) TR_PUSH_FONT(SEMI_BOLD_ITALIC, 18); @@ -283,9 +283,6 @@ namespace rrr::layers::gui set_scroll(); } - // HERE начинаем тут - // если дирректория пуста и туда заъодить, то происходит краш приложения - // сотрим тут: void content::navigation_right() if (key.get_keycode() == try_engine::key::L) { cnt->navigation_right(); @@ -351,6 +348,7 @@ namespace rrr::layers::gui // помощь if (key.get_keycode() == try_engine::key::F1) { + hack::log()("help"); em->execute(types::event_type::SHOW_HELP_DIALOG, nullptr); freeze = true; } @@ -418,6 +416,8 @@ namespace rrr::layers::gui void navigation::set_scroll() { + if (selected_file.path.empty()) return; + delta = 0; current_position = 0; cursor_position = 0; @@ -460,6 +460,7 @@ namespace rrr::layers::gui void navigation::detect_file() { + if (selected_file.path.empty()) return; if (std::filesystem::is_directory(selected_file.path)) return; if (selected_file.path.extension() == ".jpg" || diff --git a/src/rrr/layers/gui/browser/preview/preview.cpp b/src/rrr/layers/gui/browser/preview/preview.cpp index 4017fcf..c7e0b30 100644 --- a/src/rrr/layers/gui/browser/preview/preview.cpp +++ b/src/rrr/layers/gui/browser/preview/preview.cpp @@ -75,7 +75,7 @@ namespace rrr::layers::gui TR_PUSH_FONT(SEMI_BOLD, 18); ImGui::TextUnformatted(">"); ImGui::SameLine(22.f); - current_position = it - data->begin(); + current_position = std::distance(it, data->begin()); } else { diff --git a/src/rrr/layers/gui/dialogs/dialogs.cpp b/src/rrr/layers/gui/dialogs/dialogs.cpp index 95cc886..de0495e 100644 --- a/src/rrr/layers/gui/dialogs/dialogs.cpp +++ b/src/rrr/layers/gui/dialogs/dialogs.cpp @@ -40,6 +40,8 @@ namespace rrr::layers::gui if (help_dialog) draw_help_dialog(); + hack::log()("render dialog"); + END_IMGUI_WIN(); ImGui::PopStyleVar(); @@ -93,6 +95,7 @@ namespace rrr::layers::gui { show = true; help_dialog = true; + hack::log()("SHOW_HELP_DIALOG", show, help_dialog); } break; default: @@ -284,6 +287,7 @@ namespace rrr::layers::gui void dialogs::draw_help_dialog() { + hack::log()("draw_help_dialog"); height = try_engine::application::get()->get_window()->height() / 2.5f; TR_PUSH_FONT(MEDIUM, 16); diff --git a/src/rrr/utils/func.hpp b/src/rrr/utils/func.hpp index 76f2a92..9c9fe4e 100644 --- a/src/rrr/utils/func.hpp +++ b/src/rrr/utils/func.hpp @@ -1,5 +1,7 @@ #pragma once +#include + namespace rrr::func { template @@ -7,4 +9,24 @@ namespace rrr::func { return Color(r / 255.f, g / 255.f, b / 255.f, 1.f); } + + // для экоранирования путей чтоб unix команды нормально выполнялись + // правила тут вилимо будут добавлятся так что эт не конец:( + inline std::filesystem::path sheilding(std::filesystem::path PWD) + { + std::string pwd_local; + + for (char c : PWD.string()) { + if (c == ' ') + pwd_local += "\\ "; + else if (c == '(') + pwd_local += "\\("; + else if (c == ')') + pwd_local += "\\)"; + else + pwd_local += c; + } + + return pwd_local; + } }