From 3b5e6a9f4d91a79e6e51795ee64abd880eb37665 Mon Sep 17 00:00:00 2001 From: sabaimran Date: Tue, 19 Nov 2024 15:45:43 -0800 Subject: [PATCH] Update authentication documentation --- documentation/assets/img/magic_link.png | Bin 72530 -> 23111 bytes documentation/docs/advanced/authentication.md | 52 ------------ .../docs/advanced/authentication.mdx | 74 ++++++++++++++++++ 3 files changed, 74 insertions(+), 52 deletions(-) delete mode 100644 documentation/docs/advanced/authentication.md create mode 100644 documentation/docs/advanced/authentication.mdx diff --git a/documentation/assets/img/magic_link.png b/documentation/assets/img/magic_link.png index ebd9577987433b690c1e5763c7ae6b71bb418d10..71fba52b21f34cba4d9183f8f23d2030e4e13a61 100644 GIT binary patch literal 23111 zcmdSBWmJ^$+b&8BGV~DA-6f55H_{-XAky6--Q6i6-7PI3-GX#?H%ND#Xa4WI_kP#e zpU;QmTC;d&o?piu*LB~9t0>8!Arm6Qz`&r%$x5ohz`#-fpE&Rv;Fpca*(3NJYlP{7mE5H7oT^=j+AJ3z zefJ)f$bWwPcu1y^FrA8v7K)x5Q zA4Vk~TXk#yhgYS;b$uzc-qAMmfp-Sydvz3-9wuLJd?)d4jU2)AshqPQgGQ%42wQ5O zzLWA>0?r$F!gInQ74}GQO%VRa0JCQS39a%9IFvCzv+kKBHv6^@N7+rEn!u=Qusmi8 z?{~6|gByRf;H9(>SHQQU47lg(-Kk|e%m%Eurir$k zsiGnbBk&A{fep2Q0Rd02z=sg{z`(#KguoyIf3bj%WDeZ_dJ9XD1OLCD?3=7B?GvXcZViH-6yJ#>Clx z+|9|0&{ZB}A#Ms6sAb=V(Iyo`sEtjZzqyoSaPbt+RpKJ6k8J z|7zrawIgZbWaMaJ?`&abOAc+!@!8b$VrN6xWS(2A$s9R;rW(AKKYG%A|8+k^S_5ck_{0G8GOhXbMmxBkLNoB zNHE2Y(I9WDRo))7-L85fQ|$bB)m=5IYffJdUiy9O(|mkfpLsua?7P;QmWlR3OPn&m zkDMH=O97(1JZ$N9aSyK7m4OTj!5J7BG>`T65PQjsi*u3Yu}pycVPraI+K#OPE|8F# z8SVXy-t}RFK(MTs>yIm1#z{biq6;zQDsi2IzjLkamV_ZIm{V)&>~>N@V1WrcUy+DkZn(Nmx$w}s$F2fO!AW1^xQ zqPgvNV|mf#1_|U+pQHCi2M6#&QFaDnd$#F;rOVYiZ0}) z2QxS#D(bHq{kPyad+2&ugY4~!3ku9H47xY+IV;0@qPd;+i#f&&Q{QJEUP+6%3Q*?k z@0(MQQEhJGf&x%smtX(<`E&D_Ar~ATHl}Km|HHt3JH>=F1}Ox4-Tcbv7bFgo!T|*? zHxNb^H1x&^mTV*gMw0h$SPWGMGqrJ)^=J_G57sxn6MlaO|1^_BTEW}j!~PD=%Z17H z6T|Ki?}qv1gz%}=5bsd=0Otxq3|`L~Xd7GZl;M=&Eqgbx!zO@KgGe@lxsV+T9>9<` z$Ar#82xNcCiP2QnCcrX5z0HUfNSZ+}pKB!2|cf4X@Br@D6zVrI>*QXr*q8k$NJ?M8ZdP=wO~>)#dWmxdRW;s5Ce zUtd^|1lA_F3M-v;$l^bnlN;zKKx*Gd5vA5d7Y|uj>Eo67&#Bs{Tt`!8yEUE);`K9d zF3>y={_DUOO^g65M$QFcbM#NcAa)3)(x{D(%a`4R_7dRN0kM}Cm(~RK8G)TMlU-pM zI{zmy?-mS|8U9KP0f`j9g*o6K+L;eKjr6kxQr2J;iI}@}_lLXyP2*}IdFD{N% zB}otj^dtiojU0N5#HZHdsDUL%4fOI|vJ;PZJs~KAAk*)AIopRkhG1L}$e);EJpx5H z_`FXy0V0zCJw{--7jaS9LH$Abc3>Fmm~c9>gHz|3#pi;I{*qY0r5&bPXQ1PaNC^&N zjt$a)cFi0LbiI?VfXoaA;lX`LjH7a4Y$A_e1m-5H1Q}%DaZ?oMW5_7L1Zsm+JMV_%d8!unlG*T@^sI@&!0}}u}>kdsOWNU!+@fx z8j&Fbc57|3B2AWI!R`ci?uXe3h&=35dF*9=+i%{>nkppWG)4Vbt{E*Ig`XQf_@hz? zzNtm6UQnD|;p8@cbdKXwOoqSDq$>}9f9JC4v^T2S7xDIB$*yB&k&~H#Vj*&4UAu+LmjH_Tch1HB*A%$5d!RPh)o1!HC zXt=3yC~FBZ2Qf<7E^5V)A1}E~3~??zBDy(NcvRH1Opw1H+w1^_EiGY2V2)A-Z*HjN zV4zK;eIyvp6lBb6DlIw64Oh|Zry(jVy}?F{C(P5&UgU&h8^!c*Tv`-$DtF}t-3p^J zBvi}(5~HBUmRKjsN1A7IE3{P-1ZxHcBk@VlNz$s?(C;L2}@GRCCA)c)K z*0SPMV5zzgCyvo7RwA*StsuDGp9r-5eeymt>gNU{20A>2xFCgy64gMf6fivZ$X`2E z{Xv~Pb>+xxd|#!H%F3%KTfh6G&$hZ>GB3uJ3-U(&`6(HWRqwDR-Le%UP~x!FUvDu* zD!I_FJ0J>U*hEV(Lu809&}Ru;_VhQuLR;dmtyVLLq`VbiK~1t3_AX7F+O zzIe49RsAmccDm}}7ILQ@w67GWB`+UAn+}{=_1BkYi_6`Sdh-cNe(wh^@4JmqeiWG< z(HD9;u4-ZLhw*BI9(op*(G?n+nky?9?sAQeib*Tjh6QQ~=FEImoLFvl%B0ChK*1f)5ewuB z?_!y0_x8-h;G&A}ln}KR_n)JM{YcrWD`>OG_58Sz)1&Qd2cX1CwVPJ=Y^6JiN#6Q{M)@0o8U}AUblaZ9^W+3Q`e+!qg<@!oLkYis-)((Y?fdwU}yNE`$O zm$N$zt;OEz+?iIqpZ2rNbuVFWpt$G@w*Zuk0ZB2njBw0G#>{i8DqjoZDX#8Sl z*d@!&7d0rURAX>t#Amk3I=5=3A!tq3A2Lf3e|h1Oz2vYq!|wJGFin+`2-I7i98uA z&Dz@8#*z%U-Q?vvcH0>tn%1a&FG*#jwDXXqz8}_b( zxgz)z^1$+#352E=m9jMGzjL?>RxAhl@*hjYdRZ;QzUPFxWY|p=DPD(|X(xgVD7WqT zLP()K%9yk`9Hr2vA~^or0kw5QHsW=?Bgb<;O105ury?Ts`!NBtQ(IOHSylH zmPW!ZV%)mWM&fORjOvaW!vhmBe+_bfv41rV%v_K?!BzMZiX0&Q#A_F9l1J{EqW7;#X$zw+>op36`WR2j z)cjGqYY@JUsFbP|UU3OwIS^PA48E#JiptXCd=|m&SmqClfTkFZ6(=g0`}3x8_;%#wx^V5Fs?vGP>u@ff0yrbwks1e-igfC>!#{kn7J z*$z_KH4NCWRn-Vx%(dfOt=FUnV#~QD2?7dXJZGdWAn&!0uUeTOY%{I?Yid6FHn+y@h)A1Pl?3|TtxM#>4eu; zm;qrKv(bz{VJ9zs20zNPABm}@b0`5(Rq}4DNZ0xU`&z1Ozd=>)I`6#U7ND{`s5oOf z9CzdywaKF`wMJzOBE0h0K!LmYT$Cw<5HpxJ;$v!`G!ztgXG(SbzBB9O30k{SRLFGW zLPF6=CK;NTAA0|Y#O0S~CmL_sz=En5C3*wE>mfmB6WRzeKK=IjM0FZ{k$A;J$xK!k zYO|!z4KpF!7wUfxaOAa)0=wDZLx!6P0|+>SKldrBr>nbl*<0!q=Zx@1A8=o<>IA+) zyJ{Do*9_ujb8@`oYxg!?PR8sF_SggqV28NfU+(eHB|4#ylT#b}OLO31_MXoh#ad8t z*owDegb-ozPpRNJj3tJzXZ&zpiuAHT5A>~D*w zglJPj%+FMm{(~}huE*ae&KriU9t@4utM4%D97<$JKd4W_C%`z89$n}I!v2oMfbOygMJ&*0V20#_2(nuqz$6R?CGKRPZqjpuw#IasJG zrscA>6;ZJ1B794r{LYd|QMN5Fw|S^vYgJDfGexO<7JsG;U$IagCx>UvOTA5bHjv-t zutIJ>+xKO{J&*Yx=(FEC9hMik$?kc*+(~5`EJ61oM#S+V%2E}?jiHbz;naQGl|v9s zA|Sn|Q{&8>%vzeI%cnZwyy>lwoVM8*Arwl_~YTkUVdH4DKk$2|N$B!T! zG(|Z~Fqob$9b(xD!X=Tev@F%)O*$zx>_ZNEuBypo3W=wO4;n5|&Uo6QD9+DMq=p{I zpdjXP*>)DnwXhanb`HS%o-AlJJN%lf(pFPyY0aNQNIwi?+4LJD-CMF6(i)y?O;EEgVW(B?VDa zH5NfSRg51Qk1`lFE6mpplZUqtv9NG6plfONyQSjo+S%`Kr;VpY^Z7F0giiEZ$7vWp zeu$4-AC5$ecNBI7kD zH{1`7(5?n=a2x=lNewERG@Q&dae&Bry@DInnZ)dJdd7zA}z1d1U!4VJVm2 z(y3eyAsnnW7FsNZV5d8?)rD%kKf@IfZq+W=d?zG9OQ=eJE&W+9I7qx=B%0I6ZKX>| zoWRO{vzu!F9&=|u_lpCU**V{X!@2u|*9*b5xD~I9CR6rONhRN>>4+K&*`e9M4eg-x zfC1s@rCHj^P2Ww6e?@Nmj>5snB^ED7)1F4LU+`oaj&O3a@v;g_kCH-yzD*>3)nuWi zm0k)4jzk3&VHp#(F$`5w#vL-FCi&J|NF@owm(Hk}4GH;5oos0ui=u~?5`cQ^^?(ZzgWw09uegIX zKkr4xPn*%%zX;ExUAq(s;qxin5)e@mM8igL- zgxAk3Wtto!?=(Vo#P2Cfj5p{NX{iJlmy`~?aNyNoLrXHT4R8)8b097jn%Wr6u3560 z#)-1NjA{=O&n(mo?@HCg8VEk|>qRgt@~k;0%417=DgGVZP@mA1P9h4bb2-v%i>m>g z!4|_*G3-iN2~6kLq*Z1t1@O9QpCT&U!}XkgLy^B02f5(en2$sAiJ?3=5?(|Om~A&h z!(6_@CX4oL@xmk;@usgovAi$8N)b-v2Q{8=YxVCMH@xiCF6L25d8<-MjU>>Nzx$e) zG+UrlYMSQdth{GNY^?Pw8TlJa*4E-uLoN< zdbpTx{9U=ecETLaRuYL>8NrG3Nd=(5Qsk0bC=-Rx-^_K*mfkKqVXSyvj!d_>SXoXL zMSE)p9#(z+rDVsf*;uj2IY>@krKF|*LCEe{i3mea<9)^lOKc9*LYxWuB_*suX>TxQ z-p^t#LS`hx<_e{RX)T?^Gg!%EMLqfq^vpJe4mK zE83vm<;(M}ep{%D)3wr45E6E6;SA};*aaZ&blQ<@-gZVuuK^k|ACJ6ByC%Tr<=*T$ z9n^jq%!a#s=HTFP^X$(1j;rYAWNAv7(`;&j(}K%w2)4y`6E?kB%=`0~!cb{!b*_Ls zlu&hN1(4K^`oPnnZu2ExOin80VaZKWjAl0Cr&><`e_p3BE*|c5HUdcs<(ieMtUntI zO4W-Oxw(@NO(b+gqad?E>-|hL_+`-qoFV+AVl(pp><*`Mn%g1tXWNY=* z^_Z!dPi=g-8q0E9^x^eSnE6l*IV0Pw5goq2no>T|_X;k8kKT`DZLelEmeftkM8aZi zMSPij9T5i9!7{4J=lR_R>)pKsWVVLQDUzw$eS9^56F*fjd%gYm<2)ccG z4r^E0I8)Zj4jUyiS;{=GCG;*dfy4-@?}VxS^fdOmRLLx5@J$xs-_GE3D$(!o;d0tl zcr3G7orK?DK9)|asmAnFP)_5J@|7lZP(jB$qKaGCoc;MhcGl0Xw>Zl~-i{ap&Jdn! ztylVMbug39-6jIa)*K26MUbbPCq3jjW1hsQ@CeG%aEM#T+*wL93TLDixti8vLiR-+ zu%yb!oO(&G254cOnle7)!BS8hHD>lC z5QTT)``cMB?~hBKNuh6{McYH*2RMs@e>^*IwTztWW>RI=cr^+8Br|@T)c5a`!Kdiw z-F;G#*4o&;b0ocknjk(z_XR;-Tbe(==$+;@nT`-D^4HYVXl)n0p)gQ`FUae-D|6M^ z9=l=tb6>ETAlFGn9&+GkN4bUrp$_^%q(8gA*uZpsFcq5RzDv;k`}4dKJX~e(S~n;# zckSu^5(Y2@3k+0{afC42B8Bn?*dOD8hmVGAvOV~yL})ju zA)1?Zl!hF=n0DiMj2g1o<4iwW^HR{Z86b`|x>W0t3?3A@x;%j{oPO^E=BQen55zrh z|BY~B!5Ok;8HJ!mQb|=r`mxH&T8q!xyb`AnOOQe!VL1gJDJY-hzM%WN$!fN`Ip`sN z!HwHOmJ|O#1vn!IyTdvgV!ZesV%2pNvaljI!#Y)2g@)bmNSlGt5Sb6ig2Rf22=IVG z*)<-~T+##h50zRfd%;5BKF|XD!Fr{~e8EM)lOt?A^))9Phrq6xA3VD!1eOb{)#|37 z$ZkH=@a*>2I-wxW)63)ObybYW^HpLS>Pvh3HklhZj26euW^)dU9o8Uoyg)ATs$0sO z_V{!zviz@@kAmdH#Kgnpl)le>VS7b~+3u4b&mR#eRJ()9GhDPumazw3FMp2IZ))AaNVoVGVrPFl8gQ#Az8%Xrb}u>+iFi+@JK`{1K^!g8LOW zXPy>!MFVhB%U5?@W3n*B17yJ)M`zsZIFdT#FRfJ~hm`IQZvZg+{*BD=b~m*j30m&6 zABk+y8JtA;8U)Kq%n=hR26c5Ys+{{pZDy=7@ z#lfTYjVq+GrQ+Nz|Bz3cawJs{*3Jn#xQDgmd<-S?(KZ_~x!mQ)ntOoC@(wg74fy3V zH~(uu63(&K8%|ITg42<>sN=92pI|K5*eTEwk;ohzT(`n_?3{#TsZn;HlKeC#*mlWE4aPw9%mk%%JVGd=CY#e$7sPNcE((zBApP5>-E^xf zEz!G7b_hnaI0R;}sMW5x8i61jr3J(-}J%ISHavefBn+YfYN-ke|heM`6V zZm6GqMUA>K4^Yb5{BrI^^Sjo1xW;D-gb!fg%tnfog%+xPC{ok*-5}~z)!_kQCBmLUK z&sS5;f8;0m0eEK+mY(mrI|Y$Nw<*V$PC4tZ#d~47Q00qi{FURBA6viHd_IuyJChTi zudwOMTUwS02{<(a3ROPa`zB4O72vV1hM0ctI~nQven%p+!#RHk7vDajUYa(!UJ$yqyDHGnaVG1{E9!`N9X0| zpZJ&}a;Z+E=*Rbk;xT$>HIsDB~W0H7(|=4Lq6#eBLr@kUxEY_qnLe=lNO-?%?Y_hxdc?$t|$& zQ+nT43Rk=zt|nvzCn9m*$w%U`&h9;7@CY0;#cUrh)Hxqj{xU^^GCEguS+93n7$>p3 z5+SG*aha-TCbM&2JfrU}$NJf{Y$5*usQ*M&lomie_;!X<#{QYP=KQ-GZBtdTtrHqh zKL*$|@qFp%$%PgB9<&>Z9ClxaJ!04zq#fely2U|?CQo%XNt_R;g+vaBb zJcLWf5SNCk4}JwWCN86X)J#0nXzkAcERgzsT>KF#hnBw#>jaHv3LH^P0owCqt{2U2 z){xiR+PZ>;s-6({FSxem4)76*sbpgIbDElXJq`*}z>Ctrs`BzjlL{?g zRNJ>>#V427_92Bu5qO(7Q?8|+NUM0P`ug%{cXEU4>G@{!3KK?V_ML?+rnQp~P zfHc86W&{|=zZ}GHVxqG@_3dKU%C%U%ow|H_8j(G7@X*Z-*xA{Gj(%Cr3}sC&{3Yc= zNn)p@>?XzA!$%jtqYWkMNg);TF#jU*4JOB@~^?z+XBN65_u$#l>}>bF)#aQVSwM=JJc*{mcjkQk4Ts$=YAc!#)zW{R5a`H#<&mn)Y+y=Z=H1iiq> zL4(zRHeZpQ~k z&ybTVnACMvj|LdTIes9~&7$PaP%>4k zTHG8KLE3`N*VK^4**4E_dUO@d{;dy(<@IJ`q;0~8uEe9xda~G%54Z(d%AcvwO#`A(F4jZ2 z8Ct7$0rG5?=RV>s6GXDQ+|B6oM7Y-#22+?j7#zqS;z~{t*9}ODD?|BteKt;09PP5lD4kZAFVW1x8Onhzn*_HitLSj?Fn@d z{Jsjm+!>YW)R}%aZz?78Jg%{h+=SfTEZO}c%F9*#noCuWg8N0vnmJO{X~V6V&+t5F z;w7+^jk%}6pd3J4=?KtPzym|JsGQLz!5vHv8n%DE2vWeUP!{+ksis}}7rU=fT3cV% z&k9yFgr}hk2t&YtIxLD^|ye(Hv#D160`g}@o`x; z?wFY|w}X$p-@s?1ph3(}v|m8)(F47|6^@U}S&QS^_|ETE$K%P$_I7|fUubv*`seZ9 zQ%nRA8xftgv;F%M9nUjD&HIRF2H1w1OwA}j5DpP=OO|1%yP!cY`p_E_`Ewf@k7f(# z97pVVXhVDVhAwkP}s!d04}G6GE$iy0a*BLzHn+{yogR(=B*oIEgc)j*j$sAu&5 zK?e(~Giaj3QHrmux?#nUNa0X!T3$&>l?+aH=PO?b8xXUGdH8`U-oy7)9KmopMH<=k zkx&lYv(?hylqFpLK2by&V0iPogAGgECMe5#q&~pT2=oKQ0cxNYR^tf<6A`SfC*L>(20ZEI5u0s^Tmvzu1>t3^5|{Z1FX$KQVyO z3X5$n`iMbXSZg9*5`%38#w;d}a{`U0j2Dmp8Xu6X1z-g?B`VPo& z%`!0F$lfU43e-%%F(h#71fvnfnTzTOgk{{L!(P3+V!z^!R{)&BF9xu03F^K!SZa() z_D3^4Us=dM{Ueh9)S9Y>L7MB#EkvYOM<_L0s(AlU#pXbf?&`8CZ{0!@T_kikWO$iZ@=5rfcq!qgoC;%$Ba2I@CL7TDa# z&hSJtdL8eXx6)SSk$+?Ea}e00BZ9-U5x2vsS)U?DW4r`WV1vtRe2h;lB`s&Hl@Q9S z=PLAMe4iRb<2U0oOt-jJ!V~E%hG#34dM-ISKkBHdt6R+d6Y}`9l*mCtM>o}SePq#< zC*{1^i=>>e%{b~0kNDA-FQr^?d~SSi{8lo|(Ps{X~*)`0bx5tGH>LU3-_=*JM+;CWTYqB zy&o;wTNr+x&PojERok)iyvb1{fF->Er)AMCo#ryV`}Sz;2-NkKs%k~b&8 z!vPy~L&ygcm$(ns4||KzzS&GzHcPp6F9gqg-9*@{1)sRB#;vyW)f$s)(<|)u7lVa8 zUiAcQ@iti}t3##tFW^Mh;k*5skO6Vi)Q>yw{QKNAdMr^ncIU%VY-jP<$u~<>yMHSw zniaYh7*2bl*%E8mm{^l`JzFLk%GA$!BfF6Ajsba}7DM1Aoy`$ zgG%P$aFnD@sEzNRCz+Szn%Aw+iu>cqRqy_Q#nkS|)f%F;gnzyzJ?H7Ii22~U*mT42 z_0=F;e6Vxx$aURm_TM8@u= z#;~$JHbx8+pd7N$&|r&_u%T6;##n@6%1*LAI~hsrOm#GhzU75$&5Sh&W&TwUnMhY=7w}ULl?F=Uu0)bbLOj}1k zo%SYH+dNBk7dSpyO~lW1G;Q|n_mi$Pu(tz7F|6*5QsQJI;HH*Pc zf2E!`SEtH|=%ht>NqVJ`lzefI9j`2V!}GDjDLbP;(z*$eZ{wc z+#jO$@09wRIik9oFt?z5lWg$}{ripMFJ-#*5pAvwLsBYHV!4Y=YmIX%?Fxx8LM#H^ z$^K2B8p;meWGhRAqE4bL@S?t1R4bG(JE2IZo0mr}dA2047)oK(Q_Jpg4I<){vOvlL zThlWm%v7_Y9dMw|R=8w*l{wtXay{sx&m8CErnQ zuu-!$Q1b2P7vhnV8r?Jwex(<$`)hU~p(%5WOrBqPu_UE*fADx-}wgl{+(Sna?nkbTrZVUw~pGR6>+xA1ZAk$ z+8+|<7L2?zqPnw;2DdQbl1M%uP(zVitX^o~aBX4LZs=?!4xe6qQ_id+=;TC^E=aBU zN_w2Y$Ep4+4+U3^Pw=|e9EjxOy(VKz-DR|a@4=h*Yguzfsnl&qUo0&?Jmzz%Z}elE z7vJ36oMwWlnoAWe?;N*@CnQV@r~J@`M)xu421NPed`GL^W$FEc{RQ34_|3_pC6DHl zYkNyRx_+~V3+|?55YhA*g4NeXo3$#_cw3c41+B&W`W%o+(8)w)xsZr!Z{ORwQ9dW1 zLcQOvb-$LjQj4?3n^xR!Vf18}Mef$~W4U3k|GCuB+M9pDUh`Or>0y@ognwZ$J8q#p zk;i|09d5_4G(-7tw)LllWf!hNV;kPT=5^7kN>f4VY6U|?C7x31uPRAa{#fp5_@KQ4 z8VzN`J8Ihgn_ib0hRyPqlz*#&Sy<|$lTUZP`_E`=iDrMwoGN?#=#TMK!l;A1p=^4dZ67k7l3bExi^6~2p5i9}gWrR3Wt1&~R$S&z zxE{ib58?-;r)p_Xt`*_X;JSN6y#d!U8m=+XB6}>S@56V?cZvgAf7rNmI(!1Z$ctiI zf9fk|?J$?Manh_*lS(u;G=$5wB^Na(Pv!Wj*--W_VJLQ3t=QGZa4{YZ&q zV1*-~MQcWtS0S%vOt|=H5TQ%O`7W^M>fm?cYTjcA`cw~}8<*{LT$Ybx{ZjSqs&^qtr`p$r!0=@MSjpn>%?XH}nM5!Y^ffykX_z|5Z&+I>SFio*V5!-{@^)B1=soe8 z5|Q%10@L8%Q!y^yCGw@<2gB4wRK*qNEHG|Y*Q|Q3*S&Qn>6@`gysc~O)x=f^;z>#Y zYK!3Tt_8pDQ9x}a?_^`nPUn6k0fWB0mzQ8)i2+4oB9FUKBP8;5s600=|BBuYmix-F z-gQtFKk5o!+E55GSiHqOr><=BoA7#Y(7Lbt*?xbVf>Em~!^~=g!;v>Xqy@>cuWd$4 z@zJo)c`$Lj*$MCJdqy(jyftLOBkhmG1bbVHBeHj+!*>SiBa6tU7_OojaG5IOwoI#z ze@!RBccHJdm>*zn%F~4Ahl><5#b=VAN408S*Ht6l>5g9<1qB6pjZ@{kvtDWcaX4MJ zJCkVruf6c<;^L39;EQvk+EcL?l}FwVqzv;j!{<~tZFqmaj;Aus)Srb3G#}^%@JtW9 z=DzctIQfTV#Kpya>RZCozOPN0QZxS(&s~4JY{2hyz`PR~Rz&)dUu}nShc|*4!QUD@ zh*F_*f^A5kt_RYW>b&`}YHLdNmQ*ftxLgM-EqTN>KRnb3l!IUZ|5TP-IK?JzSgj)a z^_uYpw!df_$TLb=@X zBcocur+1Nxf7lBdjkjUw&mF^H9*`eUAJ88l4+-X?=(&?w6di_(d|Zu?)-5MB#nR0N z80$abBLL1yG0-j%EUy>LCJ9 zC-;b2e?9`;2?C*%gAzH^=}^D;zepLzW*`mAFBB-`4o;GUCWQSr5=Ns1?G6Gs&lvs* z=FnFE8^hXW1iB*yT)Y1Hd8M9c}(qJ>-Yz9m5;;E?p3uFy%;tkNxQ zY>F-fz#M33UcE06O1R(Y53fH?qv>rLwS4ejcy zHzLzUKsv@WKo1Q*8W)iRqO#8Ms9!9gCXJ^rlGBk z-(a_v1w=SW1A}zLmk~sOl?KA*qk@R*C}0$efrJp9W09~R<)wNc;{$-WOqJ`toqkCd z@og6taoR-%ki}5f(^W+PGW#VI!wZ6y0fU5)HcFWjNc^v^u8y;4$>v?;zcX80G-PU) zss%$+DLm%^{!6*z_2u`9s9uMUce=p0s`tiARL%CX0(@@<5?viLCi&aNM2ID*hFAsO zWI3xs{=7Utl1K;dP8G;ud(KnE3W}SJWzD?L|I+4RA>jg8eJ30Lh$p2NmgsT7;AhHx zxk0_X6#G4JXVoPz&;2wOBWC_10>TFM z_9Z2jbs%oXH3KD@m7k_d)#+?byDIRGg{!d*T70$#<8?MK<^16g_5s3l=6x=}aMb<+ z(z2k(k1t3{&>v=SJ4N3o7ueJzi-%g1;X@-Jd*=EfyE_=gDuSX;vu)gFfMG6EfdlR<~ z7}|QwisIF<4UCSm7NX*!nx|oEKBo}TY?-w=SC!L*H$Vt;A|z_u5FWWnm-KZ-K6^hVQw%6+945(0qhYCd)xjbl&-YZlnk~JpOL4~59sBB!Em%vJ3 z7P%_OpD76VI{vm>lZ6Q?ouFVotSpw)e_9hAj2l1S8aSA*G1Bn?7`_XFT7a?2``P{w zp_C<9dik^wN;a5s|5%Ze5Kj*I3f6vDVYjO$7V#1Er;h@R{kMeNmPr##1OIw^B^QC@ zj|TIJ0Qn?(D4KxCZ7~@H*t(7x#nd<;aajL23JR`W;1ohhULT9OJgLY@0Ny`MX{AvY zBTvNyGhjK+#+`P&3MaGbXF**@Kx*UxF*PaxMRj#{2xM;nvXAp{twRKmn-i+nZ!YKb zeHE8}*%bp0k@|1flM;ZJalXGW@z_l>Grv3A&;Zgd%u=wRnS5*%5H)J&?LkZ+*D91G z0H6mCa;KV|_RIl_n#*_)A}=eO1MsF{vz4D^06wQ6DG3Ki)4}4lo{vlCv8zHVvES&v z>cv(b2SBNPVARFXd<`rKVQ9+fQy&GeuK%DD2*@-&m@IVF$mw%FnpMpHb~qgl=8ghcV+V16pb{7(W6G?occpXGIbVIhJ(MR%bLY+G^hT`X+QY>BXbISk8;|6yWn7C`d?2t74nxqHJ~J z#_l(tRQ4|8+-(AxjwACI>`x*EX)pk317-PVzNdJgz`+JU&pm6XA?&2B8mbt%IRuP^ zg`7T{0GLH$fT5rQd0(a>2dTyaWR<4nJBD&{NDx$-8RW|+gJ78`zS>}^72d8Kk}+}r zNcspF+<%;H2SR5)wIDx#4w>rM8$J^9DNsj-%MF6LX%Jr<5c=v;h!Fp%LclDb>3IYRHgi#bQPFm{ zZ_M078P(xEGqGdI17Nx1hfc3ng$yN1yw7Did7ky+Ar zEm_EfAaz}#EKZ(tx`uaw6!DKf**+46wAQn6k+iApl?X@D_;~}Li+sXo`9?1sVhqk1 z%Rfc**Uk=N17Tx=#4-KJ4<2XfC?*2L&#{Y-S7Bgq)uI0vz)d1Q{C~eXfF7)`7J!Un zUhz_M6YKo%K$pTd0e*$Rrq?=O%55OP9zkQ0p5G@C0y)IefC)D_LKln&s)z-a;O%0y zAzGg6N_f?Q#B|9!RR!3!q!wBBJX#X36ta}Ve-n~gx4WEUvGgAfkQcU6RDaT;6394z zygW9L&JK_Y`{$8VA}y5vvk9IU_Nb!~a~)={#f=A@vP@0O+n7tE7e8hlc=Lg6vxUg#$yq*?0O(;9j9tQ~Neg@?hl%-J8D zkH5|`g_e#it9~QalM8AwJ?D^|5T>-ynoD5I2GZ}gIq9F{RF{aXLG?CoC-m2_^^|DK zX2SL#d?ZP1DIRt!|3-?JGpO(~vA<=N!_oS_Kdt(sF)=lcU`<_1E?Jma7jq`}m?6g< zCsMs2w>$3=n}%*-h}V;2;-0hdu7>exnL!G@j5$8SoOmZuXs<$8<_7aQXB9(In4D=E z+tyq${5)-LD4p^00SV7~#}S9cM~fIZNldFC7G#ye_Lc=D$jBoH=j4rxB!W@6d?^tm z;K#-HM^1g?Rp zapv(*cK;h^3?`8wvNM*Zv@puPju~6BQz%lF?2M%>S;x{~tffcxean`_P&Af?Bugaw zUZ`wYlJ$G$d4B)={+!p$>pu6HxzC*QxvuN;R?-$GohKf}X1VXz_IDNtbifb1zkxR22z9f>qAN8rh$5T^>Gv-;3 zNO~m3)lR3KUe{tno6tR7A?iQXBP$yj~Nhos-Mb`yiHjYZy z`1S%vxDfYa*m_?a;!=uxE)IPfqla!{Rym9K$ki0phGLLSid(!Y#l7oG8MFy#UA?k$ zHh=7s+w6%8f_3pv9>q#_BuhI=_q+^LH%9&&zw~19>6d>RG5?5yj>$(fXU1z25FH zL#8+M(`@cW&`a$7)c--3&ATLsov&L=54(h^2E4K^yxV*<1Z=3$4^~}$v>kSNUZ?a} zWH-j%w;GhUxAimDOhCN39y>yWj1#ZMsAcf5S9e{pV$<-5ayPK5y7bp!VXe|j`MRKY ziaEIaH_p!rjlE@}E;@O2>3E-~EE)yAfw1&qCi1p?(s0nHcc= z6IH~o-5$e7$QyTxcxnYM!n=_UUEt5qNLB~ZHJ@XXO6yO!vU=*=t)k+Qmk+S|GF#_w zM>%b()#F#kb%$~*-B|`^n`Pzh#}~&p@PtZnL>TXpPdU69og;b6@Uo?vIa}EJy7@VP>!LREC( z;*~xXFZbI8Zq9FFJcP>Juz%pe3awgm*@da{0l+Ra%Eqp~r~h*S|NKv*yP}}!Z#eS+ z8XX$ssbsS*YJ7y3T`BdrD5IxqQV-{(v_E|i_oXS{H71Z58MtVCoA-znA1>|Ysr36e zKGq)f@r(W>S?6SU@4ow_cI8Lh6n9EZgE=t0XPhkFy<{K2_38 zF0-sTpt0}7>Yq}pl$NZBu~k3Zzy>|zcp#A3ZoqKO_-bV7@mn5^$yBMsv2nNUmr>ov zG+6T9biUlQ1ua8OUo4%S)bLMKqkK2_D{V@~pfSJAu8foZ&;f7$>o~Xe*Dfwn4kfBC zXLOUl+NkZ$F{L~%fhq4cl}H`3_i;_d!yc8-@S8@bfJKVHLU?DL+k@2JWU4^m4a*cWh26cc zrvdLe3+e7cQ1?7MITbW~EOpUn z-EVVXk3)!w1yeB1P*Ml6W4^`0Dy53R8ak#Q8p4(uOEZ?%m}vYnOIPo z`D)Jo6Gt`u0f8b~5)Y0zR2>5PACqEXp=s_ib@J#0uv2zR`KB0w0sbF?qZ3A@Uhr&w zBmMX0r3kb^W2-BBEwhLTDD2=hP%zvxC!}~Gm4#w2oR?W{+Ili^2t-|=K`~*X2_G<+ z>^nWiTG_>^{$OZ$5Nsj(w6_MPl`(HfhdLb&>U5X_8mqu`oS;@IM*gJDyXN=smEd*c zDM%HGe1ltbA=5!VI?m365-w4jilB}QgS57@RN>8urcD$RsjX4_B@~ zs5=2_gA2CsR7gan5qa7$Ft911cage|s5dbIOZ(6nv|6=eAR}x@V9+Y5tCRNo`X5mS z16VANZ2cd0o*mWc$|O%}O4zjUN3K)Pe(Gca$m(kFRll^xs7+SCGi0_N?GCvk6B82+ zzAF)8i+FUBD9vTqpO)m4-fd^Y#50f!%t|e31?#)J{j3ve4i9SWaOr}?9}8lXKF zdyfD8})fUo*|f#wV!vE=g`1 zBZ-M5`8QtDM@ig^gwvdynjp$7$Wu{kZT2rQ1;Ivc&dSWxtD%#k&CAt82idFDGfJJ< z7_d;-@ln!DBW~VAA z=;g`RHyY30`e{)s-}~mRe{nT%5vc*3mKJ_i58nApmNH-W{h()&-|*j}paHgi_|aS@ z`_(uPt#IZ%qFEGjC3;has9gehJCSH-QQ^Z+vPl(Ge7UdVJCm^DhaO4&lWb2IH`vWTK%M?}i=`Ha5!B0tXJO>a#MVTNF}3jv?~>lI{P z*x~gb-02Lhc47NjZ;kT_2UhPFQL2j4dOiptYqpbfBql#j%HNO1;K72N4xfM%U(`{? z0yQu?Gbf(=vp<$x)weSE7kUL0*=%-(s?}>&hI2T5Wu&mdjCg=QZ{lVumE;4JfMln{ zmTVAZw$me%}p~ zjXvk7^qjGJ_v;US48453NO|ctdZqc32cS0iJkci?P1f9_tF&tTe5VQ&=Ei_2ATUP> zUKqaZSp=bH8X4RjpVjAycd)Frj}f#4Id|PZD{mzlUS8^5wXx&3X*vY3A*Q7l-FXp} z7B4Y2NOAFNYtGh%I&8rqM+X5-AaR(*DQtLXUU^FsbTym>hP1?Z0v)UBF2b6G3yufzRk0IBog@@$u2D28uNJuFwD;r7i$POU z(`{Cd$XDmvuA3W9ZvnDT@e6~#snGHM9$>w>s%Zy4z2R)Utn2#uC>Hl10JH>F{(QJT)4BzM9FKU17J+`% z0b^8UXrF1`>IEtc*BmuU>da_1qE$qR&{na%St1Lr}X%p`wcrr$3})*EH8AkT`&QyH6TGO@?i64Nvw+wP`}TBF7js} z_>L}r2@C001)@rE-;I*b@7o61v4udgTAl~eeVJz58R?*1Toyxe?uTaZvjZ)^?9z?D zGZCy#KvLRqom&P!wDqmG{x1#oCw%$_sKI|{AhqR9PKWGY2HH_#`OQjQL*)%<86S54 zMQ>%_->Yx94c>xo(k<`+4E8*~x^j!Nn>bq{g32;@V1MCueZ?^I4eb&jDnC~}SjSo? zbam-iKLafTCO}JDO4b$>wqm@#WnA4U6l(R)=pCIn`7o9rxn0_J(SiB;#)d-z?#Bn4 zeS=}NbW7>3RRb&gO9hE86JI`6$QT9XGp(Fb9(a}nS_P6tF1E?O?>bI3zau>J=;P%E zBfuN*3AjJ^t=r`iH~1Xd;XXzwHtJWmQNHw8;%OW|l1NynBy5AxbK#tYH5x-SamI}?8< z5CiX#c0qh}bdbK5PEPDc!eb@^hipE$%h5RIjP4B2mTTO@Xf#bJwLxrKfxutreYpMg z$!F;@(8{&-;atvA3%)uw|K0hOTc@Q7G>23HG5tV&*S|}hO3HG7(m~gGskeKnqB?DG zQ{hKU2+b8uHMH9IwY|JVbjZPmc5GbS$DO+i$`v@~3;M7un4v~dExVhD2py9*h!T+Jtzuhor7UE9Gc8v=nY53@!Brc z0^k+)k#HzXTCD4&d?zAhl_{qJyD?&I~#A%%38_9RPn2;+eK#9&sS#S$D_!mcP# zcdE2OODbm`8J!z}LAgeiTp-4i2JS(l>ZRO9Pyz{|Mll0C>sUo!TR+GO-K+Ed>7Z}n z9ax<|^QOSc^7URA2gc6|1oo ziIJ6_xo^NRS6n#rTGsr=fF)1!%Ed0mZ}#d!6=r2A!)|#+^RzMb^A8vNZz?f-!7+y~X^y*8tFLT8xs%J!d-%bND+KC+X`LrK{#T zd-4Ev8v2Zgk=$n^__9^|>R!myp#5*el;uZrt!H83?N ze!8b@99~)1z~X=143kr>exx46-71VY&0Kvqx8p%xvdUIJRvP$yZkG7MyMtj_F(p+B z?4NB3G2VHC+${*9BtAvS=re?flKrk^Q3Xq~pz%#V+l2N-3%`gwNdga~63R_BV$L{O zgB@?BM9Wg_TV1Q0i#J+XSo86SoY3P#b63N$_N~Nf$KS&xQ(K%1bfWUnVKu?C{7(e> z#}NG~8@Q&w-!rxwQ;)wb(cipi#vOgjNps1fk#mGASAmos95%+xDUeQ-gX}}hTm%() z21S?`I@&et(&RjzvZQl*C>PvaBD~f`0FdgC&~Dh$C&*>kSfvzm`<`QVfEHh;Pi#g* zFn#)!;Z~kcj5U(2Ee_dRsIRR|i|W@gH)(9Toi0P~_IIwsZn5{(+=<~OYtW2~A!Tzf zTUz5i!fVfLMft^SrzmJl{SQBP=qkLLUJdH<>HXKL9jFBHHLvf+b0ya0!p@ zqMD4g`jVVnPzW8+7s*bH;!y~AEvSE^+y<||rw=DnX+)?obzNat+wLO@Zv8<8&QZjf#`ba!`1ej8Em=Y8)n z-XHLd=ZtaK`|Q0}%{AAY*SzN1e3F+HM?oY&gn)oRk(79&2mt}z3w(8-!2wr#<1h6g zAdrR3L`CH#MMcTv?QM+BEI|+u5}#t!;MJ9Sa8k7*!-Y*DVZH|}z+liqeh(OaefaDf zW+X&L2i`L}XGewB%8+MM!zviC^kg{COUr34n$+dx!JU3OZc$Km2lR`4i(HrYmuYMd zJPrqQtPr^=OTlk=a(N+Y+dS>0!%4k76cbn6w(MxOwjThf%Oqvk9X3H8_>dC~abb`C~$)20-e#rjTrf(nux${SW43!cQ z5oHQn;cU?!ZH8hYlwBGNBL${`Ot8>1S5}{3g?HI6xOET02y9Q)e;5nH8;Fy12|YJ} z4u<~7gQ1To$f$$f9f((q?pQ~bMhsud)DiN_4YCw5ZD57=)n|26(Yp9f<)ck*0}XAn zLior%*X-91PSj~d!(GZqY^#{$*}|5(WD>z2)UgeM8uq5-KMvKjNvn2*hpA&y4lEL_ z;5D&y%N2)Ve-D8+e11<=>n3{I$!UT(g@M>0B*ey~u1i|@wJ%~FZPQO@11aHHl=rsb zSYOm(`S=cc&7sTvs_jbs;~>03lin9k23d^tH?+5QO5U>J(Oe&=cuL4rU*X7g2O%jI zhvkHvWUj2at$fr-4ySPwyh22WQ*R+1_JyfpXMr_>6cN`mByEVign>du_eXAlzd$rL zeeQrk{K`bO}|NLff(_ z!V-cJ%tP>??^mSL0biM!hr?gw7kupj((!%~$Zx+FptxZ|2j6$RHy|5_p+=5M;eO2y`^FtVG-A|H}G^MW1LLW-jE zu=9w`L{4oRu+&kddkJ&oSzWHkvTpQ5&uaFk{RUtG(yi?G@s2v{G+i9*wtc%sK)bcom4C1^XT{+t z%N4c>%cf=asNhPpf%HKv9TWMPGYlG35=&~hNW2&gbu>m57Al5pyGdTsQK-a=9rU7L z>mv*nBvKU2i?2wnNE&}#_j-rgOI}fx zRn=Y*QTd%JCLK0y4DG%mZ?WUs?SxU2GTv#wJ(18Cr`>GbeLb_?18Y)i)+Z*P;W|IB zy#17Eq_CmXOY0Op7VQzu)!W;f-FwhG(hIfj*1O*85i>+9qY|;dQ~qWU5vTpc^0+OX^Wl1_eQx(MlvNwE5?zB z*UXs4=knd&oxVcJOc+sTXR?B{BHU*$(hA81Wp#pkN9iVJGAA-7N{aIK3scesbm|pv z;+^AAvkmjw!961y#pQaNfrB|1ft2x-SCp||atZA~9Uk)$bxn1i^O*DQ^SgCvXIt)& z?$hq{=LF{myQ|k#*CW?sXIwjJ;6uVZj!}mfE=E1wca(>C>2OtWui)5Fst76wk?{!d z;qX5rPZFlG?y-%&I^pPL)iiXR%bkoj-m_w0(KVbixJ@pWF&TB(T0i4-Z~o*f`QuZE zQHW$vkBJifnClqDnETj`@pHC7jk;-qa@BHg2g6g_Q;m(v4Ht%P9OMw`5GNcH#sw`+ z4QfrMGRum+($Pu-Eo{vR&H3_d%^P*O%HpafW6=uzDWh4-AGMYtGj&tOGpaMXWup7q z`!LRgd%WTpVzptIq4^|EW4fKGW_s`SEFOkMy2$%8x-&+W*G*4HdNS2Q1^KR%GD8eQ zS2?@t4cWT_zR(hk@o!W{6=6;0jc(7V?@YCnI&^V<^;);w>~~q%^6dM#fq78Yoi(vu zP>@tGRXJEWIWWgKQPjInEgFK+sou-IDQkP_khbeRewP_kAl}sF9oEdhFHkPv;&$<+ zoS=)e+G@^_S&2Dx5~qa8rp_h*()f^x6pJ)eu5yS{k4-Q2(0S2Bn$Q@>f$KCYEi-NE zFnrM?7T$t$H$Z5EbWLw%5hEQRom3v9il9*&!tmkK*KG5)f))T+{S(N)v&JLIZ;WN>H0|^)bl5n0|qY*z2B%xXdj4mMup7 ziCRqjt(ut7S9~ls`VC74MrZrI;wcw9Z@a$LgP&SmQY%_m*;#Y^7%>QRl(KJXyd3_)}@gvsBmy=;H-zC zZx8DS47Q(|Myp0r*@B6<@nJVfzhr;jkV>!2fB?hzb7Q30Y&@9+!7L@CmvlHzGUxGi z&gRYB$_)Z&JxTGC(Iv1xYqM0~NWB+mNDWAINP^N*@y_q-emX9nUEo)-#rC_Z;;CQF zN_$ef81FJfX`Gq}Bo8Dvf>2psTFLHem)9a~Iu9WwRyzoSyf1DSLx@6Du^V;5Ytr2^ zmfPHrNFOlIq^wHKOKYw+D2Co9;jD(hhVaFH(JAxpsm9dp`KZ`6S~kioRV&4O%eygo zq6Z(B#k{M2Q0KXdxPrL+nULN~^*}qTG~ae&bz-@I5Ij5?UFcTtd@^$i8U!VQ6~K~U zr-1 zPSdI@V80@{YAQ><8^YD<#Qp18scN5j^0|>pHe(a5uUaw#O#V8379*OHR)+`C^Kq9~ zhi3WZC9{epN_us;dog=nP0UVB;0YM#Z(4Ld&P{TvsSA(NEFE(^iUcDu&C1I1bmS_0J$*3ETFwwtH(ZkNw4-yIYz zGJCu~O20-+656TPt`8MB^O?G*xfq%6n(JatT@&~<+IU2JZZ^%fYQiBPDF~n`qrmRVLROf2tk^>g&<3I~@vTqTfxizI7vxkuigj~(lO`gBf-=O)93-#v zo-N@_LC-~uB4wLb%SLdCS*_X9V!Y?jFVO{|G+*Tj{9Dg^+#pO(%dB_joj^qK8Kf?0 zEF%L!2b@2HfPo}{fCbJVfv+GW;lFb+NE!&}-`AlaAcD*wVE#NK3mhLm;lTH?%+nD% zG7thD_=O34UDKidJ`LTQ4*l<37q|x@q9iIQ2^^IS?Li=G2U8nI+s|0Wzy$YVuc3_ncF;`w3p){P8j~1=;UM94!PW)Mez!L~ZOrWSmSaOe_?Fh-74B{Psr1yoztc{uBp( z2~e0iI@u`vIu8z{>E zc$HV)%oSv*@y5&wkQva1AU7u~|L^Dj>&|~#{2wLN|5K8Oi{*co{2zDz?~*DGAbU|8 zE1*e7!T(IxpTht1=AVN6%#S1gACh-n@%vw8{nCkqPT|Bf7+E$=8RCmrN?c zS^n(Uvon2lb+PkKYV#8+KE;R>#NR1(BB)jJ&ldQ$8)YLGdAJg|$!Zj1VO$r`+8fvs z+%{7V`-O&*J%%d3XLW4)62j65Ln6w5fO?(|@%L1$r7gYR2I}w6e|MH}A>r2b7;41- z?*h*u{8^h}{yq1vGI&Th5IpjM;=c=j8^VkJMf{)k{ubnZ#zMpQ-Zt)k_T~4zmh}F^ zf4%$rw0w)m2a#z=|N4Iy{xt&!@`nHKVWC1H_oCv>W&Kx8EHtNl|0RUyw&?HWom-Ze z{!0uWL=qPNO9JU1{2~0ypy6C-|EnhC-doiFQ^1csCW66>CT6LT`mdVa%Wt^+8_8dR z(JYa*r0;!b)%kbfUo(K{q5oS1|10`ON&TrUNqU-fCXx-1jn>-d4@tJoatB{w%A)bj461KL{;E=DDkYm@IzCsQchK^ z4)P+Z+^0WS($@kQtR8fri_#OcB7(Jda40o7)cx|{9+?oQo%N3DZ2ty=S8`&iy&ZaF zWF(%$g9(R0{RLq+89bJB=9vmJ6jB?TE>XL*zqJ}LwWMqJ3z4Og{5CGn(IAV+ zY-XFFSAWX145rkNe76%tCKx9jNaCWmoT;=OF_2E>M+rhD70G&sJ#v{LxHXrD<>v<# z(v`HN@fRW<)dR@T2N#R<&2Ld&)_s6m2ZX-7dmQxx)W^w&Rx6jLYaCn|7l&(aZ-2D! z_x8&8Cqpu~9cHEZgz$qmT1Js_bR{$=*I%f3Km@>czRmKLgx{0ZVud+;09LbhUmVF4 zf8{iT%%IljHCJNNvN=VSw^v(39lB80< zu($#krbbY%^P4x^bgKEmk*%$^PEL(8`mUsZ1A(_MfJuLIBrwu1h7I)uVf@7I`()RWYl)Qe>d9ldgzm(?*sIybEy@2 zxI)sfykq>~DWyRI z{CN8_l^?k#HLJ>x5})*0ehmQ3Z|^aVV17$BJr`D5KGs+}>ZKfq$S>y3j(o&HXM=m(KsE@a2#zlUM#f@CTm8XDSalt&Xr$hGVvxHnVW^SMmNZ}MrF zzAIFK02>6+Qc<2(jW3|#@$u?xXYPAyt2SEl#cDaIfr9+ctY)hM;~d*I#Qwxc!pDz_ zMv?|S^heR;h5hZ7l`D`N!92ZKKtb#ATu2fUUOYxE&Y+we6AZ+otiR!yEnx7S$Cm_u zw>Sr+fXBx=L*n{}cM-6t7dicn2NIW-$^D0wi}9mv2>JAapCodm2O!4>dJNL1Xv?Ku zSXLI5Ns_IERw+lszwCLuO&|DmY!HF+5B_M>M(}xDt-_zsP5$grmJj$x$iIcO#EH1Y zVsZ19zQ9<__?nyq^+|vr@qFdy0g7~ z9dS;}L7V;EiO*~9fZD4UlS?Fii~B8E zcx-H-QjVlXUT3!*e$2e@Oq;5#)`}+QxMCB}Z^eAm;YgU{4 zMo1$yF-fPXyIIoXX5XwH&qou6Ytea4XDbE zA_J!hb@Z;z`aBtfD{fBZ+cQyenc#ILZhuq!<;N!sr&FIige-G_!8 zZ(=W9RTJa(qc5vBx}2t}yx?V11P$}ANer}04cyKSFVRW%#t5nW{qdtqa1+9Eek*bP zJHXTyUvvL5eq6S5_)waqjjqR-8_ep#d1EFLTsvdk-Tfbu3X=Le8U5W^Z`CI808@a| z`;L;H7-x@GWAsn<&M?DRB-6dG#1(XHien_W80IQ$dGSCEwOsU1U`DNOmLqG$`C@&) z>qBo0!SE-0Ym57+Zy!nN7BL@}>s%*a5XVh%y05FiEcA3!+WQT*VkN{F$l@n}FoUj;h z@8u<`t+CXU3=Kx^YJv0`Y1C5VKM&gcVR9)r=2>VMC?HYnXCkh@7g{yApA#_X)oKO`9JgQ>L$HZ<8S{NRlwY-8wRWHM>3 zy3akT%oK~jeVy~y;nT2;TCJ$^J}%FN8H ztf>@9JGqFJs5UgAZ&p1&kC#Ymb9m>v>%offW`bKfO|TF7v{^9F z4W3V%=)FIfgB{)GfdoKAyWagtY`_T~GT}YVC`hm@uy>`(t%vs~08HBS*0r7PHZO&) z(1XxOIZi7`JuIIG3h=Kb<`jl*ewUot;jlPr@12->>G0#c%DEDpl?B*vMAE$B-AE-~ zvmiSkK&@K{UrvYQF znRJVuQBXXO1(Wl;Zg9rFpx}aWja!OlrL+of&6{xLDEjm-Fh<1S;+VC9Upn5#|6;%D zM=dHEN;-^v)S^W!OFPE@U5ehonN^M{b+5se}6)iy3EI!o*ueg zRxK(|-X5!8TGsj6T|Mn9>#s)As-X4r{Q;zx@qoSxT=<^uKL%wrSTGfJ$xMJf6FVQIw4~A=_H39?ac765QmNO?5T>VSdLRAv4-m@g zjNMHIL)>>MW@0{X?Tev!mSP8AdX@YS7yGl_M{D-k%W;F-=a-jJOS^c{jJBo5y}M%2 zZnWJFbhJD?!hB>8l;%<1C6%ul^8{M5wtLY!=pJRWORLVA( z*dZMt7#~RD6uI*Y-`n436r!t1THYZD*Ld5c7*_p9DE~(!MJeyR~ap4d|Ouj-Gq&~N>;NGLdwYBGt`=j`j zVuD{jv%b)bv$CJNr)=*s8A=V3iu*QPrsD90fQLvXiQU;#V!4T_B+H>bER9>gPE#$; zZ60!zN1M-V7u~|+ipdkoWdf~rh#28|kRFb^N&7fH!oxg!AlUa&E8JOYSSl4V`Sn1lM_yzxzBa}!0 zaeq!g8?4w=;*fKzRJY=Tay-MxFF>gT)fA%PqUp64M^7@C^cSLQKSquOEDew75(4&f z+=oFO*@(}1DuF1o^xxHxdfb6H{o$he@`rY;*yx6iPMu?$6tiF$E9l+Bj*Qt`xBe+R z^@cS*jnBP)f{lDj(ytOn!`!vC?2<8&+MHe!9LSfomtw|@ z91ud7bC(X`z)Y&rcxARTG*z}v)8KVGES2~bg_sqO>N|bqDh}0YsNT(3nhfp{K(?G6 zK9HsUYF8o>+Yj#Wdg2gT7;)aqH+81-6Fq5QW6M1>{Lx|9z1-_9)hpO5L*a)Y7R5kL zJ)Q?O(TYJY61EGAz4>xNZ2D{c_YZJ*{JC6(#phWVYP^;SxJ%z1q8&ne<#(YK6=HdM zYH3fXtuWn*3#w5MwO-qcC~!Rt-X>eNl_3nX+WZ>-*o()vOru&nL*JgoHd1Qn!T&JF zHkwlRrQNr}SDjPWb6cfQy|lMK?qH;mKGoyE3}IaD(9>%=%FX`?KMMO2Vgj8f=M;P* z{yvwt>`Yj&sKy4))Vm11i$iT+YQ3XkxMU+vBOcPK*BeUaARKE>_~>9F+fAhJ!p~1b zM9d40ww;qEAz)}P$SSC`Dql0ew`OduwGFNe)RXB2c(b_gYxIZ%zcMuMzYq2F4TvTd zku+WHz~C^<`R2yMR9MerGB;l(2b_P7W1Ri2a@gE>gO*^^IF3wfGtxjS7UunCgMPB{ zB*yJY=>eFl1rSP}A!KfNPlS>n)L6C`<*CnR;=vF=>4k$b;G{aM{I_rSTw`ahb{+(8 zh(d6fMcvKWd8NOI8|u@pRZhIVEYicHNpX-ii^_y>(dm4VeYBDqaJf; zl5^=GT913l+Xn{U8GhA3)g70>_drmC4rt72P7Zp>sm_-gya4Ueo4daN=a;F-Jaw>YPAIg35bVS zh|``pnN9`aAf@J$o!zO5?U&!PvzLA0-IpU2D5X2WlCiO6Hk?T)vo5z^E{(RcqF$nY zlcASGKEU-0M1exgZ%>Q?ZB+zn_te*=rNtn%*?9BtG}kfsPEo|Q0ikMm`8q}4o9%2V zdeOG(&HzwIA&v^>psttQ?e~{WBtp1Sad%{Bwy$5BZJnR=4L#)ZT@LEh9|34Nad3`= z;O8DAZ!P5B_TQwK@CYJ6Qnw-JEHs)h+gtMB33>*@tVcWx zKbQ<1sIG{Z^!pgXB1>0UTADLbUVsL7j`Fq>QE`Cd7pKsgCQ+M{xB6hSUXZa?ax!SD zGAY0)?}bS=IkVIT+peuek+78fV96V)*s6Ey({z^>TVS7J?@^Wd;s$GypK|j7JRz4o z1S7SkGZhH;Cxc1P5NMsIYt7eh+QS5YMrPH4%aIb<%>sn(wy~qbzA$K7Hu3&e6?uR^ z1^gy^3O0WIM_JBLG zgnU&^_iE*+Wq!Y=!9{phPT4DyX&z}UO#i4&dxb_ZnTB7Rlk$z%>+KzEtgJ^P%|fk( z8V>qVM|vf?#QZn?N~ScY#sBz6+g-p5*)-CI{bBQ7q>H%y?AM5AHzOEK=7H7|65_wu zl0YVydQdxc!^(=7ydk|sqE{=7rL)2m3#0M%_G(+oK8*sgWvCW261WpXm)$EsSHOVS zn1OdKAT~D=!wXf6Lg0*0I^ESorhX++3PyW+ zzLUC;U|X#p2}=d!lQ5uKz4jl1gZJo-;G~a`^-E~H)LOdLKYHR+6Xug`Z>4#SnLf9* z#pKzZJ`+oWKj_MhXkT7kHT02Od-rT|a1tQTy8uQ?p-5AO|Ds#Mac3^$=+)eBRuNz| zm%s=>mwBZ~{UYfs*X1YvKVH1J4evRI2TjI#2tYbUM9n2oD^dn3Obb>>y1Q%!>PQnodgaaNwG zfdTH!M*pumeC| zVa)*sl1+*#ochzZ8A~?QFZ3>2{4!>K`AnWx)@Vgg^0*wh;2y76aKGu&l&@6;C4}7y zQna-riT)70m?|}7y>*9b()sZ$m4sw;xZsuGuPePclo4>;=HE0x%fO?KG?0fq5qzD( z!UY{OExSWD4gR7*VcoYzqTi z3gDeW=Liy3M;KIM-Y*b~mi%n2csesN0dduEO85pTl%G`n%Pi|S%d*I5lEN*~8aGO= zA!;Q)b2`L1so5k6GhmxFf6LLm_m?~K27EEyB6pRBo9b$XtgH0;RjvfXZjRW5nPFF*mqNC20JSb|WcsSqos#hX0Cz8=|I zmPdmdI7h#bb+0ffaj!x)h}QSZS0hv(t@ok}n`mR{lXAZ%Nl4Z%h|xHNtIlcHPpIh{ zb8dbf3A#zOze_GYU`UA6e{auHIai$oaHQW7e5@WYmOhuS$o$rCAiA)Y2VxDlOws_J7eJ2D5AERF2iPSzUCcO#2n76BowrM!|P6Tu46cJpwFKSZvUZp)^zM4U?96FG=kB zap@;c&+1o@Sh!R@O|VX&lr=e_`(YSQk7wXO-E!lBSEu=znTGP&((!rxm%BIe`tkoS zRVNb=AU@sj2|-xR5#BuIv{Wah6h{?RGIL+w*idy1{PgKlJhvI*&#*KG*d=6SPvH&L zON6&?co4=2?45MWtToBNzj`$6weHPu1|Q^H5IMU(ST@V0S(94p*rxG(Tgd5(wYafY z}cCK&EytUJAcHoQD`l-7>?T&cAR5&+qJ zA-o|~&Qr`{S=+6(nK_F>ZchDzLdZ$ZLW8bT@7RVkB!q;v?PpcOujfYBAoC~b*m4e7 z8@*=yv_HEfq=iMl2d)B8LB?{iNi@+3v=Sj6xatdkot})`TBQbZ@-Aa4XSW?@F?C?D zDdE4}{wVKg2}HlCquo-kExaexHmRk82biAqUVC%U;wpzT&TRJOSFe8?8j&yb8IviI zksnM;vpg7Uwh)dDNhr}ia`jj((dPMie2O1`EDE(zBJJ0?!*sZg?RYR=YI{}L)a7+^ zVL19dPyL03u*Z$799^GJKpb%KA$?#egy>B{MX$yFp}$22d*m}lF}&`Uu#Xp_ki^Oss9H! zbFZOl^RXe>AopEkAFIZpCZ2=c#rp;=@N_8Z?rF}(RhmWA+}n%A&b2Bwq6O_*oHp(CK0c(ISy4{gqx#tqYO|b0%ZG=0 zco&Y|C%q~K$1@f-y>9Cn?jZUFcUq!Kx?gKU;<0pPZwKd%UKc^kt|1dcedE#VY2#g+ zQI6)&ndPdL(xrKbHGU@$iqLQGA_7sp2+l8e`+h5+7HGJ8_XDreBq}Y9tgWNHw7L0G zCr9A>$~L4NnhV>eYQ4Ngcv;YHl9PmlM2i7_D8F&PE50AGKV~b{(X|D0rqizKN8*z6 zhDxooevR^DASCFmg(TLjTiMnJ$v1srKVi*K#Viigp63$Lur?)#4%q;Cpn^|1Hkm|! zoU*g;3K54Ep@sWw;Gv4}_()XGG5Sv5%8=&QpTujUtYQw2vD*Lec7a+*!TWk;6k-PE zP~D)73%doWSKgDc0KuB)*`ZuSY%EiIS>s5t4q?ObHRegC z$|dGBfj^sQT2dav-Iw0x{3efrd`pwAG7b2(9__`|sp5olhsngzbIhxHk{r@B8XP)d2@h~hw$LomqPv8_hX{dVW771K%YQ>7~4b)$5&!1s_i6_ZD4R=JZOei9N5DZ=O9ns%}0*(X*g( z`=~tE6`J%xz~kbb@E~hfSs3Q

%*(e||b8+{xnm`(cY4lf18;JK(&p80|snQk#QZ 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

@JzpJ5-NPB;;dR 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

`nQz~I=Wuf~8n=!ce$YN+NkXlbjj5vgnJ+~VT6 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 - -2. You can get their magic link using the admin panel -Go to the [admin panel](http://localhost:42110/server/admin/database/khojuser/). You'll see a list of users. Search for the user you want to send a magic link to. Tick the checkbox next to their row, and use the action drop down at the top to 'Get email login URL'. This will generate a magic link that you can send to the user, which will appear at the top of the admin interface. - -| Get email login URL | Retrieved login URL | -|---------------------|---------------------| -| Get user magic sign in link| Successfully retrieved a login URL| - -3. Send the magic link to the user. They can click on it to log in. - -Once they click on the link, they'll automatically be logged in. They'll have to repeat this process for every new device they want to log in from, but they shouldn't have to repeat it on the same device. - -A given magic link can only be used once. If the user tries to use it again, they'll be redirected to the login page to get a new magic link. - -## Using Google OAuth - -To set up your self-hosted Khoj with Google Auth, you need to create a project in the Google Cloud Console and enable the Google Auth API. - -To implement this, you'll need to: -1. You must use the `python` package or build from source, because you'll need to install additional packages for the google auth libraries (`prod`). The syntax to install the right packages is - ``` - pip install khoj[prod] - ``` -2. [Create authorization credentials](https://developers.google.com/identity/sign-in/web/sign-in) for your application. -3. Open your [Google cloud console](https://console.developers.google.com/apis/credentials) and create a configuration like below for the relevant `OAuth 2.0 Client IDs` project: -![Google auth login project settings](https://github.com/khoj-ai/khoj/assets/65192171/9bcbf6f4-197d-4d0c-973a-c10b1331c892) - -4. Configure these environment variables: `GOOGLE_CLIENT_SECRET`, and `GOOGLE_CLIENT_ID`. You can find these values in the Google cloud console, in the same place where you configured the authorized origins and redirect URIs. - -That's it! That should be all you have to do. Now, when you reload Khoj without `--anonymous-mode`, you should be able to use your Google account to sign in. diff --git a/documentation/docs/advanced/authentication.mdx b/documentation/docs/advanced/authentication.mdx new file mode 100644 index 00000000..e6cd4471 --- /dev/null +++ b/documentation/docs/advanced/authentication.mdx @@ -0,0 +1,74 @@ +# Authenticate (Multi-User Setup) + +```mdx-code-block +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; +``` + +By default, most of the instructions for self-hosting Khoj assume a single user, and so the default configuration is to run in anonymous mode. However, if you want to enable authentication, you can do so either with with [Magic Links](#using-magic-links) or [Google OAuth](#using-google-oauth) as shown below. This can be helpful to make Khoj securely accessible to you and your team. + +:::tip[Note] +Remove the `--anonymous-mode` flag from your khoj start up command or docker-compose file to enable authentication. +::: + +For either of these methods, you'll need to use the prod version of the Khoj package. You can install it as below: + + + + Update your `docker-compose.yml` to use the prod image + ```bash + image: ghcr.io/khoj-ai/khoj:prod + ``` + + + + ```bash + pip install khoj[prod] + ``` + + + +## Using Magic Links +The most secure way to do this is to integrate with [Resend](https://resend.com). + +1. Setup your account at https://resend.com +2. Set an environment variable for `RESEND_API_KEY`. You can get your API key [here](https://resend.com/api-keys). +3. Set an environment variable for `RESEND_EMAIL`. This is the email address that will show up in your `from` field when sending magic links. + +This will allow you to automatically send sign-in links to users who want to log in. + +It's still possible to use the magic links feature without Resend, but you'll need to manually send the magic links to users who want to log in. + +## Manually sending magic links + +1. The user will have to enter their email address in the login form. + + They'll click `Send Magic Link`. Without the Resend API key, this will just create an unverified account for them in the backend +Magic link login form + +2. You can get their magic link using the admin panel + + Go to the [admin panel](http://localhost:42110/server/admin/database/khojuser/). You'll see a list of users. Search for the user you want to send a magic link to. Tick the checkbox next to their row, and use the action drop down at the top to 'Get email login URL'. This will generate a magic link that you can send to the user, which will appear at the top of the admin interface. + + | Get email login URL | Retrieved login URL | + |---------------------|---------------------| + | Get user magic sign in link| Successfully retrieved a login URL| + +3. Send the magic link to the user. They can click on it to log in. + + Once they click on the link, they'll automatically be logged in. They'll have to repeat this process for every new device they want to log in from, but they shouldn't have to repeat it on the same device. + + A given magic link can only be used once. If the user tries to use it again, they'll be redirected to the login page to get a new magic link. + +## Using Google OAuth + +To set up your self-hosted Khoj with Google Auth, you need to create a project in the Google Cloud Console and enable the Google Auth API. + +To implement this, you'll need to: +1. [Create authorization credentials](https://developers.google.com/identity/sign-in/web/sign-in) for your application. +2. Open your [Google cloud console](https://console.developers.google.com/apis/credentials) and create a configuration like below for the relevant `OAuth 2.0 Client IDs` project: +![Google auth login project settings](https://github.com/khoj-ai/khoj/assets/65192171/9bcbf6f4-197d-4d0c-973a-c10b1331c892) + +3. Configure these environment variables: `GOOGLE_CLIENT_SECRET`, and `GOOGLE_CLIENT_ID`. You can find these values in the Google cloud console, in the same place where you configured the authorized origins and redirect URIs. + +That's it! That should be all you have to do. Now, when you reload Khoj without `--anonymous-mode`, you should be able to use your Google account to sign in.