From 992427dda41425c760a1b827e4e5f153db186cfc Mon Sep 17 00:00:00 2001 From: mochalov danila Date: Fri, 8 Nov 2024 20:55:07 +0400 Subject: [PATCH] mochalov_danila_lab_6 is ready --- mochalov_danila_lab_6/main.py | 85 +++++++++++++++++++++++++++ mochalov_danila_lab_6/readme.md | 35 +++++++++++ mochalov_danila_lab_6/screenshot.png | Bin 0 -> 59500 bytes 3 files changed, 120 insertions(+) create mode 100644 mochalov_danila_lab_6/main.py create mode 100644 mochalov_danila_lab_6/readme.md create mode 100644 mochalov_danila_lab_6/screenshot.png diff --git a/mochalov_danila_lab_6/main.py b/mochalov_danila_lab_6/main.py new file mode 100644 index 0000000..998dba5 --- /dev/null +++ b/mochalov_danila_lab_6/main.py @@ -0,0 +1,85 @@ +import random as rnd +import time +from multiprocessing import Pool + +# Функция для генерации квадратной матрицы заданного размера со случайными значениями от 0 до 100 +def generateMatrixWithSize(size): + return [[rnd.randint(0, 100) for i in range(size)] for j in range(size)] + +# Функция для вывода матрицы на экран +def printMatrix(matrix): + for row in matrix: + print(*row, sep="\t") + + +# Функция для вычисления определителя матрицы (стандартный алгоритм, рекурсивный) +def determinantOGWay(matrix): + size = len(matrix) + if size == 1: + return matrix[0][0] + elif size == 2: + return matrix[0][0] * matrix[1][1] - matrix[0][1] * matrix[1][0] + else: + det = 0 + for c in range(size): + submatrix = [row[:c] + row[c+1:] for row in matrix[1:]] + det += ((-1)**c) * matrix[0][c] * determinantOGWay(submatrix) + return det + +# Функция для вычисления минора матрицы (для параллельного алгоритма) +def calculateMinor(matrix, row, col): + return [r[:col] + r[col+1:] for r in (matrix[:row]+matrix[row+1:])] + +# Функция для вычисления части определителя в отдельном процессе (worker для Pool) +def determinantPart(args): + matrix, col_range_start, col_range_end = args + size = len(matrix) + det_part = 0 + for c in range(col_range_start, col_range_end): + submatrix = calculateMinor(matrix, 0, c) + det_part += ((-1)**c) * matrix[0][c] * determinantOGWay(submatrix) + return det_part + + +# Функция для параллельного вычисления определителя матрицы с использованием процессов +def determinantWithProcesses(matrix, process_count): + size = len(matrix) + + chunk_size = size // process_count + remainder = size % process_count + + args = [] + start_c = 0 + for i in range(process_count): + end_c = start_c + chunk_size + (1 if i < remainder else 0) + args.append((matrix, start_c, end_c)) + start_c = end_c + + with Pool(processes=process_count) as pool: + results = pool.map(determinantPart, args) + + return sum(results) + + +if __name__ == "__main__": + + matrix_sizes = [9,10,11] # С большими размерами рекурсивный метод очень долгий, лучше использовать другие алгоритмы (например в numpy) + num_processes = [1, 2, 4] + + for size in matrix_sizes: + matrix = generateMatrixWithSize(size) + + # Замер времени для стандартного вычисления определителя + start_time = time.time() + det_og = determinantOGWay(matrix) + end_time = time.time() + print(f"Обычный режим. Размер матрицы: {size}x{size}. Время: {end_time - start_time} сек. Определитель: {det_og}") + + # Замер времени для параллельного вычисления определителя с разным количеством процессов + for processes in num_processes: + start_time = time.time() + det_parallel = determinantWithProcesses(matrix, processes) + end_time = time.time() + print(f"Параллельный режим. Размер матрицы: {size}x{size}. Количество процессов: {processes}. Время: {end_time - start_time} сек. Определитель: {det_parallel}") + + print("\n\n") diff --git a/mochalov_danila_lab_6/readme.md b/mochalov_danila_lab_6/readme.md new file mode 100644 index 0000000..b60cab1 --- /dev/null +++ b/mochalov_danila_lab_6/readme.md @@ -0,0 +1,35 @@ +# Лабораторная работа №6 +#### ПИбд-42. Мочалов Данила. + +#### Выполнение +Реализованы два алгоритма вычисления определителя квадратной матрицы: обычный (рекурсивный) и параллельный. Параллельный алгоритм использует multiprocessing.Pool для разделения вычислений миноров между несколькими процессами. + +#### Результаты бенчмарков: + +Тесты проведены для матриц размером 9x9, 10x10 и 11x11 с разным количеством процессов (1, 2, 4). Большие размеры не использовались из-за высокой вычислительной сложности рекурсивного алгоритма. Результаты представлены в таблице: + +| Размер матрицы | Алгоритм | Кол-во процессов | Время (сек.) | +|----------------|------------|------------------|-------------| +| 9x9 | Обычный | - | 0.24 | +| 9x9 | Параллельный | 1 | 0.39 | +| 9x9 | Параллельный | 2 | 0.25 | +| 9x9 | Параллельный | 4 | 0.20 | +| 10x10 | Обычный | - | 2.37 | +| 10x10 | Параллельный | 1 | 2.47 | +| 10x10 | Параллельный | 2 | 1.42 | +| 10x10 | Параллельный | 4 | 0.85 | +| 11x11 | Обычный | - | 26.02 | +| 11x11 | Параллельный | 1 | 25.90 | +| 11x11 | Параллельный | 2 | 14.15 | +| 11x11 | Параллельный | 4 | 7.21 | + + +#### Анализ +- Рекурсивный алгоритм имеет экспоненциальную сложность, что делает его очень медленным для матриц больших размеров. +- Параллельный алгоритм с одним процессом работает примерно с той же скоростью (или чуть медленнее), что и последовательный, из-за накладных расходов на создание и управление процессами. +- С увеличением размера матрицы и количества процессов эффективность параллельного алгоритма возрастает. Наиболее заметное ускорение достигается при использовании 4 процессов для матрицы 11x11. +- Для маленьких матриц параллелизм может быть неэффективен из-за накладных расходов. + + +#### Демонстрация +Доступна по [ссылке](https://drive.google.com/file/d/1XkkIvRzfLpiqzkJjBeTQHF-VMr9KhkeA/view?usp=sharing) diff --git a/mochalov_danila_lab_6/screenshot.png b/mochalov_danila_lab_6/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..bd96d3734a6808e6f6b14acee9aa5616db5e50a9 GIT binary patch literal 59500 zcmd?RXH-*N->-|Jpdz56AT?41kzS-jM5IILy?2n_dk|5O-g^l>^xnJl9(oT*?;wOw zLfg^%zMtoL-@W%aV~?@N`EuqMVP!$)8o*V z>%_pg6aN4U{Tc0NA@|USJC2ItA23RW$+poa_soQ4g)uP7!*Q+*?xW8i+DT|QVqiRT z`u(`GXbNz{z}UJY`B7NeO?U5F?z?IaQ4g-FDV#a#v%~|+?<2&4uc~-nJqUcblF8vq zgegp9@LnyFV(Z&8BL6zpPEn5UzISv&FfHyz5~ZAcpkezGA!_8OAHm7_?8B3XS5cy8 zLQ2qrgJ$R5DTvb9l(&_43!rWehL})t-bpEN+*xXdF&LUo`>eb+IYI^Tlv~QCKyDQm z*bbW?Hx(i8+K;4NkTqX5*E#*NEx%g)qRxJ3Ej|)oi(hshqvOKo#z!vbcKX&@>B`6S z)@S9`U=b%W`qX4o^bE+$b|xAKL;t+Fe(@f{k1<$N_1kbUFrovRdy&XnovSmSCQ9%v z@OEkC7WK^?zp1Ru=pd0{<;M}+@Oq<($9=L18{JtzyzCWL4KcLK^-PGcaziDecmnh( z-zztfNG(A93CFMf@7plfyw>uUr^gXN^(X`}lAEvteH|-0 z^mWk3zguq5ZSV!)pEC@M&-oZQhW|d*FKGMn^53TkZ~t3oU;IfRV@Xj8LBI)qk3>yp zDG~4mj_Z*0zq?@65ML8@4r@Qf4?84GE?oM423zE|wXr2EE&Wc=SO9r79qfKd(aLj- z`L8~om+ujFf`ShZyctc03J>~Nt}jSgMhp|W^QTp-d9b812+7Y9h~Dw=K49lLjy+#* zPnj{$Jw1Tt97}%Yf&>u>gz4VsYV)ZBxDVzAtlF!3L96{c`q1?%0C#97oJMM@use1? zP#tV5%s2{Z@t`l_WJ+q%Jf=bPjo>RxFBv(84T@S7Ebm^JWXk~Vu~07XyxbiKaw1(l z5!MB+S8b{%JqD^u0T;aZDlWX--pDrSVsG58ObZr>U|=LrG~gJT{<6T&EX1e*JL;x1 zY34lj_2o%0orC@=Iy-fu3&L<>y@8&-djFUXVsN-Braslg*UU>q!9QE>KFucugzuDc=6%eBI}z+}?Lm8kRlf|Cc8 zPZ9rWs`GeN!+s@wYh$*s2+XxV4c2{@!X-{KPmq8oGylCuSWM6K+#LikMk;}1w#i+c z+%>>y`@3VSxS-a(Y1dQ_cl)vDL2wL=U+g~xl=b*-j2gd1;ElNyxDJEg#&Lg55Cn@d z_D=_2nj{tbblI-S9~OVd-as9MfJ(pkUC)VmpEh6leF?c*M2@4bNgU=FR^kT&CK(># z;U8=}kQQ-ceaqeU#~ol<@scsx1-xPufL-P&F|+rEEFi3uBMP_Id<0E zkizmwDp^d!mxi`HZMAt=zWS3cQ~)$@zx&>|{-UU!L~DIQ&=?1IDVL3XEpW0Kk?6VY z#l!A6*EHq`C&U%=Pq~@YU$aLTQ?^>tx}3hZvv8NS3WBdttJHo@D?W3-2nlAk6l-cx zYo$2g{{9}WVJ)Ml!=EJJIV)WQA#ivv8%@lSPV3|Yc^Uw!YY}|hm4I3NE!c9UyTFNr zqtdXP#kP~nOW0z?ENseoY{s#*n#*U}#x&4q{gS+4jCTGXTbPMu4evvezVURxtY z`?_!vm&8544j#s-bKBzP6a$V)QTCY1wM!HHIa_Aq;C;FeaOmJ9F|^YtXqp>^+Sbn| z3t>wRyI<2Zq;iqYF4W(43=Hui(?f4#6Q1qE>$Yee@&>o3FeSflXfO;1)ARyX(sEFnpHhjdw79nxr?sa@in2e!fBmg!&b!dz^o~ zY1Cru6YiLA+)C9r>iVW}w6)U2^DC{%Mkvy+w5`)!E7MP%#dM=H#}j}<>8Gl4Mve{B zaEAI0^V)CCGF{g<4VON$-@1!ib`bo{omU~!-Am!VRB+d>Y3<-6MO>l8+Rj{pwuz6{ zTK0NZM}t@S5y%MY?$S`3EzQLUXL-~peH`c=L}l8Y*DguW249iaIefOAhBAt4y)A}L z^{i1Z=xi5eZb!A0Mc#xG+;vi_8EiRKO5nK6Hj6k({7&Jn)I@pfiGp(EHC{%$(IC@_ zh)V*aiI9d$(y$5J>>CTS=y;f;e#8>1B#(6ntuN8W*9gp$w-8JzGYbD1>3)83Iw0WI zSk{h)Htf6LF4Cq5=H*DiXSnP6}aiNJ?H(tZ~2GQuAnwykRML6X_O@|C- z2X1pX&??)LT}$)=1LUZhX7Xh3Zqr#PYMwy?F4-^hF`3394pmwfj+aFYLS{EU)o)h? zsX)&JaB@Yxltqd=!fyKp0tiW+8YZYp307y0oEY7y9v?S9P5?8)GU*~qAOBPYlX@i0BM#NHhZ%d1Ry;ZI=2}TUOsTE9*1R)~5i%xgGEJg~P z#=0AMX1PkE#^-*pLGPNL?MfC5YvBnMix%^nwN|_6u4U`uasqAfYt}xVQuCEG86T#< zb28@gJs&mV{Z)*afakPJ%K37Uev!f`JvLP1V~*0do$4YV%XoP_z6qPTkQvvaMhSKM z&C>>{ED)S^H?2lgWH489re;g+>cGHmR6C$hJm z_#ltqnG?U@tXcZ4``J5^#9OAD2Yn_kSst&}{u zsF7?pW>bKynzkqL-mC zMmEs+@+iZwY+UXkZ%e-JX6N&7%`XY7rG+$%xM(}Nxv*CKZq8eo}P0|e0*T)0Iipt46^oKN)*xL;CW@;QLb#jsY}K0w+ZzcnNi6g~!z+&uZGmr%Spv17%vkz_ zy!@z${koR>{Q|eym7Xw3rPXFOFV2}J`qBj*`OFJ$MWB3l*$Z{lKVYxTUhC!i>TJF|$+lp^>-8AN z>{+q|W-INBX;^r1IYX#jwtp@SVM=K@Z_XRC64(5kXlCq~7ijgt^|O&PCwzH={C2JZ z%3cqE-F(_sgp5$m@n3!f35iBD2^JoCVVOZwE-7vrDuoU-yYD=U(RN8av8>LIu$|EUiO}fn~Yi; z^n-o7a@3o-Qnbj1z8r=%1F&dU&$`;5$zCOYgYCFn&TLmP!@aCNpti-+i`uzDcX)mI ziWMQor;!9o#+STr)+5esEK;6}f;i~Uou}!hKhXKHJ03SlM5GdIWg-(-;r~gc)XDJuGRi%GUYdHYQGk9X>Mc4QJcYl!ge- zhj??k+KR-62Cf`oF+_cn&7*fCR#v2?{7Zy667yfQ&N82yBld1oFs2Un0b7U3aQJ8@+WQFPs} zT?#$*wat!GYCl753wME46-_Hr1BD_Ev8Z@Y2M0T{K_ntY=%rN08wRa3VQ`w903Zyq znO(kozWF}Miu^7{+koul*94DTUmpdr+srudl&{ao3>p976VC+a&6-CfTX?Tj2`Beo zU6aWCtm$0j#Lru!sGRP}U)TTn+*>@0u70Cl;+;&QY;#u6xW$u9Lh}07FPvDpsUskp zUo|lp8;PXk^H@7K@I=a50Zy(V3VrM~UUz47!F6uTys(jV9XtXx4Z3lN^EfYS{-uNj zBw;XpkFG^ZDlLU8SN&ScdReLW(KQiqEhbykI)EB+jBw)u7_xXP7SE?)*1pO)k%1IO zTXANP-A;w>jms6E8i8V+Xs=Bbje2^_n?JbNrqK~t0XH%hoKO{}5epMJe{pY~Gtg!zIk=VrZTMC45AnhMKta0((MB;`Z5;8K6_ z)yBk$m}FIIVAb%-nC|we;p+f-vd2-&o4nqvNwhkuHVecXo7f}$bo-mU7JE0Gdrs=6 zdsrBsf8MLWhnO@Lwa$1QY|GzO zN>uENNMzWF(Gk2;U_)=0wrsFE)Wa&)nwJK6mVCa6!nH}BMj8ky`=mF&P2BI2AjerV z?ule7FdP0@AmS*+u+So6!PB^l3qLiYeO_@;taSrR(AzGceIDX*;iS%T?oZ1f!;)Gy zGg3Q!4hm9EmQLOvI$DUPenbcH7q~8a5N9$zp4&VZ93%AbOJNcNJBQhTE77Q&vjmm8jAgr(+!xA;~Ewd|HdlKx&<|S0H ziXMlENPi_lX^Jj+;1a%`kWiuy5GI+mJi(CWUy5Fxxm~!64(_2~S8#dwyxuB~ZdIeG zU(O>2+09E2`4X(P9gauO_syix+MfEDh6d}n!uO`4O z!p;L)!Nu?FTO2tTCd2(H7`;ro?vbm|kt_^MpExePeUNzACyAy4Lf`wnR+%6+Z|6Le z?XVazGkiaLn5u8(HMLLFt5WwNBnBssA8jK1rHF1^6qcvpw!tpCWXb-^1FKU*#f^e_ zuJdA;;u~*ei-s6HNA(3U;A1J%@u4LgNVU;?B6zpqwBU?C1L=To*5s1qf|nK6DNZZi zy!+9-dR?&t>as7`vVr+dv$Hpx)sz0ywaUGdm!pnV<%jG%`3A>JWRoc_I#fJ${012ZsBA2sxyd%JZk&|)+CiE{Yn)W*~W59eZ!_nb}ACOc$ z7V5_s7;Vpg>OH{}c8Yi?EA=C|H`sjq$ixQ!QFfhm_D)*Y89S=I6|9*iL@V|nMM*<>` z|8)HGLFNSy<$p4hN58N2Py3vI_y2&Hpu1W-{$?N840?fCJCg?XCMKd+4i{w}zlqr2 z?fCC^DHAVKOXFF2!n;yFtKvWeLNADa<8{KlFj;*+Mswk#P6|Y(sq~e{ky5$cbkn_8 z-I1l8EJPcfc!&yD0AsA&-N_ACUUx`66$RN6?(LoTaQvQN%J{Q}28hY{v7UE# z;gBnrTI#qZf_Ylj|4D^nQ0bDlqa-GMXIEH~Y#v2`D z8Kl^+-BF__1&!?m)6$`qFpFd0tDt#o5h2R$-7)KsRRXt``0+F&iv<|j9=r5*K(d@T z7bN^qj^y-i+m+r`gShj#!>Zns`MTG5DGjEJ<8E{s7*>v6`!z{LZrBDGGYP^-)R4RV zaRFGm7BVR8obUD0Y2It56q8kO;UKdAb)z(9w$mue_|@)>eKap$Y|vMZJ?ySV;LHmi|0d9stqexVz!E z3!N;~H2a5%#MnreIqi@h?Z!Rf#{-YW#F_`JJx_uq6_$&DnpgHCY)fAfA9wC7UJN!n z36Ul8?rUt<+n8Zdi-49aSdZ)6DBH?(Aa*qpZ+KLRT#)fzaexNlaez&7DGU88a-@)}OnPQ5#a z_U=*MP}B4@>nMvAc7(NXLX!v5WDLezet5*a@|n!|)^stMrlA$~efn%?+N-f=PsMw> z+`u|M0Wz&N9gjDGc*vXXaupg@&#^M{P>$5lQFcK+*4J}G<*3BHr)P8k@Li+)H3i&- z_D;nOVE?IuqP=uca_!rLlxyW`96?Izf(p~Frcq1P%fOh)TJi?uO7B8fmI(bW(QI_F zjSwUG!8A0+c4l4sS~$E%*HgTCZ40Ug$BsI2e%M;j0^5T6MLLj0d&EU+dQ!>oX)Qi6 zJarSm8;b=bzhwKi?!!}_&m`?!ZH%|25&I${tKLd0CMv*k$)JThbP&QuxPBsxuBc9w z;+FJdCb~o4=3UyV=Wfhvv=<&_(fuwocT{! zxQ?$4^pcNJ-!xAmFUEhSOS%4B7GiP)X{q!K6`rk|%zY9ZflbJfK^Y-uyLAS?I};>S&s>uW= zLe8b9r2_@OQI1D7`K84i;P~nj&T;s229=Nsqw)7LdRjg+C7E$ znC9C%hctP4giFq>el1@MWM%DsZ4f3p?rj$Z7Sd7maVKlllmZTV@wC)Jd^S39xQ7s7 za2O;F$I#)~mP}az9Om6K=cn!fMy9vz-5WY6#j+Xn`Vcxm8!1-$Rch0gX>Nh{(%N-B zT4~Dh!*m9aO)DEoZJl#>d2?U?74{rp)V}|0YnQ)kFhn)ShguA0R}7_d@z&*e?vS?WD2!Lvfo?_`MqHD-irfbAcB zQw{2UsS*p<(gLx!%}1*5@f#PPeApsgrg z5C2h`bpyPM`Hf&Sdw78UkI|+IrJ*3 zuvB2KJ5G-&2OuUSurvE4?D{uHLt>KCfi5*2R29@@U#e1J_@i znVlApBOy-rd_@KBXOUB&X%1#n*0e-3;lV~#2ZeW!I6(01z>k<6-v*|QCZ1K6n`se- z_OeCRy@BPj96pAh%aKkxH#vKCAYM=uZfh)#cA#LaxV}u zgs)3*+e<4xDV62jkDF#`x-NchN+h#i5S{~h^Ym6*Ce6VEluJxiX&p=`f;x75pIVfM zRrcI*ZLNUXv-9Aw=VbO(Q_=%RZeFSFi?W7)pb&ecP)1QYD*h*Hr(s3hQN+`^UKo|+m8^HUr(=o6y|-9ys<&xnw{j9wA6K*_jD{wMkmZ!qwoklieGDE z17Z@%%m#kAk0r>x-SJ2k7XI~MjctxCK9t)f)8dKtbpl3Zc`kpoOetT}p@f^VY4Oru z_=w^?7d|;N7O$GEH|K(j1YXI7wl4R#M-HLz6=c6ffQiIzy|UhL=6g@mv(&qFE)vCkL(F;hKa1+y4}b>tEAtbSn?Xv?X+TQI7W4$ zN$|%mkeTy!<*SQq_!#R6n?l`j%s9eMYlc0*nr)c*3L(5?L(OhuFFP-t<(wD<9dg7S zIun6CA^pOuBk&h;67D>G{q!W)&sLbaY?X;leTS%`uG}9aJo+_c&e%p^m?>EF6P;cZ zy`xq@ZYc7Vd2qS_tysa04cD`w4@~Qh=H=o(uTyGmeUV_(2H`EZbUU?dURJ0RG{>&BS0yUBaa8RM^@3SJ1j zoK!SIx(Sgj4M-Ywd?(7_r0zK&^4+^%&d;8gpOsy;lh*8K39JfDmfPAYkbR4LmcRgI z1bDdCoUzSqbyTmvU)KLQ1r_G3`MDzwIExwH`Awa$mp5i5|DsMPTDpANk=H)odQ9JY za-Che?h)oqyPElv)z(~sXz#d#bjjsi3561IYB$Z7C{MziM*FHge&q{p7oo6lTL?S* z=20JG4zb^8x*aP#w?ZH}SeVt_iBp{+`x_`=3D9^ZhOn#1SJ-njcADkn{Sx?sq6SZW<>Evvb#&%Y6{v8ldbB;UCr6xT@1OaypnSF2WbY4%~DN*qWUw zAyB&O!jirDbDI^pdUx$MFJxyd_{hm4PIo$)o+g;@op|*0)%?ebe#5AReZU(>G|q&T z^pV(pTxWyY@C8$uj>R{&EkX}AGS+#am18%oKH6%x4q96omm;WdB=P-Cf~1oLp?F{+ z6#yWomB2=B!Rt|&WM)iU&udPz6#bCOhoPc=#_0WDU}&ynd@QLe4>V8Hc$e-y1ElJ3 zJ-hsJylmVcvHbEiji>OQxyh?bHP#qJjqBC*7P%CZE&KSPkX+}NNHL~`kz&X47w#Yp zq3i|DnL!Ex<$I7?MTK-~zAEbBocxOdMe9t>!g2|`g}C)d9My-{WmP{aKtw*r<;w&{Tk8qWHsI)yl)h@`>k1&qC z-;kgrJ~Mt$ha9yRdjO@-qFHAnVAfFGJ#{BAtDx2P-T^IT5WFG1(Yt-z{wsj7b?yu5 zZ8fgu^Ic{STm*2sGgO7%uICJ_w|39yX2G`~BsZbKw_sxwHRjm;u)8j3MxE0iX6tk% z0EMuR+4URtWl5Z?1hk;+kJeYCXOYb*oFwQ~pT#+!7w-#02M?MwEJT4t1t0)De(2%!L2uUjTCN2aWiEI_t-!&FWcNbx5d#DWj3oDSAt2p39C%g8KLj;gS9j#sB5w;txP5Ak z|7?cSUJCGdnO{RN8?a-%Ck7NRax!V5b9TLf;AgTgxeY**gKA1%kOh!rz->gb=PK=l zZ1Z-uYu&$Tv9zYmyW8)*@Mj6vs#L-u!QyNPT*sX6uYLhjPrPA?aExM zptsUc0s5CkR*Zgelkt{(;BLbZuEPPP?SUy1goZVCE^zQnVc%=-?89|t=D1i>!=P2+ z*JQbmKy4?DNOk?~vTvo$v}=;cR9dlEbdf6i!L)|yx!8fC_iXo21Nw>!$8&|X1ua#rBNg)#+)2mwMU7(zcrm{VbX_=cx$ag%R z_dkHyP0zo9SyMI-j^X-95I*ii8;viME~D;8&rlXe&xkv119wrwPG9OCW6TUcK2vDA zPuEF{(T2!9E0y_;#r`zwK_gxa4ED(`uc5v89~~$epsfiV7-ly_b6PzrJe>jEg2JQl#0q(Pn_;LMozMl|{ zDNV3H%98&rhSJdJz*4X@w%H&RY&1+=`$nQ z?E+nBHZ?vsVYczcR-%e3733{==42F~8{l$jKQ8!m;E?J2YlKvXB!aztk}`phcFTuH zC}ne#cb_+|`+D#Pb7c&;?!w7<;K*p(gFN9jSnn(kPtWFxu9M3q5c6=TwqzX_L7c!k z-6=UwxHx<-Q{JrBsji8Q8c(N9lE3XU)-U#S!DfqUh?(QcSTlp+D2;)_TZnEihIsUo z#I|LIcSKCX(s)hmkLw%ceR5gCnRw984Qc?N z0Qkmy2D@{KA05V;Vj`G~o0rtDb4$)HR4AS6s9N}q#y)Qwf4K=*?Lf;%s{~ONDfLd? zeaCCipSZB9>Zk1MRmF4w8mG7wJeKG z1)cpS9t#=jlHWj$d(g$tT zRu5`YV*Cp#xm|Pbk6a`Ls6op`vKoOdc{V!M-X*2oc)ZAOO+0@4IqwDu1mO`jH{82=YEjTVzkc34h_<51=Q5>cZ>1Fs2T3FIyBIO68p==VjUvD%{u6Bdoy@Y4t7U?u!t)`X=Hf=ddYtYg$r z)3n%B{OTsLke7X{&^ONxDe97&^d8dEW@@=N{Uq4EgFWv+6l1o#uMvXbKT}H)1yCxh8w$e|5MG0llyPOGl#PneOZhe!fN~SUCO& zmB+>cvFGu)aI`ny2voPh<)QiXxpzr;B+<6RAGfK@%KrTY6TaVx zm*(Jpxl0Pe@V`mf?IT_bofu5_*=cVAtRQ&mJe@Vq4R23?Rxp2(Yv*poLGta@@Gu=c zhX|~x;?ZoOddO;@lI(&ePB>l)r}o%Q#HN~7gip45zM=9DB}*~2UHrz?qnrS_wbsTi zZ6;UWnHY^T%>eS-=yc4?m zH^K$76qB9Cnh)r(_wQ})!XJ@oQ@JX91kkjL} zGM|s-=*IA@Z6gCDr6P@>0q;6+mZ}(F!SLb%&=wn$cjU%AJms8)m%v6u+%#)RJlsUT zgg@cn`!4D8BG;hWo(K1s@Pcby`)+G)-W6V6omx5mahP1L5|M_rB9cvqH2S;sdT^1o zUV$pX$~u$;KB#7@OX@)Im+S2_xpg1grWYd}CEVZUy0Y%X?U5S7dORZDU^kpxr6ZF! zT0H+EW_)kZIxPH$i#c}UTt?M2o24uJIN-FJzEJOt-f9)w%Fc&NXMiS@hy6q;!fuJ4 zPL55GZv1gXy$Mb*r8jR|W9g{Gq3w})##MWQC@HLsYl9>DbOm+MTw1W1(&-Xx>Ay9* z$};gVaP)H5;^Zi-96&=mIbL%*MCsi?z{~qnYZ+u zZhytbIdRvj&-x5AL|CYx{XG3vkgJq@=E7}G;&H02kWn9j$=8?DhF@;z);4+BYGct0 zKt1=W(Df_l*_pZ+Fi(r?N8nU`d;lov4wtvan=^*!+&fkFsTI751eVH+Uj7d1gNL!? zR;!U5Y{tEnI;@xhNEKJLZ_+b_R@c3EKJy7Wt%!KMc2~kZ?%JunQQ1lutnEA6O?^Ab zW|3L8z@onSp+^UQ=qu6D^AH!elbNE&zru8>k(zbM<9MDYkujeAoBtcc7HNL*eC0cO8g;w>(}%@8js;l>8VFj>7Nf#3V{11fZc znt!pfTE}+Z!0Fr+mw{cP#T(T}l{mRBlRaZ{G2eZdY0>NjJ&uvHHKOQoob}VFJJ`v3 zvSTdz?sHB8HJuvyEVYZ-Od;+1=H$nO#y$lpSit1ISiJ7#ET1zQMrrd2vuktuSa6k( zQ2*(&rYkDu-7H)nJZEbCWqDiaCWE-cfYgjM>I|h?iQ~BQQMYm?RY8>#kQ^a^>Lj;* zKO{Io=Q{D4&U&a%5kx{^;gi5o5=};G%N8PSmw8~45dNsgJ6Z99=Y+y6j7Bc1ovox} z?JArIG#L6@)rl4F2|J}PP(&@Sal`=-lLN0~X*+URo;DM8PV^hRn3xc)eX!oqPgh=< z{yo=%M5U1t#v*LrugL#-->U&eU^nixn?noxaX8=Gt+CI%#AW;9TPeWV!yJ}!FtKwx zQsVgDG)M0Pf5>lds%@M%S0iewv-9filIOnO(9bFnXRAdiN3=4vp(aFA5_?5`?Q((C9j)KQ7AI@al-W+hB+>`-fkl%20w z$mnv~oEX=4pJS&lCQ}R2GHzzR8L*T<)M_8XpULF_^AH(b5B{xPosgEPA?vW5QJ*l# zZU+&|%C;5ZA$N>j8<=EfOY4UUtQf!V@~Ws}cIXys4H>s&nl(SWFn@Vm#g$59s`RO6 z@l%KDGszB}5sAx&6#LW(nDA`a>lQ5%I?)-H&Gynpp?X3-;+Tw%yGBu*IqS=4yz+Bc zX{&+=M7!;yX=iBjn`*WQq!K9lqYI|X#da{GGE1^s(&OY7;}gv%Sr1QMYdXjKO}))S z*4ri}%PmBHTCo5V-DZhN@UuJfPMH*UJN7FQEUHo{nmVK~VQ)$r3FYVQT4Txn&?z*k zGD_na<$O>AmiauZKAx(Xt46-)N+a;La>}-{?)2l8I=*>w03MNFN@1-Ki48vu_Ouss zY4V5r_1!i{9_v*d?Ab`|0v0ocbiv9?&>ii@Rv*>8ABvYJ!F!}T%SgFSR2zy@A=##K+j@GiR`Z&1wsSw6bL4VvR6K-2jNf#hr+RYzC0EbA0W|ZX}&Wd zWrs&w^2CG@}t#p!ONyRK;{k1uv^PAq;c{>#lLS+<1 zle50vU3ZXD{@4bPJs{}ID|wssvvWb7BuuXN)aZyn(GO|#eY4|8A%&Cc$iw2U1y<*m z_-}tm*jC~H8wv9hUw^;zf0Kln*Jk}%(-b_PNOMy4_QTS{Sy{98rs_Y#e9k0r@#ay@ z1uBthx5uUYkr&2%B~fPJ%Pog~Y#)W*bn3w@7m<^Krlc1cZmR^}-M zd+NCjzVZ7-B5?9@rG>s zPzg2BCi$-t9ACZMe6A8~b$!o#J^BW95FiQxS%6ep>doNewRUb?iT;T+jVs3W~6P>a{2(>KnE-QgdG%=%G@NC<;UC z>i`qF0&su*50*+@i;{G`(wOMg-g24iD=fpJK)c)1qSWM?|IbiZ<^KwWRhO|=u|(Uh zGWtt)f9G#FIJ$`;jjy*CpANW?zxMSgF|OghcjCyOvq(Oh=>eJf=Zkn9UkZ(PO zWMW8QO2U8ydPm@O_!q~Zf{aqIc3n$tD`54H-qjHwt=2hMayz*6OfxlZI4mrXFP6@z zz>Fn7E97~ngye?EWCS3P_d*91=uGlexz@0Hrl3XdDQvT6dU*S?n*Z3Gx85R2I5HpN zt|DBkSG>=C=1+HgG$s83v#fwDwcDd5roDd?CTHA}4j=MIU9$J?fDrlWyi*Iqs!Kqt zlpdwa=6eEKPr%nBas-zAk=}WrZkrRwPARnwPes?w+lyCk5uvqS4f*D~nm_FGp3d!a zeJl{fLEB#iY2akFI^^+geJW9puEF_no%8PLI@a_7E?HtBXZdN-p6E3z2Hc}(n?JOY zyJ2`jPZX+K;`5*e*5A!;uHjvuyK2VRZH{OWh;6ab;et%M=%YHk0F%Q#V3rA%w|v%} zg#&{%Qs}k&Nr!0si@^JFcv|OkmLJlTmn;mGe^)Cs#-{Th4Au^2$+C2w9VZt~&~SJbAHVrO zqpzdEt;*fq_SJi`yzbgf`z>#6zaPquLtS+ZZ@_XLcW(&eIAs3Pl_+kAj1{k5H8 z&_ANs|7Gsw(8ghak)S)`isn)>6v!gr|F6K;`_azHp-J1$OS8k>S{&cH)v(vt6V0c| zz5;dNcd__SrIjw^No_R(8ypd6!!n81OaS;Wkz-AA5>6Ms@>jktQH_P={w0xH{m*mU zOc2p0{%tOoljF0Mu^+?;sTKO*X#Z)nB=!gu7xWkSLR{p@Cpk6a4c>N@dMXFBwZ5vc zmnP$J9%_OffhsU&HqPg)-)RsVQQgyJA8hmdlaEws&6$_mXlqm!dfZ?wv^RYxL9F2A z`;eMf8=?G4tQf_#kK$Ul)m-_W`hduuSsGp(74g{1JGH`&3q!orEwn@Qkg_!uI|qFM zN~MczqVZ>9lLvJ4l|Vx0i92(74047a6h95^h@!+WXn? z-kci3o|Y?As~%q4ts0Dde8Wi(kJI0t;9i+#qI4m<%BE)+#p|=@guGKT3P|zjnx|aS z{cjn$N_0kU_%S*o*E0T3Mh+{@C0$cfmmt}&_FQ6;Dcx+>TUW?P*m~&kdzmLzdB#P| zwRm5X#q?rz#<`rmMZXQ#!gE)zGjnY^HVTf1Eeg|Mjn~0h5T1;Rtxww#lS`||G?$>E z_k!~@442sWy#q}eg5^vCUO#) z({a+|_5rVf+$YQEAcV)Mecb;pqb`u{RPaWOEP?>KH0Wuao$|OfX*eK0ci^49kqRD- zsqTxzBv;fVd?-MPMHlXkR+D@aUTCe1S_?)dr3`}Sj!$4_Pb7hHzY=#YLxgx<()X0Z zKlDl#3qEaeJXI=hqU=PIs*o%O-~sE({efD$70|y(RWL8s$ZzFKFM4|9{KeO4SM{5S zWrDmR1qzRh;5@JPq6BV_wd`fI{gr!i#FVpwSKY;;h@+FjNudom$O?f#m_3-k_hC^A zwoM-n1!HcYQ*TnuKY3yjdF{6sdp<}Q6*_T4zW>hDfua(_eM!hN}UCzpae1$mA+}R@xo)#gnX{STP%{cKbuiT^|ce=cf zdN>eJDmY&JU%9&N8ME;Dee^HJlwW2p7*i=t9exO=Un~VuZ_=Yfb^a(p%S~=AQ@!~& zgNfekZzPH^1~>lYf2BL3{V$0fgC5JnUZOuB>jAl-5+nizO(oJ5TD3bl-dq_OBq(1X ziIJFirFcl8QZunX(mK<77T|4-E)_qGif_naet!%14Y;ftb3kGCj98oyHd z-ytoB(3E>j{k|DiM7)?Iqc5Mw%RUQ(Km%94@lrBsk;#JxI$jAv2pyeJs3W;K^)K-&?zi~GJ!AA4Eq=+U^7R;G%82up+#sRFwS-o_{)Icgey{JTxYL?L zU!ol;A3N!_kO!lmEBv9ena)!B=N6?VL9sG(d-bMf>6=<)>Fk}KwPwluwbLpj)vK@~ zqDFG56>qvbTCnRK3M%o9jQzx}NpTO1%4%lSFF&Z;;H{lX7fYnJ_fN`pWiwn*=1*uZ z{bvy66cYVESm9yS;BhjMjSVFd`kvR$3-ja=0WOJut6!}Dv-~e-q^^M$A+rr^qFOfT1uJE)qH|yCd=)?ZOC^`nfEH-n|_l-4Bc(nRsy`JMlu2VyG z1EAwcaq96Bo#D_CWl+y;zrB`_-<90ABbHlFD_#CF#4KnPmr5z^&HWX%7{wdA&-gxP z?=*ETw631!>;042J3}%(eR(0@q~U1v^SbN7 z>_l^l_PhxH?RjC}`QM@|TF}^Vn&*e0uHTtGx{YC~vNYvnq8A0Wy}oPq#3O_Hb;SB+ zYf6viE@B<5P^gVa{4ODlgAHJ7GWXkq;Mg7qPAmA`m~a1yuat6K7XO#{DsiMS7fA!Q zn%EBh6d}zf4r=485Z@avQ>pX{R>@m_#6OY+hir6)2Kx{eC6v|O)aa1UOb2Ce`2cJ zhdoYzVJeZ|m`V}+uJh#$YeztG=+6>erc89e*?yh)r&g5RvAcK^$mj4veNeFKYC`t% zgr6={x<7yb^ZM%f_;0(5`9JKgM*QD)*D~7f!tVcLcdfM{zDCQPC1Tnn*)&hA@t%8= z&VDY0ug`B3XZ}KFf$;Ye$I11s0dvlHy+tR|=1}&=TZR`YeB!*)V@V0Ue4`y<=)m8{ zh;h8hQ4fZp96uj!e0k$ZhAeWt*CMbS6gy;jKXJ*`U$_T~WXhIx*ZU5cWPZE9H`Aca zr$P?3JrsDxd+}U&=d|fz(f<56Nqb}3l+Dutz%zs70xe!+z!l>w>{`9N)Gn0rraaj# zBOTiT{hc^4ZLghs|8}A!PTHV_R!n+B^{wUM-R=kSfFi8=W4_h~rAdwnKqKp37ZS0f znyIyte}e5SRF!8S#2nu8T2e6Br1P6E+RK?@(x|W!uCXUFcMV1T$%G7b|l53sjkSOUEk-~fioG7EcpU9g@Vxs)W<1p?$97VYpD(?s zy8FNa7{_5c?kx>@4hyXpIJml~z2Yvr)2=JC(q8K6We^FGi#!sG8auYz@H4TyyszT| zdF_EDPu7OKrxUlx2tFCv!6(c>|AU5O?}-O3T_OU2@$O8!v6;@@9QwmeXy9*1<*)(` zOCIa@I>jrw*5|en%2+Mt%I93jDnoBdZNX<3#jUgOA5S)d7PTN)qcdL$0p2vqd{s&( z!S+A;2eyhXt+=Oe z?XM|2a#OXm_e9lnTSubrTxR@u%_gJ`3Oh#;6AS=}qS0dzZGqK?Hh%;a_Lt(3A{+St z`PKsF<~P#NH`~sZ3f_Zt1n|J&@PT(?o4W9R)JSEN8`$+bjI(C9Gv+hAXT-6$Gz?@4 zcSJ9DB51un{k-TMX}YPt|_f`LwQXW(`3!pSFwPQg7DkX zrNGq1)%6Z*$B-kjn6cx!1fj`3pReU_u+g!MNOUpDR2bb|_2y;WHS_NzVM#biSFN4- zI>9HSA;%7$zrutwz2KYIlz-%`kC*?0y|<2vvR~M?Q4~Z4RFp1787YyFW)P7Q7`jVZ zx_br?P(VsVO6l$n8Dd00y1P4uuA$?-2K3(Ed+%pI-}^o5TkHGd;XfD5V&OG;{*LoF zBUnFsmHmRVYW@k%QgrKgZ9L`Gm4QJWO3(Wk6 zvoN3jH*nT&7eee$ILkwc!r38~<)7fJ$v@z%$iLvMw}`d1ieGS+3<8z+!J6?Tz?Y0c zqDfw|qlsNe-@>em$NFhJ^N~Y;mhh0&_6^+}&7RxSLAkD#0&_nNEJnL7YKa}$zk(@a zwj3sPWB!I?6X({9*TGd>_LhtDGe0tvxumA+>VOX*(ROcM4}Jd0WOvzsW_v)7q&jGh zOJ<8tpe4w|ZGBbW8 zuYdRJQ3Jt&)AFMPL3_m@h#tT8E1kLR1yJF3XOO+n35>+ozTr?Io7~jGD9fwT`l*fB{7Tnx1GA>qSW8GENA^$@i3^*#N$MK8DYrB{X z#0N-~#@Q{ixUfKj*F}dmQVks{0bTPjXL{HW+zgzx`hCae0Gt^Ue4>@Etzb9os~iz! z9%i-ex9H>lgyGH&MvBsnk^yhNjOw1cbTnEn-q>3D?nmQT5wqiFiJ*`lc(CAV(%Lxu z-Dd| z5mDB`jvPH5(|y58Kf}r%UYBr!R2-|JEL7*4krPZ&afV^66#+l_#xzzGMqfsx;~hyb)uADpb9WrG?gB9-pD)y}rA zMNTl`=)n@&_6~QtwaEHPSgrc1^IuN7z1fJ<<3OS}ERr+5rdev_m?<*; zL9VU-q|xM8qR0z9`H~S)MjhVDpfo0LaGN|zb(K4M6LN41wwTVcX=$B_@ZutN))9;k*t40%r^t;f1;AIa#yx&UZ+4mx4) ziMgL3uNW6Be|Ozp;z7{YCEQ?`u3%IA0_zqB-xjF0!fZ30PREoG@vM?7& z(&q+nr-KhMsISC~0*ol(yZv)O@;Rm;X}bBS&G6vfbo1@d_w^53bf;H&X~IeZWiXcj z=yJ@`4+SKC#&ZnTy~#S(_6hwl0#qQZLF5Jc$nthNKH7}0$~dL`07P3e=Iaq$YfWpl^ zdxK-0GZ%Z9Q-bviR*u``aZ!-kZXG$pSiFM*-YN9o&pplPD=zA4R(7jfaJb^!@kWty ztEj>Lqsl0AkJ$->n>?N(kD=|e8;0!9Z`}OZYc$a!5Fn3mQ$uJARorQt#^D~pj=^~k zU_ON0jxoV(9zifpk7iMB7bYRaz1?_^r>LwR1%t19%de-FYGxUJVVB6I)r0c_b5_6z zy1?8xQ%q5YXQ!6>pQUa^yjDPny_1JU6Z{nvTEBeAVW^gU+E%$x=%fo-iGP{ulZ63$CD>y5TbkbJmv7dJRlPuQ_^4oDJcL;v7Q8Hq6yKyDZ!#ik8XH1V;A*VcJK4?G8@n`0nO-&3mgF^MrFG19mf_DI z2~m;@Xg5 zA@3Do{wrC2(JvH4jNpJLw2Voq^YlTLG#3m$#{5ThTam+t8n4L^>(Q{ZPA^hcyrbsU z5Wky$k1-1fREff~e7C8o+X3b#DW`>K_1+L?Qcn-1X=A!%(CmVDb4!30CoQL2e+%dV z_cw)NzRIJ-8a_F&QG<$FY|q53(L9vQcSV;~H7w|)%5Cn^!AKADBvo6G{tWz396!9S2n+F4p8t~R%!rCFfmMb27AyC^=fK3E5&B-27wFL z)e-P`$A`f%gYm)fMa`ho&gXfQc3)!(hfZ8DY!Q9i?vpq+>HNCT$0`(rPmmk*?})hFS;v z?Zg2<)E3IkeLrQvHfQ1{UvMpUS$5Y`0;r>r7Hi{~)yNXyYTFjijG25)Gk7vK@J9c% zY+p~ztvk)_KK91fEP*RT_lv8OCp0Z~N&q$yj%E`-Uz3VN8P*T5la!;?a1*eZoab?4 zs8stUp`{Z~SmHyNXR@NBp{jTk3Hmvo3TT^0^OcOK3OqQBD(0id;yv;IIP-PM9wI3_ z=&$2t-$!fO`cr>!@aJo2!x`n*0lXC`-)?ZicAF8Sb7BAmgKMIF2om4)0gM|1aOrLO z0Ff@LHBIP!ut|-t)FWeLep+jF=~S&{&v7a65*M0ybd%*tEQRO9X$VbPlyX}Zmz~_J z7}9C1m`{<pbwRzKEJcyQP!h_4)Lk=*2<id$dC{hs&Sd6TjdQ*B`Ore72Jq;4EktOD2@2u;Q2E0~w1lcw|sI1=vnWbINK$%Yjem%)y*LiyQsu zKIzRcy|>1J>{s2~W~x+CrKj>4XR&zb{7I5k$p*QM|40}b<1>ER`BOO$e2^@*-l9JviEYIS)W$zHj$T*8Ki6u^}>P%(eW%otTq!+eR(zIUrk#xAQ_)OI5Cx5 zRM+S&Vt+s&RaGQa?0B|48K!u}IB9;W*lwg9GI#W&tOovcn6E4+b0pBhFAcln*+D1u zIFygn=6MbvUL%6-jKQT|L8h-De+X>gtviLbi5nG;$$;%zBD#%3@yFoZlDAN3)f?Up zTJ?5)fAUCI$B%a9?Yp1P&tE?Jt%hy+r0h-IkL<*7UK~aR@Ga>J!9ER%LL@_Wc^;e7 zZH{$w(S3+El-pR&mCk(!IniHyYTcc!BNo8G6wIp?HXz2*vzOhs#x}8kbJIuj@BmKe zb*v+lu5|)+y7peX%~z`4cPWbC2K!X0PEF95ANuZ1kXl0Ru+V{+L%f}-GNk?p9ujtb zv$$Agb4=^xaQWFP>1b~UWtL}%yY=@gQ-8?Uz}9NUw-EkkvQJaSio#pxGaY+dF)Z|? zu(hMKt{P4-5y?iO;)_%@iri0%oQd~dCcIwEDSA)n{iF+GVZdf@Z~n?FY~I#+?5;`t z&>)AFV>Q#OkkYGVYr=G$^Ft@5X068Xp_xN&&fPT=$2+t~gV&`#qg%9rtuQBRCDoaD z%aIUP@|osXi*3@_i8rwohSk!$15|;StMNS^U!ZOYrx`@TFwAw}er^n$cSK%wD&i75 zAXhUpn>tM2>$v``JP54ZP@L6XWO2tnI3g@OswbA)m~gin$K$qMdQKcpi#(uOJHrry zNOqlw#K}<@bpzq|-%M*of0@?!NPn5u#zeP>*YJ6FcI-b0o_5l@6=p=>m+9=M%edk+ zq`vUBi)3P(u~V^F!7D+3yvHk+_RTON-6t~G$!lFSqS(g{Y%AEtEAY{D2wt?x$Mzys`K+ldy%m1N`k{65ot&pTd+wa>sJ@i;8^+Za{fUb+vBhv08i)X z5Pqc_Ti#V*9=|pbLt@h+q}QYW+7YMGc5BH4UbNAq@vTkth$zAFQ^V05BP=r`t9H$t z86MpA&{#0KGDkY;(5>;oO$1|ozJajwAD>!OW-6}81(dWktwbEwpha_Sz&MDtL_LOdd5-623k4b>|`Dl%q)h`jmb>s zC|ta>vg6X}=`0}-8Yas8bO=Auu_>4i#a#A|5-yO;&(>gef}By`anwzF=zMVH*vuz^ zCAXOGNh+@678S43JWH&=%G5H}Q7u+~6YbaMU>(*5oX`iEwR};bJS*nR=g%p&Kgtcd zk2P|O9t)+Ztxyc|8o7si{g0UG0sq?v8L`Fw)jIqgxefY>>V(pU5LZabX3VP$jzW&M zymb^fWxA{5}~JX5(l0lYRHOEkKE0K4AO|GRe0FV zBRF*^31^yH^zM(an={%GUIX1?IQYEhQw7t!?XGe=OPMGffA8a#tlNu%42+u;TLzHD ze4naH^gEkanmpeq&9f*3S?1AqQ)p0-Ls?^#vWhX!!~mxJv&V{Yvfpt|hQGG&;f88W z=o<3#zS2oK*d|a?WoY=K-Z%PBMzxoNXrmgf^Mz6E`iHG&C!=N8U(CC*%0!; zj&C7T6LUm`Pcjw%7J+lF+sRmxo`e#be`L7X14yBCK1v{&Ah`{0JnC9(%i=)_BQ{~j(nN&4a*6u zjVAqtKDw5^usTq%I&IpTrz~N}C)FC`j!_Qnq*cqKr4+#C@+@`TIa0BR`p9*-LcMk#hb zXn#^s$Hedu2TWXmTg~d46z!jGwOx!;Y>cN^wXhqOH8?EiezFn2+inJT&Qk+P{P~cJ z_<;Eqx~u8*jTSP`=L!Us-xZQ#7v}jXM5t5IKk)kKpNgK7B)S(jJpXRycbxyL8t6Z6 z`fnPfW?#{P1)s{nD{{p=Jbwm;UkdVn-00(l<$vC?$#`?DD!4w|xliY}>Yushp_SQX zGJU}tA3(c+VO|}0q{V%BS26zxgDwdA$gTV-$l=OJ&@wM}ae;XFJwa5AW)OngR+x{g zn#}E*hrR$sdvQZvQUro10jlMO2G_Rme;Z(63ykMUJ5Wjv#3gID8s<2scv2I+9_LZ zc*umPSxF;D)NC=O0Fo0be{TWF-5T<+TzDNBg0^cSj@cx?(s3;Fh^YX~271y5n%`Efq@)Cj z=lIE%_c+NksjNWybk3hnhe$g5B3dQf;0ODlRb}G`)F38lCe`q`rouJN+l52okq2UO zs5{C;*?Y(j%iP(uc8JE33qZ7dt7p>IxDEIm!x(3U9s01D2ORLXg_E@6>qxQ(;kM2+I&g>UZuhvR*0Zd-X z-Hg#g6Z}qvkFxiY`hL)A8r^>I4;qgJH}RAY!Kj$0l(as5j^d?1zk7{miH#|uy&;5U zcMQW!{R&ENJdZ5X8Fo_aqPQ$s4QbJ6nv@RhHpdBvz-ZjUPG2|FNPj83vnn$NA3oI3 z4y3SIx@YMFb**pw2>8s~jn-1Ory5(0J66@b(Wd%e6kegzN%Y{J3LfzS;w~a;PlHgp z)sKSRm>-}Y8(dFwIPAWPZ%$js+=9ag}C_LnBT;VcUE! z(CI8Q5OnS9{q#BZ+uN)6*id;jwW{NsDn~!NiCW~Zx+>a z@bBD)KR?26n733Bglk$+H~p>}4t9==1$?Ews!j-?cKX~6sGS}St6rzuyU04Q=b2`W zw8^7G;@bQ}mD^nL$ej-l7m^|bZWY-~o-LMgU$Tdm@d)d*B(7GgLubu>iPt4Q$$vCUz3_$0SyozCy;P=RqD^*&)gZ98 zt0k_5HP&}d2_rOJ@S%G|)VlIfDX!L;oIjY={mV5)Bp%;rnnAnq_R^vQs=9J?tV8mo z&boOE`Lqw)ze)ai$9sL!(pDUGg@84JSWK_!3h^I)MC`JaPeI-W{+P{W&cx{pg^l9N ziR6tfZY%2h=~xFje(D^slWpTok};0L&7$hL*}up^4hJ+jc$m2Hvb#xCE>-KEHAVO; z(PkmsZn-@n*{!=eXn{@r<9ZTT`m}V7{Owe!T!EFKp$JNF$k`g9ZOQ1>Y2dKkl)?cj zp#`pLAX{PiuCnzq(nEW7AOaJXUzC6PJM!6fdGUEGs})Mi9lJ1?6@Y%cm(l?p;n^!4 zQN)TB;YUFw*m1LiOCE+w?~V49F`pQM6R_TdiX|z7QuN9Q&4FHZX+>re-70{LZ z^wx4Jw;Y9~vg7i*Luv+eNZ%eE!>n5913#m>1@F66E#fuKCD&K9NUo|5pG1~;Aw&2@ zCQ56Tw405%&BMOIJKe^7`qzx!yIsGt<~279CYa6W=S6nT)DyfLeBI zjXD+VDWXSbQyty;;K=fV4omT=DDYxTYJ_NyA4J?qlIw$ypO9#01UC)6kF}E{(Zxq zG0s?z`Tf2AgRU}%X7@PXXAM4&DbE-h+z)_A@7_i2dd-at-YN#{hfp8XX2 zt~D>f;WlN7cDQ{>y8064F}>VBEtws6I92DV^hM6C#0X5`^3(sLJEgy@t_B7|YI{UP z`&_;D&|JgE6s=wh_@!P;N#vyD#`V45;ZS4e2~P8CB4cv{0qpQ;zi;Ig1BtzVo{!Z6Lc=>>g2Fp@3FT{muw9VLu|1c;R z?6Nk7&8AN|8e6W>vsY9B`YIv_QBqc_I}d4YF)5sdc-75xXMBBYVY(45oR}@w*`D{= zzGt8T{UM}jesm03!K_5t(v`m+PKGyLT4Q`xc{;aRmhzO>z+?f&c=FP3|KL}r>QRrMs`D1%cl(QmUM}|2yc>_flcwJByE>d5 z>6$L>oGyX4Q3blmkhld*fQ08%*}6$(H*rl_fR}_HY$tj##|5~E$Ei;|a1e}ZHHo7Y zL*|3DDCWcGvMOHw9D%nlC5D1`XDidj_|ZbBL1`Pa%KE2IYH$z{I;SA=9`jdoGo7xC zJfHZ)OZASg?+DUlRWExV`#bM`W^yfzbD6C3grF~(G??zr<^yD$sBSUwLXEOgTq%pk z_zhhX#eCL}@WtIYsLH`Z2i&_|>{64a5pxGuK@e4w`idCoJ=II+WL_N?n#|kC)SUVk zG7s?X|AWj^;1PWaka;qZ+U>4+FjgOc%L{S3;PMc5HUFYrle`YI(;7>nBKf{V!3H!* zBeCtPpy+|Cr`DVBcdWX1Wo73(KpAGOlWSX;z6-#=k^K#N3tR9BxzhU(P z0=cC)0STHw?RW|D@XnBXuNM*>8qGDr9-AnsUJW7eUfbT{V&BT2^Dn_2W`Z9iR}l}Z zRnDREfNAlUCJKvpl4u)?BBBytJN+7uA6clL*?uTv6BP+3kL# znL2H=y&|-I(#ci_^uuS^RcMdqe~NK;f^Rz~d;MJWkr0bDJ0qXqc5EO+4+vZy=Vu~m z1{G-$y3G8PieVAOkQaH`C^4cufGHET3Dx#Qb=0GxVP5qGlfGc$Tmuk)9Z>qJ* z5J0syw%-?{9G<`y5u$uXAPU^iepX~^%};s^$=si?dBbuCp?1>iNpRzi@%tl1T!AZyWObCIO94C6uv5uuH9Awn6aH) zlXaTHE}ui>*n@Q@39mP1HGR_C8rVSagdf{x8*&jmp`>DjrJxOPODD8&ZR;=LTFSo_ zuHp4Lh3fX~@$#%3-WhX$vr&Sk_|jsa0&=(CYlkPkp2+w`@l_uMa4E-nKq-jLy#VE! zpqT4s_yA%@|GV28K)Dt;JL{Vl$5L<%WdYb%?kK~Lt$|F#1bqcC&-%zs1~@?s)r4t4 zdlftkm0J} z9{Y~80&uQ<9csq%ij(eZI9puzMzy!4O*+xMGIrJo5J1if)a=(&k7Bpsz}qjUsfqt~OGh#!q z(VMFRvd$u;C00UZ?e$6{+y)09ZF;C#Kpv&nz@U@|X`!2MMm&?Ks=7yw^ou z6a;!kCnHqz9w>L_DL0Fo&-y02abU9aUnzBW&E=sT3RGuS;@z1XX1FRE>+&{NdW^)| z;K^XDJgi~xO|SMW3r7i2*^cc}a%i5N+j~k$>63<=)tMu#qf{AU-|1UqO4nt`66--c z{n{w|14^b9?i6df<+qu-bGVY-ivIU3WPn!mZ<8n1TLt^UFMYwl#D32|SO+pwPFX|h$D zqhph_K$h95Bcq?~tmMy5r^tSyGUiFSUklcyE{5b<-&z= zZhTLnnwj_x32tKcX~G5Q+-t%Ht(Ly*c)YYH48ff5U;>ruA;=B>C@|7WF0tiZH~3*pA@5n9z3B>ah^fmL@4ZY#Bv? z?MzP#gxZMZ+7V=SCMUw%^KaPSp_{5dP&@Tl3PN4fPUm^vr|r7pIF(W#A0}WA8S^UQ z4h#mmnW!L}q0&oh#{yI@4XQW8r8)1JYcd?#k@`DS;D(rV{5Ysg$V{7|z1r zW6J0G7#vn!Q{s9tH^9%}Dl2gFd0DIVA!Nqmd~jeYNBLch(HMjwdzaL#R+0Ck*Yhld z>r}V_o5;lGT*i*YNb*5;DX1rJ{s`^>-gQklRqQf0r6BQZ<&gfXc}jQQJcR+xQz|oE z%|Du_lp~;9j}Bj>r-@vb2}_AUPvR=Sr7lk|u@6f7Ai0O}u#u`QeSVhql=nzZeuRTU z@MVWuR~hb6e03SI=AjaPL8*OI&`{(C=h-Q(y`DsM_)N4^%Jg`*xj&)qYq$>c6Ju?o zLvLqA*_Ju7+TJas^^3ie(=9;!obZhx-IWdT)bh$?UCgMnMixJitevPh-HfLL1^XkY zzHE7(7;xQpzN=KO#m}>UoT|yJt!m*0*eo}helTUFX|Fb}H2GxJ-Z_nuS4vysAmN#9 zluWj3EXa_aS5YVXP(-bSmlM#5aYORX;B@`8aPh!CYZ>+}3=fV)uO6IfUW`d+meI2f z!suH-$5gNTNSXFGT;l<4P2$A>Fb&V&7Pdmv@hyz+`hrxzvZf3nYK05kMzsbaI`H3J zY4vY9{&c6k=Jh1_d*Jq;CLRAf)M${y2$;uo$_K{#GPNiOm6eq0m?QABl>d>iQOEs4 zjz0BFSGZF7t8Qo3_J83LI7|7ar{yU=Ie3Mm(Ub75^a=~J$sdc6a{mB?CNJj$G0L)E|wj+^t8l9mhgSGKP3xD))p#jLTcxiIHymF_SzV5K)AO* zbMyZMKRqLIC6CQkp3CFq`z>Az>E51%OMKeWZxz&VhH@x=b9Pxem1B*vzU(AOGMVHF zlj+{Vkvyy2?5KhQ?;EdGKT5Ct@RDi=ndYea=_Tp-w@0*W+CIX1J>DB}=i3F9oD=YH z&Q_z>KY(QkbM<|m>%Kx1UENb#KY`lfCD1AcHjI9|Ch?X)u0_-y`QvM{AM=k>E%eY6 z0g|MIp^RDhti*B{Nrh8B-#;f}xwsDGMA}GXceMIRpv2dHIL!<^JUrTdKZQ?{zas2q z%N^q6Qq;Bm_N#PVkk`T&>&qZ1IYT2pWopC_(AYC3I0 z;L3HgQ$QiNV~b67&sEu*vHHE;&hwuVIxYOT{yNE2s_UFeh>T^Jn_{~4x}%XK>C+Uz z3YY*MMB%&~J+nGi(WV;T#d!p~Q9EG$a|t*>=-8RdAZp1=?a8-`{OsIaU|e`%Xd{iU z9>!$9=c_PhEc`Eywxo>n(SsHo_>)t19__H;>q>9GC;xM^^#soHb>QDOTa}S)zniUn zIaxU!sJ_AbX1)nukXqSxlMaFCuXGxg-`glgsyl!1GI>tk^~V^mN$OP z_Vs`On|nqPHB@ReUU0EBJF=tLlqx)Ype{A?cHVkl-ho5#P}X6tUhVLc0;hz$TxrTw zqacCV?*#+Xr(-5ln?Ds#)T~k1{1B&A3e=~t)U;MnW_N1Cx!K7s^M&HDcVAN#c=hXJ zZUZrjrsGg<(7F;x7NWMb=mzXLD3rJkK@ePAH2rgR{g8pL$-%Gog@8QmjPyKD`&KBu zF6)}$g&XfM|1fUs0>)xvpE1O_G$gyD8?F6+HCpqOoe&#b;q}W2eymfW&Jt!k6q4Kne!n&& z#mZ_^o6dZuCrli z6z_c=iXdp)%Yuzy<+*1FQ$-0#g=gAfQ?B)}E)+Z4S5~-aYpvlKr@Bo8$0~M_OJ0Bs zINnHz6<2-Un~5Il(A&Hze&6Dg)$~;&!y>gNwtid&iY|y(Oo1FBXL?MMV1*CeRdh zttU0GJ{_QtbgV<+Uhn6vAECMG`M!2~RdWlGH?J&|g=N*wqwU;h{8q<1ua>D#Uvk8tSV*z`-- zWpCPAm!x&mo;5Dx!+3L=2AP&Xa}6%zYwoXn-UKev2yic%voKdartaXyKetm{!CeJ{NcNWgNE-EYo z&bK+jMw()~L3yC;y}_bnMlW8j9mS5D5xD%httnb1X=|SCbFHph9{bOqG-)9$vqMiJ zg9@vc)-tVdMm%$33gbY&j)pk*;hT!xAl-(xRcUb9F(43~Gh8-LpT2G#8RX_Lm;% zL2S3)J>j{nC#_q4H`BG0uNtmRV9FW<|5|i-x5!xslG%yXJ1UgL$6c@;OB(obR}awL zHx+CW)_%JJI@WrB5N=gjN*5L^v~E2ww)Jo*2+TI?P7F>6KAWoRfdGCeE9A1ejd(zx z0a=daR26W{C`N%Nuv$-@X|#5%%UhRfv!ivZXHS@nCR4%zYg-lX_f!EbS82=Eu_r+q zV+s9ud)g7-B~Ga_EfZbx;%Wrfw_BXoOQh$mh7))=EK|zuHrD3{o~odl-}neMb=qcBw;DOQ&hN#DCj<{< z9qrS2X;fv26gyJ>!lbqh?{ro3=iIMkGg*CHa7=&Of^5kFe<(uWMq|yYwnN5L*nPY4Piy!XrTA#LJ@=SDbOhL_+HRWtFF>5dl`&f*w^(0cJ6<@d!K3P!^{K5WzTqV={}XEhRSKjB{`> zju)LH+#A!`G3V{Z&$s-&Qqa;?gx|K;guNVG$|>kdg2)~Y9-3sm;l5lr?n9WtoYpg2 z#?rpVLnCFu%WnPfSc4*hWy#|9XONboBj4_+Y62n4jkqsjwuW9RhsLFdNmo+vgTC6oS@l5u?pc^~pN1V8Go zgL$^yn)vbhyNagem*8)Y?{@2ywvOEA2zvx{DuY(8Ej>o|s|EWg4&$58%oFgyO+sJQ z^3ONZwfKxHuEGL14krbW8hBV1s-!RVZsfWxVVlM!uD{ut9O5I&cu!Z9;ixdto6uY5 znCjHB$Y_vA5Sl7SvabdRalD*MXXt|YZ&@RP`b=|AKEtJ?cRG=fCSJk5 z5m7fN28ll}xOV)l;2Om=Nsw-t5h}|{sYGy@O7CahqJ_O1G>?U6Z%OH#>e`;rJJRz1 z9GkSunkL8-YR^WOTHPuZT9Mu|q$!;WB(7xJlNP5qDO>iIw?F#WAAT2^lV_TKKMdVA zV_D;(Uv1cGu>VDG)mf%nXS9wK$>z9|SS@a69PSgI#N>~cAKWFEcuB_;Eb*qDOE9hp zh{CY=%qzw~r5Y0r)66Ys1n7##JV2MlZ4JIoQ=KJBZe;apn*dIYtO!I=Og~DZf&@c<<+@v z4ae+kSHoWGKb2d%(hmRY<;BB%h5>n zSFyV1Q#!VK{{8W=bZKg;Ci2C=+lY$|f@<5Di1Q5sf{m(svizV`MW$$;GCeYcFu^4V zX}qoyM;pBKd;O?@hm)#m@gW+d=VH_{A9VDEOV(-Z=Nn6`0`{6{-~^0rVth zrh&_t910d>8!fZiIEd?1sY>8>=1g97(OLY+yzSs8W$?%5fbmTp+9l!u(s$_1fn5<1 znnzLiiYXVyHDfy-6XpM6b0Fw6>M%CJhRZ_Jml6*Vc6!+sMtP(-U>VTsSX}f zD7Md8>?vUUzgDfWqE&059B9?ryE3hN4zc#UIr+n;`MAof&++c&oUXl74+jvehKRK8 z3iHtUqTyIc#FzEu;e)~TcZbTtX*u@#4_Qa}rsfH{@QE~)9;T}Bm`#}iZ_R*qj-UM; zAV&%P7-fFrT}VZmwC_^G`Rc&u`t*u23msSM>8-s#(t(LWV1z^akP0^d2hlGK29a%H1-m|hQb1taG&IZu8 z1M6er6FD<_sfMyE&=)}36UBdEWgodEPz@b*sG)0FP&Q??YYd43UilQvzOc7@s&E(o zc!A0IRQ$C+kv~zF)=bMNr9KA6a6CQ){&4U&E0N zHUKxqfekEadJuU4ovXtVqLl}iH=xhaVb^!j6WzEyJL0#%z~><4KkWo0@&7s1>9KkZ z@;@2p{GGl5JEG`a&ync*WrpdRX65O07ki*MqIw&l0nXO?*_zD^-(}(ULw2l=RN1riY60@FV*lc;nT|hJF zpfSN6A1GCreJyi+#pbvz3iy4SV;e#kkH1uZD?bEio)y@M!~I)`>j&`RG!CcLu&pW! zFr|RgUmmqPJ7E@M0Q9j(Sog^}#VmHqZ7{2Ur{{WrD_F)FnU+kyg%nBIIz7PzMh$aM;0XSzjvU zvQ}5TyRRQ(sJO|O6|C2X(a_@hi--4NlPo^wk{ts6Lf`u3khj`&m7At_PENSxn+Lk$ z)gTzL<7ReFlk)@xGn3q=H@|OG#X`g5+WaJd9^ApRcchc+nq@2YKuFfej-qqNO>w1O zrZtO-zU0Q*)^~Lo28S9*Woor^^+7-aW6)!Hkk*wWJRwTR$m=1`l-h{9-9^1qWLXov zC;NT>KSw> z*^;tttsem6#26tIJc-;}es7|sEs&$t#}k^@!>Y`>-;->o?wKM#;j5h@FlfCInwtHR zSD`Go6g==>8r^J<2z9(d?x(G@6FZOcMP1m^!ZCjW+ZUGe{1Np8wz}9-YUnWn1#?L( zKZ0J-UmZCWnXh4jopkCwrOsusXu+G}kysh-z=FaebOc5-jxbrOew|Cd9?h|SP&p#a zedtF(@1Glvr|L%YM7j{a|7LHI6swemVKvjWP-W>j85;YoF3S7;mP>EPlU4pRRVHx& zuRp2iOPmhOn#Y}9!gsm3G0eMUFud0cC!ffHa6}hxb(Ib>fmz{bL7P$0V5w!)_$gp*lAa5wg)?(|n_b6idqD#A^=X3Fj z#10F*I}|32c4}(GxPy>wOh@{Z$N)TnR?6T8F8J0A9*tH$^ag0H*dQY}y!8@)R^eqE z_6T!-xh<?+Fm1=zD$S-!nC>Z?CWw&4TUXMW~WkM3b>mVLp2v^MnrrH|;*i1{nA3&o)^a z`*@0;_Pp)-w`tEC!96m(FbKBsMpNY@j+pi&@`bu@%%@I%SF89r$#{_(a_J_)uK;4ciTYLyEVw%-uCvef#1Mmkg`qR67_jK$^ zPV;#UwO#gKo>r*0_Sq2m@)aJA2;iF~n7{ z7(kW>4khofUFqvceF8JUtM^@g@FtCy zdJw1;^Eqftt+?EFcVsP-HZ6O>J6FhEw^VFdbokZP@{W-pt<{|-@sm$%vK)5$9EY$S z6|6D%_9CRTTJWt?nv?58(1g`*qnj$-!e2%=`Tx@BHdz1|-F{ltQMxBM90lDdU_6q@ zF(Q54wfuX@v*>NVCDz*ZUJX+gyIj8n_Pc#lA}@6W0onQ!wu@{GFZFje)|W;Q-9w~I zG@N(TIegN3Zgk84)97}6-`nNwVCI?rQ-7S;`cIMTQp5ga%)8Z@vHacKn=^X8u{RFk zDe~+GqfC%q5a*jaS)7~I^N?F>zca5}1ddfCWcBKRfnJRW=BoaT`&GsT_%TKcxB{qLo3dcnp( z|F3Ip9Xi2)vai{-NA}n>0WX3nNaQjPigc1qeFvongDFU>@vP7R`SJe72s^@jC*`;7 z?HgM5R^xObdsC)&nF;CfAl@<~k_4#$qn?r%vbURSOFNx@_{gwXsb^e7SrdmK6ibw4 zsQf^MOlDChhI_d-b^E)ZAj&T|%+qwls~d|2sw9;ZRU%6zR-9=RyNkTw!^Lt(s@9Lr zR<83lQWG6(v1X)Kxm7h)Z=)9ih6RgdPDJtU1WTk@V8L^0Y|-^UL0*JhzmztW0D7e0 ztF2?&dbNr(qi8M6l6SKd7jm?KVzxvu)svY1JF1L$iD1WKAsH+Aa7XwVaq{3J(Cgm= z1^1YH^`k0O<(l{KQ1)tgu&pS&#~}UU#*dE%o)yr-$|~-s6FIitpfa3E>Z$@$2$Ip* z;-mcT*f%x3wEYqi`jZ-F05cu93R|LIzxzDHrF;?G&42sj5^wpIesSQ(RxkU;4L!*? zRonj(DWm01ox8KNeshAMp}r(oo+zfVh^UM2;Yo0EXliiYb|27@4*0a8cNMC@oai!t zIR3j`cr$*_Gg9qd_RZuc@DmV~64*}@QV& z_SmLB`DB(bZebilMRaHJaLN$lP(j(S+2@zty#%ZMIhu0d&FE!=Ycba*cVa&C;gXos z(Ar+2NIg*jIKcjs_|J;}Jzchl?75O~I^MB2PIN<}n2Ti4NoPM!=8J|lQKoWfN5GHs zi^n0$zYVkeX0BpomMK;o`1bdHfoz0VTk~_+njhK)_vtSeT(jNzs%IbIg3~WWuX^%0 zw>bY=^&|t`wi9c3lg4X(G3hy308DyTOXfv;u77j))V=>H=)s}TNw9GpEam1oAb06hr47I_62L_lH>mVHZI zP3eM5*3Zok`OF{1EF9mBkIZ8OE0^FFIU5k7`VC_6nC44x9dB*`*%)no3_(C~k~Aii zzU`eXVhkSJv5P1WRK6J(x!lI4kPtU93)#4h?2QR&6g# zY)yQ}y5`E_2Z;PO-wC^cg@2NXziR0T)CL-#T@!};2o4Q zoZM{{oNv>-mEfr8N)-|a?v>^V@_MTt{+A<;WBA+=$M<#N!7oSLS04W_`$6^-8y>r6 zYjf*^Ofq@v?Kin!neW9&UfznXK@-6W-cu1Nj|Ux>7IZc8w^-rpV4C(Y5Vbb8$jBmjLh4(=t9kCoCXbWO$xp;& zO-;AYcMN_rw--AGnI|w$w?;k`=8|$>3XuWw?xU*RiEfS;#~;>SE;Q`@UNle@=R4!C z+Y8^apT8?=^vRsI$cs?#(bA=X-5&|w`m$;Bvnm<34C0N1=Q6j#28?q3fvo#ZJd9=Q zgT=E=Z^$I0d_L{kN5N!%?HJT>bUY8#1PpR*W(H|B9cfE5?mLb@R=bgY(aT+3x?RfSGpm z!mZ@jVFr&!9Mf^TrU@vP^A6$AV8Y$#tD7!UdDlHv-RxCHUZe7s&J}XSx6k)IWtg$w z-epil?|aVwZQqlcYLWoTyWE$!l6r8ppg$LRZBt@^e>~1+hL_U~dH9qnQ=oG%eAC_# zgL&I{%)}hp{ZZWKRIw&zm5MB3KZ#plY7<;-kbr_KSShiL@-Iwa9+;me&n+^Z@jFdx1#7!Q~S0!E=>k{4sxC z^!Lbc>2HX=-Kt(oWL@Wb`xdS==Do#rE$uYlzAOo@I4(wk{)B+Iy&s+TwdcL@TnAf5 zIIeGfh#W%29jL!x=#cBOyVA>oMWVs)Do$ZcO3#lAC&()G8rEEg=zCDKN zgX8^SZWyzJC?yk!Q;I-e>ZCR6I{d`M98tc`8xmZmb?5q`;vXSfW4lm=0WNCK0Hcp$ zS-!v~yF8}N{^lP>xxyZYOw!x}vXkEY?y!T{-mwFBux~SThAGa1ei*K_gJdUMbs&4t z7yEA8Sx8YD(Z(?9a)26b_t(pN3UwZZ+aK9@neJf)wJLs5aaGz)bR+h#h??1n`FV*< z(`YI0hkD+1-VS(-lFI6{!S`7X)Yxy8-1mMkwHO9e&j8b&W2NH2w5N2ccH5r)#k6Nu zVoyI0>zyd`*uT7T^56PmN+5L-GuH|37axXf-{0LBcMhi-M>8tw`gHJOSa}P5j^eu`EN{vW z$fI`+un(_b0~_&o9WUEk&J)cCVnlxns44dXf4P7U(PCI!YuCGna&I%nerA~)n8db#J|`7U6?bA!C* zw_c9K>E|_!*LULaffdci{w~$g=#&l6(h*ZJ{w+n*EjIe&-x&G-r@glhi|S$6b-@5p zgrAa1DJUTw(jfu@0z-FqcgKK=(%p@8Hw-;UcXuN&)DY5*dkx0>`qufb^L^*+>)O{I z|8xMIShIN6^V~NPFbMq>-XS6VKf62scHe(7+WgPj&;R?Sz$5T~AK_mwga4*P_Sd&T ztd##@mi!O7@}Hf`|DL+`|KOkcv-<361*GEuM5;F?T1V`{WmmSuYP{}uzK@Uz4|?!# z_TcO;oLH3nOttq{jtqbIqr6SQB{~Ln+Uy*6m^k(#Phd?66Aw(e5?Bbyl@&f3?{ERFIeI#x{9pp%i!y@b zUlDmL;F=U9WQl)Go64Bc**`0?ILh-h_(S-cuw2*6>Zfw_4h?t4c{HL_Nl>{8;)9ok zriuwrhPM}Bo};LB_{oHnh1b2kF zF+`cMyx<1X7ZE$WmVjXhYFOmHdIJYNNTXor4m;IA3ixinizMhE%h2Y=nXW}M?k_Wm z6AI|Ze<03k-uaZG@fNoeS*A);Q}%*$#|k z`3dZ}FnMfeJVZd_#}$-NPd6*c=xMDC?Ff6ANM!I;Ejci)evyo@JCgzUxVLjCvJIRP z@(^cDn09^Pq1ImH&urZ8@W@Sx^DywlUJOuX@EI>#PX(!>-p%ec>>ZtWk+uC))#!vZ zF!U)ftWE5n5nF8z1vn&;NpOe}!=L=Pm76wN$3Q3ac_O*iz12%#KHELC7dL@@?Ibz0 z`Yv$mpxGqvYy;x0?U02pz-d8_fzY+DvlsxxxaVmRF#j8#`cbpjBke|pdtx7tbb&QJ z8k+&2`)xq5A3a@-*zn`+Z+Rx7*}>(+{^gTp5A+KOo$`vtE@~v%~Jxm&THlI>W9MQ(E*?^@stD2>OvSqebOa37+}7mmjKE7@{GAYL?k@%#TN4U zh#;f~dL$dee10H(y!MI#eUhinHAgh-H&jk)K8!WjfxJ87kPv^_L;N8~HS(q$r}eXC zt;(*|cSCvJ?;Td9Xiv&fPI*M856WZGunK}bO38^HVv)2afn)DIwn?qemb5q|Sj&Qa z?Mlc$4@I!%8UWUu@%Gg-V&!lu_XeMlL}i6&gmJ|BApu{dB)%Q_w;i8x{Zb&+W-D^e zmbkG_VXUK2dG3AAbRK<^b|_>=9?I>oM~l@KV_p~)4>D7-cPXl6S8c0g8R6VK39NH7 zYAP6Z*0cE9!tTILB$jjs%O^6!4FG;9UoNj79d9WVkscg*BbQ!kWAfky;Dwh{At6eSVYWrMJ}P^9w}sH2zdGu3KJ(%H}1 zd^4ssndLYy5SNvB1^cLepM}p76S92kfUKrozjN-=c&)?i!(dvw&4Q}r&_Rn4;0HDlkU>Y`a{k`lv(8EvwFVISvs9El}NAp(ej;9f`e)mofm#d91@K(F76tIf#xo z1P0MbPk=!*j%z8Wu@ULB^B6!slGM|QMm1Yn;m+)K-g4ATL+*s)>v@4$S+EV3=Yglq z(FQSon4Jeppgh{GJQ08yx^~)6-B?EDA%8a|*HIKlwB0*OqH>QI z_#B|a=q=w0O_g`_;;z?sxaQ4$cU>xY2Xd^BwU2wQa-5{Uenh*pY!kjZM5Pil0c6)% zE=KPKEa||#Dpkzc_?rjxuY)Xe$2k~-q+gMSSxUP;T>KwFImyE|5 z?VzUt&m|)Ub@e5aAAQrMry}R-#lz{6JCS}|TW;J{oP-Omv!!Pz z%^EIrxb$c6M@UF-7iO4Z-`8?cpKg(G*u*)H*7*rgWQ^pb^dLJt5Pzbgc|XBHWD(<4 zd`*aM@;tTYa2uH+!`Bf-+9yL=@M}4)ggZixi{>i6GR;yv#MSsBd+?S^^}Lo7`dZaN zO6<4S$xXM$@P&hWyZ9k#=OVLs+f3#uccxi@OH>HvwmTEBX+R150YLlNiIt{@;R@N3$7O8I+Q-lJBFiaqGiayZvN2rGG%S^?uZoM3 z#9IB6Tu_kSy*|+V>)vawsK+lK6eM`8J|cWgvL21~rGM>~F!o&?1&!sIUJ9I?(#QF- zc$K}XLdJxyWJOT9fl?_7&!e98FDX};iEVc}@*T9%h$0ZpN)(60X#;WzQyF@=1m;~2 zV2LcuXWBd_Ii9&~+d@ZlQR^&1k+g_5Tz=L9k?`Ie;v{+85+5uqfbngV^u~HqMJ(Y+Erp}epl$mc zrf^L8#&q^bndEEpEPJu2gm-s_T$#V-TD&(*mhnTJAW%yX*3@SJjScv{-7-!pL9UaT ziKZM^3*}i^bR4;z4gS6%Ts!}yjhmsJMX2^esl1(=WE7blE<_QKh!ceRLkPr7bz(nG zG5$JBm&q=M-FS@QSzBaOJ5f;=+__CWs9*eq5vZ@H=f|Ow5O42eZ=GaGNqDlTPV(!%d+X?(V`Rbvo)QTk7}i6AMF8hXm7adJRkK)D)PCr z+9UhbXdF%=gR|<#6fyU)%3{PI?ByLh$D>ro-V7TIn> zxF`{iJ+nqetB)_e-{EmAEg$aZL@!x|LT(^-Z_tQL-sBF>177zlOYK>P5I*#%NI0f9 z+}WxQUq=@BxPNv2F~%kHy@&Lh?WcO|H)d6w@f<%WW z{ewjJnGr#vGsF3VMCTZMsVape?;rHs1NH)M7-U2-K8Lob^$#q%O=O2xN#Tm9BZ;3R zSDMUuryB0mGfy5zm%U9r$Cn7hZRwmoW69m|rtxDm`0lq|zH*)%7c(Dnn6gT>I|V|n zy+)7X+;I$*TQ(uS|m1Zy5E&F!m z$p-SmQL1r5eogJIuDi)P3>0ph_ZSSqaMTw}((qz7Q3q?6+au1Rc?B?MNrn_+bs<;4 z#^sDlJGr&jd)mRftqP&)fKGOLY%0aBGoyymQ7a}{d5}oa?+c(5V8sKc{Vd7ICl}h~ z`P?4tNlB->fTj&t=OL{|iSF;$_obpInv^)Y0_V!g7)=iTSYttomkE^fq0?j}e&8Yg zeaCw!AvDzOqWc3`lyPpOO}MkH_%jbixR??R^JXq(F0viMXWy4-8q}*Q^EYU4kkm`O z`30i8#d{tdIr8z9WK?QQBl>>?(e00;C?`~>f)+=^(>K=Y&joOAKT7kE?_czpwTXm# zRDpkZUQ-+l#mRGBCjH|MQ?sxfy{4KJqk^nupr3=y9acJV6R`@%y!tawBRTEE@(gFy zozFTG-hAI!1nt6wuAT*}J9=9wr^upzRJIDSx8!mE8gO;HE&q1F#?!rRU%GY4Tt?|! z5Bn5e1CXKG8lB61)4V!HRn5J2Ryl{|BkG%C-fix6(-PjTReO6%9ajaSaUAha?L^^|aLjOh*h%xA%QhChj|S^) z;Fw-VYT$5bcx92jEmpM4p)oZ}YN(-|vF@gc`C$}E3H+vy>A=*IbDmAy1?(StxJmgb za;0BVNxuNlX~^4penr?^M`Q<^6b!45q1$BCTI>7X zbZR1ALxI;cce`Z*Vl4Z*^1-Az{Tj3PB+nGa7Pl#p;w?L(lG|B<0N)2DdmQ*gMbbf& zUgemWX*{Ns(|peS=0gaEsvUf;vt1TfI>Ypo2{oB`_~_ekXC9eil?TH4N8@mz&aGq;ljr5XnJ z@T!jJtpO)NZA}eNP(B#76UT{vzzfA2%tRCk*F3k7FEEj`(7n!a=YU1)T|}q?!6Lip zdUhSJ#1Qw8{pjUsJSl#Hg7nQwA^{y?&p<-5lI{=MPr@Mk3pnNhr29*RUE}vH=EXPk zKeEjKNpl9ISGf*KN}TWZJO~)7w?;~_PNH*kLcbfk_|9L6#@-+twC`N{TNyUtkM zM)5D)ezev@cGmazOF!Rk#R4$;akRVeR>{^T_5FwMu!W%y8`NU3xOB|D5nY&Wzt3lV zbnWvA)uhCP^Y{5~eMvuC!2UZJ-NW%6xvT7Etdfhl4@yi$Csn#ylDv$y=gVkkU4qK? z9QS{6>Y_bh0i(0!K{INxX?s;H`ZdO3tOdXo7axo=vt6dJVlF4=SiyO!bvSkk%l0{t zeKW%|jJlhTq=CEod@u!RSs~!3HQwsMMHLtg_2{i_D!%h^!NM^Qf zTaY-tkEpgtasxR%wu>Q3Slz*ft-hX3OXVEK>;P|$WfqDRgoz}M*$X%EaSro=Nom(VU-?lqO=!+hh1J z_ak&PIASs#KC>O&Aw1ldRx{;nJrshx*}vZ{b6DdjM3bxNeqn3}eL-SEv$wO;7ZYqY zVyHrw7)++SS&KXYxwFw;w=+|7x^QNEm^&8hmKaqX)|gD5G5wGx@$Ah-&2wP$o6MsB zeCnzF%1YUa$!3UbkrUVQH1!)V?vffuUR(M^Okn^6s^C&M9oyIuGVJ&`fZHNT9JeSL z>zvqw45Q=o-XCel?FwZqEiQj;^LR(NXqEASd_}O`v=tbHP`d(S>b%VDd)I2$eT3RI z;?Je81}P zqupJDBvsKQ0WW#Nk6g{Py)h}gqWeIe`fISFeIP4orCx^ z$0d^ri{SCW_o%lSx;F3{)QGx{v~cq`Z4U6YDo;Af84*`{WQXimJGnJfwyC9--l{fJFIGpLNZ|jBqR`NL_)$iofJ-4>gu#A7!CrkkagJ`-MFX` zmir7+{o&~<>?RVpgl{JkWusD=Pu+y;c*($PfVFa*F00khX735BJ8SJ`Rx4rRM~{o} zr82%ysM=M7q2?SZx>!>4Vpl3}=$PY;=0Rpv?@uCsOk*v-Gajh}YS-YuSGz|1P`d)* zic9eGiCr*_GpYC!R*BLbASa^;hQlG6^?p{%61!d(JL}0o5<5V;^BlLd4n2q}poUq0 zF326a`XMG^fdebeWZVW2ye@<%XcFP~nk;W#nS5#Op-9(4%w)TM&tzqij*vp+$82AZ zr|>bVrXP}-XWaO@x~265wS#1E_x!nGsu>Wj9GtI}p!XcU6UUqxW202s!L~fUbIbW} zh`G%F3Suq+k*KUvZVRUH$87TH0ART%RH)5%Vx4Eb-v+nLJtGdoIQup+rUbYKN0KsT zgOzI&V%;k&f$Qq@u(AZmTQzl~hHU}Uc3J_x+i1s)Hhb8^woJW9v8s^b2|C^sJcGtY zW|4r?x%B#~U7el04P}x;3+sSuqMVHt-4(7!`Chnv6=L!Fs5;BM$7x|wb5UL8Bzu21 z@nfeT#B%EEoZ4mM2}na3Aic@dt0rVirVlKuS#rA*#RwV^beBw&mXx%w<_^DT|D=?u zg#FmmUJp2iTP7%N(R`ZEWOSM8mZiu2wUJfwDrEmJZe-U=j9Z|?-Q(AJ%$~jS>2kY2 zBzPl7Ky+xlnzIh!AV6e7ub{Pa=s_McrG72gpjp(8naqZybD3>L^1z2vRiMd)9$%`K z_hNW_hoDobP)TDc*~!$uV}fg2t#3TLK0Fl>olrHfC@K{_n|Q(MJzAjoGx`a{j*MOCNYn37vD%wt z5%sDMJA51d$4C~D=KML5eZ<9zv(4oRRwtQ<@7wpdowfJ}1#gg*JzIvSa@LWLEhjYc z_yB-Epn*77`WEp_xpvK@WF?^vxbo+_ey^4*Jf%Sex_^ncf$m@0goARgC!Z<1evbT@ z1MloAT9t9lp$yj2!m)Y&pH#W~s(|nH2UTtj#EkI0I&rq2A*gbI?^VEW-ZZ)AYq@~E z+1y*(^@aJ~n>UpIX()IEHF;Y-HJ4EEi z@{;2b4<(%DA1ws!dTYgBlt?9vo!M>M&}4FV&=2fiK7z7sz?t?2pDhaY2*V<9x+ziw zYATAATZRx@T>dPU^#eJ>IYOE|EpgEi9@Q26N!BgNqT7sduQY*hmSZA6U}6<&Y{6?S zoa>u)s(ulS{uF0ALRWq4E>#xI%UE;RQ~gY@Q5&lymX&b7nz>AE6h-dfL6GC3;P8{G zGe%?sT?sa`SdEu1^P%6edsG^F7pJgxb$NVDh;h}>ZP4e=jHh356j^YiROWJ!N14H-5czWS(|ncY@;nSb~P@ileMmPK1w;|J=MA# zWFNrby#K8ent*Q%V&6|L(m7y$=z^6VXO+=iBio8Ln$+tRAIGxphCy57aJ;oF7C;OP zcvtx*v$$lgs%ULhh~qxyXcjKF9jL`a)+~!0>YdWT*!?6Xb`2?L>h9by>mPE5-up*7 z4}oR#(mnqRH@|@AVG&VT1o1VtZK4bo^PK>{YwwoZ>^qm+OF{#}`caYVa5oo+)g%PE zt`TBu!>go_5)&rv2&q}n^}^-Tyw%!B1G6 z&Wtl}3j!85RHDcSL%`y8GUa~4;;QQ0-G9O22&w)PEG~Pe=m>l1_dvGYeU>DLQe+Y; zVD5vPytd{sIu3I!FJ7hb8NcTt&(OP<*E|K_H{>yIJ2= zPZeWj#1C`4;7S{A0sq1+a1;JNHTLBCvHfi*unvf(p3YlYl!dgINw2rheWo0ij8AkP z$NgHG`$=u}$ZAP=I(%mU1Z`7{a`(y|F}9k4b@ha_^YB=jE11P;&dXAaoK1`f@VVNX zH-7lqE_0c8?~u`!vw2RB34NacaiN#Ws@>2%+0l>w)z!@VuAmureXVt?+Q8>;`yWyK z72gKu0=uaPai2ozl<76=v`#1$lp%P*A2su-VV7#8)QyG+_4{U*e5 z(gyOk3nprb;>h%C$h3d!Fv6DW_3pa!yTb?lhYnxE&kmoh93W)*C5Clv{vn3_tQna$ ztkfSZqjY+4>I-cjPrZVom)3lBd!Z2Yva+l?@i6C7<3oiEHfeD2OL-@_y!IZpFAHiq@`ZVo3F=U_>gDXc zvU~-i_BAdjcjTOTJWKNEk>1&;o91|5yF2|z!wXLH0y47D$rUuVWFPmcwNg^X)*b_35>ZK{2b*om0Gj z(7|Z$;8dXUax~pc+C!t!Ojl5l*wsuaoYMc>=zMQp7?qM?s&Ksm~_>S)ez;wYbC6M{kk+gU|D){@JY_YE{hkhNAoBkG;xEtM(`wLY2)YK++q#AzBN=(}vL`-)-b8BCsEF)c(F{<>GJsy?O!3OxWu6|6KWQdWA+q^8uy;^r7%*9`FlUm){9&Py6sXr~C15 zSl<8HWChG^jyt-HrW*DWDp;!k?%uISi~)@>{tJroz=uU&o)w|qsFTCRES;}~&SQgf38Y!HSsO4%N`Vcdmn{1L`(n@z!b#9O*gfwrhHBVD-6?X3yermpWZ$b~ zYSK-SB63s0y`^V+26FY*p0!l|(^b9fU z;YYh~q%tkewJR8zrB$vAMe@EI$8l#_aQXcF*LxE!W-1cfDzHhX<-yYo^0!p3_0R0g zng^(y&=w9GFCYuM1Vk5zYtp9iv(TP>0&BjaJ*@y_8GY-0<0aANZ}$16Kv(EOFdFIt zI$bT9%1yqi6d&@Nt;gB@429w;2F3J0d-fT~y0Az8G3&C~`WIQ(o&RRmHS+&1>w1Tv zz5T7(gUGtL|7WtU!vi$OKKI-+O=hKfpzGcBj)|Fig?VerI|KHzgvy`=?s{knoz*?c zg~BI_A!0NdYkBZ+fMMA^E*i@_MYjCz1d&t07&0|^u2qwembB@VPQg)k4V;}gM|N{F z>+cp7Y3|KQNPu-R*j&R^xPEygPf7XHa*pq$ococG-Hm6{NwF=H$#7^Hpj0@#7gt_S z`s`Av$uM_^`D_8G2eqfyvszS;SC8OEv3-o;Ar7{-gS8XAsna^e1Qb6fh;Bz&iJvVhKz8x~n ze(u!+NL*ZswJ)lqB)fH*aXEG8B!8koR;#Fopby;hj^*;w?rp{H{L zbJsPrpL5qgGA^Hg%(z0*-VprExK^Ud_k9hDKXWer^XN6P^WThKU7m)bNXt*%JOY{i z&bb~;8NEXjaKPO0Ga51m4wiU_&mj8uHrR&Vj0Oq++_|=<#8T)~<48R>`76iKE0;B8 zy3AuR?C<3XcT?qSZekuA#{yCf&M5VIdivoNc;~BsyLkN#fBQt}HdJu0sk9XtHq9;m z<=ABTqn$NqGXz||^UjI8!9@iq^1yYLRu_yt`R&M)5ltcM`0p2m8aM@tsWd{2&Wo(- z+)w#zDJ)op=ddk1z9(I+N7w^m1xn6pxMfj!(b8!T?(#V$M(zm~*JxB{tfU?{p3bGV zV-NJ;o9~5VWlSE7?k`6sxCXpgIQ?F-%Au6`+3XAY*cy% zK?^9i7Xf1>F^D(#Hx4eB`M-dJyBUnY!L@z-c<+9(-uDN9ozhc~V<1D7f6US=Sl^N$ zJwJLxTHo;%9R=;2x`9dm&~|%1QI9wxyDUD7-ctstJ};yz*E~+Ch>uE1{_yc!i^JIu z0hWH(L#wJ3uz)oOmcY2vI=>h^cwVYZ`3)UO7s_T#Z&5dKp6e2X3P0%i=w?~3WI1Zi zoerhT_gRS$zL4`Ct0g3%71j#}zjLT!Q}pnmbE+~oTgR5jb@azN^u>-#fcJJ5VTJo( zgS%c(NzP;%TpV3bUtf>&_dTQO2`~pmGB=-OIoLpw=xvxT znxZ!km`Iv5^I&KnDR%l`ye!zJfywyAM4SEf%C&UP&C5oqXD8BY-f7uR&Wn5c_AuI* z;w%vsowjQ6A(>|_Cy(9Yb=&BEAEIp}3I^In%Oi($5gSr0Uo^Mzd~8#6W4sNT{wwwb zplKxB$1{1r{d3ytZH}0>?mK*RaL>q(hw{2F3zSH*u5R}Yf=l+4g1or6B*g2?J%_KH zFT1BL#jM+=oJqv^q)FYOG295W3bUZWG%oGk^IK(Av!lXKN7nsKJ`0zKfxd8-3UBrm zD@wf3$nIovEYo`kRonq(;fDJ?xpcIB{gIB7Lr0QWt=w#G_{~uJXr~geg;ZFmzdz38D!*pugE3EHrG@)fJM}HXa>&s(0=z+HQCh zs{HV=n4tYc`?#oIO9a$qo66QZ$pzy&*0QXYOZX9MT~Aum%7IwxCKn>s!WjW#EyLUY zHr5JM_*<-n!H9^pQZdWZ!}B5d-24X!`E68t@wbM->Vy7@~NqQ(*sSXvfD`IkQa_fwr%uBIKCVRAO8pP z+rwYvH{_aAry;puQ+yZFT$1C~riT)#m-jx-CffRs(JI^AAnjm%kEU20IJnI-Db@C{ z%iDrpmNiIxMh5*wUI4dQe3!3Eo@M;~EFcM!yZ6AZR)V=?_?ih<9SJbux|uQjCaC$R zf?)xd={=|!_n$#kA5#d04vXLYL4sS4L6G1quSswk9Q+S2#Ts{Y6Ig)iH~SubDwude4ZF zN?&()o12XE_%ut+g2@Ww)H*1^=&A2&3ps#koa+0 z>shVy(gzDH2|K&XKQtwf!I(NVruBm0S~_3CD?Rj5b+XE8+%-bnh9JiHXEBt2k9^BW z9xSB2{~~8*5y}++eJ-pwvls`7egkL1iHCH?~&QAy8ts|rTn_Vx+F}pJ}d6=!*%@EnsgEZGgmVOO7 zW4iDZ?@9exgM!X9Xz=rq9K^=z>jyn|b1^ut(P7lDN;KQYDNDJwJ85}sKxyz9^3HqIp%%nb@iz{d`I|&pLFrg zNPlaU7EIr69{eT&E?f;9%UO-2d+vVTYE{+vJ`|38p3?Z7vE&sf=wDFZq<>N0#uf(K z5mp5MxIe83$5l{8zHiBH57#Sej9$?%z2|5go1%QwjJtw7zAc*cG%L^~)x0MGv`#}D zgZ6rxbpJ~!;3F@~xl_Kn;>^_Op0cS=e_-M@MZE>zYj-~z9}vZRFI4h$OZnGW)${jQ z^=N5D)~fD72H@~aafVIkPD$0{UsA{0DOc}(Jl}iga(dx5VrUS7(`$&ttEtG48IZMF z=z+ofnFjMZ)`dE5czY`hdbSD;-dH%79E}mr`)gCed4zuqLjys%^sb*evRmwgx;+i?9iuH*VMP z+8h2ARjuU;IwaCfgEn-?1~4CJxoq$me3K_yxA#a-eWHJkQSns8EmikYUNd@UuqmnR zi3a_J{ClSEA`DZ4{405$Z{xGzXx7DfFWe^d4cO-oI?u)U$QIjXWPV&i`zw|}wH(Ds z0DR+AWCh6~;3NZ1ydzn?n@G@L2adrUC7C>S0GX-YTaI5DpV?fU#IC$uadXNTh`GiY zbe~@trx_SRkHDR*3baR@l_3P0@h?y5q!g%}t5^%B%IZ@h_R!80pE$a>6OxZ>5aUDX zJT`?d2NL><*;3J)r}kf3>&oAq+0C2B>ox$WKp^MCW;%kRMTZO5(|I$ zXkAkSn4rdc$>M4zIcaXo(DdU7V{ zWW=2wxgYnVCf|V+zj;Fo|gBCg-WmFdz1T4cJa+km&BiIWH!3k~fs z+y59ZDafa0ryLrivtInEXqIAG^ste9EE2e+D)HI?LW}*zBH038@R0cp$>zUDzT@m^~p5N@4*awbEf*k0~iQenkBEBS{1 z3Q^#y^e`58ZoGO(As5xu$6Vd9ZxdOm({hnyyVX%%H!%r zq_`4+N%3Z|OxPfq)&v07U9VINMgC`2s>VqqH;|l&f2~v<{sU2W_cT$;uuUcOoD3PzW2anfGMAXH_^|#E@*+bG@h2 zSto<-PgOXRREmup`~1fUE`hP=nY1cyHkay3^!>^?#@Y|jektI|@rD`qE>YR$bxGe*`$=tF95=M$mrN^1 zpXmmmp*u}}mW^F)d0IjqMbhtwh5D)8*mlS&Mo-ze224Rnf)w*+^L8HNq9_n;!Iu@z zKeLtE^?r*r&?$Ad)kvtzogZ?6pw5B8MP#-wk&7>kdNLbXGxg?TLsHblbI8>oL9ajR zDL8Mc@3cjH(KA+>-Pd!^Vc4opJ2xI_m6L|jn=W3;ElD<0lqP zQ=V~~avEaL!OEkN1b%+(&a6cPByN#;|&TZ*+J2o zCe0?zzi|`-qwQS6t_SD<)62@|DDX&*s7^08~07oH)y((uW#i zd6ocZx1F<~luK%10}N4;$Zy^o=K)tQ@u}K@$)VYdiG+>laW}zh1h0+0W>5Dn8Lo(H z`XvfQ=D#AgarGGD?sUJD=K~`&qw9;Jz^lTLZ>!}4BGz)lPRpm!R9xB!!HZ|tr`?X` zl|m6ye|47lCHbmbC=E% z3nJ8hWsH#6;P=@1!=G;IvES#2vt1l0Q(f72wsx0Ce_^_}<~4RNi1x!-H9hW12C*Ko zrrnLFFEG%`LqUcNw{g@E7H6v=9c>-D;%ZXyE)DJK8aMIr`2&R#K#q)tAL3QkK)hba16_ z(lUd43;9XjpOm+z{^`b77$JPAX;)%>f|CQGlWWI=x{qSujmgB%3N59I0e9&3gFAcd zG;?#$zfYfy=Zo)8m-Qx2!(RkWCnUmCy9P(^(%>R0*!=ykVi!UdiY4(w7TO)Vj!?iVe3#+vHqL7q z{d5H9Eq9n|_1Y+{q4;!m;P0rJ7WoC>z9|qq(r|?Kh~gta#oxbgC35)~2;sKxti<7? z6VRZPGB7;3Q-*)1iPuZ}Mq|tE5>E+MLUM+QRy2pn`v%NuFE=_~JzxoC#7ALaG&TB5 z%?n5G#)Aj^_YG_-K|B_~ACP?Fw0raMcm80YK9MV%)t9DG2@SDg%ok83EaU@=UY=WV zNG^J=GzOcPjrYr$Sx-#tUfw(h->6Lxcr5l;;-1_jxQ=rTuM2f8y)UioxcgpZydk@N zV5jaGdCzSg*vR6WB=$Ff?NMs^{v!75q47gCa~I6CBfMpGkR+S*+nTm9FwIY&a-Q<| z!-lPSf=Q35!WGaMjin$IwkCHwqnNw>yTufZBKP-OVjt}h-W`*MvWq#&S4EryqJ@`8 z16kf0wQuIB+%r&DyC+poMZpp)uGlBNphySK#|sTyQTeVZX>s)2(i$zp44dE10=r){ zQn(b9!^bFi9M~7QINls^Z+a3jNlr6I55qn>Yz>7=@S#q5jJ(>z!5P`oVt=efLR!w1 zuLq9U-<{V~O_E=!n^ixvJ6(JKm{Bo!T(M&crTxnJD)La3s%iGL{y;Y4;cDx0=&~mf0w#R7$mfQXeZ!G#Ta&vCk3#QinM8@?avKsbAzI7 zaiWKNdCMqu8y=-T-}gVW&*zc^6DGX1W-t?nVR__!g07W|v40J1N+A8*n~;}$`*1S+ zwYv?|0-l2|B}Bp(Vyka49Hh&$#Mv5n33wH-De{z8bi_C`y+tC!8MymqM3cx}gB7_h zUawn#D@Nv=t2hQ_!CtcCKFKSKFUk@^W2$|nJxiVwz_I0tFjg|n)Y~9E1h3@gyH|J@ zQVRk%lwTxcY&d`Tdb?!neD&Z=k}u!pG1tAg4Q7oJYxS$9J{*v`OXN#BL)YY2XFU*g z7ag^W^AIh?lcdW~O1I0kVSxsy3A*a{%5qh;5M_8Y1IYHY+GDMy%=y!+Fr(KgQ-aah z-&uKMn@a@1X1q=-ef#sL_iiX}Z4@^va~{yZy4_Z`Vt2T_KTT#lT}*8E6gnIBaj1RA)jvEjw9Nm^& zanKZ5D7-_tmFp+KyN2Sq0Y932KHC?@XQ6$7$ELY99>}W(mEP5&1qx(GZ9 z=D%Ux-al;HD~Y4Y(R4pQ9GFO_D|03in@sJ0vt*ui#q>M@W7%J6EIjt3UB+w0Tx>Y- z)C7T}ycJ?Oy!z7oEv^Q9_B6vmx2f5zC3IS!!CPk-1vPn%nedj-n425->bVs5Gd!CQb!RC3>)3Aa(-lLPRr`LmnYKDenO)uD)Hc26 zpguMIc`fGFeDwBTSY(y5w32c29>>u_l78LCc_Wk^W|Eqk?yWPO*hy7ZjC*5|Xar?2 z$9Y=W)+xzP=k@OVS)@ioZ+HoUTn#R$O6^fMp@PKZ|?Y<1q28vbefY zLwvEx(iN;7su|Rwl{p~JUSWHgAqo(Ppd6F2vK2Y=5}#lGLAt1?Chv{xAW~Py$CpD9i%lK-{mNQfF-5 z3M&ez^jig2+iY}cJIH$n4=T`iFmt_~RE)~}25uY;ZWw=m)ux5gf25I)li35Al?NBK ziyl`Ic*YbPoP1m%>t&nBIAqgFKyn*P$Dq4Dj# zZE~Y^yg%udwT3t`2M=3vY}n+n5O*w5FxpC(^WM!p>SKLe1PKmILff|!+mOpuaCr)D z-Qdns9VM=j^u=q?*P(~oO%S_`;i-B1e{kz!QjMPh>dpPLthhS#uqYm|Tq%i1yI6G3 zh~k-?HUmdlM@2m?vm@bXkZ$5th7zBAx!w9z01w= z5N>~7^G;a3i&{p{+d^8Lk=kVvA4IXVO)^lH+&Vs0r7T>Jg31#pR08n z*1hHKkixn21jcmn9-AFx=1i5Y0sLtSN=A4DN5m+%jYOHa;+GmKE~4Iv#}T7F(x7`Ub9(hJhIxQ6IpO*_<4ZjX9)O+3$@EeruMR#B$uh-(hkHHq%*Jl^M)%r)cyJ0y&5 zT`yvCa~^`2gD1m}YQ4$ITr&;&YZ^K*?+sAf63*|wpV_F9^$0SnC4}^3?Dkm7p)Q+G zOuoOn{l39adkm+-8gsrgGUt%^$oKo~RB}(%6bXFMrYSk{qPwJ|A}~NOs~5|d1Lx9; z(O%x>?dN8ngju#_`5E~Ecy}eGp zehF2XMBGa|js8OO90~L6wQ3`RkCEnBip&npRNhk^Va}1`gQdX*fv{y!IH8HF$b{n! zCPiJbK~URN;d)fHI9HIeYvnwLLbc6OxI8a2%EXnMnubOXb{Ewr$a%HrB|kCutAgd-fak z1RI-@%A8eki^Z-4*Fw4E>?Ddks&4m>BDgKf41u&jRZQpu)Tz#i@Z8iRc8MPa=?Mz2 zQ^J#mn@C4myb!=48UpMa`PiD1nb3Z9zFHC5?i8uTVVjGR#!~Bff*E5J<4_wbqCK1+#P5tN;K2 literal 0 HcmV?d00001