From eaf6aefd5b6579836f913d8f2d6ea3a18d7ec5d5 Mon Sep 17 00:00:00 2001 From: Savely Savenok Date: Fri, 8 Aug 2025 17:21:54 +0300 Subject: [PATCH] refactor, feat: added proton auth support, added instruction for proton, added errors, some refactor and cleanup --- docs/guides/how-to-add-totps/README.md | 22 +- .../photo_2025-08-08_17-10-27.jpg | Bin 0 -> 34520 bytes .../photo_2025-08-08_17-10-35.jpg | Bin 0 -> 20184 bytes .../photo_2025-08-08_17-10-38.jpg | Bin 0 -> 19389 bytes .../photo_2025-08-08_17-10-41.jpg | Bin 0 -> 16739 bytes .../Снимок экрана_20250808_170854.png | Bin 0 -> 42150 bytes .../Снимок экрана_20250808_170912.png | Bin 0 -> 37776 bytes setting/consts.js | 12 +- setting/index.js | 9 +- setting/ui/card.js | 12 +- setting/utils/protonBackupExport.js | 11 + setting/utils/queryParser.js | 219 ++++++++++-------- 12 files changed, 170 insertions(+), 115 deletions(-) create mode 100644 docs/guides/how-to-add-totps/photo_2025-08-08_17-10-27.jpg create mode 100644 docs/guides/how-to-add-totps/photo_2025-08-08_17-10-35.jpg create mode 100644 docs/guides/how-to-add-totps/photo_2025-08-08_17-10-38.jpg create mode 100644 docs/guides/how-to-add-totps/photo_2025-08-08_17-10-41.jpg create mode 100644 docs/guides/how-to-add-totps/Снимок экрана_20250808_170854.png create mode 100644 docs/guides/how-to-add-totps/Снимок экрана_20250808_170912.png create mode 100644 setting/utils/protonBackupExport.js diff --git a/docs/guides/how-to-add-totps/README.md b/docs/guides/how-to-add-totps/README.md index f78b736..b1717cd 100644 --- a/docs/guides/how-to-add-totps/README.md +++ b/docs/guides/how-to-add-totps/README.md @@ -14,11 +14,9 @@ Then press OK, record will appear on page ![Added record](image-4.png) -You can edit your otpauth:// records using button "Change TOTP link". Your previous record will be replaced with a new otpauth:// link from text field, and previous link will not be shown on field. - ### If you use google migrations (otpauth-migration:// links) -To add 2FA TOTP recods using migration from Google Authenticator app, you must go to menu, select "Transfer accounts" -> "Export accounts" +To add 2FA TOTP records using migration from Google Authenticator app, you must go to menu, select "Transfer accounts" -> "Export accounts" Select codes then screenshot QR code and scan (decode) it to a URI. Use any app providing scan from image, ex: "Search screen" function (Google Lens) on Google Assistant. @@ -34,4 +32,20 @@ Then press OK, all selected records from Google Authenticator will appear on pag ![Added records from otpauth-migration](image-7.png) -You can edit your records using button "Change TOTP link". Your previous record will be replaced with a new otpauth:// link from text field (otpauth-migration:// will not work), and previous link will not be shown on field. + +### If you use Proton Authenticator + +To add 2FA TOTP records from Proton Authenticator you must go to settings and press "Export": + ![alt text](photo_2025-08-08_17-10-27.jpg) + +After this save file and open it on text editor: + +![alt text](photo_2025-08-08_17-10-35.jpg) +![alt text](photo_2025-08-08_17-10-41.jpg) + +Copy all stuff from file at clipboard and import in application: +![alt text](photo_2025-08-08_17-10-38.jpg) +![alt text](<Снимок экрана_20250808_170854.png>) + +Then press OK, records will appear on page: +![alt text](<Снимок экрана_20250808_170912.png>) \ No newline at end of file diff --git a/docs/guides/how-to-add-totps/photo_2025-08-08_17-10-27.jpg b/docs/guides/how-to-add-totps/photo_2025-08-08_17-10-27.jpg new file mode 100644 index 0000000000000000000000000000000000000000..22c87a81631903be63b19226b50fbf70db85f11e GIT binary patch literal 34520 zcmeFZcUY6nwbsz^|J7wI)9(xsyyRRyI|I4qFPXP590tW&eDC8nQKn;OXLr%T|2oNPA5Z_aj z|9n9RKp2T(XGloNzy=j(0RjjVNGXRyI7IKdg^-ZaGcYnSb8>O>@bZa?OGrvd%P3t_R#8<`*Dx@=ans27mWh@1 zz56z{cJ}Tbo?hNQzJ3oMg@!$T@-+Ned_v;$q!%xfv$At?^YRM{i{8C2uc)l5uKDn# z@oQ6aOKV$uU;n`O!J!|+n5pTR*}3_JpNmVITiZLkd;8df!&AH<0Q3*E{>JRz;6)AM zMLkxbhS4xFAVE(V ztpD4h0k0xJ)BN4TJjY7@P+u3K4F7KzXyrn#?CqUggs_GQk*kObuWe?Wh-Q^M(HXLI zK9^U1q_DdP!G>C`k?5?~j&M4P0bP1Nx{E0Wt+_hq`M3d(Oz(5x?3c2_d4SxEW4*&Z zgPb|F)nvdCuBS-!XQ6yT%q|Zz@o01_raZR2${rct<<}p4i=BoTYU|adf`{Q^8CHbHSdQ%YpV_E(EY*&!wxB=JF3^oRcp#o z8wMOdMgb~64JX~x!*Z{k!A``hA-$}K-oZ?ad!GlKRVW8Ovl^#IXkjFrZjKocbI62_ zPK@QrDs;YnrCI@87Qd{}+wxI3DN&Yk$@rXr?q+&e?6u|nddpXtun#b5r@$9^V%OA) zYaeP}IA?@Ovc25W4Px&_K%z3H@n-G%T9aDsn~_*f)!JhOqNx@Rlu;^7O(g5^IE~aM zyIi<=(LZoWhpnV}+KmT7=zF(eY{{-xrL%pc=$=*Oy&Iz@FTTyo(VdYmAmHQ4LX-Yy z3&ZmkdmhUMMOr;&_}NooR6p~nby?rw;!*h_X*KvIxr*-R_cvbL6CKZwd&1&fv_-=Z zeufE@2V?LdV370Eu6$93`43qjoO&WaSY(uVE9@VE|WVHQFi;o zcQNCs+CGnSp~v3`G87gyP#srT*^hrL&yzna?}1TpuXN@HC>&=v<4~KT#?>46s^Tx% zUlh)v%P?y{V#go+>_~{rm#@BqyGLE`Q&tru>q9%$(3BA_(_A%Eh6%khR5w)VPZB`u z?MuWvGS#i@UuE-8sV#gy&U2B;CL#6}Y~W4VTfq}xGCf)6@ob-m z4lB-nW8xvsv#|Nu2-drefg*{6P3T@^>Kp#Vt2Kng51f$fSk0RQa>(hDbB29%bKhS( zU#O|L7TIcIo2r(5oA8+iBzkur5rMNjQos+(tX3>U3yY&3qG-oCDr#y{iTf84uRao5 zk+4Ev#_RE1Qa?BY98k>|eRie|fNmbQJPI&yKHKnA-#D+_ZNp6EV1&cz^Q~Y^JBgwa z0h5A(8Q+>~jnd_~*mja;x|CEKCV|rRwJX1`g zG?q-OJvA+5t$D_+=tZ91k4u)|)NGy%yCuE1d;&l$aF#s*&QlrTC=z%2{a#gd5&xdQ^9|q)P5ycWL+#6qLCCIHbW=%Rvbg zKsWX2Ru2S)R$%scV|J5`Yd%AHx>zz}T}zDD^;*i~@e0i*%X00yh7Ij8vL?hv4A!x9 z_xw#Qx>e+Ronfnp;|p@FGh_JLeXE7VwwYuA8{dK?mlK?d300uj6pGuV(%BS#BA#{v zIB$%-HqOu_mEJz%C4ElqAW@RGMv}YJ;;yyskGqh&z`4XgsU_dp)SXGApU8+h(H!AV zWk2@rFi%_?qmPzNTU+WnFm(!@Q=FJ)jboCF#QsuKD>ii76SEMiVg^2E> zyWdF9;^_|cCMQDiBv^(S1jcIG0IPF-(BQMT1H6Z>utu*ac(qqGCt3 z`^9z$+N|SO$h)X01+hUKVk(XO>)x89)_BC7S-B~FUgCu@cBjU73-X~rkn?kBHLThj z`mTzJU5YT~OOAjaB7o&~tW2u)>=D$m06{ozx*m+8w8BE}Y@7gJ87lW&+h)ue41at` zTj?xsXG(oWmzIB!5pDIuD};Y415sClkiNEiG>+irZFK z26*qPinGN5tyURp1BOl3B=(Y1A`Dg`B{80GCOP(vMFm6hcu2^|haTg15^IU%k0dpi&`0Ip z?uI-7H(R1#r>DTEicUbEemB10*cQT*6%O#>AC}oGFbuAEMse*0B5%Bn)pGQ8nzMe| z;xgXQ%{}m)ln1(ud|EHI!LVw+k)ppj_%`s)WLcELxr(Q|gmD2WD4MU4Z?bt7_Gi3^ zrMr6fU3vpv1}o~GVFOg9_nSozC>pe7T$KSvxO)pXV8t}U`eJ7focDC@9~-C$abbwh zd$mp07@3hJKdo7#%I!<-BN7K~^Civ4XXXLw z0rUB-k5Mx!aNfYa<`#${^?NoRrUY`MCiD#BWc19#gWl?yLfi?!2OQQKA2;B1T#xij zaJSy}T2;QUdLwfg8@RxslfQoXvRv(D#5XSesY|(5qm1mtHZehBLErXGP*25$$pR4H zGnx*+(Y$t9+7FSXknv@F$@$bOaqO1aa|GXpi$pa4oE$lIaELeck96t74e7mH7>n1= zYX5m;MhOt8w*lQt$9hjq4DXv`H8+usGJ_SF<4f#@l^Iv8Z;2jNU5HR;GLH=R=6$gC zxpg{aqkHc;)|FwU$#WxOTJ_Oxn)W%_1LyLTlJh+e5{F-sr{u&qaolG-Xl{(}3@A0E zQHOHJw^)`fXrf(XDP^qvtqxoj5rz&K6-i+gI$;e!oh)l&k>Et*>dkRHUd6bs_EGqa zyKis@cNOu1iKfjN6{=x%sz>&AD8|+D5^W?ErqfQ=SR*bl=fKt1vH1iLmJM@n5Z|Vp zrZQ3L*7u7a8Um48-!R>KJWziDXM>$8v^@dHcgqmC%bV6@uBD4NpM>EDFHnbHF5)0v z=bG1}sd~}4V7aRe%kjzT{(_)90d6;h>-|h88md3{6O+~&*45Dz`Q-%AO{)u~dGR8i zIW30>mKc>X*BRu56>YJ&i1jXMdhKInHXwFhTb!rLB(US_5eeZdwyhkrMrw$PTBif< z8n$~TBSL?qAyV!}AvV zIMMH7F^oRWZI-K4&CLXd*gaVwu zDXf1fuK(S?WbrCmoN%fuZnkYXSs@P)PjkV)!C@l5>*<=v!|dIhUpjLS!Ku3R|EBV5 z!?EMFIROlV%7FyKiTm~x?@5i$Kd~(g>cWS_e(4wyGZRo%*4*>nfv>-7$YmfqtEcZv zv3?M4`Mx1DYw9i^-)SY&wCWYEiGhq-PyaaWm;yNQ?;XOrW5fUMh8(u+OZlst&Yt_CVx`~+ zIK~xatv#`KWWP&U}0 zu4o^L`hl1c{VQg_plSdS7oum&$~_Wzxvcs-1@t4lou@!r{fV~l@W?53DCi`IO$Xyo z;jA_e56=LJp*n1N{x3NGfj&>-8?VA&(Bs?j3F7bh14r>7o38vp)2y)(tSd-JF~d_3 z|8?r)w2wsK%zdZljJ@-_3=`|kIO=YYVDz7@#={Oi=&v;~k@bf^dxYVIGkYmRf)|?r z@q~xkP2`#$*%#52@~}BAC@eL|bCs3y_<5b?3@RAY^7R<0`$onhS;#_@{<3dZtW~F{ zV+sIuohwela&B0fV%KM$)QM+zINR`qXx2t_jOKW4KeB_BP zG39nS^u4!$Yh>V>;(_hwX7}J)I}Vp1eV-jU@10CSQd3M+d2M6BFHKn?|EM)5h_@r6_utBBq%r~usbzIQ7e~Waxr_V z`tq#^4M3|rKRtm!!+NvX{o%tdnVtO{BfW0eGs^R>&5#zk)MxUSU?l*=6_f0f|I9_P zRjTXE!Q-Jyg-88y^m+)(mtW{vf@|~Hv5)h0`~Vw;9jTo~i^3yi95rhAXqu3fA>M>} zyTdvuWKNK%Ua}UbH+r%1*^8xGZjWx>#4`a?`pV&+Lq%Rq;)N*hLh_ZVt08JoZkL zSQElYt}KnG6%GhwXC##Xl6GU^XV^c=dW(sY0#2&?T2dln#KiGzx&)57w;|b{gbx*o zDY)!DKlInP;*L%LUWmCa9`+a3hyjq`>Ybfjwq*UwZhpPheqaaq%Y3ja9;!&DMQV(z zJGL8!Tfbe{nMR-8R4+fmd#v0K`BVl6#>yS@>B-iW0d~D|gIi6qatl~n2q3tsLMhrD zl#mN*K6FCb7{H0xmSUTtUFRq-iCruw#EX%lv^Svv=OHDJD@KiQ*mVcw>Mn7>>5b$ES*P! z_A-&z;Dd5{GikDoe%IZ{ zMfL~-VFGkveUc_#`Bq0)a2}h2(NR+cDzUeDr`PF3$s8G9#1@2zKmGQs=H5|t^Y>=S zQhejJjq%_aBnu9*S-xS*JXlrSQEXywk{)yWPUS$Npv^TKb!w&*5f;&`sH5(&AFy_2 z_@?e2VWS(L$OEoEul&MRSdEW!(@hk-qB~}SLR^^i zr$jwNkE5q-r;MziwBz`=Pp;3`ob8&4xxg`{sLbFd1Wfq^2*!zSq^Q^Q*HKKSA-}%A zTIJ{Tigt;)>dA$)Y)kPy(|64r6p0gTH|%spd5G(8Y$UBxOe2VWs#+}A-n{8cUub$W z_8G}T@LG|y=S{dG^SzLml6PJ@IE?Nic? z2mIB~gHc*qP7c;+x!GI%PjsZkieY{NVNc=DAh+xpN(%9hWaYjB5I>Lqlk` z%8lg4w^#`D;RH7qt~@rWcwgHmo`sQbw-|YyS@D_pGCES|9yNKoB6qr$`KHaPXCbzz z#rXNm6nOQ2U8i1Ts&3^!Ew%HmN`>1zCd}8g<8HNi3py0r~-`L zhqTei-m!6=*%p#0x$i;?XqU`~%Zdooa&paicWJWV0&`tYU1mu+$Ed=ETlnYtQ%G?M{H}nAh&lB(UDA9h=XDpESV5R=KYa(%$S35Vt#D_@UfdqTeF+`c~81lsTfi*H3^q zI(o@rBYSh38k)p!k)d_`fiwONmhV-khhHQ6<0RnYEkVrM>Z8QpM9#UWWm0y`csCxi ze?q=H0iKk9lo{t{cK#Ys%;=O8dVO3&iR;I=RMs+gKl z>S)FKoA-VO%paYvxpfX|*M0S?HB0L3e7zzTb)>UAPQ6iCGu3HyrB}{9$3AJjunqQP z)nqbvIo9NQA(SwtX1@k0$t~-RtQ?BU-)so2yDsKTVLFcWYM=hnHF!?_87=(twUlXE z=oXvIuecV6_FTw%sp!{yD($-qAv0q z5cfiw@%)u;%MyRfkQ2bZ#No?0K|hYY0Bh42B>b+=dVA-k_=s?MM}Dn{bL?a2ZSHzg zv?%%#WOt%jkoW}9J1(k-((i5zLVQos+<4?(SvLJNd=VpZOGslBPTi0^bN?#(Qt(qA z;=|dxd((`$SkH~d>5x$$_pd=>kDDHPQ<&j9877NgY+?JZ5n-V^9 z^ucVme8_lOA&+Pr>RtM9&5tWPr^9yH!P9}|-DP45-Uq<~sS7sWf=oVb?yp`c#ZG)S zaekDwF%*Uq&9X}lUor{slaKi1IBPttNR-QCB-CdeqAs@shwS7x2^!tP#vD0IK4SRd z#~ry+4%bX^IInZ|ONgea_cQ;e^pbYjkqM-^=e*_!-YE#Q*=_RgnQgW_5g#-7Vj;AN z2;1d1Uh#|}AC}X!VTr#Q@VS-Xu#V)=dH}MHe-_j>$0G6mA^z|IFy#BMQ*>53Dhx&knnHJHv@E`Z+L6O0>&G1;lPq|PFuEACh<(N zzvE8cOtN+snkZl23Z5NZ4%EVOS=a+c`()4lfWMeWvlud)hZ=?D&Gu1)x*`r?qA04> zEmqS6Fo{)9Ka1=kSS3gaH%sP$jHt-;373f445lRm`mTzkDhzWuU3S^g)tN9JSU$o; zt3|A)lS?`i_P_v>#9~!(=`9@8Ltf-hr>JNFvIKFi8OiZnFCb#T;Y}%c0&Oy&EVi<( z_7KMHG*QCF8Iubj39_oE+0%XVX9wI}sSkUg@9bQYFY$20fjX35WN$JLz~Yh94KII@ zNrXRJBdaRw-W=$sN{tGXgd^^CM^*rnlFt9&sVx94(iXW!1o zM_Q*ZoImUh*O|&Bx-SjmID6@gTyW~{VIQ({KYD$?1`pa$89M54r8G8&^3 z>hyJiuho#Jw}}C6Hp+&Dr9j&Sz{!bHmHT0&wI7Q&Xk}7?G&9{uavICM!no6-ai-l7 zkI)_{N6({~DS21aW8&kUx%e{4Yx7>>^=TGq0xkxpW}b0R4ekmIs^7_;le-;=OzH!@ zQF5_vZVKy1NFALoDQIm)O4rD^ZnG0W#%+5j{F0(+?QS-lo&ZfBem!Pg zzvq`HEnaIImMheMymW~NVhaLv*-ql2ruL^y;@Mu!CdoPcF(62`?GIY@xqP}8Rd`+Z zb^NsQj|Ko@!af=u6Z0Y!Rg+6R06RC=^WYYf>zj&X>S-T&?L?9RkxoI-QKzQOYxhwZ z;E~SFY39|D=YdGFEFcAWrGN5@G|TEg1Qk^S9i;zUE(Y~cg$H6+dtB(=jM6Yetdj!Q z?>`4I%L@NB9c{Q)O9cmQmZx&}cnBJ-6XH4{)zcZgPB(?$*toVr3 z!GDy+zHK?);V(G4it5fy!b8ij`XCM&?{A#|6QCkSDgYDgZkR{9L#bf=O0k?ZcCe&EFPkE7e|lqN;rpqfif4l(ANR_ zC5CW3Z&<1c9XVVA8xD8Qs+NJ!et77Sdo{&Wfa=iOawB_H4K??xY0_!aDuoju76ely z#uDsaX0C%Vzz6<;L`-=;?(k25>7hw%F_x{Us0(I(c*|qIrJ#X7kYz%BiK)170wjUp z5?gL$eRA`U*?&CGi~9v);gS9c&|Q*oN=d!numYQveEbm856-B~#9fGcj2+V1d-ONb zxkvg`2Og(%z4r&vE8Y(6AZE0huYe+P{*;4z-Q#202UuI%DMl>;@^;6aQiSQ}hh&t^*sQ=T69-4?5&sf;bJvjcw zbL8*5Q|QUqUIc+eFXQ3Hl$IGNkVM?wr%YNdI@0)Chyq{z&Yr4Y4HkzL^0yE(=E#4h zOT*$)E7Km(5FK&Vl4+07j{oyYO`$crNKZyPZ(yJ|Hb0@%19&TdxbZSYS zKY0v_!#`kv0%VyHeToE^)cV0M5dW5Qz2C?W60y~oGUHTwF9-gK^OX}o=nrzMW+471 zC_VJKW9JCS8b$K4w^(q*LWVOkCV$EdZ#C$u`m+;=je@hm2@nvoncLQVN+nOr-`9@L zZ(O2>z62i4226l(s>UBr9fU7+w$sMj-OD)Kx7^4*0-c%N6&c6aU(BvM6*F6m*9;5D z^WA~t-ze(}cKcNf=ixXXA~<`S;SGh_~i`|#Idw6{Fi1>5~v!~!t> zKcvDU@C3Mk7a#bIb-Y1+zjNEb!4H+um9(()$JD>E_+Qqn(?R!E&d9#s_A1Dr(z0JH zuKXpqsu+Wq9ZezR;@GbpBdT)*fd*;**UTx8kXwJrR^V@ly*OY zzp(CT6O?U`Svw}WgkpNi#zb_B%&MQC?xN6`g|EGZIbMerW%SQHCN5OfSSvMr>q5?D z&YUmqJftB_Ygc32fJw=|jgK1uE`euyR=gZK$nSP-AL#Qw^Xo zELD>N=jRn2oqX}w^Lky1Fu7P?7BKS2GlRCC$sywm&Jr0`rvyK{G`OiG7I#JJ z<<-_#@v$(D%d=kdH8Q_kh^KDE|A`WikLUQ1boBNF`1u|AjdcE9MZcP8wmotUJn^!L z+}40ay*HEruUO`@YB}%B4CYA5^U0=_P#=5{2h?NyWLS3d3R}fq-Wf-;`YxMmElkAV ztHGXGeKpsUm(~?Q?V8vc)E^HY=xp3@#xP6|CT@D)*w7kGbo6&hMuds2Q*~7p zJ?V61NSS|tSs!v4!Kos>lYv9Yy)bM8)yfI5Io{ofC)hxRl?O6!kvSaOV;uRIkmc6Z zoavXp<;F=QoYO5h0dB=iHCH{x!KPv!TUNBJQdl`peH7N~6|;nm*;iteS3jiO@Q&`A z%O;CdsqxaQVuVGyT8iR(8yL%DA|@DLZQhS@C@@)Ewz~&}@3O1A(-d&edTUQitjP2K zoCuv@ET;-T0m_qF8dygb8RC7swm(VIC?poV8_^M?RqmGfX=LZ*Wi7`LVvtUY1D; zU)`Yy>es3=b`-uBeY;KM36PnfI)R2d&14p3R7kE86=B(DB%cJZPic{TIV67k%Dz+1 zMJa2frn<)VmWiEG^NlXf_yV>Ek-@S2k)SP$YU(J;dnzw#%AEBC(7-xRMrjCMWfYo? zHotn%^hKSc?~Sv72=K^!M9~F`Zgfry@ZQ{wX+lOS@NM3Vr}!r0RpPg8+UNx&8ZjOu zlCjP79?SDUM;j)yg5B4bu~r+vMZ{ zxfU}=8aVR};pV+Q+>N{+%gNp`995MSgV`T!DO2UD325o5Ue>y>Nc4tpEd7rx_`fz4 zk9=l{{FT#n-vl1*^J-RuAM8-GWQC|&1U}MoqtwQCx8ODa)WGA9L6^B-+6Wy*BQ=Ti zf*6F2P1jiewtgZUur@OC-JbzBXAy9i@=`S*u(;&k?asum2M-TCa^!YrSNTYmAS?1B zBmI?N^d#X=U`5soSM2_!UVKQ7(o=YaLOYQANTXd#X2bMsmcOq8&T++spC%k25gdq* zekm{A&6;|sf7>Q=G14lg za4x2!?VNk0S2wDx!Q?*<=1cs9j z|2OJTP-l)6%Ehms4lfxA$C+Pi*diKe7>hXpR7mI4pyRL5t2-T0Sr@6~22x^qDvzX75|Jk;)#5tvyx0Gzs7)ogHZb%A zkQ>+=G#E=&rjT3&#lZZk zv4JD33!aQWm-*n>h)MH?2J(Du?c%wEC3!Kal1~mDp$22@vwg>9Iu+CWir95-RJVBS zb`r;Pj`Z2^`zszCfg~AbKQ057qrY-C9gVpGAJ=W5!{?@8KgsQb;=iqcZ+`?r>$4eIec++ z0`!Yzk|4`R@IE7;B_kKSRR7C|!kDrJ6@`X0V|wtQ`;Qs{rucs6gBj-&APBS|{8s17 z1BYNd#Ct%TkF**Vq8g45L36`D)uI>RGppr;9-@X-i4!0lEc=U~`QY~tMd0&Z5E{k* z8Aw>~{f~iS*F%QFID%^pEbD!zHXsa0!e5`-XATU{n#z9*ks7E?N8haT^Q=rJOmbto zfBqtj&4@0*T!ub;P$%nqhEAf(p0IdCS+0x-HlN$JEW>EFwE2f%(`I*^GmFyeC>n5} zedZi`>yp=cFJZR`Ah@E$y)w>L4AT4T&!xwwtMrb{eJ(H`h=yB4F8_Vf<{u ze=P`QQgK~N^=5f$&c0(MersVb8@!zJqmH&3rc{5c8*c96ezpv47l{a=?2)*wsuQ4r z9}my?7kU_i4YCoIU1-4*z^)3ndD=)54@dn|r!xQ_M+Tx~fU4uXiS6bI{IM`r@1N?8 z>)-kdSAGGa*GEh-VSdCe0 zhT+O}>}MX!E7&h_bJ${{Nq$|fzLuJ8>wYqG)dNlIg-DYmaqFDH8SIqE1`^-Y z-KP=!fGYPbCgaSD%~6Voh+Z2bx^HgL=5~}8fpE9*uJ}5Ge7L5R?cbo>KOdO#X?9fM z**6qM1kuK@ri#-yZQ$Hb*7A4G`)c+6AoY0Bw8Xki#0ymI*6bx7^cmepkm*o)Rm6{d z9NxZF?;qYddPnS)27;VD$7*YR?4wc%T+ck+rmN(?6o348X3+mRZW(r6G;8VBskSD9 z`ciY()m-^=^V34BU)*dewQ}+g4}<8Lo$YxRXm7B!h2jgJQhb>22gC-9ZK_SCCv2$~ z;QC~Bq0v+3j{mT-M(!E^?~MM#fWi85qhs#@Hf}RQ`NMbIg{j`6#mXv`F1x7Raw2Ys z>HW5xsA#1!=jlQ`J07%~(<;#TI3M{prL*AM`s#M7j#Nih?;lL83DMm3UHj4G{}?pZ zJzn1w-aEIc@)Yq@Oqi4#$MqCBQm5|s;Ppo3n}C#!3F+?ZUS*Wnm<UBrXhh-~cBm4B*s2C~y`LX3#?2XBoFiFrm0A8jSVNQ;q)>$GYZuS%H4=Y zoUFfP@CZM*+IGCYz|jNywqpc_Z&1rY!MOGo6wuN{^*EVx;?Y`piJnJ^vtsgbSr*yF z=h4%=EbA-@W~>U%dz8mz=deaou$75|MKFip@xux#R_vSMM(=5|f$wu~%q7%yr9;NW z&fVk5VR_H8ke+`V*702-BY(_(=*_V4h!)CQ^vrbFu(#TZKg9BukLaH1hTZY&9R#tt zh2}IBfPJXse0I@W#R}ecs{>jtuu|PTsB-W@Lg8obafY1xMvyZ`_|u*OJ@#G!rd8Og zs^YsRg`XAjWi5%vM(FT!P}%SuQABWzj%eMJ8ypf*r}!q++ZtVai^)Ba&vzn`o$kC} z)v9KRt;tY}4nyVRsqM@Z$D4cOyUE9Eonw7t-z;VXV>r?p_swgWw~_%q2Y%K1w7c5* z&-@|Fx-;C+_#VsD7I`V@K#l$9Sm^IM#)5c#xl9%b2AhWS}# z#CAU25H%6Rx3HI(n+2MGFlbagE@QJu(j;eyd%?Y`KeNRAx_RIQO676W;})9FE_()c zR{V8Z%6oQ;RH>NSgNuj95$Xux!|TUwKlu^|3&p#XknJ*j8+=dQ?D*}CnOy>Q)i8AHeAob`FmFayh``~(@9(Z@qO@L62Rye@QRq2 zKlgG|;tw@w8KLZ$l)2OE8`TC~dwh5pFl^PS>{{E3vo|}omwk5a8Vid!=nEFZ8Mvt4 z(NI5c3vvB@Td$#Lp&J?x#DY$jNYtSq4*@ez)@!PK1sV%1vI+6d`-vR17`v>xalgWK zy8Qb^{2(Rul&P(emz6=6QqYYB3jwU~R5#UPkC`#<)<#~fE9cisf)!Pm8#Ai$&M%s> z0HUQyk1`&@(n}gMdE-2*!7Zgy-9v|mJur;T4D5^T9ZPhUzY$g&a{hjU zQ|p3Lkk*SX*@J*V=g$))wuenn%^Q>ah4A}~>f z{``WjeW<17nS2-$wCjP+>%_4|BtwNG)#Td8jiqy%dRfcNkNhHs$jcTu;$~#k9A8Mm z1ajiLO@Q5u^UFbWSmcrTXneuRjiHmXQUpVM zc^E^m_5+)nk5f1?4FVex8!d?Os zzi3HS$3HbJC!S|%Px{j)n*Y{WjaIhTn@`;i4Vdf;H6Ns z-rf;#u~6oy`B9Qi^kCF}u#jC79`qm|I}vBLXWLdLQBVB*VpgH-Vs6>1y<0|fGg}Yf z8^$-zX_yVU)@l#-Hf#x-FTFRXVZvLqf8=}V-o;yfzt*lVlyR$HU6_4AO#0+~avoN>azY-6a4Lo^G2G+ z^veP0AuWo-(uuchnoA@hM|ND9OKsl5T)Md=Ic5V%#DMZsr@?6&0~hQzvEQVX_t4O0 z?tdZQ^S`)t{6B9=*@QOoA3>K#=@Vx9%$CRld-?7c`3JnE1}sBL)9Upd4ixA+3#if; zDDTo_7c)rYdj`+&M>HEQi_|RziG>{BA}e^q1iytDe6WxwQ)3XwU;0 z8_&&8y`^P%f?gNlZO{?|8lY|nV>QY^^C0W<1}ueIzzzReyu2f7gE=DD|4&O5c;WkE zmR`(pn5LCr^b}iA*iQoL5Hc(-~^VOM}hC-7&uxbIGXaOkDzrc z8yvNH=a6_e@#^L*F>gG-d1??l7A2}sZcS-=A z(@|{yq8#EELVc$Q73zdLtD0)w0Ozz9BKq5M_3Cu`1>C8hds2{hQ)?QG!z5EW0h|WR z$VN|1ThhDu8`rQ!JE)ElkSqEbbYo?>S`6aID{IpHFJP^jyjB0EO7S-kwO{(|FwFD76Up@xO=(-xtUAZfoXtPECzaS|Y`Yk$!ev?P(-n7|#Gq9z5wHXRNB zC-Ng_#zD&yM421M>7B8?>Htb-xfvPmFLX5VG{qBtIN_b~AHhaRsO{xnBK#Z9r;We~ zPT6Q;FzsKD>|OO)#z*p0Gk_F1weuClfE_KjS8YJklrpqQ5*$E4@bU47@ZTUlrS3ft z;$PI24$$*M&Ha+Df@+38t%XI8e}fSujRmUvWB#f1i~Tl@x6cU>IXS-TQVBa|9uWDd(5VGBDc!~gp32s5 z%djeZtp!&L(pFp;$7zJx{FTb(KDEmx!|H;ur z=$%oA!>FDgLl@69)SRJ?!FiB&afIZs&@Dy}n8DOVyG1+M8R8;DtVYwzUrVyu%TJ;x zWVvz(G4{NV*FgV8k}I^-p7({X%^VoIWqsSk7JXZ(#F(uVQ%Z%{eS~&^1PSo0G?04HI*&2t4CB8OLi^CPb0Dc?$rjbi^@0`2LbvcgyGwa9xHEBu zitRHMk_2eDJC1!TxBZZ+Jw&7r%y&Vb55@n)71mhzug?Q=%UDCKns`ez?JT@@* zNa_-l|s~*E2Nve1a%tUStVj{2=;VhLvWxd2{TR3lC)V^IpN1cB|0lfI#)=?L>pDBNZHKWAmP_H+Z(S)ti@#-mtKydv~#nCDBRJ$N4BmWuS6rG zOK>;gnV-I{f(BrgtdsokVtRzeEEqVM;N1zYo`HpdBG>W?4Dr2$Xgbt)X2F#ME0tGT zG<1?9^+RsC_w*3Zar$I$ioJTm2u}d+Ms7wAtdKfS9ri#n_CR+k?7W>fvr;#hqX@?N z=C))q4Pb9E?d0`@F6huXsk=mh*+1ZIF!q8dD~rt`7X=p4jSF{rhMJ zt|Sz0YIy|U^tmt^l51asFY6Fpz zVJ!3y*w0rVEHyMEhbt`~;}IL{;dR_4`O!GKX?ma6o({6NF2-sU&362AS64cmDdv`1IEj!{)RP`=2V8UYJ2fdoGM?m-fv%v8o1YC4NZIPg$`h+ zj6k`&i`UV6)9L^U0d}+^5q1YpbuU-T1$?*f_>w%H*(;bAh4ScYnOB`NX+7!*TmXc} zn9L+x99Gtc_r~uWspI=7N6?z`j_Obj$q{X!4cIv6jFcE;pPSCXHf|<0H=GHA1a^))G=9E4< z@+&rMQ-(wwG{XuB$2!UbV(RQ#Dqq%`a`iaw&T~b6NS%S8~|rg9b$OmT0J(G&mrk% zz5Lt$Rp)u#XPwRhu}?1wMRaY;Ex8`|`Q-x$@-#BT7&YeN#U#7j=fis~=+_svqtfrY z*2-Cx2ASE+7e2s=7u(;Zwac{_^KE)`b$o30@@)dI$vbbLtW+k)gnbHvKHWEttAvB- zEjd)Dj+7;m$5|y@Q>@>bUf!&h`Z>$HTs1#Zh2XsFGcwKfeuH*TdSfLW+Mr1v({z}g z=R}VJ^XD|t>FaO59LgUrn+Qf~ihOt^ z;Dom-OM0VnO>5h^yDLM`H!bkhba!}=0I2JP_+nK&2k+k!+Rf_`GUF?%h>czneK5iM z31S!sKR-NQFPsUxZJ;A>Cz)Yl(5(Sbwbv}!A|*`}8Ogn}!Czy_j!uy0Vot=b`S$>+ zyRYiK+LqNAvu2p=jlhM(lzUa%u39QrarnUS61a)rj5D`H5}VF%E4kEs>I8qqNxc)0 zDcRwTyM*_5d$6( zJ@AB=wP?uDs2cQvX@9nm0Z&FG4{q_&K)A*Zc*Ku|Tl~no_dd1%Cm8#m>8eI)XA8*n zj1TAoU(l?I@^&xaE6EyQ@I@?vEkw0lD(6#9TbG>+n4BO5er0DG1|BwM$=c~VHkepw zEgUGXo=yqNr}*q^0%#!VvQjeg=M*XBb~9Z@R4q*q(Fv3c>0k~7YtX(JB>awmU$Pf7 znhq;{-j?O8s-99G4`(I595~&oYs7NSmjjcc$r^^OOT0V~5&ZgsR<-V3IaW{?`DEx$ z`+mt5G8wNPui~l#E6fCSb~}hbjl7*p_0d4@ClDz8k-)`+bCN-cjMu&4HHg_BSbhN4 zaTd;h!&&F!+l{V*!fbQoOV`}75y8&)^_PqvXGpIv{F68+iFmsOoE+-7onC&bmv=%G-t8F%3WI;f$0S$!+69Bn0+ zATPQcW9bJRF7J69=jQc`odD7G0-Ht=(+^u@z|!06 z0*1#reFqCS-J6)Z8wI(i=Dr_lP6Z169LEd`sGYyZbya(#=FZEU19kTK#ZN8gqDf{r z7Ni!ob1;`+in7pPMb^YA1cs_PofPZ-+K2MX7L%NG(d$CawC_c&y|3e*jAgq~eliRk zon(oHaAZhMsGS8AF%U*J0K$qdzpV?2Te7>tp3A6^^$dN!?y$G+u)mT@Pp=1Bm0@yK zopDt~S*Y6&(Bq|u8wA&c9l_dOZfhoN4c^a+UkFNguP-6i6dEWs-MOT6BsV1kA;c2Pw-@0pGX z;NmIuB{({@pJZf2Y}$QdCx=BBIvUrPozH5-S$G+YmCZ&~aLRInr?|n^!bc`CNazT7 z7=y>S?`~dPm#Frqkz_!$>B4QEPA(8&l;hY(9&#i>#Hwc;Ydxs zB(EjqC|>{(?L60A!Z(AhH@OG!a_r_(mCqF9_0YmXcpz#`NN)JI`2?080_*4b))x+H z@@69UbJi893i9R!cII=sYw~o${#Scn9uMXB_dR12l_er%8GUVu>|`G;LWL|PyT~3w zc4kCTvXxTVMj=s1_MPk%!`R9;cA;S=%M3H7=TLp`@9%l;`+hxtJooeb@!WsZ>vdhO z`J8h;pL4EruJd`n-{;=OTsVuX5-P1fe118-AKP*Xn!FBHyL3sSV2PvN;O5yES zBWG-7D}k65(6ESTdjPRdN|E2W{&hE#endwBKTW}bt&$_w%|l@0=PPN*% zt?c}N7}Cn|oV2Y&#^y2O;P=3Tl7QXaxcnZs6B4WKEKMP`ozwtY3OSyHP3<0?d#qv;4T{s-EmS*P2|HoD0v`tk`+RpA z__Fbsq-u(PpZmgLTkiLp`@x`Zpp?p z0K&o%Nod!xQJqh#M!Q9vdg9#&3~4cR)o3iJW3<5{P=Q z9hYmDyocW0uG9YZCG0!^71+22z;{|*^V^lZ4|{sMq*i>lK(LA1E4z-!K0=q`Ph0{n z%--!eFB`=aYObQ#a<5knKd9Ui`;5b;l2f!`{^BaR*Rk`lw8sz}@M(X*`OvKOJQAO& zysXQ8%~Ghek-kvCc`Ga+q|wb7zx2GBnJjrzMqDX&NPF^)VtKiTf%cx~F_tjQ@sqk> zf7Uq%qUSi-AxRX?d}SGl#fmn7zkbVX+nP4P)*rG7~=ydpq8E*B*`uUh(s4vBdL_=Pu zexrQ_g9iN^p_;2LD22KKx*O*6&XXq_R#(O5O~2)49tLzQuwgd|*lM=;)RoPxr?jp7 zTgG(r8(k|@YUgI}KMI3X{kgdHw=I*G;s0V7_sekR0rc-ebbcEeP(Ai9M$@)m8FuIO zYH=aTy-@RWhTRGHRNUrf(rW&#OM9B$;#fC>lW1F6zgx1H&au-f3JnQ%uID)C<%_P1rs?^3cT_P|B9yQTfxyeS)tzsodm!4p4)FtcS#P^22!xAubKv}r2U>UC3h+d~!)E+4 zBOI9hQ^+50j}F7!>z7MZ?FHO!oUI!{|5Amq}5kHA@1WSfbRA) zj?uED4ee}|MpGA1zoQ2td04nAes#94EQ*L&$PY)!b~(Bs`4T!q(lyej6Sh5SBjvPL z+Q)6Z&D0!<2D2la%b$qckI_Z@MPFN3+sJ#zhxFlssVGB3u!l+`7lr~jtETi-jy{pL zGvebqu4e?c24_r4bEksd%C?2f52a|)Pg)MAiZf+AUalg&Ue;Mo7z`JF8QzF~I=9us z%~A?UttuRLJUkd2x?hHUk8sGlQQY%FiN9(rUtahF|FjPm{LfG!{}Ec`|MY#&oFkaY zrOal{Gi^)jv+`R7K7NDad@e^a)Fi>CWy5P!x{o<0FT^wev1mA$-SIkCr21U_5C8^F8Ek z;Pi*PlIqq4fqCjGQYDOZmX;i)hl0G5F^?}e=Mo-n_r|Fe9dY{!;c2+8Z`+0x>ldje zJ_Sr~r)r&hffUPj@mR&GM92kkf0PZ!t&U9ACuRmUk4WFWhr3CspY2DFt{!;flj@z0 ziw5GZ7FJfBe`$M3zW*!PQCmfOteLY(&|i_XoLMd)K>nIf!@|E}lUuIOz?%i4nK`@WWZQ8r6+lxMKjwg!Z z@A&@cVQBFmEU__2v}`@mQbcmNujkw3$w6m8mx8A$h6)VO7|1{%jZj{E+`7xeezM7mwr{ak)pAqvOMTt0|E{B`7wy4sv{`hfpn4}iU*uxz8+u~ij_V7TujVm( zvR}&Ott~%J^}V~+1qt;-Wx54hm!-EZrv^EDgsfWXt4rONncg;$19ZP2^4+K=n%$*3JA&!O^c_(ueX59? zS=HT;Z86x2{S;?&*12m*qfdTn?bv7EcCWiBo(PFV;|6 zPBDF0l&-QpY8UYnqNJ994VM8S{kk-XYYh{#FuW_EI^ZXL$kpH2HjcIBi1XL+4GtbJ z(X+x_Je1014elY#F!I6c#Xiechukq6JvEOwkI5kO?yi<&Mi`h-1}n3zPAG!>f{?J` zrHZ?!&Xyk-2{eI{KUiAJ&Cxzc@Jj4Wihkbytow7-x4oL4XwAt1R}@#MAt7mlncz2n zXI)$&-FUT?s~l^qeMI3t7e**Q*`&gE&y3xKLoNsO$CcE{ZA0_w5Nm{fZ9R|^s=czY zy!@bX^mK&sXx&W}%79lBjia7e6tmVv_d$%}xc>Rd(zCCh9mlksF3A@MFt<4KMybYZ zc}+{V!VgjD$=-zAW*XywV-KQ&ieQZ?3$t%$8(lPeYWe(5{ND4gv}}ULFk_rOpb=Yj z-B}csP}6sn9t^EW#Yfg+E%I0Mo3^v~xQfp@`d#AK45tgEanQasGJLWP$CSyf1)7tV;cZU^5>$qWw z?(t+XiV2xC<%K_x>tZ8bLmMF^JdhqaUqdMS_-0tg5rkShK3 zfYx;c-g0k!Ut!s&+a6(gF4LZ$G&E;APUMQMgi<&F-saH5Uj3k=#+9fNsx7%>62;ge zBD-jo$KTf+PHfCB?XH^Ev{3UM-B0Oejjop^qVcT6y(8v*Yn4czzzV&jW~EpB_T85& zB7}_`R2$!Wi3Qr{#pb2oYjc6EI;rW+M(G*zT#r}WGj{3DrI!5i?`-`7l`nZE9z1sa zE5iJ*)A`*o`}4$R=_77_74%p{Mb&4Lxh9uz`$7+IzgDn5eQ3`{`ZW(%KRArN)m!eP ze9y!@`t&o!uc`q+8^%OHRMJ(`GYTOela)bP6xMvGf#6)L6 z3C=M^{9>g<$wO8;blQJ)x(GR*E@7{vPo9Q{l=-1bQBAxEI`UBSuwkUa*tso8QACG832PlNul$cK6#l}5`S4=5afIXDIrJ3AO! zE-rO;@ExXnDut+Mpsc^FpeNr{XFPcQt-)FK?%l3OhTIvVRrgwo1T+aJ;+nm>Dnskn zw|GJ(P%I0$a$K86Xlt%(9~sq*A|!sj5WuTZS3t2mlR9{r;pP=5e`T+<70MUI`6CG} z%+lsSXO-(L`93jAn;a)H8)@w#TTnJ)HSDH)KxbAV@m0?ZzEPRmKt%;YrhRG-uFnZ! zPJi_z$S+6|;S$en=kK3DPCLg@Wi*sK<^GbaPbj%et|KyBBxF3hGPwA|OQg`#-j@R| zdMYd{c4Et{4-hk=+og|$N)f~w>*PPE_K)*LdC@Nflwj=h9~lZpyJacKneIVId9TjI z-nNMjnTj(!w_U3#Q20DR^f_znnzbq*DV3Fc&w8PSZ~4q|=Qv~R6PU8bdo%T$7EbAYZ*8<)9b7fGXKHmkJa~dE zX>^%M=#2ogVMIx8oFax7IYJXkwI1*+3wnEFJw(D)YDUWLwt)4+SHZ_RCxTO^)(qJf z5wHda>jNzrEY%)DE#opo`i<)NVoykA3?t_Ut%TUuYF93(kuW$;R<0YjwSdrA}&$Dp!QZ}Le zKqW!bV#E5(v{M~%#f0pdgCpB~YPCJ6kVIoyYF_h<GOm8s04KOtB89g5!- zSJu@hPN`W24x7Wj<;xk`>yy`#uzr7$kWWx_q^~&3HZX4;q%$;+w@&Q z(kb?|Wgp*|ypZVv_lb({=m{KKpvC6fP<Ka$6+BF-V5zXv8! z+6CbfhOXYOz9OZB+LLSz$%Kym9R(e;x(o=3(E2XS`4Z8{d~H`>|1G~!|MKNxjKpcm zwZ!RJCqXDFe7)#ZZAj4=)oJ@#C>Igd%2z zn=|)@3wLC`;~2Ki?13h_m)647f3cpQwAqx#Esx%a9FiN%KywFGJisOf%9I>KPt1cse#gKHPqJK)6S>(V#c z>7j6PKiz%1WJTw=@ck@Yb1+y0DCDrF`fy-P(}n;8A^Oe>f>?xP(UI-aZ$-j2m9^DE zd-Y}?UhZr|1yl&#Y~nQ&&}@`x;^DIsh~$@Dh#yaX4cRlyv1hHFAE=Q7V&gH`7r%tz zlcs|xr>;Yje93fb*3!l&o3C&&KQCy$xU?_9X@B(NM9N0o!%0`9AQG!u(PDcWNl*6m zb}}AmX6oL0I()Xl10qwwy`LUwYS5t>FqRg}cZ4{WkGd1)eZD=!)9ZOdZIFhq)}D~u zRv-~~1v6z+H;Lw1s6V91O@5HuNk4=Xj5Klu%vy(iYzGsKZkoa$^G&D45US<7gW*Pi ziNl&Zv{6N{2z)?0luee-l5XXno2J-OjJ*K)yIi0GVb`txnL6UzfWp)SD6S%F3UGm` zmJI{z5>Yk%UWEdSQvoo!^Z2S%*zHHb(A&eWoe>uu_#2J`Q7zKSei~Nu(9_9)XevLE zb@E9=JXf=g*M{~?@aI8hdLK3+$yA1JImlMXKm!Nu>yi2#;)O;{fO$QU8|b$3A?2dQ zdDqt#7sRugqYv<$b-b6Iqh;JAo4z?$4`6DDLR7k-wo!N{)1!0BD#GZ`8DSwk480ZT zQd|V}L=HKeszf&Qn($(CA2e|d2u>UBCw<@z@}85FtV)0GxWf2zNhZvZE@IKq>^FJZg-lyhYGsHUc z*BygZlS_!K=ZND4b{YHx|K}6wT>5wM9v+fkI#rlj9~i2oW6SlL@I7__Ul#on!p#s~ z&k2&=?%zKAgwPHt-+1XhS1B8o*!V+PRGx?3YZWqgwoRhzc4IqXnl}V#dXMg)sfUmt z+lVlFP9Gv=aH_N8n{OX=hUVNql(U59L6p(xfZ+HGta?=MdXOIiFLcwgdz?E6shc1K zjqa+h#U_CxeHwWtZmP7Q5;IwE5uEXdGA~Sk?*{}s70TMeFMpav!F;OU>0Ncj{rHRe z!gialSx-^bfm~xZ)ewA%z70K1Oo&@q3g?b*{$sPquI}0`CDZ7u*8_%!GMG7UY zI>h|I!klk1?HfJAG(*9X9FmeL?TC=2B`tv!B4Xot8S!K*iZxW1@br#OM6J84nys6e z?J)aT4)ycHm&j%9%keV#6SpHmyM1q4;s}G|?1YV6zbOnORkTlCktnxtUC#Zz8y4e1 zk9Ge1h}T>u-%`x(n+9_zmIE3aS~XTt9ykvV&oMSxE)iTa))IKeUp&%R1_?$!AilST zPXxqLVcxGaW-^5PC;Dx#KKj*%(V@RDM(g+i!vi!C9M-_#1e zIXN3-bLI1`O)5rS;7gGL$cr$^PP|(TCQu`vVS?pHIgo4MFC9OfpGRu8TC(C_vKFf>Y^o$}UoU7YwO_H`CL}r?ItiFRf_7^~CVE9mQI4N5~l{x{=X9hqiJ(ha$4|`eDcP0nUrXU3}+z zi`)G1_7_yflJ!e#%_s(eHnx#8DYD1JPe{}y@|n|v^JSH*Z6zoA^MsAxzP&Cd#5MXl zlj*e;NNxo-17;!VhO=UZL)2@1kRcZAR*_#9DR=H)p+6n*fzeW&LIs3 z7^{x3s`P!K{_7P=#d?xHnjYol<;muO^Kb zYx9EhqqhJvb^*sjQ-D86)`XSQ+EsN44bdKJbV#f-#qg1g6HmPQb%6)<)wYLd{ZF?l z+Pq+)XZvm)Tce=&e;K}dBB!`myi0NG@P@NiI(N$ggIK*|5SxA90t|ZZ%+mX-k zX}!>F@??7|oRKUCvfSfxgjfMJg7w(^#+~5Mr;om3oP8@?lf@mb+`4%Eh6MU)k(ed| z{nYF1{0uzcmFlg9Q^FCfN9ze1yo+iy1?aMk*mj z7fM~9uL^Z9n|8Da394*fzQ@gpBcnFD2|AJWM|GyrtkgrrCB)04*seU=u0licC$mh# zO5YZZ#q39`^EUNt=IRX?ToL0_mlc)7Gk@#+g>A>P2LzjL+_SCDoq7D?QJHA?^ z9Rgs=tfufM3-tlcp2z>h2V8R^Z>(ydj3&2 z*1Ux+H8=J%V2pfkW*gH<9)`{fE`Kq+a)TVmJr;j5>^q7}WgZ~Xy~g<(y2C7!wzdFk z0Sxq^R+3lykM!`J zJ2;I0eI);hZrpc%6T~h`Uz$90G|`_jWbF^_@iQcWZJXZvR)Nss5l*H(!bjqL_HVmc z?T@;t{$9tbhyL;1d)b{iK!MW7y{!7rim72jBBl`gzi$2h=K%Wudf+}g;bG7~0?V}o1~FPtQN_DL(Hctn6+9Efppns`eVbxPRDh<}e4*LLjkm9IhU}(y1QPHM zaGT`dcgL1D5YMs#im9zOzY-zQzw$o<;s5=Y|Mme5`QJYH&wU^cGo5}a z!SIWfa>O<_c*`cfwmV67Q~3!Qpeafn2Z*SF9{OiIts*@0K+P3E*dR4={zIr>>8)uv z?ZNpeiHaJ^pLEy-^aFdMQN4ne7dp zdG@^zABxLqEg#N-gy<7$ntR-S1d(u1biJ4984VI4@`}n`X(q7iR9NKWJt|W@Jj)_r_dl0NAq*g?p6#Rrt zZ`=7BbCJ-ZH&uro+!X`5zTwUR(@i4)sG$uFfR#QKoS~;Du7vxNjoKz^q7gDpof3=L z-r%H00r?+E@l_(;3tuvjPrlIv$@1Qrp{#`5mZ*O0)JO~0kkSRaL{1m_vxPq)GHC*) z8=0&CMi`O3th{b4^Og2(X0pDt^#95kHY2!Ah+Aa&mmO9e>V6?YwC2FdCIrl5IzZZu zz4AN7RECemZ72BsZop=AaxW*bnT6WPAfm%rwyGUP537T z9N`f-SU~aWK1Nr4jlYmsOy0*i+@dd8It-IBFkC+m58EsTq z5CUQP5M;Ox1)-SR(oxII`knM@lzQS&AsTUi8BiYddYR|Zb97n$wx9OP)lN9Wxbwv%X57kix+a)jE4<4(n#4exS6vAkK5!nlWSPrG?yqS|>H6xc%l=P?2^i;&) zIs#@+l_W+LOubf@e!UQU^(W+XW&HeJwP(|2e)kHMz6-D4$k?NwO+7;nnkX91YDP1M zY7k1Ai(b0Wgv+re7L|H?-wzd!(w`LdyTNIG+e3|KE>KH$%M2moJ1 z>ZjfWHn#>FKe%ZdiA(abQDL0-E}9)?3wq{LJ627p;(IAVqN7m4>(o^~< zy_zrs+|^n_Sp8$iA6{qkG19{&#V_UPaL1E9wT_!#f&>Ua>ibF?;t^%7bH&%I3sXIE z7mcmH@Gzm=E`PbOlnqz-@oM^7GjLWFVnxteaN?>AR%hN8CO3Vfux<2wMxrSB^wb@ z6Qt%YSnIgNpgMD2peD}=$G%(m6NMA~CjM7+Hxly{p3j||mOIIp(nGAkt4%V)r-wcm z3IzT&JV(+apusoY{k1p5^1v+9%9yL9TT()3&&j51H8~K61ptrJWCIe31EKO$(ow@) zkyIW9LxG2dE=rHe-`Fp{^%&RV9PLWaihDMnHdGiYM`rK?$>xoVEUsYG`sk&BPrQ1F=7krd3vEke#**_4Z-wL?3b)v05Bp`57PPxj^5 zca2;p-N@eDV!Sejp}p=Dy^2Tx9m7NkzzNAEAr8~5%u5v(>7zz%9nXS9WEpNuHcL#z z-;sx`CqC+6iPGPXa!yB6NFO2^G zswsMR>gE44_42hd#}9k~;I$5zDL6$2%)d|C4;oSinD&f{mmG9xW9H^~6q^euWphtC z#u`mJ>B4!EV$FR2xx(NT;v5@=iqxfj^m#wrGO=|tGojfvlM!rgzdHnTv0~1g_f%fW zcnpnfhZ_K4JxKA<+bYaM8npU4!?`ehe&0uW8l7`MwRZktQe;}}I;N;-ZMx@DkZ>Z4 zo-kXJ@<`u8`-H|Gj!SfQ4&2jygw|uq5ENrK*ZZ0I+am<9gRaViVmUQ3BJ`sDyxdLb z3`_V1zCD)#ZlDT26a~2#+H))Vut_eB+!MF>qkH^wjkFF_rd^-s7E+&PKy*La6=L5J zWB)Jx2bFG^u^C_uEB+;D2(|K`P9qhz8y{6yLmEOq>uPj(bZwb&)xTJT<%`dZ323bt z_lerY=oqCytg{rxUB9TTY#OtVmqPH7*lG-mHUAks_tWye?)7KSw0(;YZ2~!f&Q>3D zMf>gzceQ7pfB7UGW#SGA2@n|j1}ji!f<01A(iX|caWA}GmW(BlGkwc!0Y3z(sIZY_ z$u4rg4?b=T1t;M69519dHEJgf(Y9=fSqUpe+iMNe7wKY@X@F&kyFgR$-d+b7!KYLp zO&gD>Zy*7zT^t`O47HL2#xmsCpP%T!aki8NR2%5f(-g2J5hhLU{cRN-zWLwQ{y+1Z zAaBD1IGDfVASYn+j*Qt!!>^*+rY0PP)KImkj{M-LIp&;K zYJa_C4V$oqTjE6^xWrE%E5k+L>L&7ZXnE@B87VWjNV&deL0t_{B8) ztmg@jk)=@4X@IR?%bX0Edu#`IilsI8+snA;0L8BJ#>_H9o~Pbc#yS#X-q6>0nB;pl zlFZqS`;_CHp)HLV=YUqKI~TB2ETbkQXn?D)?}y&}2|-b2Q6Gv=Nnn$lD>IoJ$oh&! zf9^gG#8{l@q9l;_1G<~TL7DM>T{#z+GwqOuJAz09s(v5AeIRg@(hGprBrtf)s1lq8 zHi<~QkBS1c0xUxdOTfBw1<1jJV*$YBtFpf@uLwf?UWO};w59YcA*X3{4U+}}@`HO3 zQ+D%1Gd76xA95qhuErM(hASZ^6$TsTw}G186QE~kGOgi)`a}UkR)WSEUAh%xrWW=M z7C<|s??6N0Xq&c#S7@Fk>y@#cMsh|QUIy=vBM`6>ztd*{pr^lTc??_*ng4w$!JQ?2 z`PIawy+WEK1w>Ma2PI?bM3-`30+8ch77gXA6yKa@X2-<&) z2-u&qf2!Bwr-ob?9Mj^>Z3}MVb7Mu5%&6kIZ7IDA$lw05j}jzO^F9d#^Ih884tzI6 z1z^qX9U(ocXmvMg`fp2s#(I)9cD<0a+(6(2EjRpUXo~lmy~tHK%M<~aS%E!!G5@n6 z%pa>)A9D(MebVA}*md;pI{a&$o7LBI#?aNWTD&O2^Cff42+oW0hQ<*IYP}Oz_-^TK zG^R^h3eflJuAm3~il|A$r2Ic3(;}YnDoHf_Bnre!`6t8>sY(S_dO^IDm{)(tYv;6= zw2a+8r0@0Hx#0EsFTvnt*e?1A7{pM}S^n99jDcE(bAf032wI>9bhJY*tvs9F!{JH^ zaf(^kKVCBe#Q`0K-~HnrBft2SaHXAkf{qCPRqbDPoV`YHVlRdpCa(s~Jx+tDu{_@G zuo*k?-yIUE|5Ja}?CbNB3s(Xwb;Uu{-`x=e#Sgv3s0X^ZH2I1Y#@k@Of6v|y;;T|s z+-_9QhdLLqZlZQgzQbs^g7fsg{%&yQ9W)6f=|B%EeBb`y_xRyb=!XJwKsET;q1Io` z;6M{n+-+C?3^)fC-Wbom#bdBrWQ@6WGv!pb8XlY<0*qoTFjUlTsaG2(&u=J<@~v|~ zt3W$;duTg#59-5Cs|rgJ$bZKD)hDFv#!TjtX?+*J20x(IP(;2I>bg^7Uoh|565cxA z+nV1VcNsp_3IR;_53U6$%$>0kjU}Xp}#rGVKvD)tsxk$=n1o_hO z*!6bgW1|H;Hk|WWg^3C7V}QrL?@tg7hga2!%N%P}qYLNN@yo^Y%8$ooeTMN}g8As2Nyw3!PMb?T503GH zdiU(t@=ft~m5qTgG88a8jPKW31@CBhN?*Wk}C4lsfbdWB+gd)8O2q+*RMNpa|U3v?MfD}P` zlim_ah!Da=-}n96%)R&f-}&x5Gtb-u`?N?zgh+;AE>CS09aU9 zfEwlxxLN@elmna{06<-x7a#-x01I%A#l@Tf;07lBImPIAV*c?6@$hhQ@rVfs@CiwYNl8hFNl3`ZuThebQ<0O9P|{LTU8km@ zp&_N9qo<{&zeY_%{VNkJ9Lzhoctm)3MAT#?WYquVq8yDwStuarBV(tUDRCw2J-c`iE zu4_YZ%Zpk#BJDLH`@IicGz|hFp#MIW#-oeqy*~RCHub+QFU{KW4=$P2J_=NO~=b2gAFJ9&p6_=F0DJy^b zuJ&VHeM4hYb4zzmZ(l!jVDR(!#N@ZB>F+bME30ci);Bh{ws+u1$0w(VGvv?nUvgmq zIDd%sH_84*E-H*%*tobjxCFoC!ov2)BpfPSyqkCNuPN#h*mzyPB^*IWeJ}0xhb|&^ z5j_~qBkwU{S`N__PWUg;eoOZ62^RT3CE4Eu`@3AT04WX@rtxs701$v0FG}Dgx$f(t zbvAMN?F#tHCy_9odsuc+aRn6WD17EFsw6pw#GYDM-p=aLY;8|A=5ckpp+E#><(97} zL%$3x1^-x_9d;BTIy$hudl%;|@pmrP2Zy4r7r7Ks(n(p3!gCsz)lpw!RFbZM3af(x z7g@0i^MHx&uv_C|CM9jIB*FjDBm9xU1o^=l$KAddKa99-Px@R5`lDhup=C ziCF2tC|9Ww*)y<*<&ybHztpIvf6cv*usZR4UU+_iM{p>vbXczMEm0r0z(}{BcGmd% zo0(NNuK>cYNZHZ#oqXd-NP8}N`bW?eFnR~l`EfB^_9K%+wsXH{C{mI&8C+)4URrKu zTEXqSZfx*kMUji?g8X!8CyWy2ms>f!vYUJP0BRWTS9Lkwo3(!%>!N8X1=6O#;;ucG z)t%(XvCQHHt+AXbr1Xg-my}VHJty@=@lDE-wlgKJoF&N5=0w<2l595EF>`vxT$|bL z-(QMx&7DMv*`e`1PS?%2n~ZPoyBEFc*~86BjsfO6Nlw{!73gn>r~0pw>G8{e6Za)* zf0W#O&ID+ybKq^yCzL>~2RrFUGywVVjL{X#=H)AZY&O6aiYAG$G!Y|7RCli)SHWX< zO#XZ;$qOpG(R4@>;LyGMpnbajQ~b&Vzdhw0KQrat2}(vnvuH-`gI99MLh^^6yvCFR z`2IY&tdA2+cSCenUWq;7v!Zl*Xg*}au`y*VIHT1oVk?Okz?R~ZWW=d}N3HuGNwjsB zw=Rs*()&NJo<763@wl$0AM_00#Z9TFr6H3j>rA7qE)FuJzW<8un2q=#jI7Jo-($6@ z(xUiNhSrn#r@8dk&$LlVwr%dtH$ZW%QY$sr%mY%6G53tNn|vzD@02J_?w$% zDHxzDn$sx3QWKNy9E_$GmSWuxaE0&hz4am~AL3!>CSpp>E-MAR8G!4}o=kd{@;~#T9AG{0k2$I&e$N;axA2?CRpzrQ9Jo@1z^TEjH``g7<2S?c=E zHK)?bfy7=gmzoMfDIhuIUn6f`qZGB%Y`K|2xJF-S?YO=+5m7LJb*@8DIJin;A<<=t zn?P|~(${aaRt#=(-QS$}GWi7HzoW2sbU^zIKDNQ#kH5w9b%zS^` zn%2DrdT`{`#Wl~e(BhMXuAetSDU9tM+D@*)GK*ZPLg2&9LzN_K7s)^Jk_6xQ94auT zTbY@l6p`_W#JIw1&eQMv?K~w0k3x!MSYK>%m9-fGcbpW#D4yI;{W^Y1OZz z->!r{xKHc9`>HE~<%!^iHS3wu@x+fBNmBi@exGm^&@Hkjv#d#MFm$}Xhw~e(3X6M) z{db}>JdE$}(8@K90Op%-LY;7mU`q*Ar&h`874u-Swvvo5IHPRIy0rMl=NDMW$t!?d z*1(G*T8x=a^V{;+X=XE>-@gC)JIzl95A3@b*8HbaGS`u7xQ>Nu%=iSJ!4663cfWfR z;5u$87E&m}(N(KFCo*PQkY2;=ak);PH*(v_?6Z>4L99az6R3q^X)% z$^fz6J$v)jN5Q>0z+sh}HGDKev`w63*VWBR zHOo#-z@CaE?uQ!`uW7_N=fto@^{MD6u~NCoqKkyY#`*qQ(?e4Jk3;&xj_!V^XVs*~ zT@1jwrveF*(%E0ac5oJK)he?ldC844eY*p8dXTe-Z8qoS>;|MW+m!Zd1s;pse7t6h z57PFOwh7@}4ZUZDW3tu4^3k<)H|WU`PeYSaXG?Of=XX1LPIWm7x!nOzkx_Q3ExEfB z^p`vVUG(%Lp1`FyIfPV)pd=tsr**R44SS-`k|%NlBs9o{2)Z}y(8*j<%ZBMt=)=d; zinxt@9-(xJzR6rBFqGj4|H1vQL$b-KX~p(G8y%~cAvfS&{R#}Ddf&Uw!|`zQHs2EP zr3awm3b6}tDn2t*FZ5ci3DOS!Oau<>hqZldTP5G62Dz9~`Q=9jBaW6P{rCX%l zd9ewaPUwR(j8m;NjIH^nEZx%BloXNiWrGkhca++x-bo95&0%k%G9v^Y5y_*voJY+; z$e(`=92}Gr)($w=!BVEy!5+KaM=Iz3Y!3M%aS5anI;hp4=vljKg*cU zk8I#aNhkPg-L$=&{Hbj4V$WweYM$b4p8&-fc-`VjkbQ{~2{sk_`+~;hE7vPP{wrju z^a>yj8~t*}>nF?7t3RHL{my>{Y(BL*>*GTB)}SsFuYj;@6wd`n=)-{Z74QVD{}S`8 zAM4Ci$MHVF<+&BC^a8H~1xrLDi)VgDr+^49%8rVEovJ%7q^HrLg;zj_2AUe;Xo|78 z>R8XVA>FBt8?=(BRF9GD-_P~z(Ov<^-GUdZ8UOf3@c)a8lwqGcF6}~ZqblD2C4C8c zr2YyhZ~`5UV-`Ucj8?trK?|VF+p3M57P0@R%djqwD?s+v70}L&2(z(G{gqGo@62lc zDUW~9@gJ)F|9YV*0|?Z%C!__!yC?rQ9q@oYRzWsrDK1VrR#ZP8lQ6~n>aXf)`#+~` z{;8u{y*I=3Ai|Er1i6A2#%r)&`3U_w?Op-@ki|b}`VaN~Ckw5W>yXAG=vW{216em> z%pEGo5)D&}R%P2GoXgRy0&e3UTUB#4WKU%ZGq^5N$3HkkY6NO}^Qi7o1dV*TBb-1` zrnIem^B=8clD|&|hDinRO)vBgWXt!}Lu+E!(9gbio6Pli*S3lJ_-`^4rnzd{9^Zt* zeoqY_xSshPES(t@vd&jvlLjZ;J>b>E=%*14xpCJ6z4R01gf07D_*Slr2J&EB>w>`h zKHoGmc>JZkGueK3FKMpYh}!mP^&814YJCM7y7yJLYMS;a`=8w&_* z`Hz2A@^z;9p~aM#>G36$OiLN?mX3a!6I@&H(&|9Y5ZYATeK01-=CmX!M{yRGIi!Uv z^kA&X^Rt)9pxL9xim6^Ia((KF5Co>*tf^q;wYe(*lm`VM>s9fzm6w>wL1lRfCwj=mj3No;$9m&j}{41VX8P^3Z;Q zjew$X%q>ikr6kgU7CI1vH-GA36ZJ293VZrn2f-CcFpJEuh30>dtkVJ90!^lrww6=+ zLhJOrMZ+}>B~Cz+pr-C6g&fs1g+>Y zRXk^_Kp5gWZs&9kiz0}*4^u9orPQR{7_;64gi+>JEM_gN+!@P2%N~Fhz?bA7%dz|> z%-$B~s90mk*8>7O5)YjU3EZpH|1|FHrt0Qv3lP88L9FM$4X*F343Vd_}vNn^bzB+`L zJjeNI^o^CMV>v%e7MZqk;pS@CQ3reV>NAmBVO#vhrzdPQ4ynm635qG_pZstfxB?s? zL~{X4Ynu^ut^?y{QofR9`3y$hvR>Ek-fK^~?u@Xtx)15nM1{WXNDYx$Mpknssy0rj zl)x%%?DN$*QZu*wDsA0;(C<$M2MBUQJTGHfJzz#X$GbyvW$|^4A&l{LCw5ui)H?%j zu^()0VTdh3rb?}! zEkO;TPH4s7UF^mYk(A}0+w}c14PtLWv04yYU%-My9BF{@wlzPq#eaF^!}Lh~hd&M< zJ?`ajO%_OEKo~DIa|8>>yPoIRF)=MaNv?1zhc67SS+@!cFk6n@o4L?*o?T3XP4DM3 zz-jYx$Bpts$ALLLy$l(Gq&z!R^`~qff%VaZurF6Ytq)2U30<`!L%v=AI3de@NL$7H zk#gbzXTVxKQ_{N+$%As9(mDh=VWX_1mF;&!tiOh^mRrsno4VY#4^FiB^tI&LK%x6` z$mhaKS5-tF5@Z7tS*;q47TvvQ)1KmUa;FU*fBmB6z}geQ*|l;B;T#7!lCaM5X^+d| zdWbGDItiOAUso3EZOE=s*p(ehvEL>-+opMhTTT@vBHwW z#^tZU#B<+CBmH|fOsYHtIs>bU;%{g?e{?tdzD`$)NON!=a3`cl1h_$Yxdz2i-i;R2R%DJimrVj8!EbaRp_xNRl@hvh}veZTvdfW}-wp1Tr zLo;wPM-`Kfw|DoEoBXWFoND)}04ssaIr2c;eqA9K!Q&-oZd%XfO!dOYXHZQDO%LpKK{mtmdzysB()=yd)oXH|}f5h4Nt zSp@xI0lLwWZ~JhL0HI%x6kELlC_18^p535}Tc~ooWAUZdY(zXd+KQ=|P6w38yC5X8 zE8Vzv2xCQ9!yICkXs34jSU4xU3?s*#d+j4wAel^H7WP!npCt}bG9PBcKfolVEP6N< zalBDOKU0VhyNWVCpGfMK57;2*7<>PG7g2hd8N#))6mt&g^N5}nUI@@$p{nN3R}xBK zc+Z|Aks&~R*WhmRBNFnUw4HN`z1J{t=(1pBtIuj(w&K%map|nL<@_hhnjB9>)Ar{- z7pdA5@Y94}L~xU^;v-o*a}Ik`slOwAdKw6Hr#uo#g01e}609d_6woK-ZSYoAdWcd$ zdaQz?^EpCs`fhklh}p$Ey4u|Fp<;aUxc>`?y!{)ZVDD!jjCLAP;R?oeZuGydT^=G6 z>@tz4mO8^pcTZ6yR!YaK*>1hL&j!;C?ybWFKCU%Av5--k+(Z_O%<{D1*4H(xGwTVx zxhIjuH=3=$O0~ApwU#ayxP>qC1AbaeuLBKVdXk@1}2`9aoYG2f4F#GZ2)Y&qGDQr3l#kbNC2O(K+YKAp* za2W17T>P*euio`nCyqJ#?&z(ij$1g$5ssIdaU`tT1Ryw0FcTIyAQ7SYwGJ|KYi_kS zXc#q{*D&?*70AwENqD}JtLT80@A_yEg5Lw-jik5`K}n9^M%Lghep+SLc;d#{*1NK( zlzP`%?UjPsnV^6%swZK;!zomvXVz+u$lqhdb#oFW%3sMbaj-cU$UlqVG7NjVEHuEz zw3&bn-7xs)E#!Y2ur-+|4)i7QjrShr<$WWpK0trzQtym3-t4;}Imo)5#v-RtgVf=w zeC&T0sbQGKD)!iF=u}1#6+isQWsz0YC|0L-mI5p+*K~dZvGH^64vxfGZWd}sroz~x z(8=BQdOsuvoXeW*lW*4TtNGKmH;gD$UZUy4mxiGsC6t<+YI(J$H`YKG1Ho*2EF2s& zcfZ+CYuK5K8|;D53TR9^;T#vcWuwQxNp>sca}QFrk^PvO=3eFVw!AYTr=kQ3h2K`j zZ}iaNpo#~y_IVABbp^aOv;bs$@1mDWOCXl~4|?k6D}wE3CUtiJ$#mIoYh?lHQbgkhltIyVVADw`_F_w9&bXG;lZ&_~ zai$yhds8{I*%d6Jh!{6?6z(3WG9a%rZFW2&XXJ|XIoaQ}T!VEWhLEpe#rIUAyM3m>f3C$`F>-2l! z7nu^*BcjrUTz^m`Lh4z2t&$D7z;N2yv~9eohTO7y4PVt%2nFaie46kXhukFjB83A} zqdVwY&0wyU(j8Ch14TcTfd!l<2@>pgW0juuaIB?fziOKIr19AmL~<2$jot__Tb*jG z*@ulVAqk;Zg|&XsI0)dA4aw0!*$SIQOO4oPH@hh6rk%2zp;m|EOS`LRt~M3-sC z`1~U+n>C({+PpA1)|@41S&$X86DDodbzEg7bMe_Wt*<%%6gS{5q-dxoG|>4>KQ*i< z5?tP4Zxx;of^qG;mT6Q5_~=DxkCnBXC0iO>xUq^Kt1@zw5iX~H(zjb5eGUEK!ov9; zc8H=*;b`}woP5GDv69Vz?HJ43%!Ivu1B7G_`Bn+(QfR;HQu|$hp3F^+8^VYXEOEbm*vBHh5LF&w~nO1doS<=#VN5MH7Nu+zpKR)%fQc^7G|zWx%s6usT+O{DB>G*t3iDM6H8{UH@SOPC#d-z9;H zmb{iB)c9!isJLaavNxL;=#E@Y{y~xL6XUScn{x!FN7=#)Qf1u;5`7COE$5MuGsVFg zKQabgL4q5}Hpbm?-^`v-;}qn|BxCs;zCeq(wm^IL*;gF8oi-T^%MVakvc@6=a~@SddFPUGBie>6lL(f0oIZmD)Vq+>STt&)W+@hrpnQL z`kZ!Ozwy~&pJm+@5E+en)G)4-z z5@>f*;rV{13iw{PxFQ<1oss(P3UFeLv%Cp2>iv}H3Ypm%g?=@Uo1L~ynb;TBHo=yb zGG>Y;mu(esx5meptodT*8ee&EE1$@cq1gUOx=4Lm457VT9A953-O3e!uCLGk-PbW#x~Q-c?72mIQ!T_zx583;HNt57_uf$1hmlPyV6! zE$mp>QTG1#5opa2J;*sVjt4FoqS!ojT@S9WD@!|Vgc$qWP~L-QqxJgHz@26V`HPJ7 z;hY${E_nfB3n{o(!xT0~n{7%F zed=a9syDH36L~&9r5fuw0z1H;#5rXCKCtn=!x5aE&y8HaunLi$M49ndEnMaq!JuAv zCAuP9-w!Md8p_eP!0#Wanj4j%zZKMH_fkZ%GK=vu_W1kx-!PvNKfX*yeAlEJ=us;>Z`)3a-Glj-$qd49yjHBdjxqDiiHOQCa(fY~(; z)5nrSxZ#e;r%QycXr?hilyaG>6GHEHt{Z31eY7=OZ5h|iNk^vVT{|Lh$KKI+G$*oS zHNI7GwM|>=;lngTF@Huw?#|C8E+X>RyIFn*|F|ziD{5^JDF7I7yn|5#O>E}p+0b))Xg3JSCDtCX`XpG+VReB&ecbCM z?y<$oarW(7DjePvTsHLd42g)?N1)|=7NTcZse21lFT#buX|(hb3fe)(R@YJH$n`bB zlpFOJ6gIJ5Da=iYzpd4)(zBb9v7wNDp>v4oqcuJUcYi?w#95FT30=uASY`(6L|T!3 zSH=~(pY@?6;aNEQ<;KDSaHwFua|PH$rOxJdakgZ&-E6$3e!=wfM+P!f8RIvw?`uPup@)m+JjPR|ck_Kex!TjUyh_&6=Ke^QF z*Uwp8l`kLqT+oww#_am7T_9{~Q64$7JOm*{=4eT4N%K8z;dgVo7098?OJcozJtI9L z?D@5@Nc04n|C=nAbCIjGW4D=LLQBZN=V^Q_FU~UJ9ly8&ZY668fQF$4AK7uC5HPj0 zk{xps4(@_43lcBxAgV|Y+4<&3f?sTWpIYUf3Hhc%%*4Yc!Yy`u*h4V~T21YKMNY=3 z^{whuPIv*=4{_esR4}01{Z4X@&49j}j$4Lzng{NWh=ET-iL9-tcUgRsKYB!g>*H-2 zlHti{Q5#E zrU=_1$_rx;949tx6=f%s4Q#4-1+#u~m>Sl&BXTn9V{$jU1h3uiKcXeZs5;snmx(f< zFQfu?h?qf^!RETt0{nXP>nBAooKU$+Z|CkDnL#75igv!l{8mCJ;Sls9Zy{ z1zfx6X1O^X^S0RXi$lRkW6~G1ee4y_3-8ygSO%W2so98Ib?9VMFxK9)Uu5$CC{+n! zDl{-rd<9JZ0G$gNx;Y0Jp;cb7qC0M00b`Nj@)$~*FE3ZzHlX&4<(5R??v0lUCu|O_ zjH}cn;&HXt{FQ|>L6#kx-;LS>@>ksI7&q@=In59>^CiH*ao0J5=hS#qHnla42TCyY?;HG#vtc1-&Q-!Ow>ZvD46-Q(0-yU)Uqd5YY134s- zHhdfWdZ{P4%+lO=QTda7UuBHcL+@vvJu?ZHyjqUtldY;j9%63ycJ*8M-VX=MW~kSN zep}qr=FR*YR{9ra`d_*lW=A){wNvv!6V|NA^MYNIdRO(A`@R|sk8awf*xSnm&X+*g z6;ex62xQl$@pHy`Z~EQT_qFY0O?_}&0^fL(w$JCje+9@9`}}nHP~Sl_Z{7>lX(gdV zU+dDj0yf$!Nm}DT)0olp*AKvYRY2Iga4S834awiOa ziDwDtN=A>@nmPAn(ubTelZ5i6Zh1>@O71Icjb~)n<*#5sNxwu431ANC1fB2>RjEUM zZCG&5nWilG!u9Shk55<~Oon5a!Eoa7h}H|XFA8@L$WHcL#oshGiys{VLjB`quW5|1 z*ZE~{eaU}}D@@*A^b%S=T1p2LC9y(2|4JB4+4ehH<=4k>nFQ{l7Lq^FWC1V^(=|_N zuTc-pd|_o{H}QQpyb04U{Mw)}TN(TypWT7Aw*&p&Jl}~=^c-1J?xrOjr}n^059BBy zP=cdf<#6ueW_l^+_uir52cgkyQn-lI{hueOAYE(P1blzDE{X|fCJbZvQ^{8eWzivh z2YXD_mtM*?8k6>9#-cC|XM_y=GokVOzj9)7j3gW-kbMHuWDyFi+J|(?bHJ)!+LpUY zGo!QZLx>u3juuu;0?4B0@dK;_PK!FN$5beGQ#T8S@EdGl4sBu$sa`CpA&B$dc9mCb zjc$$U9)x-ZI0<`a~~v0tIE_Qey28^#_NA-aW*~Q!-DXgbogSvRdlZL_>hHLBBf@H7aV1TNEz5 zA~hej1?4|sMn8Y~)8xZZ%_3J(s$TFft$h-YFE`tQxr~3GS1p~_bX#e=TX5TiK;LMq z*S7GT6stthDJUE?1TtrGOv=J?Dw7pfDIaCLHF!osiocx~_9(6>JR*1mEb^0BaAA_?&g;*v|TMeHukelRmhE3RDQRfH8D3-RPX|kMm7W1XHya)KoK=F$%D_is$8i>gfd>t6chg(L;D?C8)n)G+Ix*M~*#md!6hAjkWx zyJ%5}Q|iyN)MGL21b>`yjLXv2onHjUZadZDmZ?YYA(=Vy6|Ds}C*E91yeQzUD&3Qo!=fF~~{)(h4J9Iv!}N#Ts_H~2KpH8D6~k-%VM@ifvHTV1yC z3wU^m+^UCU&4M$;E}N@Ii;XVX^`;5CQBw4C+gfpQd>_kwSaBB!R*v#@Ts1}u1XzLy z%!W73Lo@W8Z+~hS6=D>U$nq+9_T$ZQ(y~M6(W{4@H|#gNnUz*)3pl3K7CGH+k#W3F zV~;Krc`XoV+duM(M=LhdixovsHz)!Qnmu3H@Z=>yKB0)otO_qIY#P$Vz>7 z6XKjr9s5V4agja8`Zo65BhAI?p1ysFt+uuou*j~;ex9^ZKn)ToI2s>>-&uVwh-b_fbk30kQB3+ ztBrnk1r#4%F0Pj4haC_>zFlaE7G;SYO)_JWeqindx9>YIa0NEwHnZ^hqN zG@%X;gF6f`cZ!rDIhQ?1Ew&b!;EqWibynA1X>}|v3yrxD7G*h~ic=h%afH*pO}bgF zvJ)_!MTJpqU)z$$R41W6H#d|-ptysKgN=5^s@17u&?=NeMm1ON}k_*igXNhbuLG?SjAe( zCw56E?xeS6<<@|iXeG`qjr*DgDpQ5CI@RU3xPTuA0CY?iXIV>dH8rxN5iZ+u7UTP} zD9t94yM4if`}w2A9kQP~#y&=otM0SwgiM7O5(X}_-u<}P*3yl2t0%8IW zO%@4Z0%@@Ho>hzfvb95E%Xt?|n#ntrcj|`KZ#%z4e0aPJ>`_0~Jn-JHW3Fe3T3xut zih~|8JaVNalFwX~i9aPA9(Nc4HO5j%fIi{jALcUY;7jxi#=Li(wxUJZ*anTeNYf?Q zN1pfAeC98EId&U2y|48!dm?ItF9I0>+nDZbzXlWgk$tRHxjRMn7Hl_$Yvx26?etqb38IvhJfpM<@adm$x#7B~aDS}Od)#a!+M5+mk?gBG$1}wm zUgX6ZVXHIT*0j0S1NnSba$=7L{JG&Pck}}cE9hw)L@Nqh0T}X^tS%JXEnSc-YgPd+ zMn3A^kReP?(h%EU7|5S?^wK_wDI{e;eGnI?t`Rt6#SY_GDC^cz>S|$4679f4zLV46G0bqi#o5>qze?3A zZX>FT99DLGNt}8V(ekm+? zWht_534b10(|6wY37MhRI9VJEo|v+Au_J4K)fh=>9o@;r8^GiUS%oBru)`C(f(l|! z_8&0cfM6{n15f!rP#{VZDm`1S-vqvxirF1}{*0ZG{-m7`#fKptqhF)Ab3n8K9!mLw z1l!x9H!x=EjLD;(+Apm({TuAW>OWPP@_@hz^oUVI0j-z^;i3y-Do5p|-E3cf%UA)& z_RhP0yHw=p7kuix{8QRu*vIZLE?7!iH4>-yMpm(Wc%mHoW#t^l^|lYz9nSHYFQ_*; z)yx5(gcCQ_Rp?U;_nEkOdn~1rKZLIwX^zyMGj}?QG>(kh@H&emQq(MEQAFvau+9yrkQ56uYo}oPPi2_6WEhK0ejE$7( zF|F=c9oBRSLZp(Hxt7kF@U?slH_pBTXnQsvkSkPyQ^FWv%&|RIvBCk~a*ARaL$ntn z%<_b$2odpdcT@2p$*p2?xjt`T0NG zkvL{>--VjggDLKro9~S#_zyS?_}utB=J&Ie1q!X-kNTLOJq;tBQ7%R1TEREo`m9{i z^_)kHTijVOITY}S@mC~Q(+w}l+f2G~HhLYU0jEm}c@UztVwJ>lR*9HF6QaA^X4Gfup1rCHzaEe>p*xkk_sqpX z4b`mQOrLb(wIuMibC47d`LWDt)?;sCITfi|?_8hE8|r>!T+$M!ENhl#P@GAV5RZd% zOrdLjxYr0fpM!Q#9k3jHX4YF$nkf4Q`FOx_wAzy97ne2F)-|cGKx}x zjdpqvA{{3Bq(O1MiOdd1WTcLaj(tYqoE=Av%IRe99JFj4H@VcFFdt*GAU84I)^p z`5afEy~AeuNRgs|hu!UxV<9(JJ;=>1IAE^)q@GK28aLA%Qq*bl1kdOO4|Zkim%%i(~>c62x_hf)f9e2`=+z0t3z)@dQaiiT;w>%V z{v)YVV@sJ}K8XPP%dZ74>@d2GPR0_H>t{5UYm0j-UGH&d`K&Qx4Z#jAqJMSW_IT4n zkgAZw!*7(gSuUVxS)><2iefJhk(dmzT22nuo6JyYj+xVa|7~B7!B$x3jABWv8Mn+3!E_Hm7)g>dIcSlbvN5LdWkaqTtZ*O#S+^K7aNU zhJcY!!guvEyX|yirv~uUI8kQp?ww5P^LtOpNVwL)zzUk8!bvv$? zvw-h!0$6Xq5cfCM6*2r9Xz4s@!5{*OzYqbeqk?SSW-j13W1eN{fu<+0eNJJGPp~$< zn3YfwE;uwW@S_p;6r@Q3WsN4)aOC(PQ>)I!wwyK+!13fv&Z#Id+%_B(TRo9SQB6p& zt0vsk4-oL;t4xgEBV;&(`e-QAVPUbqM|b$Mg56(0=}R$Y14pXQGjKIIgguA5Xc;#h zxTD5QU^A*it_mJ%;K5({nmIVgmJe>i#rf%ose}NweG2(1Bc8wA0nQsNdP%5@kkH*O z`mWAVCa-X8_&%ltfMc07&nKE|9Y-!4syp3bseOPm`bGgun*#9Lg_bdw7bQl_hsYtz zBzjz#6;Ik2!4OJwD2L(s$*Pi%b?xmzTs9%h#-A*?CqK+Kg;frey+g36Ol=NaYokxf z_f#9z)+S^?$q=h>e#lo?fKJ-(NK;&F&X12NcPbFSE0;9bDtuOWGJ04!(FWc&Hl*VnwmR;?w?GkQ%sh)fJe#X6+W=L1L^Pb30yt8H7nm3@>>AbH- zQUqy-=|rbpTt`x+7_HhZFW2T#^-ztnyciAB2DjbZ1d@`hBYQ9G$irUG;FsebvzZe$UWuWs}G!SB;h>kiOLHnklK$VyyS6u*F<25o3DCLBrOjo zQe6(~@Ij^irX<6F0f+TDd})dLxqkSIt_2M59d|quD9MpWx|ZtVcLe5q;VJb9!r~Kk zAQZaIU5L{(B#y;loiF3dkp_KD?f3ymvZhd+#*sQ)dcTc<6me%oGE&MUaniO&)Yekk zc%1(7di&}0uU=mvC9`9Q}5vmqZXvk{fp{km5MZ0_FWD& zbCmPV90-rN?x~FsR5`9~@C~p80QPld|~V4%~Ye+N3n{x{&&|L!xtmC}O1D8=+$ zOCu`E1G1Y4;RTK{C}J}qF^`1aS8N{*^_JvGpzfDDr9==9J9Xz~MIMS7+(k%k>~TCZ{yv6qF%kpCwN%%XZ=E&rxgTxkn%;cB^4<2O)Xzq1 zNBVb7%=2kr)?}0|1g|}>z=0Q3=X=Y~v|)55755`+*)hYn+K(T<`C8%a)RHiM`c&-0 zbVmDOKgHL0y=OUMMBlGQvJv^ZycAI(HvH<Mu7QO$rSR|4{z^_tgGx&>8>!b3C&<%a}MPu0p(jbRaVL2KmA0 ze@Fu1tvB$s`iZ{~d~fM9CTcfkBSGuifI?kv`GOY4i?{U6e(Ay=?#XIbfTwOttW{Px zqxOP&LwY!KORh3bo>x*H=~tW!J0BHQZ-U9y>Yg${;!B_E8G-40*>YqGAsiF3qTOk~ z=W)>Z!>P~39sF~R;#b^Bu{UItzT@zFQK$XBeC&~^8|EZdcG2;3jqdmDGstnj;IF6x z1?DztT?^&tf2{rg{m)u_Tlkx?tt6|gw0#^c;>p2pyJKB7+(@JynI*_Y2Ixn;Rm&^q zE^l8vn6&IhjI55s8C?}cHLDpXaP3ZN)RA++{wo*B6x~@qvZf9%%gmY+SkoL{^&?)! zN_neyG3*}rfZ_!<;Ep{I+B93=-))g5Bb`wtX$rCdY zkSo*0qU*9f`eTQ677w)K&&SO)ez1wP4%K(DQ4-2wCZQ#E>V4Py9kBi58O+Am#G-Ki z>qsdRg=bKh*vVmU4aRpbprG#xphS<-)>PbgE2;fR%0cU7qt-qxoR`(Zhet1?#vDa; zw2m(JdADS~WclDsBBLqYq~y`aUT_x2=Jt3QnI`Q5CaAh-@(^j+0EGEA?zI7HvRH`2;D$)4n6v2mU}w^B!2tY z`al(S>GYn)sbs|KP-REq_AH|ek3WXO@x+XrT#Wmd!KFM+kGbSRU9_?s#**4KAfD!C zk0gY`pr3Y(?Y;tLKKAjV&vgy4{`9LS@cPS3>aTD916Kpf&Y;o}3sTU#Fecy#^IQun{%tihws@ax77-e z`ur3@v)PsU7Nw4U@#e_*dZfYyl(YTi=!3(6oh&zg6LV-KvT^l`DWre+Vc!j=iV9~s zMVl-h-L;eh3LZnX0c%3CsJRph^UYZJdSmQ#U3%gA9S@B8q!PwG>&^MFjK ze%hh=6;SO}a0vMOo^l|HxtI_mLSTqyM#R2}LGMUy&f6N1mZQ)%?6Y}{t-HqYm%+(sX*B!qW_dYZGCG%fA?u+U{ifO5mf6lh%d$H>uG7 z?ppotto4N*nD}SL)N_oDa*hZ7&89?mT>)?0A@F(K_e>bO-u%a3lQUU%E?;U<0V=3= zR~JLCVB)ATqx$Qvz?)9$)H7!c`7w^=RP;Pa2itJ6pyyYx5ly0*9)#lJ?XO>xz$IhSCDm|_y}7UZZDd}W{pb(Hac>DF)ACHv_|ze zGlH(0nW5w-pWv$}5BKfN7l(`E5f|fbO0A6-!yDtOQ0hLV>W|ZlX1Bl2f^q=P2|u+i zS)VIls*wD!AI%BILw3vXGiqQOh*NE|C3P<@D8T4 zlq+q|mYetccpKS6#kl5SlQnlzjRTeEYJjW8XXrMnr(;p;?mq`+40M97$plRYu8dy$ zj?9MUi%u0aq-!udF`=Iux@fdBcq*L5&?&h_jWwt&Jl~)GR*zXJ`6&y<`?7J8Vd3S1 zz2YZsbRGwX4_;z1*LL)vy)-Nc{}(K+|7Wj*cR?Q?PdLiI&OWZlOk9;oQl$othMQ6q zA1GLlDbqy!HRIsetzudh<2{9G*?N11kC>6=OMnJpVv_Vg3#BFQ55)j}9;p(HxiXu9 zgkYjyTS+S7%I%OUd1|Ii@ZQTVP-2XBG* zY|qHL0b5PHalEB6vT!qMyvZB??%>JrW2f21jD|(q=O7GiT;)_^FcOoXpx8ygb|P0k zN>kdsigB&2j=?MdbPE3uoG@bWgzKsoD5mYIvsdb7`w>PpmwK72+pF0IGKVYgxISxb zmdF+qaomvOJ*at`JAE`A7pwUF(pC8NfB>d`4r+hKWdZ30Co)lc7<`(w^4+&=w5p${boQn<~yaGbU{wkDd_r3YP)QPCimTTgL=F;&Z_~Ib7 zZW!Yq@dLxqZf#mbZaR;?E-p|qxB6RYp?{Sxy+`-otgzIyb@Qyxmec0fX}Z4(WBpt4 zBcJd_CJK~PY=pYw`i}9zuIPk{@|ilVyf(g zz>~(D^;TBT%h#6#3zaepDrOtDH@h)jb-d-0JBr0{8vb-P9ekOFKF2_+6&PRrDGPv0RB|;dMv|fY_e52-&Bg9OBdL#OMeyPOZF#T2 z3L9UH$9N2kA+k=u7aK)I;hYy5L0p%|sae> literal 0 HcmV?d00001 diff --git a/docs/guides/how-to-add-totps/photo_2025-08-08_17-10-38.jpg b/docs/guides/how-to-add-totps/photo_2025-08-08_17-10-38.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0dda29eeeb7ccc90d3213eae1d6bab5c0018452e GIT binary patch literal 19389 zcmeIa2UJtrw=Wz;ML|T0pddskqEcd^C?!!55D_DyAT=r|?Lb690tBL1kQ#xbC%1%W^tKwgoXfWIJ+0&x6#Z3Jz6yX}uN z@Qoml$lu%0UtNHga0Fxu64|)%*Dvte1pIE^x_R@aO`F9;MYn9-F1CHUxR|)O#1845 z5<8@Jh>P!(+bJa@yKC33?UM4lHOK}L;GRvJw{70MO;$o&LiT_7CHxGM z+PVR{5iYVp1+-CWgNW1yVG{@pkhB?~_ZP{3e{I+Z%yEn8)@@?qK!=K*pp6?uL^f^` z`88{xcNlOTv`K2S^!}r#x5(Js5LNM)J@zo+-B#5zC0}-3?qaANzj-%eo0y#Z?mY_X z2Q&^II;^XwZ*bzIq3KyObBlA9=WVZCwX?tG;OORl>$Zodm-oGZ!23a{;E+d;pFE9x z78RYC^!tmK$**3gWMpP#=j6W6`%qd|UQvnvR8`&3*woz8`nBy_cTaC$|G?nTFojAR zpO~DQo|$E`mX=pm*_^fYUvzB%iTsVMe^U0}&?N=XwQSYGPY#Kk>u@Az9CZDFB`A9lHD zxSVEb`1u&Q;4I`Otn6fT|>XS9cnW_ybud20c}qj zv`1v4&Wno&*7c{}OuyV4Hn}bYMNZl2`fdSBoY9jwr#ZUvlzejEIu0|jQef@l_;Q^x zp1?jiEo!D5QEP9P1HHIA_->C=n;$Q8o$!f&EL~(N`^$b;W78SX|6MfiBq94!_f*Z<%BKq|-8IAlLkfv9U>-x;q-`kwQBj zYt`)b;bh0mc=FlAF7+<8=Qd`$s>Ywl+MEK`^>2q6>?h3eWd?2$TnMrF)kQ5b<=6?gnbFjkU)+Z;`y4 zmKweZ=C?4bauop!q9{up0)2qf|I=pc)235V{H6~RyE^?$q?rQN*81YhmEe{`NAP?Tzgp!5U`87`3hZ#%?n?hF-3jS$ynRbERn#RBUTu<#op@$@Jm zXzRdd?3xh7c_aiqxR2q5V>#yan=nKns0qvyDHDQdD^meB*Q=&+j5yv_AqXb~frX$k zrC;yGs(t8_3f_1(t2gbr!PwQHT7-@VmUAqsP73G}SOR>)8}^?c50+zrgiU23*gZnf zlK@>{SmIwE??EBx@%<%1h?x)+2IJV9{tpkJY1LJ?^?D?0RjDyyyT2OG z<*@cCVQmpcT4sk&3|D9x-F@GzQ^XF@sgoQyI6gSv9(iQ9R(%@3V7Bi~dIA=rtvjKS zb@@Epb=|wu;sWEU;N21B-z>Mnj8k8Yh2A;llNW7-kaT)g{|Rn!;*L?aSsA z4)G5868*daN=tIz4tW~Bm@nlNU+H@n8{l%F`(zf9BlEQeMo;Nx+CLG<6K_v7Ruf_} z>PA>O`MJa8NFiurd{~=v-L3_5sR*0sQj5tIpDV?euX?wAvmUKn99bOsIWgH)tm0M) zI|5=03H)aQnn~kAIEc8ma zB7)BP!~9o)a3!=QC)XGJs5~`HsnAaIb>{Qh@S9d@xSF6A;=z5cxtLw{tLFzWl*4>1 z!P^Dd&LWiK9BYPVCcP$vph8fvAmIZ_Lm;++Nu&rtj{+c(c7z?ZM=68F#d_vFj{CJI zaEp}|+)p%?z`rctji|w2%%@5&U>Mjja&rwKQo-Z15G3KPEc&B}P^za`rTxz5wZid< zuU}k`*W4frJ|-P7j9VEKf*2PG(d+OA_%Iw^)$jN2V^3iIwsHrZDc_QYZsWV=i=mor zTlY*Gj1Rm;2M9qCAv{MWY+(=8fd_ln97>4`bxIK^As3#j=`)=zCt~punQ&(ZUea_xfQaVXUf1oF2~4lG@JV64@ijEgFP#veKWrw6eBFIS}HHpZMI@g zJ~>d#pi|PL?m#>kPhxSt2`=FFV_P%hRfQnyji$A^eBJXaSk57A16CI8!SHAlf)r4Y zi!Py!j`}a&d)wm~qn{%*?czySlBWD?js3rdUszthB)W|;@|i42a0d@*T5y`FWKjps zQcL)uqX$ww@(#C2e0r^X&PF8ChWlyQJPAS_^e1<*2YO%_R@PI`*QRt0H1+mZR{2LVe_a(*hJ<}V+=zH zFe}YJHX9zycmTk<|K&r=!PU~u;I&kvo9NFg_>kZ69>?_O1C*Xz&iEK`$S{4V`Cd>Z zA$X>MsI*tLz0WIDj^6ft4M`f=aa*m&GXrn@IU{-zx{D{xEN&S+&uahTxV^fg`Hh!e zV^%`rUcjW?Lnj&@K%_+xASFW3r{xWeU5*L>gsXsv%_Ubui#>F3AFh4xXUp{zwZ@xq z=Ny(n_Id@^!Xj>{VP@3;-J?+LSRCdF(RP1GhzdurXC15TPdXk-z*MkjR-QEw%wV@M zLz-ilCdokottI_Hm8Bm3Da+c_Nzjdgm5`2|f@{HE>OYQ$lQfY_uxcv7aBdO%0L-}P zdz=QDCmDwY(iGERPJR2+Y4A#XoI*F`u%+sdPPj)~EWf)3Hu6^T$#h0E=!ox>pWg!p1@1RiE$g5cF%eb6fciY&B?Nh4ViY7JZO`-wR5*#m^H*5Z z%9zWqf_Me?P*z` zSC)S%7h!$GwQYP&D^=N~YE2b`yEC&iu-Odc&GB>So*YvvRg(nMRU}wo+&I~(g2?d| zf-rY*EmtK1c750ftVZhKmOH70C_+Sm$DOqAd_ipR&fG zc&V!J^=ZM2W$kcM@SKi=u$lnmFJ_dPo&+t79BId z>0}pg>u~TCxPmjh;5| zk&R>YozC8d;W)X-_idqhXOivo+dWjA%O zPVbbd#}$RguVC#;2~~+!KB!X~-{ZjJk#1uLI%*7l$U(0#@DF%!T2wZ+F@0|z`m~zn zYZMnu40Uqd`y^swpaM}k3!JJUbUyE_bxeGPnsXWepES$%#WvCbPn0FfUX3D$`p!=WtcnD$FiVmT-=vAe2$L-wh;m59R`*@ zR&aom(%SUAF}o3fUZR6)A%W$`&ZRpW>{x0^G@5dc7r}gfFGBTE61DC7jgHh>p385y z+GPpRz&{y}A4M!0$K&n^L@z|1?Vak@(K}bp%?qdrmflmGD35YWsHg6MQWdyx+aBL? zz)Jl#Vs$Q2F@SZx1$W1<`neD^zcS&vO$bU-;v@(`ZsxCf?+>>=oORTBm%&fsntz*Y zT(Fx7M6SMag+b-Gi2y^?V|kKSeCDxna=5MZF%HCwmWOupEwBa%IU8@3COKd1vlp`G z?A^q0W+#t6#8cFqg2cnb7NKIit4z^|MM!2Z*y{C}(WV;Xuj6rQvGem>HN{Bwv>FA7 zdVn-78bdbIW6-Cwr$d|(UcG^e@8=8MRuU~5H2AA4X|8y#`s`|m!GbDdagq0|Pzb7c zhrJgdsj&z+SYZECN{iWy3^N5NSb8)bKZ$+70(ka%W95a78zCV6!p8K%t%bH-4|3b9I zMbxGzT#rMvs>Q$11243{=jFJ%2fdjGmV_M%XU|O&AK)Y)JefQ+nvvY3ZOh$AB{z5} zXJh2oF+(=P2IfP1_)}kL;~gM$s$^tf@Ul^ypSI4buQJK(sjr#u=t5=!;XxZ)O5o43 zi-k!TBm604)UCCL3a#F$OjKOynF>9Nps$VSV`wXMLPd6ZE@iHG14q1}G9kBt=_4@^ zdAl;{`y=NR>-1Z_#jO3wq4R^7zDU8Q5H?~nDt@XFR^btehES1Ff&=}v?#h~0I7v?h z&&b9~+B|_tub47pb;EFnK&oq zTrd=Nv@v+Qz4AT=sqEdbwMOz@_Nuf~1o@{m#h@@L)}&y1M3SmttJF5{le}lfm4=#_NY4?Ss@>-O7y90aQ#)-(+Z>)?!?1GPg>N)Oe_s&z@c0 z)}2g20KVINcu>Wqn=x*|v6G{~f3dYh zvs}lvJIrGCHx=}YRi$|Rd)~3$dg+;Z9Zo9MSHsaqLf;qCP`|b3RB1HH5*DsJ zFb$4Vk8|QB?w#$`^%{3B2wE+5N&?~x+0H#sMNW;=503#|x|omS)3_b<NxxT+!D-#20$EWcI`!8fgO&Xe$ zG4@k*^!CKA{eEh~{M9nk7e1%F0VzIgFwo0rd)s+`vCM~eF5Fy)I!HVQ$Y zB1O0m^m~vuV)e2N;FK@{Q-tbWb}>Esa_fqscpB8|nH^QO>Ip4)Kc;FQnGJX-;dui? zWCdNqW5@nFMwvCUKyb8V0D@M^a4IClSC%@Q-h=fvYO#355oqI{pc|Q?l)lymcvSd) zMp)lB5;5C36$91#{34uV1bcLlHvTpV`wMyefj%;Ypqu1j(Pqphv>DY1wgaU+*V=du zA8!?B0AGUkD4M1vipHOW!bz5dalurlK3WJmVc&x*(O9qsJkg;Hz)s^B3DfIO-+2^T z_?FVFu8};`!Nyg&>Iw5a)YVd7>D>miH-tK7>#O;Jwgo7sD~wfKF6Ul@q3ioRB@UxM26-I`xZvq`Efw4W${Y_K zp6U{U$}lZndd0&|6lfkz$=14inIPdM1PwkXUuZ*axBEEqb1SbkXo!GL^T9DO3$|1~ z`~p)a&dZB3s>wxu$M@;QX;?;(xVDkOq{Qzy4CdE^#c%_uvX|sd+&;s~bEDCsV;p0x zYGh=sMW*9Lzhy3R=Zq8?NWnGLgDE#SoD^DMe*@9C7thO2ikuXOiMY6fnk zf)=^z*u{EuBVoLFUq%G{3bPf6b-)!k=2Hznyuy_jm5+jTgY5fV6}sI@tlH!kb!$$Z zSe|hjwqHnKik$CR4q)ku*LhexaCAT=vMnNfFOsCXbw6RohFXh>?72qIw~{xz3El|# zne;=IL>SA$~@OmM z2^FqL#1HYa4T!f4n02+d5EC8`cW(+qAILQ2-r-r`dkgih74r1cHJ-S|BX{P+NUp|> z`_J=#mW54O3`(u~7UQPh=BJHLwIHNOC`5C$NLajyQL{qE>_C^<4kB4IF&)8{ndH8B zZO{~U6B8*HzBT9(S8U))l3koJffT%;03a~~wm#%%k!$oeD4wIpJ?E`35HC2!JH>=n zWX(V|>lwG2?nC@18kL%Ry`)d?^>1T+6@qHOHEZ~RIL^{)3=VUKuE##-QWs9sQ}4y2FZF7u}V%r#t$c5Q1QL?Co>HhcQyReceT9 z?2ezDM^;aboG{X^o*&!t){Y86?J~!Ope>zX0uXR8L8;4bCL#bRy#S+jh}ttd0P)mS zx@znZsI*w(_Q5M-cGy8R(Nc!(G0tVl1ISae4v=fFLZfEfrg}9Ltl81xN%@J%%J{j{ zAG?-i@s@fLW5&3e-Im7XfOB}ChigR~?K- zK4q13!qz?XK-knFSA*iY;mGKUno&3V+T=@pketw%nAfSniRS1ky))6<{u$_6Zx;X# z1QSU~Za_$JifGjB&#$?YrWZ+Eb1^>q}a z4DUMAHE%2*GEd$<>MCT4T*)cWN>{5t*;84}51C2=FLhhU!$vsZn|yme;` zS;FFJ-|EXEF5&Jvtr);n#|BF4L3xUQZZ!Ru)kje9gD{N^QNwUT>Y;x|5MgevxxR@Jf#*JIM*1r)Ip%980Y=%X@R~S zbWakX&I>_{<|})m1;{Fo!;weDV(t z0)X`>klM~}vLuz}to|uAAJ)_2n(kkg z!@n?>Ppn@qkhiZOW_cEI$BG*W9Ov*OpME^e(2c0Hbh8t-IhNa4k>?=0PSr^6e)%e7$e#@Xw*IA-9kBf|GC|{gGps zr^Y6fQ5ED~)C?L@=%b$(%)+A*zqt-GAMzPT1N?D&M3qDlDX_NfK-ZfM6DxU=w->vogLh>Yu#>j>QWAp| z7qfioX7x>FWZe(X@F1>u2AAp)U0^H&ek4%#4C)^q?@_F?vhR8^Syvke>xrfzG(RiAY=q@MlJF#S3No4cA;?B&@;Gp8-QNGF) z?TJtn$IH%O5XUfl*?78Fue>Vp+c%%D3vNrfo;KufdqgyT-1^M(nZfSm`7k9P2|=Er z7zxh-4>;rHi(ubui+9bt<%ptR)pn#UC3W~i4SSdAkHE6fgPibhU-_w*SPKg`@eS(L zwI$BK0ST6yQnq(~SE)`n0kY@!-wRX(p9O8zf}y2);;N)NPY41co8hb8N>+{bDOz@S z5rc3KrSb5*ggOQ|7>wPlqm?uA(^iqo%iy_tJVz>VA z?I`3W#>=uolzhvhX2`oIsWv55Jz3??P2U7}(T%bEjTMXa8#q=CBrqcfPc43CdJaFZ zJcxW(8F?X*dfh?l=MBmAa?(iwZ1Iwwb-MWKIsQSeTKJ3Q)(6lnsL%!&xWL$i>f)!! z$ztg&zfy!R-RR$+pe6)4bgFXG*mf`;Q12j#KE+weN7**IsyA2aEM^7vTsS&ny*HAt zB#+sL#+~5hIfr))PXYB9?$~ZDFnQN8s3^w?(Sru;+}6l=paMpvciH+-#mRSq??6=b zERx&1DZM@R&b|672_woY97V2#mfvA9|NJyY`L&z(^F^Q6&%URQV7_hy7QVUu^$rQm z^ss+S-6Tvt3k~B0!R9*yjf!_>$>(0fcJ{$a(sH9|^EHAduu*Ji)e@9mq4Acc?3dd? z_{XH4(8y1K3~n^a_DlW#kG(tcb5ZeqS)y$$(jnT3L~#9DBc3FHq}OdEue#!q&m8fO zrkL(>$<^>kLM77AqmtiI`}4N+JwbuiGl7TTFU}~Dfbm&%;j}s%l z>H`PdYTCqJSA%&IdL}<6c3a@#1T81>bKDe1c9LT>wwmBSHiD7k3^aooQPV*K63Coq z1s#3OG{}0Z81DX2AS|;A`Tddi zd>i*nn`{CrcX6lth3s3-b5Jm+qL|}HbnM4aq

