^*L_V&QBz$<25w3_!X;2Pj0Nq3LcHyFI_b%BoqJ55>S-@tvq zFM;0!{{&V9Rx78oHgukL-0KS9U6Ot?)QCagZSM!11FX`aIKKQj;0EB^lK$Sexb0Pe zCBV+WZb1HDOYXuuBwaqlfT`eZKN&bX3OkhD0-OTeD9J+>tH;=09>}H~)p2J&1sp6X zZq+Nj;B7y(?C377+1cqR{@Pf;UE^&(1vs?aqo-G6ZUlCf^w++1I>DD6|2*)9*2D{e zLnQrWF@U#DA`$CKV5{o;t-y|w{?@f#ANaF?cUBV;-VT=(zh7oz`)R<%z+TlNR|9)= zx#m3Zw%-U`T1`$QI6zXAE_1Q{B;b7Dz-qB$B%Rb=d=7Zq31vS7o>2`vQqmdA9CfvT z?chohYuq*=c!{JtYaDIxUjTNm27Ff1{!b+EW-Z&fyvf8bEZ?%Jn@frz6Ilx0_Dg{~ zs&5Yf8%g?88+`H2R{}qgbpNcz+1>zHUeXV`blBbu_zsYW6gf!Jd0pTW`gW|8>@F#n zWsa01y&c#FNEFyp()D8vuzfUea@nloBpu&l!0Esd<+lfu6C@>bKeqE_2Yw9XvP5o| z)LFaOUI(am`yVA5d}XKswvPc$sK(zX>G?h2lZAg#W%vCgT~dQT5qMuUImzL=9%V5w zN4aJ7`(OiXzaRK;OZWMby0Z9WnC*J^Z40!Pn18g5x zN`P8lqFaD3jUZDDPs!YD)>|cA5b!CE>IAg&& )V0$_fqDjh)QSGNTNXu_>%2h%v{h~QoFxt znrn8fvu7z3^V2<&HVydrTx#pc!;;n<3cMLt4ERRt632jC`Yc+@Wx)PpfR~-$1ZeU> zdWIDPK8YzYJ93w#I*JUo!}ha)7*JP*?fD6DZ ygI^oQ1s)BU`{zrwf$e5cXrNN$AY`4ql$*Gq_HZNn3S;%&x zQo6gy1_7Vqr#b5Mps8_Yl2$Tl>&PA0OVYKoC@*be-IPpr{;R<2io*LPg(Vm*wm$|O z)|&X+LO?a2W5C{$LU)XkLTsf>Xk_JpPvQTz@+Dbym1%ur*NQ!^620#QvN -vQgHy;6fk zZj-bm+T-u>`$mqHl#IBb*bc~cK{c {izpk2+N!8ob^NGQA zySJsJyZW^C`1l!;>N2Ct=#`2AlajVbPGC1lz5Rgg@H%If@!@gS2>sH4&vE2f8o5kT z7~n1dsU~w$b^m*sq<2r-z2-OD;VuL8)z$dW-c6RDqo$BjKLeU5c%`I$GN=Kczmu#s zEHe{z((Hy$Zz~IvmQJdvflih5o*}?n2Bhw9viY>l3I+1XO8>T!zO@v5{?Snyr%z4f zna4wx=HLL}`;t;2j+T;i4gs M2hW1t(xq*T2jp^%_sV8hqewa(a58@T(i7f z%xbLdaFwb1n 0jr`w8w?S)ttckty$sFkC2p%w P3D3v(QGgAW z1s~K(M*Kv&{f=!82^$I{f5K! Umn7(jKgFXs;bqX;e-B*0I;W%djo{XMn%ZsPI-}Wh<34E>0b}n;# zH+6dYfIiYHmoN_&ajj(W>m{XHoLL?>`1Z=Sb0HI@aylt9l4SCf|KQl(cp + + + + + + + + \ No newline at end of file diff --git a/components/qiqb-share/qiqb-share1.vue b/components/qiqb-share/qiqb-share1.vue new file mode 100644 index 0000000..0dc3ca9 --- /dev/null +++ b/components/qiqb-share/qiqb-share1.vue @@ -0,0 +1,444 @@ + ++ + + + ++ + + ++ +分享至 +长按海报可转发分享 ++ + +保存图片 +取消 ++ + + + + + + \ No newline at end of file diff --git a/config/app.js b/config/app.js new file mode 100644 index 0000000..fcdb9e7 --- /dev/null +++ b/config/app.js @@ -0,0 +1,44 @@ + +let httpApi + +// 在打包之前请检查当前环境是否正确 +const env = 'dev'; // 开发 +// const env = 'prod'; // 生产 +// const env = 'prew'; // 预上线 + +switch (env) { + case 'prod': + httpApi = 'https://worker-task.lihaink.cn' // 生产 + + break; + case 'prew': + httpApi ='https://preview-worker-task.lihaink.cn' //预发布环境 + + break; + default: + httpApi = "https://ceshi-worker-task.lihaink.cn" // 测试 + httpApione = "https://chat.lihaink.cn" // 测试 + +} + + + +module.exports = { + // 请求域名 格式: https://您的域名 + + HTTP_REQUEST_URL: httpApi, + HTTP_REQUEST_URL_ONE: httpApione, + HEADER: { + 'content-type': 'application/json', + //#ifdef MP + 'Form-type': 'routine', + //#endif + //#ifdef APP-PLUS + 'Form-type': 'app', + //#endif + }, + // 回话密钥名称 请勿修改此配置 + TOKENNAME: 'X-Token', + // 缓存时间 0 永久 + EXPIRE: 0, +}; \ No newline at end of file diff --git a/config/request.js b/config/request.js new file mode 100644 index 0000000..9c2cada --- /dev/null +++ b/config/request.js @@ -0,0 +1,79 @@ +// +---------------------------------------------------------------------- +// | CRMEB [ CRMEB赋能开发者,助力企业发展 ] +// +---------------------------------------------------------------------- +// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved. +// +---------------------------------------------------------------------- +// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权 +// +---------------------------------------------------------------------- +// | Author: CRMEB Team+ + + ++ +分享至 +长按海报可转发分享 ++ + +保存图片 +取消 ++// +---------------------------------------------------------------------- +import { + HTTP_REQUEST_URL, + HEADER, + TOKENNAME +} from '@/config/app'; + + + + + +/** + * 发送请求 + */ +function baseRequest(url, method, data, { + noAuth = false, + noVerify = false +}) { + let Url = HTTP_REQUEST_URL, + header = HEADER; + + + + // if (store.state.app.token) header[TOKENNAME] = 'Bearer ' + store.state.app.token; + + return new Promise((reslove, reject) => { + uni.request({ + url: Url + '/api/' + url, + method: method || 'GET', + header: header, + data: data || {}, + success: (res) => { + // #ifdef APP-PLUS + + + // #endif + if (noVerify) + reslove(res.data, res); + else if (res.data.status == 200) + reslove(res.data, res); + else if ([410000, 410001, 410002, 40000].indexOf(res.data.status) !== -1) { + + reject(res.data); + }else if (res.data.code == 0||1) { + + reslove(res.data, res); + } else if (res.data.status == 501) { + uni.reLaunch({ + url: '/pages/error/index' + }) + reject(res.data); + } else + reject(res.data.message || '系统错误'); + }, + fail: (message) => { + console.log(message,'3333333333'); + reject('请求失败'); + } + }) + }); +} + +const request = {}; + +['options', 'get', 'post', 'put', 'head', 'delete', 'trace', 'connect'].forEach((method) => { + request[method] = (api, data, opt) => baseRequest(api, method, data, opt || {}) +}); + + + +export default request; \ No newline at end of file diff --git a/config/requesta.js b/config/requesta.js new file mode 100644 index 0000000..50d1a90 --- /dev/null +++ b/config/requesta.js @@ -0,0 +1,80 @@ +// +---------------------------------------------------------------------- +// | CRMEB [ CRMEB赋能开发者,助力企业发展 ] +// +---------------------------------------------------------------------- +// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved. +// +---------------------------------------------------------------------- +// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权 +// +---------------------------------------------------------------------- +// | Author: CRMEB Team +// +---------------------------------------------------------------------- +import { + HTTP_REQUEST_URL_ONE, + HEADER, + TOKENNAME +} from '@/config/app'; + + + + + +/** + * 发送请求 + */ +function baseRequest(url, method, data, { + noAuth = false, + noVerify = false +}) { + let Url = HTTP_REQUEST_URL_ONE, + header = HEADER; + + + + // if (store.state.app.token) header[TOKENNAME] = 'Bearer ' + store.state.app.token; + + return new Promise((reslove, reject) => { + uni.request({ + url: Url + '/' + url, + method: method || 'GET', + header: header, + data: data || {}, + success: (res) => { + + // #ifdef APP-PLUS + console.log('app', Url + '/api/' + url, res.data); + + // #endif + if (noVerify) + reslove(res.data, res); + else if (res.data.status == 200) + reslove(res.data, res); + else if ([410000, 410001, 410002, 40000].indexOf(res.data.status) !== -1) { + + reject(res.data); + }else if (res.data.code == 0||res.data.code ==1) { + + reslove(res.data, res); + } else if (res.data.status == 501) { + uni.reLaunch({ + url: '/pages/error/index' + }) + reject(res.data); + } else + reject(res.data.message || '系统错误'); + }, + fail: (message) => { + console.log(message,'3333333333'); + reject('请求失败'); + } + }) + }); +} + +const request = {}; + +['options', 'get', 'post', 'put', 'head', 'delete', 'trace', 'connect'].forEach((method) => { + request[method] = (api, data, opt) => baseRequest(api, method, data, opt || {}) +}); + + + +export default request; \ No newline at end of file diff --git a/js_sdk/mmmm-image-tools/index.js b/js_sdk/mmmm-image-tools/index.js new file mode 100644 index 0000000..acf40bc --- /dev/null +++ b/js_sdk/mmmm-image-tools/index.js @@ -0,0 +1,196 @@ +function getLocalFilePath(path) { + if (path.indexOf('_www') === 0 || path.indexOf('_doc') === 0 || path.indexOf('_documents') === 0 || path.indexOf('_downloads') === 0) { + return path + } + if (path.indexOf('file://') === 0) { + return path + } + if (path.indexOf('/storage/emulated/0/') === 0) { + return path + } + if (path.indexOf('/') === 0) { + var localFilePath = plus.io.convertAbsoluteFileSystem(path) + if (localFilePath !== path) { + return localFilePath + } else { + path = path.substr(1) + } + } + return '_www/' + path +} + +function dataUrlToBase64(str) { + var array = str.split(',') + return array[array.length - 1] +} + +var index = 0 +function getNewFileId() { + return Date.now() + String(index++) +} + +function biggerThan(v1, v2) { + var v1Array = v1.split('.') + var v2Array = v2.split('.') + var update = false + for (var index = 0; index < v2Array.length; index++) { + var diff = v1Array[index] - v2Array[index] + if (diff !== 0) { + update = diff > 0 + break + } + } + return update +} + +export function pathToBase64(path) { + return new Promise(function(resolve, reject) { + if (typeof window === 'object' && 'document' in window) { + if (typeof FileReader === 'function') { + var xhr = new XMLHttpRequest() + xhr.open('GET', path, true) + xhr.responseType = 'blob' + xhr.onload = function() { + if (this.status === 200) { + let fileReader = new FileReader() + fileReader.onload = function(e) { + resolve(e.target.result) + } + fileReader.onerror = reject + fileReader.readAsDataURL(this.response) + } + } + xhr.onerror = reject + xhr.send() + return + } + var canvas = document.createElement('canvas') + var c2x = canvas.getContext('2d') + var img = new Image + img.onload = function() { + canvas.width = img.width + canvas.height = img.height + c2x.drawImage(img, 0, 0) + resolve(canvas.toDataURL()) + canvas.height = canvas.width = 0 + } + img.onerror = reject + img.src = path + return + } + if (typeof plus === 'object') { + plus.io.resolveLocalFileSystemURL(getLocalFilePath(path), function(entry) { + entry.file(function(file) { + var fileReader = new plus.io.FileReader() + fileReader.onload = function(data) { + resolve(data.target.result) + } + fileReader.onerror = function(error) { + reject(error) + } + fileReader.readAsDataURL(file) + }, function(error) { + reject(error) + }) + }, function(error) { + reject(error) + }) + return + } + if (typeof wx === 'object' && wx.canIUse('getFileSystemManager')) { + wx.getFileSystemManager().readFile({ + filePath: path, + encoding: 'base64', + success: function(res) { + resolve('data:image/png;base64,' + res.data) + }, + fail: function(error) { + reject(error) + } + }) + return + } + reject(new Error('not support')) + }) +} + +export function base64ToPath(base64) { + return new Promise(function(resolve, reject) { + if (typeof window === 'object' && 'document' in window) { + base64 = base64.split(',') + var type = base64[0].match(/:(.*?);/)[1] + var str = atob(base64[1]) + var n = str.length + var array = new Uint8Array(n) + while (n--) { + array[n] = str.charCodeAt(n) + } + return resolve((window.URL || window.webkitURL).createObjectURL(new Blob([array], { type: type }))) + } + var extName = base64.split(',')[0].match(/data\:\S+\/(\S+);/) + if (extName) { + extName = extName[1] + } else { + reject(new Error('base64 error')) + } + var fileName = getNewFileId() + '.' + extName + if (typeof plus === 'object') { + var basePath = '_doc' + var dirPath = 'uniapp_temp' + var filePath = basePath + '/' + dirPath + '/' + fileName + if (!biggerThan(plus.os.name === 'Android' ? '1.9.9.80627' : '1.9.9.80472', plus.runtime.innerVersion)) { + plus.io.resolveLocalFileSystemURL(basePath, function(entry) { + entry.getDirectory(dirPath, { + create: true, + exclusive: false, + }, function(entry) { + entry.getFile(fileName, { + create: true, + exclusive: false, + }, function(entry) { + entry.createWriter(function(writer) { + writer.onwrite = function() { + resolve(filePath) + } + writer.onerror = reject + writer.seek(0) + writer.writeAsBinary(dataUrlToBase64(base64)) + }, reject) + }, reject) + }, reject) + }, reject) + return + } + var bitmap = new plus.nativeObj.Bitmap(fileName) + bitmap.loadBase64Data(base64, function() { + bitmap.save(filePath, {}, function() { + bitmap.clear() + resolve(filePath) + }, function(error) { + bitmap.clear() + reject(error) + }) + }, function(error) { + bitmap.clear() + reject(error) + }) + return + } + if (typeof wx === 'object' && wx.canIUse('getFileSystemManager')) { + var filePath = wx.env.USER_DATA_PATH + '/' + fileName + wx.getFileSystemManager().writeFile({ + filePath: filePath, + data: dataUrlToBase64(base64), + encoding: 'base64', + success: function() { + resolve(filePath) + }, + fail: function(error) { + reject(error) + } + }) + return + } + reject(new Error('not support')) + }) +} \ No newline at end of file diff --git a/js_sdk/mmmm-image-tools/package.json b/js_sdk/mmmm-image-tools/package.json new file mode 100644 index 0000000..e8b9c0a --- /dev/null +++ b/js_sdk/mmmm-image-tools/package.json @@ -0,0 +1,11 @@ +{ + "id": "mmmm-image-tools", + "name": "image-tools", + "version": "1.4.0", + "description": "图像转换工具,可用于图像和base64的转换", + "keywords": [ + "base64", + "保存", + "图像" + ] +} \ No newline at end of file diff --git a/manifest.json b/manifest.json index ed10878..7f0759a 100644 --- a/manifest.json +++ b/manifest.json @@ -17,26 +17,34 @@ "delay" : 0 }, /* 模块配置 */ - "modules" : {}, + "modules" : { + "Record" : {}, + "Speech" : {}, + "Camera" : {} + }, /* 应用发布信息 */ "distribute" : { /* android打包配置 */ "android" : { "permissions" : [ - " ", - " ", - " ", - " ", - " ", + " ", " ", " ", + " ", " ", - " ", - " ", + " ", " ", - " ", " ", - " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", " " ], "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] @@ -47,7 +55,25 @@ }, /* SDK配置 */ "sdkConfigs" : { - "ad" : {} + "ad" : {}, + "speech" : {}, + "share" : {} + } + }, + "nativePlugins" : { + "YL-SpeechRecognition" : { + "__plugin_info__" : { + "name" : "YL-SpeechRecognition-语音合成,语音听写,基于科大讯飞,双端 - [试用版,仅用于自定义调试基座]", + "description" : "语音合成,语音听写,基于科大讯飞,双端(QQ:453503875,微信同)", + "platforms" : "Android,iOS", + "url" : "https://ext.dcloud.net.cn/plugin?id=9512", + "android_package_name" : "", + "ios_bundle_id" : "", + "isCloud" : true, + "bought" : 0, + "pid" : "9512", + "parameters" : {} + } } } }, @@ -55,7 +81,7 @@ "quickapp" : {}, /* 小程序特有相关 */ "mp-weixin" : { - "appid" : "", + "appid" : "wx3267f87bc81f2890", "setting" : { "urlCheck" : false }, diff --git a/pages.json b/pages.json index e53160a..488ed3c 100644 --- a/pages.json +++ b/pages.json @@ -3,7 +3,8 @@ { "path": "pages/index/index", "style": { - "navigationBarTitleText": "种植分析", + "navigationBarTitleText": "农业咨询", + "navigationStyle": "custom", "bounce": "none" // "softinputMode": "adjustResize" } diff --git a/pages/index/index.vue b/pages/index/index.vue index 522f82b..89ae551 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -1,710 +1,2090 @@ - - +{{ajax.loadText}} - -- - -- -- -- -- - - -- | -- - -- - - -- -中断连接 -- - -- -- - - -+ + + \ No newline at end of file diff --git a/pages/index/index1.vue b/pages/index/index1.vue new file mode 100644 index 0000000..723ac0d --- /dev/null +++ b/pages/index/index1.vue @@ -0,0 +1,2239 @@ + ++ ++ + 种植分析 + ++ + + + {{ajax.loadText}} + ++ + ++ ++ ++ 您好! + ++ 您可以和我说任何有关种植的问题。 +
+ 例如下面的问题,赶快试试吧! ++ + +下方输入: ++ 怎么种植蔬菜 + ++ + + + ++ + ++ ++ + ++ ++ 正在快速生成答案 ++ ++ + ++ ++ ++ {{c_content}} ++ + + + ++ + ++ 正在快速生成答案 ++ ++ ++ + ++ + ++ + ++ + ++ + + + + ++ ++ + ++ ++ + ++ ++ + ++ + ++ + ++ + ++ + + ++ +中断连接 ++ + ++ ++ + ++ + ++ + + ++ + ++ {{btnStatus==0? "按住说话":btnStatus==1? "说话中...": btnStatus==2? "松开手指发送录音": "上划取消"}} + + + ++ ++ + ++ + + ++ + ++ ++ + ++ + ++ ++ + + ++ + ++ ++ ++ {{btnStatus==3? '松开手指,取消发送':"正在录音..."}} + ++ + + + ++ + ++ X + + + + ++ ++ + + + + + + + + + + \ No newline at end of file diff --git a/static/icon/ai.gif b/static/icon/ai.gif new file mode 100644 index 0000000000000000000000000000000000000000..e6aedd812af377ea599e9c24ce76f7065d2c30f5 GIT binary patch literal 8133 zcmeI1XH=7Ew}#(@1VTayy%;c|8A|9NAZij?fS`1d8amhpl&Yvn2n+ ++ + 农业咨询 + ++ + + {{ajax.loadText}} + ++ + ++ ++ ++ 您好! + ++ 您可以和我说任何有关农业的问题。 +
+ 例如下面的问题,赶快试试吧! ++ + +下方输入: ++ 冬季怎么保存蔬菜 + ++ + + + ++ ++ + ++ + ++ ++ 正在快速生成答案 ++ + ++ ++ + + ++ + + ++ 正在快速生成答案 ++ ++ ++ + ++ + ++ + ++ + ++ + + + ++ + + ++ +中断连接 ++ + ++ ++ + ++ + ++ + + ++ + ++ {{btnStatus==0? "按住说话":btnStatus==1? "说话中...": btnStatus==2? "松开手指发送录音": "上划取消"}} + + + ++ ++ + ++ + + ++ + ++ ++ + ++ + ++ ++ + + ++ + ++ ++ ++ {{btnStatus==3? '松开手指,取消发送':"正在录音..."}} + ++ + + + ++ + ++ X + + + + ++ ++ + + f~Y~1vET^Uu#BEJDBp3u@#pz-)|#xv%1@qq@B6v;wV&A7TAP^q>jJvK zdjJ5w0!sO>l?&c%t$ees>TSry_n{rD%)ZscYagze^S-4 z-F6k$(HDf|_31#hLMi!4?Ko|;MC_c1(e$C}JH@_mdSmCr+(dn7i#}}TP54ypfdS`h zABkrtD`PV9-ByizrclR^ei8mW`Dn7s_Kp&vcJ=AlX>=7dMpLfIYA7%Kk)^rrFYZ@P zUwo&a6?2d}CMB4&H9pTEsWroI)9IHUWz;&h`V0OO@$bEI8!aBTBfC00IRSs=TQ{1& zUHL=$Gr!0F$=bblCtD1vU&=pvS<|WW>UWXtyD!JDC^JGg`{GQF+$yn8&Nw*}b?DCO z?{+m0ZvXY}>(r>)J^1~`Ya8OOlort9pOkMdu>8_K@POR&?8)7P_Y(z9N9(Ud6~^$n zzxPY=fLJ|X=Ia&8QBS$8?hcixH 7s3QLM6+8)vYReZ)a! zD*24VM7d-8+XBhVmOPWZEPMUJGjJ=rxT*qM-_FsT*DY4gx&ASo*+u(OP4kN*jy(%G zWwBCFU1BxXdFC_*Otb%FngGBLC;=(}fEWTG2n>FS3}+(5 tAWZ6otWnC0gZRCV+*ZvkuPN fzT?bbv{r9@$i?amd<$V(6TjmL__! zUw|LU5>9(lIo0L$x@XZokH#mkQS|tYxY0`M)csGgbE)W;p3PAbU#`i{1qUUw_B%fi zYzcjqnYp<-CP98aX%fZ Q_aSGy7Qz+nH? }Fq?pk-J#<9|_)ULgL;;gIRG4F1o>MlT98Y3kqPM=H;cB=^bDE5TYDj$2k zVfvlsVFm3VO8B!*Xa~n&D09pqhL&*G z=V{04n{46Z;#R}A@h+(v5X;g|!-|~%Nx)1YY%Z*?NhnXzHH)r1UG4dsb-J0`{=v2b znj#JIv3q9|_r2<3Y3eedCy({s6rP^kGgp)ldYDkZT QL*Aw-&S_h}R<+^8viWwgrHhR|Gu>X?C z8~NCUdtHK4kD`x6pYvu!^&XJickxwso2;A`tu_`rR~js!(ewe^xC 0YI^jja>MhNj^ zt9ky!f&RP*fVYy^T*hIF3Q3v_E`hBEv?=>2x;++53H3F9S_4qM!=J;Jm`NxV)M@I_ z`7_rGbVbd=0E0Plwu~QnFuu75j)Yn4`8?$Klym|QS=v{~J_F-Nd6HF43_`A-ac|vo zf4KeZ)Hzyjs)AP(*9L`>ZKK*ZGx)MGHuAw{*=L5TJVcw?%nF_)UKPII(-!8wc&9e# zh ?s`Uy8Lzn!%I_5);F%+OMPs&9B}Joho+k7RWyf@ z1%dq7OkR}o3a||5xbm7wN`#7Pn1{{v^dt#y+;*8rdPGW Yfr9L5miFuD2>e z9+|;}J3iY{uH7OHI})+Sx^V~Uu<(#u#l)|_#5Qd;kx`jWijAIhd(ldptvMQhT6pnb zg9kHSP|-K#LL)axNIIxZ-hcUF5nR=>`mA0f2{bfCWrOG3Bc|*|4F`w2+$WPh{$5m} zPYVwkPH!AexYB%no`ZE#1B%&XDBNs!sB6 dFhlwQFqnYnaEa+5P_v=1 z(r1K!zz$%WgnI`OLL4d;J8`oOK~%O%7Y((eH51j`7@Lm|3)Qb%+WtbrbgP)?$+l)X zW8?yKgNdx%*!*awQgA)%?(6WryzQ?RT(>y?xw9!uVw3A|wm-DkX}7-5bFs>qE&}}c zo6d{Der+dzZfRaJt!vS6%_91904T-|21Hg|J0T_FJ6pH}CNWH%j(H~54QInPhN*bW zJ+{n{g8AZ2b;(vtgK&)oj}`JruBL$VQm5FH0hFNRzVXiGP?u~Qlt^^(?b@N=NN`W1 zaEAI0rjM$AUbmyt#CefA?F{6>7nT>LucRu}Nh`aaJoxa~tR3#zEaRAh{(iw-Shs?3 z)WT=Y*2gy(@v749CcAa-Wk%mH)($gJy2*!_^d;1a`%@~!jVgrf(LI4h4GJq&X?Ft_ z*y)je4Go`O^fx##UcC|0r$2ijA%;QxEt%HM{Op@_ZW0nMpS6F9HzE+-Y%T>5RU#v>WsiyZ0Jfu~=wQeY!q|SYs)HSBRRmxRxpAaQ+icig z5wJz1K0&yU3d v!;8*aWWZay&G!6&ChG}ndBF%y)Z=am&kk{bB-8b>rck;m&80#Jh8cx~S$ zaUG)fsn`2oWJI4UCd7-k&)-({w?5{OU%B(7q&U8tayVpp{H#y?LTMM7_~TVx=Z5n< z^$0G54!|TdFmVw$4gvy0T#n$B_oM)L_coIj=s=RBcHHMM|9KmxjNNJPI$bD}Pb<)@ zgj>d-GK5XZ-ElcJJt#@!!sT$b5|ARUuqStj#u?61-YecN>kmK}+iHHuW&4;p$262| zLoUq?M4wGoNUNvldTQR59Bpd2b2X_;|CU*Tz2V;JUN6Q2@KTXxuWA-(e7?sHwz!0R zEuBBO`KKgtpC<$FNCcP&2@%6uH281VnkYt0N|jah9URodC7r~=4+!mEhV-WK=_I5N zX3^kze9Dd(_3UbLDop1oCTxXk$Hs4Q?m!!EvSrDL;~hQTgt=7OxInE|bDnULH3@fN z&2Ckb>B>?n#MN;nYI?AhbzW+8V|P8}{=tmG3xW5WaLZToE;)yLUsS#&qV-AqfJN?> zawUg!mvUbq*}~c#RoFCJt&f|b&Mt$dGM95#)o6LrT~5M{sH_?V1fGj~aZqc~qp5G` z!XFCV;lp`lhoa36T^I^GWGBl2ZWfk>4z|od$zt2o^+I|D;Ye8pS+E9-9Rh#0&8$48 zWFa@AWw|ZSotvOVYKBL08r|D`Hgp{|m7&j+#BwT1i`=;GXSdWKqcroitgmVbE}RL^ z;Xun|;T8v0FESEYN5$;$G^`dWV>4-!H}y5NuRTKbi-UuBuuoF9&49{%-PXRTy5q&; z_Z{EZKeXBTRayl5kHqCcZat`Z9deblYIWBkw;9KSTqF;2tuqw1+kuc9WbqAhoy!vW z2@qY$_?F-snFgA^WoQ@fjbyo9JG9iZIm~>_*7{t>ZsIV4579g_-3mgk$9ITGbZyn9 z0W|WRTycIO#3@~s>s8yODuUt}DqcCU62=i|gFmN!ch_7@H(i}~?6H&(H!O60LcJ)6 zTQxG3BmV8Kt#2S>;PJoXF39MGJZ?Y>n5E;_aTme<5AFtBLn$h2Tc)gVE!lwfV3i45 zmCEFIftE#ZR0dBA`9Hu2j@Im~Kqo1ksdWjZrin?a5bLAL;2G#WzLz7S%SIEOZQR4u zo1Z%;JKR!JFmc^)b?$&fafYTY!RJDpfSM!sou*gKhJoiLTMU@)srvpiR WAkUtDO|#msg1I5#-P_s?0vb0(K3 z^Bd*zWZv$9ugNswEm~+oKsvoe*#hJW^Cc5>&;Yol5V7iL)$44nKqwdgI@lp!Q*~Re zsUD6BNMa0$coGSkN|qZdsT&Wz@!NLMZMxGuHs(82Z{9&?P!T( Y@4SVY-TPu9`rDW^8Q$fV;L} ut5@ zKW%?g+=R4_e;e>O9qS$)`Y#>bJ-@;?fNa}R0j^{Qdu9t;Kn6#v;wki{c@kSi(APsy zkJ*<9E?^i+R! PoowsT0%sX98ftgd(Izdl&;Dma{9ZxQHNPaMuXh)^fEN8ybKO_^&S@U z$|z#%af%MrX@A~*kN^y8Tojk0Iv(Owi0B+{H1TYCc8C8=fa_mbtyWWrpIfu{JGgSz zy2Jxlo;oVU|4}bWim+#PFfsrJ7c@R5G$cj_AR8Pi9 As6rZt`9b4$bR zQ-l_f=ekP~wuQlgHtKhtZZvy8=bjcL;~B;Ua1WDMMga|-g^lwAS-Za^73Kx9deJ(6 zOqe*UP)Zd@ej_HW%Y7)3@QO)U^x72vFBDyy;*{nx@bE|t$v9mQMNv}L2rQA?n*ylu zcQ`_nIRa3q$D*uQ5P(8&)wZl#+pYrZg+7dt5(_2$7F<2%pztCf0a;bI }16ed2 zq(SI{#(u_0g8u5a{}YU$`=CZ2CVHU!Ac4lkyQ{)a66c^;&n2jRQEcOdsx2-m)GM+R zsR|9wwbWk49Hp(PPEB^_Nw(Uo#q)cv<>&hwM@{Que}s{B6nn{=X_RIx02dU}FfRl% z1f)=D7QTfBhd?xtmkXULyHSeUlQ9(kpdmIuOm>Z*drVFTG|>CP(bXfl8Zyo!C+=`> zW^UH(qRK^KN6HoB-CgTj!mMiKi_Bc@=9nV_x`IjyVeQy4lyp_9tL%j`XF-GlS*kFf z>v XWp;rP z|5I6U4r2lA#?LD7=6eO`D5-B1Afse>6&U5hkx~M_BPLlr5Ey2w;vgOi&;?XLgMv{5 zAmqHRKBh#d+MF^}z6~oo^v6)Crg{j=)UlRaAtEoC;CN7-Qza59osP|+?My_;Qr~`X z@xN0H*9?lLjMF9i(*duh7*+nJr@P8s5uw5> zQiXA996=#zOCQ880yil`;B4dU1TClrkT=1n+*ReYRSY3#?-pS9_7)sENZ6P4ZnQM* zN wirnN$RTdqVvD#y{+ z-m{)A`S+cW(U4vn^$g6`W0G+ka(|}k&XehMZufA$a$tW#cSKbpzdnwb-sv(2N9qfF zF-*B#V^<_eFb--4x>=|6iWU~-+I|@I=V-xWTF;{)d< iN>6fN0H)JJxi?E{WA8+VLGZO _u1_;8)`gVkGR)aw~Ej0u{z6cw9F&jLyp|b zQnzg}cv(^9nG@W1Rr{i}>*dJ>>we$O!~0F9UqE1bqPNT=h`4d))@WvvCz?sE_t~_^ zTDWM%FHL>x@M(uj#+)3fNH253a@0@9#?5b9*OsWYb^+gfs|R*KN+w`ruqBWeKv6=^ zc)_Z$^RV}~=N M0xZ6<0jcAo=M|GeAgG0ZmbJPH; zrAm=~#g2Oi5Q?0pH^q5pCTg{Y>|DK^v}`UaOdCs4+#c-)qEVi~&GgD$O&fRj+^|O< zaOj3zS&61hsthNKGY_U~jnCgqFEI5@sVy=Xxm6}LgNc7lm`kp)NUYw?Hd@Fyx9h;< zvvqp=A!B*)S<937eNzH|6KF2)Uf-0uQzSG!UE|7oteFbi)!NFORBYMcg!eAGjV0%b z$k(#yVj$Mw I!e6 z(T6LcmozL-t@PLewxp|s+L*xm8EDmt&t2`mJVZ&(@Vnc#?6>_@d(+{z+SXdD;=@+` zQhy&1>tp>Y@9^LDqqWEHpT4xhjKCklY30`#GUgiQDY~k?2nj3XW$YbXU%ruCeMx*a zw AbB7wh+c39;pW0Gm k^El^up08&rN;0R2&k`RycI=d#>@Brp$M7eP9mDxd zcmjN)9?snf{)gkJCUf&xK{wsvv13ff ^j^SBi7gDhAv%vo2q9;B z&%}4)Buy5*|E%EUXZ(WgSJmV=NL=GtIA cXA z8jAO|Y;Q_Q0FPYa7|!=Eu~CiQuJF+cTX oj&@ay&@^GaISy>ZW !G?xhHlCU3)CFYp*H zA(P+X7m1g6dM___=>7BakrBK_mi?I%$jMss7tfsvyh&eMXj~$6fMZ-VIh@<7RbUS> z+T?gy((u|w3~gUAU(MApGq+22YIGi+mKCL*X>XbcBr$EJ=53h1Ft0iHEj^)j_r umsuH$>zQw`XKNv0au{z#29eta!hFJX3oE=tA6MbheSZGaZ_xE~>FC=-i++<7 z^tEQ}t3K=wNW1BT&@_vKHb;0Qnw2p?CeiV@@fk`5Nh6b@ik|(21jlY6xAm^;p&{Az zbQ=LbcNg{m2N%s%DCQ{hL!X&UMJ|Z3t)ZbIQaQ&awe0*e0f~}lx=QHb8SL@Q3oGUb z`w@g*?mFCmiI(a~hY(4xF4Wt1Wte-lLS^EnU2V_J4Z)4f^L%%3#xrb<4^-ujGaHh% zS3kC4>5V~C^|tyFO(%-5qXKX5`x{BX8BaZ)_N(j_CnOEXfQ75kjCJpOOG!z|4CiT^ z^rWBvW&y0Ub_vHIBD{D%tP+NU!wD%d?@oxT*0WJk;p$c;?|fcY8RnIVm?KRe4HxK_ zD@_pS_qVqdk1=z{?2jOANIDS9ALNrw8>26o=@@B6L@yQh!f$?+f{QVdAkjPFsN;(& zEKq9HSM QaVfwjFhQ8~)>A>lJ|E=5C(HCBYCdmksiV%I<^E)H3OI^?2=aI`6Hip%S zvn=F242d2t?%6Va>-}|<9y3}mJH{9#kKrEZ5vpu3F*2IUvT4|p^~maO`{93(Pp6se zYzsC`uYH#$%m`=vfsfJtSN9AxOM}mQH+Z`oyAv4*K6Q6F!;`P6UB5xvvsX+%Zy&2< zlr;VHfd!#}LF0#yBTAS(n}@QtwM*P@&|;)3P&7)|(zd-CYD|MnEH&>ja2dYtvqppS zUF8BX#~_}L`D~?<-#i5(Or%A>PAkb*$lev{XkNt>Yl~BZ_DL!=jO-5c_T{>p%!@*J zj$0~8f!~i{F%nsxT7#pC`3ztNs0jo2gAhlX!oB#=G|??@r7=&zpe?lqF}aRbt?!Y| zWC>I(r~6OK L0C2o5|;VCwqv~KCiF`ec~kSj&ORpE=CH|C)bJ 4!Q02;bl`0H!M=C#m{V{ty%76Nybe}fxF;{pp_oCuxx1%Kly|2jTY=-+( z?gDtAGu0~WpM{C>2zVHp>O%t}(UZR@ab0rtWoX*<*Gwb*!UAP%zT=O!9MAsrU>y*7 z13dJ{zeOI?E8GeS=pg24h8}XI5#z{x3k|!;h-W@#<3!TSI% 6cjgyb7 z{iZ9%t;waUmfd4qu9hnyG{IApi)xC_!G>C7LA|!+B;BE7LNcj BP?=7tn_^vnM{U&9`6@_~ z`?|oEHDG32sZzCK&KQJ@mEZ}67vHr tIJi?`w_0erHPfN||iC6V^$L1ZYhjnyx;B5=* zQrh_U;oqHHMHHxON&5@Scl)p%Lhviw`f7>hkM3}nR7Q-}T!KiCOgKVGTsdM;VPQ(> z3fe^g_2f0Xu#E%UbF_7YY81`(b AF6pr`Y_EhUG_SD5iY$ zMcIrHF4BC*gR>WU`}-;M9NJmUW8^cWA!rhA6<1hVxXPse=DN(gjiU3%)B7{2*aOF2 zC(GbIRCxaZ$5qJ9XX+|Em(D20_u5ucAExEWgjmqskUHg)y~-y?UY+$h8+q IY_&Y|QAW_XWh7Kcp;CrMl)ozKvmJ$((f zY%oR}Q)q9aNfRIfqG;DlS-EG;moxCv_Z^tZ`!$NHcXXM41DS12$j#K=%K`#UlGD(q zpBFl+*S*gqq7q6`kIZYLJ!g7V4dNq-wFvd$&5x2hAmw`=LPcW81?Jku))R{+h3EEm zpG?lKGV{^nkia`|yoKIZqGTTLQTP~;qGV9T$)R7LN`9rrXPyy*>^o^>ETYP#4D-FZ ztl^kM9zug?kR=+<3RRYtmv7E{iTRc-QpPfUlam&>bI H3W(va67`bJK-NIgAt87=}KXo1dN#3q@PAy;PPw z3*jPuerkS}Pn__h+KqXMgY<@Lr&mMwXlJ~srWl}z49&^nh^vLdD8o%yhbnp96+yx6 z4+~=G>c??+jbY!sQs5cD#7Hid{zGcemee>_ZavPeqM2Pb;@&VK;+pDcV?PJQUkPUI z>PeDc?-nF&m2ruPk^17m=L17^r0&GpLEW8WX>k{+{*~Hwun<2zp-ax_`+TKMd=zaW zweLj2w@ZPy<+d2zSgl!yE)+z$x-A%}(zHOn#$UBQL5_u1tS07&$*b60AJNc$Q_~Ux zkr>l4&*Px#6u!QH0spNuTufoB*sn>p9~}{O+a)SAV9un0v2?bs?wt1u>BdIa%YT^t zBt-FUyACRo_l5>+F&q1|y{+8TO48XdX0 ceo?9hvl uqh>n#ZHe 0fJkiiMC~Mcl8i)cEr+Iv(aF+4OH@&=on+EM)mC+WT3P(|CprW4At2 zHh1{(o{^LfI37amq2e*}t@w*<0ZX*Z_iKPLCAjQz_{2y*HL1+|)qjoi6T8gYol@tk zUBL{mj^T=`bhs*QiK+9(7*x-Ph@7C{S3BW Cxt`{%auHA8)xJ^?sP-hQI+nNuOcgUnMQ_SurF3($-Gw|nmT>UTM{4e zz~d{7PEunZpHhtbv=)_Qc(O^M&M^kBTYrUHD~5+QJG)zHQ g_RoSLgccj-S-V^9xK;cUgIYc%HfDsjEXXNp4g; z@Az!9aoN~I$f9tO$xRUJs1h7_AKrTII94ZgJ)6q9e`S$=Zr@GDi~QlKG>ccR-SzNm znBLS!$u)ah%!`Rs%-`~)(Gqy7dgZLrq2ou9oEa(*t)&Tw;Us)1gyIcO&*=6f8SROF zFV37>Rj*oI*3s^g7NbxfC4XPsgR;;4%;AH-lC97BZ#xjZx-7CVJGoAWr;Dg;?!XLl z`;oDbd^B9mfRS*kZs_@R#b3{zr0w|@W=wLpPl)7nPPH6bUd0&)1+7IVd3K|#CxDgX z>Kg9C<|B9_1uB>5%~l~A6&V&8`nUZZF*SO~2W2ZH8TwbY&G;T*y+jn3s;X6Fw$*E{ z<;nWi)y?_biX;pRl*zI*Vf+Fr*|quOOI>lysAi($*GbR8Sa SI8^sN z%8@clb!2{`2=9h*Ri{k&)8%=UN!%^kdk8KmvS2cLdUf8ts=`*f+wtd5X9gW6TUAIg z0W{>qIx|7T%Z?H956a8)f?SpgbS<6@qxf&BG&w|lhti})Z0dJDeJo4r>^gi9;ee`N zBQ#{h=`h;(ys?Sl?5UGn+;TD1OyI$N^W8!ugNVmc3T$$EVs--XXq&el#WcP=D7DJu z{_kWi ZWAPtU4*(N?}kBS=amG>DaxjZi(0x|w& zr*7~0w<1L%4Q!jDobKd_Ll5UN$}k!#G;9!L(?7pR%&R}|KTWLt!Z{m1`vV>qAEWNa z`S*p72t-a{e;I(v60?!WbjJ+Ff=~Q(ON_$EfH}*ZzK)`mupxF2rEbyLI^PO*(Mqeq z98LB+{b!atSg>e10MIncWswH!q`fzAp-||$L-ho~8EF@{MS=uJO%KbsbnPzwj vhLdSo0pk?Wbh2OD &Gr|FZfxMd8P8sw@OX;}} z(KYG#l;SLpsgr2ZLids)cxk=P$6h(~4Kw@@PHlA_eg035X2u+^w$DW*t;70VRC3>~ zj=p^PvTMg{-{L`~BjvXzMH7)%X?}Wt@9?pa &l!;Kah*L+&D|=_wdJ;Ua%-j@q;0KQnvjjX&kyktt8_t=$tL3%Gr5iU) zTCVVV_j=mmVD1^zsKHhi#i8y=MyWd^eBK+@B6($|2l+DJlN}D86&qiLnHSyrP@;LF z*{Oy7q{yW5$<^-atb~n$=S_jh2Lp&o#_UPrHPb_kF#88^;Fr;+3}Cww^mxS9!%6y` z^J44^VxM1se%viIUTzZ@TVn0~UYryb+$^Za>pOz3P*40>BeSS7!D*8_nrmldT$@9^ zlHadgvrw#%y8jBjPfLxb+>Xg|X#S|abJZIDu-EM~71r~ZQUOR2>C*&YgGNBdXtKtc zx(x4aIaQu+BTu^+)in=2xzAHenY!&UeG-%JHp5Yod}1wFyC3!(?kY^bpIn_s ){7HK?TmO?>4RTw`wAVOLI&! z3~syThT<(n`L!>NH`aZxRa4I5wno3X6q8dNzeWqEL}f5*kQl(lk=#$n{9CDc^tRt& zsdQd|P|smXkqrTK%3;Vq9IJ(Ultp%XF95!|8gHLRdD9hnE^^4x-$Ssol9fJ|lUdG* z>3Dl4_ @7a&nK?Jt6TlqJvtX0LT$z?9_cD8D@R==`4kNFm3|Mf z>U_@Ds(&Py`f*)SEZM!=gj^Hr4#J`X!UaSW*x6n}ic==#-)?iA=hMVG>mkNH!{;g@ z>=60bv|2T}cIO5n@(x0jQ<`~!A#y{j4 S4N!FrlCV?o>Sfl%ILcu4K`l0|o)705Z~SZ@%;JZTd@R*v_6c3zH }y-T%~`sQID#+!?&<+a~8RtP%cZ<|R5yP0eX} zXP$fW!~~?ac$602SpONJIm~<&x4nYtVP^wMdbXBnEi@d=avhPz(tS-|_Ge0|xjkNb ztkP<^W4-DbMcaFE=hIo;e%QzT19@@odQz6!;t57+#+Q!6p6#U95f9Cn#^Y=<3_n12 zExI=UEs5%?Lw5dvcyfy<2^u_ )_*O(oqv1} z>mb_ySZw*$n?9hAV*|F4m<~4l`Z2G2XviAs$T(D-xU6yZQ^J{(-XEmO9QddT$YSJ6 z;+N+iD`tI_u(@?;nQ!Ki$F1gj?)rAYL8yFWxPnv6V)wvg(S}nB7|0$j?qq85d9BAA z=}3@!>x0RmNz*eANc5>_fo&~f8$mWvc+FSW=YH@H? t79~*=$0f5jrt>E!$8$PA%wpB0NL1AHy>3g G!N=z|gjLVcY!mj(l^7duM9Z$r$m&8EyjQyxMlmFtk3wy1Z;3t~&@p>5TnvNiH* z1vbausLQCHY0fbEz-s)lgl|BnFj8#tQ2N6!EZRn8*S^Zioh6xl{E16WJ!+$@&bLv4 ztjz5I>g9?qU@1Ihg7urTmn5d)vfjJ5fm;)9Y;52uyyViRl4XoWU-wuHOe|xke4PBA ziCeZ(!h5CLnPkH9doUh?rb?V2KGMYXoi5?jbLSaoS-;#=v?JMV7`noCYTrv)ne1Rq zWz_l|NO-+-0MG8!H!70h;9ca!=2-d1kFUEe__TQ*NUia>Sa#1PM@@)u$ucsWE1(We zgL^m(2Z#UaL#AsQmGOL))jrE9)Bi+dhHM1sx-dbOfEJH+pKD|O##QyN-o|z}6!rZY zy_Z}jo*l!zbD?)?N_^OV(~SUAtiQq-F#u!fSJ$J;yemvq6#8UkMbGx--~()e`kn$T z&(PFTz;WHiDW^=&e=SPzRD}DAJ0NSR-n%+GBNS$JE}H?kFe(9?iKLwMz$2H1HtudN zQ_m$}jNK1x^KLv(=VZapPL35gTcA#rNvjbl^mA=OQ@LsHd5d_?CzTHTJujkCcYOLV zr~;kxr59ZJyp8}@RtNz$n&-z|!i}RGsd7QwpMp6=)-|-tF>b;l%o ln^+&k)jhp$+oy5Ptlu@?u`$g>{)@ zkXbw|m3!|} Ap(cx&xQ`T2FJS@I`EsPVgz{YZsotC1f!$Y6>`IzH@)gjLln-s!V~J)u(s% zBp>N8; u)E-xF{_?c%r{E9%uIk9;JtNXztp-MU9Z3HE!MqTum9X>CB zH>UyFx~MIi36bC@+CZawoK>A7UAu2?fv}2Eke^T1WD^;Qg7I~2R9vAxqHWkEBM~^a z6EDh7c?Xhb(EVr&)*y(wzQa`2keh35D6AQv3i<_O_-eF98T5&3%zlk)hu{ Qu ztOvq`X>+LRdBHl?r- z^?@%)44H^|65}%>muN|Y9=Xh*$zYbgB|L8os|b32SXuvo|4a^}2No?ze`Rahv%K{7 zFxN!%6c_&6N{s@&ot3+HssO5x3xa|v(G?f))C-3_ fp5I7V4kIO`();A*P9 zI}OQDN8qd5s;4|>`;O|yPhuA@Z{_)*KbZ`v$sJ4D_{r{S+uLy8+y`#kuXe_5#v|*a zjot$to&knU&%>LQV4BCZ9xixfOVSitWg;@dZB!||lD*6SscLt*Iqd>Uy`JMFBM|Bv zwZLxUO=07+2Nr5HjpM$AV)N;?9;gN(Ee_Elv#xl^E(h!!aCvQ}d&XMvsk9=vUF=0O zNuDpOnYM4uB_K>2E M28O;KKbghhMs6S94kw4d+m0&N@2>W(m_$|2%-E{>Tzrt* zYWL5Z$ACoAhb`hl%81VpKP__G`22#nNq25f8Jn-d0(M3Y2zp(LVx(L+sihi|0-{Zx zAGJUjD`cBVBloyr0S;q;WzHQd0&h|7g?-fwn0IwZ2*LV}*CmDJR&W?Ny$8gvqr{#} z`62EzcF+5$!IT9TTjwSgEtyLAyakLHiN^Z*Y+A6)`4{*y+0{wt`J2r($@glpCkK7n zt2Nj)mpjmkK b)90;E}O;0jf zc&CYHtB-!A`6Eastk?coy?- 7hJlRB%N1FV7_StE_4k{I zd<3}@ 8sOd+1<>T`k8mD$r^cDYf3rPkhcH}E`gSqyAXMspC20To!xLC#ftKM zCxn)B_l2gvPgXQ>9u8&(o@!C4kNE8%7we-RaH$@S7N7;6RMM|Xa)i)xwpYv4p{EEF zF|FJ{{%)iz+!8Nd1`t&Dp@=x3du+>9+1l1}$3C|i8A|Ww;R1Vhfn=nEAW^3g`D`Sz z-t0LxD1Z6CY=qySC!_9hF |r z*)j=V--D+?Y07fDQIR$gQ3_xDxK-GUl)n&PzIJp`38qP0wiBzD1pUg{7lB1{{HLw; z_4P$yP~7JXkQK0=xouaRJq1w|*^N`_$uGU#8o1i~OZ`N7DELc)Ctb>ZbV`24(wi7R zgd1Z%4kMnt*D=(@dPMzMIm7wsK@TYF#$ymLgcDf{t&@ZU`ri&7i%Qoily)!ij@oST zFN^&v=OlOyiv<6p--ru*ItQXB`&AD19 _#$OJJbC$gaWry8X68B z1B$C2?kJ8(CzF$(LurZ(4d8AGnucCby_k6!MFRa^>HUbQyP8Zq;uLuH+cu2PzJ`7= zQQtD~;9A|!Ri*KP=H@PEFUhY09mGDD@IT0l?G&h@f^3jH94ot2>ABF&s7kY+x4xgn zl9)W8t^I~!*f=yz&?4&>+4~l?y(_r(J8^(zP_?jCL6;ISHS!t0g64f`s0pw2E*El6 zP>C$DNK6~BS=2~Qn|_1io_VpE3}uCqFmHp?8A>-+qOM$)(_?LU@ Tt{Mh4p##MtvfFEwswk4Xrcc6B1#^19h;*VmVwR(vF-Z$OUk#V zy>ZW7dnnjM9V|YZfDw{oj2U<-klClR!aRR}q&caK^8StgM7||CJIaSQaFyuP)CpGa z4$lKLPYh;?QzOrf?Nr6{e;@*cEE{OAv!7|0ac4<3Ha8Q`$%?a~d^KQqBHpFPNy8aM zRt88#A5eS3UIwlm0mVc92=T*5Y526bG!pQHt0vHQyEG(V0%dnG(VUv~aJ&^o97q5W z%NJMoCV|g15KH1b!v-HYroFoL{eB0e@Fn-aSluFqz!g;%mttkdx7CLY`JdqgQj;9v z``Rg)4?SAs$&H`p_g=%R3)u !pLRIK;lS?34EI&Y1AZ&=29o0n@^zk z@{oqLJWLfXABn8sc>d$O|0kYUK18^Z%u hLj& zh8&lTaH7^`@&UZM&J{^LzgLou^Mb+ctaM4?Z$-=@_YZrBBl7Sn)}`e?zs-G>c-Ib2 zZ3A-VQ&a0J!gy!FDJxvi(?colu#S|uxmB0W8F}q%)!oiEf{gnS6~g}`A>;%8!%ELO zjQ8B@FCxn>^Q8v6<9tE&PS&pIikeM%8BhoVf{P#gp8OmepIW3SiUs5ss|i{7RO! t!*-;diyltp>N2y5iZ+hbaMG;#6?%bwO%ljq@^3 z8~$7KI&{P5bZe`T!E{FY7eu3%DETeLY<}VKx9^xXapz(DRPP9gaxusZwgg9C-REh% z`3BJ4`2iDt&?#h+m=?nqu(1?_ys#eT(cnRo80 iwef&4ao1o!8~DB0aZK;DEtwQe`#N5MqfE zIN!XyFhPvk>ye9Bj|pM>{NAc4hD?mrRQX*H--+L{9SExuR=%_KB5b)h$zd*yLTEG` zbE>+c!ggVON9|@yGaq?unZ$h`%{v}*6Ml_ycu2%@El*Gyr9(HVxPBNO@G(TM`goU8 zThbFs @Dm)3aH;BBou?ux>l@Ca8s?hpOn^R^^UmN}Qh=&pJm@kUO*An+UR!ns zk29f64+di)*Dhj+30^axs`_6zJO*JQ8L@FCfphy+GKrl>Nb^1-d~MN$?W3H&axnnX zScUs+XR=B7JRdD&b9tB-kd5bPxc}DjMMvBG0{Y2zr8Wc3`$^c2-tUp%OkT7q$|D+? zl87?!7!ayVo!g7i$k*AtO;7U~7jg;9BA&f?b@sebU@|G$$*<2HZKBf|W6oT=PiKN* zF}2+w?iK& `(GC#mkpM9_YMu9 z29@E=jX)T7W6M9lLS9J$ekU|^xxDoA;vx}`cFCNX948drz+`F0%qG?Ltxfbh+c*X( zBVpn45(f>Cl0na@8gEP{AkFNE`sd<1z{}eWUuV)811{Grc_u%Ih4WnLo4!aoZtDKe zkU#8`sh0(p>V{4`EyluW9o8+e#4W!J>{<@(n@v6VL}~GL99~z^xq=6&GVPq6CSI5@ zpWl1&;zW>?i<}D~$Ir&(5sXW5!CmV{haanVf!^IVU0~RNPxZrwDj*U3l=1f3%|Jp* zb^DpS_}4bJ;BT0=S>+l=K1W<$OU+^?NKtYYn>aF#_|psdoFQK%bBRWFd}QI&b9+;H zpOHRxOZ*>|@b*F9Ik7VJ; A5%gcz!Rc4&h^o z#i$nk2#0_^vrGw6c%Yxt7@fQKBGCI; ztmRjO{KKHCUpD?XL z9Vw%mklXd86r>>}5uA3z`mW`jODkpiE0uD)_HxFrZ;PBQyKZ&tPZBbzP(TE|7q;$(DQC*wL_$Im#y8fGt(s&4_rqQt^7P)AELuPUYzm z<>1g)N18t0jSd+gVqx*})m1Bew~7QEnTK-p7mgQH1BTJ{tbgk5;lQddaza^Qmr{=L z(ZF-U(Vs`VM|KM`Z3*7#)Ahc}FvBF!%ha@~o(*|xN_08?HUO9F@?!XV1-g|;f2su= zG%P* kbU7x3)0g z=yuR2>wzL56(%G;Ig15=rAdCCcodX2K0o39;{F=Ig0w8d|G@%@6id915&ZQKT_LFN z9Z5UQc1*1%7EAjZuY?nUnuLwT3QkgowgF8t@zZVxoN!EX^Z+buRHsd;JvN}X|HmlP z5s1bz_f>e+s`rQxnoKOHzQ}7Z=T3L^iG6N~(n6;zpJb+!o;$x;X5YnN7C3@5YE1%D z4Ah3ZI})Q^ODM{&KS@^lgJC;~qB^<+c)X@K7V4)Hmk~=#V=+Pp&lO`EMVUz+^{=2% z4e)4rjVor==^?ijMd2WOzzIEekDMUAg2~Q=gkw3&4LeT2bGpJH4hJ zB5T*XE4&>Sd|KohcowBj#n}j%vRT*?iYNZ32s+$y!p#&tn@sx|jETW+vLhOSfpNP| zTy7K2Fa)O9vvz~gj+}oZw5VCPfnrI#hqgRjGMtz|`o9|lT `Cfyr`8n<1T=qLaZBki0TovP5> zX#jtRX3ueKwRg4sfNA&;E$ t`7d5TXSXgf_ zuhuAy-1PzPkrlH-5h40NS&>C6rMMQ(SmD5LY`q+F>3U?I>yt)N?d7%lK9E=Y0|^N7 zA9fbX>8K3PjM=!5jE!~~Xu1ghDL7?g{3`WP8aA2xweYD`SaM}qx%c_xo`zRE<)7%d zA)Ysfo%eP(6>t}Pn%obx<@lF`It7h*Q5J>fts9549*6bFkuPA>>4P(Tb`@HWC`yM% zY?$Y2Qhm799Z()yIW^5$pk8RhHyYow?> z-uCML<*Rt+4@};L0k6YX691Fe5hmPXf^QmdTq@WxC MndDuBX9V+stpeKJ*?1ylw zq(@QJ4;PPa?b`0J@6Hw=k+y@yQ<=ydn;Bbm&LmR@>_IuJ!b`6)&jWY4;UVk&`I5_2 z6@TE|SaF&3ao0l79x<=N8PM>9VQSZv?OH4=)4$(-7I 7V&;p=Ql`(co1t<(~fU4#JtL$I-hIX zhB;use@l&RoEV5MyxOV A(gjv=@MQJ^~|8#i1 z#gBwK;rq9q#q1F=^ss@xI&2O0zxwJ?KJb$b@m1fra+ zSW$a1UgTf &pP%-ot7)A#TT)+`6j|7ZyB`o#7U*m`T{wC6#=r3dZKsl^qH3o`#y!i){HG!} z_??NyWR^->C4UZv{iaGFWo$sB#i~KFFv=xp`G7QCyv}(rhb{B+%D|NTw9mWK*nF^@ z*5<#ZJjiUpJ8WLr^FN){?<=On 8RygV*GSc<`5c%4)?FcBK^#8yH9d?%x= zts}iN|J#86VTUeu6^`h;baYYP1@^&pj(ZLTS>QBQ<^?9FefHHwJ6=%AbDem5z-jp+ zeJI}I#f<^^7Oh2^@zK93t%S))WHNu?Il`;Z{#-=aHELuFxeyN mPHhp85i_m5cmc){K0*hoN?#rQOz?mI-z@E zk^2u*w7&LZk7^2?&HLSbmT=KGQ~62-1vad|?7OmbC3erT)m$eXdnDtj(yz8kaq4mM z??+?5vhy>_f74`}9zV{JTCG>^-m@<#-|Si6`I^e&pAK{huCHW3AckMMwG+2Wt)5we zeS3=hU;7q_2Hk6^ ~B^uRZQ`!vdUKgnSn^U?_hFpaxecj1=|%nEG9ai!SkI Gup zu0A~eWuNziLdHQEIJ4fny0TCub6w!jWB}s~qtOSU>HJn#E&aE2+P~=i5fDM;YK7}e z44<-xA1o9>_jteTeC-{$t+S(lif96gM#A^^lVi{a%?b(}jL5lylT9j*=;=#NU-=v8 zgBut`BdIx$WkPfAatuDSQyOD%Kd9x@$lon->>kc}T| P;AU;WUsyV|fZ^$!0K9Ye$2>psvv%u>OmG=O*9it=DQhtOL%$6Ll z)qks^LPu*&@h^Kl202S|l8lrA5Jr)MvWs0VRa3gbkMCKZ_6lVMgQNVxfNjS(Hr&fS zuA1m*zX%%N|9dX+1A`W+i+U&JyW9**iTSox#k kv-AcsSq2gxkl zZ(59$y#nwN`3Qu4uZ`hfI3n=0c$vm`E+p{46DO=_>l$VfFl4%wwhdWXS>`(9OV$x; zwt5ZwGIbkS5d{T9|9uf86KE>I1xe@ zPG6+cq|qkb*U$r6{s|8m?-5OqJiXbv+S`i~M)}riI0JCgqbpm`(YYuhQ}E~P03Kj* z0rGLxj;@Y6xLK!b>5VH=Sw~0rz!B(D$C9m|7>Mg~`Yx_ZQ4TniTZZ07V8jT&9jUG*i7z&KBgV?J$}7sg$}H>^%73`$ zx!NsM?(9S-LOyuM!)=g(^!ufWKNv_B;)fO!({f(@tU5Y;)j}FIad7r5!~Px?)x}5G zIhD%ty*h!Ug&W;_#p$Kid?RkxYX>dK{8Okx7vhd0 xKmLY;)!Lg5VWsq?w89N$xz2nicgKTUhk}H{WV~?h@#|K>4ltRH5S0u zJ%iE=b^9jw6nA!JPavP(G*+@VN|EW_)8YQms?}&CDMFAoWKr!7#&D0YiC@Bn+2fE* zaJy9=t3Q#?jykw842MU8Y1;$=yUH(@&+YDN2rf2&iXI_30(q0@!ek{QQ_k46egsAT zlNjBS{RUmc)oLH#n+kJmSg&u~gF7!5{F{Jrl)FB7{|@ky!OJEmfK0eC=6~ujd}|k} zHIk}}dTbYkFo<#tP8$vOHSQe_#D)wFG03?Nq 5Ucyd1e?*i`q*bO!HE#Rsy6!w`ukBAM2RIV1rQL2jtab-afvUi$Y$@ zGdwsYC$9R)YC+G7$trNr(seeeO9xTl&hQrv16@ZGX~ogzqI^Dw<;`_E0Wj+Kd?)8& zi~9U;(-sq9CjT|$U%^5mg$EZ*u%=@C23?cy=UPoCb<7JmZatjW(a98~v-wkV<(oxP z>~WiCjOjg4qLjhSa%5>7kXjP|ZHa-9?ru3UKQQ9-2k$@pOg6p|MCr%J_q@;CyHRFI zfYcB(Ysu4&3eAp9Ao(*70!zV|j2@VgGTzX#kBhqm{^nZCht@I`v5Tir_$GhqoE<(Y zHm%XFy0de2wMseGY1(Gq#7t)=mX<$LP~iXA7?U@y3>o84s{MyfMGmZ&R^*Bj`fteb z-Tzy}fUe;sAl-_}Amp{o6goW!*OilzzXJ$Zq2$Ouad_MJS41574jg<21O_;*LeY2W z)XmH$8bx^+`K@0HUt)~hA2dJl=ZFG-e~()5KF|h3ROp4oD?dbR$|3V3_^Zn^^>X2= zW~ZY`>D+v$83Izxy5e3}Y;BpvajyT>QW7bja9a^}$(J3?yg<{i;1hlSj|=gCi1jWO zass3a%~C?YQY3xI|ADMv#)zb<(04Pp-tkjs`&2vqU-t>F*>FsQYZr5Cf0ywXWD$GT z*b`d&SKlH37dzJT&);40jX!AOQIfm=e8a*K8-1_-kRnq%q*o{0$^O1dY$iCS6u|kP z;fo^~6`bHMi2i*qDa5$QeGDoqU6GRM@4`q_fbEn*_d6Mmto)mArpSXswR`?^m;b8S zQ7XHsJ*4ZUOOXgyztO*y354Gp%{Rb6=il~?>k9w-KjP&uP1mELC{?vg;;_H3!ZZ%# z9X0SZ!wwz)!L`8nJu8@3;E?=6^EWvl4@s&}z6Y47sP-+9#+ASNLJpXvFu=dX@ZTAP zBM*j%ppN|XUxDtC+lg<#C1by&jxYQ7Rl*(tc^?*vm;T~F7B|7ANx1t0JrskiJ T?B z?1mQ&-OqnMhHHr(i|)6&tnpK1aF2o9Z9ZD_BG)DUt$%{4d52a;OYM&)I|v7u=hwsu zmpLK<7$DA_vPt#K;3mZ7)-Jh)Kp>*w@0@?gftARP7zfwY;FoRyQCFNUA2#T(_r`D} z-LtmN<*DDk517=NsNQcgt|)3dGSLlkfE4^ktYUEi2jyMYG3ipPIhL2#iBGMkvN(VA zJv+y6*}zS`h4P~|Bf{r$^4*z_abBH%8)RN-^cFYK{ZkyJVb9awB&`E8^tMNl>kbFG zbhyjPNNQ6cnWli$f}UOvw6wG|ZMmB8hvl%3Q6ijR^w~C+|FEiYL^r+ZxXt%fdF!{+ zP7n}q#vAMEzT&B#J3VTg^IQEFo8ZT6mrO^ac?3GbuHlf3S3VlgRLj2G*V`jFdomHU zU@7%Gq>swGS_opj?$nWwOeLm!Q>Di0y*-=x!O42Cfb~#bP~pPOBUUC4n_v#TaZ`>K zj(6nK(_DOfd@0N_A?z_7mY+J~)OpZfhIDN$(a1^4t^xTDJ&(l&E@q>^B;-W3I%W%TF7Yl1%x>|6ua{6_l~Q-f=mb^%fq_?F )yv;-h$6MJV)lxnU;ZqwSAAr{+h3mxPT8jPprAsVg{wX-e8zoor8CMce!vGQ8`s$ zfgEZDQNvmDGWf_&+Dbrdztl{w{$*emjYg~d Ig?-Z zoW4z1wbWeKl9puqw*uPE3I{!65~`{eaQ(=!1LO(Oh;g>()=IX;U6-&N{Ezwh`IP#G z^= MZt-{Yj+NUI17woFi+I AgnL{q0$heU_H^e+~OU zZjoqtJLi_#q`GBv$u}roJ5$-DZRm+8C#touwl)DG$^U;us%z|fEmQ8iJQO75%6Z8V zz(Fp!Mfb6K)W&0cUQAF>a7GlsUgpdHtaJ~gpS*$_>)3bZe6y cgX-;AZkCa|G z{n2>ErJ%H+79RlbZDJSu^US`6Gs|48YbG^M1f}egVf&+=txaL4d}9so>O^V9Qs=L3 z8B;WF1<77Uj6sgYN=5CYOWJtIhWt1H*fMX-77=f JTw3w* z=sJVAwJr!4cq18Sd{bu}zw_vWn0ro-b}r=3+ps>oXvMhQNMIWH26n`|e@=S;!duxm zzv!1jcGD8luj^Oekz56DR0}F758gsf>Z)?Pa%z^^&Abar?l_9Qrjm`KJ9Cl1= #^G$ qR^2pH`1TSrRaUI^ -v%%4k#U)oL=#xB# zw9PHoJ~mT|Mji!H3l|*pM!&MUTIQ%`+|IA$A)q)7(03?=UW5aA(8=F3@RZs>Yi-kI zW~M1{bEULL$xT^TS68nC3X_;}`81A`GkcZuvB?AQ0<$C8n(3dab*dvjt4QIDpWmO0 zR9133wm5QLYue^5#&m2bU$@+Ls-DQU__&U;_}&Il;VZ>3Ux1HREzfEHE3O&vH8TVK zPrnosMhF=;@XY^Ma^>1I6X6Dg%u50=Cd$wTm_9Nq(M3nEA``ato Z z*4E2UhDY%W>%IiR!F2=s!g48f-rALtprqELoI;?~&+}89`I{MdCuirxuLqxIHoDr! zDJn5|;!$9@hDTerzVCD+&L~a}#ntifdJxagc!GWR0Wn_OSx9C?>x_r{PC5@ai>x2b zV5ZuDiFf4oO#CV-mU#H$dPPq*ZHM*CyS^Sb#fC4vkb~)jyEfDryoy3@9ljhc!=QRb zde*=PAa;jK&Cv$%A5yEpt!aRRuyNZ4ebp%!w #b2&cl;;-K*L*y? z1|sv_lMJhirPe-a#cSA?AN&Ao7{_#y_m;N&hjiynn(My;jRXJTa8 *Is!1z3T zbX2=NgM%vAW2LzD;zYR5{?3A?o`xCVOZMD=;!jjNX3rY*5!?Torj_6auL`)nzI5gK z&!<7&gVsFRa&}fygm==LMEe$6of@abTQM*8y}&B~JQfmNTcAE$E2A|ZgE%=nJ^^>0 zRl7P{4&KC36>{_l8p4Hr3xWG)oXAgk!R;x~Xy&r0@c3L|J>iluo|^LL(W5n+b$Qo> zP?@jDT9j4COK!^icUOn?)a{94p`K_faPNCoY*;93xv;@NgUu(+%+YsyCXj97s(9RG zr2#haUj>*1(+gaHD@m`@70+sh9JxDrSHIE!0m<8Z(p|`Lf{$T)ce_ZhBwn{oqT 4L>>k-4OJYlutfo{M? zp8RrkKM4(Ny
Dlz8i2QBIrT|Xw=d-@S70kbkG;)dwz{sRD%~nWxl;XIUa*0x z7#(^vXJK7QL~FB{#yOulGm}?}`8z?vpDz4#1aQ%qWje`s-yOJ}#akMVpJoI%Bvu+> z3(39)fu!^~V^Y-IIxLu2#ZvnlTO%eEFa6@MnVnl#qwh7ri4z~qLx%G%?g8Xx&s`8x zE%n$^7TcMtis_2IETw7ay?HD2 P*roH pa@741wwBsMS6*V^b$dep;u|| z$;_lMOLjlZ^FF&DmQQ(-aPGb5{Lb%`d;d57Y-G{ViHMUfqrsk^(^_q8+hw~N8ZMxZ z0b6H4EIvLuWB%Of3557Qzer1`Ucy`4L^!X#!O;5zNLM4r1)7uI p1+BUv3zRq!p%ra(zr#7FCAam(s~sr4Hez)kDt5%g%GS2Usl`~YL9p9% zuJe}A>Ma5h+u7pzyyA;xyKMaz^Q*-3lKXh)In{olj&e$YU>3g}_g_#NkmoNKBP>{6 zjx_COM;Yck@!cwoMH}+Y!QHCN@mDs+%l#OP!JD+SwkAMR!})`GD`V!hmHyDnd~ E6W}Ty7dww|;>r9u> JlbZII zRtcS!K^M<8)Ab}PJb7ZggN>8%`UT7D+6) UeL}Y z%RPO(SxHZB=g;F9?f6mGNw2UIArS{JL_00bPt>j&wrw|UI`2bAk6>V86&SB%jyR6q zYn 5x;K#-a9x1O&Rs`Z zxDH-=6e6LX-D2#Ri^i8V@N*37E`724`YEvTt?Sf4Z1%mTy(rQ+nlF9sy8Gt6G5dW~ zln)AnXb|pBH`j2R{jP64gH~~GczG@ajou_1UguQvU5QvgW1Si-J9p1zA9n(^VV%wr zOAy@ilP(9YwWJt^Ud=e)>9;V~?Y-)0`UMI{oFc#H#n8%bb^+3$gDUh}=H7JZo?|1u zwWKRBkja12IeACi^SfwdJF%#4FX5N>@@RYe^BIDRVlkwwHzcGV;O25d-wi|z2N(sW z+mr@u?)F-=HobJRPIu08CGt c1C1}YKM~)NwJ$a?p+XuzJ!BmKXgcxwd2*T4TZ`wjSAeb zlMd*HA@{L@&=7Z^JnWVwi)=-FflcYq?D2jRY~N#C*paC8zH*=W3q5tZC*#K)3N$gLVhdp zNm8rnnx393(yo)&`{%?>@{gCEdv{_4?j=>$h>}~zX>OU@eNK{Woz4UG(&)ZBJ4ZWn z^M=U?oj-R4(uNQob|LlZ!Y|WVzI`uoF^U1Y0|9|zRiP4fZGk|x@z6M_`~oLW 9790~TQ=(B*q?JmYOe-4j9Fy^N8@(Fd6 z2k>9c3*s5Yo<)#g!@z{xAKlx<9eb8M*VHtWf3PcLF;Q}T_X7{7=q3>kU%jbXtMn8O zfL`x^2)G!i@t!E<(ib%S2khM|Rw7+L$SPENKuV?Ww28brfqH91N|2BSj|k2>FOlz0 zC#1u4GoNK&1h)z~43k&G#i>~tN+@KW#TDETGsqBLZ2ZjKepp7v=&9}0K#hKAoJp>u z$a6W*+`}ztrd5qg3sdRC54}Y+T`Y(1ZrPP)&%9 s3J%xgntn{2?x2KmA2xMJe#GOY&2fW+uPgv4O6yV?`diG z*_)={f8+NGyIST^+m`EOW%?ypM7t46+VCJ1Dipn8ueTe^71LoQ0jrpwIpU;?_;aWY zw||4)>8^s~QY+QQdT)#pcw4vUT&-5IwY9Zw LKz?t} zIg3=tEZIGmI8z}M^-4e8%#>hnRLmp4eW}%t< Ri4ge(H0a}f29$2=tbsTiw 0ZSuETjEk=ZC@S;f~k#7%@+ z+c5&6rqE|*pynBttF$bDej)}{>lY|P#O~$?3k38;GPPl@e`K;Fodx&{?R;PqH_ARF zeY+q?Q~_IJ`l>;o&UkTdOk-}WJ9Trw&Y>KxxPb_z0JcL;TqT9KqO*Nwpjr>9 sJ)KBFnrUe- zYbd7dQs{5n_%ma-$A84{#bw``HZ=>C_gcC&?dXnNNz(NX92y(bK<~7w^$S{bnreq! zYMBFXYp?sI#57$;bn^~zqp%=#YHsBKZmqP|ftzps@R#B$rV@|IY^51EO)kPSuA?@t z9JD|7ShvTKf~ne*Lo-lzJcX;M&l}xzgTqQ~brP4}3WynICLa|?^yR=Fjqb^p`^#|9 zniLZK2K^RXXP%4bwf2h8nb=>*p3dYi31F7Y{FyJ5%(LEttZE~GUt&P!IMRHr(9QpW zufie(gcYrz<#UWJsh2fi&hCm zXHJX^;o@WP*N4qMNEqiLOE=F&aHhB8ueK&~##rj6nmk`?4NkB|TZ#_+JiwpUNIGB# z2q9*gGq=!tM&OR jktD2-W8TB&D|T$-J(Xw{FXrhL)AN?3sw*x~JWR z;C9ncon7zeAV(xrv>~Ixx4NifT5*Ohdd6gyO${y%kY5SADx*5;_fCQk!BYgy_QBWT zxlQU_5fN~Rafp9)UeQmU%A58 T_%RZHyQF|^eW&P#t9;`vi zcXR&+iDNb$ul)l&mY0`X;|CnPehQPa(w${YZY^c{iS+OAYbjvr@}4+X_$7%yR*ZSK zkM-Jh=-h@b*Q2#$!U;KCu?l@eoN)_jXF-^QO@+_DE>F%u7NhZd3hZ%GXdu1lk^spB zbQnot$YTF-tVWRRivGM9$oAqb49Z33I%bHQYcAcM$Bua*M| #D?RBla^DkEvncFzPD+qM7$FbaB<;fNSdn z+pV##f@B;4_GbV}_T`_Uz g9S22bo14jdvKbh1bx >;;2jmwna2fwtg`maGKFSpRbui74nbg?vC*^(1 zAvFy?1_UUG4E_U{13v9W> z6I`dT+eAs>1 )})#jf}V$8O*m$Ue&|d=4xa{9IRv1i|9&1LF{}fCUb@ z KnqKri1Ns?1bbtV(`SGsj|0V zDC|rcZIVJrh`v(ILhL#`KjE-H>EY8O=5cWM)%8*ZP2?1Qdvo{0!UgMJbdy4eOlso2 zJoCMSicNzBK-LHGq(G9aXi)}xjVQ%;l9^^uzgP}`PH4qmE^w3LJ#H6$RL-mpve3+< z>ZEV`&|w-GfZ*HFGvq4MUl{}b9B*5+>^#lkR_k|P3t!}{Tm5U1_o^2`u`lg2q>oKy z%%q}}RX{TwH3H8Kx~|?YK<=c-VZC*Z;U#mSd0pi6^bjstC>)NA4H7Gf$UHd2kPc?_ zUC6#e4dtFWDC4^}k?4mWk@~h6w$&RUCg6Z~(<1FVve85LB?^_a tvzmHeu)}h4( z=sI=HcFZby4c5PKT$t={8yg}J)L>K5(n{RJT8p~qIS)I(qR08IGNMi2Wu<*zQWc zx?e3EDV-&|a?>2HdbV=Bu2xIzTD8aAu%GlJSD^y+YM}DYjAu8 Nb#)?+uwrt(n z+&tB0l^RQ|@8P$ln#xvIeYgazuBv- 8$~QP0E8eMl>AzJ-nq zu;Qfs<58 Czzx{XAs<@S(kSp=T_N67n_MRj=?Wxv2Ss(sbvMjG1Pj2gv73YI z9!c_V{mR&P6$gbav4!GaYsC+dT2+=n3^~ +}Kj>R@_hbY&-{nSc_|Kz)?0QzoaK z5M{;2ui7krQtEPj2Hf!~tlNf43y(kxk+%CDQ?wAqagTkH7!D+hWX;8(5`srP`|nV} z0@bt1Y?1BGONj=K?}}kE3eO1eQ&{>sWsC{v3&T|pQ!0LJKSeeWL+-_BCs=>Jw{}}B zT_t74^(hGS&@dbYz<~kNRc>Mph-?dc34)>~)Cwwss4%BM(azv$4AI3Q7m9_#!&GmM zm@N=nJ>@KvyydSEFbOpJnb@6zNcvs+Tg|gjxY9L>SK<+Q{m|%PIo>;(LbifHy(t1V zMO5Ja?@w=TOn$A1acGAeC2DymhO#)OrBff5;c7p#Z1*Endhtd1KWc@}t+N#R#Eoj} zC^=8JS#t(5n?g^y93i&FCG{T^?igjemqXaFVS_$n>AnO>h5cm}RP{E~k`n;G$VPYr z a2&~uv~|G9Z8*(m2Qu^qJ*TQlItGYWet6Z7AR@m`sVvb3;xJ?jeH*9d6e ztYJohM-uh9Udy>VM;A=?lEW}lej@_vIknrjZ->;)L&_0HbTe*|YgB-$kATG3;mKjj zTl4LVFI)N4=Hv|_H`aiT?o+eH?m}%oiZ|~f)|hBLN^?dtqZsnOQ1F!Llee>XONlEJ zhK5Ai6e<4BAWbZ-Mf6=MlUq_l2nq@gK}%%_V)_uY>MS92TlRkV)e@p?IKdkiId4F6 zRm@=q18}E99}D~obm62bl_|*(bJPS5y`8N^&Q8gn5MQ89fL8mzV^t_Kp#D7iHhj!m z5)w{97WF8VY!;pQuDH!}_Ophu>kZB-P`?Lkz4g6{Dp^r$UYLRthGM%D$!!1%Vu3&~ zTj66DCSCG^sRw6b6;_Rg14?2?I;z?nnyBzdq8{S 2rXFa)O0`KD#25!q#7( zG~^y#^cUe$sWsF3a~9Dum}c ~Lg!S%wvN`^d0C;{ zq)QB5->{mI;3BT>Z?3LCyFnk+2+$!E!F0NCDxBiA6jchV!UB?)b;Z_SfTI$8eCBN< z4a4dKGEE6tH)z=A3?c=b{Aq939wSQ{U)c@Fw4XJg1>93a;P$DIbC|V;?PmhurnelR z1zhL^xv=Wpps{krXs6W`&(OFh>D@FX{2S>1J>8{j+{PEyYtkH<^kjW({5$A_awcbu zO4l{4Ks`NCchM@!YkZyj-F~9eXMH 9F5uvKC;&g-(YS>>;-)$d}cVqyc+~_5~YWYtewcE0M1WIes)Sy#bK|r9wq) z0 zvd^;ShXG#Hr|J|1ID&LCTB%?r&Z;Pv{8DKr>)@DY6c+m%=vUXjLN z5WpvEZ+S!C{S7S%J|JPEW-L|qLj@wtB+z+Py8|bUX!bYRzWxVvw~WKv=r7Tt{DT1O zv{^&!8l{k#;r}_<&CE|+`|kxFBnl{+m}9q)h0WSm`DwI*4MR9IH*K4>kJ4bwi{KUY z5A=?%?=(nJ2-L~(H`h0d=4-&zi(RQV*OzUf3$pb!TGxwF0;p(BO!N5oxY7%(=(9C` zMEUwZ?c%PPhGrU!UXhpTOk;FnjVr0*OA$wjkTCjn0Ni7j%Y-!|DS!(D+1G-%Q}R@5 zDn(TwQlNkJFnBXug-Aod9T33oXHPvQ#otg9z&52t2s#>*V}{A?=jf*%lcFL_A0)*0 zy&36f$YuxGYQmMLD8o_ymmX2dk`XEEepD+T0moz49e$h( oN@3dj~wc3ppA|J;sPGe~_f z$ku*5xxPYC4TzLL_ Rr70&{OI0MUeYT6I>r{T$1xvaS~>$e zZ~g1P{3-iCWoK}Vf3U{VS`V~a);BNIOT_rM;hq+a^+1nqY%NkLU$h`*4)kY5);BN6 z&2w365y}^l#6pMeCC3_zkXhz0{fD(e{%2OQ(*C1n-5t)qg^rHCS^4a#i{u$mz4)Jr k$#DOd4E Px*B1uF+RA@u(n}3KDWf;ewXLfJT>k!>Dvm>L(Bmyf7il8DZ`UROvb%oa1owxJM zx#vPcm}0hRmJ&$mc{lHD-bp_!kDxRoIx3PNiU`Y+`Xi!1RFb@_>~i Qp&OZS3YMS JU0u_2x!hhvys=V&6#V1?fQaZ71#MZ$Ft8mvc1*Tydp`hN zTf+Kx062(<$Cx=+Ho|{`n*m^!L;EKHOa=h28@rr{Iu-qvlnrw%gm?=89(G$W^Jf6? zY+YU5rwt7ar~L#LLhJ;9r4F0@h?r#NHv!-(4_{9Z(Mx_}xV2}2nWnh_5#M!*Bt(*k zM9@H9U_>-e2r&f_dztwL58tbaXj9ObLtyE2TC1