From 0b2a01cec625372fa676156bb71ec0b5bb5cbd8b Mon Sep 17 00:00:00 2001 From: yumoqing Date: Thu, 13 Jan 2022 16:18:03 +0800 Subject: [PATCH] bugfix --- kivyblocks/.uitype.py.swp | Bin 0 -> 28672 bytes .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 418 bytes .../bgcolorbehavior.cpython-39.pyc | Bin 0 -> 2281 bytes .../__pycache__/blocksapp.cpython-39.pyc | Bin 0 -> 7671 bytes .../color_definitions.cpython-39.pyc | Bin 0 -> 6392 bytes .../__pycache__/colorcalc.cpython-39.pyc | Bin 0 -> 1531 bytes .../__pycache__/kivysize.cpython-39.pyc | Bin 0 -> 2210 bytes kivyblocks/__pycache__/login.cpython-39.pyc | Bin 0 -> 2262 bytes .../__pycache__/pagescontainer.cpython-39.pyc | Bin 0 -> 4044 bytes kivyblocks/__pycache__/ready.cpython-39.pyc | Bin 0 -> 3551 bytes .../__pycache__/threadcall.cpython-39.pyc | Bin 0 -> 6120 bytes kivyblocks/__pycache__/uitype.cpython-39.pyc | Bin 0 -> 4111 bytes kivyblocks/__pycache__/utils.cpython-39.pyc | Bin 0 -> 6909 bytes kivyblocks/blocksapp.py | 2 +- kivyblocks/imgs/crud_add.png | Bin 0 -> 15639 bytes kivyblocks/imgs/crud_browser.png | Bin 0 -> 25540 bytes kivyblocks/imgs/crud_del.png | Bin 0 -> 19625 bytes kivyblocks/imgs/crud_edit.png | Bin 0 -> 26381 bytes kivyblocks/imgs/crud_filter.png | Bin 0 -> 18923 bytes kivyblocks/uitype.py | 177 ++++++++++++++---- 20 files changed, 141 insertions(+), 38 deletions(-) create mode 100644 kivyblocks/.uitype.py.swp create mode 100644 kivyblocks/__pycache__/__init__.cpython-39.pyc create mode 100644 kivyblocks/__pycache__/bgcolorbehavior.cpython-39.pyc create mode 100644 kivyblocks/__pycache__/blocksapp.cpython-39.pyc create mode 100644 kivyblocks/__pycache__/color_definitions.cpython-39.pyc create mode 100644 kivyblocks/__pycache__/colorcalc.cpython-39.pyc create mode 100644 kivyblocks/__pycache__/kivysize.cpython-39.pyc create mode 100644 kivyblocks/__pycache__/login.cpython-39.pyc create mode 100644 kivyblocks/__pycache__/pagescontainer.cpython-39.pyc create mode 100644 kivyblocks/__pycache__/ready.cpython-39.pyc create mode 100644 kivyblocks/__pycache__/threadcall.cpython-39.pyc create mode 100644 kivyblocks/__pycache__/uitype.cpython-39.pyc create mode 100644 kivyblocks/__pycache__/utils.cpython-39.pyc create mode 100644 kivyblocks/imgs/crud_add.png create mode 100644 kivyblocks/imgs/crud_browser.png create mode 100644 kivyblocks/imgs/crud_del.png create mode 100644 kivyblocks/imgs/crud_edit.png create mode 100644 kivyblocks/imgs/crud_filter.png diff --git a/kivyblocks/.uitype.py.swp b/kivyblocks/.uitype.py.swp new file mode 100644 index 0000000000000000000000000000000000000000..3a6fdb97a93985eada3512da188c972daa937f2a GIT binary patch literal 28672 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 B4Ql`Z literal 0 HcmV?d00001 diff --git a/kivyblocks/__pycache__/__init__.cpython-39.pyc b/kivyblocks/__pycache__/__init__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..7c585c6a1065247433f059126f4ec4f3d6691663 GIT binary patch literal 418 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 USXud4t+rI(ySR6`AqTzjUmtF=C;$Ke literal 0 HcmV?d00001 diff --git a/kivyblocks/__pycache__/colorcalc.cpython-39.pyc b/kivyblocks/__pycache__/colorcalc.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..28a55cb1091f098aa293101dcc87574f63fc16dd GIT binary patch literal 1531 zcmZWp&2HQ_5ay7gq+PF_AWiFyo1$qBL4>3RoMREBEs{e|d&$j6u~0q+?cG*7v8GP6in*a<*qk_vjC_N* zoWOt7Xz3rp@c3^r~sC<*dA#m9>xa<+7{|Lee3e--KmA{?49!^K5zg z?6_K;e*Jv5D2|&TZ^W>)$Y;g=^3;#o#rM|cr;jDGe#55vU!(R`4$`Mg$?j z49QstoLoprI0C1Z&Lq-9ayQ^%I_6a68~M(of(P`%vkQ1OyJYZzzV~&!Gjf2aQ%(V* zXkrfFFT7eVUU`*2Z+z68*fxuN9FjiR@CTk=dols6o^0U^pPH)2 z`3kh=8i)W2DeckTzf$h~6Di>F8LS@^n?d6c0v^9YI6}^EfrHyfDDh3$?;Fgw;_?Mz86K`0Fevi1`YKkRMOqHaG9a;tZR z81G<>M#f`HniS2vMyZ8;u^>P|X+go--ZB`vuqRD8cnokqmz z4S@VK#!==uKhjA#% z!G=GuU%}_)vhm7PbIUk-T6zT}JpF9H;GLY+`|DwELA{5$saA|C?NEeoM7J=*Yr$)> z)DQXT*?-wqvnD)Ob_e!QhR{W!r~$=r=%pWpU-p;r;e26U&dNvJkqy5>Bb~}LNeAgp Gs{aGWYbgi- literal 0 HcmV?d00001 diff --git a/kivyblocks/__pycache__/kivysize.cpython-39.pyc b/kivyblocks/__pycache__/kivysize.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b4f5aa9f5cc6866978b99cf8091a0de87a48cbb6 GIT binary patch literal 2210 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 BP;dYM literal 0 HcmV?d00001 diff --git a/kivyblocks/__pycache__/threadcall.cpython-39.pyc b/kivyblocks/__pycache__/threadcall.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d66717a914c6d968fae17c83a411a61a6fa3f673 GIT binary patch literal 6120 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 literal 0 HcmV?d00001 diff --git a/kivyblocks/imgs/crud_browser.png b/kivyblocks/imgs/crud_browser.png new file mode 100644 index 0000000000000000000000000000000000000000..7ef9ee3263990325fae1f63819037a5acfe3cf5e GIT binary patch literal 25540 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 F{y%qkaTWjo literal 0 HcmV?d00001 diff --git a/kivyblocks/imgs/crud_del.png b/kivyblocks/imgs/crud_del.png new file mode 100644 index 0000000000000000000000000000000000000000..d4de5139461edcb07c79ef1c6841533640ee0d55 GIT binary patch literal 19625 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 literal 0 HcmV?d00001 diff --git a/kivyblocks/imgs/crud_edit.png b/kivyblocks/imgs/crud_edit.png new file mode 100644 index 0000000000000000000000000000000000000000..70c0bae5b76a734fba66c9990947c1abfd5cd2fa GIT binary patch literal 26381 zcmYgYc{r5q_kU)nNX4Lt3S-MsNF}nRv4;#JT4Y~_*0Ds3HET(-3|WS(qikW2 zXk-_m$ex{<-~H(QUf1uh-s`=(=Q;O%pYu7N^Eu}({Hng@!Tmh@AqYCCt%bot5EA?+ z5@Om5{`l+HvkCq{cwsfwpn{HLzafYp(#Bje_Otqv%3Nxx9!FbKUb_UTKTP~-@-0}6 zht0U(r;a8#i(%QddWyj$#md4nNg)z+QcYV!N&8#%5T$NAuWKna@?E znMaI_GHQHKkDq9#s zm{A(T^M1^VkAE1-w!p~t3>tNGqzOaYr#qKtEQlr+znH=d1)thO{I9c-b-IYrjhJ;= zubv|Yn}?BV{7hk4lptkvS~iJh$)=7%A(`2h3x|>SQ3M4@(!AKdM6uKQH~mV;@2&22&t1Fs3)WHat;^eP z>7a;s-uj^ zHvM_}dQBnFs@iYSh-!W_Rj)*HfD_tI*At!}rgzgmbP>g3m$9hKj3T|T1$y9S#C0+Vto0g-Ec++|jRZSfp5N_UmX$YiFUW^$x4 zK-<4+x8|w>@`z=X9;!s4?87G@!Y@h4FYx)@hEmw^Mp2B3{x|I?amcLeNNWEb$WJ}q z;iB|%G{m+&Bt;W8qy%}#JD5Ic9cF#F7jl`UqsLY!LX6+MgcoOUBR%<4Wv=(Wna2NS zsJmnyU-L4lxiweW-()mbv9qvXIsVJTJrH^++Z5+;DzOIzJ36OcXp(_+(=n^NsfN8C zg(7aIdM3V1A^^M@de0U~UNXlxvOALIlMQoRuBPD>Ad4~(p@dpxe^bXjL@n*zl|LA3b4gZa zesL&qRgBc$&`v~MJTs~00LtL1PHM{2sb=$oN1zn1^c#-&c8x>3ODvgFh@@e1L3`W~ z7wQxgs@qn;n|lIn)kYC@CX$cqlw3*Whi_5YQ90+zI93uZ`vmx)ZsWw#T9GAf4Avru0yEm?`YN(*y@8|u4Ba3bntT5*Lh+}k3r|T&G>7=SxTu1 zjjn+i5Pvq!&I-FI0&WGx*woaNb}?}Ek2U8jOJ6-S&ZL31!+bk1hPv5Zw0Z0#^f`xa zmS7ab3=W79fvGkYBUzyOy?aZkWvH&6n$B}8T+3U6n}?uO{V8w%H0yJ@kz&Ct2m$E; zV6#dbR^@n2$K#pr@@txo!$B9~{@&b57!%7Xh$OzKWeD|}({UUYE7NF**>z+lB;i99 zcKSKG6a?FH)y|exrAB5~itNpf=e43oF1#v)_{lVu>&(xN03TF968y5T&Qrgl)ZGb$ z?Y`%3=yLN)C8D?WNQFA@pSGy&O{oBRj5Rn60#lHY%g#%}w$P1-go1q#nM^(wBf4Ng zTq&_dbbCQht?5OQN$YSdIUy-QFJ&ez)q8W2l~I-q&_yb-ux{siE-8BK(bqJF(Ctmu zZ4{e4xE5QXg+ORwYsZ>9vm#N++@%nMsZhy(tZqAL_e4f>MY{BhfYKglW5xOx58(sY z-!~4k{g8D>@t@2b*KwRuF<$<5hb4s)X}iQ(mB8(OdR7c#>*9h&pA<11#sl|a3bSIC zE*W`2+ecU*BJa$4j0`#F5$9&S3!=8T5a>z>T0J7N!|{1JsLCYI+m0?>_X5nj}8|mLt8)$F>*)-IkIai6qeG4}X(?-U@y>Ru4kqKT_m)?L=A&EXxBhch5tA zOv`Iq|75pvUD4x(@=42Vi!KgG=Id?bxZk<%<$*ue*ZuDD$}rAd`?;Gdv)K621#Il#=5zF4hr#IkJKnQ$c0BZmQ-etY) zpoM4b_=@BEG7|ekqwpMb<;s=n{4S^K7q5q7Z>A49osEugt7^nDYsu`wz$M0f(qr@( z^PZMS$-1plYPuv#1CAk-bRK+Zo{CGy9l4Mr2%E(%jKusbT+`fg9^fH1@|IGq#WT}M zdm;4ZDM&H%fM9*k=VI4v#}fY)X`VBt|LDM55mgLLACGS)9}{N#T>NLE-EkQod79J& z-R{ii0evF)y~OIQ&K#=43hf?ujPMutaxMpR5taA38%~4$vp(g#e0=1pcS|k@ z;5?fy+14SEyYRk}5>zYWIC8_=z7~!sRVKwW)$Hy*vCd@)Bgc9Q2Vp%Bvn>oM#wG0} zuct9X23l_l+ep;q$fe3ANEIW>P!|{}t{8P1ZIu=KQZDKd1yB>%6LXl&TzoMYx+9r0 zCOL8A0(rnL@0+tqS(r;qSPcEg66+X`m^<9`>FhHj2-<(nG+~H+6y68URQ?=aO+>AdL zb!Tc&hO+(R#@UFp!DCu5B+&OxCYxEX$fd{mdFh!k@}>yJWcVLx$2PvC(5Q3$PnFU$P}H}bvH z?qXY!_pW_sN<1f8n};O1N~W|u08iXQG?{67Y8Cz~6I%HA^ko<+ByDP=I>-I?pYo1a zkQl9y(8#=L{;$O$_q9Gi=fu)pi}O7B1@M-iaZ?2N$W2G{vi$k*Zw3o#Tuwxm3iB>p zpd$K&NpP~u-Gz1wj~egc)d3H30C$WLOe8u8evQ(f_E2iBxzt=kRHDTg;b4$QVoDK^ zqyh1cV{Jmxjud_V@NcD6(-X4G{!NK;to1f}2pemRqA&LkE(Yh@rb{U zlH@fP0-5m=p<=5^whTxBq_U1gB+E^r-xQwmD60{MW}o6 zk8Q5XbAVGbGk#AsoYJBEcswI+U&Lj|)#!$#_}zn#x44-wW| zFQpv-)S7>6PA5nA?R^3IX?W9YNF$Eh9rBLuZ<`(`t(|QO%F-FZ{1t;Pe9&Qa$=SK@ zUcS}3xOfL|o;@X)1VK>YR~)`-s>43xzc{;6hYQ??jus`@dk|N+>=yJe*^p|!M~0HF zOR%a+%5!FD$lZ5qadB~G^Ok+@}2L4 z&n#bjB9s36nkG`U@Qr;6{2BgB0HxOS`xGwC>~kV^Ms$^vR_|hhG+l=i{e@-8x!;^u z{^~O_Lq)`l^<9?7hz1bVs7%|VqJ5mQecFz4OD5T;BlROCIMq`sCq11$&PVtAHks@Z zGIe)F2)d%FMYDu2@+m(8y;Svc!*uJdk5I|PMbw5Yr$-Fi!c-}BOK(aSS$Frr&yn3o z4oC67c7be~8(i;?gqVtX+v?PY|0;nN%DyY!G%s^2>DzAU57LGRZr}dpcpE0bZzWK7 zvIT^4Uk1FPZhpv(U^Pl0D6>KyM>PchUdJd}i;)T$L%-Oo8^ETp2>`fkq*R|&b8#Ux zP?~w{qIKHW1b1*Qo$3vwkRK*rMs!Q5DrQEO@(fo$M*K$^oxnkr-ygbI>dqX{>_Xf( z+*!+rS4z0uk=jhz`m6YAJ6=8X zFoY>qu-%QLFRcG1JQXkW(SdH+>1Te&TOW~D+Xx?;uc8qmvdeKziK%=N!U%ro`mN0YXe#chWylo_tMP&UIYlK1--ky=gn?uW5b5*sHjQmQ<+I0D?+yw ztAi}r%Gv&S;rfaLFNT6LJeS=5*qU7^0aDA)ciN5q{X+keozI;x;nt_M*ywW082)@m$tl{rLA91i+lsi7nvP0U}9)x7Q^zcY-3#@TNJW*@?w z++s~ZdEtWtZpNG)LK+>03Eu-%EhOfzE%ZV8jUxs}R&P+($r-`?%;A*4{1t}$)=mAy z)cGubX5nV`shD~)XCODRSooCRp9gq)5ZW%CjCD_|mRaaLH@|E+i|YCTEfnPjXzW%P z+R!`aJ#PwNSF}0EsF2!0^-tUCZpgenD1H8X*}$K^lARia;GMe)sR>j5w4vOW>J7Yc z*n$7QY(J8NgCkjv=ZQ)*cgj2^QO52EB}tZket)o(W#!#^kixF@%^b(g=m|klpR)A= zI02wABirIn$x4_OxQgC5|6UtY{S{YrJK3$w{IHpVLIo4GB9C<91;jR_dHDb+0Hh-r zLA6eiY}>xIu#aA^7_kp+l^>hC-6*eKlAf68XP(*hq3oA}OSi{ao_2Y!Ny%r)P~P=D zIiMo1`wUY4LC8i7S|@96sx~agVM!t8Prcl&9hJ*lA39D>@!ExmATnC7J?#fD9(5Ms z*pcGpi>Ncw;As$iso5YKhn;^X!Rj*GMes9@+i@^IU)bkrCH((apm9j3M3d)JPdi@6 zWoNkZ&YcdW7fBwBp`zCY2N1ZK5+TUAdOy|*@R=?lRSXC8g{OTkaC*}YHzOFplk}M% zy{QOQ3nQzVZxLf+A-0b?ggxNeH6j5_pLe8{cTERmxWnv3?hEC!2&zj0F=`?6-F9+0 zO2#7|Vyky1?1TUMBM7x~2rA=Adi2zmY_^t-Sbke+%6Sa}R?}iKbk;7t@O&YdBstV-^oCjX} zP7XwE;MSHBZGt-#k|pSevYwokKik?K+TnIU10sE=65~wN;K~@SoT1UGW!s5*1PyOwD zzb0L_B!C)Pp_?6Hhs5c332^Fi)&p>J5Itu$Bckhm2sN+Xum{9-pm4%m-Z4}vGqkmK zE~okLs;*q6^XlOhE%Pn&Vm(< zOtm_BUl~~`p12T+>E%_$PG1n}N0e37RIqU&ZvZLz|((mv<4x1rU++y`jD=Z*`cqr8}2XEr{{>65HR8 zz2>wWmCOEqy3ZA~pu|#)`Z5YRyoIB8^b){3j>L^GvA5ysi*I|sUw}?+@7PKe$p6FZ z>+3rXt9C@C1E`%Gx_vaz>Uy0?wWksMNx~eN!0{Wjz}`7!`Hp9nll&?LJD2@u@=Ffo zTh(kjWAYmO_K=pEY@3~x-VvwFC+8~xPcTpCgv%M#Stc_VR`muB zb{E%MKt}=yo9;I<>$COHJbvSex1$KPIo1cY$ez_Rr@r>}_ub*7sf`@ zpd~Z3=gVPOdYLu|C2X&R;D=PQ#%o);e}?#edK}|ZwKMWUz~+AJOY;||yV=^qum)6} zqs<D z<|&tKJFT5xc&^`J^2HOG#}B5nhur5=9n2$K=+gHTJIjNdMi?s?*`{9zC;&rx(p0O4 ztYRI^u^ySrk)J4qa!o-M343%dj9%$GA&YO|UjAVfU_FqipIxGvHl-wUtjr{A8J|fS z-V_K12lD*LE%-n#11a%O?9@hFj`stChlx&VZ_K<;RSiDgLECCPEw@v$?U2X$WQLJ^ zZ43)E`Za`GLt*s-aiu=_FyKIU;~L_Di!8Fer_K=wy$$2<Asv?QeaOQT~HAmfO<7u zZnrlLXOm7$v!oD|nIJyB_iN|OhYehIDy+8dbO1SUCxISiHHA@}<0P(pjQJ~i6GB^^ zDuM+d5+lKh7h1nXI=wfSCP4IlD&>w=I0Qv=e^yUBmvafD2cfny=YKU7-m>Bu?V#ecf(N~uPet&V>ELSjG%lTRyQAjr zQUYCLhtQ-DpVWD-sd}P__Va*hzJy3EjA&7H4Gj&GPc+7cOYKOX_ zrI`2CXKCTTf*?PmXXjeKYBZ2#mi2KnkLTxsHFYBkj|p!j`P6&O2dJMt_hvY4z6Jt? z>Y4v#ILogFI!%97(wEbhI6Y8G7p6`-PO7UrnPyZlLI93ybB5eiMBC2b+wtA|gE&pt zQP!EUo0GWLGnKB-$fBNu+U*%A4pD47R4X@n40wg{lCj%+;%2vmIW@xDeP-Gi> zX0~Ve4*HLT%s0@zBzzQsHn-v+vo8GlCKO8ccW>j~j;h?}sNBTubyw<`5cF3~y9wl= zs}}(emxUCiikd<`Qb1=!&S4XD_Rwa1>I`Ag> z4>a&pdb_&1X7`ocq|0cGQ2Xg>4HE1@5onE+;6Swo>nBg1)HqY~%?o;4*r5Pn;c?jU z00G`qhN^{%9BE%?eWvt$jZD8Oc`KwI-yXjUEj-AriNXdu((KZvShjY8v>@&*gYduN zj2bBrDtI5{qjjL39g~tByGiB@vT&KwOJh!4+7fyGUldNAn_opB7g}$4MO?2Xfynwu-*-$8Ccfl}|c84t4cBCUocB<(T z?kObAbS?=7bu1&{^GH^$F7_?LWL*kRTq);R-pR0>8dRnPSw#$UELI;taUJ3~Bn$}^ zf3-CN$^RphP_^$)0nP=lq|{e0?+eMMKXYYR$FPZlg$}UzopE&;@x;-mb7MQTztp4rT!VX*h)Ep`_L8m_a!mFBh2! zC5fzU7he}Iwywv}s37UqyGo5p=)H7Lk^nRG?bI7%px0*bgNr=^RoC!ue6mL^9@oi{ zWs$i0N*Wc+2`QVsdiYa!%D*-+?^~siu^>C7_Kfp5z}wgS|I)AKjkhWs^WSjzT(a1$ zCnB#6kadAyJ&!*bs41m#J-jQ3;1|;C0+}KM`(N_a(K}$W%|u*j-kbcADv4gYd12L{ z&70(oT5Q+J88t8l1&WVlRwcNPFhIVdZ70*L?y|oM8;u%w^Q#18n5plT8%Sqjtl5s^ap@F0;af4;G$Hx@Rer z`7=!^CdS&#kovR3mS8730-zEPAd~0Pd%_6mhB`H}V%>;#{VP}U(;bpn5rr%#EktwH zZV`8sI36BnhxT8V_yhnRbZH2y454cJF-Lx`H zgTMV`{S%po>0QsEtJDY`_~7mVFPm+r&~Tp4&FZ+B8mz2k?1)2Kd{Uf*>89pDnMAIJ z4$ul?WhTF$Q3M6v{o)?LUHDIifn;{FtvK?2M7*F+5;fqGeAd^TGeAdc{5cUi^=7=1 zEgL4sk{JK}hRl$|vv@eQG75b8eb)yx7+d*mCnAEzAMv^;mOFK!$;rvbVg!H+xA;dR z^G7G6t9-<5w#9Ls94z0BI7m7o{p@dZCLx_VT$Lc&>cz`o%(gWqrPuX*LiS|M6*A~2 z&?o%oF4uLp=JQ@68n_U3NBFgos*Dm+M?mBzra`D0Zm1wV#QwTq;zrX!xxw4nqDsHD zeH$kv_2oJ$5@bqP5hY`Hxv7WIX$7$gC-a>>oI&7^3uVHA{}e*GF+lWvkP%HTPtBz} zj^>{>wTvU01XhME&C}7NDS_vp^=yVTGq2O>-MB4Lb8&f4Kisp70MYVAA`I{Z@3bj7 zL>-)0&&>JS+1V{ScBbuQYi$cT+z0IJIqiySeC*1i{AxI72KS{`BO0|F5*r;>)_) z5I4`OT{R*CR8D(yD|1I6=-(^=ly+37P%>4rZPn>~vY5Nx^&_uI)Lo{Y?endT*uzmH)LMH2OhdwTYr~WAb6q z9D@KNBRXB-w>FcI2I#>dA$n4xo5vbNTrp?fjQ&*YHOJ;i!*Du&N?z~Fy_V-QVE;mo zcFam4>NR7i^f7gH@F4^99n$^r*Ls(JtiyzOcydxUtxWItb$cfPW*5p{6U+XLAJze)-txckiwU+c(Lti8vO_C~=fC)TseYM@%xDF_hCp zTXBEbOB6^iPm-pxsPSYgx2T+nOlOCDbnSRsyGRlN(hk1vc4K1+8b4t*q3xlnSs0#RG2J7L(?kIZ%$n0u_R`i5lt z1YL7U9h`_Ta&L2v-jE`$sPFj|FD{12FdoES zVTwA0aG7N$_>rmtAH}UvCiY2wZxR9^~shY`36`v5+aDFVWYyw;!yA61K#%oQq<@ zfXtbGs0$Eih&`lgpdD0*Q$S;uX#1`L@I_Xx(+l5^Po~`zl^LJK&2)VmA{iI?0F?0LlP_PD_j!(Oj=S)mCizvVHOtb3oysXVp-eynnk&5Egf8QJfJC+FtW}Lw^oOH&c$Fe7kTXoHD~s#3BEwRDf1 z55oG5EaQlTl7KM@M26^uYmQzEj?of>t*pVNZ;bxXHAQlX=oy@1L z-t(hRWX38~j-DaK`F0#{rH~F75Y|<6a@0wd)wg(FK+?GqQo$@?CzyA~l&)7SX+Yfb zcXZCyCvJ>4CH@@N;$~4rD{w>3<$LCYMheBUj-bb;&HNH(FC$g^8nV*ZvV)Apy9ct4YBaFn>lGYR%j)@BSE=2q4QYAyfeD?H@gOmQ z*&so@_HkNVDHz0<)3aX3l@81f6-(w#915pwk1KX^MaRSpe7Yop1yvWCMfm(fFa?!Q zQo%ILw&rr>9@@>YzLzkEvgCCXsQvx~KQZXdhmYNNbyrFN-#?$+-q?NcSQb73lGe#P zRkJ_r7D!|yXrY+#l4Unw2S-7_SLM=toQ241K;gy`{p(xXAIRNqQvd>y4Jd2yOj4<3 zAUl=z8Vs_8*)S4*4L}PKHuol&ErIsqdmL^TS3h6L`I!=URF=*PDUy^el?GdgFUZ>- zIX65mmkS|moF1V08NZ6!5Nr0MtP^megmrwL39*0WmO&s-)}+#2@_!K2dXL4i3m{?~=by6umSrgAJO{6j(&*qMsy6ndzY+CR0?O@kIZ ze)|+@Oi@P`fbc97{Hada9d8 z%e#M5KtA$VTK>wt&A9qrq3sO4@57n*?!*Zps3*WbOI~0B?o5sRnH*V&?=SLPik{2E z%AUACQZ-+@)dHrjLP0KDl^pe9SdfA3Vqopc~qPcD*_}Dz@nbovhHTB zd9#E}17swZloedkFK6%gPJ20v*N=eH!HPTDEr}uc-+p70+O53)qM-GwmzEy3PWsc{ z0_oZ2n6n;Z0-!2kvsG5@E#h0|PKvGtaE<`U z?@!9b$4Mi{?k9XXk+{KcNBRBATT>6zaPNp8{$4x-JXHx=XyN2_oUD(M5qVso zg>2$RD0emI=#LusGcLqKF0)?CiufhFWFFwj1@AP3Ax?FZyAM?#f*{)`Fm~%Oj{Cz| z^a*0Df}>3sDm`)G#fk2MW9SpPv776q3>-&QFqR_rub95@fy*}=Y- zjG<4@g4qC!s?Cy$_)Se42R0T_Cn77K{c8&1JvEI$&{qE4Rlj*WhooHa_)ZsV(l*@? zWV!7S%9&+h|Fra@)A<16Lw>cH39!k-6_i1|!<4$am)@!}k+hm{>L-9R(yAFo(K9rs z%izXj47Z)~v6`+E2iUt>poQTRj|%QE$@1An$p>&BR53-?y=Qc&Wg|QQ_00+BbVP$b z`8*hT>0Np0O_tm|VSv$uR8NH*H|Pp->)3DZvcoG$ubJPI7Vya%H#7Sf)PT|ll#(PE z(E_6>78f>r%C(NIxHF(SO?74mwhkQK(1L4MwndI}Sxef)m96P7$)wdn!g}nN8Yg1* z_KEqdXvR>hlP%l=Y%>4l!vqFZLEB^_+~wWw*%dhX5J~fx2Ar~Z3nd-Yq_Rh-_3Q7c zv;(O0i&0Iu$q*Bloz+XF!q5RVy-B7pEucpGVj2n&b(_!3rkk4%<7Oimnz zO1+h_=JBaRuIJYZ>jOBtOm}ATSmqq0h~6U!bfBeGi=(9&BS0Hl%5gG}ZShX$A+Bq( z8FS?(U@CTIu)>Rv>7D!;Y)6Hh%<_h}D>tgsNavd^gCIJ97m6)@;ZQy>#ZaqJ38p2R_#NFRJ>I@{S`NV z?eTE@Y0F%A+Lr-zfX-~*n2dZP6ZqFi7pbaJYM;+W2!-cs6grnZ5TW69`qoF-7MtNx z@MinViOrWM@AH916YY7pN|xfn6YHYaf8~mJ?2a@}7g}3)R2U^yPy)G4_{TnAoo^Ld z{ikS!G5v3*qyQ0Gf%^Wt_mfnyWbz0o&(a0Iz*|XK#Ms3t|W-%8~_=%KN09+4ViBBSpS^1q)=hf4@n9WN!ii zVXtGz4fP|B!~#J?vLv^^CA$h}rZdJ%nlJqUGi_p!Yu8lIug8L8Pr#M2fGbn)No~rODRyyvn{?H8dL-Z2pun^wph6Fy|Z%Xo-Sj$gMkv_Zx-qcPHt!1y)U#k_WF6_iW)HXazOaJj)HE&Y0&j0E?LtC zzP+Ef5KU*?&;wQ(>tY(Nt$gpyyC)18lXS4AO!;8|pgb{y!iK6_w}>hU@78qOMgr$+ zcmR^3v`dEwTrESt;KVVcysXHoi=NV6*@>I(>3qU0jCDStWC2_;D zDY0AU{L3>ePa940Bls7lwIQYh#y?*Rg77Hyf4-F= zySy(-#yeOv_*HsbvU}yNZJ zrMt=D2B3KDrJqgu0V~`F)p+Y5BIs?!O;wESEVkm#Q8i`Z4&t{qpo+k^ErtR`KN7{N z-LibyDrw_@9VJXGAm(EUY4t2d@#J2qJ$`2INUQUwx%&Vu9?eSF-QG1&k}L0r`0{%i zLK~AduG>*8_NFK=b?1{r1#C}srbsW(Jdv?Jv7!zd&+8oEM5V7j%Zmc;dD2n2@(e@$ zVcK)*=D~XHsJTC}_ebvL#ZPT06HVGix}}#MgHzx`FhgNs5!Z!5^1ThMn+Z2QmI?rR z-^YbBnK`2=Tkl7*h|xo`%L7p|>4kP4_x}QN$mZ;l1e8|rA&FG*pej&g~`; z)KhDlX^YarGnuwTB~Daef4UN>0JW%^)pImw>eP2vw=RRCR4DQoI}|}bpaq>wD>7yR4Yuu} zC9X%;PU+2-L!;?aG|O9uU5rmIlB{QRq?e1D5;L7kuYa_7CJTi<1Nt6t>HWgsHNumm z9TqFBA`PgtWw$}UL~wDM`i13Zip6INodYMgSIJTNBlmc^{WH5$fN(L={Ive9g~Ng9 zo`8Ukn7rY?;V1%qZ|7dlyrjy~i(Y4UeYvdxFLvAq0Yoij0b4|-FIeo*aKg zDT_Wxd<^JKYZ~ufKq(ja{L`eINjPh%TH_sYkaMQ-8-imRD>H{WsJQISvR0jV;H@@) z{vB@ya3kRt**iD)9zLxpxi3^blZH&VWaz7q>Xx)|#?j=ybAtjas`HvoOCaCob$(_j z7@6$;fid(qQw!Nt9f*@2GX`4>s=3xs;4Pw5ZiIEK_k8to$5eq;O@HCeTd}pGz4NeS zWL96h-vemCHVyy2%MZ9;XR_ifS)1+SbM@UJx=Q6dtCMp zRGD6_JR%JCYo)R4`h#EoH)SIgdg{@UJk`)7R-oBiUHbh~7s&FiX%2m+sKve(x#jh} z1s{Gq;yrR2SNhJPepu%gYyjn-0k4?Wr9w3_?|_#%E+=0_h)ns1XytuVsCd1koj{^S z3yzs0M)zpTogr;_0K)Q#y!IoEXVnC!3sz@>$OSld@QO`ev4bOc;9`oX^V)YL$LF={ zxB@>N=s#5hv*0?Uc&?%+Z;d3$*fo7hlD$bg<@iF(4~Q0ialmmvL@~fxhb(GwhOkcG z%lm4x8l2`sL?f!s!)oja5A(@s1y}ukVm+ig1(?U#7(7TA;dqr0j7G*Yh`4Jf^ zR%a9x!9)pfbr1_=b9Pu)?ug?pJcCh@KC(^z9S^W%{!sV))kmPG%0Z*wK0efCv!CqbwHr23%fZF-zm`JOrFpv? zLg7iE;rS3uz2fsNJg%()ELzzAFKz&rm*!bO}grP{*a{y6X59IC>#`MB=89jPr8??DE7C-8nJcp>#i)W6U;Z7FCcx=&#OQlW(e@qClI;THYZC=?h$CO*ec5Ew&%@&QI;g67 zB_>Wj3k8P0|K~%jKpsDFpTMWj*@B68hy;RU49ALfjvMezq2Mws$DYGCCzU|j6VtM? z?^Ofe8;yaJnX3BSC1kkunq>qbG8Wt0;<;*2CtofnYyE{zS-;6YmK=+m@>7RwCS|eePaXQw+8s-PMjvVQB0N02_bksrz7(ohrOBSneJ(_UoQ#6l zpaXD{R$+$?K5i)QGHb!MxSUfK1B=HU2H)^;wLp+=<9*UJL8-nGryTKa*7x+;rk+Ka zCiLyY1)%zuwuO-{I^!6s1_fbjWv1cohTw<0m&;v=!6@`*H_hNUPEt8cu$0Od*-8DS z@EoAZEPNFTww~uc{GL(5%?Qn#zuU~5ObJBDZb{*dNC{t7P>bAIJzcN7)jckN0Dd&S z_MvarL;-oYU+{eBfbf6xRIt?kBQ6!p1(vDIvO@GDSI(YzHBO@PMKwoX@F&3cp1x<- zLPCny9EtLWyxpr;ap1W^hiq` z>^pnK;l(dohwd~VA6S=yFvkpv)G^hnVkCoz;k?zs-*?kS@AE;`ubrj#^pLN*%<|dA z2_nGZBBh?g{_S#7&cC^wj{Gj!xXQL@o7HndETFJoRyGFpj5XxqwOQf2!H%^J+$Did zmR%Cj@WHymw}_JkH{uN9+IW7Q_7dwXNAAS8$G?sBA^gHaHaEl?TTgjbV4VfflN0fA z&hOw&DE7c-`tA93~a6fn#bi<)OZB13qwHouSn>c9{+9S2$;N$XeuNFbt4kV?1HoB;24fg~FXV!EOe1Fb#|)Mft?i>K1l8%+ z0?VjrbJlnZQVen$uk!EFL;{e&igS z7GzNyGdr|O{7|$C7z^I;nxt$v4Ds+zgaDtk0#j|kRuN6i6hmDyd&$nzp~I9v^Q+`D zhV;08pN^XQNd|>I7@0;R1>Yk^z~9?V_b;CwLj@m!hU1@3Xqu}x48>s+-b|Bq zz|2iK|7$#z?B4vmg_jm$R^If64+7s&*|U43m=5{1qmIhbsH&KfaDoR`Cs^Pb{n{qz zfL5iCOcc5|TchsOVy7!B&x!18zkt7%4qh_=EBQ_D->ew{9qyY_0Hs5{+y!K}c6Mfb zByUb`G;vpOy>XY=BJA!8CjDU=r>9abh9$8+8Jz6@Q)A&0?EHx)Q8N5*NWldPjY~TD zcA>T9IIZBchLy3M06$20IxsezwUwV5ETRP2Hyr78K8RwyrW33PTUbV|MWVnAUBI=? zlkZlML=xWP;jwd~@H!++zR#*vSh!bAg!6h-FN#7obf(!AduCJ&R_FLYx6RSNCqY9p z0Z=)@`p?Q&Eyb=eKp4F?zIfn{z3+$2K?}fp6uL$f^x=0)=|lr#2s4=V>_U{=*3X_KkHHj?!h~anKl2PKR%EbT80>JLz1j8E7v%zAAwlZ9W=fpg^xaY-T$J+1QC7K5J z9lq2vrg)WzfPgo>EUD>4R57WqeUqikqy_zAFp;_p1U5CXcA4<`wUB4jeh+gAO;*M^ zfDoce3v~>p{9~(12MnD5DX|J--L_?HFr3)IncE5DN$vMS-5DWBuDDDfi7U!G`aGmX ziekO|6u`IKM>Y5>F2R_CThHV7@&gcqoLrK3PnQ5rcMW>)fQjEM`$U=Iwj1tWYe2nJ z#UwD)o%VJ)iZa0J)R5hSwN>teJCVLnC3bW7XxS?+f&!=ljN{SFg?t{7?vzm#`YaDT zb_;P^PW7_BF*y{OZ}@CA2RGwuYHZP}p`!{&#zR;caS{Ti-e+4Z)%tV54aBfq)3LLq zSD%0a4JaH{8mE+cTH(~@{5_%ctPr@%%gCTVcXxvZeG{G^r%vl{0&yISQ18>c_W{d` z`Dy)lyG%!q(`fq`k#v1Y?2+42E;tvdSKvNW1)mANCPQ`I=pqivqw8EDwx zppAQ{%D&sGYZ-Rsitetx28ZL}Ha#$$HR5!(A9{bM(WF(JEKT#?*?y$=*r}HrGV5_xD{ey}RKnQD*22#yTn7M$J-M;F+uB zcDC*woPN;^po;f^-dfcrCVFieZZ3^p1CI{4of-i@Vcn|f1`7lHF^U*5Z_nQkStP%^ zm#=je|DhmtjfHnI4@;OxCSLS)&lYFE%IU$5T9^!9h(x^LYY&Dx3Gp(+Ya91T)NJEx ziuV5v32L=#mAbzKb>udvBlR(3nyx}HX&-F_7sT!K&=br?@XGNVM1~$c-2blhtSp~> zlza`ARdR%ng=V=^qcH@mWKsQ%zIfxO*R;9?`~Ldcf%*)4JS-(Tsw>-Wc{Uq z=N5J{-7&1_m#mQW>`i^N9ey7KUZB%Fy3CkEi$_jRp1<)Wsj?F(u55^x9ji^Ju!Ecpz055 zEQWC!4RT^xwQO-Y=Msykb6~2a4S%0=d-X?`^-Ovp7}|}IKV!^vMH^ns`e^sOo+l?J zO26o&oBrhQFZTF?(+pPH>9{x_)CHz~3NQ^%UT0lMEE1+DjsP9zr6GY#udoRwKF@{DT0eW#`|LY86E;=*CO>`;-r?Wbep5X)%SQ@aff)^i&9k7GONF zn=Bq*+V##BR98E+P#w{lebwh7E21g!WZLuhRCh49fp6m+UHNfG7~Ns26I`>q;lJ=T z8zcts2_Z6kO^Twg1MchyUXU6TZAO0XU2-q48UQoDa(RD$rVO0zTrLzCE6Mw7c-0MG zZ*6=Nw}0BmUIL&Rzw|Cnn1DbWNKTS^mvPrq7`14Hx&GbtyoA5?r`ht60;;92CBA>e zdaLl;N6_1_J6&+i=<5~ZT{k(j>n8k~n2_$|9r2SppPz@^Pq=CP=T+~L?*>~&toX`a zQs7+0&CH3mgsrL_>z=%>2Te7GF2Og{LK>a#?f%Bu|NRDeU#L!@@Yc;a#Hf>Fng!zC zC7n&po+CVV?%ejCWH0c5iepKUjD&oC`MUoZFOdw?E$LH~^GP3*3f>KtUG&n8pSi1G z0p3&1Ja1DjxSlpOPPo8}+G)3L&)xZJHUgf~X7stz-ZU>V9IRUHcWEx`cg~YY+#oS9 zHz@svi>W&noW9=w=)*2+wwFf-T!f5w_(rXri0LyH z;=p(95XyS(`&4bJSE0jXUf$ntH)laVz?$xszD&I^hzmS{p5xGwLZ`Ai6L%uBf3hL7 zV3WAZ;TX}4T^{&+W|3bBMF-vJ~jLDdAt}o!{_MSw10O)--Si&aw>|*X`5TxZ^_^LvJuEJHk2# zuu$-|?#@A1;rNu?9u#gShS<)4syPTLTNHJMfW9`RipOqyBCht()F7DE2&)wlmQI9U zcvh<*@@$Kmc28`VImQc3@tq3X>`t%cL`l>PD7O{61^P!7bpNiF?Oe8>^mzj*=RBW>iAcEnPcJ%IpZK<5Wm#u?2q_pn5 zegATYRkNn_+@ls=h6MeohlK5%#qqbi3H@Z*9Rw`R7bR< z;K*G-!z{H_NFKcjMzD+Dc)Ex$`+yc}?<#murRHPS_=vSpc6_MK3+lwA=a>nKr{=x3KTWC|IP#yayp_xiotfAD^IedFGH zo^#G~o^#G~HWOQ7v`k>jHeg$}b^SPqQ(T+t+ho6ZW09+BFyQz!-Zd5j8%Hh+SpA56 z+M!a2lgsUfK`Yjvnu+QApn2}-FE<%gRn;#p;Q(l3e6RO+_sszGTzBSHvj%Q|L+$H= zI2Ku3*XW-MT?U5lL1ouopog2|A$}$6U6||%wD05|$kcBeB#=w5?gdRn?}y#(Gd{fQ zGIM_EvlhVLzkaYQ)%j&fP=#q;BQ2fzceh4=}PPPTv z7^zyG&GJE;=wv5NXY}PpX3P3m7q5m8Q=fsLXh+woKle$E_Z)BC28!`Ploo*no{20`W_3y1<@zZqvAAEh z1~#kw>v=jyo6lQBN5jl#LEK#Q_hUp}+9kUPn-^fLM$e-CRL=F%Dockeb7ZDrf1`cr zHJ8!EJ@9aZNtWY+@%v#(G6N}eyBvCO>!E0VkUD6d%k>kUL=nJqwku8K;^S={UqO;Agu=t6Px!po+pCaQHSLYXi=@EdO||; zHqq^A&P-!68=bT{XPpiR?j?ssSZjA-_J8;xyD0QUJ@HKY5u*Il&zAW|xSc>|%f4$7 z6sz-|_cXOvjM2VM%~0@iji61|L1Y>YZhUZY4*hw`Q9sz*4?1>0 zp&Ha3NOe{uMV2O%|2e+21n<&-+_<0olw9y@IdQN!2m0pyejJ56b3%a zr{S?s$jr4B(<&~9peUKSvEsn+IxZ;7G~`ZMB8B~*u3Ob34)`*T zjzhpTRZS#qgn>dlzs#MgK}Ve><3%O{oDcY~?BXGFxAsI4sl~hXYRnR&sl2kbx1vXi z%5+6oW54Z-5UEzOFOuk-7;u#mGV`*E1Y*{m zuPi+pfi;dR8xBq8Lg&Fu<*q~)>yQLP%NluP9k!1^hfwxgDRtH^Dm9b3_?Y8DMB{%J zN{VeAtQ}Opa(n5epUHcSElh;Z3usXXD;fb?w(XNenq(0jsW~8&RhImDmbiPA@l1=U8gQ$nuYaHiJNJZ`K*T~T=03}$gFGNnM3y2|%PDN;M-&rdQ4(!;W zOwxvMo}nFMpo;ZfPEuGpa7z1W?|W9qf`7WRK{vS@6}#-`WMgE=g&I=5p;&I1fOCZ} z?Lm1H*spd4lFdRkkxf`Wey?n{YqY|Roc2J2CuwQs{Oq<__UXh}GI2S(uRwD=%-c5kVA=s4J7ERzu5odE1P7qrYznB9DQb&hcf)c%cF-l`f13^cT9p#utc+j^6F z2sEYbh1xWnhwzN-#N6bsm9KVmZPj!50WUV64YZguK`OWtexG{tE&_{EQaD=?CrOcf zxmFVPdx|1s4ia{J%6UCq)Qhx@mLD-wW1w%4MZ4VH`O5#g{pkVBK(6XRXvi9EB1kk4ujYYH? zDA=*fK>>ysLgiPWqH`i&Ef&PedSqAYK*~^p+PR`kkzd*&o{Rd_@R7rA&P9IME_4I& zcHZlN%5a_CK$akE2?W0br=R%UFK9IWREq)eyi4Pdh7c$@-ITgVb6hc_K5F5N-!R#~ ze)X~aDkz@GL;!q50GRv>ptQFud+=z^Y*HnuO9 z3}oGX0h$bs?gm`oT8$s^Am9>(^$?zLkQXji)TgzA{on-kWXFPEnV9rOVKMNv&n_4C z2#;LqRv@L-D!ho+GYo5X9|B_sH!2-I*PS`iIcw-pDki+7E_D9Mo1ch(hRHWOTK=iclwS>V#(Ao>OXif@Y z4q!1eH0%e1V<2<`UEjA<8LzE0eF>9{tlGW1D%j1YEkj;)_53!&saNf`)S-{=cwT10 zTM$FTH1HuW83EL?yS9^1pc(ZvW=wt~gXYs$E`IVM&I+-QZ16c}71hxU+td7!A>(A< z^zridlgpq>QhWPy>oaWlu5XJt4k%#0m7wyLkUo2hF*@IsH$>t`4OT$`ItFlH>~ObT zo*-5pHG8slHnAsPY8H3^!H!q{ zHlp%7lGm9Q^QxLegPu+sVLliF22Y)V!yP{$U}1P6UYTao^!+j@&3mAYsv%r5@{C~o z0a!9q5$^;(A8<^TG3|uOv`9G^OSb6yD?(Nr?3bb5}OPL75ut{rhh1vGY1ZZBQbv)1@>D%x9zF=%o((kVvj_Lx|uzoAcg!gj` zs7J#+%`|tio1KI>SuvKDtt9p9GM#w25=lX}elZ`{Z+-aIKcaTbu1A>$n(E|QlV4m* zF&ANfQ`Pp^;`-sj7?82a%R|`~-@113TwnM7sPaI9`hoasBPZV~d384`xp-(*KgmpA zm1pZ3Na*TRpir~DdNMZ*P6-l78zA+mAWZQgX9g@)9W0P(AfSskN1dMpl@lzlU&Od# zP|P8}?O#CLp_ijwYDVJ<=d&XFxK(`#NkS_zOQ2YfF;RG<@tu3r5rJ|KdQqrt=rP)E zuZ18W+*LAi+Weu|-Xl4{zjDzsesEY$zrcAj1?BcIk9{~9eE^#2G(br+yu<=iJz;gA z)$xShRi{QY?GWE$3wd~W_|J%A_K~L22!1*&cRWPj%$t7N*K%LteE#om`&$BK5T;_{Sal}6ow5N?aG8`y61~D8;dawYn>~VBw#UcY~ zEZ`!mqxl&^Ff-fVZ$8(q-Iuyj?C{Zv?vOZmvFY?KL~z}YD&CY836pibMOZfOAW7iK5**{YiJ+qT)(TsLI7=bT)VFbMa z7NM8JmF_MMSGTsdF6X>`{{Brqn+mV$6E40#EtU7kJ3ddFuKo>!&@F;6qYYrNksg52 z{`khC={Lvrsn!0epi*zU@BA9A;dkqu8)iXcTzO&ORl5=&Fke()qpYeLMD$t;6E`?A ze48{jRPQrBT77HOjG>yHQyU`ai@?AUocX4K7V0UQcMM3g7)m}m-ZL8)7iXC5H<#Yi zUnRXD5CWmCVdyj#7!|&mC#GoAGxvDOwUlLeCoNU@qMR`TAtC8N*rQiA1Yj2Pd+a%h zVtd561!&v>!uaix@-_@8W>v9>dMW{0^Mj zlccd%xuWVk!xg=r#s2I4MJ9dqcYi5zdMIfg1$b96139gQ1@MC)_!XlGOH<_~DEeH4 z1_ag*7Xs{bfQ4^A*g1><7QyENSU`joJjMw`0_LQp08Ma#7d#HZ9RPI6hy%Kk&w|Gg zK@?zg{WAEQs0Vlqp^fQ)NR@)W8BK%7D7st>K;X*%Bk=zm_&>z~?!V||1JW4d^G|=c z=QHY0=q8T(XLO&2MHRa_nd z9$P3JPuj55oRvDEe~P!X*bJEIqEiVa2SaSJ32Ndnc&PxgRGEj$V|Dn9;&KvkkL}5x z-GMp1!Y%KLH|I|4)9UnQBkAq#-u0^#7Zbf53IVY7Yv=V3^dXtyJK;9w! zH{H;ZSguxHxR6mA3a=uq z3}&d0|H#<-j3TeQH&EOq>cj9XfOo;5lXaltoOkTZs}S#-m7MUVHCv!{;`qi@6czo6 z;mJW8Dvt__C(`nNDs?)Ptuf=?{_H;9!7!izJaJs2u$m3&Nhz?d@OKx`ep$4L@a+qG z?o7-#N(HiI<5`*)7Z(jd#-L1Y3RiOLn;dxuzi)!y5>c_kQ($rri4>K)UUH1r>&A`Q z@4%h~yjZlkED29^4v5V4t#DIs88YOuj3- zaE8o$j61%%y6TtGd@cs~mlf^p?L_|m&C)2C73II_!F_NkSF}l3$hpNJAdf? zjKI{n)Di-ibmxj@l_o2$zniqE6MQcjI?1erkjZ_S0K!Uh87yquB>AA^mhWO~U{DllHVDhAhV zHPte)wcxKWX$_frzZrL2ii{J%!{B0J?fF?eGl68-q?Dud!$2fcmhXvElZN{hQmNa=SQ;>(A8_e z6E?uB_4nj`vonD)CAROY5P(gCQd$Bb|Un);lM=@9kzARqxj6$%b91MtPtJ4o!q{D%tbZ)0n5)3qUwZKMXJ*{+ z)Y#ZqCnqN-YwK5u+TDF}-B0Ljq}ay#UG76;0^D&%d=;roG&;~}WmgM0<$??2rm!xxJho9w3`!1BJbA6uwbWzt3>M zJKu@k?h4ac0U^r;MJ(c419hv1E>=`Jb!sIRl-G_fjQRAVzes{A_bYBZRwR3SNkktB zvcCmmtasYL@UiFKWO;v-`QHo8A2nz3-u&@vyS#KNY}R4rQ}!Ki3f$skd`+}q#!>8m zA_qE;EWq0FWS7j-=fFP`&|8-q2a6f9da6}%hTQ%FPN!K+bo7J$%_XSNhLuu;W@!uo zR;rZQ+1Vk6*Xt{1T%@3eL()Gkc5fn}La{~zlssqu7J)$<=g)+LA@*eqR#HM{r|BOA z?#i~E#OFKTf{QM=E?qA|=IrKU8tI9o-KQii%-J3DCEx3AWSCl@pp9OO~+HzpS!zlzTT{|5f>`sNca_) z{TSLk8LsqvCId=Zv)yU7<1Y2zNqvW`p*qIy)oqbybfBlCr1;t1=#R|;;GzteP1uiS zi}(~Mw30V$J7RfFN`;Ll5?#K12aLfRdjI~tAqd$D3ia$Ll0@lLXj09Z$Tw@?1p7#+ z^bvakXzTtnVc&>s)+k@W`DYqoHg`6E77#r>Jbt6uYjJoVu%LvHWgW4&&i?0QqZ9W@ z<^WAt4-{%mC5I~?4$AbR@lcD34NK;0bhNcuy=k@H3xn=M6;GdV@ob`vD!Dp$4^X)v wxJ4YEKIMtoC9)XY$BX@B4($@LPjFeyhePrGvyt}e5ctv6GSGabZg>Ab0I+1PhyVZp literal 0 HcmV?d00001 diff --git a/kivyblocks/imgs/crud_filter.png b/kivyblocks/imgs/crud_filter.png new file mode 100644 index 0000000000000000000000000000000000000000..54e175f8ca5f555a3de576005c68aba4daa2cf29 GIT binary patch literal 18923 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

vB+1yC(txpc!5moiv2m~1jM0pJ4*CMby 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 1: - subs.append(f'.{parts[1]}') - return ''.join(subs) +class AmountView(FloatView): + def on_value(self, *args): + if self.value is None: + self.text = self.nullstr + else: + self.text = self.amount_str() + def amount_str(self): + f = '%%.0%df' % self.dec + s = f % self.value + parts = s.split('.') + p_int = parts[0] + subs = [] + if p_int[0] == '-': + subs.append('-') + p_int = p_int[1:] + l = [i for i in p_int] + l.reverse() + k = [] + for i,c in enumerate(l): + if i and (i) % 3 == 0: + k.append(',') + k.append(c) + k.reverse() + subs.append(''.join(k)) + if len(parts) > 1: + subs.append(f'.{parts[1]}') + return ''.join(subs) + def build_view_amount_widget(desc, rec=None): v = get_value(desc, rec=rec) - defaultvalue = desc.get('nullvalue', '') - if v: - f = '%%.0%df' % desc.get('dec',2) - return Label(text=amount_str(v, dec), + defaultvalue = desc.get('nullstr', '') + return Amount(value=v, + dec=desc.get('dec', 2), + nullstr=defaultvale, font_size=CSize(1), halign='right', valign='middle' - ) + ) view_register('amount', build_view_amount_widget)