From 3719b73ec409815d84aaf53f1c35b8149508d46f Mon Sep 17 00:00:00 2001 From: lion <120344285@qq.com> Date: Fri, 7 Mar 2025 17:14:41 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A9=BE=E9=A9=B6=E8=88=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 18 +- src/components/Progress/jscindex.vue | 179 ++++++++++++ src/layout/components/Navbar/index.vue | 2 +- src/main.js | 2 + src/router/index.js | 12 + src/views/dashboard/index.vue | 2 + src/views/jsc/components/all.vue | 362 +++++++++++++++++++++++++ src/views/jsc/components/car.vue | 140 ++++++++++ src/views/jsc/components/evection.vue | 150 ++++++++++ src/views/jsc/components/level.vue | 146 ++++++++++ src/views/jsc/components/overtime.vue | 147 ++++++++++ src/views/jsc/components/total.vue | 153 +++++++++++ src/views/jsc/jsc.vue | 124 +++++++++ src/views/jsc/static/icon1.png | Bin 0 -> 3187 bytes src/views/jsc/static/icon2.png | Bin 0 -> 3117 bytes src/views/jsc/static/icon3.png | Bin 0 -> 2973 bytes src/views/jsc/static/icon4.png | Bin 0 -> 3607 bytes src/views/jsc/static/icon5.png | Bin 0 -> 643 bytes src/views/jsc/static/icon6.png | Bin 0 -> 626 bytes src/views/jsc/static/icon7.png | Bin 0 -> 469 bytes src/views/jsc/static/icon8.png | Bin 0 -> 753 bytes src/views/jsc/static/icon9.png | Bin 0 -> 755 bytes 22 files changed, 1427 insertions(+), 10 deletions(-) create mode 100644 src/components/Progress/jscindex.vue create mode 100644 src/views/jsc/components/all.vue create mode 100644 src/views/jsc/components/car.vue create mode 100644 src/views/jsc/components/evection.vue create mode 100644 src/views/jsc/components/level.vue create mode 100644 src/views/jsc/components/overtime.vue create mode 100644 src/views/jsc/components/total.vue create mode 100644 src/views/jsc/jsc.vue create mode 100644 src/views/jsc/static/icon1.png create mode 100644 src/views/jsc/static/icon2.png create mode 100644 src/views/jsc/static/icon3.png create mode 100644 src/views/jsc/static/icon4.png create mode 100644 src/views/jsc/static/icon5.png create mode 100644 src/views/jsc/static/icon6.png create mode 100644 src/views/jsc/static/icon7.png create mode 100644 src/views/jsc/static/icon8.png create mode 100644 src/views/jsc/static/icon9.png diff --git a/package.json b/package.json index 25528ee..c7cc7fa 100644 --- a/package.json +++ b/package.json @@ -15,30 +15,30 @@ }, "dependencies": { "@riophae/vue-treeselect": "^0.4.0", + "@vue-office/docx": "^1.6.2", + "@vue-office/excel": "^1.7.11", + "@vue-office/pdf": "^2.0.2", + "@vue/composition-api": "^1.7.2", "axios": "0.18.1", - "echarts": "^5.0.0", "bpmn-js": "^7.3.1", "bpmn-js-properties-panel": "^0.37.2", "camunda-bpmn-moddle": "^4.4.0", "core-js": "3.6.5", - "element-ui": "2.15.14", + "echarts": "^5.0.0", "element-resize-detector": "^1.2.4", + "element-ui": "2.15.14", "gojs": "^2.3.11", "js-cookie": "2.2.0", + "moment": "^2.29.4", "normalize.css": "7.0.0", "nprogress": "0.2.0", "path-to-regexp": "2.4.0", "vue": "2.6.10", + "vue-grid-layout": "^2.4.0", "vue-router": "3.0.6", "vuex": "3.1.0", "vxe-table": "^3.8.22", - "wujie-vue2": "^1.0.22", - "moment": "^2.29.4", - "vue-grid-layout": "^2.4.0", - "@vue-office/docx": "^1.6.2", - "@vue-office/excel": "^1.7.11", - "@vue-office/pdf": "^2.0.2", - "@vue/composition-api": "^1.7.2" + "wujie-vue2": "^1.0.22" }, "devDependencies": { "@vue/cli-plugin-babel": "4.4.4", diff --git a/src/components/Progress/jscindex.vue b/src/components/Progress/jscindex.vue new file mode 100644 index 0000000..be049d2 --- /dev/null +++ b/src/components/Progress/jscindex.vue @@ -0,0 +1,179 @@ + + + + + diff --git a/src/layout/components/Navbar/index.vue b/src/layout/components/Navbar/index.vue index 5da3745..9de932c 100644 --- a/src/layout/components/Navbar/index.vue +++ b/src/layout/components/Navbar/index.vue @@ -52,7 +52,7 @@ - + diff --git a/src/main.js b/src/main.js index 00dddd3..9924559 100644 --- a/src/main.js +++ b/src/main.js @@ -39,6 +39,7 @@ Vue.use(ElementUI) // vxetable import { VxeIcon, VxeTable, VxeColumn, VxeColgroup, VxeTableEditModule, VxeTableValidatorModule, VxeModal, VxeToolbar } from 'vxe-table' +// import vxeTable from 'vxe-table' import 'vxe-table/styles/index.scss' Vue.use(VxeTableEditModule) Vue.use(VxeTableValidatorModule) @@ -48,6 +49,7 @@ Vue.use(VxeColumn) Vue.use(VxeColgroup) Vue.use(VxeModal) Vue.use(VxeToolbar) +// Vue.use(vxeTable) import domZIndex from 'dom-zindex' domZIndex.setCurrent(2000) diff --git a/src/router/index.js b/src/router/index.js index 6160efd..b809c79 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -89,6 +89,18 @@ export const constantRoutes = [ meta: { title: '首页', icon: 'dashboard' } }] }, + { + path: '/jsc', + component: Layout, + redirect: '/jsc', + meta: { title: '驾驶舱', icon: 'dashboard' }, + children: [{ + path: 'jsc', + name: 'jsc', + component: () => import('@/views/jsc/jsc'), + meta: { title: '驾驶舱', icon: 'dashboard' } + }] + }, { path: '/info', component: Layout, diff --git a/src/views/dashboard/index.vue b/src/views/dashboard/index.vue index f8d3e63..7fe355b 100644 --- a/src/views/dashboard/index.vue +++ b/src/views/dashboard/index.vue @@ -67,12 +67,14 @@ export default { computed: {}, created() { this.$store.dispatch('app/getLayout').then(res => { + this.layoutList = res?.filter(item => layout.find(lay => lay.i === item.i)).map(item => { layout.forEach(lay => { lay.i === item.i ? item.component = lay.component : '' }) return item }) ?? [] + console.log("this.layoutList",this.layoutList,'res',res) }) }, methods: { diff --git a/src/views/jsc/components/all.vue b/src/views/jsc/components/all.vue new file mode 100644 index 0000000..e53429f --- /dev/null +++ b/src/views/jsc/components/all.vue @@ -0,0 +1,362 @@ + + + + + diff --git a/src/views/jsc/components/car.vue b/src/views/jsc/components/car.vue new file mode 100644 index 0000000..e6f2200 --- /dev/null +++ b/src/views/jsc/components/car.vue @@ -0,0 +1,140 @@ + + + + + diff --git a/src/views/jsc/components/evection.vue b/src/views/jsc/components/evection.vue new file mode 100644 index 0000000..01e1241 --- /dev/null +++ b/src/views/jsc/components/evection.vue @@ -0,0 +1,150 @@ + + + + + diff --git a/src/views/jsc/components/level.vue b/src/views/jsc/components/level.vue new file mode 100644 index 0000000..a6d5554 --- /dev/null +++ b/src/views/jsc/components/level.vue @@ -0,0 +1,146 @@ + + + + + diff --git a/src/views/jsc/components/overtime.vue b/src/views/jsc/components/overtime.vue new file mode 100644 index 0000000..d011eaf --- /dev/null +++ b/src/views/jsc/components/overtime.vue @@ -0,0 +1,147 @@ + + + + + diff --git a/src/views/jsc/components/total.vue b/src/views/jsc/components/total.vue new file mode 100644 index 0000000..a236da1 --- /dev/null +++ b/src/views/jsc/components/total.vue @@ -0,0 +1,153 @@ + + + + + diff --git a/src/views/jsc/jsc.vue b/src/views/jsc/jsc.vue new file mode 100644 index 0000000..fbc8f91 --- /dev/null +++ b/src/views/jsc/jsc.vue @@ -0,0 +1,124 @@ + + + + + diff --git a/src/views/jsc/static/icon1.png b/src/views/jsc/static/icon1.png new file mode 100644 index 0000000000000000000000000000000000000000..710fa42d8b1df2e0dadedca41833bf25c1803ba6 GIT binary patch literal 3187 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𝓋EA>3H#Xma@A0H&(f^g|{neJ8P92Vk#Y_wD zhAwqpNfzFqGfk$cXt&IupemDp0_W>auAI89a#vBG%fq_+RRS$pc+mx00*(Q@AXvCL zhl=@@+csUXEY-6ve?mRg_8|eS;Ht;;)e|o7YN!e5wkj+fsq?Ck5gvA0tl9*g{BDc> zKLuqaYW!Y31$dO6w|01H0`z*Qr~&TK9Z+v-ceq}tr(Cc*GGIG>cv_~F7xl8!@oKXx zlvMrbs=v^jF^4=}Eq9!gxhxs3Gf4?Z({HyK&|U6C>^YPwO{saGhVBcz==kph=lke6 z$kh`n1qP;tOVEAXNoJ*KT13eJA-$FCD!lKXRpbd>>bbMsjYT8m>o6=@^53osvyWUZ zCH*-8FFh(L#q7zIH-Tr(wM`9xyIRt=wuY2U>y}#T=JCa_(B>vwCuF-deJnheDMExY z5(wP1bhCBoYVcTP3kwUz5({*fJ84Y8ZW2PtT2`E+FY|8_+w5_qX+Ff$DF1#UL;CFoKG)R?mF##HQXMkuyQvsM-^ z0k?HS7me-7vMU32W>_c{(gi*JU6+QKF1YElZN9tSVWH_-B>2+zwn|ds)h!>FVnXjS zK&1=akXjZ6(AFtJ>(uZut=tAbv!7cyjwqj3PE6=#MQT>CB>}L@vg-}p=F_ERR@mo+ zO~5-oHuutH08G|Po}lxpET!_BpMAjFl9{KpE-K`usw6`n@EG7-ply(=g>M5O`Exwr zRs}jyC2z5H889U9SODAHN8auvT|Q~u1=a@Iw#}(ZUmHvx$X2PEcSH!}JmT=I?|gl7 zFyypiyr=1ck8lAH_OG>k+>OunV8wnh)&@2A6N#w&$^`r$HqF~qr&gK400000NkvXX Hu0mjfgP0Rt literal 0 HcmV?d00001 diff --git a/src/views/jsc/static/icon3.png b/src/views/jsc/static/icon3.png new file mode 100644 index 0000000000000000000000000000000000000000..e538db683240db0b07c881128950dc3aa8a7866a GIT binary patch literal 2973 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 TFv#7R00000NkvXXu0mjfz`oFY literal 0 HcmV?d00001 diff --git a/src/views/jsc/static/icon4.png b/src/views/jsc/static/icon4.png new file mode 100644 index 0000000000000000000000000000000000000000..3befb84a45c95af3961ad51709e6939826a61ab5 GIT binary patch literal 3607 zcmV+y4(RcTP)( zdyL$~9ml`p_3mCa_u%s25km853j|0BNkv*fB0O3ke-sc3q@mD?LZP%3jZ_s>(b6gs zrR5DmMTr`!6etu4H7T?L6exs;l)@!6P-l^PA3(EMJ&l{1?aAOKeZAh2L1hwOwOs@qz(o!c z!N2*>sbK565GqjodjV`F_zY3(mq@h&S3wqSW$&r%)k7l4{5Jd=5qySleh(B^8`(TyQHzTDMBtMEj{}--1}oEyv$wQ}S!@XyTL9ooU^oWAWB|D& z&T3Q%KtBlf1K0&Z+DMkXl9`ilBRRuXz)uZ6Zj~a-$-@8#Tl<6JOx8!Q2W3|P9^kQ{ zk71A}jYeZlW_H6q0MrLb74StDAr){HY=hrA`%2SkxBV+ntQf@zPOB0Ovd%an^V`g^ z`A#3W3_g-THzFM4VF!@IE#o)S+A*-49*}Nz&u=f;i zm*jIIVOJ#{xTw|^!`?l(9E@E#?jxITlwE7@9=tRLbfIJ^MRcg4RN{16N3jxHr89WO zl30n|K|iyna;Zg}h`0+7Ri*He?E$CV_AfxtI^m-GaGUBJvTos`oChzI!2yQAd{swD zKPk^9HoJV{vi6(JR?tpshM)uGqrEE1qf*MS+)ewO?}H#av1xlPPkZcZ6cJ8DV9gL< zQFMo)n{Zej4lV%^+M0NBa48t>1Q{Co2do$eeW)H64SaaeLlN#Auoi(~x-PK!)6YQm z)I~7o%mJBpq<2`>-wV3G1J<^;QF`qq(4L;y_Keo4$e*CMXHH2v&W6u$d|NZ78-ljfu4zSYQ`wkXwk1dTDA647y1u@wz``1~E}6xggZ z9gR8n%V_%L?TI4DRsQ^?XuRrrq0OcnRwBRT8;NZ;uet}B88g#&o{W7l!K9XSXfK+A zHNnV{X}oK``8SEd1Zr5e0_L3KtL$Y@n2-F@OKP^+e9I~w<;pZcr6R4zjnIp#3Z(*_ zpirw{`Gt#N9CK{Va9kCZUtMLh@a?Np*~`qHi`*#-(($hRR47U(!g@T2a1nGq!VM6w z)#O<2%(GL$ag|;0RghfHvqvTsV9sBd+Gg&oC251aK~RTF2S3S1nkgL1d|`HKIButy znK{d|XU?7rVy3^X#`Nu_jB-8&^RR~`n=KSYdDPswQbtQ_YB;Vkty3!7Bc^DvNA%c{ zb(rA6s|G&9BYoKQN+8oM<#n7|#`A`0h;CQjwWFu|6xNEo*#_=Wve#Pz8<7GFJG!uLii7g-VjH5iabXTy7$~@kT7mi0Pj4YBZsTs z4SCF0DQfsBoU-28s*jRJ=$>DCfh!gDn`ZS@O5s%L)fe;-ihXJ^L@7$IZ`1{x_m20{ z`*+lDn%rsD?iKC*90QN8)<8)g@%}$P05&*~lJ<}vDt1GP`iYGQU#YPTKJx_1ufLQE z64Mmjr5FE!;>Hc>Syx9mgxo?(awCwI6YYI)6()BdLc`L_YTDl*{uj-t-I?MuPoe*@ zKj=wI)f$#UcqJ=lH96S-=tHpDUPJzym%uz}0gT4x*!!|vwvycP`9#NLpLfA(--_b% z>tXHuPrYGFWhU5x=ybBYW2@KP;kr3vHqg`z;tr0O;^tGsfW52T^VDi@L+`z}c^#kJ zV*+MdKu*+o6IU9pk1G${MM_9_Zw}EN=m6R z=|%V~ps@ucn^lh>i2-}}4$$t;U`&|~bM6Td5pIB47SP)b`{TV}R$2cEs5Ok(r~%K- zTY&ue7sH&FEQj|#@N1Oc+=T2&3(!Pk^hyL=7w^J~8_{rK zZB+`aa>b8wDba4ExfQvuo#VCQKcB+DUmmXQ_$iev!c$GqR@C^zTajCQPC6r=AGJ?j zHC(jJyM?0vk-O6QQG=2p^lISR+oYw-)59hqKT;@v_C;to_u|y&l+=%ez-wA#O}=uFr^0 zq7jR5=GdA}%c=N59WBs#I#op(7?9txt@!4rQ9Umt1OdwVo zgmdttioN~r?4O<5Cf)zh|1WU&c7j@)wPjO66vJijXan5TUwfR@p2*`&cS_&b~dccfVcF2#@vXcimPs>t9p*qn*X) zo`Ah?chzh5-t8#8{P)`ZSv~TPnudW#foAR_IB6om?%0jKhi^;lWciKfFt}l@(B{Bj zA4GZc#>6&zAGih1r~A@JH}O^%ie~34X-XML>!9_{8|b<7C$K+={*{Lf^kMMn)#!ih zZl%rsb-zP#!&>jxqbS+Cx1;BdAHjaFO$Y1>6Ar2pVb{tFNY$f(haaTMhnoBFOo3VS zaR9RtT_lCFCoe|!gwtTmn1f8~krl58`#?K8VC~w5@|IV?1`<5Q*3^pJ!n0w{JsHNd zV?Y`vdmNlY2jO(=fxUAptoF^i+z+&eWR0r;5B#9No>tI;2dwPiDL2)?hhJ37EmJzc z^Z~cFZ}ys6@v8v0rY^p`9&npf3G28h5qzXrDQ=i};HniX-Tdw5fv@ZJc#MnSy%_9< zB#Lm+I)3nhYrG?Ke25riOT^lTRb0*R9|GuAMutUjWwJ&#Y@Ho#!v1+Gq zq$%rZd86+35D3;z;OJfhpgXi;1Rt2v2sae4hedYi01lYfVWhjeer)PFFl?$~Q4L7eR41fOkgt#79G0 zKyhDaAsSl%U6jkK!~+*ac-UBQ04vn`KyfF4m&a|+23`ckz5WE16=EQZa@lCJs!Cx) z=Edp62_4Avw}+oGr&t4n>;%D;{*o5sLH%G@2g+XaBRkwI0d!Hvi7<58z=w};!#5f% zQ&ASKpg`Fs5NwA*mVtPaT$wQn-SIj`%AN*8mjtvZ!W|WCC?>B0*hCQF)oZAPzj&3s zKZC>ElJOZB#9ejybO0^&CZtJSVAu@GHiDtkhZ=w`rHJr=Yt`fx;jRi_so27(=79(M zF&u!y+~wGwhJm>tehZ-C;}U@FnkEcc7kG$pr2B~wjy9Fb9h*M zlso>`7IrBW$xBJ<&ZD#U1uN!2u&tN)uXwn09|(H)ecnmxGkJn*QswlM<0RU>KHSVPqK=oXFC`Qr=ALRp$n zosjIS87IPJk*-rw6LTWqe5CWEOVxl!Dp^@bxGf~mRp}%Xf^7;)$&u_h`DmjG;QTZO zAI))w^1|pwj9+c|9VqvnD!O^ls&)N%(7M2@^0%r=5rG%Y3`UlLyi_?nJj@S^a<7M- z&xE2o6RO?$3Psjwj#Pw;fQzT0s{x0%ECP09StxQ+1wH&8^C5;E=X16!caL^i$fp(& ze9`-|PEy2cNO4jM51nzK!cH5Zts?*}T_UuOu*2uVZ}}*f!H=Bh792;YIKRB}(D{y( z?_j9_uqv`g8@Mc|i?&f^pAt3_-0C1pFN^~i{7qwmu2*L%@}K{A9PqNn+Z6pRRFZp3 z0)uhDg9EPuErXmEz6^jUpCbm`RGYYx){)zrpftA+ONnswY2{ dRX?8q{0}kaTd@>tVB`P*002ovPDHLkV1i)O7WM!D literal 0 HcmV?d00001 diff --git a/src/views/jsc/static/icon5.png b/src/views/jsc/static/icon5.png new file mode 100644 index 0000000000000000000000000000000000000000..bd3cc72b28952d79e2982e2aaa867f096d3e5f31 GIT binary patch literal 643 zcmV-}0(||6P)b0006?NklflDT%bFSHeV&l5~rKA$d&<7|3hpk)hyw;nsmvP=_6Dv!aqgpXKhu&*yreuXy}h*5ZsPaTlo!C!LYeT|)DR?mv)3G{wFbg9(AYXw^G323Y z78S^R8PFyn!v5Llc?j3(4u}H|Vna;2s~BA%(_2<*gW>`Diak|&Wu^AV@n4XC4t0r> zHRT`SL4T0njoIHFlV}=t<9>nc!!QT3hUro^(@*eBGf^MEP*zR%F*mSRU=3G=8+F4p?_{vd7QpHH<;yzf`;KpsAa{{@ByufzBG duD{OCrC$Leb!aU4Vx#~7002ovPDHLkV1k7AHqrn9 literal 0 HcmV?d00001 diff --git a/src/views/jsc/static/icon6.png b/src/views/jsc/static/icon6.png new file mode 100644 index 0000000000000000000000000000000000000000..4509f8ba35d721240139f587d5fac71ed4960e36 GIT binary patch literal 626 zcmV-&0*(ENP) zE7L6GV>HZaB&k;^O|H(aGn$$z&T(Su#h~A z0@p*q)2gUC(gnZ>us)N_Vp}M9VwKGr=Mzf!3CgdXpF#8kSOIJSZUcSRp>C&dfi=JY z@akXLLXj-&83+1-wV~im>er}FGL#?Ls30fe+0n93!r!2>0I4txi?grlLy zL(r*&f@Q$5|6y~UL6chHalkys=^$I)2i#RbxEa#h-FH&wXIG zigIL@#Plvtf?pz@t$N&HU literal 0 HcmV?d00001 diff --git a/src/views/jsc/static/icon7.png b/src/views/jsc/static/icon7.png new file mode 100644 index 0000000000000000000000000000000000000000..87a21ecbf3a4da27509fc7d0a6a9a6102979f117 GIT binary patch literal 469 zcmV;`0V@89P)P000>X1^@s6#OZ}&0004;Nkl@EFYktH4m4!55N2VA96!w1j;w3CV~PyE6Vh8<&I(JfY7AUV&4=rhWjr zQ%2j2w#{;Nv=Cra@a&XYsrRJB=O*u8vRfkG7Ncw6CFQfOSKmOtEdik2Hk{FlYF;xD zk`-XbRNdt&=Dbveu;M!}{b+BpgyaHf1Lm~i(J}undqW+E5|Tq;!iK%@2h!Z=sR53F z1shIj#ciCop)V-{aGvCkg$T*8kX#DMax;KL2n6@UIIt%qqZV+G6+lW(w(K!p2F}c^ z%wEb0NQ7v`Cr}YG2+NHEs3-ASQ2|bDSjq~h3t~a@=6cmC*m#-cIoIV=3g|v#=Wk)f zch0UJA$iW}6#jC5Knx@dZgS{6N<{$wNskor00000 LNkvXXu0mjf4zbQU literal 0 HcmV?d00001 diff --git a/src/views/jsc/static/icon8.png b/src/views/jsc/static/icon8.png new file mode 100644 index 0000000000000000000000000000000000000000..558bd3b8ae0fc081abb034c00e384436a6d21511 GIT binary patch literal 753 zcmVVl&|0008GNklYN!C(qZ6b1GDOt3*P-=bV!VRquE|hUYAz2qXN}=448xj_)T=^=? z1;rI9ANeSeh%HgRj-J`)-KO=YAY@i0;7!2HEP;Swz}!l}=Qy?`NzFm%KQ8IUh8$o~BQUrq zyf!C%P?npM;1hDfpLJVeVzf<0uw!BowO!ewLWRW5reYU@Voy2m!-}J&I4l{ z;4W)e7K6^v8lVNJ1AYLHflh0XX1n7J#?Lu1^4;GmJf5m9_Ngrv*V66(2JD=fDO{r7qn94&h$QD)&i6N+ jnQWmvytI9=Brw1~{5O`}xN@kL00000NkvXXu0mjf#!OPh literal 0 HcmV?d00001 diff --git a/src/views/jsc/static/icon9.png b/src/views/jsc/static/icon9.png new file mode 100644 index 0000000000000000000000000000000000000000..e3f43250a7b1b637022e24e2c7dfbdc0ce7536be GIT binary patch literal 755 zcmVVl&|0008INklM_iTa=Ou!i6$YE|74cQ3{vbhznU?F%D~ z?G21A@IBe`Bi7~ zFyITY75G??RMhDxaMPJwC-4Y3SCIS#a02*Kid=C4cw4~ES%_9GX}i&?oR#$4^H~a9 z0wz@7Y?*hgHL%=hjHw?Iyi(DrlT7Ieu`EuZ{-tPboTVz;P)DHs&$e~@WA^b;Y|&kv3!bc#qCt1`eqc&o1BxHo{?z1BAAg8F!zh_OKW(5+k5W-$!B}lS z0Ph{fJC#c@W@|fS6BLPYe>zuwmdj(0CCk`x4Opu^L`ol6l1ma%Fv^h2Z&Ek#RG%fq zUd&O3-O>MoQp+wy$4R4hla*Knkt$|k5I7C24+93}D&u*KUj3gN(C20iM~7}?A$