From 4a8b985b99560e7016b512d5f8eaf6b58493dc2d Mon Sep 17 00:00:00 2001 From: iczer <1126263215@qq.com> Date: Tue, 4 Aug 2020 19:23:16 +0800 Subject: [PATCH] update docs of authority; --- docs/advance/authority.md | 225 ++++++++++++++++++++++++++++++++++++- docs/assets/auth.png | Bin 0 -> 41959 bytes docs/assets/permission.png | Bin 0 -> 20787 bytes 3 files changed, 224 insertions(+), 1 deletion(-) create mode 100644 docs/assets/auth.png create mode 100644 docs/assets/permission.png diff --git a/docs/advance/authority.md b/docs/advance/authority.md index b20e814..810e2ae 100644 --- a/docs/advance/authority.md +++ b/docs/advance/authority.md @@ -3,5 +3,228 @@ title: 权限管理 lang: zn-CN --- # 权限管理 +权限控制是中后台系统中常见的需求之一,你可以利用 Vue Antd Admin 提供的权限控制脚手架,实现一些基本的权限控制功能。 +## 角色和权限 +通常情况下有两种方式可以控制用户权限,一种是通过用户角色 role 来控制权限,另一种是通过更细致的权限 permission 来控制。 +这两种方式 Vue Antd Admin 都支持。 +我们定义了 role 和 permission 的基本格式,如果你获取的 role 和 permission 数据格式与 Vue Antd Admin 不一致, +你需要在获取到 role 和 permission 后将其转换为 Vue Antd Admin 的格式。 +### 角色 +Vue Antd Admin 的 `角色/role` 包含 `id` 和 `operation` 两个属性。其中 `id` 为 `角色/role` 的 id,`operation` 为 `角色/role` 具有的操作权限,是一个字符串数组。 +```js +role = { + id: 'admin', //角色ID + operation: ['add', 'delete', 'edit', 'close'] //角色的操作权限 +} +``` +你也可以设置 role 的值为字符串,比如 role = 'admin', 它等同于: +```js +role = { + id: 'admin' +} +``` +### 权限 +Vue Antd Admin 的 `权限/permission` 也包含 `id` 和 `operation` 两个属性。其中 `id` 为 `权限/permission` 的 id,`operation` 为 `权限/permission` 下的操作权限,是一个字符串数组。 +```js +permission = { + id: 'form', //角色ID + operation: ['add', 'delete', 'edit', 'close'] //权限下的操作权限 +} +``` +你也可以设置 role 的值为字符串,比如 permission = 'form', 它等同于: +```js +permission = { + id: 'form' +} +``` +### 设置用户的角色和权限 +你只需为用户配置 roles 和 permissions 两者中的其中一种,即可完成权限管理功能。当然你也可以两者都配置。 + +获取到用户权限或角色后,将其格式化转为 Vue Antd Admin 可用的格式,然后使用 `store.commit('account/setPermissions', permissions)` 或 `store.commit('account/setRoles', roles)` +将其存在本地即可。如下: +```js +getPermissions().then(res => { + const permissions = res.data + this.$store.commit('account/setPermissions', permissions) +}) +getRoles().then(res => { + const roles = res.data + this.$store.commit('account/setRoles', roles) +}) +``` +:::tip +注意,存在本地的 permissions 和 roles 都应该是数组。 +你可以在 /pages/login/Login.vue 查看完整的用户角色和权限设置代码。 +::: +## 页面权限 +如果你想给一些页面设置准入权限,只需要给该页面对应的路由设置元数据 authority 即可。 authority 的值可以是一个字符串,也可以是对象。 -### 作者还没来得及编辑该页面,如果你感兴趣,可以点击下方链接,帮助作者完善此页 +如下路由配置,则表明 `验权页面` 需要准入权限(permission): `form` +```js {5} +const route = { + name: '验权页面', + path: 'auth/demo', + meta: { + authority: 'form', + }, + component: () => import('@/pages/demo') +} +``` +下面是 authority 的值为对象的写法,这种写法和上面字符串的写法具有相同的效果: +```js {5-7} +const route = { + name: '验权页面', + path: 'auth/demo', + meta: { + authority: { + permission: 'form' + } + }, + component: () => import('@/pages/demo') +} +``` +有时你可能需要通过用户角色来配置页面权限,我们同样支持,用法和上面类似。 + +如下配置,表明 `验权页面` 需要准入角色(role) `admin`: +```js {5-7} +const route = { + name: '验权页面', + path: 'auth/demo', + meta: { + authority: { + role: 'admin' + } + }, + component: () => import('@/pages/demo') +} +``` +:::tip +当你未设置 authority 或 设置 authority 的值 为 `*` 时,等同于该页面无需权限限制,我们会忽略此页面的权限检查。 +::: +:::tip +当 authority 的值为字符串时,会以 [权限/permission](#权限) 验证权限。如果你需要以 [角色/role](#角色) 验证权限,请以对象形式设置 authority 的值。 +::: +## 操作权限 +在一些复杂的些场景下,权限可能不仅仅是页面层级这么简单。在一些页面你可能需要校验用户是否具有某些操作的权限,比如 增、删、改、查等。 +为此,我们提供了 `权限校验注入` 和 `权限校验指令` 两个实用的功能。 +### 权限校验注入 +通过对Vue组件的实例方法进行 `权限校验注入`,我们可以控制该实例方法的执行权限,从而精准且安全的验证用户操作。 + +比如,QueryList 页面的 deleteRecord 方法,我们希望具有操作权限 `delete` 的用户才能调用此方法。 +只需为 `deleteRecord` 方法注入权限校验,按如下方式配置 `authorize` 即可: +```vue {9-11,13} + + +``` +如果用户没有 `delete` 权限,调用 deleteRecord 方法,会看到如下提示: + +![无此权限](../assets/permission.png) +### 操作权限校验的类型 +`authorize` 会根据当前页面匹配到的权限类型([permission](#权限) / [role](#角色)),来判断是使用 `permission.operation` 还是 `role.operation` 来进行权限校验。 +如果当前页面同时匹配到了 permission 和 role 权限,则默认通过 permission.operation 来进行操作权限校验。 + +当然你也可以指定操作权限校验的类型,如下设置即可: +```js {2-5} +authorize: { + deleteRecord: { //需要 注入权限校验 的方法名:deleteRecord + check: 'delete', //需要校验的操作权限:check + type: 'role' //指定操作权限校验的类型,可选 permission 和 role。这里指定以 role.operation 校验操作权限 + } +} +``` +### 权限校验指令 +有时我们可能希望用户能够更直观的了解自己的操作权限。比如给没有操作权限的控件应用 disable 样式,禁用 click 事件等。 +我们提供了权限校验指令 `v-auth` 来实现这个功能。 + +比如,我们想为 QueryList 页面的删除控件进行 `delete` 操作权限校验,只需为删除控件设置 v-auth="\`delete\`" 指令即可,如下: +```vue {6} + +``` +假如用户没有 `delete` 操作权限,则控件会被应用 disable 样式,并禁用 click 点击事件,如下图: + +![权限校验指令](../assets/auth.png) +:::warning 重要!!! +v-auth 是我们自定义的一个 [Vue指令](https://cn.vuejs.org/v2/guide/custom-directive.html#ad)。因为 `Vue指令` 的值需要是一个 javascript 表达式,因此你不能直接给 v-auth 赋值为字符串, +需要把 v-auth 的字符串值用 ` `` ` 包裹起来,否则可能会报 undefined 错误。 +::: +### 权限校验指令的类型 +你同样也可以指定 v-auth 的权限校验类型,可选 [permission](#权限) 和 [role](#角色)。它的校验方式和 [authorize](#权限校验注入) 类似,如未指定则会自动识别。 +`v-auth:role` 表示通过 `role.operation` 进行校验,`v-auth:permission` 表示通过 `permission.operation` 进行校验。 + +如下,指定通过 `role.operation` 校验删除控件的操作权限: +```vue {3} +
+ ... + + 删除 + + ... +
+``` +## 异步路由权限 +异步路由同样可以进行权限校验配置,它和正常的路由权限配置基本无异,只是无需把 [authority](#页面权限) 配置在元数据属性 meta 里。 +你可以在路由组件注册时设置 authority,也可以在异步路由配置里设置 authority。 + +路由组件注册时设置 [authority](#页面权限): +```js {6} +// 路由组件注册 +const routerMap = { + ... + demo: { + name: '演示页', + authority: 'form', + component: () => import('@/pages/demo') + } + ... +} +``` + +异步路由配置里设置 [authority](#页面权限): +```js {11-13} +const routesConfig = [{ + router: 'root', + children: ['demo', + {router: 'parent1'...}, + ... + { + router: 'demo', + icon: 'file-ppt', + path: 'auth/demo', + name: '验权页面', + authority: { + permission: 'form', + } + } + ] + }] +``` diff --git a/docs/assets/auth.png b/docs/assets/auth.png new file mode 100644 index 0000000000000000000000000000000000000000..132dd4123263c6b172e1d50110b30c167a643984 GIT binary patch literal 41959 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 z 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
Mbho^6vU>C%m>-D$ZB*+!@ z*4rl^SLRfkK#|!_x}c~i6z(!eG4@(vOnwRjlnQ0rHiPkQm+d-Y$;8L91pFqlzqFjS zKV2VAKiwSPJztIQS7sv`yWDSv`0bDpJyg6sR-F00J<(x&_PjQ?ym@^(b0aSCCNC;2 z;uZ0koMgq{PUj{zMoKs&wrF05x| z@}|on+Tr10v(eODtvzP%=ZmI0YpP;AtMGPrkLPW_h-4Oe?3>t0UXY8Q)3AY2KXZFs9Qm*_p0^E8v&baV3tz>Y3G$;2tseJczK zZf9*gE@?z0dmp)SnJWwPfD1uM3Z$6zD3x&d`7*@W4N6A!6jN_Hf*XNovV#4J=PvU) zZf`Gl6&msGML^pYU~ul!bk^&&f;fT8^F_bgmpY-G4A-SYt@X#bOs`W(y;$H~$JwXk&Zj2hyyWiI0x#m@ZHKL`Yq0;Oiyoxop=4K-U{5GGAfXixr;;t(=CzKTr zs}Z}o%*el3&V5b3jV8x?@ePh)Bcwzwi@#JYhdd?(~|1`l+AE(bEP z4#w;8@>|kCukm|7CiA;D(rs_gA#75cV%sGy84FT|(PMfZkBRK9`fZnVpRovdIPHzV z)>2Bfjou~djSFhN2NT!WfRz;U2%ly#C{hUVjFfkiSWO0-uY2!ay? zQ)B;@^v!u0-!;NI=t{iBFO}0ow952ut@|Dz8}N z^#WO987E&AT~$Ktufxn zFa3Ob$a;G?5EuB0^j4GgQfg;EtD@#}-%Vs|Yump4gQvXx(ee#>v$&Y1-CCT;=lXoJ zJ6Azh6tkkN%;zvax$|jx{WZw~%Qsl>^)lH3-RO3JEc*GrUjWfKaapJR?Y@f0eIr07 zjhz`R&?$|PJS&u#oI`B_LrpvOp=97Ba%xKPXQjp}yWLvke5wJi=1cd^-qG{rFry#P zO3w%@Lq$jD2F0?8S%v53-IxstI&@ALsM-5Ib+DJNk&{dqH>G zS?rP2uTl_l0)g{m(c^8&BM`T%Zg+cWc6(Zc*olLe4R*k#y48lwV$fDykP3EU_S6{h zD+6dVH3B&`bXXhPyAqzM(-1GmpP~^i@U%ES#eVg8Tp|9D{n@r@H%aJrks3XJHP!#i zk@p@b01m&XIRkkGB!2U%KJ}&G9kR>3cv&F}*5Ty+Wt~^GIUDcXqKmC?-|Z=Su+x!h z*qOdrxx4fmtgoa0b`LR@-UK0ckl5}WU3X#J{N}`S?TQ813r|h30IY_ z#;03R-$PUj+vwvlaN>Z$sXuc2Uk&A?P>_ zghc}+oe(-td}&OLt!VW2yNJ-s!`)%ptL#SHe(LakaO`3Km3m0X;MATa@b)mSuu5&; z9tCq&`)U(Rc+dX^(gj>rQ+Om1CPAZ2OEF|@nfu#@4w>$C_wA^x=N&2rGq{bry%wMC zC=Tc?xQ;ZADj6l!F~qhvcjNQ>n7d-n_Mj^%F+N`7EXiTj`wH+Yt+C^FLc-SZ=l0wK ziTVSnzSONVfy{w=GaG^XKS+JiMB`x5Y_wAOt2Nla*+5351)JCQ=L6|#Io!@iBC>~& zWL0T+aSbn1#m^4k-7A{HI7&yNIRqBf8(v1EnrP%6K#^~)kbeo!WR2VrBwVfG?}Ku3 zCJV)`{Oc8`@j6vlXZV_ujKi;>Jvr?dlqXesjrlWj zx}jkaRi?X?m^^9R^@d9e#f&<&;vO2t7a!8HGTKrb{Q2(2`c?&6jr0+lN~k~*JfS*s zV+JDN+joLPd_Y`jbRZkYi^gU9xEQ9i#PTJGB?>S&)IC1Vdo@Dzdj5f@H|y9+5sU{H(XdREMZtGFSBx^~LEMZ>2x_Q!(OwXfFX}uZC zmd0aIY&*zO(fp6*R;EZuCs&0?{2S%9;(5-}!isr%zvyS=zrZWU`oqqb(CXE%e7s9E5hf-c)ovt)AiIW}@pmwP5PgfJdL^ zT5$DjNNt$gx@nC0>(S33^fK$D|H*I~;|jTw{S?i2i(P(#L91%7v*P;%yss@nx($5c zu3Q6OvnXe5@1A*{)3WPD`w>G)D^?+`a|MgfE?yVZ4{sIgnPZ5E5xfJu!d=A1U z0_&MfDLs1avG7jXy;}o6&XN*b9nwF}3PFY^2ns5HaOKfE{Qh<5Rhx}EyY|JJD-hh& z*Lc5s<@sRW;q1g)6<(i}g2jcn7ACHd3HCgazlC)4%{SAlrK=&Sble@v5e_k}G(NQZK}y52uycz{ z`>U#p6)8%q9wce3snoF3-?;o2%v%>V!VCIgKDM+mGPc|O(fuPTENrlzmt#Ct+w{=xFGT)CJQOGp;`a7~}q zK0aaYNKzYT?mkjkT-9At@T0`BynALZhGemz&kV=u{LhDI0-mJ7&Ga6(HII-_TXg<* zhH?1rgm?t6AlW>8<*^y#Esk<(EGmL6@&E;1`E`Q^J2@eQ;o*-_MN7`xLhGaj+Do=qrb@V z8MI>Zc6kFKws_@jZQZU87iH%@-#!WmxA>B?T*L^rnZd7aPu6*5HF7teKazdF%Vai= z2GTxUjG7Ek<6CClS)W9;`q2Xt=|&ia=bj+AcpG9&nlz($rQ})A0th9EL)y-x6IFfN zcuUwU+(!>9jyP7+vVvG+N^KwF>Eu#6wxoz9msYq1wBTJvTbx#^e>-c>m1*ts!Uu5M z4>w5W4XDk%)`i(y(DrHbn;{R7%NuT(TeYCeM3a}n+aLFs+YXnd(FR?r4Xq!#S$wt%M9P+GZ>lkcz_Vjit3KykJAd5&?nUT!4gE4Dw zUm9WgJDG(GZf^X@-CkRwU^VQ4x$J*hO;KD*#1!4^Sd7TwW*-Lk`F7vH)ra|=;ubj6 zq2KpB#j=c}qg;tvmi>n(^2)B_cMNqLH#$w&dHHDBx8_>omIhQek_(<6rLFrwHX}+z zS9agJ!5Hh8pRPfLGHHE|DGFIZg^314!fRxWS{a^L8mxKLei~?$4KJZeAp4c6-;8(xz%{ z3g!X`85I1F2S^#U9+YFy@5uD33R7zZAbFeuq|Bgul`bFqDsT5Nut%uf<~2m9B49{1FRd8b?-N zmY`0T^vJL&2o;Qg*T)F!Hsw7|csIPeyxXpC>p}y+LO_LlJFU5J8V&zFb?p`{HDJ|J zN9dF+1m6+nRl-fJPB=1>)q%js^}!f2iRhhOyBf%$xaVeh9NBHE?NJKw5`yjeF{$unHO{<6mgU+{=V0W{1kNBLSU8~PmBA_*D~U6!*MxWjYRm#mBj)nT zB;CU3Iyq#Hnp?baPTTHub?bXH_4Hnj)F8gw-d27_*ql5NVh=f`K-w)x3Y{|DJ70f$ zb$dfjYQMcjx>-6uGJy+;%Gj~3gE=%Hdt^r_%3Pm#UP(Jnrhm|%{eaiux^-Zo1kHm7 z+J}l209Wqj#IXq5*3Sod5H67%5&~GOf!KW@$r0?Zxf zxU6a@0}icktxgKRh4Fnnjj%b*qq7(zTmOMQTu4A!QDT(w%+ba?ahm5K_ehi~YsNSG~bNnD;h!==CM8;`;(}_?!OlqwnTGG%cze;gT3CD*t4U=jSrp zm1Xot_y$GzlN{=5BY7swx57umEDJBit8sJOc z$kX_JJT1Stn*+Y$;rULh6VuN&a`ca6y=+Y|qh)-bkWWYuxlgN{j#1c#UUL~=-rZI3 z8k+sV-oG_$d4ySBgoJb^V5PAd2wPP>RrV^%8rpAUoJOINzRdr=Z*0H^1-!9r`q9;=rN1--?aeF7C_k{0QfcOfr2_O`^wofj@cOhet=M@4b5un z$xVS9AtRBaD)rQ_=(@_YP^w^H-S$?X+*_D|(&Fmv=brkcKHTGVkMy18+ne{}3D9PB z3?|a5sCMv$Bguo;Onp<1vp4$7UBc%JI}*2Sk^Nu zqsa0yz93i5l*2e<1SrXJ1?d&TF}B9+w(AhMS26MP6(qB^_x)OjnqH<(su|;s5Q4Z; zQtw-w9R(~9*DpU!;|}EQ1KV%9(4Gj~Ec14kJ4#bzWU8pLJpDu^cm3P*Pk}u*2vr>d zPk-p0aJ%CvnOj<2XCE8Z$`_p)3|_lIdmHRU)4}k%iOSLnxfO#4ow^3Ing~r-u1bAu zypr{oT}D4pN(oV5mCpGtOwOD1s@m*s-A^Ei+UE1QD3;FkHqqOH$o<|{gSFx_o9r~V+-ii0=pl~)HlG{f( zTy3x9tU!MxuNRg>1qraVxx^>@;oa1VYjJ zw@Kcqzl?F(xI0_VLY<7KbQXBMh<1t=7iC2wB;o{*^9JR95G9<0mlpwvIrY~x-oOmY z7;cYcYk>Mdk0*xh!5?MrzUz7&R7gK|UFVY&k5f50Vh;bOh!#M&iQS5bC+)XW0y6ZO z9@ncoSnmCOIi30;v5%#%eI)kW+P$1j>44=r#<;8`yHtS+{@I1yTtPcx|M3_s4QBD= z*~ACk9KVwbO-N`f|82|m*T-WI-xe_HpF~efRuu~60-uuYSo9Qpi|*O%T{@wqPIMvx z$m-{h!xueL3|j6VqNJUiPJkwLRlc)T*sR@X?Le2hD7_BXv8fEIAj+g(+%(*zQlw-N z-O^}8t#*eU#FwAnZ1F(*_qmM7H-|Y+4c_lIaG4iqQ6KQ~eWqnNa!Pcj-cyplbAK3? zF^VxY`J5jQX=4BWiYc`Xr4R3VW#xBNR9J1!Rc@Ue4%X2rjk!&gx6ZhoimMrpN33B?FXpJtOP&*yi|{{seXFt1=x7ao59ccg)^7n#T$_y-R=4 zu+}bou4GL~m%c1+fTO7Q&^B0|YA&?<&3~vkcX@STQ(pSG8fX-@sI9TO1tw`&)m&&B zS|%mUa^|rt=l7_zhvQnH!-?=SW-$dn0aUn?os9MqU&aZGlUVaM|B|1wew^{R#;$qZ zCtn8JKkQclk>LEFr1)J-E9g+}uA)npnDi$iW{ws6?-t6_ToUGbzo|ry*i$S&#+xXN z`0ISUycz+nq6;vEr?#;1;c+vR6WgwRPPq%%BrTx&!kYxoo&8wtz^27tn<1-cws%i* zX(P*{F$qhil{qJj#3U`~BW<+o>_!Xq23sS&TIzms;r=1>3)>w_6kBX`cAaS))eAXo z?~xqike>4>>4Wh|knm|j(>;8^Z6+H!loE~oz0yaO-C<$j-TTop+Z54K)aq-%qy`EOXwDP5?cKg(yhh0?spz3#O*%O-qG}?47-cdb z1Hq?e)pS4!G-Y1h%kbl?QG*9*XI)sWn43dgHE&wm*b=NAei}7CBFcA@%%d0*Et8Ne}s-+1WcDZi^55&zcJgT>D0L{XC5iM=+w` zXg(;@X*QjWL1>83TUM<7=ofG|KF$7Pl&-}yHzN`3t6F5R<}<3a*qRZcCtDyoVehN_ zuvj%OU(<&c>q~PA$J^Q&==Ahu4~0sWqQg|0vcGV&?|>$p4_FK33!%}6&%qhrFu5#k z{&jZ8S0e-VN`lL!yMOHC5oftW&DClR`~xC#H#Ybklq_@7B6@}LsLCty3x^N^mNmrVB#97;M#; zkXaLaYQ<-F`+@CA6{={856Uz1QP$JPTl1q#@xtgkJr&{YD$0>V>H}qHK8H{)Sbh$G z$3fmi)`OkiG}p1*dWP>KiOJJxnL*$PV!Ry8!X6HE#EHz7Po~NxakeR=XNUvy(Z&qF z5+}L`2-5)tC0in26wyyrAQ?KI9n+&)sUkajvGmf<>Zb>HN`6#sIyjU&2a|b-Bn>t{ zn`ck_y!dh1Uy^cWnKzn6JLBh{4tM@R;69-D9B%M?&+Ul9Qf*L}_kMmMW*eW^^XXGy zg9qS3cHG0tq{G06mPSha$DyA*^>zP#ve=XAscMx;gK&R>`*02dz9L_?9v9k}hJ4gg z^=Dj-ScARPTz5I{!#sZkO=h+!>wBP3`{S*=$(51zLI;rs`P#`dSFKJHrv7tsIP*AM z@PLy{p7%fpehvCMhvbQcW9P7zTi6Lpwh zJ+9Br|EQqb)UfR!Ais9gf=gqJ&86lx&MU&=M-i1ss4YUaE2zz|NBB8u$E4Cnx&Y%i zgAQHplysfwi#{6m#v2o}s;rS{8BYRzL3G|Tg;@_T$thwq>0a-P9VHZ->Nd}YEFfTd z%jCq4Q-CRMr11T>kLMKF7qnkYHmCT!)3Rh8Pp2&qMmR;FM4@2jDavpdPh2^kxLqb% zNC012vg@w^NxkHx=O&DA=pupOU1D0lYlhkD5OEBji%yD6_5W;ci{UFG&;>KnBc&VR z|5Vby0zwomncz#5tgeaqf2xc0px17!WI_;^A~Q^B`_>S@u7w{K+JM7qdj69^ATy{) zcu5gJp#O8@p%(VGb>`@zpQxWUjosi6X>3q~j_a%2>$9=N;@si}U6krFavBq9l`8cn zLEm+j>azT5gZBdB3#sfR6B!+TxLEg-Oje`yVekc-JGlDqqN;$>flB>E#;$J@Q|ZoP zsmKe~GcjSibXj8LW55%$=t4xkE4Y!L)d=4&(K2q^r*{QE(${a_q#c{BDZS==mkRzN zXVaQizEJB(Vv1e3L@oADFslZMSzx|rg=^_CIp4eMGaPSKrmHx4XLf^EQL=tbb~dY* zkeSM4lV}}GkBGTLks8iZGTJ3Wn}1Rs#=w^NlU+E%xfuS9Ue_>=(`bk#i?w)Mv>D8B z1b={`KnENTMi42>_wmqNN;80^7Na#|$5c8%b-T4XNfCkkcgOk9vIJA7G?Xl7^lA&o zJx@)nz@wCuiz=qXo~-Ek&^siJ#7Mb4crBjrn7v6`!rA(uEpOH<&FLI7E}|tVg6CY! z0>Jql1v9g`X4kQj7 zJK={mkk$ktLiM;hqpAa_%UYPARJOn~OiaxB6@%K6>RV#OTFcE;MY_wPOg){)=+Kg{ zaB(h$LK1`4?duZwcbX5kv@^0`0^^Vh3U$0d*%2X782yRhtm~?gHtZsXjXE) z1A(PW!+HCQxxXKPCRTRSs5Jv|R|8X&J6N1d09(^nnF+ats!eNw5X3+@`uZZn>0k4B zrUHtdJ6PS5pW$8%knL=(-GL}0+!KTpDDOo)CtG%uCCsW(?%DWZnoel;iR}2^%Vvo^LlkhU&m~@z*+Iz;$r%Wa z_aI0q9IuomcSS3$={Mgs6NvHw@9-`fT9wDjh9y%<2r+;hU3|T&4$25z)+i?`rDGy> zI0mc-xjRznKGxpoWAo&}!ZbJo2PG#{$T!Qz3LFDfi7#A6MkT^&SgRD0c!ITQ$^5{W zFT^0H3t>@53m^pp?=x5oN9Y9|-Fa>F4a;%fZP{~jZ$F4W5muqacgH72CePTm+dpnh znY+JUj{5mkto7V>xmk%t;VEOvi~zJ+%75q$f3Ry!mkuw}DV7U>bq-kg!7*p&yH{Tf z!H-GE$zo$=bZo`cNe5IAeJ@i4)y{->Cdog~yWmw6;VzWJOA2+d$20NZGUgvL1jnOr zwM((Gd9eTJnNcDkWzuOP z-jws7paJ5H%nU0T1$LrQ|x1Cvh*#kP5s zUPhen%Vs+U`>T*GQvpHbnyRxL%vGfS*1a{&d~mrXM*5aerM z)Cz3KPGVJnL&!$8dhCQ4S5qG_M?cQ=r!P>Bn{y^^_9{rT^v50(#~>+jr*KAnPtJ9B zc1X+>O8FV3j$phnsFOfWiplS-NXws+mvN<78kcUn@&r#iK^@49%5grzn;v^woBXif z-m*Xw#%~5Xp5lIRE||41KyQa7hGK!c5=^Ua;e9~u3OI5|K$vgyb4|x#Gj0ZN!Tw3X zCO()34zBst3s`Ex?&?AFo;W0c-AHXeiV#og!$Km|#f6 zvCM$wmc7zh&Xbld?)0n(?nbI@OpGzydjaK7l4b`1>FN{hnKq3E;9BPR6D{KS)S^6f zbSRFBh@OxdT_eYrfV&-u@m>Od3OQG%e%>j^|8$x6;^(=`==!{HfTYTy?RNL8pXS(f ze7$j>;XD7+=AQ=Mdh4!so^$+@zS-fk$K8hgac`OnRa+a<81e}dLmon_wet!+c>c3y z^DLko1iPJP!=|2^gM=BVTJXJiH3l+fB5S>MudAB>DX$fFq?oy+XmcJREy?)qDcu7h zZbW=}*3y~fEWwpQJibw5PhTj5Lpdj*T6$|l6U}<86VUE^)eX+-T4TJGP`2yOP&Y(Y z=FyxcVQ9U^88G7kSpX{o%PNj5lcpK(+PeS)FoD`B$$%+=Eq9p{L^N(O=!OpFLVoiV z`Yxyy(|>zeBS`a4jr2TnXun$f)7Byt0gLm(Ip5u4Md=%%UyEJ;aJ!eZiHGy%(-~vx z&AHQ?x5;1{qn+j|o1M}zE+q{c55QopJ~_kWw5$t51w!^kcb!aNzk2PyM{jQRV%lA& zicYBA*U5+zUCwjW$eR)(QW-^9URd?C^%F>IV^{&LPE)%k2K=jiITC?)k%14+cqPIu z9Gglxq-=ez8~`B^4ak%m#rgjk>Azh#>j88a>orb|y1N^k^}fBAH2wSTPK-Y$ z?=Xq93B`L+nvO(vL}9F(!LUm0`y%Uwb@!)p z{IhEBk9fj?FgRE{!_b{hwtJK#>O%;PeO)a;04GAK#5G0D5vuK)g5y zG#5sS4bNGIjqeh8hj`Rt&K2O+pb1Pxn+7ZN1iJ0C@f>x^ue zy*0CIYis3Q6u3a#^`O!R;V(LYEaP59H2-J^F%k&obp@uP@fUKC12cibNJ~r0$jGQ1 zKm+0zaWrIOQqwPr%BxUyjlXOHhc&-605>S1{;PN2z+O)5Inyo8U+j2{4em4)6#mRi zKR!Md6co$^hJy&8_62BnQQM>mkL3f|OPYX~ezeNM@2?_*XZiQk%LyC2cc>Ks&UG08 zDrx$~I*DbIqfdy;q%Wf*p;f9)g0bw1v#0@tGMx;wom4Ham=V1TP~V?w{R1w#`EV0) zsovFwFVMfo6^Sd>G8n|+XmY`I+#u_$0BFsIWtVmxFxDE5SsMdVdLjWd3%jh~F47n$ zz^jTyidG~DI|Kvzl`e~`aSNgA1HP|FpeE1zj(ywL{!RJbn}7yCR^eGZ0g!i-V1`-i z1b1&SQ|cQ$)vmy53Hn^K+aFiL?1cKa%smSdkCZpn!B#3bS`v%TDzLx5O$>k{C9cvT zo}l@=f2gJsq*|6VlrqUUtBqyQ@;t)6PdhF}I~;kgj8F!NgxC-A-t~wJt2pf4Hu6XWk(QJDPYgvOp{B?s#58CGa%x7>CsO`8C?vos zfLz}IF7G7|fO$6Gqxiu5ewGe;5B(hhxW&s@oCxBT9hIOTH*sQF2++754pKrxh{uxa zJ_!>|;+GCctG&_AF{*=B3yFwN*o#FLX!ZaP<%NG?LZHx^1T+kOm$K?Rkug|+>zWJ+ zR|B|v9s3Aoi_t=;-^k!<^a3ZO?+eucM?h!3Wv>Q#Ry|4+{ZG>`j)*B=+DnR`|G{cH zih_WgYUGL0@6+4)3FdR`&+f{MX`h9jev5n|>-eFItGuKd1hO=b0K+O`t+L->t&Cu1 z_RW*B1?NEz1)a-)-U}7H0ND*grc+Mp-(CsiflAtW{b`+~`P;N&s>a4N;zM!EtfBKe zle6BLjH><9KL{9~YvHEjP22=L`dcS2k_`i!png^cW2FkOVrgw187LfU|MTt;n|iIZ z+j~Uf=iM=RU!iCPwrurGk!O{8vdify zkq;HQo=&H9Xa5fGNe+HjBi*^~&J$^4k`u$boFeP<4cD$hhCAV2#H`;?q%!MX`Hc;Y z=N(fzfD+It7X^a2y&ZmpU&!lg!G?M_Y+>TX9CL*PqIleTY|xo-lBj-zX#3JX8y;$O z@VAE4N*ih$IC;1*pmZTXx}Yj8&8UxbisM^@2g{?=A{CfPrMgHwG4xot#4@Zeh$>S1`Co*0Vm| z7P!NJHaNMow$+~EH~|_IG-ucVe_z*@BJgmh*z$uJY&Qwe5CKA{60Y=`=m-7koNRq^ z8$>tT?});8!{-Hmb4#o2P{09A)+`VlHjs_qCUa5Dk!mlxCVFa5?=l4_9p)na?$I2- z5)=Q_T1M#6!k7} zS!tDILG~j345ALD1q zQc+q1Sp|@6!_&yO`h@I7`Cq2zi~)Yv0{lQnSCw&?M~-vx=j0;L3~$<)^WxLEE2Ta6 zy8z?>7Ws7;KR4z1t@2ty_Q5Sh4DyNbl2#WM(inf&NYV*W$mexSxaGngS3D~6fKQ*w z(Bv$rAO^7&EpR>X4&DhPu7IqboLyYlsf!!Z26Z98kHcO1h=n!(1vm!r{jS>r2DHu}1KneIt+U5b; zqN9HnQDfqbw>YV76R^4$c|ghwMfy_Hg|%GjXV|DVi|K-VsbpJ5$(&nc?9b*Cl?L7S z-e+xh+RcOURN|zuOG}!8S#LUS&>wfw!M;W_lZ`vDyR<4FUV!e*aethP(zpxXYps?!R>4uXEajRrjM) zy#Lms7N-Aom3tl1G`_TD0DjWBkM2xd7We+%e;Noa z7gLNGRuw!@vl@$*+S8DzFFq9_WCB9G@~tsD7Ztf%du{cE-DZ@Rmd>19D2qTv{OO1? zTYhOrFV)8QE8};!{kMJeE0zHRL*9D-zW}{rf|tiwB>LGhrvB+-MNb{~ zxPXce!7VWz;s4kz$aLSWmk<=@M+he|ZUF=YLwZI|vJo zHQppI^Iw1a_f1b2kWvyllFq{a&+*>9$QB7`A?4i{V*AI}{rB%3kbp$xH4vuE`hSNE z4*>-S7wK@bBL8g;|9meypzqqaRM_HNw9f%YVLo@aLV1^FfUZb90azecJK% zT1IK^;lG2#doFl;ORsb{(&p~r@f^uoU*fQHXAlx(HUcx6GF=YckaI*|q2ne)?Web_ zrq<8c&gs170i==Y`;XZFxp*LxkLxH+bkc>*b|2?HE{%&T9ora6q-AW{iA&b?94!89 zGL#S;41LYsLIr~HgrbnGxo;!5eRirVTLB>@WHNcVhRIV{>B@6|&wNra-Mim^_%+9(&`k3)3j00{AvJPv}J&f^%v{G8IQHJ_vsc#t#`%LxQQptP~3qaf<)4AT1ofUQ?s z-N8YRw+OTIA*U^jn-#LF67JJ7p}_l{!Oa}u?WYs8J@h;mt1NFv@4^gJoS3q+jN41; zk|SZi7puo#@w(R{N7J$qS+1$cGStsAN;y1d*GB(apw#dnZSJyX_@(%cBjfjZd_R4e zf!*Y@S*k5AE*_54vZTMz;lUWKy^5FR9*kywVzZjVcbQQb5xv83w^UtaF&#j@W(Dvl zJVg6`-mK%lnVHb_+8mOdPESo`a%zf~?5Z)%S6lLBdER`rWf}Q=Sq8O9IPNIrIVlWo z#}$`Zy5`L~%xeroVX4ESwV8mHw1 zUh0=^twt$+JmH#T7S|5$w5-1{I8DAIBsIx{R!&A?x=#1Yavz=ubb9L=eoBywkD-VZq`{Ui>q6JqWgd$N$p~2Xu@FTKh z*Vu|?5TlSKTW%zVY+c(}%W$(4nP%*DErZ4~WeGDRGq&t|_TQP?ZFBGQoIlQao_Xha z-*dj_e3$e2d_q`+n#O$ra(Pdl!x%X`FU{i(xc0UUm}_vuui5>)m$L%F&Y?6GRKlM` z`g{oVsfQdm763r^vpC2?bBgf5l@4-GSvAW6elGxkST&~737Ib7fRw_Gs2`aY7TW;p zvNZESSV6J0811War@LN67&s+@jfN*9i&F6EZTHfXNvi(dLvN=&+b-%%YoVzQ z1C%^BID62#0*bn(NI=UIluA2H@SOmP=jc21an?v88*8ZMSJ0N zGyDlD@oZ**zrL}o&u=nSv%B*g))vRd+_t^4aHB0LqSz@IBZmK>2_8LK(*KK7zhZNv z+Va^G(U_jCA>LOygMjcBcz-$h9dRM5RjIj^k2ahEy`4`HvnNU{?7y>~g3LHi2Slj1 z9IA`4SS@E6>$2IC)MBk-F)vr+ry?l7Eu~pjul!#P%98Z8+jlt@5DA>>ll*mI2-==GQr^(xc}zb5^ndVwXJPi0>ue&H*Xa=(gr>*IUUBT`5e+DYaN8e+4B@YF1I7kM@qs`VBHWZWdl!12|n zB8x&iK9P-Cc(qBJU5U=gv<&DsqzHRhj*fx$1o!*jesV$*-VApabl<~L-MUxmf~|>3 zT|xz`bLg{7C7C^>s;F{z>J`Ou%{vthbyZAyiBjj?@0CqS-0R9M;uz^|rD^UDyX zB*lr$v)d}3wW|xG$nv8~hE6L}l$E=C*zILkWi!s6ej}Z2|GYexW=3mxZ(&`cx=M_u z)P({bVK7ZV`dZJ`O*vC}%9EJf6+K!vAeEj$Q^Z=iAjikw%WS02e10~sxe>*ugF=)e z<*;euI4kj(>z^+7k&rov}4ep5(lOngy@%J_N>xp^MSd-(cm0G4QzE?nXrni zda3bru5$9lK3$AhS@NYCzXe2E!BdEhP{*?Te2bauRLWGhu^W6NP2qMpyK>aI9{i_K z`lF@#%6dy@mGN$a&o~Y>-y0CA6yi14ntY#C{~8o;5~O&cP5BAVDl4Oz4#&Hm?E4sl z`@o_ji$c*-h0I8qr_R8hgNMDU%vX0A=+ zlwFUKYqJN;t{NLxw8w34e!r|?JlrNdd1-UHlEP6DPDnx4xO8=YR-S$kynta-hoEsb zL95<03Q8~3Eq`^n=V7?7{4Q*($s&G3QFa~IVc;MUI=v>Yw3p>`XyhSjhZRZcFGJSH%Aa|VhyHwpM7(&;rR&-fE zQLg9s_Jmy>z$jR5Po~~@VMTAjwyE753}NwrS{@kix#kH4Si)f7eNLvakE|jyF;ZX3 z7T7MX36+}NhDz0*Z~K`5*HhPo)eC_ahin~yZw#R#SXpS+j4Eb@px=c6#4>4Ci` z@+BoTHrL`LvT=T6Yi-JP;~o!aiwLgI{XThC(N*qt{xsfq(2cI=DE-zoWN7S%LUhe7 zT6c?yC%f<4)~ur63V1=VfhaI9s+g{rFs5<;EiLnXZ^o*IEV@XqFA5erj-1lPgnn)v zX-h|6aJcGH4^a&s*xtzI2z<~FV6U9jt(0Wt*kE^^_|}O+&$eUX1#zQQC?(RFDS`4A zO{&?C6QUukD}9m~-3L(!9iK#z_F`-=Rvt<}2=M^%@KUXgZfBX6 zck^iN^@0m?mJ&i7Vey#}u=$u6%`BRL$yg=cS@8Lt%ei#_h7K0f1I1D+W{+-9O8>#H zdIy(|9(ZT}@=Mj{Yx-f#y1!;~Sx47VNYtn^7bjCT_`8my|Jy<%L3a1d+XCo@Gg(51 z6OPAl8+U)7yKjyH_Hh05<6kZC|%6=87C>MgmH zbHHWd&-M<6V?0cIS6Y^9)~88zJu1nYhuRBI5I};7l@*Ck+MG|dV~;+f6wjQHf>H$> zZ&SU7Z`1a@1G~i~k%q+NxtyN`wC%&J^hFRB&uCl~od2*fqM(`j&YPG>Cj0};{rc5k zEIBd-_ECi*h3TYHH~wM~&S|){_*Od;aQ6xQ-k9J+4)L+%uZZ3q52nFB)-PwBzvr7i z57_zFZ)7X2oV$CvV(jr*2O>3idvjWvtWv74GP6gNjSYR|asJ;m+a2?#7E-G(s_l^U z=s0dO=VHPJKj;6P7nHym%&QKlQZ0|0TkZa&@_kWr*zu^AUe?VFH*+icYc?H^JPsrAF_%K?rYgnKWPYSGvB zI!X*L$jK@(-?wH5?s5(4pQWOfdEH9hS$4`K(HW%67vh<^hJg+)W1vy2)v0H zl`+3_f?V?lhYN`QKJ_9q`%i>{It;A?5;%}svVX@*F@_)mKV<6K;hM;&4wMqe6gLr= zGbNSoc7>r-^RE^e2`jUaOyoA}+Gms!Mluf@Dlt+K+AF4hFoZ5F906-2R4;@5-J}mk zvChhR)5@JYPVf-g^>g1~HJEmmBlnqfb|Sg++}dc$}Bq6#&UaW zvo70LG0rfm-SOx#d|iZnUXJX(SGOy?!COVf?Ybw(KO;dr_yqc;AoOJwb2tynI_l_J v15GqEv&~Uyg_q{1cbErbXhdb&65cMpM?c_HECj?5cU{yn(0q2m{`da_Vy<^Z literal 0 HcmV?d00001