From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============4150958105622313301==" MIME-Version: 1.0 From: kbuild test robot To: kbuild-all@lists.01.org Subject: [chrome-os:chromeos-4.19 21350/21402] drivers/misc/echo/echo.c:384:27: error: equality comparison with extraneous parentheses Date: Wed, 15 Apr 2020 06:09:47 +0800 Message-ID: <202004150637.9F62YI28%lkp@intel.com> List-Id: --===============4150958105622313301== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable tree: https://chromium.googlesource.com/chromiumos/third_party/kernel chr= omeos-4.19 head: e747fc8dfce13c501be9b7032a5a3d8249bc27ab commit: 12bd892cc0bd4a700dd41aa4b0d1e0cfc128e3e4 [21350/21402] CHROMIUM: Me= rge 'v4.19.114' into chromeos-4.19 config: x86_64-randconfig-c002-20200414 (attached as .config) compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project f3da6b= 7ab5698bb0b9bd208972115dbcbbc59f27) reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/= make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout 12bd892cc0bd4a700dd41aa4b0d1e0cfc128e3e4 # save the attached .config to linux build tree COMPILER=3Dclang make.cross ARCH=3Dx86_64 = If you fix the issue, kindly add following tag as appropriate Reported-by: kbuild test robot All errors (new ones prefixed by >>): >> drivers/misc/echo/echo.c:384:27: error: equality comparison with extrane= ous parentheses [-Werror,-Wparentheses-equality] if ((ec->nonupdate_dwell =3D=3D 0)) { ~~~~~~~~~~~~~~~~~~~~^~~~ drivers/misc/echo/echo.c:384:27: note: remove extraneous parentheses aro= und the comparison to silence this warning if ((ec->nonupdate_dwell =3D=3D 0)) { ~ ^ ~ drivers/misc/echo/echo.c:384:27: note: use '=3D' to turn this equality c= omparison into an assignment if ((ec->nonupdate_dwell =3D=3D 0)) { ^~ =3D 1 error generated. -- >> net/decnet/dn_dev.c:1366:10: error: address of array 'dev->name' will al= ways evaluate to 'true' [-Werror,-Wpointer-bool-conversion] dev->name ? dev->name : "???", ~~~~~^~~~ ~ 1 error generated. -- >> drivers/regulator/da903x.c:395:2: error: division by zero is undefined [= -Werror,-Wdivision-by-zero] DA9030_LDO(13, 2100, 2100, 0, INVAL, 0, 0, RCTL11, 3), /* fixed = @2.1V */ ^ ~ drivers/regulator/da903x.c:359:2: note: expanded from macro 'DA9030_LDO' DA903x_LDO(DA9030, _id, min, max, step, vreg, shift, nbits, ereg= , ebit) ^ ~~~~ drivers/regulator/da903x.c:320:39: note: expanded from macro 'DA903x_LDO' .n_voltages =3D (step) ? ((max - min) / step + 1) : 1, = \ ^ ~~~~ drivers/regulator/da903x.c:415:2: error: division by zero is undefined [= -Werror,-Wdivision-by-zero] DA9034_LDO(5, 3100, 3100, 0, INVAL, 0, 0, OVER3, 7), /* fixed @3= .1V */ ^ ~ drivers/regulator/da903x.c:356:2: note: expanded from macro 'DA9034_LDO' DA903x_LDO(DA9034, _id, min, max, step, vreg, shift, nbits, ereg= , ebit) ^ ~~~~ drivers/regulator/da903x.c:320:39: note: expanded from macro 'DA903x_LDO' .n_voltages =3D (step) ? ((max - min) / step + 1) : 1, = \ ^ ~~~~ 2 errors generated. -- In file included from drivers/scsi/osd/osd_uld.c:60: In file included from include/scsi/osd_initiator.h:18: >> include/scsi/osd_types.h:31:21: error: 'weak' attribute only applies to = variables, functions, and classes [-Werror,-Wignored-attributes] static const struct __weak osd_obj_id osd_root_object =3D {0, 0}; ^ include/linux/compiler_types.h:219:33: note: expanded from macro '__weak' #define __weak __attribute__((weak)) ^ 1 error generated. vim +384 drivers/misc/echo/echo.c 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 273 = 9d8f2d5dfbcc9d drivers/staging/echo/echo.c Tzafrir Cohen 2008-10-12 = 274 int16_t oslec_update(struct oslec_state *ec, int16_t tx, int16_t rx) 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 275 { 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 276 int32_t echo_value; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 277 int clean_bg; 3ec50be588d773 drivers/staging/echo/echo.c Jesper Juhl 2012-06-27 = 278 int tmp; 3ec50be588d773 drivers/staging/echo/echo.c Jesper Juhl 2012-06-27 = 279 int tmp1; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 280 = 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 281 /* 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 282 * Input scaling was found be required to prevent problems when tx 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 283 * starts clipping. Another possible way to handle this would be the 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 284 * filter coefficent scaling. 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 285 */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 286 = 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 287 ec->tx =3D tx; 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 288 ec->rx =3D rx; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 289 tx >>=3D 1; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 290 rx >>=3D 1; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 291 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 292 /* 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 293 * Filter DC, 3dB point is 160Hz (I think), note 32 bit precision 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 294 * required otherwise values do not track down to 0. Zero at DC, Pole 196e76e86a3a90 drivers/staging/echo/echo.c David Rowe 2009-08-23 = 295 * at (1-Beta) on real axis. Some chip sets (like Si labs) don't 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 296 * need this, but something like a $10 X100P card does. Any DC really 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 297 * slows down convergence. 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 298 * 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 299 * Note: removes some low frequency from the signal, this reduces the 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 300 * speech quality when listening to samples through headphones but may 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 301 * not be obvious through a telephone handset. 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 302 * 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 303 * Note that the 3dB frequency in radians is approx Beta, e.g. for Be= ta 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 304 * =3D 2^(-3) =3D 0.125, 3dB freq is 0.125 rads =3D 159Hz. 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 305 */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 306 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 307 if (ec->adaption_mode & ECHO_CAN_USE_RX_HPF) { 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 308 tmp =3D rx << 15; 196e76e86a3a90 drivers/staging/echo/echo.c David Rowe 2009-08-23 = 309 = 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 310 /* 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 311 * Make sure the gain of the HPF is 1.0. This can still 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 312 * saturate a little under impulse conditions, and it might 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 313 * roll to 32768 and need clipping on sustained peak level 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 314 * signals. However, the scale of such clipping is small, and 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 315 * the error due to any saturation should not markedly affect 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 316 * the downstream processing. 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 317 */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 318 tmp -=3D (tmp >> 4); 196e76e86a3a90 drivers/staging/echo/echo.c David Rowe 2009-08-23 = 319 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 320 ec->rx_1 +=3D -(ec->rx_1 >> DC_LOG2BETA) + tmp - ec->rx_2; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 321 = 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 322 /* 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 323 * hard limit filter to prevent clipping. Note that at this 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 324 * stage rx should be limited to +/- 16383 due to right shift 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 325 * above 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 326 */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 327 tmp1 =3D ec->rx_1 >> 15; 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 328 if (tmp1 > 16383) 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 329 tmp1 =3D 16383; 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 330 if (tmp1 < -16383) 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 331 tmp1 =3D -16383; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 332 rx =3D tmp1; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 333 ec->rx_2 =3D tmp; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 334 } 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 335 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 336 /* Block average of power in the filter states. Used for 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 337 adaption power calculation. */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 338 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 339 { 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 340 int new, old; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 341 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 342 /* efficient "out with the old and in with the new" algorithm so 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 343 we don't have to recalculate over the whole block of 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 344 samples. */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 345 new =3D (int)tx * (int)tx; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 346 old =3D (int)ec->fir_state.history[ec->fir_state.curr_pos] * 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 347 (int)ec->fir_state.history[ec->fir_state.curr_pos]; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 348 ec->pstates +=3D 0f51010e87636e drivers/staging/echo/echo.c David Rowe 2009-05-20 = 349 ((new - old) + (1 << (ec->log2taps - 1))) >> ec->log2taps; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 350 if (ec->pstates < 0) 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 351 ec->pstates =3D 0; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 352 } 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 353 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 354 /* Calculate short term average levels using simple single pole IIRs = */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 355 = 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 356 ec->ltxacc +=3D abs(tx) - ec->ltx; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 357 ec->ltx =3D (ec->ltxacc + (1 << 4)) >> 5; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 358 ec->lrxacc +=3D abs(rx) - ec->lrx; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 359 ec->lrx =3D (ec->lrxacc + (1 << 4)) >> 5; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 360 = 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 361 /* Foreground filter */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 362 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 363 ec->fir_state.coeffs =3D ec->fir_taps16[0]; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 364 echo_value =3D fir16(&ec->fir_state, tx); 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 365 ec->clean =3D rx - echo_value; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 366 ec->lcleanacc +=3D abs(ec->clean) - ec->lclean; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 367 ec->lclean =3D (ec->lcleanacc + (1 << 4)) >> 5; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 368 = 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 369 /* Background filter */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 370 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 371 echo_value =3D fir16(&ec->fir_state_bg, tx); 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 372 clean_bg =3D rx - echo_value; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 373 ec->lclean_bgacc +=3D abs(clean_bg) - ec->lclean_bg; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 374 ec->lclean_bg =3D (ec->lclean_bgacc + (1 << 4)) >> 5; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 375 = 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 376 /* Background Filter adaption */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 377 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 378 /* Almost always adap bg filter, just simple DT and energy 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 379 detection to minimise adaption in cases of strong double talk. 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 380 However this is not critical for the dual path algorithm. 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 381 */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 382 ec->factor =3D 0; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 383 ec->shift =3D 0; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 @= 384 if ((ec->nonupdate_dwell =3D=3D 0)) { 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 385 int p, logp, shift; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 386 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 387 /* Determine: 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 388 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 389 f =3D Beta * clean_bg_rx/P ------ (1) 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 390 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 391 where P is the total power in the filter states. 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 392 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 393 The Boffins have shown that if we obey (1) we converge 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 394 quickly and avoid instability. 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 395 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 396 The correct factor f must be in Q30, as this is the fixed 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 397 point format required by the lms_adapt_bg() function, 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 398 therefore the scaled version of (1) is: 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 399 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 400 (2^30) * f =3D (2^30) * Beta * clean_bg_rx/P 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 401 factor =3D (2^30) * Beta * clean_bg_rx/P ----- (2) 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 402 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 403 We have chosen Beta =3D 0.25 by experiment, so: 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 404 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 405 factor =3D (2^30) * (2^-2) * clean_bg_rx/P 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 406 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 407 (30 - 2 - log2(P)) 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 408 factor =3D clean_bg_rx 2 ----- (3) 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 409 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 410 To avoid a divide we approximate log2(P) as top_bit(P), 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 411 which returns the position of the highest non-zero bit in 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 412 P. This approximation introduces an error as large as a 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 413 factor of 2, but the algorithm seems to handle it OK. 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 414 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 415 Come to think of it a divide may not be a big deal on a 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 416 modern DSP, so its probably worth checking out the cycles 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 417 for a divide versus a top_bit() implementation. 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 418 */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 419 = 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 420 p =3D MIN_TX_POWER_FOR_ADAPTION + ec->pstates; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 421 logp =3D top_bit(p) + ec->log2taps; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 422 shift =3D 30 - 2 - logp; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 423 ec->shift =3D shift; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 424 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 425 lms_adapt_bg(ec, clean_bg, shift); 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 426 } 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 427 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 428 /* very simple DTD to make sure we dont try and adapt with strong 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 429 near end speech */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 430 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 431 ec->adapt =3D 0; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 432 if ((ec->lrx > MIN_RX_POWER_FOR_ADAPTION) && (ec->lrx > ec->ltx)) 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 433 ec->nonupdate_dwell =3D DTD_HANGOVER; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 434 if (ec->nonupdate_dwell) 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 435 ec->nonupdate_dwell--; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 436 = 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 437 /* Transfer logic */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 438 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 439 /* These conditions are from the dual path paper [1], I messed with 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 440 them a bit to improve performance. */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 441 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 442 if ((ec->adaption_mode & ECHO_CAN_USE_ADAPTION) && 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 443 (ec->nonupdate_dwell =3D=3D 0) && dc57a3ea80a85a drivers/staging/echo/echo.c Alexander Beregalov 2009-03-12 = 444 /* (ec->Lclean_bg < 0.875*ec->Lclean) */ 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 445 (8 * ec->lclean_bg < 7 * ec->lclean) && dc57a3ea80a85a drivers/staging/echo/echo.c Alexander Beregalov 2009-03-12 = 446 /* (ec->Lclean_bg < 0.125*ec->Ltx) */ 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 447 (8 * ec->lclean_bg < ec->ltx)) { 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 448 if (ec->cond_met =3D=3D 6) { 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 449 /* 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 450 * BG filter has had better results for 6 consecutive 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 451 * samples 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 452 */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 453 ec->adapt =3D 1; 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 454 memcpy(ec->fir_taps16[0], ec->fir_taps16[1], 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 455 ec->taps * sizeof(int16_t)); 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 456 } else 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 457 ec->cond_met++; 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 458 } else 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 459 ec->cond_met =3D 0; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 460 = 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 461 /* Non-Linear Processing */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 462 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 463 ec->clean_nlp =3D ec->clean; 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 464 if (ec->adaption_mode & ECHO_CAN_USE_NLP) { 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 465 /* 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 466 * Non-linear processor - a fancy way to say "zap small 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 467 * signals, to avoid residual echo due to (uLaw/ALaw) 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 468 * non-linearity in the channel.". 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 469 */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 470 = 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 471 if ((16 * ec->lclean < ec->ltx)) { 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 472 /* 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 473 * Our e/c has improved echo by at least 24 dB (each 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 474 * factor of 2 is 6dB, so 2*2*2*2=3D16 is the same as 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 475 * 6+6+6+6=3D24dB) 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 476 */ 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 477 if (ec->adaption_mode & ECHO_CAN_USE_CNG) { 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 478 ec->cng_level =3D ec->lbgn; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 479 = 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 480 /* 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 481 * Very elementary comfort noise generation. 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 482 * Just random numbers rolled off very vaguely 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 483 * Hoth-like. DR: This noise doesn't sound 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 484 * quite right to me - I suspect there are some 83aa3c7bf3f04a drivers/staging/echo/echo.c Jonathan Neusch=C3=A4fer 2011-03= -01 485 * overflow issues in the filtering as it's too 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 486 * "crackly". 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 487 * TODO: debug this, maybe just play noise at 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 488 * high level or look at spectrum. 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 489 */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 490 = 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 491 ec->cng_rndnum =3D 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 492 1664525U * ec->cng_rndnum + 1013904223U; 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 493 ec->cng_filter =3D 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 494 ((ec->cng_rndnum & 0xFFFF) - 32768 + 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 495 5 * ec->cng_filter) >> 3; 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 496 ec->clean_nlp =3D 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 497 (ec->cng_filter * ec->cng_level * 8) >> 14; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 498 = 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 499 } else if (ec->adaption_mode & ECHO_CAN_USE_CLIP) { 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 500 /* This sounds much better than CNG */ 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 501 if (ec->clean_nlp > ec->lbgn) 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 502 ec->clean_nlp =3D ec->lbgn; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 503 if (ec->clean_nlp < -ec->lbgn) 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 504 ec->clean_nlp =3D -ec->lbgn; 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 505 } else { 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 506 /* 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 507 * just mute the residual, doesn't sound very 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 508 * good, used mainly in G168 tests 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 509 */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 510 ec->clean_nlp =3D 0; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 511 } 4460a860f72898 drivers/staging/echo/echo.c J.R. Mauro 2008-10-20 = 512 } else { 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 513 /* 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 514 * Background noise estimator. I tried a few 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 515 * algorithms here without much luck. This very simple 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 516 * one seems to work best, we just average the level 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 517 * using a slow (1 sec time const) filter if the 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 518 * current level is less than a (experimentally 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 519 * derived) constant. This means we dont include high 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 520 * level signals like near end speech. When combined 49bb9e6d753469 drivers/staging/echo/echo.c Greg Kroah-Hartman 2009-08-10 = 521 * with CNG or especially CLIP seems to work OK. 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 522 */ 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 523 if (ec->lclean < 40) { 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 524 ec->lbgn_acc +=3D abs(ec->clean) - ec->lbgn; 0c474826cfdd24 drivers/staging/echo/echo.c Lisa Nguyen 2013-05-05 = 525 ec->lbgn =3D (ec->lbgn_acc + (1 << 11)) >> 12; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 526 } 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 527 } 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 528 } 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 529 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 530 /* Roll around the taps buffer */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 531 if (ec->curr_pos <=3D 0) 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 532 ec->curr_pos =3D ec->taps; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 533 ec->curr_pos--; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 534 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 535 if (ec->adaption_mode & ECHO_CAN_DISABLE) 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 536 ec->clean_nlp =3D rx; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 537 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 538 /* Output scaled back up again to match input scaling */ 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 539 = 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 540 return (int16_t) ec->clean_nlp << 1; 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 541 } 9d8f2d5dfbcc9d drivers/staging/echo/echo.c Tzafrir Cohen 2008-10-12 = 542 EXPORT_SYMBOL_GPL(oslec_update); 10602db812fa27 drivers/staging/echo/echo.c David Rowe 2008-10-06 = 543 = :::::: The code@line 384 was first introduced by commit :::::: 10602db812fa270fc923f5e48fb47202288828f3 Staging: add echo cancelati= on module :::::: TO: David Rowe :::::: CC: Greg Kroah-Hartman --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============4150958105622313301== Content-Type: application/gzip MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.gz" H4sICDooll4AAy5jb25maWcAjDxbd9s20u/9FTrpS/vQxHYcN9k9fgBJUEJFEgwA6uIXHtmWU+3a kj9ZbpN//80AvAAg6G1PTxLODAa3wdww0M8//Twhr6fD0+a0u9s8Pv6YfNvut8fNaXs/edg9bv89 Sfik4GpCE6beA3G2279+//D981V9dTm5fH/+5f35+eVkvj3ut4+T+LB/2H17hea7w/6nn3+C/38G 4NMzcDr+a3L3uNl/m/y1Pb4AenJ+/v7s/dnkl2+7078+fIA/n3bH4+H44fHxr6f6+Xj4z/buNHn4 eL+5uv19c/vp6svn29uz2y+39xdnn7/8fnF+/un+9u729u7Tl4eL33+FrmJepGxaT+O4XlAhGS+u z1ogwJis44wU0+sfHRA/O9rz8zP4r8Ux8bVecjHvqaOKZYliOa3pSpEoo7XkQvV4NROUJDUrUg5/ 1IpIbKyXYKrX9HHysj29PvcjjQSf06LmRS3zsmfECqZqWixqIqZ1xnKmrj9e4EI2o+Z5yaB3RaWa 7F4m+8MJGbetMx6TrJ3Tu3chcE0qxb2J1ZJkyqKfkQWt51QUNKunN8wano2JAHMRRmU3OQljVjdj LfgY4hIQ3QJYo7Ln7+P12N4iwBEGFtAe5bAJf5vjZYBhQlNSZaqecakKktPrd7/sD/vtr+/69nJJ ykBLuZYLVsb9qjQA/DtWWQ8vuWSrOv9a0YqGoYMmseBS1jnNuVjXRCkSz+wJV5JmLApOllSgCwKj 1VtGRDwzFNghybL2DMCBmry83r78eDltn6zTSgsqWKzPWyl4ZA3fRskZX1onBCAJzwkrXJhkeYio njEqcGDrMPOcKAELBYOFQ6K4CFMJKqlYEIUHKOcJdXtKuYhp0igBZmsZWRIhKRKF+SY0qqaptNUS j+eSV8CwXhIVzxJusdMLbJMkRJFw4wXJGGBpnRGp6ngdZ4HV1Rpt0W+Wh9b86IIWSr6JRGVGkhg6 epssh+0gyR9VkC7nsq5KHHIrNWr3BOYiJDiKxXNQnRQkw2JV8Hp2gyoy54UtzgAsoQ+esDgguaYV S+z10TCHBZvOUAj0igkZYFMKSvNSQdOC2i1b+IJnVaGIWAePVUP1Bt+YQ/N2ZeKy+qA2L/+dnGCJ Jpv9/eTltDm9TDZ3d4fX/Wm3/+atFTSoSax5GPnsel4woTw07klgJCivWmAcRq0dkQke4ZiCXgG8 GsfUi492/2gqpSJKhtdFMhuuJy/iaiJDMlGsa8D1PcMHmGvYems00qHQbTwQjsflY2xkxIoLSxuz ufnHEKJna4NnoBVAaK6fenuMTFNQbCxV1xdn/V6zQs3BGqfUozn/6CjaqpCNFxLPQPHoM+ZpCVmV Jbgosi6qnNQRAXcndnZMUy1JoQCpNJuqyElZqyyq06ySszGGMMbzi8+W1pkKXpXS3lSwLPE0uKFR Nm8aBCTMIMykev4pYaJ2Mb0/lILyIUWyZImaBTiCbI+1NPCSJWHJa/AiCfoJDTaFw3lDRYBvQhcs pm9xhjOHx2GcOQhu6q9yHZVDmDYilojzeN6hHPuADghYJDiKjrVHIQkvArobIyjwEYSHa6WYJYCw eyioCpPCpsTzkoNEoXIF62vpYCPa6K3qqdj8wGDBvicUdCPYbJqENp5mxLL4KHawJdq9FpZs6W+S AzdjNi0nWCSt79v1C6BxxxKQvlNp41Y3oVEmruOrvy+tDY5rXoLOZTcUnQwtElzkcJQdG+OTSfhH 2KN0vEACtgpWANwZy7wb/cKS8yvH84SGoEtjWmoXCNYspl6bMpblHIaYEYVjtNbeFllfH3s95eAr MxQtq/MpVTko5Xrgphgx6MG2fOB4G0xgJdIZ6Ixs4C0b425BtT72v+siZ7ZxsI4ezVIw1LYUj68K Ab8wrez5pJWiK+8TTpPFvuTO/Nm0IFlqibOegA3QjpcNkDPQzZYIMEv6SLJgkrbLZq0DNImIEMze ljmSrHM5hNTOJnVQPWE8lootqCMdw51FCdBxkz10bYVmRFrDgZZF7K04+NtfbWHQ2lFDA4IAnGiS 2NbGyDJ0X3eOb++NxOdnlwN/pMl/lNvjw+H4tNnfbSf0r+0e3DECjlmMDhm4sb2jMsLcjFMjYfr1 ItchSWDMi9y0Ni6hEVgnQUDApIt5SAFkJHLOSVaFozyZ8TEEiWD9xZS2ke04GRrHjEHwIeCw8Tys kBTNtZHCTAxLWaxDLPvE8ZRljt+idY+2GZbsXV1GzNIqK52icr5tnS+VqGKtyBIag/qzxJpXqqxU rbWsun63fXy4uvzt++er364u3zmCCNNvHMB3m+Pdn5gV+3CnU2AvTYasvt8+GIidiJmD2Wp9KetY Qgg+1zMb4vK88g5Bjn6aKNAnNVHV9cXntwjICpNIQYJWXlpGI3wcMmB3fjWIZiWpEzvr0yIcBWkB O11Q6810FG9LNltSCLyUP32ybk1OnSaWqy2WEsRpFc+mJAHXIZtywdQsH/IFbcMigdFx4voJnY7B iAgHuArhCLgmNUgl1ZY2QAEyCxOqyynIr/J0i6TKOHcm6hLUdtAouDwtSusmYCUwfp9VxXyEriRw GoNkZjwsoqIwqQswc5JFmT9kWcmSwi6PoHWQMKuglzJPwIIQEaTQi0syTQlBRE9yAyExysZHK1uo s0S68ViY0Xo0mFWFtR7GLh1lozlhGbTKHCOrdIrJkrIUTD4lIlvHmNWxzWKyBlcZ5KScrSXopKzO TUK31UpTE31loIfBTn6y3DXcfUlQMvBE4/bT2GSVtK0oj4e77cvL4Tg5/Xg2kfvDdnN6PW4tA9Gu l6Oq81DAhHoupURVghrn3lWBKaZ+WjymjB1TgRSrC1K6WREHnZc6fxXoecqzJGV2kCioAveEFXZu DI51Bk6t8rulKwXyhjLc+EWjIzAsslKGoxAkIXnP5624i3GZ1nnERtaxk5MmLQphZ1YJx882IQnP QXJTiBo6zRXKh67heII7Bd74tKJ2wgtWlGDSxXEsGpgR5fBMgzmZOTgDLf8+Ib3ImzORjmRV2u68 dE4omGtJ2xxDx+QPWJ8ZR1dFDyCcWYs4V+Zk9bmB+efgoPJShgUxR/8uHHOBjQ46Fp2eLyv3ROjt woinUeImu3Jlk2Tn4zglY5dfnJdobjxfA5OZCxcCtpXlVa4Vdgq6JVtfX13aBHrDIGrJpZNOaDJn GNTRjIbTBcAShNccFSt2bMBwPIbAGPxHUll+z6ykRhwsWKLjnG4oUwJiwDi4I+G0BthbAudmQNFK g7ZWEr1BsCQRnYK3cR5Ggm4Yohp/c4DoATCvDG06BvXu6usLsBpVnScOvAU6GkVQAX6giaWbezoU ZMyAhrIYen/diLwBYRIvo1MSr8eb+fvWgp19a4F4xSBnoHuHKFb8QWNv3mpGwY/NwLl2jJAVqTwd 9rvT4ehkjK0ApdG/VeFFtQMKQcrsLXyMOd4RDlqB8yWI3pM9+POrgU9PZQlG2z9t7QUGeExV5gUQ 7PO85womHY6Tub7pdUgLNCMN65mOBsYa2MoeD1tjlEzqZEj0JkmcoCMiIL8sxA9xn7R34bJImICd rKcROjuWsbdDYzg9sViXttMM6/tPEGAJtD8erbvD5vaAyh7oBcWwwHVtjaulvQXDkQTczA4dZm80 XGt/8Zot8yhQG9ZzlEVwZ1ZWe5bhMctag4y3XxW9Pvt+v93cn1n/2YtZ4kjM6WzcBnexLbyn3TFr CbEQl5h6EFXpihySoLpA05m3s+kJTXOX3FwvYtJ/aZmFXAlLG+MXupZMsRs6Cm9WvlvhsxEy3AtM x2g1OlCtevoksP0SfF/UBsRN0Wu0CfPdiUmQlKEFBoWSsyAczKmvRhuEWcbGocZlnNP1uE9oGim5 0mJU8zT9x6QhNytA55ZR0NQxlfAJAcBYcoXGGE4HcbOb+vzsbAx18eks5Gre1B/PzuzuDZcw7TXQ 2rULKxrKMWk4hrGh6NYgy0pM8cJ87bieGqVzOWvMT4Y9BUHkrE6qYEjThVxgMMBJPvt+3pzcPplO 9VU9ivlb7SHEnxbQ/sI5+G1k18gTBP9g6QMJtEUieYB7oy48i+PYE58EL4TDy5AnOocAuiKUowYp w0XMEjXMj+pEQga6usSru8AWYf4jZCMa7dDMfgZKKqv8uLqhkWUGcQ5G/KVqfH/jPRz+3h4n4D1s vm2ftvuTDmJJXLLJ4RlLv6xAtskrWGmuJtEQuDdrUXLOSp3WDe1tXsuMUudOBmB4FDU8HOzk9ZLM qS6NCPK0nJK8u0tz+CcLvHFJhtGZN65h60T3bso4wg29q5QWUgsVO9A4s2zG8qtxmEDRpCxmmAwe MaltUIsbZOEGX63Y6mMlwRDxeVV6zHLMxTWVPtiktHNvGtIkdM3YtMcnrXxmX0SEtHqtpsHg2fAq Y2GG44+0tN1CQ+tLhRkfeAupNKMZ60XQRc1BXwmWUDv/5XICndZU6ozxIf5SRESBI7L2oZVSbnGK Bi+g95C60ciUDBsokgSF3awsiPoYMx1/CgryI6U3tj7U9J11D+3WyrjIwUhZmbPxofZMyXQK3gga lLGhN8FMSNuZJUGtVZVTQRJ/eD4uIIlvjDFGAePhmw6zqByiaVDlo0NvFC3Em364acQ3Cnsypi19 Y6vjSiqOTqaa8TfIoql4Y/iCJhWqtxkRyRLdQl5k4TIlTQ7/Gq8A1GehpJZ2ceHN5anLERHB/pJS pcPz653NFZin8PaVaOl5CXLFXLdusH3w7+DZNnGAnxiR2ttrK7Em6XH7f6/b/d2Pycvd5tEJpdvj 5mZg9AGc8gWWXmJiR42gu1I2H4nnMwBui02x7VipQJAWV1jCPoX9lFATvKHVpST/vAkvEggci7CY BlsArim7XIRcPWet/td8R+cZIuxmN7Ix7VTseN7buf85cnD7pF3QN3nwxWhyf9z9Za6O7V7MMoWO YB+mlK0Gd0KdMo5bBuPZ9MZKvEkErhpNwNSbRKJgRbgyWvd5aVLHuauf9Jxe/twct/eW39itBbt/ 3LqnqDE6znIjTC93Bv5uUPs6VDktqlEWiobnYNYTyQbDj15f2rFPfgErMdme7t5bjxEAZLlwYEVM +saF5bn58Ch17bJdgqHJMHV8fubUaiN1XEQXZzCPrxVz7/1tKopeWFSN3AjgSGToagQxmq/0ex03 m9pieuGvhUJxyLActJu505LxxSjXUoQNhcYRGUym6S5JRJ0SodYi47b5+4qwu8P+dDw8PkKo059C I56b+y1mToFqa5FhnfLz8+F4sk8rLnsdg88BWkk/ARjdnI5qLIqBSaQK/hxLDyAB9tDefYz3tMKC itVg1sn2Zfdtv4QTqRcgPsA/ZDelbmHo/v75sNufHDHHjL1OvblS3EI7C+uhy1TfSoIW7di//L07 3f0ZXn5XvpbwP4PIStHwXLEgwRN3C5PkBFP/bi60iOwBxuAO9bnjMs5jRmyFbyAgzSSpYxYsbwQO MIQuco5/u9sc7ye3x939t60zozXex4S3LLn6/eJLeIafL86+jBQjwtwSNq6VsXQuGiq03X5z/DGh T6+PGy+UZ+TjhZNf70eBGMKrsGzrS+aPF6HFMYkWuyjAgPxvfQ1TXV2ajA4ocbtupnkT47c0N2oL vc289Msb2+vBqQ5x9dTT3fHpb5T9ZChuNAmplZSJXHvLOc2dLGdCs6wWkXXzmMRJRKz67yRnzMqK wKepZXQoahmTos5JPMMkEZZqYlYxJVkWEfcmlslYgtqM0vAWpMs6TptqySDBlPNpRrsJDcQC+p38 Qr+ftvuX3e3jtl8rhpVtD5u77a+WpnCSoAsSfCyBKCrtIieECLyFzmFBiRPLm2nP24UeYdc2XoLo l15RHOJjUsoKazY4SUbCCSTzH9aZhyjbb8fN5KGdttFI/dkwz9UWzi033plXILA3+rwMOLaPArF0 bHfa3mEFyG/32+ft/h5TaoNMmkmZupdwJtfqwrgpmKO9JLWQpmZQF9iWmV1nqoffNRywwojND4Dm XSlNXw5Q5aUxs4EN4qXyi28G1Th6GH0+qyr0cccS8BhTBIGrKHyXoVhRR/iCzhocVqKEmDMeurky uxdsMMopMB+bDb7qTEM10mlVmMsLKgQmUvSVrXN5pMmcAuP+ZZ3mOON87iFRycG3YtOKV4EqOgk7 o/1c80AtkEABDat0xt4UwQ8JIEZtksbBgZnXr6assl7OmNKFnx4fLBKTXQJe6ZJu3cJjCeG6rAmm grGEqtl+11gbOmnH1RrkJEk1ZLasIxjc3PNONC5nKxCvHi111x6RfucAclCJApQwrJJTBe1XCwe2 DrMq6PHqhxqmGsx72tEzCfTfFgSLZjnw2iS0B/3585cprpr8F2bdR5GsaF8MDrbfSKR5ltQUvPjr bqCmzmIEl/BqpLSwMfNox81zyfYFc4AW79d7+tBCNNdrTQ2mRzGoymv1a1O556Dbt3ytrzHS1msE Ms0Lf4HMBJgCW97soy4g8zcbTzFdKX3S52zAZeStnq/m3nqn52iTQt8CN8WdeF30T+nqsvJL5o2s YJHowvGGrI3hqcIQWPk6JOdJWyBAYywCt8JenlR4H4HqHh9XYEluYLp0xRQqXf0OWJHBYzjcW91c X1E7Nbv9+Jyiad8uYQdB9em26uuwA3ytIuoxJjZJgFWD1uT4nmIoP+W61cYq87FG8JpjPrQ6sLbM 3Px1xeiWN4C/EsCmzS3dx4GP3uCJZ846Jz9iprwstPAoMN229R5UBw1l1TvDpMDCqfYNvliu7HM5 ivKbGzELNg+huuYCHwGYd7nW9bSB6cc9o3lyU81CM4idmvtsWLcuUpzGfPHb7eZlez/5r3ld8nw8 POya3HLvuANZM7+31kiTtd7c8B4ZfzMDcyFOvkmgqwi6yBYx/YJH4rsUq6zEHFD/xJon8drZttem QVYFIsKVVjxptH84Vmk4SBF3v2eRjdRsNZQjRQgNGgVUUBkKUlrdo8BsDi5EI/fJLb4v1FGYoF/d ct/25WEkp0FgxqIhHJOOU8GUU1vRIrE8PBSQ6qe1TU2BtqPCZbyMlM8OQLUMvYtqkfnX4QjeKCzW y4Al0iXJBjFPuTmedhjXTNSPZzf9AcNVTDvG7V17aD9kwmVP6saOAbDeokFmAIeYf3Vzsw0Mzat+ D2d+s4JP5N2f2/vXR+f1FuOmCrzg3P7ZlgaagObVNfBPPiZOv1rhfXPJ4TJpoU2T63f7w+G5ezsE Axz08iOAnK8ju5KyBUd2/0QW51YoVugXFljyAe4JHs7x1+RYcA3eu8iXHgVaaP1jI4lmo8stxknE MkSgNXL7oq+OaIp/oe/r/uSGRWtKbJqYv6fo60tMAuP79u71tMHcBf6u0URXv56sTY1YkeYKXYSB 6Qqh4KMJu62yIRgq+ubdLqK/0bz8Dx0ww1bGgtkVmQ04ZzLudwt5N26/nk6+fTocf0zyvgRnWHnz VillX4eZk6IiIYzvobXVd1S66be+4HMFatI27z1qYfI2g5rQAcWwU0/LOuBal/E7zczDPFg7CLkC zZtZMMmHWUy3IiqwYU05lDJKBevOL72isdjP9PhF/GAc4oyw0IOFnE2F//RxttZ1XKJW3fPGXtGC hxGHbhbNsw5eR3YiYC7zoZbRe2J+kSUR15dnX7qXDhpTcJ1ewroGqzDUVQaDlzLuYgZe0MyWEGlL /ez8D+81Q0cTCjjG3BuTU1CzsnZzQM4Dubk1+zijxJSvWjD72SJ8+D+o0IGcH+rBCwRwtOX1744U WWFOcHY3Zbjc7yayQ6obaZ7/OvcNzasz2J3Se6zTc2/a6QqBNx7G6GdvbULM3iCdJ9IhXhuDvuVZ mpdqbe10XwLJl3opdL4k9PShLyfWP6wDrn79/4w9WXPbOJN/RTUPWzNVXzY6LFnaqn0gQVBCzMsE JdF5YXkcz8Q1TpyKne+b7K/fboAHADaoeciM1d04iKPR6AtxEuxtEyMvVbSKmxum+xJMhsEzdkiD krruFRXX98nAsvulylkGhoCqExPRJKZfc8Z7C332+Pafl+9/oVl+xG1h799wJ6ALIbAMAmr84MC1 3Jzx94h22A8J6ZkSm9kE8JcKeDWrVUA8PmnLDGL7UAVPC7DXwwbD+iwfeERojsVH7eF8CVnRA4yJ QG74nTXACCBriwqVyoST0y8ye8BFoVXbmISKIi8GL04V21M6hWMRwooX3LveugYK1KMqJ0mnBh0y pGkCOxnNmAwuL2FOBlYCSZGZkqX63UQHVjgNIljFGfiaQoIyKGk8jrwoPFn0NHKPIg1Pj7VnJqGJ 6phl3Mm9kcFxmN8ITl8RdMFTRfkaIO4YGbUa8Dg/jgBDD+zJQHTgmQHEcekZM9051zvfxLpdU0C9 IVAc0WeXFb7vUkxXEHLulkXG4IAqVnRgu/M4el5GoijK4HyBArEw76jHpI8wbB3+3E9d1noadgxN hV4nfXT4//3l4cfvTw+/2LWn0dq5t/er+rSxt8Fp025olE7pKA9FpMPJkTE1kUf3gF+/mVo4m8mV syGWjt2HVBQbz8LakAtjc3lpbS6src14cTm9HvBqINu4+5Hd0v4UegMrlBTVaIoA1mxKaqEodIZC uxLoq7vCDCBH5OirEGixgw5Ck06ybezbMUQVjy8DFtagBsb7vXy/aZLzmBUOWBBSqHiGgUDnSDKZ 5MiUaiIxOS0aOlD28fDRoiowx62UIIFZjFOVhcuFUsfCaZcWTkZAoNG2E1rFU0wggR9HjHkPJMk8 h1XpScIG80aNW1ClpmAMP+FTBcWzEZUESh9jkadFTrvbIDIsl5vtFYlOlhWZq7Uqhut6WIpoz93f jdinMAKo8RkbZBTblYEzCwgie3GCT2q28+WCUt1FnGXmGaJ/D1JP9yWJdbmAn7QnUQAiMe1TWC/X RPNJUISG19QhdwS1DVwOioDML8k5x49aG+G9A6zJkvYPlUJMoB+QqbowKLXUaFxHA9bW+8UeX6UZ o4aQWWmSogyv7jLHFMqUKgfWTKA0l2b9A7T78zRZtglNy5YBjyzt5QDPrDgCA5G6MjBFRISz9GR5 wbOTdq6jNAytUD5McgfRIskAVupUit5GdG7u9uQkIrvxCyppQV6KdKLBw9DUwc6moCZdfRhcWj3l kxVme0GBAmjcwhkjnWTbbIuK75bCuoQZKM2OqQWnNmiNSpu7xs7xFt5aRwpmS/tAhl+oPGpwjgXp oPw3L66zt8fXN8d+pPp7UznpXm0WVOYgjuWZcAJzBo1OkJaB42rYfXqQGUpMWHgge1oe8wAKGaUO Q8z+3PmFwq9Z9PjvpwfTO8+gPI0aOtUjkEw0yGrdWQUODg0dWrlBanArg8VjxjUemQYXmNAYF7bF EzpgU3m0Q1hR5nEBBtxBRNTxgxhLrgEAGRyr4JFLKnkSu35vJn6KV4SYrV4b+/TyZiiXHNF25aVX TjFONKb2P33+8fj28vL2efZJT/cnd7qhuE6XYQ09S63fZWXjD0yE1VGGzlR0YB0/qg3bnsHtKLGl nxSiNPNqdggJ28LtyBGDmglYc7hyK1DgkMmCRATVYXXjTGSHGyWyIIrvN3XtKZ6WJ39pGILlfFUT Y1kEizmlKmjRMTkDUZUsJgZ9xUYzmRx565ntVHU6MDo4IJz6JD2OpngYAysuC9qpHJA3JMdyWW8L RrVSaRvIz6LkieXQyOI9yieL4VO1rLNQ3qipk6+ko0bWxJMcldznoMT8aJ5Exh094+jk16ZYbPKM 9I3vqdGQDT1VSUZRacb3UTjusrLpdR4WSKLSMni6q2/+xYVu+gNthy8po4CKK+4JzrymzshWEDQG uoNobw42khlhHBgaSXB6k2lsc7D6QpKcDlPdQtLeOjPZZhfs/cuXp6+vb98fn5vPb78QbcMFj9Zm 9BR4HEx1aWT3MOuWnZ3AuUHapVXc1VQbcAnF8cfEjrXOqDgfNgtmm/xi/Wxr1elxeiepMr4RpuCk f1vh/S2oPQFtoMgKOw9EC98XpGiDotHOsjfh78GDwJKhdoU3cwALRGzKKSIeGZ8QBrWgMGpJLwLd QukMI4wXh8Z5waPrT2xd++AnCNl7UQUeXQPgM0bqagEDDNetTB6ihI0O9uzx/vssfnp8xny4X778 +Pr0oAJMZr9Cmd/a09445rGmIluvVgZL7ECNPkdGYLG0rWUygEsCHZ6q1LwxJSAZahwHYqexjjDZ pm1FBDkfBt7Km6wEaH7Cq4zJcu4U1xwQfb/QYJrTl0zthdiK/51oPxKKh9iCp4cWPMtda9VRRwIc eGL5TFhgzP5zMJKhQ2ertDD5QAeBy4HjANdj0GGYPCqDLAqS8TsZqv0+rEa9ujBaSX3syfPL/Scz CCM+t6EdQxfRJyHoKzS+pqfVjtXuSJBoM/Km40aByrtxMh00OjkhQRsojXOgxripC0cpTh7tWn8j KT3KSk2AQkNbDZzJae4J61ZkgXK3aYlV8MKE0Vh5HoOs7HmqB9GnY4JJYEORiEqYUg8IB5arhv6t Nq0LOxvncwtKUzNPeVfWfFQHYyBUZtoIX82IbfseImMVXam8WimND4ZQKDeAdmP9cf/j+U2FIT79 +ePlx+vsi3a6gaV3P3t9+r/H/zHuoNg25t5HkzWqpfZ4gg3cuENLzGMV3lXkddKiMir66atI0Jd2 myigBHLlutDH0m2HYOYRH5YCeShmQLD8SeB/mXaCN5jXPqO9KCvDng4/2jy0X0wQzJrKr4hOfNKm 7lA6dBq9SrRTz7uFtwIVOqRcau0XP8aE6Cft5rowiA1nStVjq6Y81nBavKrQo/16TOE4Qn67//5q cO4j/JilL+hyqJPHV9/vv77qWMxZcv/TugpjG2FyA+zAGTLH6ymuLA1SBr89JiwfpoyjxsF160Ni /u1+LmWqWnNHKi88C2Pw2oRtq5Vu3Q4sg/R9mafv4+f718+zh89P36hAYDVLMSWeIOYDjzhzmBXC gWG5z421FSnVaF50vthuO02Wex5r6whCzJ6Inidn262mwycGfqKaPc/RS+XO7qD2+s9uGvXaTbOY xC7d5h08bd8gCLeefrq92Ux2ZzXqD36noO7+PZIu4u+4Qvu6m1fFeLqVokQnkhzVFKQg5Hmc1FsS kGSox4E69LESicPNgtTdHSWZwFgxkFA5W7ZK0PT+2zcjJwj6sOptcf+AGcVtvoBmaPiuzlXMYRDo WYiHsdOTFtw6vno/vCPLY0+/ZciafV271cN4Xm9q/+cKdkCsW4zLcOkUsufhZju/cqu1KCQLl+he 5rsKAwkI6m+Pz56OJVdX833tLpHCo2zSOMwM4EXjnVJ5XXopdNKRE0agUZcB1UYSVHo5mV3FVHPa obPlo/Lx+Y93KMbcP319/DQDorFu1e57ytZr37aUCbGCiwMAfUyiitxOYlLUKq8wwyNe9S3HU40F AVK2TysshoCq/mhbapFCC2pPr3+9y7++Y7gTRtchq5tRzvYrH3PIeBZkI2mhBXf5LM+lqGhZ2iQm 8m8QVJodkRUsazyd9v5BVVScMXvuOyicwsze75nOVOTShuzgqSG0nwPtcRHHoOzJpW/SRX4mokeq 8GSo6ClgHHPKBjm0JORNnrGDGHEzB60P/MnwkolCEYYImTI9RRyG1WiFjMhhEV6RXWX0ZbnH43/w iVOqLPWKglr+SYFc5r/0/5cz4EvdPWZkWVHsA8nsNXGrnjTW0pLTtMRccB6rIOKP5FMLkZnXMre8 XkCkPmai8rxtDFhg4lVlBTED8CYPP1iANsLcgnVTaMKs+2MeN5bXRB53Jn8LhtqZ8YMxRmJMHcNs u2l1gC8OAIgtjVULlcA+AkraHoo1sYjzUQOIkEf11KmlWRmw44PJoQnq7fZ6t6G6BayYeuC4Q2e5 +p6hT6YTq/JgbXXBSms85MT5/vL28vDybHpTZ4Wdn7QNfBsBmuyYJPjDsgU5uKaNqepSLVBWoLZI bHBJFjmyCHyniGju35XH7EpS4qEnitWyrknijw5fH9USBWy3oXM8dSTHlFNnQ4dOrKgyE6riPXTE 6tbFqxTwuSpLDGdUhr6YQzXaYUSVkje0AN3ja/otkA5Pn4FqbtBxgUUnd8o6cKsFwijqQTViEZyV /paoHl8jw33e8Mo4IFunFWe1DVAV/jn9MeH0YJSyHmflyk4pN5LrtEUQ6mR+6WfilFpKI0U67ZWu SGLa4KlwVVDu+TgtTvr0+jDWGQXRermum6iwngcYgK3Ob1DOHdP0DpkxrZUI0yaQ9I4pDkFWeQR/ ucdEcoy+LFYiTtXwEbMvmNytlvJqvjDnmWcsySU+o4RpHV2PkMEZpmhEQibyLSK5286XgWkeEDJZ 7ubzlQtZWsnc4RIo81I2FeDWZAL4jiI8LK6v52a3O4xqfjenOdIhZZvVmkrRFcnFZmvk50JPB+0+ 1cQy2F1t5wNOopzvZPLr8795jvQ2TkzlqtTZAYbNvLTPUP0bFgs0E5TNcrGedzdjzgu8/r26m0TD YTsvDdeKFug+69CC06DebK/XI/huxerNCCqiqtnuDgWX1mWXhdeL+Wh5tYmk/r5/nQm02f74op6I bFNgvqGiD7s/e4Z72uwT7Kynb/ineYupUONAr/Z2nhMhlSGM9l1At90AR7vwaQD1Sws0G+ux8O8C QVXTFCdt2TmlRNJFzCX2PAO5DcTV74/P928wKq92+sGBBJXVUZeFy+2Ael5wrHWVTMSegogiy5zy wlMEMGSJoY+Hl9e3oaCDZJgH0Eaq/nnpX771L8fJNxgcM/r3V5bL9DfXDIh9H/cbbqfnW4rvcXbI LQkfPfJLfO7Ce93rKRw7dMdXVHYWM3Bb/9By3/Pj/esjkMN9/eVBbQal5n7/9OkR//33299vSsf1 +fH52/unr3+8zF6+zlACUzcXMyA/4k0NR31jB4kjGAMZLO0XAuF4L6wU1H3SBUDKwJOGEZH7KQkI CJgkJSee3IgpsRNLGmKMBe4CxXTCMDk+7oEKvod7vkc9y0CccTg2mH8LTkjbOqCy4OMjOzGxtGHw UeMIgG5nvv/9x59/PP1tJ3NQQzWRhLQXl4lbqyuTptHmak59nMbACXMY3eepgYA7xdgMA+va+CYy gWtXxT/5HrQbbJaLSZryo/swy4gk4Gzjuzz0NIlYrOvVNE0aXV9dqqcSovZ4m5oDPV1LVYo44dM0 h6JabTaTJB/UK1q0VbNfM9Df6bmutotrOpLBIFkupsdOkUw3lMnt9dViPd3biC3nMJeYHemfEWb8 PH1hOp1vPI64HYUQqRMwT9DI9frCEMiE7eb8wpRVZQry6iTJSQTbJasvLMSKbTdsPl+MNqm6VbUa 65GEpzLuANs3XAMCEams+oaFGakMORXLWA8V61r6zPMOouWGvT4d+9N2RL/h+isIa3/9a/Z2/+3x XzMWvQPJ8DeKhUhP4vtDqdHk044tMpcqS/K4Tlr71tdJupx1SFvJqz4W/kbvHDIAWhEk+X7vOPsp uMpVG7jP9gwjVnXy7asze6hE7ObLrjJmGkELvCrjrfrviMiqHl8HUdX/HMETEcpg3K4uQinJerTK sy1Nnx6NKguysSQ/d2/5DYekwlSMDDRWOOWn0KUFdqap3ocrTeYfHSS6ukQUZvVygibkywlkuwhX 5wa2d632nr+lQ+EJZlNYqGPn4xEdAYy8Hx+gT/gEOmDT3QsEu57sABLsLhDsfOetZjGnyS9IT0fP SzmaZRWoOaHtJbp9NG1Iz5t4mqJkqYdjKDyH/i09+ny4LyveCgeUL1yopxm/eDqmmR4KEBYuESwn CWQalFVxSwm/Cn+M5YFFo42lwe6Nh6JoZVf7lEFsE50Z7GuTYtQGHionIX0B1u1+qUROi2Z65x4l MGOPSNpetIvT9O6Xmad8e0jWq8VuMbFp9pFHo9ix54m2hScOQCPxmcqJtQ74YEE+cKjP7CJwJkak 7lSJj6JoeFGYfisDQqL7JqvK8UFXeQRdjb1L1yu2BWZIi6Dtl0/swVs1qWhsocWqlii4xNgjttqt /57gBdjR3TWtH1UU5+h6saPcB3X97kt3euDTC2y2SLeOlGfjtT7dj++OUr8lS/fu4Ap8h6aMzDfa OqjKHDX6DkDwdGprHOAKdvQ2n8tIL+HAThTc4Y5J5KxGhEZFibpS1OXxIePWgLbjAkBEMbuNRgtL V+AxbLSWteFzEPixyCPPpCG6SMeXZ2Y8fPKfp7fPgP36Tsbx7Ov929O/H2dP3dMAlp5N9eBAc9cO R/BWBWb8ZAjtCnSbl+J29DUw8mwBV2j/BylhYdQRm0aKZEnZOxUujvv7AHzygzsWDz9e316+zOCW QY8DXPfguE498hC2cCt98ba6czW9cREXpk7NWtkh8ncvX59/uh22s3BWQadY8Sn9FE3qvYYrtL4a e56pUda1gsweonDEOysKTCiLbIqxasWKhvjj/vn59/uHv2bvZ8+Pf94//CQflsGKpsQXMtWNso5p c1y/ZCuWNkJ74lowzMErLEUrQguXmRs4jEFYDpWggRbDENpmjUSf+kbRQfv646MraGhtHud8tljt rma/xk/fH8/w7zdKAxaLkmPIIjkeHRIdYz0jhsFhVY7v/aogA0/UfhtmbYfOuDk2wzyLfInvlBWR xPBb9Q6HJ6ZCZZLymD4x0RL3WOvhuzALBy191T4MqhE94Rh7MrEINCO5ZS6FXsFfMifju6ujFeIO P5uTGskyl5IOCT9pK/fQeW3RzjhtacqSlPShwFZOpeXOA9cNp5aeS6XdarCPsHRiGhFbeVLLtFle As9DoxW+R+/H4SLW4bteko/wHy8Sjht8q9qLF1F1fb1c+9KrpCCLhYGUQeTh+EhygJPuo+8NS2zD n80Gk+gu53N61am6/ShYZvnYEICxh4bFknqlEKMTfTkOFFKqV3u9T04iycEj3yrkWFDs/EHfvj/9 /gOth1I/JRYYT+yM3d44vipreX6plcwzmI1mxXLHpq1e/FqxtUdwHgi29JNdp7z0XSCqu+KQ+/eW 7lEQBUVlM4QWpN5LjwXp02BWsOc2U+XVYrXwZfjrCiUBQ89GR2OYCJaTMT9W0Yq7Dx5z37WztVBX ZGJEs9I0+GimyrVQlhcv/NwuFgucZs+EQdkVvTXbycxS5mPn+GZcvSdj5swuwQGUwV3A6tetxxfN LGfGo5twXLK5wzoTH3tJ6NsWInz7Pln4pufSOjnCxcP+TgVpsnC7Ja/rRuGwzIPI2XDhFb3PQpbi UerJWJLV9GAw37qrxD7PPOYQqMxzk1BvnaNXiq8gdfbZH8yc56jDjLpTGmXaVyIt7+yAkYHeZqGT OFrjWh2OGca3woA0BZ000SQ5XSYJ9x6uZtCUezIaUfUO89WZPUzE7dF9wZD4sgNPpJNvSYOail73 PZqe7h5Nr7sBfaKiX8yegThu9ctlekQRfIQrs7bPnqdwm+0PKbpPdcOZJ14nogUwo9FoJF2C1Ejn 0jNLqch104kvWdJJ4iRMf0CnKjfqw4cluZ2Ohi8v9p1/VI7/5iArSJMVElPbw1mHEa6NyynGNcXH D6KSR+Ksj9PTh8X2At87WJ04FLRq0ixwDM7mG+kGSmyX67qmUSrzkfm5dEMInrt0HgFQ7OkUEgD3 7HpR+4q4R+GAufK0/iG9sDDSoDzxxM7gfUp9L5vKG4/hW97cUf6NZkPQSpDldphXUl81PmNHUq9H Pn4mVp4n0fH5Qn8EK+3JvpHb7XoBZWnnvRv5cbu9Gnlr0TXnkqf08kvvSks/iL8Xc8+wxjxIsgt7 IwuqtrGByWgQfb+U29V2eWH7wJ8Y5GCJlXLpWRSnmnw+wK6uzLPcfL3CxNIDtV3t5gS/CGrvzZkv b/xqNV268NyYze6c4Fi0DgmVfS1yJNxxwfzGmgSgzy8cSG0Se57tRWbnzT0E6l1a8lPuOOa+iEmX N6NybegwK71NgpXPBHubeIW328SzOqGxmmeNtxwZBWb28BgkKoOf2UcAwGkV0FWW6cXpKyPrm8vN /OrCYi85Xous0zbwpNHdLlY7j4oEUVVO75Byu9jsLnUiQ+swuRNKTONZkigZpCAA2HYiPCXc+xhR kpuPe5qIPIF7LvyzhGDp0eEBHBO3sEt3LSmA+9tmoN1yvqLiYK1S1q6AnzuPcx+gFrsLEy1TyQiO IlO2WzDPO9+8EMz3IjzWt1t43NgU8uoSo5U5w+QMNa0ekZU6S6whqFLYHP9geo+ZzU+K4i7lniRU uIQ4rX9jmHLSo9vLBJV1zOzEXZYX0k5Xh9b7OtnT+bqNshU/HCuLoWrIhVJ2CdGwAuSEwJOmqkrI PMlGfSf7JICfTYnPhdMHoUATYQJTWlEZT4xqz+Kjk7VZQ5rz2rfYeoLVJdm3FiWtVkPE0uMVEEcR Pckg7hee6cdcv6HX3RaFyDa7K30iH+6cDGoDKvl/yq6k221bSf8VL7sX6XAQp0UWFElJtEiRJqnh esNzE7tffNqOcxy/13n/vlEAB4D8inIvrn1UX2EGgSqgUMWEzahrxmADK1T0nEb52F2dhRMklDq8 qBF4FgoEc6ZFcJ0d4/aK+3LwVxraHu6ZGcdrDuFiZgYhs1cTLv44OYjgU4t3IsLy+oSXj/tiiR4d afZ36MKQ2Odj03K5haZl6NhofTfSdSdz3z2tPfnpqIeVYImwsp9AIzZddO5PzDRI4qaI7AAPokjq n/FyGjee5+Djj3te+A5zcytytC1cz3tycf0HUgTMzixNjUYSmLICP/Es7mWJnis+NmQO83buxuXu nszjONGOwAPeFfTarI594rzBU52AHgZJ0vNbqfx5fXe4NZgwh8PuxS7ysbm6wNxox2L3HHpYWlaz aXOjpmQkG+P18JQ1JfOCsvZ2gz94DDd5W3rILkOvDjg1EGt51nSMyeAI9hSfm/wF4h2DOoK5vCnv RYgicRi1yoTitliGSjHRLfuK8xTY39YG5nDOSAhDso9emyZenuE1nfOAm7eRbK2NyL2CMVdTWAAy FQitYKlh3SzZI4fZkge03USZN/qEBo4bb6LM8ZVqRJhtlruBio1mo1xqLx5kQoVC/HQkW0OqFD/7 CN7o6Yla03Hy3XaeDr0pvN4L2/HwGTtBjGwgIE5suBfMi2y9Du9f0nglKL1PRe1xVQiy7QYdtunZ yhu67GIevr/rLrTiC1lKbLTSucPW0U0TvyTMkqYYxCLrMbWcvVDf2xwvPqOs2FCoJFl3brkOkBXU /RO5giQjn88f//rrzf7b19cPv77+8UF7vq8JAeRkOXd2llWyLobvT0K4IKFWQw/xOSuYY+SZK+64 4jUmvs9uJR3GYVFgOPHv+Sh15FiRyVgaDQFfvXP12hRqbjdDTBE/+3pvRtcZ3v3++c/v7Kunlatq SeA8eSvwcKDH9tLt/BcToXAjyre0QVbBec/KTZyBlHHX5I+z8uY6ua38TJNpMnb8a1FbchLcZqCY kU7umq/arccCbZMmyy794xfbcnbbPC+/BH5osrytXkDR2c3wKTMSycj2y7Jvz9kLhT7GCs3EIuSW /dokRQ0mF79kSryvKKjBVJ2RIhSV2vPCkEWiuV0z0p33KK93nW0Fxqm1Bjk243Vm4kmHmDyNH6LI TxNfcT6b7mAmhPX4ZXDIOQlPZye2Lon9nW66ryPhzg5h8Wrqbla9DF3HBdkSoLsj1/J8BK4X4fJw lNkJrhuxO4HCLtm9MwMiTRDFZqJ9Ei9bE9tw8LpV+rEq0kPennrpd7uFpbVddY/vMToumnmuFzzb KrFE7ECPdYkrpu0DjV3p9F11TU4UIxYkFDqM5Vog4aNTM25Jp5uuPksQEte2bTqpnLBFTCIwrp3Q 5sktA7fcykXJkPOJIBY5fKKi0LXfrwVDXNdFJvsHFKxYRNW9KNB6XZGTl7jWjOcVMSMBaOGMx0SW rkQwU1sazqEVemuF5BrH67yZgApDF7xc4ppiBw/e/BmQIgAsFm6xxlNsT0MxGWl9fImLCh/azDwu fgExM6RIC57gpNqbpk8Tcjw4SDWc8SbXXpIa5N70ED9j11yskGWFN6SJTarlcYKupCaeNk+ze042 OnN/T2BXpgmoWi6vHAG/AszxWYKO6wDwHjdNXqE60Gt2upsHkBBSkqxqUGES2sdFgZJ1+eWI23vP U/EDIO9P2eV0jUFJ6T4C/Me4zJIKVbq7Nnvy7nl4ADBuhY5gg1JIhqF4AeskjzpOGXJ/OICsJLIM Azah9aPBJ2DqO5MxVLfkILk+KVlsg4t8x6BDgTLfLfyaSdIitoekiWWHy+Gg+9QaKXJ9rRZ0Jx18 Jy359UEYKM6S4hqi1EBDZ1MK8rxRYD69fvsgg1jkP1dvlq/izVoC/5ILDvmzz0Nr5yyJ4l/Ti5Yi J13oJIFtLelC5F8IbgM9yRc7lwEX+V7Axi2gpDcxUrsVNlj6wnSCSP7q8E2KSt0ky73UxGtZo1VD lHAJE15Vr07fEX2/y/BSI62/tELwBplMDIXh43UiZ+XVts74DGBiOpQh8IOR/P767fU3oV6tHe51 3YtxCYiW++slf0RhX3fmbac6DZdkpjPjor8opxCp0k/m+S6jd7L2r8lLUsQpI6eW1SNWZ9sF5wKY OOQrbs7W6+WSkD6yCTLBuEe4PzKmOtX7irFPyplHCZd+GfhIg44tcnIkY5GMcXm/mNTWCBk0iepq qAG1pzOqF+m/oyq01bOQgbUpaAtFtDEuurMb9iIqgLNAfpkciH/79Pp5/XBimByy3EQ3xh+A0PEs SBQF1E0mo3NooRYAn/Iga3zCI3SguYOEKp1p1RlG5kmOgewRN1yxUJ3TGS5Nf5XBQnYIba4XcnK4 xZI9ukzIYimuWxlfKD6sESRFx+O2zkSv3swgkzqHDJFjej42h6bLkm7AYRc0LXz1rOdxx0U3nROG D1xuUbdMk8o85apCSwRfF4rPMj8kVr5Uv/7xE6UU3HJOy9dLa6dCKj31YZF36+kzAuz8mhim2WAv OEwJRyNqeS6b/JZxgjrAbZJcHsjIYMJtP2+DxwMXPsE8YsZqGtBhH3/bxUc56Z7gG+1jOPv9Sx3D R0ZmOjjlNYzOadSXs/zudKZ9fE0bsTL9YtueY1kLzkcuNo2HECCY0hrQP0JS4eYJYWKKqFrZqw5p ak7AEeChLcRHA6uRkMGWjEyWH/NErPvNUhASTHRgumfsQ2g7ka4I0AIrAX2/Kmo0qHWNA2yfbmO0 sbk7hhenYy7zMW1d5kLovaSFXp6kpvQn9Cvz9YyE6piemsgzLXQ8I1NLqx+lHR/iZFlkmy8JrR6k UZLuFGgjrY4Lcl3ds6Y6aNynu5CDL2mlhaGcSNLlrZA61W67Qse7/xWg3rityMoYDJBXMSlvnA9y OmESc2YdSGBwt/EbL4VOMpXpBZOueCnm/I6zw5oZoCGs0CSdnXFMl9ej4Q86RrrHN2NOCCVkK6Te qYYGu2LWHZNTRto6DdHcrV0i/mrDqY82nDUU8yhJ3q78A0jqiiBP1JSljOEjYAbJQuGSQYNWne1y vVWdfgBB4KVNTMJYkkZKGl1wGylLFZzoqCYGQ9IgFZ2Qm+gr8oL0eFlmOqwGt+3ObDvXfV87u3X/ jYh5gii+pMQMiyYWgaV+J9b34oVbFccxbq4U+rNmbux1JnLgpuJIru+EnATc6+n7K/lpkeNYCWH5 mOsCNlHlOTSF5jDWPyfZCt4kYSH/cUHvCS+v+HKesCEOJikTaGXVToKnNsaf//H126fvv3/5y2im 2HOP1T7vzDYRsU70lXYixqMIR5lOpyfkmXnhIrpO3ohKCPrv5H159nOCHqmr7HPbcxnTpxH38RXy hDOOWCVepoGHfWgOMD1PZvE8ZCwGJNgm2ABUgSU/C8h9C37gKFcOeU6LbyrkKJP30IjvM4H7LmOF puDI52fZjXFlMGB1s75hlV6OmQFuE1ORnz+/f//1/eOXN79S2MshpNp/fBGT5vO/33z88uvHDx8+ fnjz88D1k1AcyEvwfy5zT8R85240CE8zCp8ufbGZYvcCnDSVxdessfDOEpZ5MWamxJaV2Y0fWPZ2 lsBzVtYFupOVi5S8klzWXny32357iKk5u+hGVs2UstMv74imZPDJ9f/fQhb5Q6hyAvpZffivH17/ /M5/8Gle0b3VFV5sSYbiYpwcyoaoGDdMijECTkGntOYQN9W+6g7X9+/7imRIA+tiupu8lQtqfnkZ 7k9k1avvv4vGzM3T5qu5pJbFI6mLdFn14Qa0V0Gs2VE4MMdachi6K2OEQ+CTaUkxf9h3kDMLLfNP WLiNuYUuzlshjmtSeGv+MPZPdSQvOsB0izWTP3+iUA1zd1MGtJFqAZ3q1tR+2rWduNqf6nbMby0A UDIhQ9OT5bOSO78ASB7pzZNGQ9ZxpmaMvu2xrVSJf5BbrNfvX7+tt9CuFlX8+tv/IG9QAuxtLwx7 KU2tmpf98frr549vhrcTZBJ0ybp71ZzpOYWUpdsuLikk5ZvvX9+Q838xvcUn+0GGwxXfsSz4r/8y iswvSdegeFjUJlGOdiKqCP0hbjuKdiM+yVJIGZ7tjBzVYewJLUlvhpsac8mbd8v35WomMgu+zEo5 7B06ulSx1r68/vmn2E1kMrAsyXTkql2GucaXA/V0Z7KBl2mN93wJp/e4xt+xhOnck0cPHf1nMU8D JMsYBnxzxVecDbvTSPxU3PFdvERzRuqRYPFyeciQMzxLuQ/9NkB7joLFvL4agz6Oa8JoOhK/PUIP i0QSVtvWejkQn9dPw/Sgu8DNKXII7DDEgpPqmM40tF40YKvbBOhyLwUlwz2/kPe1DYbW9pNduGoh iVqyVR///lOsB6hdg4XbxsROL/geRw0YGWAxhwszA+PERd0IJnHkuZsMh9ALNhi6Ok+c0F7b3ZaH 9Fnz92nkBXZ5x0qZ+nSFTMKja8ls8U3UbsQ8iBnwMNhqPeEe83REMjSJ13nhRgmDxddW/7W+Z4VY UZo5QkZvUBzKOmyTYfnaejGHy9D11mNIAvWzKbyhx6lB7jizdzVFiz6vNr5PCqZF3nB6e6OLyEJd cTlYuVODlSYuF9tCrQVVGt/IvGjVEWSMveqIIelds5e423SYO26C9k//+2lQ1stXoU2Z3Sd4VeB3 aZxZMU8DJqa0dXZMwAmTKcQfjM5k3/EeNfMstym9Pe3n1399XDZFSsM9eetBh1cTQ0snvl9ASqq5 hWxrTY7QeIhhQvRCJyUHoc9ysTVrVjMPnwF0w1gdCC0PAzvXZrJyucJdV6gsCZcd2/AghK9XDA6m LmFm7bjBCDMbvV2Sx/x9fDOFfklcmYkbaHut6+JlnUrR1zrDyJTGilFrgVyrJup8hCokbEUF+ezj Tkzrlz4M6zL0LcPZDSk0R2qV2I0tHz2MHVNTZ/pGmEEdgQNhMGjjYNA186WR3u7Ny4ShjoK8Ucj+ nUOhHNa5DYB50LoET+k71LQRTrv+KoZDdDM934Drx9SoOFrsR2sGFcZwvn951A4pV6qdG0mFTGMH 1s5at2NAnHUnS0Qs/VqQxaE/p/kA+lrIPmI+uChy+siStzUVuc5XlBiKPkDZklDhYHF1ZGGVhDl7 cvHFhcAZyhGyh8+8U9Oqae+8YLs2yjSiGrh981B3wSsmy8724OclIWYH03kcb7s6xBMwB9cajxC7 0AycPqRy7+6C9cBJacuxg/X0OsbXY0a96kQ7W2/gxDBYJW1M3qbzLBfOiqaLdowaNbLIAy0hidTo LPJ0L/UrL/mzv+XpkjScSyntXtmGKLf1wMxpiKC6z7vr8dpczcv0BYi+kokpDXa29pEY9BDRS9ty bFiehJCcYHL4XK4RA+j7tQZEQijA9ehYR+8mD9pPDA7fQSULgAloKyE8UyaeNgm4eHwjzzkkH57b LLb1lOcQl7Z3YvfdOQxvXWRtmcAWSV8lW4mlcRdM2j3qrQ5OW9+BvUjxfZ3NlFlRiEWiRIlz70ye q7f7JbCFcIhcZeocoXM4rkf/EHhu4LWo6DKx3SB0xSxAp/hTBm1yKtN1xsfCs8MWtklAjgWNNScO IfrEIM/Ad2CG8uCGeaw7Mp3yk29DSWHq630ZZ3gU9mXNRaSZBsrbnFh0PE8zfN0qOlFaU98mO/Cx irnf2A6eZ0V+yWLohW/ikBuKBxMTBHcxjUNst3ClJMixt1ZKyeGABklAVgkBUgCGAKwHCQ2+5W9V RLLYEZvaxydkOk+EZQaNxX+2IEoeF3mDMzjQDJCAB/pFAhGYSQJw7SCCc6ZMatfaXJy6xPfAflqU vouogQsnSPlkFxEMSAXUYLB3F2WI5ofQ2SAVz/sS+s2Y4QgWEaGpXEaw4Mhz3B0uW0C77ZmieLZm dJ2EgevD0SVox8j/I8+lS9RRSs4HwxlZk058H1vSF3EEAfiaBSB0VtBpBEQW7J5LnZQBF+pvauEh 9CI0f2tpJbNeQDGZ5DIHVVys/H1yONRwh8wb13OefOpF6QjNDukxxtIbhOyqHNBp0/FaxB2MN6Xx uqENJ/mwLqJHUxqLYwV4eVcLCHyNrrPsdju8LIV+CFsn9J+d0KGxAe7E4rl+ACTpa5JG5IAZAg4C 3he+bcHvpD11TIxhjWNzlRS4+/e6SEFOYJcC656lUFhmduAGKHEmJLOdtfUdCg7HtsBqJAD/7li4 TmWb7IJys5kDSwTFMIXu3ScbZNt1bcAcFsxZlf7mPi6EUtsJ09CGMysWMrf1ZEgFTxA629t9LLor 3Bz4/BI7FpieRH88IN11HKAAdkkAttnuVCZos+/K2rbgIEhka25IBvw9lvXO2pQFBAOqO/m8TOrr IN6u8hWwH/r4FcnA0ZEDIZi2Cx13e67cQzcIXPzwXOcJuSCbGs8iECficICyIwEo+UhkayILhkKs rR3YlBTkX45Mxr4TnLa0PsWSnQ4wPb6G46z8pi+CLGZXGjhQls+WbSN1QsoaseE1biBRbJ0up/fR 6Nx5ZMrKrDlmF3pPOTwDIP05funL9hdrnWeFOmgE700uX1r3XZObtkUjxxCtvD9WFDs8q/t7zjhG QykOcd6ox2A/nIReyKpn9Rv11hMMtyRFUSVDHMxV/v+Pqvx4O4lzH1+O8p+NupqN0kzeNXyjDdIC amSGFUqz26HJ3m3yzJOHxCgcE4guEnxnmp+Gd6KOYqFSJZMiLtH7LyHj9PWZLobKms+irZI+7VpU 1fnjE6zuznqQzda3L8abUD03Ytls8lDp5LTJNb6wQasIObit2jbfG6+qdKcTxNLWjf7sRqZKchm7 HaYeUZOoHo8QJh/oaSnnpWXFhlegmY2xINsnZQxLIGA1JuU/P3//9N///OM3sp0bvYWtDrDLQ7oK pEi0OOnCaOdhezLJ0LoBPLcdQcfY5ckfjjLlcfCBsEwWd04YWBuRMYiJ3qT0hyJ7LF4iAa5TkcAz QOKQvnAsXdSR1NHcZh5mmd2jdqwHopnXhbI7B5ta5T/MqFVJzz2QPCG7R94IPpZpiOo5S187axa0 V4+gfnw+0dwVzdYlNklT1s56CxLbNW5PNeK6K065L+Qu2TrtjoXCn8dtnhhyB1FFes5UiXJTK8O7 a9yctw3Sizph7QAJY19GTIvd0n0Tw9Inp+7+o4wpmW8/aRy9dJaiyo/wcab8xPY2vrzvk7LCMbKI Q9mFmaMrb3otyxxERfQAp7/8JMar0vW8fwSBD8MJzHDo42QRUgomONy5IFkYWViXm3B4PzahEWqC ICO3HhLtfDcydF5JzS4Hx94zocKJ45bXFJU7bpD0TgxN1l3Nnh9v3DU77oFCuqWx5o509kORJawt vnRUXcYaozwY9C2I59BUziTx4nW+zXVamyVw72nzXeA/VruAzlF6lr1KRkTWgRgxnF9CMT2dZS1J /YfdE+8fnvVkO2qFbslWU1oFm/3U5UI5d11PCEFtEqeLBVMZYy5bRtYQjAXskGVRMo6gacLERRlD zaRufdvyDLsOZWqJFSAJBYsNc7TNXHaqosOLmQlWJgSrZOEuYJPlgz3qqlMHM1RYDYedgqPdKKqG FzF31xrDal82WcRa6mqWj4MNKpz0IxZf8ZI9mKcuHopRSvKnHLgw06J0PWibI0ucHC2aSxJrqi6F HhloON5ottDPd2Z8uYHq2o/tZK632HkGK7alE0KFRBE2Y5XrTnUqhSgXLL1JDyzTqbTxFHwksnZ2 M8chf5Ajlaro4qP2antmoGfKV+Vtob2Wpg3ezEXqpdQuJz7YojmB2HWPnJWzwVXieKoLHt8KcA+Q 9B8yNt0aV+q5cEfUWC7iv5opRCoJ28lHsRskH+X3J5WE9vPrIVeiNxjJSXxGE0WK0c8ydnRXagvE xhkf4ovnesxnOLMxe93MoORvXIbCbh5jEz8z5m0Rudazuggu3wlspNzMTLS9BTbqZok4GAkDh5kD G28TTCaoHS1YfA8Wr5ZJDvIDH1cNWQ1CJi/00fSQ10+7iM089Bl/zCZXxETpWXBFT+s5CugMZh4i L9DQ2v7MR/1x4drRwANd4DShMIITh2Ryw0+jgThchQUGvfeZLKawP2Mb9rAa0+H6noKuorrVtzC0 dPORBRTyUAQhGZPQfO86gytRXoOWAr0GSaVgs4mtU9axBXufoNaGq0DrlWHgBxACwruGCtDy8WnV zEWXsrbPxHM32KRc/ANsjutv77NKDHZgD08CNfzGNx89LdjsH2oTydvPK7uQhg1UyrPPSlo/tFqL R/RkF3XJIAWC8R/EytkWeVYeNcql6igKj+6vNRld68x1TcSyhA7Di1x/W9IkgxOpRnM+l1M82AmY q5PLb4mh+xp9PiBq+re3KSdQG7r3qC4vMM82vrxUGDn9H2NX0hw3rqT/SsU7dR9edC2qRTPRB5AE Sbi4mSBr8YUh22Vb0bJKU5Lijf/9ZIJLEUCiPAdbUmYCxJpIJIAvWVmQnBTszK0XOMpySIvbZRHt zWgjX9VIO+FzqTUcgx1ZiQjU3PgMz6jNskBz5LCMg7lWYpHqMPd9KWjo2LaKCI5gJEEwPuGIxFES YJFjboeTRH+u5AgHt9Dbvyo5Sz+xwihF90TWLMmomFFeFkkdERWIarCjXSWsMAoKmSn0Q5LnBb72 MnJU906dJWmfQx70ailgOCObDi2uKlkmU4G3912FlI72V0Gv1PsmA0BDHWFEl4eXH49fXimoARZR M3gXMdiijk56OgLaIVCvWv49W13zQKbci8qPeZlTlnRQjk6I4I8mFYVoAil0alDAtv3QoydpiADI Va8JUhJMdWBLnoT4OOva6MjbprLDVdI/iPTQI1mhh+B9w3khxcS4NOrM8m+wQfSytgIJZwqSQaqn iI5yI3ZVA90XNBgSDbFlrIoXqJMdyasq1esKhMbLmz0TlYKCyOvq79lyLBHxtMEjMFeLaLzhefnp +cv56+kyOV8mP05PL/AbYvWMjsAweQt+tZ6OHzf2dCmS2erOpmeHoqlgF3e/OZg119iOOJooV7LA BZCGbJYGkQ4l1p+2Tv5g718fzxP/XFzOX06vr+fLn/DH87fH7++XBzzx6/E6II9J8vj58nD5Nbmc 398en/VnqfidLK93nNEeRFWde/KONLJ2kX7xXNGgM5x57dJ9FNKmlerjlNHX0ZFZB4nZ0kzSWA5q skYscgU8RD4owLKWzUeuO0/H/eMz2KjvmzjQQ9QPvGQXuKv68eA4+C9xpPsx5ZNVTdRi3EHX64Ou YJlCfFTdFzy+vjw9/JoUD8+nJ6tHlSgoPsgMzBfQBI4YwldZL+ewBuNmcL6+p8/gdOFqN5vO9jWM noS6JHoVxjYyG6/lSJEWvy2YQLDcLf6432xmLnXSyWZZnoAmLqbr+08+I5qv+RAI2LhP19OUT5dT 3VF5lcpLIfFFX9zkFfrS7im/xlUc/mdgqwm/2e0Os2k4XdxlrqxLJguPl+URVpLfRUMYpzoGAhq7 TFcbOhbfqFnb6D6NXPFFzOaOtr8KrRYfpgfy6h0pvmHMUTXJxTZv7hb7XTijr7WNZJWdmnyEQVTO 5MEBZGfJy+ndopolnLzupyZWKYKI64tDN2h7jjZ/RB+UbOJdHr9+t5VjGx1GHOCXw3q1oVwDltjm YC0JfpDhiyoKjEqtlXXqKXskYL6pT3vonBYLwgHBqPQ0WLqigl0j7axTqzZMxgZjRNF2vlKbiPof iwIvvAbFAR0zEW+8zXK6WzThXp9UuMoVVba4WxFjApe3BnaNK9LNizKwtsI/sTFeoBnJSejXNrm4 n84Pem8jER8uGMXB4K0IvuCvFtAIGCnO2UhVLmPhsfaEZL36fwvSR85KEOZ6WNyR52odX2arJYwP /SRNH3zkmXVvb7Bgt17qDmWNRTpsjMRorxmm7bD42UQlrY0GVvpFVJtFiIUU8J/rHFyNuYMMKTDY tm2yY1BaVoYdqpnS4jyrlB3cfKxFuZV6PRDGa4Bfbq2lMp2gyUWaUuHl4edp8vn92zcwIgMT4Rjs cT/FGHgj5QM05ZE4jknjgdmbzsqQJuoCGSBOLKzictgmadn78C8USVJy32b4eXGEzJnFEBg1yUuE nkSCwU/mhQwyL2SM87rWC0qVl1xEGSgb2OJRG+j+i3khtUwDHsLyyINmDMSmdjt+7Y3WdCCloMY6 k18an0eTB0uFwZwsC1rryR89YCxxYRHbS1mJ5MgFbpHSnjdMeIRlfj4lF2tgIx78Ty0BA20ITUUb tKrXZOVkwtoxo+wwYNU4erR2UwS9vTgZxRsH8N3YV4v9EOmZDTEHjRzlLFBufVeJs50IHGiuwC3F zskTawdOE/ASvpku1/RlCRwxbhgh/Kh7P4b9Ux1njncXLdfFko4gs8BhO+Plq8YVznHnwsHFduU5 TElBK1vgb4+OmPPAWwSOvRl+Ms+DPKftNGRXsIo7K1qB8cXdQ5uVtAdOzTBnprADS0Xmbr7UFVFZ MaVfh9TtAJwxQaKpHnxMFx2qu+X4zAboPZqFRuzO/nVFxWHYZXnKjTmCaIOuYNio+8ucBTLmJGaQ GiC4gTLnnYR557j+piq+nlHmGLoJFUZtk/iBvdYg0U+YlJ2/V+eMYqlY2dGprvzOvB0rwyuzPZgn 63IVUsAJN6tUpJv7u1mzT3hAFVEy2F0wisOCYrMx4Yw0JnlX6SpDgSmNyuU+Lhz1R7pYLe6ppivQ eNHjSo4q1Z2Y3cx7uIdFVtB5cXBUuN1yPl0nlDP2KuQFq9l0TdUAVsGDn41AWWBRAP2lr+sdy/TC gGXsCP6V1zoYZQvWCxaWBaobCw0zA/68oktVJc+iioKqAbGS7a8lq2MNRAYyuQ7qNkzWy+kLxhTC MhBmBqZgd+hvIOuj2L5fW8FdDYnSsTdUXMccGXiiNBuCSYfdo5g1GIO0f0s1Ik+2grL6WmaVF00Y mh9EP3xJmfQtU8BfR72Zwe6QzC65n9cRo/a3iqkOHawkxXxG6kXFPBalFhwdiTAEojxDR5G+Nemp UEFHdhzd91btMWKuK0HC/Ty1E1BnForzqQ2RrIlHPPVESbv2FD8kYQmRFedJxbVDpJbirmKU51EC c5ilGlC1YlWrzcKgQXHV4DbLvD3Sqzvyah+3xrSZg/w9S2CYucp3LNvzEa0YwgcD0CDpR5hI+sA8 8hEH8qq9yGKWWfXgmYSNSOUwLlEk8V34QIrLDQWT8Czf5QYN2gOVCE1tgg8OBvxRjPBdBrqKDztW t6KsUy/hBQvmdNejTHR/NyWS7sGMSaSRTGsBZbWqYM6ORkjZMQRjwhol6hw2Ik9pVTKBT3LysNKr n+YY4cmeJxhdVLjiaKNAVgk9pwys28jMBqwnx7EycmHlxudtSU7e/FcSPIO2yIxCF7xiiGJtUDGS lx+QxNbjQNCHRZhmY340o40NTHBgq2wwQKWh4St8Q3cWJR416LSPtfC3+IZTJ5doOpuzssx9nxlN AwtBq6Q0mnJbm32D9yqcXaOAtJyxQ5VExZlLVQIPhjms/VxaX62zIqmpUx9VpdQYVREeCzCpL1UD 8dZEUoFRP+THG1+rhKk8QFdKA0FMkWPQW67KVjGGMmrhcLVXBCO6e43AYHr7ppAL85t75nrap7hC 4MUSJ/8gYOI4uZ94md9ol0/HAOwoc11oX4c3ce1ZfdpyfKguXrNTf7msrESBsQxYyaQ9CgzKJi0E vW534kbMJu0T3hmoxeX8dv5yJh/lYh5bz52/pZGvoZa0GgyJVDQoYRvgeNTyNEHwR1dC9bYNY9bG pDcUS5PHvmjQrwfWRetaHJnh+KzX3LgiEYZTmhuCKnR2zGQTjxWdFpu+bl/9GumyDNSyz5uM70d3 n9o3t4+vX05PTw/Pp/P7q+qB8wt6kK327h/C4wZHSDIkM0odM4aPB1OR5eONkGqHKrIIzT4GFZgI WdksL1HqXlZqFFvsUI727khELY9emwhRNRFQsw0dYowMaslFzt64xdTTGt9jIT1UMSKXf43IFZgv lVXq1fownaoe0wp7wEHRUrVPKnrgRT553W+QwD6287N9Gsji/ad+WdQSPfXQuk1VEdyqwhEjYY9D pbWGWf8dMviT6rVDPZ9N4wKFHJVD5N3Z6tAVV0sdQqdDcjOx/oWuCE6BmhAYs2eLOdUrMtnMZjfS lRu2Wi3v11Ta/e1Pxntmjw5sRanGo0FUaNhpGyZ0GIjtwc7Ef3p4fXWpS+bTy5NSGG0IVNfECFKz SpV+LtbizcIC918T1VhVXqKL+Ovp5fT89XVyfp5IX4rJ5/e3iZdsVahWGUx+Pvzqj6kenl7Pk8+n yfPp9PX09b8nGEdnnFN8enqZfDtfJj/Pl9Pk8fnbWZ9knZzeXB2xva1mDqaeiR4BOvC2lgWrWMg8 Ov8Q7Jt2q0swhQw0gKwxD34fG4RjlgyCcgx1ZPKWS5r3oU4LGeeOXFnC6oBZY7vj5hl3bSHGYltW pozOv/M5NNBavqOxeAb19lZzHSVcTT39wecwuMXPh++Pz9/t+KxKnQf+Rr+1oqi4e3L2qiiMyKUt bXdVyBS9i2q8IZgZmFn+KCZ2y1LAG2Zetf7cuaVaj/f0yqipH5TUNSK14u51VIKe1tSJ403+IIFF vJFrE7Eg4pXZuooV4FPBMidiahRPD28wVX9Ooqf3U7cmTiRlNKqMrIWsLRkrJEHOw/78wOTNiVLO rQq2V3Qfvn4/vf0VvD88/RtW7hMola+nyeX0P++Pl1NrArUivb2Hkb1AOZ1UKLCvll2EHwKjSBQx 3lF1t+f82mhkYV3YCNfkN8eJEqlKMJlg/EvJccsYUnsGZZXEAuzz8dH4mArt7GDU49ffGqfDmdGK pGD0VzbwFTaxalgL20UpAinXc1Nl9ne5LdrgtjYVfBfs3bqvZ8swUfoITUVmz8rtAiwSktd6jEmW Hy/uZpambXnK5I05c829PqK5iAT60HnCKUu2/1ABNhF1JjiW6fRyunFkwtOCU8+HRyJhFWAg8Zys 7U7IvCQ5omAfaQYtz0Hj3KhtzzZgSYjibmbzxZz8BLCW44ez47GkTmcdFdnT9Lp2lHXLj7JgGcY6 uV3WTpDMfptIQTNyDy+i+eZS33JTv2pqVwOok11HodNcrtcOvCNDbEPecRsLHWo9euOIl7Fdqvuc R8wimS+m9BH6SCqvxGpDvnscCX30WU339UdQxrjJdpRBFn6xOVC318ZCLKS1BjKaggWBuXMa1BIv S9aHfaezOKZenjhK97vhry7yfGhf0djcAyg8y2DtdNPe2St5YaK5kVJpJjLy8N/Iys9dHzqgT6pJ f5PHXsjYA5uVbjxZzyyzu+v3au74bl0E6004XZMvAceKWW0oRm4x3YdCLmo8FSvLRgHinLoApfZr QV3VB3Pw7CQ3fCgJj/JKxUwyMk+cO85+OfCPa3+1MNP5R1e0L7WkB8q3ppdBrQ14Fmi4nfCMNgAj IGFHoyJCwo9dZOwjEmOy4Cstn++EV3bIF+OC5HtWliIvzc7EHbKj8DyWvGq30KE4VLWxCQB7Bc8W QkPRH0HO6Aj+SVX7YPUoulLg53w5O9BxJJSQFD7+sljeUHK90N1qSmFJq+YS2baBtsXwNty2vvyY 5RLWFucnWJWSplnx49fr45eHp0ny8EuLOz1KW8Ra0K8sLxT54HNBh31EbhtX1BX2uGLxLkc5Z3q0 JxfkNXqVe79bsWi0C6Dj7RDNygHAaWaBd025y6bWBSVZEKx8oy5izAluv0nO6rTx6jDEqyTzUb+c Lo8vP04X6Jmr11Hvlt5HZtnpUdm0e88RrXda6dTiwOb6A2+kpjtM796kAnvh0jcyI3bcigpZKmeh zkE46ntrankge6sILA2Wy8WqJtETUQBWpfl8bSn/jtwEKX09cZDZuK2iKN/ST9GUsojmU/oW4ajr 7XC6461dnaZH20mYCA+W8SKXeOCvK2RYAJvE8JnXDUfNbkpyP7VI3CLJ2pPm5AoxqqQcnG8Gz5wB oTokMkiVb5gh7a+htJRZR+/WYGdzDnK3/J2DUO45Is1oUpnvWg0HEasRx5xr49H5l1kgnBv1IR9u udMHXhHnbpNrkHJ31iASwqCBoePk3uiXELeqv2/Lmu+MO7V0Zu1YcX3qtsN6JFj5WqtVx4J83au0 YZ7w7mm1+WVkye6oD89ZnNUEc0cdQLlOF5JCNBgT49q++7GfdK9OAzQFtW/PD6gMgSVmd5vpGGxR j8RV7EvJP4KZmVKV7rimQw2EGw+RoAlSf6y3uX5DYnjempVUn2K67oV4e9aY+n/J4C9McuPwbMga k7uAzZAng1g5D7UEiujGGR0kTMRSO4ukClM69xwGe8mkIwiWLlfd0/e5Nalg76cyJnHmBjG85wXW sN4rLSvEn4upztp7MjCLX4kwxaMXV4GoUIdGiUvYuMWNT5twKOJ7axcIIXAxfIEM6AGp+LW30AOH ILV2N04NVRcrmKFWIv+ja6qqpujewRXk5EKJtNpSjX3gmb5zHfWkgdFyFeEpYu1TBxJ4JK9fT1LH 2OoGOkVr2utkOscrceOS4aYu3qPhn0XK8aBmE0jYNrxKRkVJVQxWUM/LW5ZcrO6WzCyAn64W81Hc qCt1ubGyVxiP1Ca757bRuKxEq3tH0PtBYEqiwir2gKA1JhY+u18u7I919Bt4zSjlALNrS4OwqNqL zoFM3m/vuMulAhXT734MvPmMyBDI1GX8gTtG0u6Im+UY56onGo8GujHHYVOWMkEdbFybSg8NO6bf bCSUWS3stHbAjDF3AB0fE0mAzHYUBnMDzU3nd7DX8s4FvNC2T7VYkrDO7eAy4d7auyg+Q7Qsq0RV 4i/vZyTOZ5tbh+f805wXy+X/Wj20rYI5TAxXXkIuZmGymN0fjOw6Rhs5x1AU6qz989Pj8z9/zP5U e88y8hQfvvL+jNgkxPOAyR/X23d/GqrGQ2dFahTBBBtuK58cEFLdajSgl+QhheIiLqmVJBP+euNp zTxUtLo8fv9uq8Tu+pCpevtbRYjyUjp4YIOro3ertzs+GPnUAqDJpJVd8Z4Xc7CyPOPYiBYd7sn+ 7nt+UTu/x/xK7ITjiaAmeWuKD7Xvro+p/la98Pjyhgeqr5O3tiuuYys7vX17fHpD3Bv1qHnyB/bY 28Pl++nNHFhDzyCiE76ddtbHZ6kRyYCWKxiMm9+LwY7LuMPYSeGRHQa8QBQQzUkm4P8MbI6McpTw gCEGWY6X56Rfji+8KZZ1SZAbsAtKqn1hjhOLPPpVMr0zTKchvAKCkVlZsjRwwAkoNl8vHYuyYovN /H7twCVsBRZTh9rt2C6t3LL5YnZT4LCgX7+2qZd3NzNfO2HUu+S3i76c3c59cYstW+yPGwLbG61a ZAGJX1r56DW6dj4SMMLdajPbdJwhI+Qpk5P8TICBQdRNUku9Asurw9E90n6reMx85UG9fl/uFVXb cHfJqY+y+tCdJ1D7WYU19FP7EyE51LSZGuQyVwVZ6uTWcgZzXUrNSVJ0EEJ5NfD+9a+eiRhq2kuG Wuinqwq4jrpRjpwiKHd4h0GUH81EAWwbOhbtcQAZxh1OF+DBkujnjofc6tOwZeluTzhlQMuRXklM XtZSmmVOw9WcOq/AF8ZdrCDNh7Tz8kNU00c2LajUtRc6kKmUZ9qi1ZFdW/6ebcDCmXwP4eXIy8Gd gMiKeuSo7guTqhKauSG5x9ZoiHmiS+8HiKz08cvl/Hr+9jaJf72cLv/eTb6/n17fqJvn8bHgJbX+ yIpFYIKNS1WUQqZz59kK7Dd4QLdeWSWb2f2c9m4DE3SGM916vvBo5VFu1jNXnqCJNtzF28znHq0T y0ou51Na2e+q1cqBTK5YNGBt+/DcAYUHzEMkLNUHVvHDP+8vaLe84tWy15fT6csPLbhf2zstjKSV nj1/vZwftTtmsNunEQ01qETEi4FVvwKNAXaiBl+PLJ+VO4QnVEyyQkoqrrPtb0QUYKFDoK+bFR3m akFVvImCdD2/oxev3gFlx5S4LjxRRqurSDZhETHU0rQ6ywS0kCwYjevZbrphxds2hyQ74C/7T45q 7EXiw+I+Vd5P2uOTO1D+tnI9dfjHopIfXYejCmQPdKV6a05/sdo2KXEvO3p4/ef0Nro+a3VXxOSW V01YgoG8zx2wFgeRNOwgEG4npAuAASKBTZdfBe3rngXcUIhF2hrB14E9jIhCFGPn5zVq2VXWj0vQ ZMN3pMkB8YQVbXQHk1HgyYhm/Q6syiPdldfPX5N0cdRckc96flmkkr7J2UskxY1PovlS5daHESkZ TyBu7f76HK7Ar+aHMaHHSpuz83ybqDYT+rHQUMgAb9Swirp92cuojYqRK6xSkHQAoRo5UZOEZflh 6F8q32Sr0GDzfFuPejlmO65mdlFymP9jBO5h1vdLsH/++fP8PPGfzl/+aVGX/nO+/DOeN5hRLAN6 nvxfZ0/W3EaO819x5Wm3amfiM7Ef5qHVTUmM+nIfluyXLo+jSVQT2ynZrp38+w8AyW4eoJJvq3bW EQCeTYIgiMNiIyYFwS/QXZ1f8ueTRUbR7X9G1MqLs0i+Z5fqhL/TuUTnv0L0kedmFlGapeLj8U/n Acm8JGcsWYsRqoaUP4Psvqmo/TwZ4HV+op9Vc5PyXVqu21qW+CwW8Fy1eNrntz2XwBIqFTcdXo0v LI0h/Rzo4e2HRTnLM58StbFwFDgCnmGtxZIXnerI4yx6vzTJUMwqTszXLQ1umGcJc9NbCgl1zGyf tvvdwxEhj+r7L1vS7liW/5YcgeU15+B7VWSKKpjZZvv4/Lr9vn9+COdVRW8H3piaTjXfH1++MITI fp2rLgKIJ3KXZkJSTooFmVyVSQf3GOsS7RMAwMfqu4ydHBojvqAFaChEVunRv9ofL6/bx6MKONHX 3fd/oyT5sPsLJnh6KFUS4+O35y8Abp9Ta6CEmu2f7z8/PD9yuHJTv5/vt9uXh3v4SNfPe3nNke1+ LzYc/Prt/hvU7FdtDc7PHEnYze7b7umfWCFlAwP7jXt8qguTfdh8XP3zaPEMFT092x/Y5CmmFMv0 vj1UZSaKpHSeRG0yuEzhBkKDQ14As2nR3rKFM4Xpp003JsuKNpq0rbwJV4AZWuBROs3CQIYUlhpv 06WTblX88wpXEOMYGFSjiClX1eWlvRE0IvrspfHa6xlTI19xBqyabMyt+RjUAKizMzbF0USgMmWy ZSPpfzRB011efTyzjEs1vC0uLo5PmRqNcWK8SqBIR4nPfvwFntPwKnIZmcOy46/MNyC6xsT/eh2a aqJaCOPChx75gEG/nGlxYFTtBXplJ5uhbCZPNVmju5CySBnbotvb0NWpjGlWR5eIKu1Yj6dGoKEt /OiaKs+d3CaEwdix6u1nijjnmq7Az2GerASvYkds18gbxycIgZhlXgxCUKJsB2MEXv3WVS9v4Wj6 84W47DRzJm6xMm81E5IWwwozCKJlr2/5Cj/RZHI4vSwLMtrleJdNg5X4FRRJTTZcQ5EVHz5EZh0J 6ZBR5sGRdiwKO4MxokxAbOrBo1sxZuQ4OWWD/apk7J5OIQOWKstPIuVvuUU6C9Zrvd2jX+D90wO6 3D3tXp/34dJtEmctwk8/IcOI65ZwgKLxbh76+E16FLMDyqypXJsyDRpmEquB1cx9ulzOyptMFtaB blyYUaPo2EBniGLqKCkMobSqQFLb4975Uc1N1ebEgF2rVKcOzKruRtGrmHHro9f9/QO6zAaz23aO RRP8VLalEW1OgUJKo3M9VqwbnUU0vk/aTaiTouMtilBdw+3u1rHqgp8mcAXcCrNI7Ewg0sFbIozc ovCCoiCmjYVvIeRM+FqP6TyuamdnKC2T8oiLcfNWRuK5trksYoX00x4yqMUthQDIhyyeSULcZJxh U71auME2NABlFdb41uDLSqP5sw7NMeHfpccQVOjiHWpCidPaMlqapEsxrKsm00+mU6fmLYr/Se2I N6ee+akGDZuk6zi5HfBnWMQ97hE0oM30Blrl7YgNVSvSvvEewCeS87A759G6PRpTc1BelGlzG/ez IpqYSeSnWeYcLPg7Soz2wDP6AvbZLOFkJx2ew4MNGIhTXukxkuDlC9+5+RyfY/Xqm7EtT/PHo62p M+M0PbZ+25VMExL5pg5B3MmaimNodjTl447fjeqItd4Qct1XHW91sPnJakF849gzIKQq6VGJbASi 1a6Thl9Bm4NDhL1/GtPgVmmIHI+vxgzdg3Bfc8TReiLWsfA3w0jT9CVmjgM0KSHirQcuPgoMFyzR 8FxyakPM0QtIzvlVUco8OvL5afDNCYTrJDaRukyUbxFezY29rFUxsqFRgpd6/7EOKhQK+K3OfAWx Qe2Nz8IUTBt7VzU7ZAmiH+K9N0a8XKP93a1DETlTI4xuxPspCDIfIBXA2H2ZgkmQu0BD9BGD13yM jgDtOiOPb9Kk76p5ex77mAodWRx4ptq7Iu1b6wkDc5rlya3HbScoxoiUmNhgyNi0dxxlkq8TSlCQ 59U6Ui2Ku7z4YRFtYIJpcD8jLESXYKKFUAd6//DVfW+at3TghJTZb3Bde5/dZCQqBJICiFJXcCvy JupTlUvB7+w7GQt9kWkfFqVlqdr386R7X3Z8u3Paw5betYUSzge98Unwt7F0Q4uqGk1Fzs8+cnhZ 4Z0UHYPe7V6eLy8vrn47eWfNlkXad3POz73sPLZLgIATErRZB/Nev2zfPj8f/cWNnQ5ye2QEWLnp SwmGF/ku94A4boy1Jh2/XUKlS5lnjSg9cG87h61EU9qNe89EXVG7a4EAP5HqFE3AdCd1fr8QXT5j 1w1cr+i9ES431vDHcHwLuUjKTqph229LSpx25hFuEjdJ43w1YEjKLko94LvsoEGLpPi7apIdwM3j OEHsN4ZdxgsCCmNRxtCzA32dHehOHPVpfkAoSZukiKDa6z5plxHkzSbeYCFLWEYxKag4MDV1HHdd bs4PYj/EsQ3TqNk66tX6h/sb+UaeYA7ZqlBRwO0LnSLJ76oRzaubDN35r9It01+ivDw//SW6u7bL WEKXzBrj4Ukw3DQgDAjefd7+9e3+dfsuICQ1SFCBfk5ygbAyHV3LbXsT+8D9gY2xOWBUUYoO7TVs 3sGdErk1N/BjGqZ17Fhoc24NcG5ZR4uN+Xjm6PRd3EdOq++QXF44Ids8HGe46pFcHCjOZxFxidgM 6B7JSWTslxTHg8ecRWflMmJD7RHxL80eEffi4pFcRSfo6uynxa8ujiMjvDo7jVd8fvULnf8YnwYQ 2nA1DqykY1dychrtIKC875a0qZQutWnoxB+LQfDOQjYFb1RrU3BGsDb+wu2mAX/gwR958FVkYGcR +HkEfuGv21UlLwfu0jEie7dHRZLiOWWHgDHgVOSdG59twsDdv284ZdFI0lRJJ92YRCPutpF5LvnX AUO0SIRH4hM0wg7BbsAyxYA2WTgcWfZ2Ejpn8JGOdn2z8rxqLQoU7p0H4jx862u3D2/73euP0Kge g4fZgjPlvSvqxNEb6ZjNMN1I0cC9PCKh6Sp4ARoDpIssTqDv9IdIADFkS8y/pnJZREQ3raRDC/iW 3gy7RkZemkZafMBXj+ItW8Kjty4XGuJcOEyt+oi1TndkMx2GC8Tt42cs98sNm7mdj33qbNJZPrxk nkbvkyVMXk92+/XtQAnPfZfGgIzXsFQNaT3U0wz7bpN0FGBINPiU4OcnZ9Gq1+/ev/y5e3r/9rLd Y+DM31SG8nfMF2lh7fP64pGkq4rqNpIRydAkdZ1ALzhuNNJgZvdaOvowHwfLE78ab9A7Et8mBfck NY0pmeMLtn1ZHXFkMCr7omrZfkxofExpbwuyFaKEGYf75BbsyxpfvnOxwEVQUqQ5qoST/bg64Bab VWV+q6/vIp8PznNjmtKlFpU/A15V4Tpk8Tv8hcsjXeH6dN6EjSKX6YdRZEw7O7GztnpYy7lmvGMn iL9tU69RC8xp0KtG6TJtJRzyqGq09tz/+P76fPSAcaWf90dqMVumekQMrSyS2pIiHPBpCIcZZoEh 6SxfpRQ5No4JCy2dCAAWMCRtygUHYwnDC5LperQnSaz3q7oOqVd2yh5TA55WTHfcbJ8amnFnqMaJ NFsGtcOZDPw67J6GnzJtIM+Lt6ILojMvnQH0KBFUv5ifnF4WfR4gyj7ngeEM4PFx3YteBBj6Ey6w IgKHjbwUZRrAXaNODWxlEdawyHuT2w4N+QO8KBeSAjEq24u316/bp9fdA9ygPx+JpwfcYiC0HP13 9/r1KHl5eX7YESq7f70PtlpqR4Qy7btRfAzlMoH/nR7XVX57chZJID5uvoVsY5lQPRpefWgTnUY8 hryK4B9tKYe2FfyFwm/3/0MPXfhFcjg5+/ZDzMzZpfm1yk5iodB8ol+vbkhuNty936xKcS1vmCUg YAHAgRRmkpmRATbKJy/hCps5lmYGyibzNsguZCFpFxwq0J9ZQJc3a6bnNfQi3t6ma5kyIDyvG9f1 Sln83L98jY21SMKNv+SAG35aboA2aDDbfdm+vIaNNenZaVizAitLoGDGCMkXgTnKkYcyRbqT40zO OZ5gcLpwfIoX7CFqeEnQqEGQI9OHc2amioy78o/Ii5BfS1i9Ise/4fFXZLAtWPCHY2bcgPCYUoA/ s2Oqm321TE6CRhAIO7cVZxwKGU8UeXFyGkeeDEW4O3SNxYyZUV1hcWBjquKRrjDzBAhedWPwbuZm 78BcNCdXzEFd823RChtoGQ7Ap2n9h2+fFNEz3LiJCKUKgA0dI4UCeFyVIco0HSLLfiZDHgYSd1gR CNFryhodQ5iYRVF8pIcYlCPPJSfsGZQueuizjaTqSITD5H8qdMqU8su0XRCeycKFu5ygVo9YgnAF E/RQsUyEnw5gZ4PIRJxJzelvfHyrZXKXZNxeTPI2OeXU5p40Fo5EI6aBBHULwUVEGbFN7Xg6uHCS MWKTZGgOzKNFcnqgi8XBpdQJ3njEoNeVH1WPJYitLIOODMFFD2drO9y2R+PMhPF3/L7fvryAhB5w If2EFso0dxWzRi7PD4hw+V24+enNkJltfPkLOGVz//T5+fGofHv8c7tX7mb3r1ynMQ7QkNbczTdr ZgsTP4LBsIKRwnDCAmE40RARAfCTxBzdAl0i6vD74K1z4HQMBmG6wF1XCd/qq3j8E4ykDaUXjSBZ 5QUdZWjXGWI46ZbM45PM943kyNKYH+dEco2WMMvLq4t/Ik6MHm16ttnwBk4+4YdI6KJI4zd8VBqu +V8khQ7ccJFhLLrQc9CZvUZw6t2kvS0wzYdMSeWOcW+nL2ch636Wa5q2n7lkm4vjqyEVqEiWKT6k 12itZJvzrNL2owmIM2GnVwfCU7j9WBj6Vi5Ql10LZTRIVpjYmGcXqBjVdv+KHpD3r9sXClD3svvy dP/6tt8ePXzdPvy9e/pixxqiWBjWm0UjbYYQ4lvUOtrP9YgXm65J7EmIaWqrMkuaW789nlpVPWW3 ZIg16UyWWCuFO54bhp3v/tzf738c7Z/fXndP9qWvSWT2YaithDsGMsxEmQJ7s18yZrJrBMbjsU3A aeoTS0dlPKLarinT+naYN+RfZK8DmyQXZQRbCrRjk7YxgkHNZZnB/zUwFzNb1zx6Y6XS9wcwKA9M 6mJyZSjqTbpckBlqI+YeBSqU5yjKUeLsOpeuijCFfQXc2uaR6ckHl2K8glow2fWDI6ikZ97FAK+1 qHH3k1T4JLApxeyWewl3CM6Z2pNmHVunigKmOIaNiL7uhSC1A1PKmb712wRWHNjNZpnY14YmKbOq sGZhmq47qAzPGFfiIGggh9jWS1Zv7iqKZOcbBNk2TDa1bbHkUnO1OPZIUzUEtuinod8h2P/tKlA1 jFzs6jSAy8QW9zQwsV8UJ1i37O37tUZguJuw3ln6KYC56uBpQMPiznYltRAoBfLw83Cj2o+ZZi0I SlKXV87F0Ybik/IlXwAbPICyt+sstRZg0rZVKsmDH2atsUVl5ArAT+y3MAWijGMOn0F4VlhRkEtq n8LiDcADF/bzLuEQAVXQy6pvQ4q4JMuaoQO53OGAiNGm3VVtv0+vZdXZCR7aRa6m2Cp7bbPxvJq5 v5gdWOauW06a3+FTtwWomszWVkGfbQ4km2tUlHFat6KWTuBB+DHPbKdHTCePiu2usXMFpe0pHivu 0Y0uqVXuzSF+ERXDQZYMCj0qXfl6RPXaNWCeY5hx1yUqICpSyvk1dQZfQjNRV9ZYWviEzmqB87ug rC4zjH73OJXFgdnfgc731Xb/tP129PXeiDQE/b7fPb3+fQSXoKPPj9uXL6ElCEkJKwpRa38xMlmE c3CRw2Gfj298H6MU170U3R/n45fT8l1Qw7llN4KREXX7meDDM5rM4MY8fbx87r5tf3vdPWop7oWG +KDg+3CUKr2OexWZYOgJ0afC8fO1sC0c9RGXyYkoWyfNnL/uL7IZOl7JuotZwNCjYNGjlsj3ltM0 FGaLHLT+OD0+v7QXQw3cqUDLAM//LsmoWkAy9fVlT8k+KV2cbQVLOX3XpeM1HOQmWkLlsChVb8NZ a5WfEZqoF0mX8m68PhENDv3UuGWgTAduklxmie/CpLtXoTfxWiQrtOnBEMUcP0kwngGI0s31NBgL ONoUqE/yx/E/JxyVzivqTRC6H4gpJuP28RnE7Wz759uXL84lg6YYrgiibNmRIJ6YMme9THemSrZV 6XA3F06WIuT+5lysXJo70URC5Y29QB+3AyRNhRmug9RpHlU1Q7czzsxEL5bcPismGByIiXXvIGsn PdHAlTXSa8tgDnRHraQemdMBqhtuz4xsXdPAFbsPl0EErEJ+eGYx1qCoX+ghNfd8sBg00zeqiTq4 whQjzFm0Sis7cJsy1wFSAFMCYFgbjlYN6eMfbSmbKaQOrvGj/Pnh77fvihEv75++2DHS4TrVY8bq DlaCLcu11bwLkc4BAZJoUtiEtR9o+6fEyDd6MQXzRWM4jVcOk3j4wQQXjku+RWX6FlkwiByWGCOj S1p+7a2vgb0Bk8sq/nav+gncsOLdJx28Px6FxEFUvRWzuIXBZX7cbgV0D0KCoYTpWqARpdouAoNR RE4mtSCw9ZUQteJKSuOAj+kj/zv618v33RM+sL/85+jx7XX7zxb+sX19+P333//tLhVVJQWZDOKX 1w1sAs6RlAriIKJdRGm878TGfiPTq1lHZAv2LE++XisMsKlq7dpkKgLqiydXIwwkvnBna0S02ya6 ey5ipXGiSJerRUJuAVGXYAlj+srBld+n4RiRcpQ1FV+ArQ4X6YV9kcBVQUirGjy+YdBoXQhXF1g7 6tbOcGl1JERHDP/p9IrBxDpBKPRBJQ3YZ5mcbkyhyLtXekGlFSoFWVCUHZzvYYjyJu3ZA53WJCCn rvEzDSTK4FjP8iSsAcIuwnScSPSMO+XE9SHffL1ir7V81ASSkUepfLhBOkFFMdcPM3WDaJqqsZzK p6BBBU9kD7iag2xxqEbeOp+SJ/y8gJGZ+1KJmH5Xxw8SOsaPCJm7gglClFBkNvZkNo2oIlmhvHTt RyV3qWRl+DTXX6SY41aM9tCWxd2azWDjbWPGKaaDhkEkIJCmt06YW3rdmfZ6yI0xgSuhrDOdJJFx 6g9jF01SL3kac/Gbe2yGQQ5r2S1RD9D67Sh0kaKhMy24JvNItBWw6gMIx2UXVIKPb7ceMNW1qaqt fU8Npu5hQvd1lZl1ApLPAdE7gjz86XD3qZSCwdRYVdE6XAOhqzMQoqg7VKmwIwra04Dw084DZuN9 U16OmdpXThUsFaBBRpsfqkhJHwcIlmtYsYcI9K3a3OgUZSS2hl7eai3E/Fiw/NCWSY35ejgBFPNO L02SCNgbpTN9Bp6UwL8SfO5RBUTEndWQw+I8SKgktAMTYSKPIe9BKqbrK2htJvQns/Y/D57V8wDm UU6NA62uHW8vjYxE4sLUB7HemTXq6lLxDczKu+R+KFr30/MV26S9l36dEqYbzuk6fuu1tgApteKU atUJkOZJx4uf+8DotZMSxinzlhVGdx+qZSpPzq7OSfmLt0z+kEedMUhMsQBPDXAz1Dpin1W+ATdr Rr7KOj7iGT3Y0sNkW0VC5xBJFKtWSWvH7eGX83QcoRNKlK6ZdfAl4ngKPoZzf5gM5DWQmOJ4JZ5/ OD/8QEdDX4pN1he84YKaG6XaVTbzETZE7+JA2LGhlwmtH34fHaDWLj96VQEYRKmc928iir6XB7Cc SsKlaPApj1zfDsxMEskeSliZcc5VasHZ2eFUd1FmQQ83f/z13Im3hI/HMHh+59sF57Ip4G4jvPp0 ABN/PvuYIlt/YHKQI7sBt7pVUWVBZY5CiWeboohvFFS+gcSIOjqQVZo+HiGuTTDaMXdvtPRKi8xJ 9IS/DynJ+hnsZLWb5Z3w3b4Ie1jHhuEpB9kqOUdYgpsS52FoeOUMpJnpvhoKNWjDpq+WpC+yo/2L pMm10YSjWbThQzZb8PvXoRJzPi2OQ4TRVjcZa89PaS865BWDGzpnQjg9nMuhXnRDlLnoSyDHMLKq h51pHLi8EhjYBp+3YutiPLT5mVbp4RrmyRDTVKmz8bYWw/Hm8nhSW/k4+PInPE7ttT9OeSzJX2cB jhpz8tyMiIiX50gR7u2QBltl1Q4mepPVRRizf/umFzFUYkYC19TJgbt+BRu8wL0mMdhfzJBItUSX mgP4spCHTzT1gekyGlEo1D06feL5GBU3+nKtwuhWjZvNzcDVsxdJc650+38NzISOtOEBAA== --===============4150958105622313301==--