From 70f5640505d82d287f45e4b6ba46160fddb00e3c Mon Sep 17 00:00:00 2001
From: miroman-afk <74014189+miroman-afk@users.noreply.github.com>
Date: Sat, 29 Jan 2022 02:42:54 +0300
Subject: [PATCH] v.2.11
-Force update button on dashboard
---
commands/TopDishes.php | 12 +-
web/controllers/dashboard.js | 173 +++++++++++++++++++++++++++++
web/views/dashboard/dashboard.html | 2 +-
web/views/shifts/images/350.gif | Bin 28282 -> 0 bytes
web/views/shifts/preload_1.html | 22 ----
5 files changed, 183 insertions(+), 26 deletions(-)
delete mode 100644 web/views/shifts/images/350.gif
delete mode 100644 web/views/shifts/preload_1.html
diff --git a/commands/TopDishes.php b/commands/TopDishes.php
index 1ce6c8a..ee0105a 100644
--- a/commands/TopDishes.php
+++ b/commands/TopDishes.php
@@ -4,6 +4,7 @@ namespace App\Commands;
use App\Component\Models\Dishes;
use App\Component\Models\OnlineItems;
+use App\Component\Models\Terminal;
use App\Console\Commands\HRCCommand;
use App\Console\Commands\HRCCommandInterface;
@@ -11,7 +12,12 @@ class TopDishes extends HRCCommand implements HRCCommandInterface {
protected $signature = 'gettopdishes';
public function command($input, $output = null) {
-
+ $terminal = Terminal::where('soft', '=', 1)->where('is_active', '=', 1)->first();
+ if ($terminal) {
+ $terminalKey = $terminal['key'];
+ } else {
+ $terminalKey = 0;
+ }
$info = OnlineItems::where('menu_code', '>', 0)->get()->unique('menu_code');
$count = OnlineItems::where('menu_code', '>', 0)->count();
if ($count > 0) {
@@ -58,7 +64,7 @@ class TopDishes extends HRCCommand implements HRCCommandInterface {
return [
'status' => 'success',
'dishes' => $sorted,
- // 'info' => $info,
+ 'terminal' => $terminalKey,
// 'test' => $dishes,
// 'count' => $dishCount,
];
@@ -66,7 +72,7 @@ class TopDishes extends HRCCommand implements HRCCommandInterface {
return [
'status' => 'success',
'dishes' => [],
- // 'info' => $info,
+ 'terminal' => $terminalKey,
// 'test' => $dishes,
// 'count' => $dishCount,
];
diff --git a/web/controllers/dashboard.js b/web/controllers/dashboard.js
index 40520b5..6e0574e 100644
--- a/web/controllers/dashboard.js
+++ b/web/controllers/dashboard.js
@@ -277,6 +277,179 @@
});
};
+ $scope.updateData = function () {
+ smartRequest.get('dashboard/online/updatetime', function (data) {
+ $scope.update_time = data.updated;
+ });
+
+ smartRequest.get('dashboard/online/updatetime', function (data) {
+ $scope.update_time = data.updated;
+ });
+
+ smartRequest.get('dashboard/online/info', function (data) {
+ $scope.shiftInfo = data;
+ });
+
+ smartRequest.get('dashboard/online/payments', function (data) {
+ $scope.payments.labels = data.payments.map(payment => payment.name);
+ $scope.payments.data = data.payments.map(payment => payment.value);
+ });
+
+ smartRequest.get('dashboard/online/orders', function (data) {
+ var total = data.wait_count + data.closed_count + data.deleted_count + data.returned_count;
+
+ $scope.orders_closed.percent = $scope.calcPercentageForGroupOrders(total, data.closed_count);
+ $scope.orders_closed.total = data.closed_count;
+ $scope.orders_closed.sum = data.closed_sum;
+
+ $scope.orders_waited.percent = $scope.calcPercentageForGroupOrders(total, data.wait_count);
+ $scope.orders_waited.total = data.wait_count;
+ $scope.orders_waited.sum = data.wait_sum;
+
+ $scope.orders_deleted.percent = $scope.calcPercentageForGroupOrders(total, data.deleted_count);
+ $scope.orders_deleted.total = data.deleted_count;
+ $scope.orders_deleted.sum = data.deleted_sum;
+
+ $scope.orders_returned.percent = $scope.calcPercentageForGroupOrders(total, data.returned_count);
+ $scope.orders_returned.total = data.returned_count;
+ $scope.orders_returned.sum = data.returned_sum;
+ });
+
+ smartRequest.get('dashboard/online/middle', function (data) {
+ $scope.middle = data.middle_check;
+ });
+
+ smartRequest.get('dashboard/online/total', function (data) {
+ $scope.total = data.total;
+ });
+
+ smartRequest.get('dashboard/online/staff', function (data) {
+ $scope.personals = data.staff;
+ });
+
+ smartRequest.get('v1/topdishes', function (data) {
+ $scope.dishes = data.dishes;
+ $scope.terminalId = data.terminal;
+ if ($scope.terminalId > 0) {
+ smartRequest.post('settings/update/force', {
+ task: 'online',
+ terminal: $scope.terminalId,
+ }, function(data) {
+ });
+ }
+ });
+
+
+
+ smartRequest.get('dashboard/online/folders', function (data) {
+ $scope.folders.labels = data.folders.map(folder => folder.name);
+ $scope.folders.data = data.folders.map(folder => Math.roundClearNG(folder.count));
+ });
+
+ smartRequest.get('dashboard/online/printers', function (data) {
+ $scope.printers.labels = [];
+ $scope.printers.data = [];
+
+ for (var i = 0; i < data.printers.length; i++) {
+ $scope.printers.labels.push(data.printers[i].name);
+ $scope.printers.data.push(Math.roundClearNG(data.printers[i].count, -2));
+ }
+ });
+
+ smartRequest.get('dashboard/online/tables', function (data) {
+ $scope.tables = data.tables;
+ });
+
+ smartRequest.get('dashboard/online/menu', function (data) {
+ $scope.menus.labels = [];
+ $scope.menus.data = [];
+
+ for (var i = 0; i < data.menus.length; i++) {
+ $scope.menus.labels.push(data.menus[i].menu_name);
+ $scope.menus.data.push(Math.roundClearNG(data.menus[i].count, -2));
+ }
+ });
+
+ smartRequest.get('dashboard/online/profit', function (data) {
+ $scope.profit = data.profit;
+ });
+
+ smartRequest.get('dashboard/online/guests', function (data) {
+ $scope.guests = data.guestsCount;
+ $scope.namedGuests = data.namedGuests;
+ $scope.sumNamedGuests = data.totalSum;
+ });
+
+ smartRequest.get('dashboard/online/deleted', function (data) {
+ $scope.deleted = Math.roundNG(data.count, -2);
+ $scope.deleted_sum = Math.roundNG(data.sum, -2);
+ });
+
+ smartRequest.get('dashboard/online/discount', function (data) {
+ $scope.discounts = Math.roundNG(data.count, -2);
+ $scope.discounts_sum = Math.roundNG(data.sum, -2);
+ $scope.tot_disc_sum = Math.roundNG(data.total_sum, -2);
+ });
+
+ smartRequest.get('dashboard/online/guests/median', function (data) {
+ $scope.medianGuests.labels = [];
+ $scope.medianGuests.data = [[]];
+
+ var tempData = [];
+ var tempTime = [];
+ for (var i = 0; i < data.data.length; i++) {
+ var newDate = $scope.getMomentDate(data.data[i].time);
+
+ tempData.push(parseInt(data.data[i].count));
+ tempTime.push(newDate);
+
+ var indexTime = $scope.getIntervals(tempTime[i], $scope.medianGuests.labels);
+
+ if (indexTime == -1) {
+ $scope.medianGuests.labels.push(tempTime[i]);
+ $scope.medianGuests.data[0].push(tempData[i]);
+ } else {
+ $scope.medianGuests.data[0][indexTime] += tempData[i];
+ }
+ }
+ });
+
+ smartRequest.get('dashboard/online/finance/median', function (data) {
+ $scope.medianFinance.labels = [];
+ $scope.medianFinance.data = [[], [], []];
+
+ var tempSum = [];
+ var tempTotalCost = [];
+ var tempProffit = [];
+ var tempTime = [];
+
+ for (var i = 0; i < data.data.length; i++) {
+ var newDate = $scope.getMomentDate(data.data[i].time);
+
+ tempSum.push(data.data[i].sum);
+ tempTotalCost.push(data.data[i].totalCost);
+ var proffit = parseFloat((tempSum[i] - tempTotalCost[i]).toFixed(2));
+ tempProffit.push(proffit);
+ tempTime.push(newDate);
+
+ var indexTime = $scope.getIntervals(tempTime[i], $scope.medianFinance.labels);
+
+ $scope.fillMedianFinance(indexTime, tempTime[i], tempSum[i], tempTotalCost[i], tempProffit[i]);
+ }
+
+ for (var i = 0; i < $scope.medianFinance.data.length; i++) {
+ for (var j = 0; j < $scope.medianFinance.data[i].length; j++) {
+ var data = $scope.medianFinance.data[i][j];
+ data = Math.round(data * 100) / 100;
+ $scope.medianFinance.data[i][j] = data;
+ }
+ }
+ });
+
+ $scope.checkUpdate();
+ };
+
+
$scope.update = function () {
smartRequest.get('dashboard/online/updatetime', function (data) {
$scope.update_time = data.updated;
diff --git a/web/views/dashboard/dashboard.html b/web/views/dashboard/dashboard.html
index 3bbbef3..38a478c 100644
--- a/web/views/dashboard/dashboard.html
+++ b/web/views/dashboard/dashboard.html
@@ -1,5 +1,5 @@
-
diff --git a/web/views/shifts/images/350.gif b/web/views/shifts/images/350.gif
deleted file mode 100644
index e19130702c0c969ac1d037d6b5c55ae742f41887..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 28282
zcmcfJXH=7E`!4)I5=bZ^bVN!*FA)NwAfSd0f*Oi~h!jCoWDpe<6*Yt)MUa4~bm?8X
z^pen|NfQf*NRuWaAfjN5?-iJt{ol`e_m_7)`}M;tok4QDX3g=tj`O_kF|#n$+2=-p
z5Fj%Uh}`3~*j|QRFQaFZ;kUrhFJr_mF#LKM6-x}eW`^Gw1DDP47-IyiGm_RBi%f=b
zBO_^y;oZv^-DFfS8FDEM${@p|i$R%WL~JrLnGDJ*!>X2%xxldNV(1q!GRGKBZx}
XOpy2+4BSW6mVIQ23DmKesBjDQhF{W`;MhM|?s
z@E&7O))@@&m5q$p8HUFj#x#?G10OoVh?ry)E-+#T89hvf-x5Q=l99B)2mnvM%CKu^
zByBR*n2b>-qn^o#U@{7sjLaFv5R>5q{t=VW3Z6WH;WWqy0H2c2@SbE)HW^mUj3n?8
zBMe+RBLaN?8Ajm}~-I?I^r@NykXw^J2WaQbq!CHT!VLxTjRWutiqXQr`v
z$Lq}sg1yA?kE*%c|P=2v{(0&g6Y4C#B{tHuO>bAxja&
zqg{$A7bxWi*-n&&R`yI>=6O|cT+aM(o#r`-Xt$HA>Ez0svB4jIthc*(}05{
z!0bdA#@T!_TzifXd|z?_O-7C7Rm+6!Zp>|YuzO*-?Yf2jGJ$F&a-&69&xcuRf;c&s
znh7Ovo$!d3@kyP2TdI$s4b{liFzCHXcPKdqV*8753
z(@dMUSvZiUURTk3Q(a~%#&U^!?LmnFRGIOa*!X#Gk9t)I5u;8wWcI%&@jAFhv)8`V
zM^hRxU%P#(f=8)=6~eDBv~=yrpc$j(cDs9{weCukb(Dyg8PR3m^-gREk71gnnOnWTifh7zm)YWS0oz>
z9xb#8BONj?HGX^QZJ}R>N1tRcFE6BF?|Z9i$+ih`99w0h!MnqB0qV!dA8&7dF8F@b
z8j?&O58iplUr3x%WFVMn>$*7={XSXylbcabH?O$e%NtzDIm`Rz(jPk4&ReD)*!O8q
z_paUWq_;kGUqVBQZVBdOq-=hr{}80SPQHGpj-xuN=+?JrqXRdlypFED?1734`TSn#
zRBhV-ElRIgckGb<@0Yv=)gP`2b-1h7uGf7VYgjNqyBv(c!253d-0gP%IA5Ei^L9S?
z&O1HV^@P;@TuLR^soZ4f{pV0+E$pp@_s-wQ_{y(5hQ}j6e^_5KHJqrCMgJW==l@sq
z+++DLxa9+g2SW0uWKL&XU0cWH~Tlki|vpBrA^r6dGu6p;GB4UqT13V=o|lcfX@14O=47mJI4H!PZf7_o1*pj%=j0VSFl^+3Ez
zmT!vyicJ<59)qmx2gCus02hA1fh{fySGN#bV$`p)Py(uWzxl_IL6#nX5daG?1n2>@
z0ebvb=m61wemnXPpEPlECMdak>gZ^2?v~mY5}%NmsB*$ubeDUE9!k$M*VCZDKy0rK
ze^Oa_(7uDBGBp|QdRdKm&z`xsXlle&bOi4cQ9{b>>T{Q=chAnt_Y^A_(R5Mj99KDb
z#u7Qx_o}Yp%{#j0*X85m75qdUOP!hC-u|J*-1lU(EXVl$_!~)fm|W7NbK{lYL%+RV
z?CPjfhd?kxnPf!EJ=FJ43spf+;%y-{Zd7Z0MtkJF%igYYP)_rJ+4N|Yt2W1IK3_HO
z1X(DV2}=tHq&kReD%K{y9p(2x(%=IIDi1b^wG|g^&!ro;A_UKvLbx~ssy{!DrXMq4
zs`SUkCko}+Sm-35qQ;n*WWx_Bj6+;a3HPeVB{Xx*>lbW_H+&I0#zj}^6>Vc^aqoX#
zvPa6}F4{#;vPW>AA^uWw7Y*jaJu>P0?CaJAf0euQB7D_&y9i#cfGe!w*gpzRrL1>PO?HeqCESLhG}o!+9cqOeY?7OS|LDf&cm8
z$%`Wy7Po!PsZ{AZT66ZayPYLw&D^etIF~>s*4&bhyU`VkB@5~|(R3>P$7Fqex~gfTlU5Kj2c
z%m+q~b2AmNcIQ7mvbVB01GRU)5%)O6cbF9C;fc(~ItifJ*lF#B
zIvAMT{+wO6)c8zfu(kTln+t8U+w~G
zdz8&lYxk`1eDH7h)*=!2h)aUv>Q1E?dvkqFKCQ$EP3wJY%apDiRil>_RHz2No${}&
zICdQMmpCGLbg{m?3upFw6|+CWsbawF;XvEV3cHcDxBA6}rMMkbt1F#m->BcwMot=6
z753>Hz=d6cB-i_pHNKStUefzvJG`H27>gd&xnQ2PpBPOaz4G>pR^LU@^yVFV9uE8%
z34EGX!>xu}(h;`z!01jz=oRg5kCr~N@##)^^2SV3U4Pr6{g89rT*i|l+V6r@llyl(
zKFg~!ZiFb>*rA3|*ZXp6^ue#mthdj~Cy>rq#>YTWKE2uUS3b8m$Z6`R+iQn&QqaP8
z1YPRa-(N2c`1bMOQQZ%AYpzV(;p)@_zdBU^-1)W)m0l9c(W^fZ!Bw<-Y~}QehNWS(
z04T+IB0Gc3qvU&q`8nmsq&7{__ocQ?x0(WoVBkUh5-Uu%TLXwx07L91
zE8;8
zV|52sH7H`i05FIESqypy=mMLpfM&q}8b>dqb)6N{0b?u=Sc-uD0wNw@GsuDg@BmbZ
z04e~|Mp*TM4+?xbdFoTo9^*FLP@1%p~ia!q^i@Evk#ZVc62oUQMPeOxB{e@7Hjon1&HsF~}&_xY<2VpU)?J4n|x
zq2<$6YHy41FV5X4lYJG#YgDAM`!7L0RCnHo`_dJMKKG{0u#O3jdsUb0P4_QEl
zd~2~tl{*w~6p*HHCKKw4IddE;frZ7Lx>h`lZ}VE;1%>mW2x&cVHq$w&K>&S*9W8eiE|9fGOrUkJfms)ebB(PkW-aykZR%$Zo?`n#4#lV=P_j~#uK&)ju2t!Rt$
zez4;c*T>8}9zi>_t8t=xIQFdZX`&lUm?S{V;Xk=}f{&B5iJW_CM{`xukuVOQ%e3?D
zpUfyX&(F&|cUpy;PlB`n$xXXV3(hIWceLbZX*FN;sTV)aZT%URl$oiSTzQJ
zNlkDlhTEiap{T$|WLjj^xOTO@+nDc*a}D%CLR>*{<9>WJoW^ASQdgAaslUjF{y~$7
z<6_!JENjBP{_^Fsc9@@RvRp)$wZ&@{UTQ^~@wbWmZme$YmN{8pg0)PQDD9FkV>9Vi
z3S(&Y$f_2G3GKX+RNi%xFmb7mm%%9S)8MRcdudi&-}X95zShDB5mCJ>M_aUL83o$t`*;S?
z?l$BU-CXu@QSTP4xX5=?q!XBZKy
zEGGaMN#F^=AEA<^4nU%i^)QU2N!H*AII&$CfDk~D?UB>}w|Nt&2p6|K5Ik|lj>le`
z;H535W8`jT%km&eT+JAd_wphT1f+ANT@N2dAlxh*lFBQBY(;ckl$G(E>6zKNt_3R3
zWM80p4W9P|+a7!1GFaC@6OhPjEkeld`XHgz{j$Q~h`p!wV66+jJ|p{We!*dt(GRlc
zHzbHtNe+&l{U55a;~dY0GDumQ{ji?OTf0_2eOozgc+kjz;-t)vK4oyV9u*OTwvyU!
z|6_36aw;P$TuPJ^exi&&C|-#Td1UH)f!*E^C4T>hbFz_8&I1w-Vf#M4c%&+Zj~!RS
zf2i>CGUvJwdRb}UvH5VxdD#cULdskzhL1*8GSpI-TvZ1aO^0&%O8w(wlZ8F*qa^J^
z^>+objGSZZ3t?p
zaZ6cEL5(@Tc*UDSoo^c#$8)Up4)oJ-=6rHE^{F$qdO@CXiCUpL-zYz3`)QWOVVHua
zD|}tMMK3J{z_P6ju7x_3CjM}tdA-e*(mn%qmVQ1=RX1!8%H9JF#bBIP56Q<*@Ro%kRZ@0QPRxo1OAOFcBr|tRL!3xrXBCJMH5thk
zD4BM4z2%y-2|_$wNVv&6B!S~X+>T~cgl<<(YD{{Fp`%hy2wYsxH(`NYZgHPc?w)Ib
z?S*=&`3vl)XyP*P^7WAm&kin(^zq6k^b5(Ul9-6wU+JG0w)y0ER)QRzIEw+t(_dxyD$1{=`*~F
zd0D2t7NW>gA_ng(Gi_G#$6ji6X3~b2F=pn4EA7s5H%qaCzJ)71(7O>S9ddoCmrE4*
z1cF4B3vl0fepl*;a%i;R%EeBXj9x~c?kT+7Z*cwmZtSTZE3H2LqvyW~8THY$UI`J$
z%R4Q;;l2+Eh4Qz&7Cox5=k+oB-`@ww67=U{XY3o=hc9usX}DY{d3o)XkIzx&`unUWKAZezu7M_>i=gU^&n4Oiekd5UmfV}Gw)fdw
zs+UfquZjQkX;?058mpNdyQ)#M8rl2#PV4-DZIsFPraw~pD-kd5=qnmXlxok{9+Yla
zn{kQS|Lgs)Nchi*a_NobCkKB&_u(22I+c{&4*l&y{f|gl#GmeDNVgg7
z+o_|s>D?)C;gDcXL+bUR0;$a*PQ%`-+(A=2F0Neiq#00;owv~JY~071l7_=DtU6@#sY@b|1}iABSIu^w!fgn$1EbU3}O
z16pP$MpjFJNEE;waX{IaZM6j*8{QoPj*fUdJ5`D(x&6_4GkkH=uA@F^my}`4`lc&|Hw_a#Un1^^#?n;Uqn6SMnL$EVX1)_`qd$03+nZ*
zpw3(4&0ls3Opz?He>Az8qsdcY58$Hx=DEv`M#9ZblDGPeKcOFU9thBZm?}IFA?SEk
z&qqu4U7%SR;?^T&Y@S$H2Ox+=!_o4#h}@T?a!dz>i48~>KaR_43|D)kBK$dh5hr1v
z4Y8=ZmT#6^d(%QJP(B>G6H_8&jU71GUC&7j{W2&|*d^hnrE4Q8WQ(i88avdXCJVI2`Uhtr}CV5YA?4TzHTHsEA6Epl^53eSfVKqs=VtF
zH~;jEuir9tEyzKrw$A)4iOpR>!qT&2mTL5CS*7TuWR1y=Y%H9DR7}#fTMoX(k8{h8
zziwJ`R`D<+&nT68+%-sSdB@E;!O#PNo#_ehmd|BUJwY=-JA~(@#U0@1$VrqKfaji=
zTPCA;{7=t63pqqzP!P4l6cnr1Q`-s;VlD-zy_l?>FA5P#Z7C^h7xxy~OS#lm`p&Ud
zr92+5;axJ`2%&MKGJU^1w@j*o35-C?F7eOHB|73`gV7
zh1#!JXGrRD^9cvcy_y+k{?Zy0Q#!z$gBwaRY(wYtm$nL@^zPv2&vY%pNaYk>=EC0B
z@9t9l{8@9C8_ns8*vVdfZUMKo#qz%Jg`O~kcFyvZzHYADp>VT567-luP1pQjZpMV?
zJ=QzP(AQ4(e?5O~adv+w!s+f`>z$`%Pgf3`S4dXAJ6RlQ4EswK+m>K$>Gpl}>W^nR
z@2dJ=UjKN^Zspn=8y@HD!sbG1>|=%>2d_^>iaNJ_IRCb$`qSh4z8e#UQyBJ7Nw?IR
z=WPg(nr<_E?+xLc7iwf7kwP_1!K@b4uSJ`+l-e(xC;K;+%D;`(!A0w5Q8NyE3teMaiR^SQPce}8{>mXE$Ua^>Uxn*6e~d>1qoP5vl~5^!1gQ&RE&zP^#VwH;00xb)fzy~gBS8%z3)*t{fU_=DiorB*C9;}O{6(9qM0~`Sc{X0(Dt_i>zAkH=!
zK$HKv7l4T~+e{p?=Ev@lRkgKMRTWluv_7=Wgn;fIrBkQ0w2(;Z&Ydz&&zw&19|lZ>
z5}cvXn2by1Nu#@PUL2XOv_KnD*_|5wU2+p`qypO-5q=L%G=H
za9x=%W6|MN&vsVJSvZ8AP|oIhd_Tx{Zh6v#%`6c5{#muB%4_|LFP2T5YTRE?B>7z@
zOPYgb+Qr%S7hQOvny7NG73NQfznm_XVS1Pc`@#zON=WOxN-pUk!u%BTnDya!v!kE2
zLvi<|_RzH8BNzKdBmd?~13~$W&T{
ztGq{j_9vWMeS&_Vv@6?NGXHuA^1bF|X=MXdt|-AYlbxt{*wDg06Ny}g_~Y_0S4tnOS+Lqcz@
zH}OAiM!ujMBVdz{o;uEs|XBpzfp^3a~7PPogdu4RgWc)M(EH2d{UZu%@B8?D1D(ZnTJwvbnV-
zD3)1ppf6sFX^pcP+h|J`isgTo5>XbPofs%?1Bnljy4jMYO|rgsB69B`Q?Y2DbPCTC
z$4xj?8^0W=cpNt1m2=!2y`Zq$DO?3wl`RhEC|ciKNO9^_3FWUz*KOx@kC-qPGtm0%
zU0^VWDOBJUyWm~cc_=NYe6%*4UXdUX_@%l-s{gMlOY*Hyj?S@uqq48-u0g0Zp9>c&
z%JMImqxP@q-D~=~Xx|D!|9rOrE4E_
zp9Qs8d%>6ZO_
z(YUGrD8zsEOEWS&X8(_m_Ua!fTsNWPZ5V6F0c{RKfK{omQs{VFE3ZO@!wsxX9BQ-3+F0XepFq+BU5-*S?B+s91ygsa=0&gg*Lzwd
zy=A&(Dr2ej1?<*x?dPHZLF#G>Vr@|Uqp=`wPtiqaT&E@VwxEFb(S{%6d->~rc0X}p
zuJg7Q!#2w&33t|)5d0TD3*TUjXSmEJg0;N4#M
z-jcIA=Lk$Wb2?me`7X*MMgSE`V=B|h7^mdlYi|#3oLDBSNKC*4{SEm5DKA^-$g>VD
ze9ia}Zof3%tD!A3Z7|Z_Bx!_^e+dT@PyDw}IR6I}TiXXvCP2!9ArpvL5ZEBm0TG}~
zfJyl
zE&{`we|-SE0Fd#32tW-WB6eZx!V*|iSF)hkCIa{XmJuMT8CyO88GsLfG9W`Hc(ARR
z5HJDkN;0?V3or*z25Q9Rxoh0`LWV12O;;fD&Nw0epx6H>_A6&6*y8V)5?)
zss0}p{_7_E+adnvPXH9o+fbN_D(eeL9Dp9!Eg>Y0AewGXo6sjMc5`#9t4Bd|jO85)
zH0@5JS=$F?ixX98s#)q(Xr6I_gC^IJBdW^UtwC#u#MoJSlnS3;IW=>)u`i0tj`opRpfy?%dhgp9v9_
zgLymLXkoLuukmt#$Nym}-ECCpvA!~iA|${Wv#X9S8}>Fsqwlp{RkUlb+Xs=oek%`Q
zVOXZ`$#aj6t*Kg-xD8Bn#ZW?m6n6USr=>?aH{=~FZak(jO{;c1y4YBu^zB59kmZbK
z9flGr`20YYU2wMpTohK8svjn?@p-xg^;juU$!!<0%E%l)(|jwm>oEE_ch&tToQ0tW
zJxZ?D`6EPyk^Xfg|J+>HiNdfy{e^wz_upsM7|)V3^tlcbVJ_0l@0}};C|+83dv}__
ze(9|4&}`25^YDAYjW+1jWqv~vclPTL=#3v?MA&s_M*q{h5GI%{aOj#ziSn9annUdI
zQ#6VkvuY$*OrVVI#-|&(^bqOV)Ez>y56ma8mSyF33h_=trb6&E5}PGTX!vQQU^X*V
z*4KuCkmHe|;hQm*Lg%ww2
zGU0w0FHTXyrM#>shSl>J`vCF$+_V%TN#J0TS3yjHCp$g2ETuoNSQ17x3~{f-6UT3W|g#D-)YG!pgtlY&8rA8
z=Ue`A?@0)~&x-SlR?{1ff#3mC*$=_}2lbxq5#o`(KoQX;?tlK$aTGuB#?b}8mM$_!
z41Di)RC2E%85ejhPt*zWJzM)+s*$j7)8VUpWU=VILN^o}*B|TI(aET&rc?CyrzEaJ
z$Kn)=uGi?4jQa~;G%GUVpb)6qlL_jV=mL)U^E%v7EmAk(8tBV4GdBtvTbJ(VARycj
zyA{3Zs1{oCd`)rVuT}J#v#ThCfvTTPd8KTS#hUCh8k^A8iA3Ln)
zDI0Gnp?Dva1jk|EeCISz?OzTQNE+uwovTD0YDMr5r6OJ)Hx$$ix`h?OB2~}rf_nOr
zcYCLC%WE16OW{NGU>KBHhoQJvkM}{`X|y}Nd579130y$BP)=Mr;h$~wssHc-B>6wv
z2~a6w!NDA?CcqSbjCG*?`;P0@EDDeTyZ}sqfe>HE9K^HUZmSfLZ|ZACLjM1@Hne!738~
zDX>5X*QB;k16TlYz!n>H4v_OeiX<>$0?)R!n+C426x(6~r~woM7y+b!6rhm+bhfbo
zf^2)Sy_E*51_0ClKUe@bfETB>y)fQMS9J--?g8(|D^`Xdfn8#YAN|W;yOf
zp=4zEjnGLYrJ=_oWB89$Wl*zn#bwmh^`Rzs?Xnla#(0w+ev``TD95^-f+l@+=!iJ6
zy`xmSBC@BivSzRzwYPvi4Aqj?5-{)%1jf9id$w-&z=k$+G#|o;qeYm&%Shddk-!iggf%XyJgxv%XH0#1>S+wE~-NW
z8|Q)USI2Bsr5DCd#fY|yp^xReE?3W|c+$N0?Ot(GALYjFZc;-ArXBjEqUIr|Pr1@@
z;T>69j%g~_GSHc4TLCzV*fE-YrFs
zGuJQ9tMw$JOI&M&f4tjIO(w0rG(+(GsG)wmq2T9AM#>46Z+%cziDGVX`^@)Dtes4h8m86c|+KtS7Q9*h#>UJ^Px?GG0)C(3G*pQ;_QLB>4#j|vh*C-f(k26C!EfYM~vsg>m5r};m7+O3ks_y
zy%3xYOPdt`r5#G5x?s>IoFrg!fq5m;zBSL1HLx%
zsE!A=qNC8pg2EwAxRz6daeAlH(*P1D8-axHz-tc}Kg@HUpd+I6cW44ZD@t3;t#bIpc=C4`+5h+YM_*afT_~O*;?ECf&z35UUVQPTdQ|J1d8^<_
zF`s>thG;|M@yHhqH>OoYO4{c3*g5-8oM=srn@aB9rOlt(cfED4;)%~bsDNDM##Ex<
zgx+F=bBPIRU;mNXc^!#K|F6Y=q;Bok;5o`zZWm3_yHxaNNq@0V`icpvNSMNR;Cs7E
zzx(>g^=FOYhwTV(?p9lk-)kp@`oq>6KSK0=d}y&@=f?RzWvCG9CqKEuj9-0RA9}k-
z>JtR=wVREBFsDi2Ns#dl=|AEfvJgmr5Py;@iqIeXTchM|sVlgGh@e5p>YTbi+mZV^
zWOo));kZ}~w;#!nil-huQH_OstP0xbr&^+avZ3-Iq+L|12Uj3j#Fz%lGgt|C=t&o;
z>S$BDX^sB3Zn*ykA7lUHveW8T;}~Jp4c3*Utw|LNkx5qR0HCn=*jgzAN&p!E3vjm2
z1lxwKt9U(K!7>Q)`eHlLBPryfC7m5zXS^4!+o0%
zi^G!kf(|F6a1Mf&l7}rq;^Gq$_MuM;;?km`@F(#(HhDHU`zMLTCFFg=k!h6~nK`-m
z{8PBo`%0UG_dRuZ;ZTV?*`1x8n=fy3YRE>C-cnL77}*hBl~G$?KQMGkiwl2xIME_v
zwBtorbzgs;{E*h16qgjPXc6)0Tp49&z0XJEJq2b*N>B(BDuqp1eEaln2RyD*gyYQ<3>@oP{Q!5`ulnN!##KTxB}6We5-j9u9w_1{
zL^2P->sCAeB_}Y*MpnK@#oou&P9h@+*WMXNCWVqF9_W`bJKDs`L#+*{_(Ah&jH<^^
z_WSmYsab+n$Copo9BI~>jJ-EaGk)xNZi5U_r}T$CalJF_b^$EB4HCR(YCQQ56Ckrs
zeGi?O6|*ngXhw#lq~=1Leu5iML7wb^knrP)`8gx%pGo-Aw<`_^u0;0LGZ)A
zwR!nZ$&R7Ids|g56e>DIFFY&AK9p17?tuQxzZY@~R-!lRwfL;AR-Dey^Nt27@0GG%
zENxfd_JZ+vBt9#DY14l;A06;M=Xvy<)Ll>kk3==pgkitW(}@_pb36h=7u0KcTE~6r
ze$}d8OlCJnn+UOs;^>?f%kR};e~usnImFG;mxKhFW^BgI++W}0qn!wgrLC|F7$Zfd
zW{+<(`OUDQuz1O$Myr66Usj#qx4A9AZoZh0r5fDL5B#NEF3
z#t4n2zPr)zMLTyNI+`63^!9cYn;crU^5exi-C$8?o)q>Eu{((r=ZLdQUTA7i{|&C-
zSCKSqe2XNw`8Vndold@Gpo4hg-mFt>>VGK+T2Q=HGmU}Kk;N9S==SCO+1}dEH+M!_
z@E+rlZvRrP=c|tp@V4?q?UCzmS?~S09I%pE_$M_0>ncVy5!vt2AM~v+gn$3^frz6B
z-V@cN#?AM|NA;KTt1y2s_7D;`#~fLz8Ut;4>4c0)O>-9s%hvgz;7H|6cm_hQ6^Z;}KH^52*%+->>M{K>82Pk0CvE>!0M?f>c
z0=Q!f>PQlJPVkkhTlHn@dKS2h_R~~-*=7bTpnEAaHt0VdEYGo`*A_vn0m*I%gHL&QOS+L5*YD^9ZHyb|M9sm
z3$F)Wm`N)hiDi@ZerFyd4{!gKE#TJp1b;hr$7ZUhs=GspFHv_Ov+WGnFdQ2}xV?x{
zq@Wru1zA)oS;S8Yg+@SwHkDpXICRI$Gl(&v;5+Z%hXY^*^}GP5mvip{F^i~w$l
zmIaNLj>p)(+qJPaIDm$`@pnCMi5zi?5u6}@qLzNBKdhQnqU$ftrRWooefZWsHg>z?
zdZZ)H>Q_IvcC}8J9-gn+6gDL9D^_ei*y982p3~Y_Mvl?+@Wsqg!%6
zIq5+vTH1)faH4sNJMwf{EALl+2o|P7NF@b`JU-`g@8|6wXTYE(Bc4U$>6eQN>GIkhD;?wt{B+knPYpaEYp!GEjRN4K3~w%Z!_2H;b|Loq3j1})k3*U
zug}lUJ-=x#Dr-e(FQ&yDo|wdTP)qZbFBVHRNOSsZLYKf&*j(GFY
zeh5gBQh$Er7;315W0y|_iJc{tG*6PWeSV0>7#6f}?3gCr_@pWZVV^S1^r7?UefBjG
z(bB?f?x=9Nvu`T!6$V}*f#4_cA~O3S;;pkJQ&hRV&&GU&Xxe81?g;)CF>#3Xe)J3J
zr}|&QUGCJ1q$b1sNJy82H|~o(go#l{oXJ(@Z3X3!;P-92iD~A
zK`*9K#rBr$UOmhQ5htW>3RN43RTJ*~*kD6uoi+Gp>k=+pXN@7qi|G%%<{f{?%|MN9FP$9rEoweHlyJqk@9atWK+}+xM$8HsX#jV{&
z1bENkpT#$D15AZjv#KpLz!V8=3&2So9QwD#04)M=vCRlejHRtz1&{~SfUUQ(L5goH
z!HR0|t-#U0_kS%mz-k*X#j*k<`W6u&zX4g`^$DN~C>X#8mJ(og2HM3WiwLj?0SEvP
zK)V38u*OwjfCXNV*cwg&8~{Xs5l~=&QQH(GEp08_0WAN#QO7DX|0Nc{H0uBK1BmhW
z8`e7LLn7AJhiz>SAC|QiLF;U2qOE10%cf^ibMlD!
zM567XxYAZiSVhJ2ht;(?b&X9#tdU4dTX9%KXJvIwR{g*rc8YlDZIVuEWMt)NOmtRX
z!vJ;?d&>6BY^dqT=Z-F)h70Z7jt!T72qe5$R7wmE`BRA$GC_~3Q;>D%76pRSj6#`m
zDm#DjjF?b%YU`d$R~LbC-)!duM;FPgixUO@?lN
zS_|Fqa9FI8SKZuS^7g-C3G|)Mi>K5=cN@gv;_w5dt9q}S5MDd
z+}zcks;l8m!3y0)Rt{noh_r(F6h$!VzV4v)O}MVjMUXZ6~nI
z&L+8cIQ=29$mCNr%wdNoyXD?tk0&Ml=$QoAC^|b_DkV%o5mhlf!|OjePfMx_CMj}h
zLsZTQ1ZWDeb2*MumAJ@*#JK}lp|rNl*dq&b8E^eGf|
zm{=%+FG`>bk2>?yD_)h+0?SFl6J+iWH!YtbB&mrO9BK$(pW4wfd|Dk@%({(pW&IYs
z);{9?MJ$}SLZ>sj?iX?Q@$$4I?Zmv7=_|~x`_Ed)#s+Yx9eRb{Dt!)fkwYvE|t4P8cipT0Ozpc+<)bzk)T^~
z9eDShg4SrIY4M4{c=x=pTMXDKr0+05<~m^aFpS^aJGGgOv(*>E;rK_Q;_aTQ3**9&
zihi;%$(|U*p*f8vKz4c_%x%7ae7mFA6;iH
zrLpw}_7Er;pc#N$Oj~^d0I|K&NZPs<3r1a_On}{XA%J6R9Rj2POn@o?!hgF-0MSN)
zO^vKwIN$>?(F1|&aBrZN)M~6GoF*S-xwaKz^usM3jJONY+
z^N6QuQLO8;4h~249~U54gFilB*{d2CheWbH9t9SA?)Uc$p`eu;OE(gCOoqN1rRI&wd
z`nU>`51~`6JEoitge=I6vA-*nq27lfz4CH=)4HR6JqYufS9U8>ZuX%|7^yZOzHfy6X0U+rzB2-6US;pgDD-~Rk(2(|PVe-G3PQL^
z64ULjQdKOkBd+1G%P$9z9-qS7+YD
z$NpqW>RZG_yR?szuGc~wHI$=B@>ZxqqIb~S%*^@?Ic!WxW9#|b
z`!FL@pZPT2G`jCvhKn_mpzISa7j)vx#>p0Q*Tz*HaOUG&*h1g_pzlf=m|%(HN~U+k
z4h0#9sD`?whdl{)I4Yo6c`iLrB}OnfOgGeeD$=^u9EH|hdq;>mu#}piby%yPz^UuU
z^!0%5kkgRE6Z|k)u{&_{(+`V{hYf^nkKB-d{7lZeEzToGSuXBbr~wUq;kZUC+Gi%z
zQ^6eVnuGM7v>*rz_QZ#Y@S)MU$rOR**r!jtsm;*)2hek=qB355Y_9sm`Skls^W#Z2
zq=~$oIL({cnd=^qcHXCVyz+!HMP%A|xkfP;@>6=vR0Q~l2Epv5?YaffX96}bVcEHx
zP~o!8o99X#{4@+p+ZIL&kcp=^V1lP&iOuD;GWT%>O~wNT2nRdWNRd;S@8N$IB#6&L0<)^B<3KcGS8%zs
z%BhKNC@UX*&TibWuCQ3jcfggl-SdIah66vxlz){
zTo?~$lCbg5!-0Y){BKh_rIT=kE)y-MP{fgz<&_sYQ~Ddzk3!hkXW&8vitz2KW$ig+
zs_W%$0d`)r<+Ov-{ZZJwQVJ``JPfh%GjdoxdV^2IAkszlJ$~ZZeSn&N5s{j>Il!1refP$Wjg%8wB#7Ih4nL
zEHD1ueQ)2D+FE~utldTf^aJ3=_6D3q$JQuk6jY5$))JhxbVy;{TmnaU%GLx5NCL_P
za03X#x-m7vVg%U2;sO*AkjGvBn;0OBL9}lTdj5Vd8wC0G5Qe}qcXCH;uYe!oc!9*q-V)RscGd|;%)6UbqV438y*&?m6ktmw-JBM
z(;44w*7K}4nw~k>{>Em;hNv?fyzqXMr=cijqUF`ltc#7=XG-|eO4AIo;QH63San4C
z^2tYYp?dy}`tXM)-H)GN=H!#{NK-qJ9)+rD_@=-oPCxy6`Mj~eZ1RgJrtt&sAr&d*
z%N*aZ9vh!H?tA0i8{KD?W72UIHVN;C%V#5VxLnAiZ#0Ba9K>afzc$yD_vUF7EZJll
zDE1W{y&J$^pfYD@z|?WTo7|c*`yeg;=5~N(D4S*NwYvyr*OOwGiaH-QRIfWRmtSW0@d%sFx}8~)t*d5Av%m7k>&G;X
zrhxtCyzK}4(I#fp&-})rk1p`L`RYfB=yB4__t~ck5U$*DK^}2`jDj{^2^++&`!iMk
zpjB>Ku&B6UAQul=XM$JK@v^a)3Muz=_)(g@43(6!Y>aA5nBQ>3K
zWKnMVB|*^#nM|>E!N>_B93eFt@{~i)?#A?^{g=(#1tEUJXSl}XL!j_uk1Y&2_{8Ex
zvB&&}v$#*r`8r+}Z*@J(_=9p$JDX
zr*m$tS3zRYuzeAEEWDsdBtnCp6!3eYt-{$qbpcX{BC+`yIE<644ovIbnM##b#0_E9zB~1f#37)e1aT0-~29=$^SKmoz
zE*r4Hy=g{pVJBZU*nT3NE-c}Tp$+Xd^L^g?`6gE0-xB?o-+)I@n%2l}o>Dr8wH4Zg
z9qHr-`=Bs->iO8dAXi_+ALq&MU8>(cUmiS@vA>mPH*TzXifVSC>VyAm@;*e;*((&b
zw5XJd;j^Onps)8Y_8W3jEstn(KC=C*yxsoF{>KQxptM`VA+kl)3)X1q4dE9pt{X3@
z+OjM2CpFJ$G)y%7x}&>3qKMxZW%ot@dda!=|I~J_@l5c4AD?Y(m>m#9G{-1vC^6EU
z6$$CO6fuQdB`t};t3d_LdbSJyL~Qs|=2f(CQWaHd)A))%|QhYc66oD`d8oyObKq4v)%#Wdbp
ztnP2KJpWP)AwMvBf=Z@|yN(6Lh`N1wwaY-6;33Fe
zIv_>DLS&=EVOm%PX)>3lrXLPbak2WxRe1jk5d3yKfd6zGSb_D-sT4>$NM(MNNgFRf0xAt^27m^@2q54S{NxD;JEM=6U;!@z=(BDq
z03blAz}x9<ieiN4%tlrgM&SPG|#NHURYI_?7XqM
z^x(%=H0N~MPn}B-#nq02M55x6h3Lp_4U;!Cc-NG>G-AHLRiH5ktk7x_kmN8e!a$_(
zJ?)QdX*qvu<_3hbvm#yEl}mR^*!__mD_3jnE`v|%FpJT01<47%&KnkIkBeaCn4`n$YFDLK$cNGHp2c3*
zT*?R1WcJuz6u5f4+dv5YM_1(SjFYu{1r2SZn_)MPOCIroYbRNzMXB5OsAnJc+l)jp
zWMg6Ipy0~u;vNAr>iJGwy$*EL5m^CrVL8P7h-x?YeMz?Ws^D>ibMVwneQ>%7ev!T0
zf)ec>oheDs`=+L7=o&m#TojvJf+sDnuWff#OKPgTj1Ak$(G}{jyAHf3hG_bGB8w9BzES=*3wE3>tLk7=9i)%}si=ygZ3Cluk=1yBn57UVPFAbrzPeOv|beAQ!qW_sH&O
zhQKt2xnLJdvPw`~g{%#gv{%QT@3yf$dahw+%Lx$);ZU(JoffA&YJ?njBmZ6tH5buPA+RRgob6X9?QL!b
zu~bltt9A#oLUnpBZyIU&c*1b)!bHs#YU4=I8N0jKm-oiQ2h=3}{_{4z5#1=7+1>AF
zI1+fu__MHN4a!ason@!@wqx_pm9HrW{S4j(nNdvz)R$5@i2cN@k6mq~egm}sXy!07
zE9lX%m&qw&G7XtQt!dFHr+u;s7uB1NRMB6!sDr18k#~s;UtkG(>AEb*A{slMB>JDr
zlM@_er*BL%f$wFFemEvw|7|c4ikWu*O9cX6X9z&;sR9$AJQwk8hJ7fq{)ZL+N}%$8
zn+aax&wrcu&mt|@Q3b@{d5CZPO(<}NgU$06prQcc3TAv@6xLa>&JDl{01AMM8n8^n
zKL7}T0Q7s^NdS5Pb@%0$6Iq}M0F(fII-9qhRLWnc1@k_5p$E(aKuYLyUN!`v0mOcN
zD{37VK-z(p11B-TCqNC@!va6UU#-pOhfp9p1AYZy2Lw;+Q4|QO0F(f8^7*U)t6KmX
z02hE2JYu}&ISBwd5M5<~4}Z>M6fix248M#8pBTV=F!=4of7ey~lR#aLAjQU!q7$zq
zB}c{EkZi7BPe{qkN=&cS_3ZjoI~;
zO@;By((?RfPHS6nZ2CP`9mm+w*oNC4_vn5fXVB3R_iQ-&;ph|g_{8MYbn2a4R{z2Z
zZmH_}?A*Wt8#!Eyxr+9FySP{QE)msCZ>J{12JD$+jgJIllJ!{+i*TJ#p9$$jW$Vkz
zVkvih9HQch+jR@fYrvVM>)Sp*nRSv-d7ACvIlp59R?w4e=xMZ3b}zyS~KOkabi4xTgbej9@G}CuiNwAqJz|?|Z*N!7Bh#_Bm@g|gq5XxgI8m;a`fKOQ?
zN4Q_p-L=lT>3-Qjonx)+E!Tn06sYg#ZLf`>RCt%2Y225pw>EEIqdg&G(`;B;W;+Bow`}tXkO9ok2vw5)eeCxmJi$fShVY2=05wmTVmMof=4z@5>>}REUN0m{RBny
znGrggkZhR24Tmuin%3B86g)~B7AbiIc??ZDG|7>G=62*rnmA1>MH;jq&0P(RJo2P>
z-Eo$P*M4VjiAJa8u$@VxKFYBM!D~4k2=cX$d8u|`NqzQ?K4&Mc>KW^`q}r3xO=XS}
z59LdF9{WrA(1|pzYTBmIB(}i80;k(oJ+EENSF_=AZ)b*vRYuykO)r|?^y*t>NHClo
z+7NLCT<=W8MoNpV9U+_{bzOF!cb4(;;JeIZ1*VCRa->J`ZAM?Qr=sSf@X4YblFb$|
zOV(#+%FT|RCh>>#d27N)i
z2_5s1YAYb49nbvKuDE$vOFU?AE(a_AlPU06^W0f&q%8*`B#Fn9;ZS4^jV%NlAhICZ
z6GrrQMP;Lfa`4|*RA+4C8Rr~OT3+tt}@
zLs%7xnLIzOD+WbDY1;RZ=gk~ouS3o}xrcQRK`o6M;@zUr3M-GRTet5*-yfE$@w*7U
zIFw}2?}k9@bU1ZTP*Pg%!}{GxkF}s9=iLo@s2JzF7dPPQVlZg$3FQ=6|5AK&g3x&JU4*Gy^sO=?9ZM(0vB@kUpL|
zgYp5WKQEHv-|zsFKTv<*7uNTgfcme$&j!W;2t8oNfB2#goC^?cUYZ1&0Z>r9`gQIP
zFoTyV@gHl{@I3-R6aW?IF#w+ckS4%a;%hyy3{Cuq=^u%20-wWQR{|;zFu<$j`R?Gq
zYYl)q_`iPu1Kjz3;c|3LY+O88V@gWCVvv>s4uPkoSsUEAm6~B-opm$2ASx#-FYk6?
zc}{MLH7={Xu(&F(23J;lt**KeSM%T@Gqd{cT~13|GOOV+$FAn-v)p?23tX>t-?Nfe
z!^3uyt`2Lx{FXTv1<<-*~
zur-hI#M?UXVnV6!{h1M2MX!Wyv_@J&NZ+=U+UU=L@?03vxmgOHT4|_m_4Y*lS8h+aA>`9`*<1bdOhp^9h2FgWMe6R5%V^lsyakGCT+r7yk51G(tc8C2
zJT=t#=2^D!Ik6eR8=Ee{y%k?wf(q%ggbw@KvxU&6&h+!$hZS2R<*k!F!j#MhC=9tp
z>PQs+3d5xB0WIdV=CP>e>FiOBske8^Y#SGf*J8jBOI;tF3n6l);sq7H5k@3
z{3bJ&Sd1i1Cz;y8Jd=tGV%3rhBywiRCyQODDGZ@EK1tzs?vyu7ks?dUcW#nw@4%!x
zZn5&TaI+01(htf{PD|TKx@;-y@ULP)$(pBPC1iZZX7BbuPjyJ7?xW3CscUk}aSpa2
zF+wiAa`Saf!DDj-Ych4V%C+YEJk-)D8M-^M$$5eOl_WZs8B>>ZnkBmCbE>6PtH!=n
za7pLbpcIDDR9W|ylnH0k88qM4Az7132-MTHRakH|qq1Ca%1Ed4>3m$5DdjNvao^@$nJ>feU3(~=3d7SMoSO$bm?#m?D)oW8?3j=M?!TeCM=lD3RMt#!!M_G
zNX>Tt`KOrKCX2!=get~kOJD{DHb=|1qP#ZS!v)|?i%=wC2L(3l|Ke!S$mc-XlA??I
z#!vkoal0d+&Wtd90aHyhUF^y!#h?jN|8CY~G@;6@TQCBk!(qa%Zd#d8u0NjmsEqU>
z;EcdWRRe;3WcMZ&a7iln${HOTKZI?PI&1aRq(dfPV~h|@cp!|8sK?j^g1dq4!JpaZ
zl74(q+&q@1(P^a}wi;oU{cyQpi27}4-ep9p`kkoC3PtFa;U+2ZB;%H=<(G%L&UkOuVvAj2&G*dOQ?02aVR4MuJ-
zX#*4(-QmeC$dGuWJO5?}Xd6KP0FVOs09*sW0-z0ulmJ^w!TxFk&l;?g0Z^g^{4hwW
z!15}%z63reW0^-1zBNb#K@@n+Q2VQp=D7p@BZ{PryhI@~U!vIlaD(1P*opZtx9)
zC-_AW{5>SzJ`?zV@t2tZ1VG#c^d2}7;0t&wxBwU6JM)ty9xgyY1>SA*Pd))?0H+ZD
z`{dKFp5g5;R`mY&UP}NV`1~6PDZBs)Gz=M;DVuQmxJ_Akh6oCg0(hPmVQ6@Dzf~cT
zcn1P4tEfobFNi1C7T&kZYHSDRUyJTRY9XGP?S}h%D-#S4ksp%_IS|d~?fYN8Ot4_F
zD395YqZuzIC-%p~yuHaot3@?L)AWz;gq?cxVaB1~uHAHmp1Iz15#6n58nobM>_^lz
zO8x>~Xdu8lAhwdFiA9|7CEp#EiL&+4gid)9m1FxP6nOqvTxIxo~yNYkoL2*-#(3qsqBL+Z{eNUv`@HLu-YTZZ3Mcd0Ht
zl(#F;|GZ#zMeif$a(S%TjYY9WksY&IlApB(?o)eaD@_JW$2gZiZ|qL`Jm
z+{*XDnKGB$9_Y47N*+AM*=DP&db0TBaP>`{^WX^&Q5Xn
z;)CvG-T#b12NMPop#r`GI}0%T!bTb*=B8gLBMD(Xs~?=x1_q2bnfxf5lg}D^@MzD%
zs$R$D?7xw|JqohUSvgGlCe3IInjTr*1B#gGe?v!Es(Uch21Z-Mg^xumN~xv!yp6Hg
zIKV_I=@hlb5Z$Oux>B#txQr5|nH(c;&CR>Ao6++cy{p<;InlXkjbe%sCl10=y_W5>
z&h8)Zxt)Nn8}&@xZGPBNM#%1KIMUViuW|GV^TEmMzSk7<&YJr>6l8hcs*jLzFYiNW=f|-8N6Z**HqfJH@E_enhNnN{i4@Ot{7eWW7xF$Xn;wSM1`rT3Ws3W
zv;aGy?r+&TYG=RLd~^pBCL>h(p`+%oC$1W+bgn5Hp)QwoR+=D$aTH@
zgs>~?OiSb}h1Dc|cetACS(F45z~P6gJZatntphf?BQ^C_a@A&npVm-2`i@ADX*k_@
zqLAdvuKEfr&YY+>Xs@Zo7{m}=mz4KAaRncf>Wp^uxJVGqMwCZs9K42W&gzE0zy1gs
z)XUUrk#XProFOUm0kS-9P(-*tVHr3R)`q&hj})Yo}bX=
z9<84|?wVZx?&gBRg;Dwts!7F8@>%e3%0ah_b1_feyk31n+x`R6n@kzwa1F3O8kX+r
z{xn*yw>c2_#5HYOC)y61#OZU%+&D=kH)>NUVLcJ_HSIiy{BE3jgk&e_w^|1!+DY1CUZMc31N>5@;&OiU1z~8Gup(H~=Pq0UgZi
zKvRL_^YVIr2LSYyS1
zAvOHFuYgMcbn*NO1gJh(Hv+u^KmZ_j0B%c{F)qWD}kT+{dSJm
z!T-N)w*oS(chBoqA&PXAygdPs0i(0!h_<%-#;e)P2+V=wM>4b_#p*ew@gx_0nLX7-
zM~WdSWet&V!992PWEK`d4mGxuWc43aA8FnLsV&xOZy;$LA3WaO%qiaXvUKlG)T=$m
ztKVy96mK14j_afJUk$Oen=@thE?gxUFHOH3vOIOPM*WBS`%3z_4LN)WxyE&ZSex#%
ze;Dd9N=5AsA6CQGS;x?j326DJC13L_B~nBpE6M3Pl-lj~0j!PrW+#-yHO=9-W0VQ>
zWJAHvvoX^qINavET+QHCQ%4<}y9#W`p(6VXcRfmd#(9lLrgk_2C7k)8bNd?7ZC-Oo
zHwN7p2`xG#y0ge##q;qid0T5MJp9iuOOe5&TmHBklxp3!wZk%btA&%KLup{?ctZ-~9|Cfv|>%>4{hZ-qv~Fcilal8(DxM_`WiFr#pe(;iUKlj^zA1N8)k
zsD~?7C{~@W?jEI_av@w)x9>u8g47>~$l
zmv4oBo{N+%W$m#&WVC@ZJoQfZQp0Tdi6@&a%f?>?&)u^k4`HOp5R-_;kuN8$;gd(=
zv}!3d6N|b9Bk+1|q0I*N=+jP$AG-ft(iu@JC-UO9wc4#`S>0=a;YftAd*+#kRy9PH
z*i0?kPtw5}MQnm8=SB!4w{~lDtWe}g1bL;U>xRmd@6w|k6Z8&IxriJH2Zf<5cdIju
zI$;h}mdR7q>%KZ-ddlLhZCa?m1F%lrv&~`$M;oHiYos5`FGx0X^PEI=0n2u)mZp0M
z1x;#%v|Bs`PTg|c1co>W_X~Vs4^zDN{PHw40_y*``(FR9;ki~3MFx#6=@1|aM<@p<
ztVq%@=<~hNB}Od}{~)pYkqdvi8HiNo*|*Lf3NU6*F*E0ur?)$eSc?~8u#E12OIjC^
zX^;FaZm53d_g(V7sImSlhh>FWv~tmWb9bQ4t)|JeDsaT_Q{Cl<-(TF`l?%fTy%_lc
zEo(#@&%PZ}_%YRRt}#=^LSAz>-@5Ui7UsoA#uiO?^ZYHpDW2)&R
z*l2aYy6C51BR33d!QGNJ31~PsPgzt1KeVwHr_rEYst4#}64`<|y95ao#mFJHspK7I
f6Hb;J=s>-CDeV*eiOCiE{TG|WR%+t_Bn
-
-
\ No newline at end of file