From a9bf8346601b6823e5ed563df61e928d2035c639 Mon Sep 17 00:00:00 2001 From: qianming Date: Fri, 23 Jul 2021 16:17:07 +0800 Subject: [PATCH] =?UTF-8?q?doc=E6=95=B0=E6=8D=AE=E6=BA=90=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E9=9B=86=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/docs/.vuepress/config.js | 7 +++++++ doc/docs/guide/authmanager.md | 0 doc/docs/guide/dataset.md | 9 +++++++-- doc/docs/guide/datasource.md | 10 ++++------ doc/docs/picture/datasource/img_1.png | Bin 0 -> 19016 bytes doc/docs/picture/dateset/img.png | Bin 0 -> 19341 bytes doc/docs/picture/dateset/img_2.png | Bin 0 -> 18541 bytes 7 files changed, 18 insertions(+), 8 deletions(-) create mode 100644 doc/docs/guide/authmanager.md create mode 100644 doc/docs/picture/datasource/img_1.png create mode 100644 doc/docs/picture/dateset/img.png create mode 100644 doc/docs/picture/dateset/img_2.png diff --git a/doc/docs/.vuepress/config.js b/doc/docs/.vuepress/config.js index d87b96f7..8e2fdcd0 100644 --- a/doc/docs/.vuepress/config.js +++ b/doc/docs/.vuepress/config.js @@ -37,6 +37,13 @@ module.exports = { {title: '前后端分离', path: '/guide/quicklySeparate'}, ] }, + { + title: '用户权限', + collapsable: false, + children: [ + {title: '权限管理', path: '/guide/authmanager'}, + ] + }, { title: '操作手册', collapsable: false, diff --git a/doc/docs/guide/authmanager.md b/doc/docs/guide/authmanager.md new file mode 100644 index 00000000..e69de29b diff --git a/doc/docs/guide/dataset.md b/doc/docs/guide/dataset.md index 1ac1202a..a276ef6f 100644 --- a/doc/docs/guide/dataset.md +++ b/doc/docs/guide/dataset.md @@ -1,6 +1,11 @@ -## 介绍 -## 1、mysql数据集 +## Mysql数据集 在数据源处添加了mysql的数据源后,即可使用。 ![img_1.png](../picture/dateset/img_1.png) 目前,查询参数和数据转化功能待补全中,建议等完善了再使用。 +## ES数据集 +es是通过调用xpack-sql,注意写法 +![es.png](../picture/dateset/img.png) + +## Kudu数据集 +![kudu.png](../picture/dateset/img_2.png) \ No newline at end of file diff --git a/doc/docs/guide/datasource.md b/doc/docs/guide/datasource.md index ed3a89ac..abf39d43 100644 --- a/doc/docs/guide/datasource.md +++ b/doc/docs/guide/datasource.md @@ -1,21 +1,19 @@ ## 介绍 -- 支持多数据源,目前内置mysql, elasticsearch sql, kudu impala, http四种 +- 支持多数据源,目前内置mysql、elasticsearch sql、kudu impala、 http、oracle 、mssqlserver、jdbc
- 可动态扩展 - +![source.png](../picture/datasource/img_1.png) ## 数据源类型 - 没有找到新增数据源类型?
```text 字典管理目前暂未有页面维护,可自行去数据库中增加你需要的数据源类型。 -表gaea_dict,字段dict_type:SOURCE_TYPE -表gaea_dict_item, item_extend字段是下拉选择后动态表单渲染的json数据 +表aj_report.gaea_dict,字段dict_type:SOURCE_TYPE +表aj_report.gaea_dict_item, item_extend字段是下拉选择后动态表单渲染的json数据 ``` ## 操作 - 只有测试通过的数据源才可以保存 - - ![An image](../picture/datasource/img.png) diff --git a/doc/docs/picture/datasource/img_1.png b/doc/docs/picture/datasource/img_1.png new file mode 100644 index 0000000000000000000000000000000000000000..bf29d28227e2d93e4151f5e59c2f6b03d1e7e9f8 GIT binary patch literal 19016 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 A>;M1& literal 0 HcmV?d00001 diff --git a/doc/docs/picture/dateset/img.png b/doc/docs/picture/dateset/img.png new file mode 100644 index 0000000000000000000000000000000000000000..a852c878f2535620bf7b2c4e202019935f469e2a GIT binary patch literal 19341 zcmeIacT|(v_BS3TcW`Ei;*14QA$E!a(hYsa0-}IY1nG)&By2FQ?JLe(AS7LpPntLP zLO;dUEiYNy?_BP*VbqIV@%|cb7&^62!O=1O=fywPz5V|jb}$+{*)k#;apuVfD@BKh zGoqsRZ%pbroL|L@`kcN$`%Gu?C!zR1Kjh!Zv!mU^R4EoI7Wqx@ztDBEPzZBaeE!`)^K?mGNiL?r#%=;-dSY zZ*_7;%oWk!3QbmJ#B{$E76c?iUVm#bRBs@7^IHpd+cRLP@4c415cqp{7XR+FqdH*~ zeS&qF>^#)9VIzVyhCT-Kp%{jq)B2QgzeICmCL$Sv3^nxY$vf@XZZ1@#{Utv?%H|t%ooHQZS2kQn2aRrho5IQuGCSPTCSGYl?k^xX z>>~Jb`!)2?RbhBS_GB~t6kk;AIEtEUtla^10o#QWcV0@+4@J;=An_=vjMO791PUkE z`Q;~!?|hf+$E%f!x?vB_hHSg0^(2CmpZ&sYP`7xlQ#JkyS_t21OM`lbAK)0vBWpBs zZkDJPc7t|W>xW~vekLFMt}eI+qtymoxU|s^jX7PQ{;PRj8s^(nx9YIArp61J;DzB1 z%vIy8k@z2U(=6re#Fz0~Iy*T>spr0K>UAV$?CG-pyNbE3E`%RAX6vhM#E&JXdTaC7 zY64x*d(!RcxyzIW{$la)cKj$mrNZoH72{Svq4P<34?buVu{r~p&BuPz*ZTJ>YYYuZ ziJNRkiK+F-Cii_p?_zw zJa#k0i|$8+?2igt8;lXLpW!s#sj3IGHYn+4 z^0Vw%>l<63{xm(Kt|D3Ncoy`U3RU)s;IqyYxiuVUc)M0Q=g~HLFl69K;GOSFv}g`+ zWT`IO2d_u`#*s0~55%0gPC(t_sE4bP?v(AqbInUr7EGJ( zb}h{UP#NE3J)&?ID2vQ&g5R!QB=*+D#YOhB@*-}vKkfoiDajT5*Rzry@<~D4vosO> zuq~+wappnFcWb$_y*dWDDbbG?d)=rKJ5@7S#P2OCTtOq1Sxit^bCss}ugQ+O`ydL| z@7*Z~bTj2(ve@g4F>RIa6c{ze_JKrh;-^`UXKf08ERAK6n3HGizO9?|A(h8}x6Vmv zAO1a7e5HCX2=w8sBCz|tkAeU{S5JaLpqBbB;Li_o|4+Z(qOpW$YI!k7?OB`G@lD>g zF@=@=1G(3aewfM4C{&wae68_n+#D_?FuJc3ZoBK}G@T(Ux#0_f&Ke~PtEg0mr9p29 zzAUTk%(LYaEt>g@={kjQ$E@#td^y^A{++7ajvs-Cqhr}C!p-!FqXv5mDr?>$&yr#H zTFx_W&V#i3gwKL|Eq`ft!IN#ii^=895sn2Sq~Bm z*Mr&edFD9=A`;;Xr`*OXp9WUv`^U9|mz{#L+SXJZC!z*2#We00`kx3K8fz%TNRmB? z&7DnfpV=T%eE0nzyK;zC(C{4$p)Co8)3 z&Yd7wcOkWb-`iiW)S`s<4F4*kN(mz^(!(i>*yWYtfhbs0mnl1aMj6Vih|3kCJ}RA2 zK+%!d)Y4pBFyM@szEv_hl<@lf*SoVBf%GNzAox1|jMgWAmE0tfmg*HjeUa{EHv`Z7 zzCdtp4@}3ugfxH|bk^*ik0VSep@}Epz+#S6+tDM+ztxtJzP{ z(O_c5m6QtD;@Z??(eozdVv@xSwP@M*$jCP0PHaGUa2amwa}SrL41sQSY)#MCk_U0?sdy=EQHhz%$XEmm2mW*E;QXo6in^Ms zwL2@)mX(^>S_wcj7cZR<&Jv%G!qdOPy>2+I@mc|aHlp%E zNi-66IDHo5qVp>b{*ig}caje^|0QfD)pQjaWxs(y*V2PEee#Iu!Hq$B*h~q_3}pCr zSsdxqNsDToh-cUyn8nUtG zCm+69nyJ52fDe;v&Pe1LruIk!w!YhiNBjJeOvz;3JO9$`5;Xd92X3S{916 zB9h76cHztQB`$hGjjc}iB^HK&$~@V#gK2}m47Opl8dS{FDv%C^g@D9p*v|EEQaW#i zxogK7fv-XQ1fa8Ozve< z_C_)4tE6FcO;2##GkPkmPl}K4&kX(eX7< zBJf)xisqrzy9Y?QMS1(vPdZ0sD<+)VEN8~-1j8Gtt#~fCg1^z58or$kB}Oj$roG6` zvyMVE#7sx0o}<+)<@MN}iLo-U3G%{^weeo*%-q`(i(eK^^_A~?3+n<~*!JDiDo}4o z%&**Z$wa8yi6A6P*X1(1Hky#0g8JfHE?JC-Aw(x}NDI4>oN6MUd4%d)Et$nM8NZvi zPx}X5*kml^i=3Sk`XK1uM;i6ra=~)kOKQ`DV11=d;!lD;B5nrnPfJ*enXx32-97BY zW(VvSPk51w$`9d8=LFh14eIGb#|ZtLL)qehWg_L-YroSh3$tTh|9!L?<-Oc79@*{7 zUWjY2Jw>eDKvm77kET)#dJbCBHdwi|tyc_H@t2va7#I z5suG^OL{#>?W4>K!;M95>-o&}<%dL#d#tTzHq_WK1uTM)J0lWWECvJNUw>@%GZcov zo$EuOFG{`0wGZVz*~GADyh{dqg2`2*@D8*K>KNEd5bXjNL@PICR`rba1=n>OPq|Z` z`&NzJhhcf7?M22kC7i!P(BiI%*fRi=pu|m=%ah)@q1EBlaa|qHrEJg)`4MtDkTj>EsLKv6j8wovyd_jhAs=8dsmx?+{e>|)(LbB$_M5r@Ak zGH$L)TsAZu-zU%GG^bcE1PjITZ@lgUF&}8%eu>pjG|NOMqk?Fhn$ok^4iAd*2%3;!db}CrLW{ssX?MYmPEDvJhaV^ z!*g2+yy?MZ!dC$YrEn#?`mu2@`F)Kundj`tDcN&XYaDFJEu^L)hu)xe9Wez2b9WFBtW`A>Es~K5-+S+s1rN+<thm6BQ>5IsT)S;B1*x5^zzUswJOfBBIBgsF(Szz3?+?{cz0DtixBo(c33&}@|+8( ztgEWRVgFImia&ObRL%&085I_81{yn7DJE|#(K!j%;`x*A@Oq(tP#=mkc!Z&oPnqND zqywLhU2%M(@LJ*0y5xY}uS#teDM9zqVR|AN0?ig-*CkQXI>wRE~DGclCz zUM)Ty*brweu<;pLr#I3hs!M|=5sz7_liNk^snn|^;S^dG>(UtTj1vmsE_A2 zXXdlXw2D$N1m)uRha(+&A8kiXNwDWL#ZP0aw~pF3e(hlU_GS@;HVfxu&n})1oip@l zl*H?NL9DG)Gc9+*m`&Ox9eiPL5-oabm>f4yqD&I-@)YiPXFb1}Og{0pQhz3s_-dpl zKq8&WS?Exw<(K1e*@qu9HfZm!uay;;;zJ!I9!-7ebRY&Ssw^B@OnEzTV8Xb8W7QQ$ zE&=vNv#jw}Iui_l2D2T*%;{m~k0%0lb z-Y+H#-0o>m==`t?LjF<5CPa`iK@(}Aax+$nG;UGNvp8Jdi8Eju%g>;S+3A;#W2lZ7 z0?xhb+CQiJ9G24p=if<%To9Uxfj#BAoCmPs+Ir##F_&G~lk`8mZ{8-R&V+60?U;4w zAHDFPBSa>TRAi5(0^!mxv_J!LaV6;;H*Y5AqL%j1#h1og;4Y9-Aor-6UAWT};p4j( zstyy;J7z}sT}Vu(gkc|0k|wO(@YmSJP1k)w!t#ACWG(KA7jRzNfi@+ zu5N=ldta(LB9G>gV${MJ0GQVA%cu}=5B@ut{%3m-&^}RMQI<@VX5`xP>qJV5ZY8T) zP593!I-joc*@eU_q~^_mn&cxUZt!dDXwZdI+CxKQn{MG3#DHMK$Q3~l2py0BMB^Q7 z?*lI^MgDtVqYBOZc1T z2&k<-=x~hy=)A4_Lz7cU6DJfLcGu5j!;p>CIs|esG|@;(dmAF7@foC)Vp6IE1Xa3o z0;N>0?3e`t60im^XfzQZThCNE1#-bLFbIT>$#vEICITSPQN#XV#g^#tX#tRG+FR=3 z7l2(0W{whe);&fuv72lPc1s*ft6CkUu!;%ItTxiXw!eyP_|EX?X0IEI3}-XLJnC(R z#o>HnWufn4<%BMw(MWV8G8qDyYK`bIFK~#9p}r_KW*xq@Igt17+IO= zTSnqU%;FvtA1s_JWPWe_8j{0OcHE9Xp|ZpnY+TqiZ%*Kd-5~@SF{0Y{dHaBMRR*1?>Tixjyf( z))!pTWZ6|SoLqD^8gvyV*C&n&KYjMott$y9*4DrCP3SWyeJ)gk$%g$3nJZGEioe+m z)ff(XI02?Hmw544bqELT*W3pGSa{wXkjug}5YlD%`|keKpaE*RYN|Z*hoY|kMvxbZ zXRSgA%H&?Yh{88}HfXSSCh;#?XG{e!#bIG}I*Qlc=V=N3Ds=Wn#(=6^$EOT9%xI&|l-xU$zVS{b1AG5{bc(7+0n2#X|bO$VMfi5ZP z;$+Axaw75xa&Y96t-2y z-@LmZIlv6aPMH=5Ib=&8fu9gNzOP=7k{MT;C&WCCM0jhtpf76fE=|X9?T!Jp=b_2_ zYD$B;xuB@8#Bqt1T*l<7f(=RnkNw<*6n(+|A*K-pvelvP!i&gE=*{GQEHPt=L{dd@a{XK$9WLO5u@ zMUM;~yrA^6Pv+NMVK(!r(mWCG*A5VqT(gh!3BT{}deHdfKKkNVR$LXykzZ$u*I~wF zvwavki+FOVo%wyVI|f)!Utg)wSBuM<`B`}IJ0Txad$X?9^CA?-e~OBwYtJS6gppny6mkOi{^U4!}mZMmoc_2V&Z~P<3GI3~MPHui?w-KP7O}xiy zCM$;QrV0U2%P%>HrBwbX5H~Qqg**x<{Zqlq<|^I&T0t{M z)W~*zDGeL7rLNTMY2%$GM`&E<)E%;IlGrS7kHn41H&X|R#R|Lo;YGNju3H);UV}Y- zs41Y5N7vc-`V$C~d~~(22g`kLfn(mKKYH-k?(B2%JCsB6~<_}uK{8b#5E zcjK6Wo@Eaauf1m2pLe&Q&!8MPMP1+&B&d;_iXw_*ClIO*el*$Foc8qdRtrnhjt>xf z``uG9{&kz~27o_V8MN5E@P)ZHaf*9qCt9_p1knjzGW+N14cr$yp7qPK8T!`>$`4mc zQK6${WZK&AR)s+LtKx7SId4mi(G%%(4qHqMr-P7L4D z*fS=~)P@^F2n(`uVbvhh8ixBqu?31PYzni=jF@CR73e4O93?-q5en6o^iyc)&zJ_= z$-+gHoMv(66CZ@es(1PHwbvd)uq_a7=0Dss@9Q3wZ4n!;UjJ1UY~~TWOzz*_e=hP6 z%?UmI@s!*`vre&$?QZBOb<5&V4BOOLCy~ty6LC7i+}#jz_544_X^!wC=;2a^(f0c) zuen9kBPgS(0_%08O!saN0G}Xsd z%AZ5K5~73^KF=RppVe5g-k5#ZFzbRe3JTg#*OMKC`H>Rc^A;j8gGJI9Rth;|Mo&;` z@3i}+%X-$x8ka%NqDl?BVUpSytev<&fVkG#)_EW8I<x07>(Q83!=U_ z%KMZ)vdd4>K0Uc`=}isCJ3BWj0!r{X(_W_2)A>7Zd05 zTG=&muUU9iQ*kro16xy9I)v!j-9!1oR*U^OQ-O+x+{{hzO^^Xs4p*;{uXYI>zZS#W zbqcm`WC2@JhT7a4yJ?=&z>2`yuGN@;?2iR(o#IAc4j!1tDD&x<-OB`A=M;>pFH*hy zw6rj-V(VAC5401u>u1#mo=o>I-lMFFlBgFY?Mcg}-Zic3CCFm&>P(|cw})ZIFadMh?Aq_$IgZCrW-TO_CI+;t+il75EH z{8=PF z{(HLTYuf(cJLZD=hTetM;-#@qYF49r;~Qv&zOCXh0p<@*|5W!F#aIjd-ACSsvK%Xc z;wX_P=5n|7Hy=mSnxgkG|Mo{Xi}|o!ldKM>u=;%R038TQ5PKamDn-yPta;&Ez2YA5 zrm3;D1rk4cyW|7rMP7~R1Z*-O#dIS1zJ~Lv_1$J0LyFBMM4eS*an||qDfT{$M}Drq zotJ!)QsruNdUub8^Et^B3yr*>k~fVuvNI#bDW2<18Fq%tNtArd#ml7Z!hclvaOIP& zU8+3uaIl`D;UlcY_s)}d8J=YEWD(Zl`MlKBA{8@_^^6xHrMWd~=ISo1)?t*1KM3W+ z+r9=GRLSdshWJ#rb4f1bR*7Hdusd(%L;%jFug+S-nly*Fr_oeDL3dD3eIV(K9E|Ad zsis@niC@eq55;I?-n#xxFAqFF%Z?>e?6(l;^Q`451(GzT&u4N;7!N``-8A0G%jFd0 zWkq%#R>;;Qe+iP9ohasud24>$^!S5%aPDI#0==n^(iV=-gY25mv!6j=ux==V(N;Uv z+^8WB&Gy4!4$$qi9H>T^s34>09?a@7#WFukt7PCxhTl*dPHdtGbAUZE4isG)8Har@ zvLhd;s8XV9@k~ffacN_)ON8N-H?-mkR!{^^tXnTRuQF9{y5E_jNfb8^va-vUqcp33 zo}&gAu4Gie?}b*`exzK_*=hP?}XNu(|LR$*t=8?+JwC5!?36$mo@mTt`-eWaLZ7Q>EBFK0TV`_Q5{n_dJNuZ1Cknxh@> zkqq~&hFLF%>HC-lRAKx&TPJ-?Z{r5*aLqkAxMgzN%Ym9tn=?J#N|owxvNfqC5@Vqu z87MacE33Cz$(S*UmPVdCPicCuc?pL1!t?;Ed5KhvjPsjq6aPj;VdQWIQr*Q>QUaxy zes}9n<8ACrQL>reVkB``GY3@$vm(eS!K+chgIAEBFs2_V!Jwn56 ztf7 zz(wr`*WzkUn7DU-_X6sMU`?1YFFdXX2qCJIrW$b52Q*3p zjn-@$|4}Mx%DO#NRt=)DSmvy zWfVan65XrFO>4pN()3eJdhJx*;)w%v?LL4Fw3WtHToIB!pr*BIO^Q#p_%BpRz7WtZE4`I3m&(em zdCHM^y(OU`x!x4gGKWzYp=4Ov$^{rf0ZAqz4@@4S_0>7vtINc}G)kS3QERrO_(QR2 zV|AOj$YG+my2x_ISb-lvxQ@>k?=`zdj3uw(5(z?X!*#+|Vn5A{2Tt|Je_QZ<_F(CPKV0*!0F{0FT})1LUv%HA(9}2uvsNj~ zDE50Yyd7weX=h8`RXaqLX`KU!SawcKv8=HQW70Q;@X)Y^88=(aOcYqXOEUp{0~Z^q z(sfnuOq>iHP*p#Jx``F{T}wqy5)UlBOZNmsc-^`hUhTfvJU)@W2_X)D-BjNiZq`_7 zurgZ9s4ylRnUHRktX>7EuwWm?rwV_W357MiEDOcqA_4gltMxn!PI~I4Vsvx7mNMdu z76+1+PAD9QpbYmZkSC13{HXJBW&P?jJO35lI9ybO6TEN6zm>G`$adt5%?MYn8kf^sb*5g$JTNl2`scu;AYTMgBhKrcvp)2-9YvMxi+n5_-SB&93?< z#LEXD-pjK3LCWYl_ghBQ>iha^D*&!_tQetAh6@AvIi3Ir9qwaa27naWDG}(wYesT6 zedm1oH@v0&D}Xc|#sO$slunP_&FJab%~qLiG`Z}Y?l8G`LMphg2D4K(D2ocAS`R= zs6AqN(xBkyb4~9DqRut7tyqYIS`O~(1r=yq!*tV|`K&k~p@yYeJwPjv^f{NFZya(b zN5o=6`yL47EdkU64%w!MvWHBiUA^h$k%8Cc%eMb0%KHIyjNAg*0M72b1s&A(uG^{h zdo7oaa=9=^sm zn(H#$=4{~!JJx(+)u>(QTqM4Uq(w0_1yVgXd*rbkoIO8g8xHeJlkLkmd~J}x8kt0~ zTzGkfJT9LD9Vk}tv$|$=$?Bc0rt!5x4TG(BMQ-E1nWx0Dk=h#%g}tir`C;X5LT#7Vy7;HKo~hm@Vlq% z>QK7HyGK)f@an!04eP?nPwqt6Ee=Cz zd8qkMxvpW?odm}c_RqQ7nWt=Bg_T*E4<93Gvqd}MZyTL_3nL@ApM>P!338Y7vT)Og zG+C`D?$k!77s@DR^gt4yF~V1YSNfacejZNB5KsqOhUR4-!$yKYR;h^s20q(bDue>o zzE-{T%n4RuvayM({`D&dpsAC8?oUoNTy=xT?4+9dZd~k5NY7uX%Qnd#m&gy__$Zue zF{!$phsS~6Y1gLlBvHQh^#y671=)>Of^n{hIL`;I3F)qWBhT_&5+qDk7=y$iZjdwD z^-IylAmWG9nW2cq`-1_S@A^P)A1kX1RE;i%9}oal$|-?449^y@8k@(EyICJ!GDGVW zC(y1b1*sC%^G0OYWz}8s@+Pj{w+k$JE6LHc&laGV;S(f zV=q*F(_ZGb*;b}+gY>*kg3v|)i&)JAro$*kPsKcIGUJQHqA@ZI2P!ZLcC|1u57S#( z1T*IQP`uv2IaOcIsJthy?~b4=>JM-9DYbs*$;jM5C6&}VO4xRPXE>FN9SYpSh`p|; z*QanBy0AMsMZx!D$=n3_1h%A&m+J}6F z=+>>e^q$H1;JC%zd(n3O;8F;Gj&G$QoA5Nt~x68vfvcs zUoV&P=QlQ5`e1&4EO8!gO6hsMrF&wRn_;Uvrh~8UwOA8ELIDZ9lhQfwrJ+%`l)Q0zQnz73 z`(U(eR+jHRBN%x5Nq#=ASbc<={uAhRz-O`7T1HTyYEs2?4cAedsi8?Vf2)j7Ay`Hr$P#JRbu)gsI##V22-fa=|;S_iqbHH`a`UTSm zz+w)ZaY4@mhmsKQtqneu&p54{v1e@IWf`~Hm?xl{t~IxQ55r$HZa@WJ7)eN%s^2Jo zONx!5$NdhD1aK&vK}8>$_r%^K6d;{<`*EmU;R zjFwKe3Czbq@L92$+!+9-Nv^(7(jAVnFhq#H6fn?X3h7)C?XssxkD5*&{C$p*2ujaZ zyETr0dvO~;B2`Z4G3_%F_A%dcCL_8>sjIKu_UWC6f9d*9YqP!v!KLyk^qAWCG( zbAxWr;^bqBsXhDq5^e~o%cs}lq`GN)g6l5 zF5_2n<4U^iuv=(u=yTxI0UNIM;;M>qvcSMeh1RVa9_dc!Mc)HjC>k_0XRnC_T3+qC z*l+g+iOVpd_MiW3hTJ@xWqIvYv#JYqHj>Q$^|lirE`rDE08^=MYa}>Em3>`47tBH0 zq6(C(X!%pbRGlO1p4?U-vautiqlTAIHjRxI_@-X`3$DXAt4(JRG}NCtf?P0^;ox6F zS%v{I;RVReZrgAh-ZEK!e`Yvq8HMEeeZF zkRr=LZn(F~r->^KH}aa}qQQ zgkMPQ|Bn|Aoc(^8Rm3#lT!+yfXTT+M$OR<#zdbYPe=%fgt5OTnerk%=ve<6nb-Uhs zvZ-c-mb;))3J+f|gW3ae7P;xKV#g62kMu0oVAeKW`p~;Ttcer4vg-kglb9cW7>KyY z4croY{UU^0n1>oA%=r2q?~7M#!Sk4X4*P4mfziD`?!$u$-WVH(+2mt?G7A%t;pC)59w{rBd#!KP zJl^H~#UCSF&?5GA<5PKF+Nep%ooxzg#W{*^kKIVbily-_lp3+*{L<>Pq>L+SS7^P6ZHx2p-k<07Q zhK)Em1Cqk&W{2}17YsaMRVSQ9Xl9(B2iOf%S$`yEV-$n*eJ|7p>fa`C8|Z8KttUU; zjf4cy!25R=2Js_Nd%efz z@5=pkC3pSp9s(1Go!a`S(=CpA_elASA=c^D-F=~&y-)r+_Z%lQBU=|Z>7D26e)*T9 z0+RwpJzLUIfM)#iMM1#9Z|Pr+stj(U^5S^yj&(cm9>R}rox;9T2Jot=TJ7uvTu#V%gQ~BaC|Kg#DagEw+yBB3g7p#NACNIb)r^JZo zTA5pEQcf_*Z{I6#>G9{vEX_4#*f;W;9yctHe{v$yhegYAYG3=tT?{ho)bq`_M`Gsp zicQgUev}dB5F?#*Zib)iJbpw)@JP9_N&OdycetQ-Cg<(}__gJjv&amyEM=zFIqeA@ zwoXY0$2{uQPSufHWX>^%F2*d`b zq7=Nk`06VG6DW#Kv()WA1l$znnW~;dm^%rlS)2i{eF*Z_i_|)?Zz@TCrM9XU1RKhE zHA#Oc1;^_9FdXb~(t__8E@NmASVY)j$h z*Gss`nUB+u@N3}=Eb6p<3|8xlD%4!(SJTX?On$*9-Ap~fi(~O0#pU2z8QZEZ@}vkH zZ}s!bvBg%`t2^8S6B@O|bINwNi9)ItN0KzvnZpN72Z$p40)Oxt@z9_9k1Yhf)g)$?97v^Sa3#u+lHGg6C(|#^#8YLhne+$PhZEyv zL>Pc%RfJ+FyRoHCnol%F_BVYWT#qg~<7 z=^#~{pOsyo-)Se6RF%q$dQr5mIb9Ju4)rz=>7GBp^lenrs^s1_Mm#&2!hOtVH*d~M zmR3`g&dNafv!V^1YH<#bd;WqzDybJ`Aj$G{;BVQ134y}v&KuXur}hrCjqUYq^)bdH z&;Z|Pxd$cRo{^pZ{l2jL7O=iv`i}$fdw5b@YiG2k!eZn;#ot09zjM?z_eqdMD2Xoi z1Q{jWS5oSakL?-LswJ)}WEDl~)bDRiC|SJKm4&;-JfMmwBIAd_Ss zF5~INojf(1K^-}ubb0bu%4K4Plgv-dpY&8PU_b!+X20dH`piwqcQ~|vs0Me#0PE6f z{~~>^K^JkO$Z7s1a@cR%yy0k4-j9Xpu4M74zG8x?w32SL?aWZYXdHGvNoH?|O)z2n z<9x((NPO;sy+<4GOA5rhvFUNT;F+xC7-@xLZu5BxA@*DRA0K#WDWnT-e>I8>9n8VvtPeiosy1X;Q%CDazqUNqfsy#E#2bJA>rLWAlR;+QuqFFPp{_k2N@F#2S826Wz0K^6-bP_H_E6jiK8r z#}r$nLieaW*w~EoX%F>fdSwWnG>j~QfiHvd?Xc#5NGa*U(s1A#PLx@%G}HG~nP%oA zZcCpKc{N|Wv@h`fBt{I461UB{HF5;YDbQshNLLJ|ooL!$Y;|P1f5{Ma{)o~Bsn7@1Y zudd0z@I_aB6?N@DgZvf$>I*GFyp4>=)C;nI^`oMCKxF9hY7q`QR5mFP7a^wb*QT|Q z{d4k940(Fv`@%JQAN|$kx#EJJb^&uF&_;iqIzSm~o7?pI;aQYs#=*Y~d|nJK_E(Qh zJrc4p;ZcfOY8HmlJZ3MD=f4h#625!ifcxX?zLw}{YXtDffE>|?!L-=j(A5RF)gS<&K%hlK5A_rP^0hR&8Fsz^ puDS|D5mp{+aVKdzi_+@4fG}SGo3DYwz{qp`JR+ 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 literal 0 HcmV?d00001