t5mhwO 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 literal 0 HcmV?d00001 diff --git a/docs/guides/how-to-add-totps/photo_2025-08-08_17-10-41.jpg b/docs/guides/how-to-add-totps/photo_2025-08-08_17-10-41.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bf2aa0348e3a57df4958c935c52e368718a42cbd GIT binary patch literal 16739 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 G_P+pl9de2Q literal 0 HcmV?d00001 diff --git a/docs/guides/how-to-add-totps/Снимок экрана_20250808_170854.png b/docs/guides/how-to-add-totps/Снимок экрана_20250808_170854.png new file mode 100644 index 0000000000000000000000000000000000000000..bc04d1c248b47dbc454e9aa369ec15fdf8673a13 GIT binary patch literal 42150 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 JiHzmD{{gsucK!eW literal 0 HcmV?d00001 diff --git a/docs/guides/how-to-add-totps/Снимок экрана_20250808_170912.png b/docs/guides/how-to-add-totps/Снимок экрана_20250808_170912.png new file mode 100644 index 0000000000000000000000000000000000000000..390ced9a9cc2b647910ba5635f4c3de943d30a29 GIT binary patch literal 37776 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 Ouxzaztm@%DxPJpGAMl_6 literal 0 HcmV?d00001 diff --git a/setting/consts.js b/setting/consts.js index 6e73477..7946653 100644 --- a/setting/consts.js +++ b/setting/consts.js @@ -10,7 +10,9 @@ export const colors = { export const content = { addTotpsHint: - "For add a 2FA TOTP record you must have otpauth:// link or otpauth-migration:// link from Google Authenticator Migration QR-Code", + "For add a 2FA TOTP record you must have otpauth:// link otpauth-migration://" + + "link from Google Authenticator Migration QR-Code or Proton authenticator Export JSON string." + + "If you have a questions - check instruction below!", totpRecordsHint: "TOTP records:", createButton: { placeHolder: "otpauth(-migration)://", @@ -24,6 +26,14 @@ export const content = { label: "Change TOTP link", placeHolder: "otpauth(-migration)://", }, + renameButtons: { + rename: "Rename", + renameIssuer: "Rename Issuer", + renameClient: "Rename Client" + }, + saveButton: { + label: "Save" + }, deleteButton: { label: "Delete", }, diff --git a/setting/index.js b/setting/index.js index fa2406c..6d6e749 100644 --- a/setting/index.js +++ b/setting/index.js @@ -98,11 +98,6 @@ AppSettingsPage({ try { errorMessage = ""; let link = getTOTPByLink(changes); - if (link == null) { - throw new Error( - "Unsupported link type. Please use an otpauth:// or otpauth-migration:// link", - ); - } if (Array.isArray(link)) { storage.push(...link); @@ -121,6 +116,8 @@ AppSettingsPage({ alignItems: "center", justifyContent: "center", marginBottom: "10px", + marginLeft: "10px", + marginRight: "10px", fontSize: "20px", color: colors.text, borderRadius: "5px", @@ -138,7 +135,7 @@ AppSettingsPage({ }, errorMessage, ) - : null; //TODO: Check for work + : null; const bottomContainer = View( { diff --git a/setting/ui/card.js b/setting/ui/card.js index be9f041..bb9c39e 100644 --- a/setting/ui/card.js +++ b/setting/ui/card.js @@ -27,7 +27,7 @@ export function createTOTPCard({ isEditing ? [ TextInput({ - label: "Rename Issuer", + label: content.renameButtons.renameIssuer, value: tempIssuer, onChange: onIssuerChange, labelStyle: { @@ -47,7 +47,7 @@ export function createTOTPCard({ }, }), TextInput({ - label: "Rename client", + label: content.renameButtons.renameClient, value: tempClient, onChange: onClientChange, labelStyle: { @@ -90,7 +90,7 @@ export function createTOTPCard({ isEditing ? [ Button({ - label: "Save", + label: content.saveButton.label, style: { margin: "5px", backgroundColor: "#28a745", @@ -101,7 +101,7 @@ export function createTOTPCard({ ] : [ Button({ - label: "Rename", + label: content.renameButtons.rename, style: { margin: "5px", backgroundColor: colors.notify, @@ -111,7 +111,7 @@ export function createTOTPCard({ }), !isEditInProgress ? Button({ - label: "Delete", + label: content.deleteButton.label, style: { margin: "5px", backgroundColor: colors.alert, @@ -129,7 +129,6 @@ export function createTOTPCard({ label: "⬆", disabled: index === 0, style: { - width: "50px", margin: "2px", color: colors.text, backgroundColor: colors.notify, @@ -140,7 +139,6 @@ export function createTOTPCard({ label: "⬇", disabled: index === storage.length - 1, style: { - width: "50px", margin: "2px", color: colors.text, backgroundColor: colors.notify, diff --git a/setting/utils/protonBackupExport.js b/setting/utils/protonBackupExport.js new file mode 100644 index 0000000..a887750 --- /dev/null +++ b/setting/utils/protonBackupExport.js @@ -0,0 +1,11 @@ +export class ProtonBackupExport { + version; + entries = Array.of(ProtonTotpRecord); +} + +export class ProtonTotpRecord { + content = { + uri, + entry_type, + } +} \ No newline at end of file diff --git a/setting/utils/queryParser.js b/setting/utils/queryParser.js index 95486fe..e5b2799 100644 --- a/setting/utils/queryParser.js +++ b/setting/utils/queryParser.js @@ -1,11 +1,132 @@ import { decodeProto, TYPES } from "../../lib/protobuf-decoder/protobufDecoder"; import { TOTP } from "../../lib/totp-quickjs"; import { base64decode, encode } from "../../lib/totp-quickjs/base32decoder"; +import { ProtonBackupExport } from "./protonBackupExport"; const otpauthScheme = "otpauth://"; const googleMigrationScheme = "otpauth-migration://"; +export function getTOTPByLink(link) { + try { //proton export + const json = JSON.parse(link); + console.log(json) + return getByProtonBackup(json); -function _parseSingleMigrationEntry(part) { + } catch (e) { + if (link.startsWith(googleMigrationScheme)) { //google migration export + return getByGoogleMigrationScheme(link); + } + if (link.startsWith(otpauthScheme)) {//otpauth export + return getByOtpauthScheme(link); + } + throw new Error(`Unsupported link type. Please use an otpauth:// or otpauth-migration:// link\n ERR: ${e}`); + } +} + + +function getHashType(algorithm) { + if (algorithm == "SHA1") return "SHA-1"; + if (algorithm == "SHA256") return "SHA-256"; + if (algorithm == "SHA512") return "SHA-512"; + else return "SHA-1"; +} + +function getByProtonBackup(protonjson) { + try { + if ("entries" in protonjson && protonjson.version == 1) { //Is proton export? + console.log(1) + const protonBE = Object.assign(new ProtonBackupExport(), protonjson) + const res = protonBE.entries.map(x => { + return getByOtpauthScheme(x.content.uri); + }); + console.log(res) + return res; + } else throw new Error("use proton export backup with version: 1"); + } catch (e) { + console.log(e) + throw new Error(`Unsupported JSON type: ${e}`); + } +} + +function getByOtpauthScheme(link) { + try { + let args = link.split("?"); + let path = args[0]; + let params = args[1]; + + let pathParts = path.split("/"); + let type = pathParts[2]; //hotp or totp + let label = decodeURIComponent(pathParts[3]); + + let issuerFromLabel = label.includes(":") ? label.split(":")[0] : null; + let client = label.includes(":") ? label.split(":")[1].trim() : label; + client = decodeURIComponent(client); + + let secret = params.match(/secret=([^&]*)/)?.[1]; + let issuerFromParams = params.match(/issuer=([^&]*)/)?.[1]; + + let issuer = issuerFromParams + ? decodeURIComponent(issuerFromParams) + : decodeURIComponent(issuerFromLabel); + if (!issuer) issuer = client; + + let period = params.match(/period=([^&]*)/)?.[1]; + let digits = params.match(/digits=([^&]*)/)?.[1]; + let algorithm = params.match(/algorithm=([^&]*)/)?.[1]; + let offset = params.match(/offset=([^&]*)/)?.[1] ?? 0; + + if (type.toLowerCase() != "totp") + throw new Error("Type is not valid, requires 'TOTP'"); + + if (!secret) throw new Error("Secret not defined"); + + return new TOTP( + secret, + issuer, + client, + Number(digits) || 6, + Number(period) || 30, + Number(offset), + getHashType(algorithm), + ); + } catch (err) { + console.log("Failed to parse otpauth scheme:", err); + throw new Error( + `Invalid otpauth:// link. Please check the link and try again. ERR: ${err}`, + ); + } +} + +function getByGoogleMigrationScheme(link) { + try { + const data = link.split("data=")[1]; + if (!data) return null; + + const decodedData = decodeURIComponent(data); + const buffer = base64decode(decodedData); + const proto = decodeProto(buffer); + + const totps = []; + const otpParameters = proto.parts.filter( + (p) => p.index === 1 && p.type === TYPES.LENDELIM, + ); + + otpParameters.forEach((part) => { + const totp = parseSingleMigrationEntry(part); + if (totp) { + totps.push(totp); + } + }); + + return totps.length > 0 ? totps : null; + } catch (err) { + console.log("Failed to parse Google Migration scheme:", err); + throw new Error( + "Invalid otpauth-migration:// link. Failed to parse migration data.", + ); + } +} + +function parseSingleMigrationEntry(part) { const totpProto = decodeProto(part.value); const otpData = {}; @@ -64,102 +185,6 @@ function _parseSingleMigrationEntry(part) { ); } -function getByGoogleMigrationScheme(link) { - try { - const data = link.split("data=")[1]; - if (!data) return null; - - const decodedData = decodeURIComponent(data); - const buffer = base64decode(decodedData); - const proto = decodeProto(buffer); - - const totps = []; - const otpParameters = proto.parts.filter( - (p) => p.index === 1 && p.type === TYPES.LENDELIM, - ); - - otpParameters.forEach((part) => { - const totp = _parseSingleMigrationEntry(part); - if (totp) { - totps.push(totp); - } - }); - - return totps.length > 0 ? totps : null; - } catch (err) { - console.log("Failed to parse Google Migration scheme:", err); - throw new Error( - "Invalid otpauth-migration:// link. Failed to parse migration data.", - ); - } -} - -export function getTOTPByLink(link) { - if (link.startsWith(googleMigrationScheme)) { - return getByGoogleMigrationScheme(link); - } - if (link.startsWith(otpauthScheme)) { - return getByOtpauthScheme(link); - } - - return null; -} - -function getHashType(algorithm) { - if (algorithm == "SHA1") return "SHA-1"; - if (algorithm == "SHA256") return "SHA-256"; - if (algorithm == "SHA512") return "SHA-512"; - else return "SHA-1"; -} - -function getByOtpauthScheme(link) { - try { - let args = link.split("?"); - let path = args[0]; - let params = args[1]; - - let pathParts = path.split("/"); - let type = pathParts[2]; //hotp or totp - let label = decodeURIComponent(pathParts[3]); - - let issuerFromLabel = label.includes(":") ? label.split(":")[0] : null; - let client = label.includes(":") ? label.split(":")[1].trim() : label; - - let secret = params.match(/secret=([^&]*)/)?.[1]; - let issuerFromParams = params.match(/issuer=([^&]*)/)?.[1]; - - let issuer = issuerFromParams - ? decodeURIComponent(issuerFromParams) - : issuerFromLabel; - if (!issuer) issuer = client; - - let period = params.match(/period=([^&]*)/)?.[1]; - let digits = params.match(/digits=([^&]*)/)?.[1]; - let algorithm = params.match(/algorithm=([^&]*)/)?.[1]; - let offset = params.match(/offset=([^&]*)/)?.[1] ?? 0; - - if (type.toLowerCase() != "totp") - throw new Error("Type is not valid, requires 'TOTP'"); - - if (!secret) throw new Error("Secret not defined"); - - return new TOTP( - secret, - issuer, - client, - Number(digits) || 6, - Number(period) || 30, - Number(offset), - getHashType(algorithm), - ); - } catch (err) { - console.log("Failed to parse otpauth scheme:", err); - throw new Error( - `Invalid otpauth:// link. Please check the link and try again. ERR: ${err}`, - ); - } -} - function bytesToString(bytes) { let str = ""; for (let i = 0; i < bytes.length; i++) {