From e73dd673fd4b5cf79f98dbaf51708f829f1f2e4e Mon Sep 17 00:00:00 2001 From: nojhan Date: Mon, 30 Oct 2023 16:57:02 +0100 Subject: [PATCH 1/7] feat: better powerline themes - Refactor powerline colors: - cleaner gradient of color, - light/dark meta-sections alternance. - Adds a specific TAG color for `prompt_tag`. - Adds X11/Txt section. - Rename `powerline_full` in `powerline_plus`. - Add two sub-themes: - `power2lines`: display prompt after the colored line. - Adds meta-sections with gaps. - `powerpuff`: spread power2lines' sections on two rows and left/right aligned. --- docs/index.rst | 4 +- docs/theme/images/power2lines-long.png | Bin 0 -> 21692 bytes docs/theme/images/power2lines-med.png | Bin 0 -> 12369 bytes docs/theme/images/power2lines-short.png | Bin 0 -> 3137 bytes docs/theme/images/powerline-long.png | Bin 5798 -> 18897 bytes docs/theme/images/powerline-med.png | Bin 3175 -> 17037 bytes docs/theme/images/powerline-short.png | Bin 775 -> 2411 bytes docs/theme/images/powerline_full-long.png | Bin 10962 -> 32860 bytes docs/theme/images/powerline_full-med.png | Bin 3221 -> 17171 bytes docs/theme/images/powerline_full-short.png | Bin 775 -> 2781 bytes docs/theme/images/powerpuff-long.png | Bin 0 -> 30070 bytes docs/theme/images/powerpuff-med.png | Bin 0 -> 15145 bytes docs/theme/images/powerpuff-short.png | Bin 0 -> 3952 bytes docs/theme/power2lines.rst | 44 +++ docs/theme/powerline.rst | 19 +- ...{powerline_full.rst => powerline_plus.rst} | 7 +- docs/theme/powerpuff.rst | 41 +++ powerline.theme | 291 ++++++++++++++++-- 18 files changed, 366 insertions(+), 40 deletions(-) create mode 100644 docs/theme/images/power2lines-long.png create mode 100644 docs/theme/images/power2lines-med.png create mode 100644 docs/theme/images/power2lines-short.png create mode 100644 docs/theme/images/powerpuff-long.png create mode 100644 docs/theme/images/powerpuff-med.png create mode 100644 docs/theme/images/powerpuff-short.png create mode 100644 docs/theme/power2lines.rst rename docs/theme/{powerline_full.rst => powerline_plus.rst} (98%) create mode 100644 docs/theme/powerpuff.rst diff --git a/docs/index.rst b/docs/index.rst index 4b834a0..70984e6 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -11,4 +11,6 @@ Powerline style. install theme/powerline - theme/powerline_full + theme/powerline_plus + theme/power2lines + theme/powerpuff diff --git a/docs/theme/images/power2lines-long.png b/docs/theme/images/power2lines-long.png new file mode 100644 index 0000000000000000000000000000000000000000..7cc3967de100668a55a53910903de66b11d0f5c0 GIT binary patch literal 21692 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 TgEf5nr%!;cu}rzigbDbI5D?R@_|zr9g3amk=}o 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 P1ORGET8b6&7VrKG12t$F literal 0 HcmV?d00001 diff --git a/docs/theme/images/power2lines-short.png b/docs/theme/images/power2lines-short.png new file mode 100644 index 0000000000000000000000000000000000000000..f7967f6ba7fb6cc6e3065881d13a3638f36a19bf GIT binary patch literal 3137 zcma)8c{H187Z07*jI_*xHpS3NtCgxLtzsIqrG$#M)>@)pMbuJTY>BmX+D><(p_WJu zsy?gjvB|ylDS!w{T0kycH(qtr=*4eKU=TYsymV-BI zdKIlnAt7}BG<_=6vH41Fj%3jzj0pBx_=L{MP$Qqc^7+Q+qThDy+O`&-Fobuy!Hg5- zVJ5SCLp2H^aGQm~ZDqaERa4Yia>HWg$lBUzF4wwON}@m_NQJC0<8W#lOlM^rzo=ixKC@qs<;}={us3Nf~ zXXCD8ipymNaH<)stQcXqqEXENjMNx%ng9=BVf1`X8}+Wn=HX_BPbGuv)~EX~+b9aY z%7ZZ%aUXzbLs5ij%jLk$3od?e2-Nxq>1~^)AndhxFs$edet!P3uHo9|1+MXerFIR= zDDzTI^4TUI4(Kz39CK1xzj9$bL56hv(+wOtS;cX3kTo^fRvySmEw7!%%S3qO3q&4^ zK)P*DH}dM=rte@KESbD!u5D`waB-|x}PY!_jes&7b8LLExkI&~G_VkU;Fv881l-rH@QCj%U_gwZncw#t6Z9D4#fCsr* zO6ssr{#(at#zOv+PE}LXNBb70`<32C-cTPY^E85qV^RT9_T%1Hp2lp<-)Sk2y{bXM zm~2+4Ra!jj+@ePt&L-t_Ql~=8Z-X<)lp#D%Hpp6h`CI7Ns1e0!dXd4ZcEXotL&%@;=vi`cg4O( z3}cx$9iJ|e4mhhYaGMMr+kD44AX$kqd%34a>%7FObJG6HQaG@1IYzUFxx8G-pkClW zH-fa~q4w6e8J2q&bVcE+#ksf#n&SJ%HwN+8Ij$hlH`|4h=NsUa*bPebx2F}?+fFIp zyH#R%MpzSjs31kiA9iu;X3zK+fFwQ^YevyAIW8rr+4?ZUzdAJZu9fQWf_M`zU)COp zU@rA%hIHmZvchJ{O8m!$t#JOseVy~|I_&o{4X$@p(vYsWjMQL$I#$zZgN1zN#)RXZ z>f00*GbppBI4@rRh3f4y24S&l~gOLkM>Da{Ydv@ zhh>4`4xM~&rj)M1=@-AijgGhbkG;g^^j9rtz^0c{y#$<<(nxq!x?5CL= z0Sx#0$C=DEufhsZMs|BC#3bLvCg#?g#hoNvAHb=q(|pfl*cu#Kx}*UF0x>iF76Nvw z+34&tE~9st+|>7R@4k|*>f54pY|Mv8-UKvU&qA%~rI4@I?cj8#9A)!+KG8U}qQ{q$ z@p-0)bQgu=p{h4ZhuO@73ar#oMt{o*mu-JRxr&+h?a6Mvkq%ME0#d)Z78rkk6 zNb`4G;76pm92QfA$sa%NlF8PjoS~l%={%0c2r|6O{pdj` zR3}qbm$+-9ovhehJ8oAbaAj~pxO4f&ujOMfr(K71I8ORHY!BAb;GKE3hWaGU*PW2P zT0mh1cB2IJ607b-_A0tofDFq?lA74*8j!c_u9WL^fLPJfe^jPTROM3dPk!}^Jw8(+u3Q5>MVOh;4MqRoGby02*{iF(6Q$nsQCeJ zOuq7!l#**=!X38eGc>k?lb~6&me6G(sQWph%3jI4V!gU1uUZt9=e5yYh;?6+bdPtB zv`3_Ljr3E%Y3Z46A;BOm{QFD{hbzFP`fDRu5RbY8SemV~n=9iSd@dXn;T!ESb~n7kRGyUM=ZD@=js zR}`Z?x9?`3f+$V$BL_`hUnp8Oi3(!+R$0lH+V2Tz1H}}SnK8_G>(e5V zFEU^*P5z6wH>7T^{!$^0-2zOF(rricz-unJc3I+>2H|7z)-oUUt=$9qhLK_y`-H{= z6>Cp@m3X;v9lJ`(wnA)9H&d@#xL+A=MfVb@^A=LV&*K911If9Jvb;J7 zh0ugByE84n<$h3p!)D4*`o-HMXSamRqrNI>cAgG1DcP1>=^C6DWkAv1c5pv#H4r3Z$yoJ*3Te7V zy4SFB68wW|l7c#qPRtm93q!T=St^FtYMC%{R_*}ro&xe#@6z=u9u$`E?%VTfVP~v4 zS%6pl?Mex!ThAobw<=DqfqV*9=Wsrvq<-_S+@>qB@FoOyduRjzz>pKB;yFr`=b;I^ zeM6le$=xRd6~^$f{BpWOwM`SkwExlroI#?b4#jWvtMPLsJsc2uaQF8T3w;p^>Jq{9 z^VN8X0En@W+5s)9{sYJxCiO{NF2PkUCA`Oy`~Vzl!AT>-QAc6roVOq9$p<9n;t!uV zZhCZi&IZ>wGwi8naC&fQ_YS;xPz>j1LDT&7?TTn2EilcAZ(%%zLlU)jk2`S*#-p?0 zbE2)43ZJeNaYa&T@EH*N8s5Gdnf+K2DS-2{Bfp#Ckg)+LS6E?Azs5{vcVD&@ZQKam zalJo5ydC?R8Q?8;Gt%H~dzQYV_x5IQ{jQzib^PPye{o*KgY*KuCWCbsq*iRCpxud-*t`%R7JD$5cQA zo3uy8Y<2TSeeAY?SE=mh8KC4Hf|#|esLY$VOVe-FDul|RGeB^UN7Wwq@{*zHFByo( zM1Lh4``7pDv-zcMcChvHrhf^qF@T8aQ_wgNu?x8yVO&4c8GS2fkUMa=tSek1z~R;D z?ecUN=-z`)thssR6W1*w*fa4IWFbt00T1g6C+$D|c_Vz8ZobRwM2YK}JIZEq(Dr-= z3-&_OSz}wZ_3agQzoz5X^4|7K;F*65_m+x&>jjdl$6xr>_nJ7ehk;&*e-}Xf{QC1; zGXV%IL?tvcwHRa-$aeZIt9#OD7kvM=bI}>6JKEPbK4{>q5U73;6|++j6f#WJueTwy+`k=MKEUS-fSJe0*vMb1Llc z@!u~Yf`cA`cRooTOT)IP1i=CcnLZwLO-R)H@&uXr zz_Z=`<>-rqTx5xIA@4Aj6k(O?yb!@iE32Hszaz{m1ZD2Pr`lZIR zP0p1#J+%B%9p@RF+g7>$f+U(H94dni!BxtXu<(a8u#(5cs@zI-p}N?>?f86FcWJZZ zfzD-a@K2dLn=3x2erKDHr|Z*>>otm1Uc8{)GmfbOBRahN@}CSLmU^!-8(B@mX1_QN zu35{Lst(7s?vdO+l5d%jL|8;*7An%z;?48t)+anJMEk3WbMd(W=g+v7pGFtv59xc3 zwGvFW@67H;E69t?I+NXU|5DMrvV&M0z7Jop{t7*u&~~?pV{%Pz;H@sE8IbN;Psy9W zp|+E*j0kXgf_4pzYRUgh_uBg!(rcUl5Xzv-yVTqa7|>Z4Y#|;NRQF=33O*g^sBf%X z{jF>IU95{KZ_jJNn#@6jM{2o{=Qo3dY&ehqF;3o<{NH6U zuUd&`-ZLjrqwOaKofMr7ALls~r{co2 ze3%QKWe7)0z}njrDuwNN!boaLf+6R`t_C-)t*@od&3NG)s>Nd^GN=xoeXxE#mnaf# z2mE#0)g~BpjMi1CZSq}$+{Q4b{k2(V*Q>N)%bS#MIzyo26Njj(@8C%I;Nvq9JP@St zLw)4L1)K+HThxcL-K?5;#%|FIZHA{o9qy*-jw*%KstvJdxvE}?QYomwCRIfDNZsi( ze~54H<6FG4qpJ>wUUJL>2Km$6Kk*D9Z!VGhgH}3%c&9(WJ zL6?RSx1}zv8iMk}^mAPl8#6c=en+O-xH~(;bmOPga3pwkUReS@Y(BSAb~_5c3yL)s zDRf&Tc`dD`qa9)?`Z$WUBOGJ}GeC0?e!puf_ZWTD%1WVQOzWGnAw2FkW87u;Ae=(G zIF7o9{#-&_#5z%9vTtVloOH_`^1wLuh>TO_{h!H@2WKcpxXU=%kYgLjUyFaOlwecB z3{wZ1i4O9PRW+cRpSuWC1oDH1cN8Pt3x$;;A_p0^2(jrG-iX+v59_<|JyO9?jb7qJ z#@!kjO<{XY#+nNUR)X-=9DGUboE!0|6 zR7qM?^ncP1DCuPTCkjXn2onq$>Ne40Mrfcok1FNRM@DnoU`8vE%)?djX6U^_%Ht(r zU`zHjZEug5Ec6X&YeH*^puB@QySb>iC8B+$W9STeIj#Tpd?NC^0t@V#RBJFLP~w=7 zqS*aO*+Ki=a3+Kq>R(vKpq#$~M)Ea*;nVfa1LJT*C-8&kH6?ot3?R%u;Wj|J`6G9; z(QW!|5LF`uW7l<;C4^DxebjyBfNL5u;)9>fq)_#45Y^=GzhM{rhWx*1il~y9>IHs* z!{%XkSe8wC=2O16*x@d#NN(NBk0UTB>yUUHYoCJ67sIe9UQpGIX+0{?7J||> zO^wH>|9TMh^jg@xkz3clK>^&x5(sF7=Kw&6E6aO%?H_*d_tkA(98b=#V1;EB`-o0X zFtJ$Fz8iZR8y8(4ps?6Nw#IiUNQe$@0kHxo6In?y&=qvNh;{^mF0f8g+OA+=NQ3{K z-%{z2@Ig1B-K6Ekp$}ovF`;2_z+05Tz)z>IS0%{!NWY<;rpDA)DU8`!pWm-{q2J3FhFN;B8%1|tpG)RBpVhkC0*PHqwzvrsB&@ShKZLb2_sQ3Z+t~Tw)qknd!oUJ6X+~VmH zFW|K-oRDvDEATa0+$Z=ISGPJ+gn6PcIN_Rx&4Ed5W_PGSh$OwO)ys?XF5)OpbFFAR z?NsFFPa8=z6@mBZF?pRJ)#8)p`{LhRw-;w8mw+E3Kh%Rm#e~F2Ja68U2y)x_BCd_f z0*_y^u!jZ{iE>aiohG}vzLVdfxqLk&B>B8|qo6K(w&(@K zKO&I?=kx=!g0nbz>6f-V7}d-Nv}J2%;4(w)=N@N>h>~JJpcU&{X)6 z5>9uXK6MDHbuW=oDEW zFE7BE*6-5$sn>+cqIelDrY!XV+@{{G+$j)Y#-XS5*+SgNZS%&m4?jpqn#f?whys@8 z&!`fJzhD@xne1R;VVQ1wh()y?^r<0s>EG`b`7ww(b=&k*0JF*G3rlxaeuCgC0$w3e zhr&cm_>sY%1(x3S`%V{4COF|_k}2yRSwZ?8DRvv>yX6(&rDcg+0VA}a5sM9W=k?gY zlvZ5Lh~Bk9x|+;uo;^-J*Mvcen0s`RiHezf-GcAM!+yqR@k!WIa!moAbvO34MrJPd6Zib4Se>?lyf;hwQh!-zme1XOMc@Mg^NhSua!INXa-fp#h5?S zd%a^aS?qqM)|kD_l4<7mRuwJuIWyks9KZDe!S0wFw`5RZd8UEMwQh8b?LGc7|7(2P z?48YgBe!|t#AGQPV!6^IJXY~h8qXyxyWIvo!qWnUfJj)$>z5g<@2^5>iE}KTp33NB z%@-FE)4dxnta$#h>r&cNdYebg&@YG6hfCKfdcl!NUEQY2<-CuLdC`M2&qm+(gRAMi zx+ZvDf5Mz$89yoYni@;T^`rTDgznBG3b5}b*^wOvsR#vTz}Ha!#MjhESgzLPw#xPw zinBIhxN=MtQJX@_V?T^(sQeg%)5QCTq73i*X20?{I0s)Bum$&VBBo?yz~~Rb@o@%4 zgl(_*#>70aD@xA(VZ%?Q{tOaIgwK2p7wS0xA3)(|%sZ#=By?mmYHy)vMUTHAI^TtZ zI1rywU4z(ER0;7jINLYcw6Omg{O)vsc?>cadFtfO`$k5Q5a+ninzf{`uu9cQInj%r zTa+Rl)d_4`K7 z<2EfbxF7|r^gxj!iA=xVlYcVvCN~bEfkv>N7Q6^99Tfllwv&Y3ku$K~U<5R=2WKCq zph>dAR>S67nzO@_FFI0(28kbES~PwPo=TGb16xikt$VKOWLSJvD?k$ouPM1yiAr%J zb7BKnY}DYpG(y8VI1Op3sj6JCUr|M(5+-|(&u&A-w2>t*7MT-`N0Ir$tEYgg4T%TH z_N3IZcS-B|Gn$2L=6qH}fuUKt(%It4%N+Kdw{^D@ZdL*}3aP==bCkMD#reK4jW7b? zoZqVV66IpH>29LU+V})l|10_pT3O}9TgZK()5W3fzGbe`QORj%_pbp%7Sqp)e>|A$ zdUz*$*w?%n`Ut8MKdK0V2Wu-+-ue>4E&zK}y&T%iZQ$Wc!mW_^9;GwAJ3q8?U@DS& zS405$F8voHJM{!o)zA&#k74~4qDB>tw{H>cQgSXqTp@RFjTbl3q?C?-Pv9;FO)*1@ zucW~pjsFHW*>VsFtbXm<6!qZ5(h3_L@18nH0}tF1yZPY5eopr)M+wSLpj1-v(q!kK zv(iSF!^Xg-NiYfw*4|arWnmI*Eccw|^%d`*-IHU*jhj5?`JGnL%EW!DggwpqczwLN zZUh>#TL{7aO;y>EeNOQ%KyrCV0esWy^34Z+HyF$P=zdFejaY8=3&u&ZzX*sUzxD~b zy{=H^mJdx0oM$+J#3kVORYVej`s;n3YH}Eq1?P2N<<*HB%*HxD{eYeBOsYu-+llrO zO;Zpn7P>4gRCZ8psp9130>o1U@~M{Fq^^Itkk)*CkRxxVC~B*-o>2K}3g!GUI&ACV zTq8}^4qBn5q8XNvsSJZJQE$0DY*{hSn5@zaqTXkGXIFT7vA+*xbf`6V9bM~kK&LH2 zZyFbu=msc`9}ir+xCLj^(fPH?9QBDh&EQ7oqGEZyE;Ww~&@(rPy|pj_tvMNNei|ChQWwo=qPsdsH4)<7$0gOtiu_v;p} zg7u|tM~f62X<{eXxXmxX2+SSpH-}c5_CkG=-6*KFvgN0CrYgG0x`B@78vrn+@I;MS6c2y6Q(-Iqv*~=)~BL1NG zDo*O^uLVlW38rp$86TSB40#bjm)eQhfsQh#jTNW8`RN=}wLXYFqgTDiZUPDVUv=1h zqmZ>NVLt+P z_q*Tlq-0(5H28Sjq=sC9)|s4B)4M|!n?AA=(U?^b*Hq*%lR37g!w7s)Q40P2dh<&Y z+%95$B>)?(p6-jvh1I5}SR4|kqa2^hj+&rrCn`h#qMf=CH~wp3h;%)ZqHZFM%6~UQ z*!IAlHwU&D>?~cvw<`HXPKQboilMRou%OUz-nI`9Hqi)PCvG#lmHfjfs`s+e1n(-n z&Zr4kzN<*FGEX$VrTt{~?BL{CznMJ-{$ke#b;k6V?1HdtIi|ekPNY7PJmlF#cJ{PB z)8s@tg{?$db(vr?@KWmX;>x_}WsEDw$EM2<2AqmBo-0MwI`(C$tz>EWHqkoB#N``LiSE4nBf%0dUpXRy)CooKT_grTdJx<(PI8N;g~jc(>)N zj687HuFhv}@JEOZX!z%YhY8M&T4RzO3x4jkd%TKBuD2~bh=oPm|EO~cvFW@6_8gfY zlP8R3xard4n^?$KgCtH!TU7e6-{vddSCBi9yYSm9h^A9Uu&Q?AU3(nqcGbd|4~c(! z+6`cUdjeNRQ?2w7&!W*?zke{2iE@phO-u*+{}(2asX+1dE~oV&0haMrPp` zV}gYxXt8_TelK0#fjT=nr4d5MR}=LR$C>EKRctET^XRtfH`r`5rT`n_5Qz=kS0*xe z7Q%}Af(!wK4TRNIYI%MWA|PD6eA(J~qTfq)0rPsFh|zvK<0i`Z;+TUbrV_R-&Nl#- zbWq+5renA8GN~B?cX{wLxlVsLlc;N5(8gm7-)<3F`?cGmO=HP^k%FIcx4&P3t>5%D zy<6WZP?B5TxgH8Ty!D*5S-)yH@Et+xG2#+`@`p)ww-!#k=z>TjCE}<}^40|987b;%b9>%RGx< z-NoQjFpCCOY+bt$_Tp&fr`?Ew9P4(q>!cn_pG@iWP!ucAM9)m!o!MIrUEimIL#D$) zcAtqiuYQ7Nk&$WppFqc_g6Y}yPaTJ2k1b0dMnX$txz3Oc9@@0ZS?4J;Ixe}UZI{0C zF1*~&#U9y{7mIDO66Viu7>sP;?HB$Yv950i6nf4Ew!jXND2wJ!-_|Ch8)bIG_kTC= zkNb%d)!nt(^Iq^sBE!?7J_c{>?E_QW`!3uw2F5+azrXOaZcm+ zRtEXLMopCRGyj9@G;xYhDBk5pzJzq4=)-tA8PMm#p&GJV7RBmzj`A2wmWaOmSs_BE z`-YyfH}9_Rj^fd=%#PY4R5Mx2<6qdyVUg=W#K~lD`iGz%@uu;+SyxYQ>K$!{U~~Ma z623=7HfTlIy^hvjtY0Nw2Fw*u@T$$3NJA>FJiUKB9dA2We~nNP{N#+~5{kK%X=4{4 z!)7FsQ7g^CXJj-T?1gH?qZ-1b?Ow&}x6Jz4p~qOVHtEppKRB!}!hfTn*KyRe z{~9yV`nh`;H@db)KQ(vPIi#r@5*1f_ThfNf?`%o*)SWP2b~KkxE*9f#z;^pyyUKf6 z;dgPcj>*Wad+yr&j`wTjbnOY6iZM5ON|J6g!{*+F|6oLt>r0>@*`R8{#>-Y|ZO=TQ zmKTVNYjNgji1$XD-Z0@2q;=z?eV?B%6U`cD$HKBy^_SZEA>Ttb{p>L znc^{a+&M}Hj7Q5XJV8Os?&UcRz-Bh{=N9RKZ>%qeN=1A_qZ%1N4iv5=M@#iRIGgmU7_90y^kf~Z~_Olz4G1RKd=8b=YU zisB(Na+f!xr{$+SSK|$dV`c_pfTq6T;sritjU_V8QCNf-(-t0TrqaUByrl6Yyx}RF z!=|_U*N*u9q4})nmD?IE8O8gWjTFy)3DmqM)*p@W+GSyWfux%iOTU@9UwZIk5#li{ zPaEj=aTr{7gZ1BE?BK~vA*=mb9>~=qr^iaTmJ-n}2X|7OJH>+fkSQtGGBfNf@r>-<31LMSkT@>O)lf7`v@@D zt%22<4bZ%;H~s=hC6&NMQP11c1!5O(cx6W`In=9-d!j4*oXv{MyVQ!$3Cv^<4k4kL zq4zDo)0;Fb7m3Y3#*lxC`IwHsMU$i;*E!gR_2mknjdaBFF z!)pOszwKV64+tCm)s6+M3~3C?EJU2#@1KEg-PsT_#a@N;SJZpu>Em?RRTo&J5f8~)Xqvcs$E0Lej^_qTRlMn8_o^XSFBbmJK$4FgAVxhviSZxkFf zbBi4u{H5yo7P>|uFA)fl&s{JdpYojFj+{w&Gv`enckJ*Tt|{+Mau=!hoxI%=A_nh5 z(&Jsk`X4p^^-R2JRqjlhNJtnN?EO;qUBQIVIxU&&yYW=o7O^#ZAYf2ipe?J?M8UPO zd@R&KE3jX`9sI?4C25lyGxC`vxk~MPpsAf2J+4C$#iHTR)ffspaH{>PV$xwUGkXR{ zO{;XahB@Efv|UqE>AooE`R7&0uyUBGB|8Q&YHvCKQKWReZ-Z-D05ApE4s6 zJ-)Dy1p-XRgZ7wl9G==BUqd-DZu3rzQqSwxdb{0%O78EtD`5f0jo<~)nK%NYga7uS z3_i$LKR(E`KPR)5CKAZ+9N{`ck_Vr9$QX9peJb?A$uqroF=AE=F2CtYewza zUWOJe-Kac8p^fgP;-BB3ku`4ilRy35otM^600FCFMtLz;J({jS0bV>jv(g1djY_NS z{Fq9@+!oK8=qg=xzpt)8;o%mdiAkijE=7q#A7kT30Ndr38v7akx5_kRq5HjPx=Q|s zlqltb?}tikms9H+bQ~Ke_{r}5=b9Bc!9aFt z(V^)k5DXE2wPc;%^2*%NM#>;O$$UQA%Z_O2D=K9K;lfkpFT`Bb|ELHBEM4slcH8AA z_eUupJdOLm7S<@WWq9bK3U#B&n#Vt-os61qpO5*I=wE-_e7`4CWaZ8e=Z*Oz;JvxR zp+*@JsILy(mI{J^l=*DdxeD-38ym#l^d_^r=)}m9hV^u*6zhw-!l$l62WGO(PuprP zx_)55>nfD4Mq(rkQ?Tap(SL9OGynXVky+#GrD;aVw(@4U-LIy{RQv16SD;FJej_Csp6toEpRCVS*-EAvL?Og~k2v zaNOLoLmH9@{F@D5PV>V3;~u?r$~PGNEYoO~{qo!1ZKg^9VusAa5)MTK9Y0Ks3bxCY zqjP5!s~xeT-0-j+4fL{`j?66~Y{{tQP!4Wb4ooz2-vEfMS>?x$@ z{cmWavV;un0{^QqAdg93Q-v>QcV;;I5yR*)l$3N7cPo^+;CF-tQ?qLYh zoUR`O5MzwDrYG)UdfZii>O}FDJGpx4KySy$;`l!m2(mn)4$z3r4-R}AaJd?DV=Oi9 zhLEc?1vXzs&_EbyhWT7~UnE9rGx+H9xXeq`#Q+eRtTtORhUh>(+c3G9glz(SOT)v` zoG&brG-rpnv19r~jwXgHNDbrCkaQ&lB7@Wuo8U~4R%1Yet?2!BXW{E}Ml2&8-*i3K z{cCITcgd0WLUrqQl;<7{^7LV6BOVBuH~xH^X6f1@?cB&EG`s&na^FJ){<=w!%Bz76zx% zi91_;`ssEYT`rS&`1n3XhAh{!;!-I@GAYXkJNb2b?k(D_7TRDw8b3Lt>IxGHZSFL= z++ZRlXEUUaC?#L&huE=1K{z!Xwsh&^oidmaOo~&cJ3qePINYF%DK61q$BR}cxV|qX z!^F=m0ag{|fV11Wb^M$>{S1G=Lr22Ugp~9))eO`wQs1?wIByjqiA>RtVqIc7z?>oS zakyE({fhnIF=$gX%%A7Zbe2RFVbQO_&KVv8xgZFCLvhHq=~G9k8cr`q5ZfN$`o0Y6BSccW#{7#h=!)T?OJluE zl+^VW+v0U~rBmFd>=s~83ar!~wDg^JA@<#mk!}45v8`Jkf^IK}dzvN>1ku3D>JUTx zFoRzZ-msT@$Tix7G5FJ0$^RkLZkfQ{d;mB?EK1ikCxLPkn&&qp3~KKusvg0$ns>{R z@Pn=AhIjlxq{i9>$>@~Jy@{TiBf~63z(^G?twj&c;JPOG%Ir@ZBFrV9PTv z00Bm=YaO5NUYez(B|eH&8<4PTz=Vy>n%12?7$t$MnWaCRNFV5F z(4oTEV`=BX6Bx*mm?XooWT-dnZ7smH$v~}schzJ_9d9vC#jgT-IoQI!PW*P z6xX1cZm#MTe&qq>ZT|3@X_UsN{U>EYT1fVa8lmckL&9R=*Fw4RjhGg{v>Ttp!cF6` z=oy~n1m1GwL<2u zQ%nvAM^%H8A(QFR^jyzHg&Ly;u-Wyh3lX$*+YQ4W1hlyhMUeBhe`qYHXxLYEE?C}V zXrTld!~?pFMb|pb%p&t$#6ssP4t5)+^CkKY#p`eseVF{S7B*#^1PH~cWSx2RL&d(M z5zI6P-v@n$Nq91ZRF6)m-IG(!ybcEf3~Hrs|H ze{QxTG}_>xT)xG@OnN{XmQWdEVoVZf3CkHRSt45^V@@2Oh2WLruUn9Q>=}lAIiy+8SWM9&+?Kw-~wIT}fZ`9qx(i(C}yW6X? zNc6Vh3$`^c=rwS#6RgQM2;WX=>xzYV*E5g>YQn%l@JKTm&3QS}xXY55C5lt~-P+9y8(OD7!t%wjj>DPY8b~e)mz)j2-0_OAQcyU>3?X}ugeP$$Z(d_A@G!F^-|QzR|hj8*NMgoROB7_G7?LM zEYexHXU+vVS(}1dh{tzdD5m^@|0J$9C`Fdn4(d-k{;@@)`cfX;`j!lrnw`i-&2v#} z`RE(d?R0m%0Nb6?_yL18k`LVatR`f3+36YsqJfOt4VJ&z9Br;*$5Sp8BhKV!ZD)Y!Lg(3;%naK3TZVaX6>-3x%ot}OOvsCScjtIvK3D>+7qf< zzRnDCr=?`@w0sad9i&ePdRuQ;_t=*6ef-KFgV6YUYah!ID7qG;nB3}TlPfR!e?O*@2OoQ&|-M>FeLI!XI`4B1{Iea8j0VFXxu+)>Pb!eUFr7 zEJ14gFXi&TsyApZBC67_^Hc=ce%Tv2Ry$HDo-)wNVPTT+!lU}Ii8tx%p3XJiHwhRQ zkeP&tt$EaUez+>6#cV_w?2$@=^kib^zFlt~%nLxeK8fYxcJm0dc+?X&<)+ADvU*7u z*Ua4blf&X>b;Kn(XR9~L`fPGT7qII<@X3s-<#j9f-0X8biW%{7*a>#ZBr6t_y#~K8 zG)fl;bo23p_j$j5x;VK-yH7Y|We6z59%d!s>A2|_s;zmDK#^a<*6|wVfNhQ+ z{whliR=i!B^J@72W!GO{7fViWa`1cTgm#8H6N?C#&~Pd5e=7E+>iUl+Uf+TRCTbiQ z=h6o1R3r4t5~u9q*Uo8`xffuIhzNDw`_`@X74D1Sy5tmQJb3b zWS3}aG;aDMSmrt4(m+~)ED%!w|4zndtN!?Lw`Y-yealxi318C_QP#R6aji@&Z1vY7 z(euxO2<^G6v>W5B_%e)X#*(MqEf*Y=t=ARSXZX>B>jPOyUBa45b>{&xh_&Xwv(2Ut zyvf0!2Uw1lo~F)-=3$4IT%*uh0=fdT$o@UfDfIP(~9&K7BtiX>V%SfEWZWdQvyYHIbT)~FQI}okrl+SRz2443lh{OvO~FQks>!|eo0vcW#9@>CoDuy z2;aGxsCj2e5i<~anWTy!_XToS-b8N0JYr{ug+Z(Ui?Dm~8`DLQ3?e@_mcqk%3w1jO zeo%0dSw|XpYLRA(VNDMzejICco5a=QkBuI~vDb&qIL*_oR+gWl(9;YSu98P>UQZjm zq@;s5O^%&ABV);MEl(HkFPsJeZQTpS&J5Oget_4GgDn>(+fppq5p4d2iorRT8y?n- zXBFJKJ2``nLVyOl8s~%~{IEw>X*cxuGnhCy!3)oapb}zcE&RDTD}P&R%<=fM4fk=~ zypk96^IiBDm6dL1wdPjn2z}v#i&g(u0_^io>frv6+>xYgw)yZWlD$t3URrrpT6vjj zL+kCko_XgBGdhc`Y;3L<7Fvbv#S@FuN!HmIe>(bcGsZ)NF)A_39V=_*H~0>sC9N&) zD0BW0!k!QO^q-l0RxS*`&)6Bu@h=iI{9o^Qb$(Xa63AMl(s3*09XC?{OF#X~H&dPk z-`@VWDW~Gr{aqdT>Tdqc=0w?d^;?zpnuWA;QyC9XXW`^6ZaO96?@)cqWB1mr!2=$! zlM2J71QZm>ULF5eP|Wi3VD}J>cDdqZ@GMXFgGvtZsDQXmTF5}%s=XzCb3i4uqcJuw zm%~3>UZL)P*8KP}qvjh~xg`*Qj9|>~I4!<@kR|Ag4oEvyzyf9tAIh^2NTN0hz`oYa z%lk{p6wn7k;|;fy*m~$OS2LeP;Ow5%z&WhFYsdU-tGfBi_T}@)+Q%m_NZ9`k-52D4 zhh@2*Xg2Ysfgu0lmFz zw)t8fq9hGe3r+*Uvj$YxoZeVZ`~G9Uio~7es?Nk8I}{-CP4Wz24L^Snb+AAX;m+B~ zo$1JJPSId-S#)^AsaflcY(X-6Y@NDcU%M?!H@|2;y>gyEB${cY<*R%B+8e>lm@+xn zcbxfmEIl*B!N)7;+Z-1OgMD%$^LdLc&`;xUrKYyUd6}CQQ-k{^#xthr<9Q^a|0@I6 zm8u`C6mNr>boXbblf#k+HrJA_PSF?Ma-{IP_n`H?`GKPv| zKwK_EW}QJ>aoJ5SVn9wHs=bxpw|^f0(wq4m>c@3p=u3ovJs~W9{(BrAN7UZOfdWjz zulYplA>mjiIdX^i&b@Z31-2M?qHa}GYYHFh+Ve6IidSsUDa%cLIi0{CRk)dx3*~yc zxwg%K0O94#oIi0`Lj8!tNE4un+t#l3<7KFk<{fAWnfO04u^p(WIIRyjR;JNI_>G#u z+S>=1u1`QAy`FA*$iDOY(PW_wXtvx4T49tdz!;(4BG7PcY~5p#F-YwM7A@0Iw6YwRFdD3qGt5XZnGqFubr*fE?1!d=c?Ny_&>eD3k)eksb;$X^|fKsWL{ zzPOIS{^QBGOW(<9mymRp=7>u+W)RnPEg(EUCJ=JJbB?Kc$#g`sho;J0asJnvV8%A_ zMHr)SX7;Y6yiNGWZrCO{IrZu&*@t^hJlIl&QQkyB(rTXZmCf^`E|jJq?p%J!Q`Yz9 zI|!UX5-Y2(3Zn8~kDuU#ms&u9sXQ?@h&=|7%qw($!V~lqze|0n4*f74Vdsg%ZJzH{ zfjRix9u}7@(#AlEvCsI-2(=jb296pSjcuy%Brn)W0MfC-qXlQeyEf5OR3U%<%vR$- za*~Kc>tv)qJc?OTP;fBJkdd?d@^Y!S8hkoeZbtR|28DRKcH_yLvco*>N zu~v)aI?!F4kg)_lvvUtS|JSe*#6uIJzCugA*rcqNom5Skr{dibxe9*8+V3t)JA{us zHM*JSGM|TrKr4Ofk-&2wDoSqi3m+vyY9*JKH7KIayr8-pr2278{dc&*eWO}I3q5X^+4&MPd_^Ix12j8GEjY8Rg2n-+h6y;U zpWD1Vl^=VV=DXfEeF8!^hZR0fJ!UI^00obn`?pZy93q7hY2eHxJXuV-p$Ob`2WAmR zJPNStDBG6KzLmofYTh4$@D(Ar7!=_`ILQeknr~U@_HnY47wf$eB+Q&7zYSf{zs;a~ z*qInqu(yxj>{6@rPkhVBa7k+60=j(xw=Ipe?2KcsBz!%$4~;*w1v-_JnEtP6d*?zs zx(ui>3+zrp_OR0GX-!-HL1jt7v+Sm}P;!ykfZzDLl9gu(L(LO5h`o}q4Ri6C5scp-?Qo%?WOp|ZZqzN)wP`P(pLPNMu{DJD54F$eB@)386uP*x2*5nLntIq ztBV1T@?Xwi1SF*Fe@#9fuQF|5m(Sh2_G^Nq{G$?q2gnU{+HMXMD`9v<0c4vc_B|Di zev}L2n|p;zjcu#dqEI%m0((E)O|{9>)x#e)p&9x~qg&(~{U(vJS;PIy!|qlGvA}Jc ziR3oOPJ7VxdP}|y`4vx$cVb1qD@eo+#$7 zcWWkA&76^v7hYJA@~;oQzi7O&{)dS;@9B8qTbc*Swr^)2|Da#VxWC)bDqIl~BohS5 zF&0$TMnjn{?W(cEcA`4}?JC|Bm@?FIV`gnbP|e9KpKT`f3kbIwB{dPfw&EIc*nLJ8 zA<(|^?fbB*ORCs{H+mKl&3KZ@0}gEzCh!&)W6T(-)?Z4Iaz;Es!ESMFzKIu9g`Tbk zcJMZh2ac)#;5HwG;=#pT^XTPs3~ep;R;;dHfM2^LaQ??nv$8q7$Dnj(qT=!faWF+S z52JvaoJ1%F{kYycmHx1em8D~sz+wLnHU;iVarnX>75G@*Na#@K3DUa*vl}Z0?#dNl zW1OaI-EP8|3!~c@IPvZ_{VChNx_!oh3M=&;gpyKaV#lDVtc ziWi`g+@0IJuK6WSf36qg6Q{35Gnb_x$vjs)q!5u~Kw1sJ#Mn!2%}u2rlE@GQb<~mo z*{c?qDlKubmp6ls+)cyn)S?v!XHBPZtrzp}PyAWut~ITcz%j6{t8x1y5r|;b;bRd> z(w~0B{ly(~wqx@w?iU2;TSM?N9P>C?XLnL*LcyvMpkjNUwEY&bg#t>AJG1E0IFiOZ zHBFfs3w7V5_Q2WLPqZTeH{;&OFnQio4kYJ`Ws5Gf+4SN4a6Y^O2fx6Vey!_$!Z=NxZb}S ztxZG4L-_5M4>MFj6z_bcwTeyVfcsVXtnw2##$dnN6=9$DB*Q>;kaieyFdr-WPtWhZ4nA< z*AX|boYQ(8yjTnHpZDLx9&)`na}N~@)RUR1!`Ds2&Nsah{=f1ORMWK?O=g7H@7kaO zG~Wxhz}q9R$12#89@JtsHcKhN;2-~6aINqh+9!@L`w!AUrje)WioKc&1T#%`;1ft- zU=B=aQnv~{h2l9wDr@sjtldif~(N641O*zEgtN)9X}(|3C2B=%G-IyZ`U?g>}Lv<(c&-+Z>q zEK!~PjUvp1Xfr>w081K}SZQ>F0#ZZ2 za9uCwb4-~QLj~r3c~o-?uW*bpBtX4z)n4>bfdm*MBQfoWI)iU6wEd;5C+o&A23@bB zpZuoqAq6t)q!zwj0f6K-R{2gKb4a2+vf$WEK2G=$#?I2%ay?^uEUsvL^5;CnJo|I< z`p-%FQn;Ox*m=gKmGX^bEx%0(P|8rI`M$XRKno4O3$u_Zg<$*0>}7i=XM^|N_1fw6 zrzb6U(2~Nk;dOe6+khZ$j-p_-aBm3l=&8+Pzs&z;KG)ku=-Xw6b@43uQP#kzhB3}G zu8FBhJw!VE;}PAPUC*qTg?0n=fBAC!EY2*A#;HATksc(@c638LNOo}OrCU(0Z})E> znOs~n5l}0sXpu=4Ik7P7{h-imw5@owdDZhNA#3#^oT2!-J>_uJQ5ycmEnA>Pden`L zz7m-4`;!bat<1SyEYVp@2I7S3qbpa!IyIW9<-6-xB`s)MLps$~99e_-F<3}XZ|seG zETPHnjpr_?*DA4^>FW{rONeA8mVu5{&jl77$sEk zrAPHVsdih$!q%y9Ve3NxCK?LX#;4)7rxX!bETV1-;ttX2dQEhiGJe-SwL^2uyh0rK z-vur9O=IJkc}ElJuSjX zLW-Hqp6kyVu^>$0nV*Vq4Z@$6Q-Ce`FiFXnK*_9~)8zbrw#hLpZU>ArzAY5QRH89) zbk5`3h9NsU!=8~@tlPoh&LN!odt!O|NLPigo%}tlDR(kb4gg!=c(+Yt8pB+jk2~QJ zz|r*W5s#G>gPf8V2FB@TK@*R$y|jw!GFO0>(_V$ew>by2cScGh4Tsq4ScwV?zVq=9 z@zeU=M$YJPyt~su>J+j|^0NTQ!P5ZbWQqfht6U#utrF2-*TC1n$7Mg5SlfE~5;Gf# zflEG_CAu~y>?A8}jgH6>hnG#uDSO~8k$2oMGilc)BY2$blA{xwG$8ze1htty_ zZ=l4`3N9K&?ZKvwLdrPHv&hfLRJ^v_82HU!pj4F6`LKhKBT)bW^- z9pe8IogrgmZ8uRrriiDV;XBFp;9B?AuhzQa`+&2jfuORo!_IvPdI-oIPMR*ij`&N4 zgqge@CtY@!PuHRq@~{~g9SdTDW-DQ5U@VuH+G8urkdS9cu@;{h9~ZetC;kpVDf5NP zD7{TDz^4uV|Mna@p1C>v>3-mvXei`N=;D#qW48#bSZ)kfo%RP91c@HMvYEP5w;fjL zYBxM%l0uv+(S~x8kazQNN0;>EUOgNQ&AnIgG5?Xo`UDa}?SpJKJeH-cY`y{Nk&53p zFRlJhHg^?nO{Q?2W=VSm17R z(zz>UA@(EOwBKcnocIb{NAGPzxAiu+=9E-;Rb6YX^xkMj@gRIuh#d;7il*e9oCY}r zH+{*IL3I%ICOA+E2h~saT}B!2bGf%RPB`lB5`qHP^?KvrCzvx25Mog0NPMOAr#c0_VfM;`aZ_XP7P+HJwn0t5c1!1ezRkx?FH+ca|dNf-#Ns|9F>h{ zLVEy1dQD51(~x)SVCdTOekM9bY8ebG%%~Zo;Fn;^#L<16R(1{v|MK+h5KpPP!sm?y z_=u~|m>?S?3@dl5wJ{AB1O1Shh7s!oEUa6e9R}{5414FJwOb9%MDaDk))msZ$Begz z{f{TC;b)0}8J^yr9Ca*K9pWXoS{uoW(9&kStg{jrGsRe&kzYvRnH0=jjoS1MH+t7k z&Vs*t-ny!jN(SoR3Mce1GKr`5)+l$yTY@J@vbvD zo~IxaGCVx?s+5e2iY`1pXQ|f?WMDYb!{=?@pjeQ2%<86;Sz*J%jedt(=Zgg}HKrvp z*WTndt7x>{_&2Qnue9Y9DY$wWYNkqFdp$kSUW&#TsszxEm-Bn@@`&L>Fw7cNw@R&o>7OWjm4bO6a_|{+!%!mBVP~p74>g|vK562)BRlFZ8rH~AX5pb z(ioY@M_s90`&pax6zIU$Tfsi2buaOwWvbR`lbNmzRpA``d`kUx#sSgxsYQrdNTY38!ab5 zss1yeU2zHGm%dW%^+AXC_3r=b;@snzZr?cGLCGjg!u*gL{SY1vIjyoZCN|ZIvd!6Y zc%H~%Y~+wg4ms6$szq!$1P9f^^%Jzvl7kKgnAUH{(y-1q&u?(2G8 z*Zp~4+8OYZ&+dm;4Uh-Pop>ce4|Dov5p5C1Y#iiZqZXE`MDu=w7#$AUO%u2)0@17B z<)&2$y9G%5iuTpvti7ecT6NR3c(H21$;g6tff8~y=I9Im?hP}3m@?Xc7OC0w_Eind zTzgH4ivAE+KialkBSgDSQXWH#EslmNY9zXkrizyYu~oSVMiw|9J$=*0f;HR zK=iNcAMG)Vw%3b^+i_uTtTp+adh>p`(R1&#;qm|e>(p(eM!&cr=b?6JI&xnMqVZ-j z6Mm%?NcSNWvvJ;rv_x&TU=_WK)U6BCYBa5Ayk|MJ#a=%bk-~QXasJfRDBC}V5|Qf5 z&*~JKMH<#~)kcD_)?{W4hCxz~UdOjco9xz_|8;O7S$_q2#TsEp;(y;@Vu$h#C{_y1 zS0FZeTD)-*PB@6CGT}~LSh1Bd%kdwGo7_)VJ@d zmnLAM3;ZG8rGK#(c`v>ULfh@s3b9NN;!&knqV3A%KOTC?oY`R!@GVHYiPNDg_pJMw^5aIrPm zO3{N8r-TUlk_{t$^{vDa#CwkVy2qbdLl)-OKo^gZT!J0>^>4E^~Y!?k#Nj&Nvs*BVvhcJk43@c=;$gtW>bsH!;Fq@tj$%G6NV$GkeYB7 zbY^=aU`y)^@zzNh{EKJTy+Hj@pcJ>HpK=V4^b?1K)*F)oBPOTMhyj&xDb2T|((dDv z+@1cxZ4=-Ba!&CRL^oYJE*%{e6*Zi0#7G1bWa$qe(m=J|;{9knrVd$d-O3+935i@b zP`G82Q(kJYZlDJ;ukXN6Z}@xU5zFA{6KMgyJpOlYL#2?+DGo}-*H?>S<(qlAa&=l% zPxOdTX_#Q1A2H9q-H$X(f6b8iJ?(s{82C&xu7J~S>!P#LobEG4hWYKEos!^$Jfq!b z<)^6Q@`Xi2@)S@O%Rh~g9>qu1C?b}Wd;hsjmmN;w548qQs-K`M7W>}6F3e|35zZqk zX9cQgbD&b(r1ijCHd!T1gLPSHkbOPt3iWU*kl80gvfU?YU>ZrJiGF9M|Btq=PL9cX zE}E=P$;Ig^?}44wHhb<$1>u{BcGe*MddS7l3xaPgK%dSphLe@lT(u;$!@f7s$)6?P z5Ocuf_HUs^;$FYdjy)41TW=D{luYEv05IX<^v+y>ZGb=>yc?9c13hp$ebGaLJSl#MLK20Z-%H{vv44`eMRhv`S3R>Z%>G$ zzo`fdbVgI-pOP!LWMXRtm z%-uO|5OCd{Zr7ul!YRO9fE{Za20VYqLQCG_x2Fg2MuPb;{LoqrYELoXZ2xa&lN`bB XX#YoHpFhO@J&XZ$0c}=lYl;5p`k^!>4DQXk4qWk+c3ZydK3r<=UTib58T@(i z*U^8A@|)|v!VgOK_DyXI=-UyK!NS7Ffc`&i%6Wa!#(H5~C*ZdvXHERp`qX%gMNI<= zk0;9e9_(!rL!aQNy!)jtjI_Bi&fyS?vhw|tu37;xi1K%7g+3y}v$ampAJdJXDDC}j zUrvH>(LGkj*3#O-&i=-x(n4@n`9Od7)9!MjtE5+X7i_0$ViiTS&4*bDWR(EOGMvwQkwdjTY z;b=O}+w`6-;V`IPDQD}U%2Asvh=DIVyO7ohLIo`Il3u})NyB1MZLoN6O^x13*bhT& zbwJWP3g#ft5LLjauIn$C3FahB?y~-%4^}k$^38j^7?z+`0gHa3gBl7s*Q;sK0kgCr zxIhI_&}-Ym7hGUhW_aZeqUw_o7&x*6CPzjnMck}4J1CiuELtiarAnaEwUi`&^Y+Cc zRwww@OU-z!nq~wYp=`!918U?+JT`)c{k_$`^Oe7HD5yq>ZZDeN15336WvqBPLPMCR zn3%ihzje)D>h!(u5|~K*T79s8Sk=%w2NTrwpqIu***T=Q_D$w*gNB(o_tm{khhX;( ziglN+WW(Nj)uecL!!jYkdHB-9+2wmMz{Y3F7>4?7v=z0cRp_! z2YWoX0;vRWR_$L#EM0MHDw+(fP4ZUkgY7IsI-_b3tA7&x|Eh~-wP4!C0O<(do5*nm zKTckP*$n!ie{*+OUL6lZO#$-`qs|#;FA}?7ABa%JGV4LP;w9l9&lm<%!)b^i)5lQAmX^;2V?tpQXvQMqqJzV?wjJBK%nTF-`(3GnR8jZh~zitaHeaO>n`x$ug zj0TF8d(^wgdt#YC(_Xb}t|=x*)g?Ig`_AKQOby9jB#rGe1H`wlS>IF-du>6(jr8&j z+_p*+sQFc-#TjM(i&HPW7|Xw`I!FDUEn?koJmwKs`p8#w5=zhpu&g z#(CBJ{7Ysd9bGAO?xbV6XuzXW@79(}{hL67dc97Jv!DNMnd@3ttlq`!lbRbg3#4sF z-8IHM-ot@6Z0c^mSdYRz+aPX!7s+{v+A!~SfyRHN(LLSUJ&8u8M2U!}H*=P#b$vqb zt2ga@=?kP0+YDNtQE$urvB#B5{WlQ_vkiwO0wxcX`x(;-3eF5w$qfe`XBJxl+;{yj z2EEpFaKNdGZZ;LpPEH0Nt{?tUW#-Oozkhvn0GAAI4Otggxc|$Jc4+w? z?x+M6|9VQ<(NkG*@gjF)Y9z|DnwnBsq-hlOckBdJQ&TWzI3sf0GNmx35I9WwDf*;w z$lIR0^J~(J=lbJPxuV+k-&Kx!Wk%8an>HfnH|@6b_Y;Ila~0*kU%KZB{UvecR0&mX zMC`}7?z$^f)QRg&(4W#T{`YYiGJ{*uYLc+f^17qh50y5$RRxMVd=uijxkN;2r`V4` zRw(~Wj@>p@7a;P|o(hze`g;cp&+CIJm7a(d;h0Bt|D=5?LB?3-bk~5vABTQ$$Fg4( zCHsHBKAR|xLLwwsRd{eqn!bXfSdN@R69%E=gR*!6Ww(p4Pli{F{%jYlGWPGanHy~M z)X!H)v}_8r`T_r7Lr2*xRnA#qjypz%AHyAwjfbQp#WXUUb$}7D{1iz~X&ANuq zceNB2bno?W;9Ph=2DQ(`o$oAhQ(JKLG;Y0Ntd)&4NsV4>PpSHI%~K++4U4CX144n{W5o#L8wZE@f$d zMdrct-ait0smaeyw#dyI-=tV>rL~V;$Y*~vNI#W=SxBT&ki9Az8YJy(WI^a`u28!` zu_L4B6wf7%$fH?9^cnJsz%fP2Ukc^BP!dn5vfD zV)7dndH?OM*l;!2v=Nkm$Lc7OC>V5V+l&t0$~{=>?w_NtZ<@wxN4vZM+5P8Io(cC& z0VjEn?pbrLr3-8+Zi$=9wUO5~gI=W#&Fj;!Q4>AmVqA?ssh7;kd)wkxLm9i4!fI1h z;IN67Vu3(PYbR`HRg;GY8p~x7ph_1>@rhrLZv{NEF0BCH6iEHD+FQqj4qo}X!>-_; z%$+ftvB_^*<+RtZ7a*RCZnjF<4ov)%)-J|hTOM;Bg`;5d8tvd5`?*PP#)n@?ujI4> zGHy}7G(44^O$1V}B;Q&XTL0)KXW;7G8<`8|S05mrItmA!Mn(XjY(mF6#_g`65$#@{Be&Bpg#p_%7w_gpMx$ZFFnaqua# zFN<(|VRP+y-VZs_#2$rsa>>M4ZJ2TT2m9CxAf3!n+)7kY?`-KHylhq5pD z;UbW|mhWi&p_XivnW?eyA!v5T=fEqBnA9I&be!^*0?v2b28p_>n6uIN&=l%TZMv;Pn z)DN-vs{_Pn550e#Ppre0QLUFdnkS*ly)1|>HN3@bL(v*k$ujMsP*?t|1pf=<6yCaJ z_uUgJDsO6t$4*HmRe(u}69lP}svCLDx#SPkh$*9&ndvT;O_`L|SmO*~NDbJdXy;X< zWx3x7GbbCDd%?g=?mZ%PdEi?uqPu13N`=U~nq1QOZ~RCx8QgHHGUntbWqR(p*VOsN zv8bcH`>%;$BiT@P2@S;?Tz)(PoxD0GRQl0&Z$ud&)TpJSuMFUxj2Tc&6_hflD##lw zOgME)Qp*XT9m;Z5s6_bAbWgl6F1krOSYtxhEP{hKje}P{qaAX`kx!qXEF7Wio=-%M zd!LxVw=!%hLVy(X>Z#KtPjwV4NoP)|0vs}}jMwPp=D-ci2r8|jqAYYJ=8yxn@e{?) zEk}#ZW!xOvTFiaA1fQmZp$k;}u+21VQn^Ho$c4Sec|MsYhf!P{QX3NI{73>t`VgcwiH^&3* z8#hhut+cfaP_0dYioNT`RRwn_n90o5zse=vJxRO|psjV5(t3hd`B`Vc5Gfo0fC$xs1qG#(U7+)$fCa(GX=KbpA?ZHBUGmbnk;P_R zA7Pc8MbR^q>xcdIiMX0ab2R!mFrONoH_tYQ#F~6z-l)x+-R*pYa@?XIDYtnF^ug>G zeFHB@7uA5Hza6R%vU`Q%qTUF}5W#mQwchk9t>5N3e;TC9Oymad0A*~OfG8=;?Cx4{ z^b&{QTN5c8?J~q$5(RlYbR6sV@yF!KPy-k8rOq8_nrUPA-T)g|KrN06R|aInj47+P zyj>;VvqQm7R)Q3w(;do|d?GS$@ZE=10s;CPKJqHLscr{!lP#zspb=wf${GkMsNfan|q400U0p zjT?64=28C$fYx*)dv)aBy&|cpYDxPN$V$(}m^#%u`})Q-ar+RuyT%72;@`cne{$&G zqS|<3VE9jLsqxIxMLbq?eWUO9bBTP%QQ=cQI8|93uTw*Dia9TMyWTuwbyB$w(C7{tfNFim}j4cTa699=9vFe!S)BV7%MQ%mdMu;AN(9Lk}PBFo#`ES_F|dh*0m9fzrb zfhzJ>ukJ{e;R@suwOYRUzSBSD73J6>+ilYchp;nd$-Z$Eq?61Zy3UjiG}bY3g~p~x zTz$db()!QZJa9to<>zbX z0fEgUiIu&6gu&VVI+ypv&=h-;qGJ(Ty^&0|gr3}k$z5S{h>1u)ZVnGLz&QCpN-oH8BvRv+P&xs%IYYIsmXs$|qg=GIRXJUv*tOg~ z-QFoeCkqu;g0qvsUpTndIP@=>{u96d8m=@vcUkLf@Qtt?44HyC8)Ij)H)OYV;)TeE zoLXzxS)=@q3u#B%9?Msf4WG zV<{8C2VXD~p! z8!3J&5v>L@RIli?hgP8KRgN-Iz`>=2+iQ-|cMtxwS3Ha3u>$c#VE4Tcj^$zL_o{fk*MMg1c6UoUeyv{qBmpHs#T-ktvUy=BW1krYU9 zn(cse6uoxA9VJ^YpaF?_W&sR;lw*)!;8%yuxgG)4T-3lxvlb-X@VR2@E4Z)IRnSh- zHpi9g9ue5jwFPLbAcf7V%j;u;BL76BgzfhSQAWXoUM!^sLT$&6%ktu!2UPUBZenA? z6E8g8p9K`uDrJsUfRDt7oj0`S4Vigh1{;38Y!wx+bF4D3t7}FvM z8oDjyEiDl&T@GtnAA;4<#3^DFO|s#>HzexTI1-(4lfM)@kJ-v!H^!-T-fY1X>;)Zb zVFqK?um*Wf2R4VP=^daYXa~3hycU5y2aF(RO{#8&+9OuWUlL~^rXwO4HLOq|^JYuy j-L?Ozy#F7TXRxn%r^tpozvU9{fBE(98r>miJ4XK>Z{YWy diff --git a/docs/theme/images/powerline-med.png b/docs/theme/images/powerline-med.png index 0ec733bd5769a4d596e18664b04265cb9cf140c4..4621e8cf5e8f1faca88fda0900faf395862cd654 100644 GIT binary patch literal 17037 zcmY(q1yEaU7d1-J0tJdwycCLCafjmW?(Xhhio3hJySuvtcL*-UHAsM)_y6xVb8lu& zPI4xhNuKlUz4l&f?QjJ-aTFwcBq%5-6iEpYB`7F356J5upWz|T3|>Y>P*CtlUMd!FmNurOE}jmiq^2I0W>8Qb>(%Po33QbxU~_CeXbg$ple^zVJrMMI5;HQm zoQYemq8-#-)KTChOiD0HhI-%A4@sWl+~{>}$|}`-I^2)LLlp)1-@!^3fUCQD#Y5Y- z@@@xj1m=v(yVus~SRUD?$=FZ1%ocB(dLyqPqdar3d(H!HKUj!oK;&~XBo~Xoa9)1m z#ZX^)*PBt_UZPx;?JF-zU)*P~ZV!hGjFkA-GG_5YwOrs$yiljU9j5yzBU|sAmbX^b z&d4-S25L-x^0jN_g(xpq@ZE=|w?O{^uyg0*-K1aV^NPz0zJVLh?e`~r$7%C59qR3> zlOOU!;JS;NdeYcBM-q8ZU4&uxl?#kPj%zhf+xz7M2YA$pv0l{Vpb~Ih3ARqe3{0k5 zJe@5n^0>@oS2`!OX=Aasli#oynIQlxoPi2VV7yCF;+naTPR^oxo$@Jb1a8<-MEHYh zWYVIDUp@v^-!~?Eos*}0zZW1V_}2Z_^Kp%4WpD=Jb_;$!oXq5f^4DX0d&sOKRb`?= zn}R{ka`ly|5Aw69Q;B7rI>~S3(%`7IbkE7Nzef{(6ciGGUf<@f1f4X@jXE68~^F@(i5#v;Qznc5^ zL{w#K$7QXTWo4#q(l!Wf@4pL&Ml<`!nA=|qI=bHNUOGFae`aM~5%~yD8Lq7EF*$8u zOQ~)Dp1aj*v(+;C$cL8eW`HRko9zgm%ENGoIQgD$$UI>Dvnhq%Tgpl+<~~cms=Mml z?G0u5#59_u#7^MV2&H=X+!?9EjVzUgX(YR^O&6Zjq9eUl_${WGBhg8^v}+RPPYM2jkI1@#ROq&L`L2yGMlOnXTi;!Buf=JsE4^2hrX- z?8W`BlWPbOW#jn^)i+9&2lRGNSOzV0o~X%ejl`NK94#?6ML%AC+7{Et)@yIzm!nwz zOY0&lz52S-%>?(r2FP$1TKo~;jQ8p3qOaNPg1OKjjTD9(p%N(8a~6|=fv{@K&_$B$ zjzMEceNt&_BPDeACDax_vQ~qFvNhnQlwt9X-}zBhkM)g;m zbe}Kv?s62-x|!tqC!XPaSi@q^C&ycnknZ^Yl4SX?B5K(7dNi3igKX4T_tec-CY-Q> zZ0{9A^XTp}!_I)iKarWw@JW-|(=J3>333Y9CZG0|Oe74;2+zO8K$*JPpY4hMf+vDO z{6QylhF)%diWQ|0>QA4y^QS=#c9iH<9wwt5Mlj{jlecxsRgGIrv#h3^pDVR6=GU)R zw?4aiQEF8aayfPv!q}WX~Q5Z z?64y{k4by7g^R?78={I#Ho`zeMgS>Z5oT4rE*UPA2>qap(*9Q}(fH1$AxVcrTN}<( z1u;jevE`r}YAcTclm0wGq(7=e$pURa(Zy@T$pAb$7}P0iW1dRy0OOW3@m1~GXD&Bo z9?w)X5o#VCM}!c%wg{f(KC0Sion7#C7o2Wurog5(vBpJ_ws%=+G)A(<7YUE2nK0uB zXC+~{JW^Xd6dAmN7~|Cq^$j+Z!%NO3xxo~o(!DX2iwaZreG#deJ5A>WP8L4_ z3s=0qd1q(TXsLf#QyoEF=qnh?(Zxy0B_87=6-#T#!(lVl9YpMY1?As8rP63jsK7QU zL9zGyXD1D;{#+mv{A_UAkc_V!R^m0GKIr=9fnlVv3-HGEl9V+Ll`F_Q=`u*RO`5aa z@DpI~1LO05v9dROPEXc=@M;FIdE%fmp zF%7=MF>lr}o%X)P4RKnZ__bn*`XfM;PACZKn`)9mNHAVCKJ`zfCKAv!8kb+Z&aZYU zg98mgI2!U%w0DHwPPV&5OgkkiRF|IB$I;JUH{tNvHs1MLE=CZ)dcfB-rSvKxnDI;2 zHaDH1&-S9|=(MtWqP1;)g3omsk0YcOT*w8$T$$g?YLfaO-`BKvvw<96po+>X4^SK& zK1bnDd2j7+ZC!M~d6%pK(JTp^3gaUFwnD%f-bh+p1agKvo`pO8Atyu!2~B4xDAb|< zj!((7s05IU2riPcq6kNbnAiwJu0Z7uC@4}WNf99xkM)aecb_ED_fgvBXxAutSO8PJki)#^jz|LR2f6|R0%a<>O_8U!B>GBY>v^Wj!2zUDur*5lhEAd&oh1T9pW z0n@?`9SptgvoMs!W%l>4&gEHrJVTCmO++XOd!*8(6c%*mC-s%d3~8l00S?&i<^FrW zQ;S6gMd1GyBVwQ8dfm>!WsW8`<`R&s-t$MQ7(JQ(>u27Oh2ot`65$h^lbvA%x!vO* z+nL$XfqtsI816`&zr(t64E_xFMV5LO#A6jO!Ty!|T?x0X*;pl$Z3Sa62#>O&cLtzu z#p7}igzL+8&-ljtyXvnS_3fW(L0lhq;wcnEeK(HZ_c#of$pK1VzKZaDhAkjMhTN170{cgyas{2Te6kJD#@fkK}-(LWs@jUcv$Eb$KznU*9^mXvbcV~TU5cSs! ziCO-{OWhrOAN7wkWrF@B;>|nZ$Hx{=!2eEoCGPHYbN=Q zuP?SJ5e*vsxfn-Gki%DmWy+9_=Khj@zd?e{hH|xrK69C^%{`B_nZ}pxmJAv%+IhWV z13%QNg`m2EPm#UWSqVN~)G7Y^;fFZJD`P6$w*l6J9csFgR2u%QDU%3UMfxJlhdA`! z4ZlBF0smld)6;$P(G4Mne6KrO!A`3l?JO7F+; zs*P%u{)bm*5s+hiYQY~+RP=ion0qBB+1{}=d60M8UHTc$}2tJvfAP%YY8L(Rk7A z09{&b)Y612C5)%ZJj|#VK;dQqMKhD&Vk;!{`iy0W9R3J7euE;Mh&kHm4(wFn$ygkf z>!tDx07>LTxP~?r%x?rdoHmSktJbzi0@U=z$FJDqdJKQaRYr&1!L!&r66s0XpUl$M zY028G-}_~zSj)6U2ZKrr7dpZ|JKhZVmU`?IliRof);WU_Hrfxs7)a7fRohr}#1=xS zLZz-ZFT$2Va2wQgs?KD}u?I?V8O3)}ZO;8x$_+c!9^1a;$(=P*KUx(g89U#2Ot|0? zINQvmz84~>eO;T5*~;H>sSg>X^j&l78+&{cJ4bET?{F0R)T-8q3>Xv;ktwShBuoM@%mAg2j04Kkmq5w^Jnj9LcCDd6s!exn`y&(Uu=Ye>NgDs!IM& zN-nZMUKmYYY&>dR!%mxea33v8!r)Y#YJ44*j|s)juCEbx$9fUR-PULTv-^z*%5ZC3N=A1iFpXCt_0|2i}A)_N0$o#*Q{ zl69PVkE>l%YS9dzU*dj#d@K)AeoNCC25CcgtEowo$rZYnr)h2m;Espj_E%G8fVNWI zmm)gNu+RVf)J8$8a&vXn`@ZSP-`=NToC86M`g~fN@m~ zTPgPUBi$9nTJgh%?{!l=@um1XfhKLIK5ee&?V&3jJJH#BNqPU!&aa?t8VEi^CE}lg zEggnM(ma@X`HLRCagRKkc|R2K0K>`O3w~gJ=ElpO|I5L@J>2D~8by2|Sn2Ax^Cu)# z|Iu`llc&)P!*S;=jV7Dn8G}F;_j-ZTOu| zrr+LPdD^e|VeXDp(eeKoJy;O|cngo?#VgwOkZ6;W>pbdn?0YQn-UAS(rgCg++%IBL zHMM(tl8VT2Q}u}jCBh=TFPRrgV_`yt`$wX+a=d3^2Yv^SP7D`H^gaG7rRlI{OG@f8 zfcCNZ5>9QPmHS1FC~B0#)6d|vFu+<|qs`<`^ku#rt5kRt26kqw^^;3zOw?Y8wk_C~ z{1V^ZP)eV6PKdz<6)x0y$)`nm^52`RJS%2r`_t$FjTj}@Y`JdHL4~L38;L!iGL6Bq z0MJg~Tw2cN5*#zrd}?Wh`4&wBreuMm2{kQ33Y098JQhozYy|4j45q zPlH>p8lvv#u|6faqtKh%bxSN2yiDFM8x@es@|5q=8<)>xCTG^I^Ud`=+f?rXkLDlF zoGH^lQhh?$Abl4$LEhU zwsVdsejHRY@kWnn3b0F?ec`Tu8VF+$WB!we+mdM&*q17H>M7->J7(|7x}yZ7p-XJYKK9Oc$~DJ)xu&B(m* ztf;W1(9}JJg|26}zk&rpJDqFw-+PvBg$Yh3wT9aKZz72VH zejCJFXUAg?THMD5bj*Vx3L&xjhzDw|_r~E+Cu!U66~0;9ZFTq>LMuaus=(}1{3C`1 z=Rqpk)~IGu$vT_X7*XJBGfj8LeYA_iC@1YP#VR73RGO`V1~q6+TY1T+XR;I15z)h5 z;Hk{8EL0Z*wc|{T)$gLyS2JJXm+#Au)eEy265zb$C?QBEdz4N2pZ4}c6i4GtVBiB> zB!KMssI-J~wGdv#;q4we!I&Nb5-lW5*R_m4GI_tql?O$Nr!v{vP;VL2S+FrQ+_{45 z_~H)Fgg5 zyL;s6{&^qo0hJ-s*-g5+R-a$0Rgi~+FMcX5;BYEU;kQLz_J9(~Su4WrxO=|ri#+=i zSG$|m_x;c$Ok$(KO9dygg-}(3z_q%<9;$~WX>ml92InQP-T|)ljF zRp-s6Iyy0RYKFPV%Q?SD&}#c(gU<`7Y(V{(tW{y~pKQNR^Y@~qL#LKOu$i91)aIG9 zM(>Zf6ujEFo8d4)aK#RV>@^Vc`p5l8#}7{x=!HG9AW95FCR{= z+F2>j{hLPewUfY_s&FE7tu8V7Cqh)gc)PMU;JSr}TP(PBj^U59~+O2O$MEa49n9?$a3^YO+v7O_#|ST+VVIxQ2jAHt$4NkeQa8m9}R zLZC~AU%!&>FE31Xe`6AGR8TY2d>BbdDmEGg(}BfA+ws^Y=FWZOvaR-OI;XI(sHo^w zF|ZH!=B2C2DY)9ew}0SG*XEsWCe9s^nLd5K(uy|SDE|!ht#(19HaBu&7a)#&umBs1 z;eK=%|JB=VFcs9wPe6)HNFxp30JJiZu8%j9Eb0?}UhaIljd4o&t;?x{6mwM0^wJk5 z!t(>;;!BL{?RiEB=H)gzYEN4sbYZMWx@LbkG&bL0HW*lqZ6j&>;yG8odtptRzA8UniJe>s`?5`&I=FoY8h> z2clky+Ejc6iyYkoHw1RxqA@dwMnhYD$C?6Ow{ii}GW(O>AJZt(mwT@;Ff;h+?Ux@w4oetq`FjIhOwf7;*md~5s+rdzKAkpX@g?PqrHPaJOCuz6Y2 zJ*u&eMR!_Wys295YG9jvyL%?6Vx}EdjD+b$g50fYbRNJ{mr- zskKd;XIq8Y`AC^g|DCB+?robIh$24kv$c^N2%Qymt}mon9AW$VFZPq%A$xZikD&$^ zB>3{$WMm=NufOsnilv~FSnfl5Bn~`rD>e+kW_JHc05%jPPN`^=F-c4hYiRHAwp$aP zYezX~aHe~yBeS6C4f`=zMv`ZLjQrLqN`}0LWSgl@=FE#%lqA&(z63p89~TB6*Xdk? zO;=N5V|dj#<-9|cnwZOaHM{pt&|gru_2R^Ag0MrCg|u4Gy!0sp zy)y6?7esQ0XtrO-=HK3g%l&kix}vrbj|8whyeY=SNJIZUxjv}0-^(%GZFYZy6l$wP zNDz)9h>8|BnyQ-ex}`}+YodhjJ?Lqp^3MJ{^ZG!z42hh{;-hc+Gk0w89l3N*3@Odx zNRZ*-R4;Yru|SmNieG`4M=WA%zKX;HP8|=7RPfMnp{ZeAJsfFm*9X?Miq22Ql2MjL zlM_6+xk^G}nfMRCb^$_;oVQoc9s|{Y8ARWSI1CzV(QQlDmXq_x9@lEAzsGlp=>&d3 zK%dFr21q*&rBwx<&ek5zcGo%!&x^!K$F~R5toHV%9p{4f?*Q5yo|;W#B7%R0Vg;b@=9Uqp|#A00P+-!Ymw;#^fs`MGrE=yz^ znXObz8}B?{FK~{gS=#6W#iQ!(=ERfl&yG#bHFz>Pta+6f^!nj!;D16B`?OMF?^pru zUdW$rEC@qBQJ!L}Nwtek)_eh!ts=pJUpu6{f_c_bi;qYqQS8u#^W%a;E#GXT!!XSt z8G>+J+3`$VOfGfO@F%GLuGX5i-7_jUdX&|MTkpeD)2A4*Fm}itp^5iC`BNo~PxJLZ zRcx74Yx`S%Tp1ST`qbzu3<@+KO9T6o4lNt!n;BQ^s0+j6?Qop!r@2<;Wnt+xC*Jm) zF%LyxlE4=h_Gb@1#}%6eCr*xp9!0KAZae4D4nW6V%~tuIi67P0AX1z0z=&Bf0lLBn zBwvivqZF+cmD;PIA_WI2eXoDYU|frvU$G6|#N&wB`YUxhu&WZUNf@PPPBGQ{E~r%M zc72n5)jq5nstid0c)#y|?sbl*I4r`%X?U;pO0KJK&t1s2xCw5DuG1+(eYYUA&(P} zR=56W&ObjxorbM$16MNrVa8Fb*Zg01YxJ&Ws4b9cFnp^#PrP}jLV1#hFz2I2?aSO5 z`F3~DJbg=w3iX)$-U84V6bwc_Fs)fT-vfRbqpuTULRU5WHN%#R1 zWvG)%7M+Uoso?V#7x(xsj)!*Q_Wr`Oog+xFCE_8}Rpa6-=7Gs?c?9(L8uqhBLIw|8 z4mv!~T2?wjq1&+i~-CP)Hex+<~pqReQ24ks=;d}8`2u_=kAHI%rb@mssN zioe$yEc=Ab`|9_Fz-{ah1HuGFhtA`zmnKXyQ0->s{(C*?x~laY64Q{JzBPP5yTMAC zcw2oIp74CRO8>8;^PJtmv1Y{66T1>&$@CNGOg6X@Y1GDgbZOsomt_c*f4QBx zm54EY%3G57?|&%M6SlTMl8?9kN{{*F%cLbnAw9Tb^aJf~Vcvn**H-F!6M;DhzL?q6 zg_;X)on7`r#*fFQ@9=M#0zvFn{II{88v`!$j~DfM`dJ~v@(^HbQ}(KrvIH+iZhxgE z;yqjI-9VAj-xc=>27D#x-Rf70em>D8Ap}2Jw4ZBKg?7rQfOU#U%BzP7XyZ&?~Y&F zgS9ec`;B9t4S%um&A;DD6IH68{R{7eqLi=D=upAQHlMNpFCN=&9Q1G2=-w8w3F!CN z8{e9Ai+zoWey9>CK_Os$*yKOoEO$g68w}y%Rb$xBJC?CjjSvvEf_Wkn7&-&gVbvjLbd2z4zCnzKC*_H}n^NEEu~kevWeDRh1?5 zBi_B*>p*AEVrV;NDb(JC8>3eJ^@{uhHTAFdsMhtI%Z!%=^%?4yop9_%52Inao@ZN) z#sRSFfg1=YnhZbV|Bn8XF$VyL{2|#sTq?Y6p1zifi2O00c1(O+Fnq_Xndv?o_WOJN zu7Uu(z|EI^eUG5fRNaereHR79eJ^63PK`pBdYj|VFZ{RAgSlQ2{2w}Fag;gb=HI*@ z!iZeZCfy@v8@D@h$0Ltf?#D~dG(~`}{frNE0oG6NeNe>u%#pQj*~dMP2OR1SfKd*k z`bjhwWrVA2>39B3)@@ycUUlSdsMlY6n=82*%#kb0x|`ImjUO8|#=BYqI5iK(`q}(@ z3Nh=xzL59tZ6zLhO9*hsS*UdfWKwj_ln`qJxE5?7bs^tJcaWaNB z_M9{R`{RpT-=`gQk{qpS^F7*6n{SpIT9}%I*Yk2?RVNuRI@Qaml{H#278VIB^Vb}l zmB0lefRo*%o-to#oA2no4OkZ^8sWYSh!6t5md;g=ms+$_-)g*7K-PC^gd$HLKD?{q zuypXdDca_B%UOgt_ne0zl$J&{F=c-rhgS$EpEp_0`suJ0sx=HTF1>XB&EDk3;V9_E z*XK|Fc<}K!KaW1xz6r7so?K%EX#L|w0h+kWAv_+x^>!|^4QlRC6Hk&2e*WB4qqIXn z|L%4h(S(&+&ZozKfppXx-&b#ite&acpRXd|uBWZc;BRK*M)Bc8o6|)`&!L|JNSeFg zc%R~~J`|umz(FbnKr zQTozdXn$_a`GX$3qtpj;EadzqCBTKZeFB4n{lskuKGkw`x2BTGfeyAk_Fh{lK4|XJ zb7_4Jm-|g>VXj4fJu=FpZPL7ROo>js?G)fXg%_%QPDfwuf0mq#)M78tSy416A(LTp zoF7`D(Kb6&Svw)1Tso0hH#Rl`WMH#QPNqKdO{pD+L*Fs%y*^uJo0`1YZzv956rJO-ngYI@aOj2pM;(k?_GTH^GHs;KrwHM_}!yd%t$?(r*tm;{`9qw?s<8+d;rc5yJ z(Be#71T$T}_7YH4RAKl1iukQ@dnW=qjzl1I_;|b6?tiFC&ei2gq{(dQ$gN}US($^k zTpaT4sA^$hEMwYpsMuU?`qZPUH?HqJuedQMuI=j}c?-SrA2b({3YRD=aRsySyOxI!**yRc zUFownkP?aXHa~fm)NqYG+%P*$v(;h{p0`&ox(0{kI5vc-YcAc)(AiCSvC?bnJ)t00 z0dd68l15b^g+FJ`oCAWKTTe<-V$X@M?){aa-StOIZFXl@5PQN(5XVX1%22s>(A|Zyjm9qJo-DN-%x)xelAmEOBqGmA z*<`1Ll#~{`Ksl%a0&Q3PEQ*RXW}&vI_4Q6ZmX^`>hqChaUVpY~a}!&EHN2I@)p9Fs zPv;JcAGWO=;9RvcP2i{Yc9c6MH8tnl99rC3W4MV=#*=>mgf_-134!#Kth{Ygf@!^7 z53V+7Jh8I1d#6jyYSpb#^$x%x8ar@o{8nifk77-e1(PN#>=}K~x2c1q=9$|HGh`>@ z-?oYSe+8e@c{FD|(h}jE?$}Srp?!7jb~%4apr-1rdbBnDroi-O>)K}d-7^XSGNoKb z{6W+VI6Sh^5jCwT{ zU0lV$GLRL2KQ!>ov14XC_93E*kKW^W`~}Aw8;3-xq3~Nyn%diz&MHgMw!77y`*QtI zCAtmK(#JwY_J8|%0ewT!Ow#s4MNfQmHfzq7B6MYWyo=iGNR~Ob7+}Nsv;0Q$B#*o!9I<@+Tq6~Y`*=oi*zqT@sO`I|!x>pCe zpWi1~gi&RktfdMMBq`Re7fGzcrN6~$KO7H58%&MG^hP&uw$eUUCMwpwYo(2nz&ekz zRvvL1=@4G%&kI^)<2s4W^i{{Zq4lC&E)*2L#eZG^>l#ay8nsf;y1@J?v3BqDx3?^+ zI=`id=F=TBR&H3%YuPZ?K>H@|%`6nrk_MedEif zGZk)tjiRnX0i?TDc)F9g-%u4(OvTJud6%63DKD#zX-)is=jzGfwrIlEm&Z6Hnq#}H%H2Xo*UIN4 z`?>QHD1~NSh9kXzo@2?kHSc7JDF!uHjR$pKZ|F?r;SroemiU(}F(We-|M}(8$&S!; z*hcww9i9Y!gtOhcE8VH_Z<5ZHTmm*y_;@!9;<7fU4|iDiT7GrRf6V1dhn)$A7av)=8(NG@x2evea!LE~AP3Bn)rso2)rUOV3&WT%shP5O>6 z`;MTdx>vptj>Pvk0aM~je^5M}lj+$R3V)a8zH42)_IDi}rArZqA7P#Zb!(Jb+Sa zwqM*j9m>x9TbmygQg0`m36OK8+rev!G)4a&?G2}oNZm?ZzU=>vpuyID{I=Er81tqj z(}3(e2+`v-Iki9}w^LnDX9svyg1U1y!qeWCdvpJ=0uc+buXeP|^mWD@+SWR)cH*lI z4`2o!TH_v0>@oB;z&_=9jcTRiToR(Zs*O9ov!M`wLo!p%G!ci!apf5|>&5s#NjPjY zscun4l@A0Z9$UebX$tJjDX3V7t}o}z?BKUdh^}J_Pr_nz2io>|j;u0~6*!}5X=yR& znSYL3?V!5+_zlRzqii>A2B?{ZNAU2o-;Ud2Z?bJqT^wsGP*dn&OzE2CO&o2F-#kmU zlf$MaYFZiWhg-xBSyuFz7s}ra2Uh$;47JA`nQ*PmtZFt@GUf5+?EQK4C3(s5Tt@wF z^TlL*136$<(xWlbpOlCYasx<(*Zks>ctcsnYJe^;!9O0Nt&UU6)$7(36WY&_R;}__IEtWZu zW;NT$BJpt^;~W)Ex(C&KeoTq%_c<&A=VnjNMrO{9nb(k(11C1PsqzhW+uQj^n%exQ zAp1hycgru)$VReXl}4EiJ*wqxPFoHBMaRinapFT2BAIZY-XuGa=gBtQh)KW$@sZIX zC>}ZL^>ScB+279)QAx=PgTT$lKxbw);Yj(Dy~m4$1o-qYB;x7NV4d0#(1twQXny=i zy98meX<+{7RmYB;DqVYv4UW3#r({$DS#D1#RKJ9~#%bm46_faEQD%Eb1}KVt38O1$ zn+SCk-^-xjWeeRe{qHmX@!7Y)4BVfkTK95R16K}8WxUU`hggf(> z;Hq7b9zq88vNv3jE>*Nk$?WP!E~|4v2KhK;d=4e${9r&zNmxghN7#1Du zr&o<}I*w`f+{HST2*OdY2BV;7kYCBTw&_qH9zBe}l!9;rX`^~q9 zc?)`R=N}SC^iT#O^OD=Ihkw`W8)Jie=GI($2u{~4(qM4Y>$m{&u)_XSJMi|`jGDm7gvsvy#)nj}44qX8R2$x5JI zw4YpS>{{2rI$Zn0@T~?Zd%=w^iR02rC7o0&iBTE0hc{)~x6OtBI5eJN!B#dzF zC8E)^@*{_4B7~?UwX*d?V!LUy`-$ys?GDXw&?*Sp41wYF)#{m^HgPoIB=RZaO3p z;?po2hcqjz8%a+NTi-*!cnYKswp-PF%;x&Z!?9dUL)AuhBK99f$xh@?l$cHDd)S}? zP^A2-dO*?$nuv28{Fyw?(uek?Dv*l407myqm>p+d&a%E9%C@VNuKnLO7G2_^SeYh{ zIy}_tWW4m%r#^71u~rrX+z(755%?yc;9TZ|g76kh!^i_~h}Pk=Xu_5&cukMPD^vUY zf*^TNU;NVIm(I;MJ9LKgOfq@Fz{qs1<2+`-migb;D~LITB0sZ>8~6jv3Qz6siq&y9Mw3%U1G{EQlJFPR28@f73wZzvJD-zELZm% zh02av2PZ=1w$%G%W_(t^Kko?K(CtjAcRdp)j)VZ+!Su7Go#V=>Qk{z`p0l3ReTS+} z^kGqNzqfJw#cMQVy&w!AI?lOo>Mz@DJ>3yh2K$2yUh{G8>cXai7Jjtimt7a?u+Q}i zwE6jQPW=vCHE*L24+9bA_ps9p2+27}jc|h*bK!)sK~QO3eB*5z}TI&pHowmofwkF}v*-_HXjL z53@zsJO36m#MCEB6sDxHDiM=3r+SA}A_=!q_rkOl;`>ksftz;$D90;)#|C*m7u)g8 zD{{+@)Q$^?CwisbTfSI(74C7G$#Iu&M5+3)2RFHWHu)8Zutc!2F;dp3stacn&@gWbj>p}gqPm#_byJt9F*NW))AI;~h-+K=R26Vcf zOAwQ#`qwxJTy6e?%>RD2RBST+>3KFsw2`L$;m42C$wQ{Zm(_N=BHoktUfYN2{zvn2 z&a}b;|D?oYvy3!QGjXPHKrB4YbcM~lsIXjl0>J&W&95jJ&AwuXWb%QqX8($_Pu<8$ z;8~#yA@!8Uly9-_LImxyYX=t!Ll}9L$)9;c?!HgY_hfm}x>V6Fgr&p&-nPb-P^^PXR7 z0y$Pe>rmW?h?%95Gfh91vbAF-<$`ehocc@>iC(bKsbTNEbu|}TIBZ+Qr*)m)SlX}s z&peGlEI%Xtw7#zN-W|q*h99t(GlL*pT1mlZ{%*Y^lE;;YJ6@mXnF!;|;B*>0YfODN z0YXS)ki*ZMy*na7yRlM(zH>Th0ICVo-= z;RpJ6cu<^bH8QEFW;v6 z#9LMVD@H;Pq`5TniUumkxo0Ig0*7LnLITH+m!FuKM&zzOQxcHS?5|o?ULr&Ley zZmq_>v;*fJdoVhAo{i9 z9CVM#DWuDnp)qd`6^K@!uh6%nfe_ezpx)Aa`fN$TaB053C+60kq(-gTFy49jO-yXS z7N(y-*?0WV=&c*s>Xjz5YbUAqm{ees59sSVFfcj`_u@_AFCGJ)0s(u^6{WfKvm;OU zt-#_jc{QnD}%)13nm-*O+f40-s>*KaXt~TTXA&S>e9H&(;Cw9E5NW2QW__q;|nUB`b zhRUSpK@_$dv*Lu^=)OvjYki{}(S;oIFIO4K z2X`MH+jgH$t~BcsEOczE{Yc!{_{7@pvnL|?aZfL!Uu$wUU40xOguEsv4^j2V@cz}1 zBkNYH@n#w<#N7(<{bp=12t*_Hez@o<0zTl17raLp*1pF{H;p~ZTx?EMq>MUU(# zo@?f_Lx#R8ReqY|+3wr+T@hVLedve}Q)vK2nBK&RN*0+gaV-e`W>zS&0 zqPa3%o%t&)uj)X0%lIPfS8w|2E+>lAUd%q%A9ONj_J!hUiB!db=StW>B9*(j##9? z>`bOz#{7iStAx3HS{;iDP=mP13jLcB!=NZdlac&*ig#0ut$KL!E*2l44BRW)z|jaE z_YJBt|1y84`9Et`TWL?c<>~<9HzjIF8k0}*Fd*PqZ!ztHL>ncG)CE;rl^vpWy7$7Y z4RNnFP?DoGZysZ+U?XA<^#vh7~LLIkGY=d4?A;kFrEl~bPEnS`_G-F@3wEfX3 z?fYo*p!`*oL6 zNi;oVGs*xwc#5&DP)q);^#J<-oqX;Zv8D5!xB1S_?TrU#pHWL*98aGxFbb=(7$Df- z4MkFmIJ|4K$}L5^2!4CM)ZwZAb0a(%9-D*~y6(RjtJ(|O=qJ9vF@>h8t)*Qhg_={= zytw5#+qcL}VS;Nx(8gyG>t$itj+I=Ie&+-Yu>gwqlCyjgqkN4y^|Tk|gt%i)Xr7+i zG+1A;wxEf+y6OI#@NiG_-f-6ebR#FGF?D4H@W}+huOTA37_?AvC082X5&Nrwv7(kr z&cA{PaBR#i?AOLlLv3xnnGVO0U}8;&^Ui57mkw_nraprRgPGyJT7BxoP>QbOhTp!R zAZa_IXn9V#Rk5I9_K|d8CQ( zH6cR!lSZqVvp+U)_--HC*$ilnAy-Fl+9}Wtq7EP8xmQZAi)*)(FO32m-G2?=KhIWl zn7ubNJl-9qe)R2LgQXr<`?0$m^e^oG(7w-g4rYllTJS@tktDkSH#-ly^eA3t@vn!s zqg2=!$mZruR)TOqFxJ#ru4uM1VFJ15CR^anCZ5IZ{^32WOM((s2*T=_a(`CX4-M=b zT^Ze{b+Y&8oxkj8v|nA?-PP46re^aSg2&$9XcQZ5RT=vGJUX)4keL{$Q=cHypx6X! zKEI@RCH^Q{6 zPKU{AK7iF~zYSZQ7m&NtUQmSZ>$^`1_JtC|dmpUe!o!5Kg3I@}ACXk7&$okfoaB;U zX8$+nggXbH#sTfqc~Vza$CQ0Id2HC6A!3RQ3mxnDkVICKrZIK%g(OE0EswBZm4}+NkJ}RbYp}G;5FVG zLc|^(mcqc)9U9?gPRHT}*Abt}pP-gZPl}?+z;^7|)eOZsjgTK1HCSmRV#IDytNDul zzhhXq`F_{e5=>T|X73XdPMR&}Br2-O5feC{VTp~;cbqQYr5S>Y@o~Do#jer(Hx?$5 z8KORq@!18*ojZqA+}70XKv7B+RS^$b2%%KezG|UVyCve(NyyLdOl@v{KFJ4MACpMA zG&Cd;^=)6UF#hR?fS$!1zRvwBxABMlg42yCj=OKC9#;tdl+0y%z+m~oMv{k&TJ#CU z|CSG1h`-LD2;51lq^LNCt3Op-P@tgFB1n3T$G1Pt>uHXo)|n6r3@fc`dcKmC#6Xa9 zh5dbQr6((2lqnqL$t#pUF>*fk1FOR3|BS8)Mym8Ks$g5MSf#UHY~sJXUcDOCH(iF@ z-6iwBHR&ztcqd1qJ`1u5uh0rZ0N?8Bi;5Iv$;9Kw)p<1vh}VPZM-vg-K^Jn_q1c_F zjYgnr25oU7KK}xuH&12@lgTZn-kNlQ#`Y-FN#cSgR&kYeWd)qct8a&yZf0~?2#m(DQ@x}OM(c1h%5ncE^Z zyYwEg%6)ftZcDqjhDdt+#u6*hlyvPAXGH7@tZaoF8rID;1y0~!-{SGdq|C^xXVE%X z)XIK#KeexXx7O)tXBTfUSbO%;Y2dW^YF@>6=f!3V6tXm}>j3WiJ9}OkxbH9FxZ}rr zZ+iAjk@H`4)m@~eeTH!1l*v(>H8>g<2rqmwbB4yZ$sDtO?_hXT2pmTQZra?l{I+5_ zSL+Qn;Qm2i^IlxqSEnX7aP^`8pAWJwy2QfNazGnxcPG#@Vud;@Fn4_h{gXeYeg5oA TwO_wM`&B(%{an^LB{Ts5XOZ%Y literal 3175 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 Y;Mf&38NJIWK!@kVU>ibqF|`R9$V99NJ0 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 diff --git a/docs/theme/images/powerline_full-long.png b/docs/theme/images/powerline_full-long.png index bcb4c253258e0f081dd7d6e56e9f1554d34e832b..3ae608018ea2f558655c1aa689eb4227fc3878e4 100644 GIT binary patch literal 32860 zcma%hV{m3o*L7^$HYc|2iET}6+qP}nwrv|Tv7IaUa@SYy|EH@C`&1ou@3q(3E8@4j z1Uw853=j|yyp*J<5)csd@XtOe6vWTEzA|h1X9I07sp$j+gz(dWFbteRi+~FRLQBwwG}wr^|5em~_1B#es!e504cMO)Th-2sQJF1X2Kjg2D}qqAbit z%ueAi$8rt-!hkt(K69>R0hoRno1{@|P}@u~VYzv@G`4b^-EMMoz23g>I)MU3K{ZAD zpW3X$aILGL(Eri~2&n=&!T*OA@&Mv8B+z=bxuWVz#kyaTrZ;$C@7#jB6C20>4pp{v z)}*^xMGl6YJl%gn_gM#=(puH?`wxd5NNBC=VfCdna_43UJJY!&V6(B;37}+A^SE)n zqQ3MCD{xcw-<#}A1&Yqf3K-?EOAGA|Oo?9R$wl43)wLxf$atCm%?=B=z!E+~5S8%F zE{ZJ&8U_uZc2=eqc=pJ)L+nPh?%uw#v+2FIB1c7DLdrHx^<=FqaPTc`k)b7ck>Qi1 zBbh~w8LitJw7qi^n#8sP-2c$;vnq=34#oFn2Z}vw&b4Vttq7VKvY!+@B=*5)ucMu& zhJQ;;OpG{k5=&P|=pbzh9g@B9j%v=$&w;V6Xz0Z^Rrnz~c279Pou84&g-@EX9Jle$ z0?D$aX|Nwfllh#jdJmm1IaJoeHc}TAtH>-)d2G_RUEkObX*cjeE*L6xv=-;HFg$_R*epKxRX3CsP^1I6KQ_e}B zWBufJUc_|}_s-3T>v6DsZvy+)xJj>Tq1E@^B;&C|$h-AqL2#IzB&I1nLDTs+Yjqu+ zXgXS8(w`yc+hKj`L`k5SQTB-Wec-Ee@({Zr|4%<8h-qBfk3YVAP(&n;^K)#bZFe)I zmMWWqiYmOkoGKQNYmuI(5~2vXXdzs$PNGEZD4|&XZpnlh85vnfTs&0a@86V)^`wG> zMkWN6NU+E4Azk=q6ewvhA!PPkuVj$3e$LJ&2%hg4%C4WmgY0sGdescjO_ik zl;&RCI!Bb2@;4!&A&kkGK?E%Y0o$J_k_hV9_C4e9Gb|#99a*ucJRsTA0y_wJaFB=t zv(vDx_9)#SiU^dGuy2n`SX~!F$lqQi$2kEu2za$-$+__7qn6-M z0iy&wRBJPk5|PGl7iG8qrmYAubUzmKn>Yl@+tU|)wO(L*s>rwZEohdh`C0lTtp%}> zhCJ2~&#)kf(8fz>Ax%c>dO`BdzCIWp3W$|7u&#$iA9>sY$yzpMbJayha!DV1ttkdQ zdYa@8bcT_3g7%TAkNw_I8_TZxtm4Lkrv45Z{34>dpoM{f=@YbU4oSvAL{|4j4s1-w zA5uXU=l793Fc;nY;#K;SyK9Rtf`_4&Ax}&lcjliDb=XNwOiU~)Dr$eZ-oSu45>Y5w zx2p(;$D6KbJj!fx`b!A{o`lPkNQ#>J@nSD8d|Z+h2YyA3mOx>@_2MTiAfuoN|M#a{ zvCCBOX4F~il0g+MWM}zwRQIVMWdcbec__KSj{|v2xAgiRbdezAk#YnbjhOXo0Fz}W zlNHL?$0vlQ%jF(W!Y}A-t`r5Ifc@5u@x9)x`$ySA%D4xZLEnS_hB^hR23>sG+Da}M z6zncr`gE=9ahjaEPN@Fp|KlfLygkL6M&yVvmf{Vv4X9ht+E{pHf#@#xZL8G?z744P~oyZ#BX^F<6g<_6AW;FW(;t)nhjXDgpW?6JmQ#f75fiyBsWkZccX+nFoU} zVv&}4l(xn|&6*Em*W9k>Ja$&XFdV3km9|G-;wB-4=U?V#$9r&a`h4{;G3&{Ts_hEg z^H2V)ai*utQHHBm0JTRkZ1?p0E}3lNa?cUY%7e|2PvpbbH>BT?04a{Rl_R8zg8Jx+7w&kjrb~BjraT~+M#*rPkH-`1*bji`=+#P>7!8jr zPIvDMLm=RZ*5&s6!ifoQ=_+)+e$8mH@&)T2kzXO5UQ1Jk;xNH}L~GTF&P?9T zThpAYcB}Vjqp2U1zeJA6d1Fd-_Xh-m-)o1TJQY-Q?+d#yfZXxEt0i0GENlF>TdX2Y zEg~w2Sfq0^3TP42F4Q`Np`?i+NS>0#Ivv-av3H(*GuyTW#{09yZNY3B%Z<{#X#T7i z_{6YH2SN=$wyb_~e7+n-dp>tz`+Xe{G!==_cO~0dc8$C9Fhr#riG7h z!yhB`l~<6jsiJ)8>U(MmgZUD)Nc))TP|D+@Ln&cQS?)O;OjZ$%83#dd{&}+m4TC@G zJPTL$vf1G-cSd*nw*vf*f7NRY z1s>9LaOZxy(L@=AK~F+MQ(3ih$AfLC-$ePZPWNimV@QbNj&#kn1@{C#P1EasEYbJB zvtgTilysFS9zHd(H;7i_H0TSJL=-AUCfQjVpt?Go^C7iD6@CD{xjc1Tth7_JryW(f z*)(+q=2xj3+nyZ1@_Yr8BWR#7Ts?r)-2ILgvy9jy4i?7I!Lx;{8KN^A_p`HRZ~aR{ zBtxDv7Mmp+LRb(yF1xd|N1^n{YebTyv^)hbZ{fxtK_|vuw6dj*W1kdhF%uIqh#=se zf&Nezs|tj9`S1Wx$V1nzjSiorMdMW&UQZ7>!H;vOM%`hT>1dvnXiEJ!l?rj! z$Z#``N_X5&Xw&ket$%HoXce9vh)Nw0K&p&9sa*=}e)SSSLeIJ+TY6owzf)lfAxI=# zjS6haRP5txTN7(4DI}^#8QixJldAu@u}J~buFsl{DwLWpar$RF7>{jq3mut#E&&6 z7|ZAQWw;JT@O~u%cga&PmgU@%IR^*vY{jY)L4qM=R6jMc!jAj7P0x5P)4%4)w|D+@ zT&{9zk`Z9bv9`P%za5F+kKB@(Mu*X;LZi~J5*E}|qXq{Y+3fK!nANbV;qja|_ipmC zq#(0!F{9)ARs?)^!I~jZU3NUqG^t=_$Vfe8(^LctO~PvmEcb98@_S&OH1IUS7(`9a)C^(cf?c`!``3y`h@>q?=ez+)7=lUvUrgiJ>z%@y zW5TzCcH;OXXvBx*u|w(OMA2gH-*swoOK~s7 zbL9hXv#)Tz=;#*;+PysdsYu--5T#g0!nd^A%DIl99JrY0S$Moz^@kN-oBk=@I;pX) z#)bPw`Lx2lSK>_6Ek#p&QMxISdhLWDul;ilgsqUaBY7wl)+c^{Tu!|F2RArXd4zYH zt$94Iz{+~0ZQJ8`r0j`_^?%a?OI7NElPz=E5r5i@KMrB@E}2sqBuv>8KTf~FhwD-~ zJ5R_`O4P*V2!pkXU^KWyC@G!pB^h}9xW_L?l0ejAg$*RzJ&0|s;3e`tf5y976}k`- z6oOh|@q1DPDkTaw_5{bC_tNENMPL1&p>*tT+|pq>;VS0(xlAU;vqLM4|j@bcU1v?hrjQ{cXz$qy!xa`ZSlWof=Ei6U*E0+ zZ`{B4Z$6dOB+^;igL@ZNL?zat8rtVAcvV))rRG?g%-qN{Lwcjq$71oP3dN#09gm@I zx*uZoKcZ8}MyHsE$RY|7gG-)2l?)25FBK*HUJoEc5ea9zJs#WvS8bn%%G&N%{lEws zbRR6l#QA^m;xs}>jg2II4b~7yAp7^hkpu_^Q3OkXFQ~`2VYc={5+74-z>&rEK!<7{ zH#;xmyD(e3p*;Yg=dE*>hak=C>7)1k7|A-oPELkez_Rqg^P8=$^FTcqY<8%}fl*HT ziFjCgFbix3j$SscqJtOI^%W8it(0nld!?Ht;=_92Twgogw-=LC)rDDU!Ym)2yZX$& z=)+f2iVlCbFr=$@Qxb@JqNOOEntzWRc%u{AtTp`Gl@=fN_)yB-A^&yb!qU~)tzQ%- zRyays|COHkG&ar4G&j1#a^*61!KRmobC{Yxs(Evh5xzqcEL-y+^Qa^BPF> z%W;`1F;O`@{0|p+zz@NwTWfpm*sw1B$)qF`hc^lRpfn)uPv;9bbL5|IUTU8FJboS~ zXj<3F8u+fNryW7FTys~&fl>8O{Iiw)6{4`;0QDowT<+-Lmu?(4la7o#jLUlOWeCp_ zRAIE40s810I8^EC&BF8MTTCKo{-W^u{w(zzB)er4XKC%_GP6QuwRgqTAUW%wA+S2m zIu&Q6vjsNf;goO${)N0@hGl)0I3i`Lb*kk}&f3ajOD~dh|M0_Ji0J+iU`{u_xb6=q znKVW*B(Ox3M5-#fqb&Hn+oM*(w;P#n(~tR5MG7~|7G8^neH1X(M%m^ukp!wn#WLe4 z`LUyvlxV90K0wvTVCUw5C}UihrJ_lf+LU}vt7?~W;W%MXP{gBq`2|2h?lx8#{9 zgwd=Kqnii2H~Eq8Q+_PL*U=MY8KED@%o7V7h0 z>Ac#i=zLPk9s(uBsP1?*0?UFQYTJ7^NqfEz`x7|**mI%&15C0eQfA+)#^uX2iQ;5n z&DHzASQdOdX{c3Wq?nas$85+K#!mQ`8pq0K=4Bm6bH2io-??*`NDP$tX3c zHU$O8&ccxzif9>ZRv5NzS@hbiV8ziyHegLCwdP8XDSuSy>t@);>>&82%Jp^|lpN#` zAYwuW5|pvAm?BC5H%I#wt&qmZNa^U`xIn8WUt5#{n}JKl5{X$5nD*|SV_MgTnp{vV z7xs;G`}a`6S~}6vG{(pNj;S>fh7SX`?0E`EU_a9pp?|Z*>hs^pOycnJKZ=V@Nkv8E zii(Qj;^O%Dc)=h3x#xYsfOq|dfD@N-T!;(e_!aJJzm)dmH$`yUPQ(cl$`BloHkkG@ zbjLQcH3y)D>mCMt-&@Z^3iX}Mo5NJMqsmvqhHqV&(LT%@8uM0xsE@OF85ow@v8$U5 zdSzwx5^BS%s}HSU->r<>ajySYr6Yr^K><>I5SLmJ^p7YKHA~nwLb&z`SmCOs^Dv5 zV3rs)u%IV!oo#qBi~THqqLEa2P}w$v)xwND=W_FVfW>UO|IE43Tw&jcZ+Lh#A)7h= zR&ChcX5>dN!6clkM<(59@W~?Vw#r>7k~nhamXecunz*j`OF;*bfm^yU=WCCde|{!- zc>oj^PP+qUdjrz?IVQOr!B&o{9s6}S%f7#kv3dSRUWIe9=ze^@sVW`ke<6spszjf< zrO=A?RMX??TlNPN3I_^aXSu~Gz;R$g+6Tk7JI9_4gpVAwknT4FX9bGx%%)G>Ocm;o zg-HU{guiY)6zp4D=r2+tbA7;rRw{$ObU1nNoc>4l!NgDk zSwxzEcg9I7|Co)!?&z~ZThY=gEO<^}Kdc!GgOEYy(14E`Ew`pP2>&k}O*7Vej;Ihs zX_+ihTkWEy2Kh1($|+t|&52)WupGC!6T^-{0ezZuA6?C8#w?Xdc8{K9`-~|mU~7^6 zB;*lk(`LS^$|5?D5Dex=cUy#Im8Fp{>b*BfJNJJT41Z~)vtNb!zoPTlkR%L2A~XGh z_R)X}q*8LK3?BL+D6^wBmw=NnQ3U+(26Gd^$(NM;cC1lecgU?=kBFMN-s#6a{%f~A zlQ_s0J%tZ&<%kUK-1uH-A}9@~`;C|9K5BmFWL?J3B-pPz-uL;@1$b%YI48?*!$(76 zS+6f9xP)Dyj;2ZJw+IZ9u=jx3a!mi8Z}+^w94}d0xbRdh2g|cm5Mpn%G(NFRGf%gDu*H=<_KXU&14dSRW&0s}lTnn`J3$^>OJz&W}qD+uwLly6+Zjj5K zyY}lSLD(~(T$pZRp!v|kS)i`}@ouPHsq`=+95H?^=vF)ub~}Af9ZX7i^{ieYH`;ic zbNlX&2&(-4fywWKDbskYo=#VKqiK!=oXS!4X)pwe9ryj|!lzNj=Ui?XgY=F=2Lq`O zC()-6C~HMt*pU@S_abZOQ|K^X!*LOYtCd3pc{rztOu(1tx)O(ZPyZ}QS4<2%kjQ{N z3-nlXEzyv*k(K|qjkPfZJWlY4k>Osi4<}x%e{uuoUnU3%d9hT}XN=Eq|NeS{rddml z(iigRb2iAbvDq!a^*{GB1eL%{kIx%3vuzh0o?GhNZD(j#1(&Q3EHtK++)~j-8bpUe zYjue}HB^4?M=Y->-$#JQ=g6FdFjt}lG5wruhiVKRY_L|g4m($#qLir)8);b421X?9 z=4zR&lvII49D#|sc~b7KbbCF6!OQi|Ptg12`|;`zbr`CuV!v)QK;GJ0j(6>ha_N|0 zd;k3}#YeF&KVkZj{@G8QHU%e}t^T{u{uGyr^K>VfU;&cB6U0cuOU&*&`zQuyEneuM z$A~ix|H}*4#1>K!e(5Htfn%^_ZYT@WpY#{>`{oQcM#0c1)CcADBW;*)H)9m68Jd5u z>($dlPkk?D_02|i4w-*V2>u?hZ1lZ>1<6Wbm;${=0PQhm;9fB;ZmiWf9dZP#jJLD0 zOAZ!7e{oU<$MQ&JSLOMz1^&o2ibm%It%}kB<}hMnR*a;0gDAeMW>sRsS&@42FKZy6`&A2oqp$@&;@S z4Y^_j%8PS!BbH|(&oXsnIZRNU6}SU?dsSVoZA_K=Ne#3Ya7~b!>Dz{9^F-pS zRLhU7!T22UrgYDs%s6s&_-aw<5d$}^Fp(l#MNCheQJh9vOY&e-T%w&r8v2o^yuD=o zdjjD*2Y=GQz_Do?HmQ%v)Nvy(khTp7`<@y`CZ(g;LXq3}qI+M$7&`l)8pfzg=#SCW zFzng)WiZN-R`|fpImrH1|LnIX1wF|90bD{8_eMAK3aZF$w@;sFNo*loMFv`5orQ6; zE;X4DDx*}>)aA&7en5VAL22j@TU8D0N1O>x*3;`+x}?d9F=VKNQiRtrYa#~u>2aeM zU71#|I6ZP*i#PxhUlC85x(=@A_Um|Ir0cdXm~$oc`}noh21x;SKi*|W;d%}RhinMd z0!m_R!by750j@kJN!FItZSzHF?-u+c|FK-I?(J7s8%-@S9yY(fd@+fJIvr^HnU2f# zku>`ef+>n3fzdT6M*F-nEQ^EMcI9l#32-#D{KEvEw_2{}X2SDdH7XqoC-!}MkOk3Y z1PY`=V)4LZ(en*uLfj4LaDxR+vmL)ZKtg?$5L;tHIKECec*UII6zqV50XFB^T{b6rRYREy#2Wd!vf4#;u3I(&Z-FHuWyAj3>6dW%_s*~t^~>qsjP z!F;z?*VB`iliOP5L(?+*k>7!U;mtspyI^~d-mcW|uD>9uD<>?IR-!rWSQptcZk)Q8 zw|YHII4+v_g~SJoq0PLVw?=w@60thIyzio+99ZvHA3UD8P$jhzq0}DQGgDQquTL91 za&)a_nv4RUEdp=zQ8>H)aF>hKx0N{^p?%ntNC690-U^Gn_V@V$k#-%1PNb?)Ifs?t z*8It(07E!r9e`r~E2=;u`?Hd?L&pxz>l0q>hP%7R(+yNP9>UleVki*9gM&u}>B9Ec z0Yg=&QJ$m&iw zq-y}C{a0R@Sog>k?GVB;v(Y(kRN2(q%c2^9p3IdXsqCR_X=#$s5laQc6v=e2e6nY`jUm?s zrvG)qgKV{EF|@J4U+st_a+WXbmwpvwD|+?*@;hO&hEPQF_*_`4XjOf=HagflJvbE z(gsvx`X{*U1&$sA`j1XezK_N!X|?#w`coc2z5v){cp7|1-xtrE7n0z`z*3txNqLx@tdw~vwFj5ovJ6r|J2 z=ga1f`8sc@nK4@vMSk$p&u&4!=KdBS(|a&VjT-?&eIjb8ko&dg9Z3_U0RWr;-%664 z@AYb%vv~9~v40)Rx%gSxdP261@nCoyHl}=>G21!EJyl4_`h6kyy?K0R+jUr+LmUpu za4N1Rjj8JhS-4F3OphG3KAc_Ify8TLNcV+(O**Oj%pN*yK{Kzfr=gD}=`-wifzH^~ zuRpIVM_*j1PV(QsseZVf{K@S#0&jvKpjbC3DrXKyWLG#|_#5MPB%x91{(7i7P1q3D zev5)<%LZsN_HY|g;a}&4ma6^kd4#DY`cClzYBxNa(GjpAs#Si%4D%_8tgmHNz@9nk*~y&yQJ6W2#HcMT10{!KH@NM-PajcN@^kD+Hv zo<7PV5j#J1u%7`8THn5-qog5OJrgQ{#EFGA+<5wjMmu9nr9$QLVhzzhiP9%-@@*`F zmdQfc-Q@F8Ee>!yZ@j*(%Adodu@;0C_42imu%{91W4bs5)xzWiAt7t3yEF510z$Cmv+*g(L6n6){ zh2BS>{mNR2NN?HN@&|tbVt|Tf#!f0E>?Z?)T zn2H>_fA=X62QOmA5BM|+2?zjgyGWVO>7P1qs`~V>eO>%=2M^dBHT|_LY3zicgmI37a)={63{gk^uhd-$=&rw0MNIRdc zk>@B9_NEG#fMb5!QZt8(UD1n8OTxIY78X(PO0VC2H1KW2W*>c{>djsJ@p*PmhGj~oTdrpqby4Z7$;n;22jD78 zQV!mp@!i=&o-zenk1LG4)k0f8Az`KyGLOt{3IU9Wiam3(8n2c24#ad!YvbTR0^-vQ zSrJuS+3}RhYuEkd62kY;S*EImRd*SVkP}EZJ|r=yBH2}mFI$S}qJ+$gu!mL_Hhwvgc*+OjG8m+-+K^QOG+Rw!oN}M!;e1A4E`EzFsy-Z#Gi?8HVDh zQdf7JAeRpeBy;A@C?-RM#aw0lQ>Sr&|3IfP@12<(4iy27s>7LcJHrv9{KvU84_F9d z6*S;1)r}f=v53=`CO9357L%gI2lU6ImaXvgwkvmY`-o0^is}K=Gdi-Lj>iw!5oouR zT`KRw`h~V#be{juF>TA44!{ z%VOI{zu4+cMt13m6j^?G01nymm`VRaLDVEgh2k0P+~l1^OsSz5RTD3(%z!$nJ6X{7 zx*h{uz)zNZmhn%opWbfqaQpI7~ncf4I?(0xd=b`eDicdR|y1G~&OvF4Y8 z^hk}DC*dORZ+~ESbw^*`Nc7=lfd#fQV{tD;kCcUFV?^CeA=-GmO&-l%dS(q?T z3_Ry}H-U|ml`Qu&utd?|vpM4^NAqQV< zf;Pw>14Pcj<=Hc@Euz4u8*Y~RRl%<=uo$%%u60Q<2lTF0{KK)iHWDfGJ!@R-zv#yp zX5h~dn=RK!U8^2`-vh`P)#z-OTi(fRd3Iv_Lvy|&J%bI8A~SXuiKZFRDt0QPz2@Q5 z+**to6&=-Y-n6QJS5D!yvRyGL5l`Gdd5s?&g{4`6uq$TDSen*2siql(R3e6-5HE+r z^VOK{bIQWgnI|cEG*hXmsi7q+=Wv^v9KuOxG|i-?pb_&p2VNJIB3-xxbs1{sW=9Wg zc?p^8>f>o2?y(G7NPxH?K-p6wlPhU#r^fd?)kwrlapA0?VU1-puq1qB!FehR1Anj~ z!kN25t%}K$H=3UID7U#;4Rg`h*m&U&YjSe(Z{4e|{GSqRzH*Ka{-`<=o}kWe7@(C} zm`EEgmm9k4)yD|T7TQ~jrmQ;e)E0j^FqA>RH4(Md1~{zt6F`v&_PJIe%1zu$s6y^q zQ^5~lYL41&@st5wNZ{jC$Q@6lsBzOR96VGnnAqgI43a964~RSE1{Dhp4u(1Tix;BH zmTc;J9^`qx@6;Y1_;dKxE0z)A(V|5QV8;ViteH@8;be>)Czp_JK>xq=v*!z-FOzTK zBgt8!x8J!CqU);*RP+JqBHAD@$%0Y0{50|J^kYd#Fsb)hz~u$0)I)ewma#8s-9B53 zp&n`=M^mWHtxP+28!tz-{QXjM)83_!Zf^}Q<{Fi5H*MLbE119+4?rE(1@ru-hPfBT zrFGeGkC(a!bI_?aDQZRPp<~|0cYQ_$OGjzom)49qJ=8tA;|{><2X?{kS|+D+Bx8-l zD-$+or;X0ZM9~SH286N}l7YGk75;v7-5esrH_pi^nY9P4140DpE#v1;O5)nh(NIj7 zi83zoa;K!ZSNLn}w!U!D4T@%5vtQF4q6%2t)MX3AB0b@;G0!BHC%+g`u8MRYKKcZ_) zYI%qy&iE!E8UqnGG*O$jcioIu^;6TfocK1Rr6%{*nARb(_jYJRxIeM{y~4h)>9vffQ!-*2cIzH-tjQo;m>H|@ zY?hJ5Upa_(<|D5m0~TAeLQ-j(Xx9Dj=$HFI0lC=AgFgyePN#IWuKV&#FKN-NZcY{~ME)j@h(i1@2(dDqeP+bxW#u-l zubH9#^C7QlqeW)sC=Pd{Pe10zsODTA7R6AhkM;Erm!7c~YN@mX3L&+Elhkp)+e2Q3 z=Ep^0lQhS@H0OT+>#iNTop`?RnsV6~F#BG1a$^_}$Ye zh3y#=h1u5=z9+vU8Qu{3AMVaZpZxK)tHthv_s^h~c=f!wMeylUXp1q|&UD-6_PP}c z9di-u>79ybZW)$nPYSw0-R=32tIXqx5egU=&=E!$tXd+ya1VFFsdK+#d?=Y zYD@3p*;V3Pk^&`zAkw($@TaEO`*>n*&EbTPzT#2^J=(ZCJi$=F~=#U zV&oH={tB#U4RB?A!xrPbVrYIJzH`aMFYG(jA23K78bI!)P_HBZ7~yW{sIQsM7fUpXsqJFCAIpGC7N~YvXEpq zCaNk*gQMT_?`|{ep$)rIWhJLc1FIFLGVV$x)%*hemQea`7lM*m-Cj$ndR7O`+Y8!O z;~U+RCIQY1HAD+|5k)wT`V?`EC)N=*3RjM$I{4N@FI@T@w9wPs9FYwtQ>w|R82x?? zpIf4G3QoP_R+Ky`GP>c>Vg&e)ao{+cx&GpGLyR^dApwqnH$5{G$M>tl%cj&)Qpjd_ zBt5;q_%0PZAm-rU5(@gD0F^SlY2%kWZ*^Sweo=Zl2I&+8NZh`Oa-LU)?;-u5Rc2h^ zHRIy|k}eM&pNIJGx%ka$SakSeLhdLIZXHbwZvfbKJIJHZuKJLqa}b80sDPc;szP1Z zIRx;CCt}EYKiwW%6eQbJN7zWWAet^}ae=CEj=clu%w*dFJt3|xsJiL$w~qq?uRRn) z9x$%f9L))1bK`iHSWrj78vpZ|H>TwG;$0R|tzGdjsgn(F*JOVrpO)I?!Xl-Tk!*L? z&lF<7KOZc&={Vc;Rgzopu~GL>-{?UF$MAVLv3~tJGoIu4G3x)gR1c5h1fHcnR`ASZ zkZ@`U+RAK5#H&^!hYpB%yKM@(R4w6!1_ppJhXdO5%;s`uDpjkfXsrN5eVfGfuPX+< z-uc-9O!%lytJz@2Mn^BP0>BGv0S)+`gj?!8@mISO>Z-+{SGT43%44m+w=*D+`rXC& z!)x5o!IB`SYBJV)uOoPNz$~F>_G#dpU=wmkX88s<+d@fH|IEYH2?`Wci?{+yIEt(y zA_+h`Bp-Fktp{KRNchLP)Y4YEvxb-;`^~#Sj_r8kf3iUzzyBt%CzQU7f77AQ#KR$NG(#6w0E# zS&4xcz?00Xa*&3DrrWi#%$yy!YsE+(I161*m+V|~j(T>H9EYg%1MfZ-Gc^gb|>nBM(`svPZ`TQs&%DK;-$y}-Kb!bP?c zIW2eA3f;TY{sHJ=o11K1T$-BHJ3o#8Y@;MkO)2S~PeiVsEEP&0!v%3)QOAzRTx22j z$6s>%bKf3_l)XAJ#LReBdcc6)FOH(?w?6;3C6pXp#;XA}rP0~6T?kFHV_gp8%MFjN z(-q4)D%&NBa%=M9cdjU$cBI!-2JIlGAM~bNe!2T0*A2}ku)jxa!&AF%Dvqr?s)+tGCxbcaKAwl>0^+_E3n0 zku@?Z@f|I;_o2~997xpU`ThG}pCh7eTqKWK&B4w~!jK z4LD;%Q}@6`MJ0*U{N?Dj!_=4C9s=Cc4a>j~7rDX6t3e6mebkBgx>KD8)NcO#(p~S# zU}_FE+q=mU2uRZnl0W(vtGPQai|FIZb`eM6ura=a)hv%fl9?6^xc}VMV5yq5J+s@Z zK^?yO$qE8Yqvo{IzKXkcBu=;k%I8Y5&N)E4J2fhQx~CK$*3)d_oO>u#huFShgdzC5 zN)lm}y0d`9N7=45bUAi~tjpW>GIc4Kk8X&Q)x7dD_=3pT1ytnIrOY&u11w-i>+kgi9Ni^wL`Gli5)+$=%ch#vz+89f__-?O;UJOl%*>9L z(b(%YhZc6uV!#{%iRR6J(}lGXQhxrHM_t%D8+R}l4||a48GgRer3?kNd*6IL{3S@)89$}xvZ zekpbS*oLTuU3%+o(~p)F$MI>`{0O=zVS=1olpA+0%-Y&;ra`dmXlz^({i0g5rUP4`NYY$3mI7&;@d45IPjE)+TMiA=sg zxA~`e*4M=Lw=Z%AkXcbis~$4LcZy-)pKp3VnRbemRG3;RPAm|Zwj<8otpoF9$zL0c zPs@@GzKIhj`yR&{sNt^C9Rq#+K#oko%RRZdtugJ%%GA+LF4u?UJNA#Ad?;LnjOuxU zGvse-_XDmC7@XZjvg#K9u}d>P zBCT>us1CvSV8|CVky@#N`hmmnIAe4bU4b@+j>S50H%OwW3GJgdVS8PP41;!?Gdt+i z)O!8t#3=`oM^u+@!wF->{L-tdsviFS5jGij!11PXi5JS99GEgzU7!U6U){HB;g^JWGsV#4^HI$TPX=G zQ>!WBR;agR;FPL!pNN9jl@KQ>fzPg6=B}Xs(qL+}yVpKRr$+T@D zOOc`1!@b%@MfbS6bv(h)Tw~p8IexhzziheQrM@F+;+pyBjNav1(V$^68f&9l^YSkX zBHL!3p;qVYQ*JtM?{)u2RF+E8S-%3QQs?-paS6!-9*Iy#TMMx5pz0svP<0p*d&<2T{3C{JG8CN+}YC7a2BD6)qCN)MtTX+ovhm>YtJaP5feKMT5 zamW+bjPp<^%-qZXvMAhAwB`OBpM+B5%|3`P?xx|7_4(XBG@z?5i%EGslw}+zuQFoA zUM#(1?P~}z+G=<@{n*NgiZ}z+d-HT(+=iBmXMe$o zlv_?1%Asn#>gt)H+9XslYv`Ak?~5HIdiB*EYxg8}Vy?CF?CgFKO%P47M$%#0+HMnO z^0fDY-tLp!%^-U z{PESGT)cjdoR=7Te||rD<@TCD3q;$*)x6QALcLrmhmj{zb5*fgVER8VfEXDu{4Z#z z?LysQ`ZiX8CH&R(&goj61UpWHo}W*@w-xk;N#T7jAYKcpt2wx;J2J1XJMG;0oBo#j za@R|`N}!8~;Y1X;kqmX0r#RvCf;IIwDzc(sJ03%%qc)rX?msvuHg1ul5&#ugjtS|<5uT`$cf9v7{0qqbyX^hQ$G_Ogjr{lqIi^iiw#?^UAM z!>!v7wolc<2ni2{!WY%M0OX|bXpEYhyD^snc3 zOU|fAs<6%_Ei;8nuBVvCy#_oUJ|mWF%2h{QvHzhtR#X!=k zBkPu%ImyGkXJ?D0$~;Mlfx<-wa<&XMq$CKsN&`w|WuH{!;0-zJh0VLlD)rqvSITF= z32&CYpbQ3eYNO5Xb;UUq79Bu}Rtp%+NWt{}T|a)6xVzS~pJg+tvdzoad!g9SR6n2} zmk7?%GzWy^rf=>~sIB4--EvIu%}lPdI2}w*rfGXTrfD!dFhz90iK~6Z$pt5fwlKhXFf@|% z8^wn#P?0f?dAv%k(%68zMLhc`$f3nJ8QCB$>E-WavcqFuEGWvT6e3U@ENR0 zo`u{)RWbz(p@jF%bHDzD2TU>e?Ogz+st z*NE~?OLIGUF|3#YN`R+@RCufD<@O; z_ICw|GuX-iDdv06W}BRG6O3v`!$RO3t|d`zZL1Ry9V27s9o@IUYfINf!Bag2zp(yRhCY zl&)iGdGYGX+Yzuje{lFv4;Sy^9F>?jh-&g0slQVs7sW_sSV)Dw9#T4Ls^(LziVoPY z@54F9UFUa|XbI44IOL=dV=h+wSCL4fCL5y57Wr)l65_HhUxgZ{JcM0(7aYr$EmPIIk{@Thj&D5&E_};m9{yoW94&^1 zc=fg>qY}2e!E%K~HpeQlbZ!?qs-$qMjb{BbW1v^qkbp$I@8t;)zYAcD>((GNo49D} z?2+w6ll+0cfsvSnLgjlgV=_%7r1c>2Elli*zEe{=YI+k18Q6j;V?0dcc21Cv`fM?6 zJ}?ix4YRT~+dE`}_Pv6SUe|JmbhN&VX#!4Uz8`qK@<95W_~wdE>xPN|t=-uXh6`s2 zk(UShBHPM;A9;@S$~eKX!?{oSVHD+p zc5PvOcgo%_ZAMQ!>f{wA@Ds#bbDw@QU7^!$9p?C&@tm?wz*TU8o4&(SQY@lcr}|X^Qx;q zmgH~|L0q5RnNM=&T6RpIxAaDX=9A7{aogx<}Rz}=U+wO&hMg5>0?z1*INb+chEvi zRr1m-N%r@lP$1!WSg|H+;F5&$p@_~IjUQ7~a~WFS6X{6`r@@4e&la2lL}M?rZvNbr zU1aP@A9^^!s`f=`+lI&>l-%7DlM%$8n_W~^ApE&MrLcwzGFNCNQ8N+no0qOre5XBX zH%Q%2)OprO)H0gc&3Qjq1z`_a6hq@yQi#aAS0e*r|E2Wqn0WffYWk;L3r5I z92l?r7&DpzD0J@)E*g7));LR z%N9iBg2nLAv$d+vkv`l%MR$u<+bM0i``geX1jcvmr`ie&{1E*Y>v zhYk`4J%SpKVRoSB2Fxu-n!}eModWZCA357BgSF%Yv7>GQ*W+6ZYQxRFu3~td#-8ae zMUubT?Q-cgg_wRlBJZwWyLw@w>_KR5*o$v{p%U$vzXn``Ynp=QIf;C2bcpP07AqYcTo)fhw#guzPuJE|i{*p&z!?vocUq2I~4+5cp z=0M3P*vu97l^HjQ; zng%Ogbb^%BXeQbx;QhvK^!^X2z-5`j>6grZBUiF3XB&D?WU$oiMo4*1jFcsQ55;P= z_s}~+R8e9Bmun4(qH#4n-|IdH!qO8r?c94hHscLq1$$GGFwcX7de=hI=1LTQld`9m zUtJA^P6=fN^xn%tBy9d-%pMHG1{D2(G~q4tLA+&nl{B#PhqwQg*i2>s-tK6y>R7IT zwz;{*NTb?&qSo)T$Kb=ar;pUTeCCq^ zG;utzt`o?jo3uq1D%B{JrxulGH%1N&Pl{(^DDtDzxUvHg7A{=jFHYBdzika$a*nE; zhC+h1q+)xl?P4VW;hb969$5>ZLYtTxeZ&{EbKez zKw!<5_$`Oj8-^#3N$>NIcUvOGoK2AAKAmZ?t%RO`u2`Va ziSgGl;w{EfsEk!iSBG?rvkq=LB`gHi87E?u}FIRC@z=DPTo;Sogv*~Q_ZjB^D_huMderub4tW?TjF^F4ha-t zQW6cYM=u0QYF=pH{&}ICj|V9dHNaV24mJd7y#7eT1UX$}0{vWd-Gmd)9`cp9^bIs%RPOsx6>#YT5T zd%+dBW8%~vu1268uHA+(MmHwM?fFmXYFkR7M4NOwaV;T#Wz&=8*H*$RHWuc~K?R2M zvS-ejH0eA+3thFBYhYuV(ioQsVbDd7!41ET$@)Dv0~$&}^el1`n%2rvA5F@(K~?p? z7wGxjug0U60=Y{AQF#asSA_8Je&_ey2j1PEzm>YBvI{SkOi-QP34Vbz?8tPEvCJc) z(>x{>u~z#-aL3yQ7U=zpb0Fu(H6MKQ^3JsvbjmV<7-I8@Amm2G<3Mqd;7Dn%QNUGsYzWcXi-QfxaJAZDY-o>GT2wIY3J#-I~iNDbA zF1UsK9)s4BY+QtwVsWJF5fR=<4IM*Ul|S(6>b50Xk@EYOn_`miJ3R~IZjKKYe4^dD z1#R(BTLAz3;VJd5w|1czipHA!+<&VS-Y4q)c4ZZ9E6{6Lg)d>fL@UzxrKD8O8{dE! z9;grU=ZHT1-910Y4R9g|Ji4E#n}XFXy&HAe7Hn~<*m)b~bw|gXpo1u-RhR;%tvGwc z8i&U|Mav0~&HW0;JV8@#5w` zC6%#I2RsAWV2#>dg`Za)0d`r*wJ~z9Ep4?5jw;+jzAVY;5JYV706ql&oto6f>)54x zb#)aFvcrF64ZlyDs1lZFR;_)P6M}*}y33D~Vogj3IeoGOCoGKI%{ui- zBqnocXsF)L_t)a$D|!|=PUB~FhXdcj#{DN5VV*c!=KO_ld-HqbyvJyD2TSe%02uN>srBT8&+>QK}O*&Kr!Z=Tb9&``eOQ@Q zC@z%R7w)%P^^Iqr0i+FMoQ;r6e>F!7jH)$Q5QMcLRKmL;JvYoU+!d9N;OV(iRE zu=lQ+jV~foi`bpcHj;a7?@^=lXsp;h2i65uHaK|Re`aMM7VzmMvq|gI?;4JTCO5PFv$Wk>KOJyWTVqk`O4%z3%ElNXs z)i_nh4klLs^{+f?6k8Gj7mB9l-+uM{K8K|Mb6wrao4@2fCIUNM>j}g!B6<2oNEa50 zP$aJqFUiM78Q@k#M#@Z#P7!;tJQ)m>Gbfmmm2%gFS#=&Gq;;yZS<&t;91d~ zyd*^cHpH(0R2(y5Ydh)w*=rukmwEV=oua;J?dUNOu0p{+y@wmr&om|^$LTMvL!(=e zlq`f=-6Nm~a*zJ~cFq4a?Q&KGZ@aAC0^XND9XiFRm6`mEI}vImp>9d{vW3Btqzbaa zKricEpZzJY{gkKB%UVS`lewH zk6&W+;QR=Aw}{6hd7RIArD_hAu9qxjbJwbM>3VO&F^MLo>jgQMKpr@iOf0^8I98j* z_j(Bm2YxJn4OhYJG)I)oWv2N#o89zb0iERe#Llbx1-r-${rSmXP!>ZMK0$IDhhKFH9+W=ztJQ$)bmqi zIDtl-mWF3M<9xqnV$~mXFjCY`MoryFRp)fUvT6w&fzBNkj?{K51WtwO`CgV@Ts-Y$ z1+bJ*CP2STlRGwR3u+%?hpr7!PkIoh3{zO`jFTfesX%>RS^Q_U z96jwBpkpxFlkfFNR*%kT^};XmPA7CF&krz|MKpXF90nz}KfK*9y45+grDD2--GK*B ztE%u8>ydu*Q`(o)b+h7}HC_U5?{HQ*?W7GncsRl&%}+gE`Y+4ZN(P0Pt$|vdlwPeF ziMilVN*Nl3FIs11IryWqWp1_8YuNk~63aNr9{86<-uoeBQ$xS`u|<~I~$y=NAsOB_QpFqCtLdEEwLPhT`O!MQ)}ml zGbsde6)UlE36ghr_TkYf2lnl^t|Il~C2uIRp!Hgxgv{iqMUoQgf~c|~Qcx-9h+`N@ zSda3JxSZc9Y80<09o{Dq(a~g7RGm7}O6lk<_%Y$<06fW`7SP@_QC~_L8V~|rUfdud zzmkmG^1R~KI|v}EAh3vqQIC=DdF!8A(=q0gvSUYF1qewr*o6LcYZ_1D&}8SC*gt1O zIyTT-uiiHDED;8e8aoGEP(l804@E&&x?WF9W-%`X1c3riDS5)AaxQOgycg_nj>Br3 zW2NU8!0yssG+GZ(gM|apD|#C}?Q*(nJhl~!zD;;+pLJi~jbT>{PC*-#K~l6E@EvOX zQx*hduuLVw+r!)15j~TJtPAS+=?P9FnN+X4QnRikS3`2gecb9@{M$q|?W2|c@3S09 zZiLmL?D=1hrZm3=dXtTp(u3#*Qh+@Z$YG5vRAP~~UcmY`anRkHLI*(cZ!T!i+(XtT%dsWCmmCaRo)ME-iTVUlkZLTcQuxd&Z-4qR90xl`jbD}V6G&I% zSmKb|m~hJ}?`FmAm35+po$}`(g)-pDGj+^?2C*IzbyQ|yCZ7U1Jv^Jdu6@{ke*xmK zxpw2_GcHpc;(5ZgOwz5YsT(NNRtJ@rI>FkQNn*V;DoBnR`Lhdc= z=Ca{tH$UPU)?c)na)S)AuV8+ordk?{9unUI9(Q1AQD^g#L9>+Ck%i=0#j_{ncTIN? z8(XkCe6;{7Vk_jYl&Rrn@ti)#@<@G?DU;7A{&P03&Cxvwe}SjI0t`8{=8cj?^Hk>< zT#7}idsUxcp#tN_r4*3KF5k>E;bPK}QZd)r&CUgx2VW#wp_Uj_tnWc^fF8$;w?Qs*leb@ zZF&IE_1Re-c53rqkmVY+f`zb5kLrL4x&*Li{@30Y0ttZ8IR@~a^w#{C(-wKIIy2(&tA;*k65R%RP4FoiR zWZw1)^E1NyS@)3qmVuc~@`Np3qH24vnH@v@bvOQ^$-DY>p7~Tb)J*IC$R}>|=4!Ly zUqoGeWz?72{QQwq?Vd7vJX<3J2a634?#-xWQ$1r~Q?Z~q&Z<26q^Jie>ZZ||nQTG| zQUbG#Z|#AIY50rG3VU@H9*Zz{JniQ z_+^b3SK%FT+zTc!$mk6T$Z#wEjIN~md>W;U%w2zD0J)f#=4)k&APolL_gRx42cgR+ zC+TN!qfadPp(j0|dTO<_~gS)0-GR^J8sq;6tg7B2vXH9Y)0E~G*4z#Od))02iK#+fS( zk*EawTaN{+tg1@1N;M%J%iYFzYfi5we~<*0_I2yXc`dW(be z2xs3(n8R#SSpUE;ca0K4TME^nQ9@ca4u=w_;-h-P5i9_}R^(Rrl#r2uZObh;au_#% z(@;L`qRnPD4@g7qQ&3Rkwzm4XTJqu!1WVvG3Xz6>T&>o9k}tS?;aQ5Q{iJS&Zvd>W zOdtvws~yOt2Rs|E-8)aQWT~ZfGp;7QjL!5M2xw%7{QJ*f3UAARb@2OfDa$&-S$4?- zr^8?5|BUS+*Q+D3NGl2B=99x-)#buT$1BRF7e+icL>)aZsNA*X$G4mN2Lht$}b$4-)}ixx+p9~+R#QiZ5> zw&975?wPA?R5s!m9+^qIZQEYa6c-zw1@o8?5D@r00Kk2w>w?=Rpa&oZx+&iDG z#84b^?AdvDt5+LU`gIW^TnnD(z>k^gx*t%I^Q@9JEL zvJ)+UYL4Ns-qLh^`$|!FJSIYu)eW7v+RsDB&u=VGB$Nm5 zW-nPbND!X60k2luRC}M0#Phj7;C+(8{lZn<{SN=D>1Z(BDOENpp6x^$N$eyye3saq z=kGW*=l3_cvM0R^l5tj3u6Florlo3Mzjcj%HkrL&Bj`7=orCNg5~MxVw1|=d}pq{?sP zg!K8}RF$y6jAnSoS}UsJiTKt#>Tl1ixDPfh`hT8tBhUb6OTYass`GGEiX{f4$c#dq zvaZ@M{yZq=Yka|0*sRgf*ms|}I0StBOy{4j7mc!Nw7(5v8+0`1Z6{o*tP^1r{VzKJ z2SG{-we2cALff(mpdb~yZY2&6(9yRsG!&)lUhM<4*I0MZ))oj=s9CffB7w7S>X{r% zlcPoS2E%rvhX*c9`!XU?DxVV&ujw82+Xc1qLhH(nueyg~H^tC+l7O(U z7~avoct#4(ksk8lg**Zb2{Yx|eTA8+oA5Bk^0 zILf5bBL zd6TfiyBK=7(k$Bl`6d-Nyb9Bf<1=--?T)Uv0#r#6kn;?X?6uh!QQ;b|ii77jws=^) zd?%s|RhHV0zoK?oz)eWQFm?$EBwHyzmNy<9tcxcX$@&7Z$K6dk-7NvI@#ELfgw}(2kM;HCyw;Jx;IF&-i7ZIZ#4$UeI?Srk*4>xPCHs`GEtpvDxcR za3_NZupr*P3lfijz8WfuUOq3bM!y@QU8RF6C5{e+EqZcEwl=p+RN<*81oVkfuE_Hi(p zC{+Vw*g;Zo6Rpyq{DOanF*N$G9F!zZhFNJ_8AW&Za|s>UnbV^Zq7^IhI)9@m!bQX` zFqv59Ox6XGq-;j9GGyoKn4)iJ3+oG;RY=gOWUD>{2jF{7UAjj{{}>n=2I$58WSTz9 zvk#dXDGLFQWb}-1WNqsF4MjNQ9Nw-snZcXpx}dRlaG<2V*d`P$eXD=v|0H=~G%nQc z_dBoQ(CR=9$~}zF)Q!i96HRD{yDGwepX@MNg%!B%8kmykiAStcTGeR|_7C>r*i;2U ziHyt`p0E1}kwum0s`AG@!gq0lDN+pU(=+|5Rt4Xd7}=*(fsv@KBd3q{uZO6FBlRbU z$FVrsWUfeM&_ZIe;l;RN{sFKB1Nk%c?8K?Sfiq6cM7Suoa_CicRn4?%lpX3)?c_%_ zHnITzTv=shVP|JUE++{GbFhKKs zbUl_W2sOdY(;^(P@?XmL79jt&H`}_)&hzIVd4ZRk`JLpuL<1~ui00~9l|8a@9=05Y z;Yg%H20CrbJ2q;>9;1ubs)E_m);rwtX8w#qt$rWrmuL!)*5SKGr*aLiqxa81>_^jS z6+Ie{cN{<{8bCzH%!*M)K`UAkLqe3_;9+jVLyNbswUtscaaG)2A09rxEA~o9L7{iC zT&Y$)nTojoIp8s=1u{1`blA!4n(&;?j8$tR+pAqP^!RzZd^OI3eQtN` zdvbw1ryk2i%`pP@UGUG z9Zw8XzTU={*X*iWUatF!nc1)B24r)!2ag{0lEUznuh-fBpZ_jgTC~r1l>z6lnQ9yCQk~CF!_)nBu-AM3g#P@}M=s}{*YFublgSLh zWB;{ZEp0*bimMIerXleBLB28H|8x;~Z>M@5GhZyuwuV|t43QTXwk+GxOjRh1nK2({B%&{e@ zdXwFcs*}%d<8E=HCO&ezV`K7gu(kt?P}an37`V9d^)Wp3X*ougGxAtGi81kQF;h`*-fe0s%txf@!qL_GC2*C1ou|uw#g62Srv8#8DTomI_ zseuS3m|i8Zy_x{qelH6vq$u0sa!QRT8+i9T^|tG#lK>|Jzq$246;t=dak;n6Y=gFo zOp9^2seB8EH;Iq1zDln>zdP!=-BFA}k_;+p8bJj)y6}i;*#NZnoEpTozCY)>oq# zZPc)%Lh+1`?=M2_CO(g>{rgv5bK{*ik5fY`cxre`XS;R0Nn^PfM78vF%Vnp|Xbh=X zI;|fN!hHaFi3;=`K(DV~VHL4BCuMNt@YBAQJALFdYl{{X6hD2u9OcAkaKunjp4g8Z zqL-Ob3D&S7ltuRux2wCo>RVnhP2-jpi`ju$Cs6zFtR@J0Qjh{ z&4frzAB><&Y35Ssi%;2Wc@-It*KUz~G0{t+k@OaIc_XzpVwKh4M+c1ZO;CkzCd zQG&|>A1D-1HJb6$btcrOSO>#*p54cNhp z@TuG179*fdxQazUr4F?MRr~eN%!2`Q0B-t#HBhfrCc<8*5MEpc_^QPtg!UP2no?xv zP4J#z1@+GP>>x@7a%CpKs~fb|&%nxv6`u4ss2_4GmrT#Ub&Xi7@*^oM=DB<=xhB6- zP_Rfsuu#lMIXokRjH}J58n=tfwne%I?d=hrEPJOEplSju+63ijp2|NzgbQt%nX=K4 zRQ)^X^V5^>`}H8#U4xpE$B%BjH}(-md5fY>lXtMK18oo>_vEBPN(xGD%NgK8FDWVc z`hHRKMVCT)fctr%x{wP~wt)_k6;iqpUhAFiPfd@6l8a{|rJe%U*C z(qrS@INDcF4gYFN#|i@OqKH3pZWy&b5vpj~NICvZhTKMnZqcM6nIzfRn+6BI!p6#2 z48F}W&^LUA-S#lYedqd#Y#NQ<6R2tPCEjv9=`k@o^dK)TCf{|#P(06M`2-vKXM1{I zJc{5VGl)bkdzaZpdRZQg=Z+ynt@}Se1voJxaq~pj@pp%xe}x2)g*vEPS$bTmTRMpW zz_F2p%*7zzBsxo_3-eB)H_>|rDqOS<-ah<8x|YSJ3uw|qq^nV|A|&K-ZMJO0^t|vX zOT*|cU%|*0%W-TT?!6)wgp}xo&%pzWZQ!SNZR=L(+@I5$>#)i9k~Bw2d@;BQyo)E# z0`lsR+%DOCTfRjoufe%(FuFg9ctMIr$8wjahN9y!6mO64h(KN?fRCr^tx=UOeOH>!6h>UEP{OT(=WI3y>n3Kya@PEc6X z09Ch|{oWF+akyX;QbRS6H@3h`blpV-#eBVQPjcZ9_t9x*LncUo=1;ns?$X`eNO#En zrL*6^iTt*GC~g3&gUP-Kx^Qr7X_><9mJ1b|?$6! z#+KN6HRr~7nz}6De8wVZ z%5_br%6KtTx5>3K%z1!wNYXJ^A$m>&MTLdxsav|g@EZ#*8T9xtk589e(YKe&?L5$H zT$E#YawH*kuHdnGZQ}N{U=C+3vYrTDR2Y?DH%w-T)sw3EZRKE88%L|448(b^#vOPY z`Cdjwn++G#;#$ znPUBGc^V21<0KnsaaD@c^=7FIG#szZv$qeXFR7hOVs2R8bvm)PWnJI98pCu?&MLB*y+ETtCov z+1@U@VVE`Tyb&WV3aW*mrmH)XCme#o@6EHewg!+UeB`(p*vZ@|aP%iYD7)TNRiIof zMX}mI4WD)pw88m=eH-qYl(`hIV7yl{NtfE?ER1ccHj2 zNVgcNnEgu!d1o+BXpO-!Dc=hFTp2G^3zo2Vd4lwfiNmN>s-6NDBkTW$%FquI=3J(( zjRJ~2zuQ(9i|=aJ#h&rxw3*?EGNVT^!$2H4K5b1qbk$Y5Xe2aHrd0Butc+cdfU62XJzn0VzRkP(V4{ZByGnqTqNdZnK-bTiPcU|R)v~Y z)YSFPczGPLNxkP=N9j`g0{QnZ0OZor=aZAl<%;~{lT^C>ihPf)OqU=<>Sb}czh%ci zXDY={n6&m+dngwjGLgR%HX4m>y}OfP$yHPou)6vk4DPx9jn2;RBmitCK8L<#2Mm?6 zcdeJ8qspJaek~BV{s4PTGkvtUGh4>@V`Pp1hZ*CM7sc3gyuqi=c2c4H^C{=o*hK32 zvD$!T+|Q@!uuG@Y2|v)-f!6T7$$+JT9;WFE`HIx`=u^BjGi0wNm^OFe%_8s)k;~|M z!Sn?2`sfj4I2oMz<-3jfyCg#mFs$7&^g0&1osnjd==zfEZz zeM}1vhuZeI>5ALZ(aUSRf~446EED_Plmj#Z^{ORn$ntS7y|b zk%7Hfsd>?aVK+;S_}Lkfs0mD&Q}S8nmTIwg)8hy;UqEBxElV z*b&L&ex@Q|5scMD9Zw+V-CZ)I#!V=R72k}`DCosaI3OTEPa4TL3%>^=t_E)+o5qxv zhMx9(FWE3^O%~2c|LhwA*{lmTOD|gSG$z0+>VvHMNmsTFrhdS@}>4 ztOdr$p(M1Ug}-W21{xV2=73~1o4P5W@I%QhYG|c0d&!Iy<@x<~ z!tr%E7%l7YFufIp@mP;xEs!5(^$b%2*FwtFMFiUlJ{z(Ti_bCw6;t<^U6e{g)^lG} z6m@*vu_IUmUyZ%%Hy9SfSE6@CW>6o(^tH_`jKpO~0NB;pKYIufhnUs~Y!f9$%FL8q!R8Iwa_}aEV3a%u@Strx|BT+F zKXE|O+IYZ!f$5^slLd&N z_um=C0J!%G)w#t*l;npE8e_>A{9;DFxYa^sqWt{X^T$$F^Wc~)-;t}~EBk#%uDXq@ zc#P_1FheI!I`LcOUgL(e|2W`jk#N#akGqaw2gS$2*MEg^K?P^SN~+iKGe`hmi(@q< zLZS~H4QVxfQk`R+e~zc5awHy2>=08?@%>4L_UTtQPFz2^OK>3!8|jUDpwbWMqyhj|@rzh8-f~h!_d`Z>&=ITD9?$ z-yX--y@-Nt?El?wkdylV?Kd&xT2!MMoGba|MTCdT28v1Jp8K;9xV_1jY*Ac%WReLZ z_x@lN&AN@uMHMz62L0ndjqaT1p-rusxN5W`>MOfyd_{_s5qm~pq-SSmrcLYKXSlM( zK8R<3O!mf7X4?%0tj2Q*g3Y}Lkx%bt-hv}-B$e5$vFu~ri#l6L0hQ}k@9;HCCwe3f&^{1>C09K5U#YXv_AKj{=XA?)x<5^RHj5 z)LPih?FMXyH+%ae=}cS%=!E45*QgL9z13C=kuJr5=_ACjdBWP{-Crx4iOEacI~q7b zD?0!PHy%S)$7Sgkc07i4tuu#5NWUq``&o$sMwIu_LJ=9$L%_*w5gFJRQ(Cs7TRB?G zhOkj%HltE7v$vRRs|*x(b2wJBt{pqzrRSb9NisemL4oRsV}U6kCO#hNy6a`zHiK|s zW{x}Iuj@YP<8+~I1`|bS|0q*70o2dBI#YL<;(D9i=&$m``W8Pug8xDf?UEj^m1^5{ zqJ_vM^M6OIWW?4tsN5Zc^^5n(jQ@$n{$bJ@5+OrC1A(fB@Xz=KNw)(8yUzH1TJ zzUwhS)RBq#j%q3*1N)^uuFbxg$rqtH~lgz%J+? ziwU_TmLvAShCr(iY4sl6u<4IQ{&MdD=rP=EZUOuN7*m?bghA`C2#8H#AM}AQ zgx2G2i%+zHUz=Vp-1QjMzoClaAzQQ}y1E6?yxa%@M%i+M&2`8&AEF=3h*2vQF|NNb z_?``bN%m7H*o48fcfXmygGWK9rlgAR8h~}3HkJ?H1LDc=O(CBTTjcl`Cj#_;_P8%G za6{~nE#DiOI?PI1>PZg3)q^t}WR?75%#`jC0ddxHsM#^#@Esf!QHLQXCVmJo23W{{ zj9Nf#!GOJ9_bQ|tIvfJ(yyM5azjM(8$QzT$W_Xt?0fFrfB2nTdZ z_vA3PlFR%v`V{uY0b{%Wy1*a3LB&kFWqi%)>GSsb4f@768VLO6LPq?*flPPk94ZIq z<+^?T2mbKZHL=Y3;dX{(Tv(vjY{af4haV$G-QqPn_92>v$ck|A9Yxa36IZ{B@X;x@XC%^WR&| z^rkCL$e&R1qasgNPtYYozw1`S7< znb-}b@r)-A1E&AjXt@`YE|>-feVv{id@$U+6Ekp*=i0oqfcX|Eo#RG~hf%F#>M#!5 zj+$oO5WTrdH#ga-_op-8Q%Zgvl&tAE6}_IMkPIO@>@jjNH~T-m8p%uXAcVn*I=Rxm z8{=JFbB~cZgXbE$*)MjEil~V5K6Rwat{3s{YuPnq*{#a>+hmQ%94UX{wGdl-`ZGlS z^Ftsf35ZedeRQra(LK8j2={is~Y;M)g!s{?(0gonW*w*$;8 zP7oK2ZuQAfmc@nMRh_*UL;q$M3Vr0H4r)xjnytS#U0;O-T)DXKNsyjpJ%bSy=N7)l zbc`I3H{=^jmR)IaUr4=B>v-atGqB%cc@=YQcl12iSR1*{O-x7~LYKV0zybDWq+~L| zrw>J(_xJhs+bB;5=MJX#$n2}`^*bE}t{0s?PVk?Q4Ag8f)IUSS+{0LFV3sel&bFC_ zAD^pib|Yrc9ZqC);k=hi;WHc6jw3=PV&70kPPRJ<6ky4#7=$HekK`pXXnJa=>)$oD zmc`7=;WlaRUB_jevz$!EtzG*|%s}=@SFPNI*U05(m{Pp?R0eL0*>RzhAyHJnCjUR= z8yTzHD$?N4(`R7%MFC-Dt$%a5eY^vRRU8|u^xMETKKT}B15C;`VGkgf-|!%&J}9uXgm4%j2^z$egQ0S3y5|5exXsa~y+;ODJhNEM* zpV9mk_K+{l6fM(Bw11NKizYWX*U~U#_ks12j!}s1$le7eo73@deQf-w>anMF&4v1f zkgef5n%xAcDHO)0oYf;Yd6JBt(VrXSlkX75n)$r+<*758{x77+8B!tv{5R@li~ z^G-)M(m)ynFm#_lD(j(DfAkmu#P0)awQ|)NjQvg_9E!-)w2DEItRdq1DFQas)LSy( zOfT#d>*7MUHs(~#=8|cyt7oGwC9lJvE0He+QUPxh;S@4E4@TK>qp+??^_N5({)tJ& zx5ZPlosKHSn#JE5;xYOjjE=h;(HpbuG%O+nxU|Z%F%+SMu}UFvbwBC1&C;OV4!|*6 zCLsrvgcXSnoj{~>bhMB*I8;w)r)PMxI;J&Os-V~KZn`JiK!9Il5GJ>!5=dj?5DOuC z>4Xz-7rE&rXJ(^!`hku$@5=rQ>+Ey&eD}N}%i^Iy+(5^VbXcg`A9KN_qeHIJhvR$E zKZkJ98gI}a43I%8MXwEERHsgj@e#OW4P>jDmPi2)6_D(@I4`TV%vWrJe#xUrTsY(y z$#_D&puijceQqV;qnD4-bD}?6%x>Aid*5Ov6MvQokE#2WNpf4;QQ!r)&5gy_-QgFF z`zb{7)gFJT0D8o?{`E;*wp6*o9sTq1o>n32b}{|xL7Kf)?-!MOrSdSPJph#xB};My z6hZE2@2uz{pVMr#MX+?E)<3>Upc<)QuG?}%6|}uX*4@~>qTGo|Y4fG<_}={YL2^fT zIar%;;A~7ewXz*hvybyU^UZq`0rgONt&a897c)rL=wA!ZNelJqFccqx_n2{~nM2IO z89yw5FTc-iI&t_v?{o;Wl0YblBzL6%&5WaW)OI2=t+>h7;yk~@(sS=_6maH z>%)%FSxxj{wl1RyIz=a!BI7Cg9DchEwp~PaZ$-+3fLpuwur2o|YJV%43k=mooWBKW zuI$6Ztr~6h@9x@7b_add)2vk-|ME6F626w8Uxoy~B*204WPz-`{*eV~6C^vBdwoe{ zh!?Dmq3F&@BH)^zzgL{Hj%OP%jv&6bHNQJ{jF?%;eIROKIeu0E#AqE=i|~_e3RHQY z7L#dCP=3snlTKpRWRVSz`<4B|g1y12@1aXEJ7z)RBceL67Aesg&Cl7=>zi>nNsbk4y{cGNi(-nxEuJ=^~&)lI?zmF7%+zT00huFo=b`yX7?P z?6$PRL(uS8f7$8R45^nt9$^aNC$#6@%9Ah_O%)8@mEQk2?l&>^N#;BK8Ry*aVa)P9 z@KuZHFPDlLDFW%=xyQZUwn2m|Kc<`c2uZ^ogvE{do|4RiT(X%iYkR`a zrUPa;0V_VERohYu$wh&StGo5d5uKJ+>H+smJELhF5V>8G)Ayc!l9LMnqzdA|%` zksobOR=Y3YQd21}ETY|*q=V*vvzU4_v~#h72`dP)=4p)Y@B5f{WcL#AQtrpzg`$~t zl$IAQKIJtuAZ2!2hv_7K#7*V2q5z3J=NBEx0y;DrX#zsE+%q*6Q1QiwsAmY^$qsr=#kYli16-PH{(xekH2oP2Yy9I8Uw?n-?tkTw z{PH)mk8`tCk+0B*7$a~U5gs=#(885+0&=?$nDc$GW<}JvZ`jj=kQ!a&H9f;5HZj>p zgV~Ru9v-VYPUrA^p^Wy3`y?&T!NJ=46s$0;(W~l+bfL_7g*0d)y*d0SfTTU38fppF zPJwE!+cR?=0M0%S>T1}xk7uU$6TN+Lb!M~W;C9o2K(HBKh)IPj#{Tk8-cs|ckp8n& zTw_Jd1&&#cAIE)v$zMY;Ahu>s!5WWOx;gf>4sNr_uX59SJFcaCMMz*vzfw|qpl>F< zu7ZoPLlf2b`icl0R4V<&L<<|SgMe`~ocb5CSWb2y_-Z;1}M zorg9r%4(R>U6x&Dn_d1Rz85=~uKI`A#l;`rW`1gQ5dG>+ioyUwgUWoSD6b{pC|09= ztX>jHR*6iuui@_qI706Al59wAqOcR1bQX?Y;b&b3@XrKze+M<*sS-MxSCBWO+8oW~ z7=n$fir`6#hi$AB@5z)5lE2?^$g;nmVou8sFKGFI>dxE?58g^5Nsxvc|Ra zi-&W2D&%$gD>RZK@fClfC&oulT0Mh~HK>)A;gAtf$;qR@o^$Ex#MK7Os>A_}9KE5ojnhMmk_evviOS?LB>! zywTn^ERkKffDl{LDY8k6j)gu@C=BbARS+C|>FEv;w7WvY9V0>|lo|_`RFjR!OOWaR z{YVur<2-DXakW!Qvr#92p`?*0(^7SFS!cgkSNh!V^p}ab7csR1M3-&Z0S!{rza3#e@OS$`c*2Gk z0e7s)*C%xR`A*Fx!bUCu=~B0RL^G^k(bxKN%ak zbqbczHdmn1Z6J;SA9E>c=@SyF>~Ck0{LT6UC8`VKAPeCLkQe-}Y5NLwm(#(jk1((b z4;LFp8Rh8G^7mY(A$5XakyGC;^JIdLQW}kQm%#YXn*AI1w4JHOVA$athQQxWp9&Bs z0lzgyUJ21GfbmfDrX@G8eM*|SP;BU(-w0qv8eXMI8`&i-))N%j@pAywe~oK#(z*xC zxzoM9!)5$AR+-6ECTMa}PuXC8&1Ty-4+dhYdH}MeQ2A?^+(X2z?x(S-!i&`*LnBom zBGid0XA~oYSv!6qD{6=hjaC>|vype~GY&-Z_iLA#AU(P-9H+DP+6z|`%f{u$m)~FH zHtKUHW`CkBES@q@{m2@6Ad(4oyZ6@{2_Nx8b)C-7-tGmI+(>6?pk*9OVTd89M^xy~ zanO7ZV=P=WcoPYLotCP!$Bl43&Ju%t@4fi~IqQA-h6|h%pBNYYk%A2%o{VgKc>gf? z)`v~~U>EVA1@?6rV~F5@gC?|Dv4Fio7Ap^-0>E8a%V~h`EF`1FJjf$GSD?x6?llT~ zg!&A&>=6V&7$>E2^B8{cpdm&$0I7Ni*!^Y`gj)H(KQ;6p!v$qL-8?Vgfw0o0s{Rsocr;#4m0Uac#H0dSG-<`ziV2Y=@k5x_S>_1o)Ju z>~9mOFDqBWf}?|+_%*e7;a4CJBmR8SUAe9))j+9>d_M*1Y%>w-+^5fwD^>95zc!l- z1Xe9FnxCfFGtnNzdWjGyoOWNeO9;xyJZ%Zc5bdCZAgO^)8L;MnSrsqMUQyZ}K;edn z(5;)q)l~CxuP{Q!Uq^vOJHC&lRApIgGV$a=67dWcdBAt@7YU|psYy8F z4;fpd?x}xm5{^1+*+V;p`8z#{$=x6|mnnx%W$0NNYIX<*zOIMP5ABl=#3qIMfy#RK z=EfoOpmb;%Z&kqK4_w#g!A`BtPfbnI1WUCt3pWk#?{t}=8FNeWlI$TPxYj74%YC)k zU_K>q`U3dzoMQr&PTjBJ2xvYlb?eJe1T1p*F%r*n+3V;yZ`@14uI-1lm3WWeo{7P* zZQ{!+oSg&OKO^FNxEdsO`VrsGq*Ig^8G;s)H)U#|`Nb!>1CY4#f9x`nG?>H{Ouv+p zH>?Kfducg_aQIyRw6@v;-T?Pnb!_!T%&& z4k^Az6{qEkD|7+H*-0#5Y4I=RJ=laq+Uamg778CiDPy{rWz`pF(?Ypn%{ulyz%5(r zDOfYU^ZfhDZ$_3&&} zz&=Hh$cFZ0f74N*faE1|?iX<~z1k$aYw?+)?CxX;{M3aa*m3G$Qvp`n&NpJofy&OZ zZW)N-1e!`66gOC6cD(`7Wc7v*vBk0=+vi}E{YTu zy6y=b)t}H)1p~3U@cnvfQ`2#ypk;#w9qCb56CB>Q543Ee{2GX|c=ZhYtZm*OiOQF` z;)&xs9(r_(M~m{jMnWLcW5ok(aP5$8Z;F60VLH(7Z7L~%>xcPZeqX*VaR!kE{{plu zA2?znRW14MQRMtutrZ;00seW4SPszHOnM5YHONRAFa#wh2i01|UqL>68)X-qUPymt zbut1(s41=Aiu(Fb{|6+WtThAt@>q?j$vjFh=5b_2! zKK2q9Ebnu}B4>xp6p?@C5RXheX6?6ryI(EL#Qaxw4H)hpgJ#3k;;VX6fzG2x?Yd{(8W{H{7+}rO?H%Y+KESo0DOj9X-cQwO`ie8k-4RE?ma; zqNsaJs{Dp<|K)#qwgKV+uk%>8MXs2c{Bkf?KLV~oD%i~APQ*LNcKKKO5F~a2k5@ec zg)zT=F^$%I?m-P+aZh7R*f9n5;HmkGZ|&PD%Q86z!r4%vlRw~=l(ajAS+KKE(;RNW zFoJsOq)#Bb-knY zFIc^2ZgQhW ztt5ZRRLmih7P4vCkBP>Su+YebjFjGt{K-sZrY}rFUrk*}J5c>!S+#W7bqjE15+eKHIagzJhF>j4z|p;DymEyTcvW8T zpBENp-8-k9>8>wamT#SvDRPtf=%+!^F9z>Dv|FY;=|@yg!pCrtVhY{-%0RlGsnK8p zH%mD9VC`o`puMd4(mHP&ok)X1eWd-r2~ukO;Dz;zZ;|0%TLIsRm+!L(aE_qn;b(#X zMGBy8DP-+ss1_`Ez@0X16QX2^*b9H_q@c7g$pRVY9Ap~{#d-SqaC~H#cX6o&fzRtP z|76+SyT-u-(T{4ooC<5^*G$ci7{WY_$79W9!k}scl|4@F*N8PqsPXxQ^{jwKHq6YD zd{yKrxIo-I)5_bUWRZ7=03QV|byff2Rdn;?XH;_YldG+K7};DQUU>rF)R_sA@!dH0 zKMOR!x@--D$vE5@9fol{l}av$dc05{elNcsz^o!}M zPoK8naZ5k}3@Zw(DG}{BLiP~fYAh^ySet$$>S`>)U|4!)%LA#HnnG0=7UdHJ>bFTO z9RjoVgQ_-epH)8-!%!MOuGED^GCPqZF<&Dki(KV0sK-CdHq!@fJ1?e6o`Gk4SuD58 z)qVzHU2~Ej9wT3kfV$-$7?f`|92zGnS$b4=m$8F2YxTI5C3hZ{vy6Wp0#govnyn_a z45hK!$WjC#^lLhALkbxaPh&p*gC`3*S`GuLMqon(!yqvnU^BEy)%mb-Q2t0vt!R5y za3PU&_FL|+`Js+&l1M(WN#OxZ=ccw<{P*&rYfg&Bd^V)3^v}+L37gOTR`N6dr z2yL@50c%1Dx&C)k!oEY9b}jIh7#qz!P*6${8_{sc3XA-C3}04djW!jY8<#bMRD1il zAwI61=K|^jVb{Z`0pDa*{5s(y4C}Z3XP~ELMh;iLNnEpF{-=YNcGd|iEN=J9=4Ekc8>$gp6S@oS>?yBfo0}3$P!Bgy2To&SO1TLjKY3~#KZKlg=nToUwm`(s} zl?e*HKuVf_WkC zuY5pXBFt@YOT)%c(YR!rAu1J{(g!lT<4wb?ppNq%AZQ{j%57%IN4gZ6I z!y7|cU)aWgvASawG^=0vDNZhzlFmd;GmHRN#O!vo;1iil)Krk~+g=NEfGIOUwQw2$ zp-?0s;j%i^>&f!9GwZ9T;Pnd?VA#@4kV?`sO(cVBLeycD{Af^2HS`H&IYeVvVwO$m zKUznS3NquN_7PJFJc?-ApG<&Z17?g~6+u@{UarH9;?saSy8H>u#g|{2L@n(Tfq-K6 z+8Vd>!sDwXD_ihj@4AyEbWgsynh<13t*sLn6{YqX$zU!GoK*ghjwpI)FUdFK*iXSF z!Rr2Yz@bKAj$loK22o(FJ|f8LO9oLn?G(Sn1;aU!-_2NtyIu9&a0u*qXE!pPOydP>aO?F|dx{p;mj&N}=}tSX#3$hJ3>`_7&$_ z7H}#5&Tu#h{dCKV5>7BD_UK#`~7Gw*VR(_td%CdX*}tW#ny}%uOs7m(Pso*Lv29O_B#@So6mytnv>DmNCH#=N z#XbM?Y(cCjkq4Y@2wZ4RuvYO-x{ok3X}HtF2{@N>E_jJ;+ZE5W-l@w>aa?S$_4T~6 z28umcWWWg*Vh&^Kdg!id+3J&DfqlKot~fv2B|v0qTkMU!OaAQYDHStcdk6aVeE>VE)@ z9qN97yk1cMW{NI-f~U6!rmI?uM|r3IM@(us5TKWBGAJOk<5eY|6V0OAu!?Y-*tMfN z8R${Y{N{s~4uA&7XjBFL7E|V0(hmAT8)6+bDme*~BdOUz^0N5tfnA0ev2K8u#hTt*UXKqsC#?--i=3hCf$RPkhjrwa10<_DMI^GJFI z3cRitMq$qVdz(madgw}GXfD7HR;6;QZNuHM-j#2@LpBihEEyQj$4suY@nRN4lk(O8 zIx6jL6CAz9H7uv@J#~9(I+Qv!x6u>bl*Xi9{iN+pbnaDqQ-_epFTm zq(pev=%^tx4i>xI*y&-mp;t(o<-wan29q~ww30G{A-m&jUhFS_@QrP*IF`o*hxGAE zJ*IPaOoEUg0NvF9P&)9#)_JdJq3$4WM;-HeP@R96+_~-bz976L8pjkWke1A30vVp2 z8QjpdG>qE4RW{#aILS8IBuIe&a3b;+Ucp6@$op38uC~9G#)axZl)gZ}={`;r_CR+}m|(~Ju}VK(0T==IE1HQ@ZYJBxx6!T+ zWH~fLXPthhB9>9_p4a4|D8!#`CN@xQcg*xi5F{M$o5VO;d0xzg@vAQ6Vt~RTdkw4n zevBQp*B~;Z4#h)iS0n%Oc@5ezNDn12bw$1;$fzJBG$~ zwth{t-vq9cPXziagLwB^WuM;ZdUV%{e8WE`rOCGQ`I^qf1b?(21IwnvL6c4adFyIssVn7dRe=8m%~YLvF_GSw<=mWKPEW8stP<#tN# z(EMxuM)yVY=x}NPzr`myS!tt;r0q<#uH%IW>+|C8bo^*P$PQfUkrTGLmTY$W?S0>L z*Z3{h>Ofx~R~2)Qbez5EC6jtnwX4|y(zI-}W>KTDhxNAPcnqrRVOX)1MmMQXgEG%C z&%bU-?e<9x34nXT*{;EHyUyy<$@?>t%hQM44XG6+eBjR+pxPwx&{)=`3Z$eLORdiR@;dD_rXSHOYc|Iebq5E7qrusM#Nz2*^0!CAw?9fk}#10P* z>O(S5=vG*mzj;Q^;9HMe7u$uKrJgYQ^8GOpafMWGpVgVY-Eo7W-b&7W^yuV5z6%tm zd}?NkcG8Hwjx6=19@G4!;$-)stmnU_1k6s8HA+P|g3A zZN~w^uufF^@z_@F>;m*et^=*rP{)`JqfkAd>TY=~!ROs~`l9+~IV@#H1IfP$_t&2# zKs{EI)m&|_Y&-PdkKf2_vtBET6O82bA7e<5(Ynl>VCKmx78BW7hlaCx4qt^%4<5D zX;Jw65yVz`?UyQ(nH)cY4qm>4>=5{#JDU*4GIA9D=5I{@NO~2U9d-DwF~53FE&OXb zPhgSw%|nvYxyP;)-7sMhal8BUuJuR*-ARZn)x=&qmv(N8kF&fHx9tr{yCSvT`F!Y^ zt1Ouv2hG)`mWM(OH-{v)hF?fM$A~z7Mc7FHp zLpKliXiM$bAg&&Q;5rUS?!Lt0|JZf$f8|Kx)#U*{(4`*gwF#JMoy6N=r8P{L^IPlKj{V9>a{aWG&r_zK&dhiZEkgF$VwE%(GFw9Ztx(yKrPjqs}BYVjWD`S zQ&M z*Y2YP`}0bwjk=HiTSg(vt(m)37SIkOe zyJVtaCy9@^=Iw~PBin|KjJ3NJ`cLE#XD;;V%Z@RByL#%ntD~(fl84|0cMr)$fk?(G zJHt!oB5xijcQWAYmDv3_rYid+QT(_5+tM|Mgxe~=&>d@<^dAx08Hn*@pzJ{gCYk}9C*Ehd-VJ;Bn|SZZz#nWa zbViHvVuEpoE45+ajyJMCK1be7dnqRP|0vt>Tfuqg`uEsbTR&c#zs*)t(pE$&ScLr# D8c;}2 diff --git a/docs/theme/images/powerline_full-med.png b/docs/theme/images/powerline_full-med.png index ed6d48ec81153b36a7a4470a8599695587725a7f..2d89c0dda683b2f97fe717426d6a67d340afd410 100644 GIT binary patch literal 17171 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 N22WQ%mvv4FO#mh1Cm#R+ literal 3221 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 diff --git a/docs/theme/images/powerline_full-short.png b/docs/theme/images/powerline_full-short.png index 1071b9ab55c57a454effe910caa45bdecd299d7e..62abb4a686181fba107e7bccfce4681b90cc67e8 100644 GIT binary patch literal 2781 zcmYjTd05if8fNMlo2k@!Ce7TZgdvy4xni0NQW`1lxsH2{Dej7E;x^rGn=OnO86sfL zxRO}zf~iyHgo@;Xh#P4LE+~ZxV=7*I?t|UmAHU@}zxVy#?>*o7&bj01?x=iF>mUFC zP)0bN_W}UE?cRMi_(o~>{;Y;DvitZp$tfTO08rT-Q0e{(XRM+P035_1&Y$zSTCzM9 zdoOrBQ|W`Se_%xht_8sG#wk*nuyMFcud$_~dQh>Vi?=^mBqlT(vRc;Q><2BLR z^B_00@4-_bU$)=5s*?|jtKOhmeXjj^%%OE`-)q!&MYQ{M^adMx17!Q%*?ks0MR>@M zTe)HBY0{FN)fgBIz4O|z?@`*mU2Xrn5>f12RX`$tlr@>|#LL?D z(^TyzT+ezyY6COkI&aNCG3cO~!DIcSGac_^Do^GQNmQCg(yJn@zo07X6Q)>|Q=}D{ z4m1UYy_Tyw=s@?A=UC%rh9v10TICU6DSp2r|dQu$Ozoav~<8$PJ|cc3l>*Uq=TuPZoj6?N$toKv4I-u!JK%j*b${ zyFfB~;teTM%Rkf(C;&Qh2$Nf4<+1cgU_1}n0K>W?*A6tSf877DuV~5aWbfFk!C{DM8AN^ zo<#k9)jA|FI3pR$1$v|kTVD;VVaaZT#ZKE?kD@|LNMYGYGi%#mXFWxPF70a3@=S#r zxv#>lMP`z^zBt%80UxlVE&~072glxv{X?yA zWlnnNs53#$hu5y$Y$z-lDJ)b~yg z<~#@g6+1f85bIx1?h<6R+OMxxJz$&iW8WiYm%Ga*9puMVH>?pSblw+&kb|DY25Q*MC#lA%rzSIKjAqn7-&7 zsISI$E!i%@LnT{Yy9(XYPix`ho17W@71FQ1ChWTL=P;fTj@h%+W#~(#Dh)@ z&i=S!KiThEu&bF)YB0qCH9%H1BO~AY#^8VXm=Vo{ZT@CwoIhJ?kYS+}&1CAX$rPl3 z12LTkQ3x|j&Kp{qWdw(MKScN4ToEOcUobNgLp-bu`s{g%Fc-r<%?4_K1K!?fP%@tKHssd&0)lCx=;O2`qrcn_ z+Wl<*Tg?)32*r*peOpk@Z?YloF6#bZddQcm{vb{7qKri%Tad|;HmY*cBr3&fXDc!i zS=iQgLYyn}x!}0zUs?mwg#AbCZxTI6+pX{nZ0DyKXjpdpBjCn6_;A}l54oK7O$G(L zD(-AGaCu--_w|@w@bA*MWkV8c;sbjfMMj?a`%Svlt+v--y=8D18~35iiQ0ia0WX-$ z%Y$NUz4|^RfyJ3DAO8W^F`kp;{Q{W=V&7Q_&7zyGF0LQ;bqT({*I3%)bv=(KY)E(m zsJ}xdnm()!#0vg-FRV{nI;)qRbS9Rgf<)8a)c7(@LWAW~)ff;r^)^zc^O9_G=hOWe ze{zn9^t`?G1vb2AVxv+UoV?r{Dc{PWV?{p=#Bb-b61s*am;(Xwxdp#&}~bPeuH` zaitn2)6ksG_BRYbn3>s@(9FL0U$$-3eJTVU?tW&bh_01Ahr54RHKYFWD^H7rt#hcw znOm{k=2|SsB{1N58JFE}S^qDFcZhW?HH1$}Yl4#M@;Zvi^b}hj`tlF=@%(GZ11VF> ztMxfGvWc0SmOJ5#Joyqy*j^S&iTJZwxTBbMKxt7;qV(nLYjK}sPG1}|e+S&0JQ~1k z45YWb+J5Fod6Oe!ugYZ}g57qKxmf+gobVz@UA8RhFlsuCNuUafJBeXl;|Wa~D+6zO zf?WEv^|X5DldOWodl7QS>^OzGDgEkJ%Z)JCp%?b!U1!1mA*Ty~neVQlo8z^|-V?#3 zs<|5)N@fhf#!Ie?T4=EK5wGCWX===MEulRiih77(5xM>?GO1g z4}H~*dGB_n$j`xfkcCDUhIWk~Zf1|TV|)o$?WluFnBExZM3kG2t#>uWE(Oq~%)8zM z3uVEhpa&v!E_N#sdkg!}TirM;ZNd`LEHA=J;|w#evtxQ39bFiEM~kZlSx@t{^Ys>k{K1O($#iRT$^_cXy3W%spPxY&% z88?j&Zj&m(71*cSa+W?ECwO!ZhITMwo|@yU!*?_NKi^(CM?}rvej1qOf8j#zQ(nW` zc?g4peVB45Y9k*XkC)9WSDSYPIfs^?G|Njh-;e7hbRJgZ>RHy?i_3_N6Y+CdgAf^* zJNWq+GEGyxa%q-3B-srF`T1whz%RSLyv9z}ue?oqax34&6?|wDdV!^e7(@tIV%ZPS zlqF=slI$A=c~{VRRBwF*F;{iZ9>A@dA@P^5Qf;}u+OLnfBE93F&nN`k{XEtF(!c); DPN_IK delta 766 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 literal 0 HcmV?d00001 diff --git a/docs/theme/images/powerpuff-med.png b/docs/theme/images/powerpuff-med.png new file mode 100644 index 0000000000000000000000000000000000000000..a4c2740be23c17b3761fce0ef187ec322950f13a GIT binary patch literal 15145 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 literal 0 HcmV?d00001 diff --git a/docs/theme/power2lines.rst b/docs/theme/power2lines.rst new file mode 100644 index 0000000..b1e3690 --- /dev/null +++ b/docs/theme/power2lines.rst @@ -0,0 +1,44 @@ +.. _power2lines: + +Power2lines +*********** + +This ``power2line`` theme rearranges the sections of :ref:`Powerline Plus `, but on two rows instead of one. +That is, the data sections are displayed on a first row, and the interactive prompt forms a second row. +This gives room for long command lines, and let the user find the prompt always at the same location. + + +Preview +======= + +If there is nothing special about the current context, the appearance of +Powerline might be as simple as this: + +.. image:: images/power2lines-short.png + +A slightly longer prompt with more data: + +.. image:: images/power2lines-med.png + +When Liquid Prompt is displaying nearly everything, it may look like this: + +.. image:: images/power2lines-long.png + + +Setup & Configuration +===================== + +This theme as the same core configuration than the :ref:`Powerline Plus ` theme. + +Theme Configuration +------------------- + +Colors +______ + +.. attribute:: POWERLINE_LINE_COLOR + :type: array + :value: FIXME + + Color of the decorative lines. + diff --git a/docs/theme/powerline.rst b/docs/theme/powerline.rst index b28e085..477d8ce 100644 --- a/docs/theme/powerline.rst +++ b/docs/theme/powerline.rst @@ -1,9 +1,9 @@ + +.. _powerline: + Powerline ********* -.. contents:: - :local: - The ``powerline`` theme is a clone of the `Powerline prompt`_. It copies the `default segments`_ of the Powerline prompt for Shell. @@ -41,7 +41,18 @@ When Liquid Prompt is displaying nearly everything, it may look like this: The above "everything" image looks like it is missing some parts because this theme does not implement all data sources of Liquid Prompt. This is by design to clone basic Powerline. For a Powerline theme that does show all data - sources, see :doc:`powerline_full`. + sources, see :ref:`Powerline Plus ` below. + +Setup +===== + +By default, the dividers and markers used are the Powerline private characters. +You will either need a compatible font, or to configure the dividers and markers +to use other characters. + +See the `Powerline Fonts installation docs`_ for help. + +.. _`Powerline fonts installation docs`: https://powerline.readthedocs.io/en/latest/installation.html#fonts-installation Configuration ============= diff --git a/docs/theme/powerline_full.rst b/docs/theme/powerline_plus.rst similarity index 98% rename from docs/theme/powerline_full.rst rename to docs/theme/powerline_plus.rst index f92f919..ab06539 100644 --- a/docs/theme/powerline_full.rst +++ b/docs/theme/powerline_plus.rst @@ -1,10 +1,13 @@ -Powerline Full + +.. _powerline_plus: + +Powerline Plus ************** .. contents:: :local: -An extension of the :doc:`powerline` theme, ``powerline_full`` includes all data +An extension of the :doc:`powerline` theme, ``powerline_plus`` includes all data sources that Liquid Prompt provides. The ordering is the same as the default theme. diff --git a/docs/theme/powerpuff.rst b/docs/theme/powerpuff.rst new file mode 100644 index 0000000..2d29170 --- /dev/null +++ b/docs/theme/powerpuff.rst @@ -0,0 +1,41 @@ + +.. _powerpuff: + +Powerpuff +********* + +This ``powerpuff`` theme go even further in rearranging the sections of the :ref:`Powerline Plus ` theme: + +- Data sections are spraid on two rows, +- each of which has a left-aligned and a right-aligned section. +- A third row hosts the actual interactive prompt. +- A horizontal line link the left and right sections of the first line. +- A new line is drawn before the first row. + +The meta-sections are thus less prone to move around when more data is displayed, +and the user will find it easier to spot new information. +The horizontal line and the new line gap also helps in parsing screens with a lot of history. + + +Preview +======= + +If there is nothing special about the current context, the appearance of +Powerline might be as simple as this: + +.. image:: images/powerpuff-short.png + +A slightly longer prompt with more data: + +.. image:: images/powerpuff-med.png + +When Liquid Prompt is displaying nearly everything, it may look like this: + +.. image:: images/powerpuff-long.png + + +Setup & Configuration +===================== + +This theme as the same core configuration than the :ref:`Power2lines ` theme. + diff --git a/powerline.theme b/powerline.theme index 35b4d34..318754c 100644 --- a/powerline.theme +++ b/powerline.theme @@ -14,31 +14,31 @@ _lp_powerline_theme_activate() { # Load default colors if not already defined POWERLINE_HOST_COLOR=( ${POWERLINE_HOST_COLOR[@]+"${POWERLINE_HOST_COLOR[@]}"} ) - [[ ${#POWERLINE_HOST_COLOR[@]} == 0 ]] && POWERLINE_HOST_COLOR=(220 166 0 0 3 2) + [[ ${#POWERLINE_HOST_COLOR[@]} == 0 ]] && POWERLINE_HOST_COLOR=(15 21 0 0 15 4) POWERLINE_USER_COLOR=( ${POWERLINE_USER_COLOR[@]+"${POWERLINE_USER_COLOR[@]}"} ) - [[ ${#POWERLINE_USER_COLOR[@]} == 0 ]] && POWERLINE_USER_COLOR=(231 31 1 0 7 6) + [[ ${#POWERLINE_USER_COLOR[@]} == 0 ]] && POWERLINE_USER_COLOR=(15 57 1 0 15 5) POWERLINE_PYTHON_ENV_COLOR=( ${POWERLINE_PYTHON_ENV_COLOR[@]+"${POWERLINE_PYTHON_ENV_COLOR[@]}"} ) - [[ ${#POWERLINE_PYTHON_ENV_COLOR[@]} == 0 ]] && POWERLINE_PYTHON_ENV_COLOR=(231 74 0 0 7 4) + [[ ${#POWERLINE_PYTHON_ENV_COLOR[@]} == 0 ]] && POWERLINE_PYTHON_ENV_COLOR=(30 86 0 0 0 3) POWERLINE_PATH_COLOR=( ${POWERLINE_PATH_COLOR[@]+"${POWERLINE_PATH_COLOR[@]}"} ) - [[ ${#POWERLINE_PATH_COLOR[@]} == 0 ]] && POWERLINE_PATH_COLOR=(250 240 0 0 7 0) + [[ ${#POWERLINE_PATH_COLOR[@]} == 0 ]] && POWERLINE_PATH_COLOR=(15 27 0 0 15 12) POWERLINE_PATH_SEPARATOR_COLOR=( ${POWERLINE_PATH_SEPARATOR_COLOR[@]+"${POWERLINE_PATH_SEPARATOR_COLOR[@]}"} ) - [[ ${#POWERLINE_PATH_SEPARATOR_COLOR[@]} == 0 ]] && POWERLINE_PATH_SEPARATOR_COLOR=(245 240 0 0 7 0) + [[ ${#POWERLINE_PATH_SEPARATOR_COLOR[@]} == 0 ]] && POWERLINE_PATH_SEPARATOR_COLOR=(12 27 0 0 15 4) POWERLINE_PATH_LAST_COLOR=( ${POWERLINE_PATH_LAST_COLOR[@]+"${POWERLINE_PATH_LAST_COLOR[@]}"} ) - [[ ${#POWERLINE_PATH_LAST_COLOR[@]} == 0 ]] && POWERLINE_PATH_LAST_COLOR=(252 240 1 0 7 0) + [[ ${#POWERLINE_PATH_LAST_COLOR[@]} == 0 ]] && POWERLINE_PATH_LAST_COLOR=(15 27 1 0 15 4) POWERLINE_PATH_VCS_COLOR=( ${POWERLINE_PATH_VCS_COLOR[@]+"${POWERLINE_PATH_VCS_COLOR[@]}"} ) - [[ ${#POWERLINE_PATH_VCS_COLOR[@]} == 0 ]] && POWERLINE_PATH_VCS_COLOR=(147 240 1 0 4 0) + [[ ${#POWERLINE_PATH_VCS_COLOR[@]} == 0 ]] && POWERLINE_PATH_VCS_COLOR=(227 27 1 0 7 4) POWERLINE_PATH_SHORTENED_COLOR=( ${POWERLINE_PATH_SHORTENED_COLOR[@]+"${POWERLINE_PATH_SHORTENED_COLOR[@]}"} ) - [[ ${#POWERLINE_PATH_SHORTENED_COLOR[@]} == 0 ]] && POWERLINE_PATH_SHORTENED_COLOR=(245 240 0 0 7 0) + [[ ${#POWERLINE_PATH_SHORTENED_COLOR[@]} == 0 ]] && POWERLINE_PATH_SHORTENED_COLOR=(7 26 0 0 7 4) POWERLINE_JOBS_COLOR=( ${POWERLINE_JOBS_COLOR[@]+"${POWERLINE_JOBS_COLOR[@]}"} ) - [[ ${#POWERLINE_JOBS_COLOR[@]} == 0 ]] && POWERLINE_JOBS_COLOR=(220 166 0 0 3 2) + [[ ${#POWERLINE_JOBS_COLOR[@]} == 0 ]] && POWERLINE_JOBS_COLOR=(53 147 0 0 15 4) POWERLINE_VCS_CLEAN_COLOR=( ${POWERLINE_VCS_CLEAN_COLOR[@]+"${POWERLINE_VCS_CLEAN_COLOR[@]}"} ) [[ ${#POWERLINE_VCS_CLEAN_COLOR[@]} == 0 ]] && POWERLINE_VCS_CLEAN_COLOR=(250 236 0 0 7 0) @@ -50,7 +50,7 @@ _lp_powerline_theme_activate() { [[ ${#POWERLINE_VCS_STASH_COLOR[@]} == 0 ]] && POWERLINE_VCS_STASH_COLOR=(220 236 0 0 3 0) POWERLINE_ERROR_COLOR=( ${POWERLINE_ERROR_COLOR[@]+"${POWERLINE_ERROR_COLOR[@]}"} ) - [[ ${#POWERLINE_ERROR_COLOR[@]} == 0 ]] && POWERLINE_ERROR_COLOR=(231 52 0 0 7 1) + [[ ${#POWERLINE_ERROR_COLOR[@]} == 0 ]] && POWERLINE_ERROR_COLOR=(226 197 1 0 11 9) __powerline_hostname_generate __powerline_username_generate @@ -142,7 +142,7 @@ _lp_powerline_theme_prompt() { PS1=${powerline_sections} } -_lp_powerline_full_theme_activate() { +_lp_powerline_plus_theme_activate() { _lp_powerline_theme_activate # Load default markers if not already defined @@ -160,71 +160,86 @@ _lp_powerline_full_theme_activate() { [[ ${#POWERLINE_NEUTRAL_COLOR[@]} == 0 ]] && POWERLINE_NEUTRAL_COLOR=(252 234 0 0 7 0) POWERLINE_AWS_PROFILE_COLOR=( ${POWERLINE_AWS_PROFILE_COLOR[@]+"${POWERLINE_AWS_PROFILE_COLOR[@]}"} ) - [[ ${#POWERLINE_AWS_PROFILE_COLOR[@]} == 0 ]] && POWERLINE_AWS_PROFILE_COLOR=(190 236 0 0 3 0) + [[ ${#POWERLINE_AWS_PROFILE_COLOR[@]} == 0 ]] && POWERLINE_AWS_PROFILE_COLOR=(0 48 0 0 0 10) POWERLINE_BATTERY_COLOR=( ${POWERLINE_BATTERY_COLOR[@]+"${POWERLINE_BATTERY_COLOR[@]}"} ) - [[ ${#POWERLINE_BATTERY_COLOR[@]} == 0 ]] && POWERLINE_BATTERY_COLOR=(-1 238 0 0 -1 0) + [[ ${#POWERLINE_BATTERY_COLOR[@]} == 0 ]] && POWERLINE_BATTERY_COLOR=(-1 214 0 0 -1 3) POWERLINE_CHROOT_COLOR=( ${POWERLINE_CHROOT_COLOR[@]+"${POWERLINE_CHROOT_COLOR[@]}"} ) - [[ ${#POWERLINE_CHROOT_COLOR[@]} == 0 ]] && POWERLINE_CHROOT_COLOR=(219 30 0 0 7 4) + [[ ${#POWERLINE_CHROOT_COLOR[@]} == 0 ]] && POWERLINE_CHROOT_COLOR=(0 35 0 0 0 5) - POWERLINE_CONTAINER_COLOR=( ${POWERLINE_CONTAINER_COLOR[@]+"${POWERLINE_CONTAINER_COLOR[@]}"} ) - [[ ${#POWERLINE_CONTAINER_COLOR[@]} == 0 ]] && POWERLINE_CONTAINER_COLOR=("${POWERLINE_NEUTRAL_COLOR[@]}") + # FIXME unused? + # POWERLINE_CONTAINER_COLOR=( ${POWERLINE_CONTAINER_COLOR[@]+"${POWERLINE_CONTAINER_COLOR[@]}"} ) + # [[ ${#POWERLINE_CONTAINER_COLOR[@]} == 0 ]] && POWERLINE_CONTAINER_COLOR=("${POWERLINE_NEUTRAL_COLOR[@]}") POWERLINE_DIRSTACK_COLOR=( ${POWERLINE_DIRSTACK_COLOR[@]+"${POWERLINE_DIRSTACK_COLOR[@]}"} ) - [[ ${#POWERLINE_DIRSTACK_COLOR[@]} == 0 ]] && POWERLINE_DIRSTACK_COLOR=("${POWERLINE_NEUTRAL_COLOR[@]}") + [[ ${#POWERLINE_DIRSTACK_COLOR[@]} == 0 ]] && POWERLINE_DIRSTACK_COLOR=(0 39 0 0 0 4) + + POWERLINE_GAP_COLOR=( ${POWERLINE_GAP_COLOR[@]+"${POWERLINE_GAP_COLOR[@]}"} ) + [[ ${#POWERLINE_GAP_COLOR[@]} == 0 ]] && POWERLINE_GAP_COLOR=(0 0 0 0 0 0) POWERLINE_KUBECONTEXT_COLOR=( ${POWERLINE_KUBECONTEXT_COLOR[@]+"${POWERLINE_KUBECONTEXT_COLOR[@]}"} ) - [[ ${#POWERLINE_KUBECONTEXT_COLOR[@]} == 0 ]] && POWERLINE_KUBECONTEXT_COLOR=(231 74 0 0 7 4) + [[ ${#POWERLINE_KUBECONTEXT_COLOR[@]} == 0 ]] && POWERLINE_KUBECONTEXT_COLOR=(0 120 0 0 0 10) + + POWERLINE_LINE_COLOR=( ${POWERLINE_LINE_COLOR[@]+"${POWERLINE_LINE_COLOR[@]}"} ) + [[ ${#POWERLINE_LINE_COLOR[@]} == 0 ]] && POWERLINE_LINE_COLOR=(240 -1 0 0 14 -1) POWERLINE_LOAD_COLOR=( ${POWERLINE_LOAD_COLOR[@]+"${POWERLINE_LOAD_COLOR[@]}"} ) - [[ ${#POWERLINE_LOAD_COLOR[@]} == 0 ]] && POWERLINE_LOAD_COLOR=(-1 148 0 0 -1 3) + [[ ${#POWERLINE_LOAD_COLOR[@]} == 0 ]] && POWERLINE_LOAD_COLOR=(-1 221 0 0 -1 11) POWERLINE_NODE_ENV_COLOR=( ${POWERLINE_NODE_ENV_COLOR[@]+"${POWERLINE_NODE_ENV_COLOR[@]}"} ) - [[ ${#POWERLINE_NODE_ENV_COLOR[@]} == 0 ]] && POWERLINE_NODE_ENV_COLOR=("${POWERLINE_PYTHON_ENV_COLOR[@]}") + [[ ${#POWERLINE_NODE_ENV_COLOR[@]} == 0 ]] && POWERLINE_NODE_ENV_COLOR=(0 84 0 0 0 10) POWERLINE_PROXY_COLOR=( ${POWERLINE_PROXY_COLOR[@]+"${POWERLINE_PROXY_COLOR[@]}"} ) [[ ${#POWERLINE_PROXY_COLOR[@]} == 0 ]] && POWERLINE_PROXY_COLOR=(21 219 1 0 4 7) POWERLINE_RUBY_ENV_COLOR=( ${POWERLINE_RUBY_ENV_COLOR[@]+"${POWERLINE_RUBY_ENV_COLOR[@]}"} ) - [[ ${#POWERLINE_RUBY_ENV_COLOR[@]} == 0 ]] && POWERLINE_RUBY_ENV_COLOR=("${POWERLINE_PYTHON_ENV_COLOR[@]}") + [[ ${#POWERLINE_RUBY_ENV_COLOR[@]} == 0 ]] && POWERLINE_RUBY_ENV_COLOR=(0 122 0 0 0 10) POWERLINE_RUNTIME_COLOR=( ${POWERLINE_RUNTIME_COLOR[@]+"${POWERLINE_RUNTIME_COLOR[@]}"} ) - [[ ${#POWERLINE_RUNTIME_COLOR[@]} == 0 ]] && POWERLINE_RUNTIME_COLOR=(226 17 0 0 3 4) + [[ ${#POWERLINE_RUNTIME_COLOR[@]} == 0 ]] && POWERLINE_RUNTIME_COLOR=(225 93 0 0 3 4) POWERLINE_SHLVL_COLOR=( ${POWERLINE_SHLVL_COLOR[@]+"${POWERLINE_SHLVL_COLOR[@]}"} ) - [[ ${#POWERLINE_SHLVL_COLOR[@]} == 0 ]] && POWERLINE_SHLVL_COLOR=(231 58 0 0 7 2) + [[ ${#POWERLINE_SHLVL_COLOR[@]} == 0 ]] && POWERLINE_SHLVL_COLOR=(0 37 0 0 0 5) POWERLINE_SOFTWARE_COLLECTIONS_COLOR=( ${POWERLINE_SOFTWARE_COLLECTIONS_COLOR[@]+"${POWERLINE_SOFTWARE_COLLECTIONS_COLOR[@]}"} ) - [[ ${#POWERLINE_SOFTWARE_COLLECTIONS_COLOR[@]} == 0 ]] && POWERLINE_SOFTWARE_COLLECTIONS_COLOR=(231 62 0 0 7 5) + [[ ${#POWERLINE_SOFTWARE_COLLECTIONS_COLOR[@]} == 0 ]] && POWERLINE_SOFTWARE_COLLECTIONS_COLOR=(0 50 0 0 0 10) + + POWERLINE_TAG_COLOR=( ${POWERLINE_TAG_COLOR[@]+"${POWERLINE_TAG_COLOR[@]}"} ) + [[ ${#POWERLINE_TAG_COLOR[@]} == 0 ]] && POWERLINE_TAG_COLOR=(27 255 0 0 12 15) POWERLINE_TEMPERATURE_COLOR=( ${POWERLINE_TEMPERATURE_COLOR[@]+"${POWERLINE_TEMPERATURE_COLOR[@]}"} ) - [[ ${#POWERLINE_TEMPERATURE_COLOR[@]} == 0 ]] && POWERLINE_TEMPERATURE_COLOR=(-1 240 0 0 -1 0) + [[ ${#POWERLINE_TEMPERATURE_COLOR[@]} == 0 ]] && POWERLINE_TEMPERATURE_COLOR=(0 225 0 0 0 0) POWERLINE_TERRAFORM_ENV_COLOR=( ${POWERLINE_TERRAFORM_ENV_COLOR[@]+"${POWERLINE_TERRAFORM_ENV_COLOR[@]}"} ) - [[ ${#POWERLINE_TERRAFORM_ENV_COLOR[@]} == 0 ]] && POWERLINE_TERRAFORM_ENV_COLOR=(231 182 0 0 7 4) + [[ ${#POWERLINE_TERRAFORM_ENV_COLOR[@]} == 0 ]] && POWERLINE_TERRAFORM_ENV_COLOR=(0 156 0 0 0 10) POWERLINE_TIME_COLOR=( ${POWERLINE_TIME_COLOR[@]+"${POWERLINE_TIME_COLOR[@]}"} ) - [[ ${#POWERLINE_TIME_COLOR[@]} == 0 ]] && POWERLINE_TIME_COLOR=(33 17 0 0 5 4) + [[ ${#POWERLINE_TIME_COLOR[@]} == 0 ]] && POWERLINE_TIME_COLOR=(255 243 0 0 15 8) POWERLINE_WIFI_STRENGTH_COLOR=( ${POWERLINE_WIFI_STRENGTH_COLOR[@]+"${POWERLINE_WIFI_STRENGTH_COLOR[@]}"} ) [[ ${#POWERLINE_WIFI_STRENGTH_COLOR[@]} == 0 ]] && POWERLINE_WIFI_STRENGTH_COLOR=(-1 148 0 0 -1 3) + + POWERLINE_DISPLAY_COLOR=( ${POWERLINE_DISPLAY_COLOR[@]+"${POWERLINE_DISPLAY_COLOR[@]}"} ) + [[ ${#POWERLINE_DISPLAY_COLOR[@]} == 0 ]] && POWERLINE_DISPLAY_COLOR=(15 63 0 0 15 13) } -_lp_powerline_full_theme_directory() { +_lp_powerline_plus_theme_directory() { _lp_powerline_theme_directory } -_lp_powerline_full_theme_prompt() { +_lp_powerline_plus_theme_prompt() { local powerline_sections first_section _lp_last_af_color _lp_last_ab_color - __powerline_section "$LP_PS1_PREFIX" "${POWERLINE_NEUTRAL_COLOR[@]}" + __powerline_section "$LP_PS1_PREFIX" "${POWERLINE_TAG_COLOR[@]}" local lp_time lp_analog_time if _lp_time; then __powerline_section "$lp_time" "${POWERLINE_TIME_COLOR[@]}" + __powerline_gap elif _lp_analog_time; then __powerline_section "$lp_analog_time" "${POWERLINE_TIME_COLOR[@]}" + __powerline_gap fi __powerline_battery_section @@ -244,22 +259,30 @@ _lp_powerline_full_theme_prompt() { __powerline_formatted_section "$lp_wifi_signal_strength_color" "${POWERLINE_WIFI_STRENGTH_COLOR[@]}" fi + __powerline_gap + local lp_detached_sessions lp_running_jobs lp_stopped_jobs jobs_string= if _lp_detached_sessions; then jobs_string="${lp_detached_sessions}d" fi if _lp_jobcount; then if (( lp_running_jobs > 0 )); then - [[ -n $jobs_string ]] && jobs_string+='/' + [[ -n $jobs_string ]] && jobs_string+="${POWERLINE_SPACER}${POWERLINE_SOFT_DIVIDER}${POWERLINE_SPACER}" jobs_string+="${lp_running_jobs}&" fi if (( lp_stopped_jobs > 0 )); then - [[ -n $jobs_string ]] && jobs_string+='/' + [[ -n $jobs_string ]] && jobs_string+="${POWERLINE_SPACER}${POWERLINE_SOFT_DIVIDER}${POWERLINE_SPACER}" jobs_string+="${lp_stopped_jobs}z" fi fi __powerline_section "$jobs_string" "${POWERLINE_JOBS_COLOR[@]}" + if _lp_connected_display ; then + __powerline_section "X" "${POWERLINE_DISPLAY_COLOR[@]}" + else + __powerline_section "T" "${POWERLINE_DISPLAY_COLOR[@]}" + fi + __powerline_section "$_POWERLINE_USERNAME" "${POWERLINE_USER_COLOR[@]}" __powerline_section "${_POWERLINE_HOST_ICON}${_POWERLINE_HOSTNAME}" "${POWERLINE_HOST_COLOR[@]}" @@ -279,6 +302,8 @@ _lp_powerline_full_theme_prompt() { __powerline_section "${POWERLINE_CHROOT_MARKER}${lp_chroot}" "${POWERLINE_CHROOT_COLOR[@]}" fi + __powerline_gap + local lp_software_collections if _lp_software_collections; then __powerline_section "${POWERLINE_SOFTWARE_COLLECTION_MARKER}${lp_software_collections}" "${POWERLINE_SOFTWARE_COLLECTIONS_COLOR[@]}" @@ -319,6 +344,7 @@ _lp_powerline_full_theme_prompt() { __powerline_section "${POWERLINE_PROXY_MARKER}${lp_http_proxy}" "${POWERLINE_PROXY_COLOR[@]}" fi + __powerline_gap __powerline_vcs_section if _lp_runtime_format; then @@ -370,6 +396,17 @@ __powerline_end_terminator() { powerline_sections+="${section_arrow}${lp_terminal_format}${POWERLINE_SPACER}" } +# One-character separator with (black) background. +# FIXME I did not managed to just get an empty background. +__powerline_gap() { + local section_arrow lp_terminal_format + + __powerline_section_arrow "${POWERLINE_GAP_COLOR[@]}" + lp_terminal_format "${POWERLINE_GAP_COLOR[@]}" + + powerline_sections+="${section_arrow}${lp_terminal_format}" +} + __powerline_section_arrow() { # _, background_color, _, _, _, fallback_background_color if [[ -n ${first_section-} ]]; then local lp_terminal_format @@ -437,4 +474,192 @@ __powerline_vcs_section() { fi } -# vim: ft=sh et sts=4 sw=4 tw=120 +_lp_power2lines_theme_activate() { + _lp_powerline_plus_theme_activate +} + +_lp_power2lines_theme_directory() { + _lp_powerline_plus_theme_directory +} + +_lp_power2lines_theme_prompt() { + local lp_terminal_format + _lp_powerline_plus_theme_prompt + lp_terminal_format "${POWERLINE_LINE_COLOR[@]}" + PS1="${lp_terminal_format}╭╢${NO_COL}$PS1\n${lp_terminal_format}╰╴${NO_COL}" +} + +_lp_powerpuff_theme_activate() { + _lp_powerline_plus_theme_activate +} + +_lp_powerpuff_theme_directory() { + _lp_powerline_plus_theme_directory +} + +__powerpuff_end_terminator() { + local first_section="true" + __powerline_section_arrow -1 + lp_terminal_format -1 + powerline_sections+="${section_arrow}${lp_terminal_format}" +} + +_lp_powerpuff_theme_prompt() { + local powerline_sections first_section _lp_last_af_color _lp_last_ab_color lp_terminal_format + + # First line + lp_terminal_format "${POWERLINE_LINE_COLOR[@]}" + powerline_sections="${lp_terminal_format}╭─" + + if _lp_connected_display ; then + __powerline_section "X" "${POWERLINE_DISPLAY_COLOR[@]}" + else + __powerline_section "T" "${POWERLINE_DISPLAY_COLOR[@]}" + fi + + __powerline_section "$_POWERLINE_USERNAME" "${POWERLINE_USER_COLOR[@]}" + + __powerline_section "${_POWERLINE_HOST_ICON}${_POWERLINE_HOSTNAME}" "${POWERLINE_HOST_COLOR[@]}" + + __powerline_section "$_lp_powerline_path" "${POWERLINE_PATH_COLOR[@]}" + + if _lp_dirstack; then + __powerline_section "${LP_MARK_DIRSTACK}${lp_dirstack}" "${POWERLINE_DIRSTACK_COLOR[@]}" + fi + + if _lp_shell_level; then + __powerline_section "${LP_MARK_SHLVL}${lp_shell_level}" "${POWERLINE_SHLVL_COLOR[@]}" + fi + + local lp_chroot + if _lp_chroot; then + __powerline_section "${POWERLINE_CHROOT_MARKER}${lp_chroot}" "${POWERLINE_CHROOT_COLOR[@]}" + fi + + __powerpuff_end_terminator + + local left_sections="${powerline_sections}" + powerline_sections="" + + local lp_time lp_analog_time + if _lp_time; then + __powerline_section "$lp_time" "${POWERLINE_TIME_COLOR[@]}" + elif _lp_analog_time; then + __powerline_section "$lp_analog_time" "${POWERLINE_TIME_COLOR[@]}" + fi + + __powerline_battery_section + + local lp_load_color + if _lp_load_color; then + __powerline_formatted_section "$lp_load_color" "${POWERLINE_LOAD_COLOR[@]}" + fi + + local lp_temperature_color + if _lp_temperature_color; then + __powerline_formatted_section "$lp_temperature_color" "${POWERLINE_TEMPERATURE_COLOR[@]}" + fi + + local lp_wifi_signal_strength_color + if _lp_wifi_signal_strength_color; then + __powerline_formatted_section "$lp_wifi_signal_strength_color" "${POWERLINE_WIFI_STRENGTH_COLOR[@]}" + fi + + local lp_detached_sessions lp_running_jobs lp_stopped_jobs jobs_string= + if _lp_detached_sessions; then + jobs_string="${lp_detached_sessions}d" + fi + if _lp_jobcount; then + if (( lp_running_jobs > 0 )); then + [[ -n $jobs_string ]] && jobs_string+="${POWERLINE_SPACER}${POWERLINE_SOFT_DIVIDER}${POWERLINE_SPACER}" + jobs_string+="${lp_running_jobs}&" + fi + if (( lp_stopped_jobs > 0 )); then + [[ -n $jobs_string ]] && jobs_string+="${POWERLINE_SPACER}${POWERLINE_SOFT_DIVIDER}${POWERLINE_SPACER}" + jobs_string+="${lp_stopped_jobs}z" + fi + fi + __powerline_section "$jobs_string" "${POWERLINE_JOBS_COLOR[@]}" + __powerpuff_end_terminator + + local right_sections="${powerline_sections}\r" # FIXME spacing problem + + lp_terminal_format "${POWERLINE_LINE_COLOR[@]}" + _lp_fill "$left_sections" "$right_sections" "${lp_terminal_format}─" + first_line="$lp_fill" + + # Second line. + powerline_sections="" + _lp_last_ab_color="${POWERLINE_VCS_CLEAN_COLOR[$((_LP_FIRST_INDEX+1))]}" + lp_terminal_format "${POWERLINE_LINE_COLOR[@]}" + powerline_sections+="${lp_terminal_format}│${NO_COL}${POWERLINE_SPACER}" + __powerline_section "${LP_PS1_PREFIX}" "${POWERLINE_TAG_COLOR[@]}" + + __powerline_vcs_section + + if _lp_runtime_format; then + __powerline_section "${lp_runtime_format}" "${POWERLINE_RUNTIME_COLOR[@]}" + fi + + if _lp_error; then + __powerline_section "${lp_error}" "${POWERLINE_ERROR_COLOR[@]}" + fi + + __powerpuff_end_terminator + + left_sections="${powerline_sections}" + + powerline_sections="" + + local lp_software_collections + if _lp_software_collections; then + __powerline_section "${POWERLINE_SOFTWARE_COLLECTION_MARKER}${lp_software_collections}" "${POWERLINE_SOFTWARE_COLLECTIONS_COLOR[@]}" + fi + + local lp_aws_profile + if _lp_aws_profile; then + __powerline_section "${POWERLINE_AWS_PROFILE_MARKER}${lp_aws_profile}" "${POWERLINE_AWS_PROFILE_COLOR[@]}" + fi + + local lp_python_env + if _lp_python_env; then + __powerline_section "${POWERLINE_PYTHON_ENV_MARKER}${lp_python_env}" "${POWERLINE_PYTHON_ENV_COLOR[@]}" + fi + + local lp_node_env + if _lp_node_env; then + __powerline_section "${POWERLINE_NODE_ENV_MARKER}${lp_node_env}" "${POWERLINE_NODE_ENV_COLOR[@]}" + fi + + local lp_ruby_env + if _lp_ruby_env; then + __powerline_section "${POWERLINE_RUBY_ENV_MARKER}${lp_ruby_env}" "${POWERLINE_RUBY_ENV_COLOR[@]}" + fi + + local lp_kubernetes_context + if _lp_kubernetes_context; then + __powerline_section "${POWERLINE_KUBECONTEXT_MARKER}${lp_kubernetes_context}" "${POWERLINE_KUBECONTEXT_COLOR[@]}" + fi + + local lp_terraform_env + if _lp_terraform_env; then + __powerline_section "${POWERLINE_TERRAFORM_ENV_MARKER}${lp_terraform_env}" "${POWERLINE_TERRAFORM_ENV_COLOR[@]}" + fi + + local lp_http_proxy + if _lp_http_proxy; then + __powerline_section "${POWERLINE_PROXY_MARKER}${lp_http_proxy}" "${POWERLINE_PROXY_COLOR[@]}" + fi + + __powerline_section "$LP_PS1_POSTFIX" "${POWERLINE_NEUTRAL_COLOR[@]}" + [[ -n "$powerline_sections" ]] && __powerpuff_end_terminator + + right_sections="${powerline_sections}" + + _lp_fill "$left_sections" "$right_sections" " " + second_line="$lp_fill" + + # Third line. + lp_terminal_format "${POWERLINE_LINE_COLOR[@]}" + PS1="\n${first_line}\n${second_line}\n${lp_terminal_format}╰╼${NO_COL}${POWERLINE_SPACER}" +} From 871c3d62e99fa481a1a0d9c734fedb305d6d7736 Mon Sep 17 00:00:00 2001 From: nojhan Date: Mon, 30 Oct 2023 21:52:45 +0100 Subject: [PATCH 2/7] feat(plus): support features from LP 2.2 - refactor __powerline_section so as to allow easy chaining of segments having the same color. - adds support of: ram, disk, cmake, env_vars, modules, OS, error_meaning. --- docs/theme/powerline_plus.rst | 45 ++++++++- powerline.theme | 166 +++++++++++++++++++++++++++++++--- 2 files changed, 198 insertions(+), 13 deletions(-) diff --git a/docs/theme/powerline_plus.rst b/docs/theme/powerline_plus.rst index ab06539..1093c27 100644 --- a/docs/theme/powerline_plus.rst +++ b/docs/theme/powerline_plus.rst @@ -44,8 +44,13 @@ All Liquid Prompt config options are respected, **except for**: * :attr:`LP_COLOR_AWS_PROFILE` * :attr:`LP_COLOR_CONTAINER` +* "attr:`LP_COLOR_CMAKE_DEBUG` +* "attr:`LP_COLOR_CMAKE_RELEASE` +* "attr:`LP_COLOR_CMAKE_RWDI` * :attr:`LP_COLOR_DIRSTACK` * :attr:`LP_COLOR_ERR` +* :attr:`LP_COLOR_ENV_VARS_UNSET` +* :attr:`LP_COLOR_ENV_VARS_SET` * :attr:`LP_COLOR_HOST` * :attr:`LP_COLOR_IN_MULTIPLEXER` * :attr:`LP_COLOR_JOB_D` @@ -55,6 +60,7 @@ All Liquid Prompt config options are respected, **except for**: * :attr:`LP_COLOR_MARK_ROOT` * :attr:`LP_COLOR_MARK_SUDO` * :attr:`LP_COLOR_MARK` +* :attr:`LP_COLOR_MODULES` * :attr:`LP_COLOR_NODE_VENV` * :attr:`LP_COLOR_NOWRITE` * :attr:`LP_COLOR_PATH_ROOT` @@ -81,11 +87,16 @@ All Liquid Prompt config options are respected, **except for**: * :attr:`LP_MARK_BRACKET_CLOSE` * :attr:`LP_MARK_BRACKET_OPEN` * :attr:`LP_MARK_BZR` +* :attr:`LP_MARK_CMAKE` * :attr:`LP_MARK_DEFAULT` * :attr:`LP_MARK_DISABLED` * :attr:`LP_MARK_FOSSIL` * :attr:`LP_MARK_GIT` * :attr:`LP_MARK_HG` +* :attr:`LP_MARK_MODULES_OPEN` +* :attr:`LP_MARK_MODULES_SEP` +* :attr:`LP_MARK_MODULES_CLOSE` +* :attr:`LP_MARK_OS_SEP` * :attr:`LP_MARK_PERM` * :attr:`LP_MARK_PREFIX` * :attr:`LP_MARK_PROXY` @@ -95,7 +106,7 @@ All Liquid Prompt config options are respected, **except for**: Theme Configuration ------------------- -Powerline Full uses all the config options of the :doc:`powerline` theme, +Powerline Plus uses all the config options of the :doc:`powerline` theme, **except for**: * :attr:`POWERLINE_STASH_MARKER` @@ -103,7 +114,7 @@ Powerline Full uses all the config options of the :doc:`powerline` theme, * :attr:`POWERLINE_VCS_MARKER` * :attr:`POWERLINE_VCS_STASH_COLOR` -Powerline Full adds these config options: +Powerline Plus adds these config options: Markers _______ @@ -187,6 +198,12 @@ ______ Color for the chroot section. +.. attribute:: POWERLINE_CMAKE_COLOR + :type: array + :value: (0, 123, 0, 0, 0, 10) + + Color for the CMake section. + .. attribute:: POWERLINE_CONTAINER_COLOR :type: array :value: $POWERLINE_NEUTRAL_COLOR @@ -199,6 +216,18 @@ ______ Color for the directory stack section. +.. attribute:: POWERLINE_ENV_VARS_COLOR_SET + :type: array + :value: (0 250 0 0 0 13) + + Color for segment of user-defined environment variables that are set. + +.. attribute:: POWERLINE_ENV_VARS_COLOR_UNSET + :type: array + :value: (7 246 0 0 7 5) + + Color for segment of user-defined environment variables that are unset. + .. attribute:: POWERLINE_KUBECONTEXT_COLOR :type: array :value: (231, 74, 0, 0, 7, 4) @@ -211,6 +240,12 @@ ______ Color for the CPU load section. +.. attribute:: POWERLINE_MODULES_COLOR + :type: array + :value: (0 158 0 0 0 10) + + Color for the Environment Modules section. + .. attribute:: POWERLINE_NEUTRAL_COLOR :type: array :value: (252, 234, 0, 0, 7, 0) @@ -224,6 +259,12 @@ ______ Color for the Node.js environment section. +.. attribute:: POWERLINE_OS_COLOR + :type: array + :value: (0 194 0 0 0 10) + + Color for the Operating System section. + .. attribute:: POWERLINE_PROXY_COLOR :type: array :value: (21, 219, 1, 0, 4, 7) diff --git a/powerline.theme b/powerline.theme index 318754c..e959adb 100644 --- a/powerline.theme +++ b/powerline.theme @@ -26,7 +26,7 @@ _lp_powerline_theme_activate() { [[ ${#POWERLINE_PATH_COLOR[@]} == 0 ]] && POWERLINE_PATH_COLOR=(15 27 0 0 15 12) POWERLINE_PATH_SEPARATOR_COLOR=( ${POWERLINE_PATH_SEPARATOR_COLOR[@]+"${POWERLINE_PATH_SEPARATOR_COLOR[@]}"} ) - [[ ${#POWERLINE_PATH_SEPARATOR_COLOR[@]} == 0 ]] && POWERLINE_PATH_SEPARATOR_COLOR=(12 27 0 0 15 4) + [[ ${#POWERLINE_PATH_SEPARATOR_COLOR[@]} == 0 ]] && POWERLINE_PATH_SEPARATOR_COLOR=(20 27 0 0 15 4) POWERLINE_PATH_LAST_COLOR=( ${POWERLINE_PATH_LAST_COLOR[@]+"${POWERLINE_PATH_LAST_COLOR[@]}"} ) [[ ${#POWERLINE_PATH_LAST_COLOR[@]} == 0 ]] && POWERLINE_PATH_LAST_COLOR=(15 27 1 0 15 4) @@ -143,6 +143,12 @@ _lp_powerline_theme_prompt() { } _lp_powerline_plus_theme_activate() { + + if ! _lp_version_greatereq 2 2 0 ; then + _lp_join "." ${_LP_VERSION[@]} + printf "WARNING: this Powerline theme requires Liquid Prompt >= 2.2.0, but you have version $lp_join, some features will not work and the prompt may crash.\n" + fi + _lp_powerline_theme_activate # Load default markers if not already defined @@ -154,6 +160,7 @@ _lp_powerline_plus_theme_activate() { POWERLINE_RUBY_ENV_MARKER=${POWERLINE_RUBY_ENV_MARKER:-"ruby: "} POWERLINE_SOFTWARE_COLLECTION_MARKER=${POWERLINE_SOFTWARE_COLLECTION_MARKER:-"(sc) "} POWERLINE_TERRAFORM_ENV_MARKER=${POWERLINE_TERRAFORM_ENV_MARKER:-"(tf) "} + POWERLINE_MODULES_MARKER=${POWERLINE_MODULES_MARKER:-"(M) "} # Load default colors if not already defined POWERLINE_NEUTRAL_COLOR=( ${POWERLINE_NEUTRAL_COLOR[@]+"${POWERLINE_NEUTRAL_COLOR[@]}"} ) @@ -163,7 +170,19 @@ _lp_powerline_plus_theme_activate() { [[ ${#POWERLINE_AWS_PROFILE_COLOR[@]} == 0 ]] && POWERLINE_AWS_PROFILE_COLOR=(0 48 0 0 0 10) POWERLINE_BATTERY_COLOR=( ${POWERLINE_BATTERY_COLOR[@]+"${POWERLINE_BATTERY_COLOR[@]}"} ) - [[ ${#POWERLINE_BATTERY_COLOR[@]} == 0 ]] && POWERLINE_BATTERY_COLOR=(-1 214 0 0 -1 3) + [[ ${#POWERLINE_BATTERY_COLOR[@]} == 0 ]] && POWERLINE_BATTERY_COLOR=(-1 208 0 0 -1 3) + + POWERLINE_LOAD_COLOR=( ${POWERLINE_LOAD_COLOR[@]+"${POWERLINE_LOAD_COLOR[@]}"} ) + [[ ${#POWERLINE_LOAD_COLOR[@]} == 0 ]] && POWERLINE_LOAD_COLOR=(-1 214 0 0 -1 11) + + POWERLINE_RAM_COLOR=( ${POWERLINE_RAM_COLOR[@]+"${POWERLINE_RAM_COLOR[@]}"} ) + [[ ${#POWERLINE_RAM_COLOR[@]} == 0 ]] && POWERLINE_RAM_COLOR=(-1 216 0 0 -1 3) + + POWERLINE_DISK_COLOR=( ${POWERLINE_DISK_COLOR[@]+"${POWERLINE_DISK_COLOR[@]}"} ) + [[ ${#POWERLINE_DISK_COLOR[@]} == 0 ]] && POWERLINE_DISK_COLOR=(-1 220 0 0 -1 3) + + POWERLINE_TEMPERATURE_COLOR=( ${POWERLINE_TEMPERATURE_COLOR[@]+"${POWERLINE_TEMPERATURE_COLOR[@]}"} ) + [[ ${#POWERLINE_TEMPERATURE_COLOR[@]} == 0 ]] && POWERLINE_TEMPERATURE_COLOR=(0 222 0 0 0 0) POWERLINE_CHROOT_COLOR=( ${POWERLINE_CHROOT_COLOR[@]+"${POWERLINE_CHROOT_COLOR[@]}"} ) [[ ${#POWERLINE_CHROOT_COLOR[@]} == 0 ]] && POWERLINE_CHROOT_COLOR=(0 35 0 0 0 5) @@ -184,18 +203,30 @@ _lp_powerline_plus_theme_activate() { POWERLINE_LINE_COLOR=( ${POWERLINE_LINE_COLOR[@]+"${POWERLINE_LINE_COLOR[@]}"} ) [[ ${#POWERLINE_LINE_COLOR[@]} == 0 ]] && POWERLINE_LINE_COLOR=(240 -1 0 0 14 -1) - POWERLINE_LOAD_COLOR=( ${POWERLINE_LOAD_COLOR[@]+"${POWERLINE_LOAD_COLOR[@]}"} ) - [[ ${#POWERLINE_LOAD_COLOR[@]} == 0 ]] && POWERLINE_LOAD_COLOR=(-1 221 0 0 -1 11) - POWERLINE_NODE_ENV_COLOR=( ${POWERLINE_NODE_ENV_COLOR[@]+"${POWERLINE_NODE_ENV_COLOR[@]}"} ) [[ ${#POWERLINE_NODE_ENV_COLOR[@]} == 0 ]] && POWERLINE_NODE_ENV_COLOR=(0 84 0 0 0 10) POWERLINE_PROXY_COLOR=( ${POWERLINE_PROXY_COLOR[@]+"${POWERLINE_PROXY_COLOR[@]}"} ) [[ ${#POWERLINE_PROXY_COLOR[@]} == 0 ]] && POWERLINE_PROXY_COLOR=(21 219 1 0 4 7) + POWERLINE_ENV_VARS_COLOR_SET=( ${POWERLINE_ENV_VARS_COLOR_SET[@]+"${POWERLINE_ENV_VARS_COLOR_SET[@]}"} ) + [[ ${#POWERLINE_ENV_VARS_COLOR_SET[@]} == 0 ]] && POWERLINE_ENV_VARS_COLOR_SET=(0 250 0 0 0 13) + + POWERLINE_ENV_VARS_COLOR_UNSET=( ${POWERLINE_ENV_VARS_COLOR_UNSET[@]+"${POWERLINE_ENV_VARS_COLOR_UNSET[@]}"} ) + [[ ${#POWERLINE_ENV_VARS_COLOR_UNSET[@]} == 0 ]] && POWERLINE_ENV_VARS_COLOR_UNSET=(7 246 0 0 7 5) + + # Pre-set for having access to the actual escaped string. + lp_terminal_format ${POWERLINE_ENV_VARS_COLOR_SET[@]} + _POWERLINE_ENV_VARS_SET="$lp_terminal_format" + lp_terminal_format ${POWERLINE_ENV_VARS_COLOR_UNSET[@]} + _POWERLINE_ENV_VARS_UNSET="$lp_terminal_format" + POWERLINE_RUBY_ENV_COLOR=( ${POWERLINE_RUBY_ENV_COLOR[@]+"${POWERLINE_RUBY_ENV_COLOR[@]}"} ) [[ ${#POWERLINE_RUBY_ENV_COLOR[@]} == 0 ]] && POWERLINE_RUBY_ENV_COLOR=(0 122 0 0 0 10) + POWERLINE_CMAKE_COLOR=( ${POWERLINE_CMAKE_COLOR[@]+"${POWERLINE_CMAKE_COLOR[@]}"} ) + [[ ${#POWERLINE_CMAKE_COLOR[@]} == 0 ]] && POWERLINE_CMAKE_COLOR=(0 123 0 0 0 10) + POWERLINE_RUNTIME_COLOR=( ${POWERLINE_RUNTIME_COLOR[@]+"${POWERLINE_RUNTIME_COLOR[@]}"} ) [[ ${#POWERLINE_RUNTIME_COLOR[@]} == 0 ]] && POWERLINE_RUNTIME_COLOR=(225 93 0 0 3 4) @@ -208,12 +239,15 @@ _lp_powerline_plus_theme_activate() { POWERLINE_TAG_COLOR=( ${POWERLINE_TAG_COLOR[@]+"${POWERLINE_TAG_COLOR[@]}"} ) [[ ${#POWERLINE_TAG_COLOR[@]} == 0 ]] && POWERLINE_TAG_COLOR=(27 255 0 0 12 15) - POWERLINE_TEMPERATURE_COLOR=( ${POWERLINE_TEMPERATURE_COLOR[@]+"${POWERLINE_TEMPERATURE_COLOR[@]}"} ) - [[ ${#POWERLINE_TEMPERATURE_COLOR[@]} == 0 ]] && POWERLINE_TEMPERATURE_COLOR=(0 225 0 0 0 0) - POWERLINE_TERRAFORM_ENV_COLOR=( ${POWERLINE_TERRAFORM_ENV_COLOR[@]+"${POWERLINE_TERRAFORM_ENV_COLOR[@]}"} ) [[ ${#POWERLINE_TERRAFORM_ENV_COLOR[@]} == 0 ]] && POWERLINE_TERRAFORM_ENV_COLOR=(0 156 0 0 0 10) + POWERLINE_MODULES_COLOR=( ${POWERLINE_MODULES_COLOR[@]+"${POWERLINE_MODULES_COLOR[@]}"} ) + [[ ${#POWERLINE_MODULES_COLOR[@]} == 0 ]] && POWERLINE_MODULES_COLOR=(0 158 0 0 0 10) + + POWERLINE_OS_COLOR=( ${POWERLINE_OS_COLOR[@]+"${POWERLINE_OS_COLOR[@]}"} ) + [[ ${#POWERLINE_OS_COLOR[@]} == 0 ]] && POWERLINE_OS_COLOR=(0 194 0 0 0 10) + POWERLINE_TIME_COLOR=( ${POWERLINE_TIME_COLOR[@]+"${POWERLINE_TIME_COLOR[@]}"} ) [[ ${#POWERLINE_TIME_COLOR[@]} == 0 ]] && POWERLINE_TIME_COLOR=(255 243 0 0 15 8) @@ -249,6 +283,16 @@ _lp_powerline_plus_theme_prompt() { __powerline_formatted_section "$lp_load_color" "${POWERLINE_LOAD_COLOR[@]}" fi + local lp_ram_color + if _lp_ram_color; then + __powerline_formatted_section "$lp_ram_color" "${POWERLINE_RAM_COLOR[@]}" + fi + + local lp_disk_color + if _lp_disk_color; then + __powerline_formatted_section "$lp_disk_color" "${POWERLINE_DISK_COLOR[@]}" + fi + local lp_temperature_color if _lp_temperature_color; then __powerline_formatted_section "$lp_temperature_color" "${POWERLINE_TEMPERATURE_COLOR[@]}" @@ -329,6 +373,15 @@ _lp_powerline_plus_theme_prompt() { __powerline_section "${POWERLINE_RUBY_ENV_MARKER}${lp_ruby_env}" "${POWERLINE_RUBY_ENV_COLOR[@]}" fi + local lp_cmake_c_compiler lp_cmake_cxx_compiler lp_cmake_generator lp_cmake_build_type + if _lp_cmake; then + local -a cmake + cmake=( $lp_cmake_c_compiler $lp_cmake_cxx_compiler $lp_cmake_generator $lp_cmake_build_type ) + for c in cmake; do + __powerline_section "$c" "${POWERLINE_CMAKE_COLOR[@]}" + done + fi + local lp_kubernetes_context if _lp_kubernetes_context; then __powerline_section "${POWERLINE_KUBECONTEXT_MARKER}${lp_kubernetes_context}" "${POWERLINE_KUBECONTEXT_COLOR[@]}" @@ -339,11 +392,40 @@ _lp_powerline_plus_theme_prompt() { __powerline_section "${POWERLINE_TERRAFORM_ENV_MARKER}${lp_terraform_env}" "${POWERLINE_TERRAFORM_ENV_COLOR[@]}" fi + local lp_modules + if _lp_modules; then + __powerline_section "${POWERLINE_MODULES_MARKER}${lp_modules}" "${POWERLINE_MODULES_COLOR[@]}" + fi + + local lp_os_arch lp_os_family lp_os_kernel lp_os_distrib lp_os_version + if _lp_os; then + local -a os + os=($lp_os_arch $lp_os_family $lp_os_kernel $lp_os_distrib $lp_os_version) + for o in ${os[@]}; do + __powerline_section "${o}" "${POWERLINE_OS_COLOR[@]}" + done + fi + local lp_http_proxy if _lp_http_proxy; then __powerline_section "${POWERLINE_PROXY_MARKER}${lp_http_proxy}" "${POWERLINE_PROXY_COLOR[@]}" fi + local lp_env_vars + # We use actual escaped strings as tags to spot which var is set or unset. + if _lp_env_vars "${_POWERLINE_ENV_VARS_SET}" "${_POWERLINE_ENV_VARS_UNSET}" ""; then + __powerline_gap + for v in ${lp_env_vars[@]}; do + if [[ "$v" == *"${_POWERLINE_ENV_VARS_SET}"* ]]; then # if var is set + __powerline_section "$v" "${POWERLINE_ENV_VARS_COLOR_SET[@]}" + elif [[ "$v" == *"${_POWERLINE_ENV_VARS_UNSET}"* ]]; then # if var is unset + __powerline_section "$v" "${POWERLINE_ENV_VARS_COLOR_UNSET[@]}" + else + printf "liquidprompt ERROR: user-defined environment variable $v is neither set or unset, did you set the same color for both states?\n" + fi + done + fi + __powerline_gap __powerline_vcs_section @@ -353,6 +435,9 @@ _lp_powerline_plus_theme_prompt() { if _lp_error; then __powerline_section "${lp_error}" "${POWERLINE_ERROR_COLOR[@]}" + if _lp_error_meaning; then + __powerline_section "${lp_error_meaning}" "${POWERLINE_ERROR_COLOR[@]}" + fi fi __powerline_section "$LP_PS1_POSTFIX" "${POWERLINE_NEUTRAL_COLOR[@]}" @@ -407,11 +492,19 @@ __powerline_gap() { powerline_sections+="${section_arrow}${lp_terminal_format}" } -__powerline_section_arrow() { # _, background_color, _, _, _, fallback_background_color +__powerline_section_arrow() { # foreground_color, background_color, _, _, _, fallback_background_color if [[ -n ${first_section-} ]]; then local lp_terminal_format - lp_terminal_format -3 "${2-}" 0 0 -1 "${6-}" - section_arrow="${lp_terminal_format}${POWERLINE_HARD_DIVIDER}" + # Test if the color is the same than previous one. + if [[ "${_lp_last_ab_color}" -eq "${2}" ]]; then + # Insert a soft sep using the fg color. + lp_terminal_format "${1-}" "${2-}" 0 0 -1 "${6-}" + section_arrow="${lp_terminal_format}${POWERLINE_SOFT_DIVIDER}" + else + # Insert a hard sep. + lp_terminal_format -3 "${2-}" 0 0 -1 "${6-}" + section_arrow="${lp_terminal_format}${POWERLINE_HARD_DIVIDER}" + fi else first_section="true" section_arrow= @@ -555,6 +648,16 @@ _lp_powerpuff_theme_prompt() { __powerline_formatted_section "$lp_load_color" "${POWERLINE_LOAD_COLOR[@]}" fi + local lp_ram_color + if _lp_ram_color; then + __powerline_formatted_section "$lp_ram_color" "${POWERLINE_RAM_COLOR[@]}" + fi + + local lp_disk_color + if _lp_disk_color; then + __powerline_formatted_section "$lp_disk_color" "${POWERLINE_DISK_COLOR[@]}" + fi + local lp_temperature_color if _lp_temperature_color; then __powerline_formatted_section "$lp_temperature_color" "${POWERLINE_TEMPERATURE_COLOR[@]}" @@ -603,6 +706,9 @@ _lp_powerpuff_theme_prompt() { if _lp_error; then __powerline_section "${lp_error}" "${POWERLINE_ERROR_COLOR[@]}" + if _lp_error_meaning; then + __powerline_section "${lp_error_meaning}" "${POWERLINE_ERROR_COLOR[@]}" + fi fi __powerpuff_end_terminator @@ -636,6 +742,15 @@ _lp_powerpuff_theme_prompt() { __powerline_section "${POWERLINE_RUBY_ENV_MARKER}${lp_ruby_env}" "${POWERLINE_RUBY_ENV_COLOR[@]}" fi + local lp_cmake_c_compiler lp_cmake_cxx_compiler lp_cmake_generator lp_cmake_build_type + if _lp_cmake; then + local -a cmake + cmake=( $lp_cmake_c_compiler $lp_cmake_cxx_compiler $lp_cmake_generator $lp_cmake_build_type ) + for c in cmake; do + __powerline_section "$c" "${POWERLINE_CMAKE_COLOR[@]}" + done + fi + local lp_kubernetes_context if _lp_kubernetes_context; then __powerline_section "${POWERLINE_KUBECONTEXT_MARKER}${lp_kubernetes_context}" "${POWERLINE_KUBECONTEXT_COLOR[@]}" @@ -646,11 +761,40 @@ _lp_powerpuff_theme_prompt() { __powerline_section "${POWERLINE_TERRAFORM_ENV_MARKER}${lp_terraform_env}" "${POWERLINE_TERRAFORM_ENV_COLOR[@]}" fi + local lp_modules + if _lp_modules; then + __powerline_section "${POWERLINE_MODULES_MARKER}${lp_modules}" "${POWERLINE_MODULES_COLOR[@]}" + fi + + local lp_os_arch lp_os_family lp_os_kernel lp_os_distrib lp_os_version + if _lp_os; then + local -a os + os=($lp_os_arch $lp_os_family $lp_os_kernel $lp_os_distrib $lp_os_version) + for o in ${os[@]}; do + __powerline_section "${o}" "${POWERLINE_OS_COLOR[@]}" + done + fi + local lp_http_proxy if _lp_http_proxy; then __powerline_section "${POWERLINE_PROXY_MARKER}${lp_http_proxy}" "${POWERLINE_PROXY_COLOR[@]}" fi + local lp_env_vars + # We use actual escaped strings as tags to spot which var is set or unset. + if _lp_env_vars "${_POWERLINE_ENV_VARS_SET}" "${_POWERLINE_ENV_VARS_UNSET}" " "; then + __powerline_gap + for v in ${lp_env_vars[@]}; do + if [[ "$v" == *"${_POWERLINE_ENV_VARS_SET}"* ]]; then # if var is set + __powerline_section "$v" "${POWERLINE_ENV_VARS_COLOR_SET[@]}" + elif [[ "$v" == *"${_POWERLINE_ENV_VARS_UNSET}"* ]]; then # if var is unset + __powerline_section "$v" "${POWERLINE_ENV_VARS_COLOR_UNSET[@]}" + else + printf "liquidprompt ERROR: user-defined environment variable $v is neither set or unset, did you set the same color for both states?\n" + fi + done + fi + __powerline_section "$LP_PS1_POSTFIX" "${POWERLINE_NEUTRAL_COLOR[@]}" [[ -n "$powerline_sections" ]] && __powerpuff_end_terminator From 5b08ed9a6a5b898e966621dadcc652dcc87c8024 Mon Sep 17 00:00:00 2001 From: nojhan Date: Sun, 3 Dec 2023 11:47:50 +0100 Subject: [PATCH 3/7] fix(doc): doc links, spelling, typo --- docs/spelling_wordlist.txt | 2 ++ docs/theme/power2lines.rst | 8 +++----- docs/theme/powerline.rst | 16 +--------------- docs/theme/powerline_plus.rst | 9 +++------ docs/theme/powerpuff.rst | 9 +++------ 5 files changed, 12 insertions(+), 32 deletions(-) diff --git a/docs/spelling_wordlist.txt b/docs/spelling_wordlist.txt index 29ec21e..57f6022 100644 --- a/docs/spelling_wordlist.txt +++ b/docs/spelling_wordlist.txt @@ -1,3 +1,4 @@ +CMake GitHub Kubernetes Powerline @@ -6,6 +7,7 @@ chroot config hostname js +Powerpuff runtime username workspace diff --git a/docs/theme/power2lines.rst b/docs/theme/power2lines.rst index b1e3690..88cdf5e 100644 --- a/docs/theme/power2lines.rst +++ b/docs/theme/power2lines.rst @@ -1,9 +1,7 @@ -.. _power2lines: - Power2lines *********** -This ``power2line`` theme rearranges the sections of :ref:`Powerline Plus `, but on two rows instead of one. +This ``power2line`` theme rearranges the sections of :doc:`powerline_plus`, but on two rows instead of one. That is, the data sections are displayed on a first row, and the interactive prompt forms a second row. This gives room for long command lines, and let the user find the prompt always at the same location. @@ -28,7 +26,7 @@ When Liquid Prompt is displaying nearly everything, it may look like this: Setup & Configuration ===================== -This theme as the same core configuration than the :ref:`Powerline Plus ` theme. +This theme as the same core configuration than the :doc:`powerline_plus` theme. Theme Configuration ------------------- @@ -38,7 +36,7 @@ ______ .. attribute:: POWERLINE_LINE_COLOR :type: array - :value: FIXME + :value: (240 -1 0 0 14 -1) Color of the decorative lines. diff --git a/docs/theme/powerline.rst b/docs/theme/powerline.rst index 477d8ce..1e7d9d6 100644 --- a/docs/theme/powerline.rst +++ b/docs/theme/powerline.rst @@ -1,6 +1,3 @@ - -.. _powerline: - Powerline ********* @@ -41,18 +38,7 @@ When Liquid Prompt is displaying nearly everything, it may look like this: The above "everything" image looks like it is missing some parts because this theme does not implement all data sources of Liquid Prompt. This is by design to clone basic Powerline. For a Powerline theme that does show all data - sources, see :ref:`Powerline Plus ` below. - -Setup -===== - -By default, the dividers and markers used are the Powerline private characters. -You will either need a compatible font, or to configure the dividers and markers -to use other characters. - -See the `Powerline Fonts installation docs`_ for help. - -.. _`Powerline fonts installation docs`: https://powerline.readthedocs.io/en/latest/installation.html#fonts-installation + sources, see :doc:`powerline_plus`. Configuration ============= diff --git a/docs/theme/powerline_plus.rst b/docs/theme/powerline_plus.rst index 1093c27..5013cea 100644 --- a/docs/theme/powerline_plus.rst +++ b/docs/theme/powerline_plus.rst @@ -1,6 +1,3 @@ - -.. _powerline_plus: - Powerline Plus ************** @@ -44,9 +41,9 @@ All Liquid Prompt config options are respected, **except for**: * :attr:`LP_COLOR_AWS_PROFILE` * :attr:`LP_COLOR_CONTAINER` -* "attr:`LP_COLOR_CMAKE_DEBUG` -* "attr:`LP_COLOR_CMAKE_RELEASE` -* "attr:`LP_COLOR_CMAKE_RWDI` +* :attr:`LP_COLOR_CMAKE_DEBUG` +* :attr:`LP_COLOR_CMAKE_RELEASE` +* :attr:`LP_COLOR_CMAKE_RWDI` * :attr:`LP_COLOR_DIRSTACK` * :attr:`LP_COLOR_ERR` * :attr:`LP_COLOR_ENV_VARS_UNSET` diff --git a/docs/theme/powerpuff.rst b/docs/theme/powerpuff.rst index 2d29170..3aa4313 100644 --- a/docs/theme/powerpuff.rst +++ b/docs/theme/powerpuff.rst @@ -1,12 +1,9 @@ - -.. _powerpuff: - Powerpuff ********* -This ``powerpuff`` theme go even further in rearranging the sections of the :ref:`Powerline Plus ` theme: + This ``powerpuff`` theme go even further in rearranging the sections of the :doc:`powerline_plus` theme: -- Data sections are spraid on two rows, +- Data sections are spread on two rows, - each of which has a left-aligned and a right-aligned section. - A third row hosts the actual interactive prompt. - A horizontal line link the left and right sections of the first line. @@ -37,5 +34,5 @@ When Liquid Prompt is displaying nearly everything, it may look like this: Setup & Configuration ===================== -This theme as the same core configuration than the :ref:`Power2lines ` theme. +This theme as the same core configuration than the :doc:`power2lines` theme. From c20045ebb9a78ea5e95856f204e0aa4ceaef4baf Mon Sep 17 00:00:00 2001 From: nojhan Date: Sun, 3 Dec 2023 11:52:18 +0100 Subject: [PATCH 4/7] fix: default and update _lp_fill --- powerline.theme | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/powerline.theme b/powerline.theme index e959adb..eed2f42 100644 --- a/powerline.theme +++ b/powerline.theme @@ -496,7 +496,7 @@ __powerline_section_arrow() { # foreground_color, background_color, _, _, _, fa if [[ -n ${first_section-} ]]; then local lp_terminal_format # Test if the color is the same than previous one. - if [[ "${_lp_last_ab_color}" -eq "${2}" ]]; then + if [[ "${_lp_last_ab_color}" -eq "${2-}" ]]; then # Insert a soft sep using the fg color. lp_terminal_format "${1-}" "${2-}" 0 0 -1 "${6-}" section_arrow="${lp_terminal_format}${POWERLINE_SOFT_DIVIDER}" @@ -688,7 +688,7 @@ _lp_powerpuff_theme_prompt() { local right_sections="${powerline_sections}\r" # FIXME spacing problem lp_terminal_format "${POWERLINE_LINE_COLOR[@]}" - _lp_fill "$left_sections" "$right_sections" "${lp_terminal_format}─" + _lp_fill "${left_sections}${lp_terminal_format}" "${NO_COL}${right_sections}" "─" 0 first_line="$lp_fill" # Second line. From af196368957148a1a59636d29201036944f918ee Mon Sep 17 00:00:00 2001 From: nojhan Date: Mon, 4 Dec 2023 17:33:29 +0100 Subject: [PATCH 5/7] review fixes --- docs/spelling_wordlist.txt | 10 +++++----- docs/theme/power2lines.rst | 9 ++++++--- docs/theme/powerline.rst | 3 +++ docs/theme/powerpuff.rst | 10 ++++++---- powerline.theme | 11 ++++++++--- 5 files changed, 28 insertions(+), 15 deletions(-) diff --git a/docs/spelling_wordlist.txt b/docs/spelling_wordlist.txt index 57f6022..b2d8b14 100644 --- a/docs/spelling_wordlist.txt +++ b/docs/spelling_wordlist.txt @@ -1,13 +1,13 @@ -CMake -GitHub -Kubernetes -Powerline -Terraform chroot config +CMake +GitHub hostname js +Kubernetes Powerpuff +Powerline runtime +Terraform username workspace diff --git a/docs/theme/power2lines.rst b/docs/theme/power2lines.rst index 88cdf5e..6ea1188 100644 --- a/docs/theme/power2lines.rst +++ b/docs/theme/power2lines.rst @@ -1,9 +1,12 @@ Power2lines *********** -This ``power2line`` theme rearranges the sections of :doc:`powerline_plus`, but on two rows instead of one. -That is, the data sections are displayed on a first row, and the interactive prompt forms a second row. -This gives room for long command lines, and let the user find the prompt always at the same location. +This ``power2line`` theme rearranges the sections of :doc:`powerline_plus`, +but on two rows instead of one. +That is, the data sections are displayed on a first row, and the interactive +prompt forms a second row. +This gives room for long command lines, and let the user find the prompt always +at the same location. Preview diff --git a/docs/theme/powerline.rst b/docs/theme/powerline.rst index 1e7d9d6..0d058a4 100644 --- a/docs/theme/powerline.rst +++ b/docs/theme/powerline.rst @@ -1,6 +1,9 @@ Powerline ********* +.. contents:: + :local: + The ``powerline`` theme is a clone of the `Powerline prompt`_. It copies the `default segments`_ of the Powerline prompt for Shell. diff --git a/docs/theme/powerpuff.rst b/docs/theme/powerpuff.rst index 3aa4313..6751b32 100644 --- a/docs/theme/powerpuff.rst +++ b/docs/theme/powerpuff.rst @@ -1,7 +1,8 @@ Powerpuff ********* - This ``powerpuff`` theme go even further in rearranging the sections of the :doc:`powerline_plus` theme: +This ``powerpuff`` theme go even further in rearranging the sections of the +:doc:`powerline_plus` theme: - Data sections are spread on two rows, - each of which has a left-aligned and a right-aligned section. @@ -9,9 +10,10 @@ Powerpuff - A horizontal line link the left and right sections of the first line. - A new line is drawn before the first row. -The meta-sections are thus less prone to move around when more data is displayed, -and the user will find it easier to spot new information. -The horizontal line and the new line gap also helps in parsing screens with a lot of history. +The meta-sections are thus less prone to move around when more data is +displayed, and the user will find it easier to spot new information. +The horizontal line and the new line gap also helps in parsing screens with a +lot of history. Preview diff --git a/powerline.theme b/powerline.theme index eed2f42..d3dec85 100644 --- a/powerline.theme +++ b/powerline.theme @@ -579,7 +579,9 @@ _lp_power2lines_theme_prompt() { local lp_terminal_format _lp_powerline_plus_theme_prompt lp_terminal_format "${POWERLINE_LINE_COLOR[@]}" - PS1="${lp_terminal_format}╭╢${NO_COL}$PS1\n${lp_terminal_format}╰╴${NO_COL}" + local n + n=$'\n' + PS1="${lp_terminal_format}╭╢${NO_COL}$PS1${n}${lp_terminal_format}╰╴${NO_COL}" } _lp_powerpuff_theme_activate() { @@ -685,7 +687,8 @@ _lp_powerpuff_theme_prompt() { __powerline_section "$jobs_string" "${POWERLINE_JOBS_COLOR[@]}" __powerpuff_end_terminator - local right_sections="${powerline_sections}\r" # FIXME spacing problem + # local right_sections="${powerline_sections}\r" # FIXME spacing problem + local right_sections="${powerline_sections}" # FIXME spacing problem lp_terminal_format "${POWERLINE_LINE_COLOR[@]}" _lp_fill "${left_sections}${lp_terminal_format}" "${NO_COL}${right_sections}" "─" 0 @@ -805,5 +808,7 @@ _lp_powerpuff_theme_prompt() { # Third line. lp_terminal_format "${POWERLINE_LINE_COLOR[@]}" - PS1="\n${first_line}\n${second_line}\n${lp_terminal_format}╰╼${NO_COL}${POWERLINE_SPACER}" + local n + n=$'\n' + PS1="${n}${first_line}${n}${second_line}${n}${lp_terminal_format}╰╼${NO_COL}${POWERLINE_SPACER}" } From 6072df5d4cd5d66a07e4b0d387262bd5d229c263 Mon Sep 17 00:00:00 2001 From: nojhan Date: Mon, 4 Dec 2023 17:49:01 +0100 Subject: [PATCH 6/7] feat(preset): legacy.conf Bring back the former colors as a preset. --- contrib/presets/colors/legacy.conf | 34 ++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 contrib/presets/colors/legacy.conf diff --git a/contrib/presets/colors/legacy.conf b/contrib/presets/colors/legacy.conf new file mode 100644 index 0000000..3804a2d --- /dev/null +++ b/contrib/presets/colors/legacy.conf @@ -0,0 +1,34 @@ +POWERLINE_HOST_COLOR=(220 166 0 0 3 2) +POWERLINE_USER_COLOR=(231 31 1 0 7 6) +POWERLINE_PYTHON_ENV_COLOR=(231 74 0 0 7 4) +POWERLINE_PATH_COLOR=(250 240 0 0 7 0) +POWERLINE_PATH_SEPARATOR_COLOR=(245 240 0 0 7 0) +POWERLINE_PATH_LAST_COLOR=(252 240 1 0 7 0) +POWERLINE_PATH_VCS_COLOR=(147 240 1 0 4 0) +POWERLINE_PATH_SHORTENED_COLOR=(245 240 0 0 7 0) +POWERLINE_JOBS_COLOR=(220 166 0 0 3 2) +POWERLINE_VCS_CLEAN_COLOR=(250 236 0 0 7 0) +POWERLINE_VCS_DIRTY_COLOR=(220 236 0 0 3 0) +POWERLINE_VCS_STASH_COLOR=(220 236 0 0 3 0) +POWERLINE_ERROR_COLOR=(231 52 0 0 7 1) + +POWERLINE_NEUTRAL_COLOR=(252 234 0 0 7 0) +POWERLINE_AWS_PROFILE_COLOR=(190 236 0 0 3 0) +POWERLINE_BATTERY_COLOR=(-1 238 0 0 -1 0) +POWERLINE_CHROOT_COLOR=(219 30 0 0 7 4) +POWERLINE_CONTAINER_COLOR=("${POWERLINE_NEUTRAL_COLOR[@]}") +POWERLINE_DIRSTACK_COLOR=("${POWERLINE_NEUTRAL_COLOR[@]}") +POWERLINE_KUBECONTEXT_COLOR=(231 74 0 0 7 4) +POWERLINE_LOAD_COLOR=(-1 148 0 0 -1 3) +POWERLINE_NODE_ENV_COLOR=("${POWERLINE_PYTHON_ENV_COLOR[@]}") +POWERLINE_PROXY_COLOR=(21 219 1 0 4 7) +POWERLINE_RUBY_ENV_COLOR=("${POWERLINE_PYTHON_ENV_COLOR[@]}") +POWERLINE_RUNTIME_COLOR=(226 17 0 0 3 4) +POWERLINE_SHLVL_COLOR=(231 58 0 0 7 2) +POWERLINE_SOFTWARE_COLLECTIONS_COLOR=(231 62 0 0 7 5) +POWERLINE_TEMPERATURE_COLOR=(-1 240 0 0 -1 0) +POWERLINE_TERRAFORM_ENV_COLOR=(231 182 0 0 7 4) +POWERLINE_TIME_COLOR=(33 17 0 0 5 4) +POWERLINE_WIFI_STRENGTH_COLOR=(-1 148 0 0 -1 3) + +# vim: ft=sh et sts=4 sw=4 tw=120 From d8944fcf7011c5faddeef94cfb26766e378363ee Mon Sep 17 00:00:00 2001 From: nojhan Date: Mon, 4 Dec 2023 18:12:19 +0100 Subject: [PATCH 7/7] feat(preset): contrast.conf --- contrib/presets/colors/contrast.conf | 52 ++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 contrib/presets/colors/contrast.conf diff --git a/contrib/presets/colors/contrast.conf b/contrib/presets/colors/contrast.conf new file mode 100644 index 0000000..4578f7b --- /dev/null +++ b/contrib/presets/colors/contrast.conf @@ -0,0 +1,52 @@ + +POWERLINE_HOST_COLOR=(15 5) +POWERLINE_USER_COLOR=(15 5) +POWERLINE_PYTHON_ENV_COLOR=(0 3) +POWERLINE_PATH_COLOR=(15 4) +POWERLINE_PATH_SEPARATOR_COLOR=(0 4) +POWERLINE_PATH_LAST_COLOR=(15 4 1) +POWERLINE_PATH_VCS_COLOR=(15 4 1 1) +POWERLINE_PATH_SHORTENED_COLOR=(0 4) +POWERLINE_JOBS_COLOR=(15 4) +POWERLINE_VCS_CLEAN_COLOR=(7 0) +POWERLINE_VCS_DIRTY_COLOR=(3 0) +POWERLINE_VCS_STASH_COLOR=(3 0) +POWERLINE_ERROR_COLOR=(0 9) + +POWERLINE_NEUTRAL_COLOR=(7 0) +POWERLINE_AWS_PROFILE_COLOR=(0 10) +POWERLINE_BATTERY_COLOR=(-1 3) +POWERLINE_LOAD_COLOR=(-1 11) +POWERLINE_RAM_COLOR=(-1 3) +POWERLINE_DISK_COLOR=(-1 3) +POWERLINE_TEMPERATURE_COLOR=(0 1) +POWERLINE_CHROOT_COLOR=(0 5) + +POWERLINE_DIRSTACK_COLOR=(15 4) +POWERLINE_GAP_COLOR=(0 0) +POWERLINE_KUBECONTEXT_COLOR=(0 10) +POWERLINE_LINE_COLOR=(14 -1) +POWERLINE_NODE_ENV_COLOR=(0 10) +POWERLINE_PROXY_COLOR=(4 7) +POWERLINE_ENV_VARS_COLOR_SET=(0 5) +POWERLINE_ENV_VARS_COLOR_UNSET=(13 7) + +# Pre-set for having access to the actual escaped string. +lp_terminal_format ${POWERLINE_ENV_VARS_COLOR_SET[@]} +POWERLINE_ENV_VARS_SET="$lp_terminal_format" +lp_terminal_format ${POWERLINE_ENV_VARS_COLOR_UNSET[@]} +POWERLINE_ENV_VARS_UNSET="$lp_terminal_format" + +POWERLINE_RUBY_ENV_COLOR=(0 10) +POWERLINE_CMAKE_COLOR=(0 10) +POWERLINE_RUNTIME_COLOR=(15 4) +POWERLINE_SHLVL_COLOR=(15 5) +POWERLINE_SOFTWARE_COLLECTIONS_COLOR=(0 10) +POWERLINE_TAG_COLOR=(12 15) +POWERLINE_TERRAFORM_ENV_COLOR=(0 10) +POWERLINE_MODULES_COLOR=(0 10) +POWERLINE_OS_COLOR=(0 10) +POWERLINE_TIME_COLOR=(0 7) +POWERLINE_WIFI_STRENGTH_COLOR=(-1 3) +POWERLINE_DISPLAY_COLOR=(0 13) +