├── DIDestimators.ipynb ├── LICENSE ├── README.md ├── baker.csv └── baker.ipynb /DIDestimators.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "id": "7267b7b0", 6 | "metadata": {}, 7 | "source": [ 8 | "# Using R packages for DID estimators in Python" 9 | ] 10 | }, 11 | { 12 | "cell_type": "code", 13 | "execution_count": 18, 14 | "id": "ac0c55af", 15 | "metadata": {}, 16 | "outputs": [ 17 | { 18 | "data": { 19 | "text/plain": [ 20 | " [RTYPES.NILSXP]" 21 | ] 22 | }, 23 | "execution_count": 18, 24 | "metadata": {}, 25 | "output_type": "execute_result" 26 | } 27 | ], 28 | "source": [ 29 | "import pandas as pd\n", 30 | "import matplotlib.pyplot as plt\n", 31 | "import numpy as np\n", 32 | "from linearmodels.panel import PanelOLS\n", 33 | "\n", 34 | "import rpy2.robjects as ro\n", 35 | "from rpy2.robjects.packages import importr\n", 36 | "from rpy2.robjects import pandas2ri\n", 37 | "from rpy2.robjects.conversion import localconverter\n", 38 | "from rpy2.robjects import IntVector, Formula\n", 39 | "import rpy2.robjects.packages as rpackages\n", 40 | "utils = rpackages.importr('utils')\n", 41 | "utils.chooseCRANmirror(ind = 1)" 42 | ] 43 | }, 44 | { 45 | "cell_type": "markdown", 46 | "id": "60b6a5a8", 47 | "metadata": {}, 48 | "source": [ 49 | "### Import R packages" 50 | ] 51 | }, 52 | { 53 | "cell_type": "code", 54 | "execution_count": 3, 55 | "id": "fa29a6c9", 56 | "metadata": {}, 57 | "outputs": [], 58 | "source": [ 59 | "%%capture\n", 60 | "\n", 61 | "# Bacon Decomposition\n", 62 | "utils.install_packages(\"bacondecomp\")\n", 63 | "bacondecomp = rpackages.importr('bacondecomp')\n", 64 | "\n", 65 | "# Brantly Callaway, Pedro H.C. Sant’Anna (2020) estimator\n", 66 | "utils.install_packages(\"did\")\n", 67 | "did = rpackages.importr('did')\n", 68 | "\n", 69 | "# Clément de Chaisemartin, Xavier D’Haultfoeuille (2020)\n", 70 | "utils.install_packages(\"DIDmultiplegt\")\n", 71 | "DIDmultiplegt = rpackages.importr('DIDmultiplegt')\n", 72 | "\n", 73 | "# Pedro H.C. Sant’Anna , Jun Zhao (2020).\n", 74 | "utils.install_packages(\"DRDID\")\n", 75 | "DRDID = rpackages.importr('DRDID')\n", 76 | "\n", 77 | "# Liyang Sun, Sarah Abraham (2020)\n", 78 | "utils.install_packages(\"fixest\")\n", 79 | "fixest = rpackages.importr('fixest')\n", 80 | "\n", 81 | "# Kirill Borusyak, Xavier Jaravel, Jann Spiess (2021)\n", 82 | "utils.install_packages(\"didimputation\")\n", 83 | "didimputation = rpackages.importr('didimputation')\n", 84 | "\n", 85 | "# Gardner (2021)\n", 86 | "utils.install_packages(\"did2s\")\n", 87 | "did2s = rpackages.importr('did2s')\n", 88 | "\n", 89 | "# Broom package for working with fixest models\n", 90 | "utils.install_packages(\"broom\")\n", 91 | "broom = rpackages.importr('broom')" 92 | ] 93 | }, 94 | { 95 | "cell_type": "markdown", 96 | "id": "689673de", 97 | "metadata": {}, 98 | "source": [ 99 | "### Example using Baker dataset" 100 | ] 101 | }, 102 | { 103 | "cell_type": "code", 104 | "execution_count": 37, 105 | "id": "5a8c49fa", 106 | "metadata": {}, 107 | "outputs": [], 108 | "source": [ 109 | "# Import data\n", 110 | "baker = pd.read_csv(\"baker.csv\")\n", 111 | "\n", 112 | "# Set groups that are never-treated to have a value of 0 \n", 113 | "# This is easier for conversion to an R/rpy2 DataFrame\n", 114 | "# Since we do not have any never-treated units for the Baker df, we can skip that step.\n", 115 | "\n", 116 | "# Convert the pandas df to an R/rpy2 DataFrame for use with the R packages\n", 117 | "with localconverter(ro.default_converter + pandas2ri.converter):\n", 118 | " rbaker = ro.conversion.py2rpy(baker)" 119 | ] 120 | }, 121 | { 122 | "cell_type": "code", 123 | "execution_count": 39, 124 | "id": "551bea63", 125 | "metadata": {}, 126 | "outputs": [ 127 | { 128 | "data": { 129 | "text/html": [ 130 | "
\n", 131 | "\n", 144 | "\n", 145 | " \n", 146 | " \n", 147 | " \n", 148 | " \n", 149 | " \n", 150 | " \n", 151 | " \n", 152 | " \n", 153 | " \n", 154 | " \n", 155 | " \n", 156 | " \n", 157 | " \n", 158 | " \n", 159 | " \n", 160 | " \n", 161 | " \n", 162 | " \n", 163 | " \n", 164 | " \n", 165 | " \n", 166 | " \n", 167 | " \n", 168 | " \n", 169 | " \n", 170 | " \n", 171 | " \n", 172 | " \n", 173 | " \n", 174 | " \n", 175 | " \n", 176 | " \n", 177 | " \n", 178 | " \n", 179 | " \n", 180 | " \n", 181 | " \n", 182 | " \n", 183 | " \n", 184 | " \n", 185 | " \n", 186 | " \n", 187 | " \n", 188 | " \n", 189 | " \n", 190 | " \n", 191 | " \n", 192 | " \n", 193 | " \n", 194 | " \n", 195 | " \n", 196 | " \n", 197 | " \n", 198 | " \n", 199 | " \n", 200 | " \n", 201 | " \n", 202 | " \n", 203 | " \n", 204 | " \n", 205 | " \n", 206 | " \n", 207 | " \n", 208 | " \n", 209 | " \n", 210 | " \n", 211 | " \n", 212 | " \n", 213 | " \n", 214 | " \n", 215 | " \n", 216 | " \n", 217 | " \n", 218 | " \n", 219 | " \n", 220 | " \n", 221 | " \n", 222 | " \n", 223 | " \n", 224 | " \n", 225 | " \n", 226 | " \n", 227 | " \n", 228 | " \n", 229 | " \n", 230 | " \n", 231 | " \n", 232 | " \n", 233 | " \n", 234 | " \n", 235 | " \n", 236 | " \n", 237 | " \n", 238 | " \n", 239 | " \n", 240 | " \n", 241 | " \n", 242 | " \n", 243 | " \n", 244 | " \n", 245 | " \n", 246 | " \n", 247 | " \n", 248 | " \n", 249 | " \n", 250 | " \n", 251 | " \n", 252 | " \n", 253 | " \n", 254 | " \n", 255 | " \n", 256 | " \n", 257 | " \n", 258 | " \n", 259 | " \n", 260 | " \n", 261 | " \n", 262 | " \n", 263 | " \n", 264 | " \n", 265 | " \n", 266 | " \n", 267 | " \n", 268 | " \n", 269 | " \n", 270 | " \n", 271 | " \n", 272 | " \n", 273 | " \n", 274 | " \n", 275 | " \n", 276 | " \n", 277 | " \n", 278 | " \n", 279 | " \n", 280 | " \n", 281 | " \n", 282 | " \n", 283 | " \n", 284 | " \n", 285 | " \n", 286 | " \n", 287 | " \n", 288 | " \n", 289 | " \n", 290 | " \n", 291 | " \n", 292 | " \n", 293 | " \n", 294 | " \n", 295 | " \n", 296 | " \n", 297 | " \n", 298 | " \n", 299 | " \n", 300 | " \n", 301 | " \n", 302 | " \n", 303 | " \n", 304 | " \n", 305 | " \n", 306 | " \n", 307 | " \n", 308 | " \n", 309 | " \n", 310 | " \n", 311 | " \n", 312 | " \n", 313 | " \n", 314 | " \n", 315 | " \n", 316 | " \n", 317 | " \n", 318 | " \n", 319 | " \n", 320 | " \n", 321 | " \n", 322 | " \n", 323 | " \n", 324 | " \n", 325 | " \n", 326 | " \n", 327 | " \n", 328 | " \n", 329 | " \n", 330 | " \n", 331 | " \n", 332 | " \n", 333 | " \n", 334 | " \n", 335 | " \n", 336 | " \n", 337 | " \n", 338 | " \n", 339 | " \n", 340 | " \n", 341 | " \n", 342 | " \n", 343 | " \n", 344 | " \n", 345 | " \n", 346 | " \n", 347 | " \n", 348 | " \n", 349 | "
statefirmsyearnidgrouptreat_datetreatteey2y
individualtime
1198010.00034419801111986010.0304780.1486871.1490301.149030
198110.0003441981211198609.976846-0.2387071.7616371.761637
198210.0003441982311198609.9873400.1885333.1888773.188877
198310.00034419834111986010.0015810.1812644.1816074.181607
198410.00034419845111986010.021217-0.4883554.5119884.511988
..........................................
10002005404.95412220052610004200414.014460-0.03789134.93069038.945150
2006404.95412220062710004200414.0173210.30387336.27531644.309958
2007404.95412220072810004200414.0610080.37247137.38760149.570625
2008404.95412220082910004200413.9780570.53641938.46859854.380825
2009404.95412220093010004200413.916656-0.00021038.87056858.453847
\n", 350 | "

30000 rows × 12 columns

\n", 351 | "
" 352 | ], 353 | "text/plain": [ 354 | " state firms year n id group treat_date treat \\\n", 355 | "individual time \n", 356 | "1 1980 1 0.000344 1980 1 1 1 1986 0 \n", 357 | " 1981 1 0.000344 1981 2 1 1 1986 0 \n", 358 | " 1982 1 0.000344 1982 3 1 1 1986 0 \n", 359 | " 1983 1 0.000344 1983 4 1 1 1986 0 \n", 360 | " 1984 1 0.000344 1984 5 1 1 1986 0 \n", 361 | "... ... ... ... .. ... ... ... ... \n", 362 | "1000 2005 40 4.954122 2005 26 1000 4 2004 1 \n", 363 | " 2006 40 4.954122 2006 27 1000 4 2004 1 \n", 364 | " 2007 40 4.954122 2007 28 1000 4 2004 1 \n", 365 | " 2008 40 4.954122 2008 29 1000 4 2004 1 \n", 366 | " 2009 40 4.954122 2009 30 1000 4 2004 1 \n", 367 | "\n", 368 | " te e y2 y \n", 369 | "individual time \n", 370 | "1 1980 10.030478 0.148687 1.149030 1.149030 \n", 371 | " 1981 9.976846 -0.238707 1.761637 1.761637 \n", 372 | " 1982 9.987340 0.188533 3.188877 3.188877 \n", 373 | " 1983 10.001581 0.181264 4.181607 4.181607 \n", 374 | " 1984 10.021217 -0.488355 4.511988 4.511988 \n", 375 | "... ... ... ... ... \n", 376 | "1000 2005 4.014460 -0.037891 34.930690 38.945150 \n", 377 | " 2006 4.017321 0.303873 36.275316 44.309958 \n", 378 | " 2007 4.061008 0.372471 37.387601 49.570625 \n", 379 | " 2008 3.978057 0.536419 38.468598 54.380825 \n", 380 | " 2009 3.916656 -0.000210 38.870568 58.453847 \n", 381 | "\n", 382 | "[30000 rows x 12 columns]" 383 | ] 384 | }, 385 | "execution_count": 39, 386 | "metadata": {}, 387 | "output_type": "execute_result" 388 | } 389 | ], 390 | "source": [ 391 | "baker = baker.set_index(['individual', 'time'])\n", 392 | "baker" 393 | ] 394 | }, 395 | { 396 | "cell_type": "code", 397 | "execution_count": 7, 398 | "id": "ae57af15", 399 | "metadata": {}, 400 | "outputs": [], 401 | "source": [ 402 | "# Use the did2s R package to estimate TWFE, \n", 403 | "# Gardner (2021), \n", 404 | "# Callaway and Sant'Anna (2020),\n", 405 | "# Sun and Abraham (2020)\n", 406 | "# Borusyak, Jaravel, Spiess (2021)\n", 407 | "# Roth and Sant'Anna (2021)\n", 408 | "# This R package is helpful when you want to estimate a bunch of estimators at once and contrast them.\n", 409 | "# However, while we will focus on using individual commands for each estimators, in case this is helpful, \n", 410 | "# # The command has the following syntax, as defined for the Castle dataset.\n", 411 | "# Example code:\n", 412 | "# modelsr = did2s.event_study(data = rdata,\n", 413 | "# yname = 'l_homicide',\n", 414 | "# gname = 'effyear',\n", 415 | "# idname = 'sid',\n", 416 | "# tname = 'year')\n", 417 | "# Convert table containing estimates to a pandas df\n", 418 | "# with localconverter(ro.default_converter + pandas2ri.converter):\n", 419 | "# models = ro.conversion.rpy2py(modelsr)" 420 | ] 421 | }, 422 | { 423 | "cell_type": "markdown", 424 | "id": "d515fb7c", 425 | "metadata": {}, 426 | "source": [ 427 | "## Code for estimating models in Python" 428 | ] 429 | }, 430 | { 431 | "cell_type": "markdown", 432 | "id": "5781dd2c", 433 | "metadata": {}, 434 | "source": [ 435 | "The following sub-sections gives sample code you can adapt to estimate models using the packages listed above." 436 | ] 437 | }, 438 | { 439 | "cell_type": "markdown", 440 | "id": "7f218d12", 441 | "metadata": {}, 442 | "source": [ 443 | "### TWFE " 444 | ] 445 | }, 446 | { 447 | "cell_type": "code", 448 | "execution_count": 44, 449 | "id": "53e1f159", 450 | "metadata": {}, 451 | "outputs": [], 452 | "source": [ 453 | "baker['time_til'] = baker['year'] - baker['treat_date']\n", 454 | "baker['cons'] = 1\n", 455 | "baker = pd.concat([baker, pd.get_dummies(baker['time_til'], prefix = \"dd\")], axis = 1)\n", 456 | "dd = [dd for dd in baker.columns if dd.startswith(\"dd_\")]\n", 457 | "leads = {'dd_-1'}\n", 458 | "ind_cols = [ind for ind in dd if ind not in leads]" 459 | ] 460 | }, 461 | { 462 | "cell_type": "code", 463 | "execution_count": 60, 464 | "id": "ed726113", 465 | "metadata": {}, 466 | "outputs": [ 467 | { 468 | "name": "stderr", 469 | "output_type": "stream", 470 | "text": [ 471 | "C:\\Users\\sajidmu2\\Anaconda3\\lib\\site-packages\\linearmodels\\panel\\model.py:1831: AbsorbingEffectWarning: \n", 472 | "Variables have been fully absorbed and have removed from the regression:\n", 473 | "\n", 474 | "dd_18, dd_19, dd_20, dd_21, dd_22, dd_23\n", 475 | "\n", 476 | " warnings.warn(\n" 477 | ] 478 | }, 479 | { 480 | "data": { 481 | "image/png": "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\n", 482 | "text/plain": [ 483 | "
" 484 | ] 485 | }, 486 | "metadata": { 487 | "needs_background": "light" 488 | }, 489 | "output_type": "display_data" 490 | } 491 | ], 492 | "source": [ 493 | "twfe = PanelOLS(baker.y, baker[['cons'] + ind_cols], \n", 494 | " entity_effects = True, time_effects = True,\n", 495 | " check_rank = True, drop_absorbed = True).fit(cov_type = 'robust')\n", 496 | "\n", 497 | "het_err_series = twfe.params - twfe.conf_int()['lower']\n", 498 | "het_coef_df = pd.DataFrame({'coef': twfe.params.values[1:48],\n", 499 | " 'err': het_err_series.values[1:48],\n", 500 | " 'varname': het_err_series.index.values[1:48]\n", 501 | " })\n", 502 | "\n", 503 | "fig, ax = plt.subplots(figsize = (16, 10))\n", 504 | "het_coef_df.plot(x = 'varname', y = 'coef', kind = 'bar', \n", 505 | " ax = ax, color = 'none', \n", 506 | " yerr = 'err', legend = False)\n", 507 | "ax.set_ylabel('')\n", 508 | "ax.set_xlabel('')\n", 509 | "ax.axhline(y = 0, color= 'r', linestyle='-')\n", 510 | "ax.scatter(x = np.arange(het_coef_df.shape[0]), \n", 511 | " marker = 'o', s = 10, \n", 512 | " y = het_coef_df['coef'], color = 'black')\n", 513 | "ax.xaxis.set_ticks_position('none')" 514 | ] 515 | }, 516 | { 517 | "cell_type": "markdown", 518 | "id": "4029b218", 519 | "metadata": {}, 520 | "source": [ 521 | "### Callaway and Sant'Anna (2020) - did package" 522 | ] 523 | }, 524 | { 525 | "cell_type": "code", 526 | "execution_count": 10, 527 | "id": "4373c59a", 528 | "metadata": {}, 529 | "outputs": [ 530 | { 531 | "data": { 532 | "text/html": [ 533 | "
\n", 534 | "\n", 547 | "\n", 548 | " \n", 549 | " \n", 550 | " \n", 551 | " \n", 552 | " \n", 553 | " \n", 554 | " \n", 555 | " \n", 556 | " \n", 557 | " \n", 558 | " \n", 559 | " \n", 560 | " \n", 561 | " \n", 562 | " \n", 563 | " \n", 564 | " \n", 565 | " \n", 566 | " \n", 567 | " \n", 568 | " \n", 569 | " \n", 570 | " \n", 571 | " \n", 572 | " \n", 573 | " \n", 574 | " \n", 575 | " \n", 576 | " \n", 577 | " \n", 578 | " \n", 579 | " \n", 580 | " \n", 581 | " \n", 582 | " \n", 583 | " \n", 584 | " \n", 585 | " \n", 586 | " \n", 587 | " \n", 588 | " \n", 589 | " \n", 590 | " \n", 591 | " \n", 592 | " \n", 593 | " \n", 594 | " \n", 595 | " \n", 596 | " \n", 597 | " \n", 598 | " \n", 599 | " \n", 600 | " \n", 601 | " \n", 602 | " \n", 603 | " \n", 604 | " \n", 605 | " \n", 606 | " \n", 607 | " \n", 608 | " \n", 609 | " \n", 610 | " \n", 611 | " \n", 612 | " \n", 613 | " \n", 614 | " \n", 615 | " \n", 616 | " \n", 617 | " \n", 618 | " \n", 619 | " \n", 620 | " \n", 621 | " \n", 622 | " \n", 623 | " \n", 624 | " \n", 625 | " \n", 626 | " \n", 627 | " \n", 628 | " \n", 629 | " \n", 630 | " \n", 631 | " \n", 632 | " \n", 633 | " \n", 634 | " \n", 635 | " \n", 636 | " \n", 637 | " \n", 638 | " \n", 639 | " \n", 640 | " \n", 641 | " \n", 642 | " \n", 643 | " \n", 644 | " \n", 645 | " \n", 646 | " \n", 647 | " \n", 648 | " \n", 649 | " \n", 650 | " \n", 651 | " \n", 652 | " \n", 653 | " \n", 654 | " \n", 655 | " \n", 656 | " \n", 657 | " \n", 658 | " \n", 659 | " \n", 660 | " \n", 661 | " \n", 662 | " \n", 663 | " \n", 664 | " \n", 665 | " \n", 666 | " \n", 667 | " \n", 668 | " \n", 669 | " \n", 670 | " \n", 671 | " \n", 672 | " \n", 673 | " \n", 674 | " \n", 675 | " \n", 676 | " \n", 677 | " \n", 678 | " \n", 679 | " \n", 680 | " \n", 681 | " \n", 682 | " \n", 683 | " \n", 684 | " \n", 685 | " \n", 686 | " \n", 687 | " \n", 688 | " \n", 689 | " \n", 690 | " \n", 691 | " \n", 692 | " \n", 693 | " \n", 694 | " \n", 695 | " \n", 696 | " \n", 697 | " \n", 698 | " \n", 699 | " \n", 700 | " \n", 701 | " \n", 702 | " \n", 703 | " \n", 704 | " \n", 705 | " \n", 706 | " \n", 707 | " \n", 708 | " \n", 709 | " \n", 710 | " \n", 711 | " \n", 712 | " \n", 713 | " \n", 714 | " \n", 715 | " \n", 716 | " \n", 717 | " \n", 718 | " \n", 719 | " \n", 720 | " \n", 721 | " \n", 722 | " \n", 723 | " \n", 724 | " \n", 725 | " \n", 726 | " \n", 727 | " \n", 728 | " \n", 729 | " \n", 730 | " \n", 731 | " \n", 732 | " \n", 733 | " \n", 734 | " \n", 735 | " \n", 736 | " \n", 737 | " \n", 738 | " \n", 739 | " \n", 740 | " \n", 741 | " \n", 742 | " \n", 743 | " \n", 744 | " \n", 745 | " \n", 746 | " \n", 747 | " \n", 748 | " \n", 749 | " \n", 750 | " \n", 751 | " \n", 752 | " \n", 753 | " \n", 754 | " \n", 755 | " \n", 756 | " \n", 757 | " \n", 758 | " \n", 759 | " \n", 760 | " \n", 761 | " \n", 762 | " \n", 763 | " \n", 764 | " \n", 765 | " \n", 766 | " \n", 767 | " \n", 768 | " \n", 769 | " \n", 770 | " \n", 771 | " \n", 772 | " \n", 773 | " \n", 774 | " \n", 775 | " \n", 776 | " \n", 777 | " \n", 778 | " \n", 779 | " \n", 780 | " \n", 781 | " \n", 782 | " \n", 783 | " \n", 784 | " \n", 785 | " \n", 786 | " \n", 787 | " \n", 788 | " \n", 789 | " \n", 790 | " \n", 791 | " \n", 792 | " \n", 793 | " \n", 794 | " \n", 795 | " \n", 796 | " \n", 797 | " \n", 798 | " \n", 799 | " \n", 800 | " \n", 801 | " \n", 802 | " \n", 803 | " \n", 804 | " \n", 805 | " \n", 806 | " \n", 807 | " \n", 808 | " \n", 809 | " \n", 810 | " \n", 811 | " \n", 812 | " \n", 813 | " \n", 814 | " \n", 815 | " \n", 816 | " \n", 817 | " \n", 818 | " \n", 819 | " \n", 820 | " \n", 821 | " \n", 822 | " \n", 823 | " \n", 824 | " \n", 825 | " \n", 826 | " \n", 827 | " \n", 828 | " \n", 829 | " \n", 830 | " \n", 831 | " \n", 832 | " \n", 833 | " \n", 834 | " \n", 835 | " \n", 836 | " \n", 837 | " \n", 838 | " \n", 839 | " \n", 840 | " \n", 841 | " \n", 842 | " \n", 843 | " \n", 844 | " \n", 845 | " \n", 846 | " \n", 847 | " \n", 848 | " \n", 849 | " \n", 850 | " \n", 851 | " \n", 852 | " \n", 853 | " \n", 854 | " \n", 855 | " \n", 856 | " \n", 857 | " \n", 858 | " \n", 859 | " \n", 860 | " \n", 861 | " \n", 862 | " \n", 863 | " \n", 864 | " \n", 865 | " \n", 866 | " \n", 867 | " \n", 868 | " \n", 869 | " \n", 870 | " \n", 871 | " \n", 872 | " \n", 873 | " \n", 874 | " \n", 875 | " \n", 876 | " \n", 877 | " \n", 878 | " \n", 879 | " \n", 880 | " \n", 881 | " \n", 882 | " \n", 883 | " \n", 884 | " \n", 885 | " \n", 886 | " \n", 887 | " \n", 888 | " \n", 889 | " \n", 890 | " \n", 891 | " \n", 892 | " \n", 893 | " \n", 894 | " \n", 895 | " \n", 896 | " \n", 897 | " \n", 898 | " \n", 899 | " \n", 900 | " \n", 901 | " \n", 902 | " \n", 903 | " \n", 904 | " \n", 905 | " \n", 906 | " \n", 907 | " \n", 908 | " \n", 909 | " \n", 910 | " \n", 911 | " \n", 912 | " \n", 913 | " \n", 914 | " \n", 915 | " \n", 916 | " \n", 917 | " \n", 918 | " \n", 919 | " \n", 920 | " \n", 921 | " \n", 922 | " \n", 923 | " \n", 924 | " \n", 925 | " \n", 926 | " \n", 927 | " \n", 928 | " \n", 929 | " \n", 930 | " \n", 931 | " \n", 932 | " \n", 933 | " \n", 934 | " \n", 935 | " \n", 936 | " \n", 937 | " \n", 938 | " \n", 939 | " \n", 940 | " \n", 941 | " \n", 942 | " \n", 943 | " \n", 944 | " \n", 945 | " \n", 946 | " \n", 947 | " \n", 948 | " \n", 949 | " \n", 950 | " \n", 951 | " \n", 952 | " \n", 953 | " \n", 954 | " \n", 955 | " \n", 956 | " \n", 957 | " \n", 958 | " \n", 959 | " \n", 960 | " \n", 961 | " \n", 962 | " \n", 963 | " \n", 964 | " \n", 965 | " \n", 966 | " \n", 967 | " \n", 968 | " \n", 969 | " \n", 970 | " \n", 971 | " \n", 972 | " \n", 973 | " \n", 974 | " \n", 975 | " \n", 976 | " \n", 977 | " \n", 978 | " \n", 979 | " \n", 980 | " \n", 981 | " \n", 982 | " \n", 983 | " \n", 984 | "
typetermevent.timeestimatestd.errorconf.lowconf.highpoint.conf.lowpoint.conf.high
1dynamicATT(-17)-17.0-0.0175310.027248-0.1015020.066439-0.0709370.035874
2dynamicATT(-16)-16.0-0.0098970.026398-0.0912460.071452-0.0616350.041842
3dynamicATT(-15)-15.00.0338610.025256-0.0439690.111691-0.0156390.083361
4dynamicATT(-14)-14.0-0.0086870.026462-0.0902340.072860-0.0605510.043177
5dynamicATT(-13)-13.00.0107690.025868-0.0689490.090486-0.0399320.061469
6dynamicATT(-12)-12.0-0.0245170.024753-0.1007980.051764-0.0730320.023998
7dynamicATT(-11)-11.0-0.0021780.020089-0.0640860.059730-0.0415520.037196
8dynamicATT(-10)-10.00.0248910.018604-0.0324420.082223-0.0115730.061354
9dynamicATT(-9)-9.0-0.0161600.018425-0.0729400.040619-0.0522720.019952
10dynamicATT(-8)-8.00.0172240.019280-0.0421920.076639-0.0205650.055012
11dynamicATT(-7)-7.0-0.0005830.017486-0.0544700.053303-0.0348560.033689
12dynamicATT(-6)-6.0-0.0262000.021407-0.0921690.039770-0.0681560.015757
13dynamicATT(-5)-5.00.0143510.016567-0.0367030.065405-0.0181200.046821
14dynamicATT(-4)-4.0-0.0144170.016100-0.0640320.035199-0.0459730.017139
15dynamicATT(-3)-3.0-0.0090110.016761-0.0606620.042640-0.0418610.023839
16dynamicATT(-2)-2.0-0.0072380.016655-0.0585630.044086-0.0398810.025404
17dynamicATT(-1)-1.00.0096000.016298-0.0406250.059824-0.0223430.041542
18dynamicATT(0)0.08.0024560.0621527.8109248.1939887.8806418.124271
19dynamicATT(1)1.016.0102340.12471015.62591416.39455315.76580616.254662
20dynamicATT(2)2.024.0204650.16782723.50327424.53765523.69153124.349399
21dynamicATT(3)3.032.0137580.22530331.31944332.70807331.57217232.455344
22dynamicATT(4)4.040.0317190.29805539.11320640.95023239.44754340.615895
23dynamicATT(5)5.048.0338240.34138746.98177249.08587547.36471748.702931
24dynamicATT(6)6.062.9774300.31996161.99140763.96345262.35031863.604542
25dynamicATT(7)7.071.9723100.34164970.91945173.02516971.30269072.641930
26dynamicATT(8)8.081.0301470.40971279.76754182.29275480.22712781.833168
27dynamicATT(9)9.089.9928710.42869488.67176691.31397789.15264690.833097
28dynamicATT(10)10.099.0378580.48193397.552688100.52302898.09328799.982429
29dynamicATT(11)11.0108.0150150.566158106.270287109.759742106.905364109.124665
30dynamicATT(12)12.0129.9868950.047488129.840552130.133239129.893820130.079970
31dynamicATT(13)13.0139.9975790.048637139.847693140.147464139.902251140.092906
32dynamicATT(14)14.0149.9584720.051223149.800619150.116324149.858077150.058866
33dynamicATT(15)15.0159.9931520.049177159.841602160.144701159.896766160.089538
34dynamicATT(16)16.0169.9947720.054457169.826954170.162591169.888040170.101505
35dynamicATT(17)17.0180.0779330.057241179.901533180.254334179.965742180.190124
\n", 985 | "
" 986 | ], 987 | "text/plain": [ 988 | " type term event.time estimate std.error conf.low \\\n", 989 | "1 dynamic ATT(-17) -17.0 -0.017531 0.027248 -0.101502 \n", 990 | "2 dynamic ATT(-16) -16.0 -0.009897 0.026398 -0.091246 \n", 991 | "3 dynamic ATT(-15) -15.0 0.033861 0.025256 -0.043969 \n", 992 | "4 dynamic ATT(-14) -14.0 -0.008687 0.026462 -0.090234 \n", 993 | "5 dynamic ATT(-13) -13.0 0.010769 0.025868 -0.068949 \n", 994 | "6 dynamic ATT(-12) -12.0 -0.024517 0.024753 -0.100798 \n", 995 | "7 dynamic ATT(-11) -11.0 -0.002178 0.020089 -0.064086 \n", 996 | "8 dynamic ATT(-10) -10.0 0.024891 0.018604 -0.032442 \n", 997 | "9 dynamic ATT(-9) -9.0 -0.016160 0.018425 -0.072940 \n", 998 | "10 dynamic ATT(-8) -8.0 0.017224 0.019280 -0.042192 \n", 999 | "11 dynamic ATT(-7) -7.0 -0.000583 0.017486 -0.054470 \n", 1000 | "12 dynamic ATT(-6) -6.0 -0.026200 0.021407 -0.092169 \n", 1001 | "13 dynamic ATT(-5) -5.0 0.014351 0.016567 -0.036703 \n", 1002 | "14 dynamic ATT(-4) -4.0 -0.014417 0.016100 -0.064032 \n", 1003 | "15 dynamic ATT(-3) -3.0 -0.009011 0.016761 -0.060662 \n", 1004 | "16 dynamic ATT(-2) -2.0 -0.007238 0.016655 -0.058563 \n", 1005 | "17 dynamic ATT(-1) -1.0 0.009600 0.016298 -0.040625 \n", 1006 | "18 dynamic ATT(0) 0.0 8.002456 0.062152 7.810924 \n", 1007 | "19 dynamic ATT(1) 1.0 16.010234 0.124710 15.625914 \n", 1008 | "20 dynamic ATT(2) 2.0 24.020465 0.167827 23.503274 \n", 1009 | "21 dynamic ATT(3) 3.0 32.013758 0.225303 31.319443 \n", 1010 | "22 dynamic ATT(4) 4.0 40.031719 0.298055 39.113206 \n", 1011 | "23 dynamic ATT(5) 5.0 48.033824 0.341387 46.981772 \n", 1012 | "24 dynamic ATT(6) 6.0 62.977430 0.319961 61.991407 \n", 1013 | "25 dynamic ATT(7) 7.0 71.972310 0.341649 70.919451 \n", 1014 | "26 dynamic ATT(8) 8.0 81.030147 0.409712 79.767541 \n", 1015 | "27 dynamic ATT(9) 9.0 89.992871 0.428694 88.671766 \n", 1016 | "28 dynamic ATT(10) 10.0 99.037858 0.481933 97.552688 \n", 1017 | "29 dynamic ATT(11) 11.0 108.015015 0.566158 106.270287 \n", 1018 | "30 dynamic ATT(12) 12.0 129.986895 0.047488 129.840552 \n", 1019 | "31 dynamic ATT(13) 13.0 139.997579 0.048637 139.847693 \n", 1020 | "32 dynamic ATT(14) 14.0 149.958472 0.051223 149.800619 \n", 1021 | "33 dynamic ATT(15) 15.0 159.993152 0.049177 159.841602 \n", 1022 | "34 dynamic ATT(16) 16.0 169.994772 0.054457 169.826954 \n", 1023 | "35 dynamic ATT(17) 17.0 180.077933 0.057241 179.901533 \n", 1024 | "\n", 1025 | " conf.high point.conf.low point.conf.high \n", 1026 | "1 0.066439 -0.070937 0.035874 \n", 1027 | "2 0.071452 -0.061635 0.041842 \n", 1028 | "3 0.111691 -0.015639 0.083361 \n", 1029 | "4 0.072860 -0.060551 0.043177 \n", 1030 | "5 0.090486 -0.039932 0.061469 \n", 1031 | "6 0.051764 -0.073032 0.023998 \n", 1032 | "7 0.059730 -0.041552 0.037196 \n", 1033 | "8 0.082223 -0.011573 0.061354 \n", 1034 | "9 0.040619 -0.052272 0.019952 \n", 1035 | "10 0.076639 -0.020565 0.055012 \n", 1036 | "11 0.053303 -0.034856 0.033689 \n", 1037 | "12 0.039770 -0.068156 0.015757 \n", 1038 | "13 0.065405 -0.018120 0.046821 \n", 1039 | "14 0.035199 -0.045973 0.017139 \n", 1040 | "15 0.042640 -0.041861 0.023839 \n", 1041 | "16 0.044086 -0.039881 0.025404 \n", 1042 | "17 0.059824 -0.022343 0.041542 \n", 1043 | "18 8.193988 7.880641 8.124271 \n", 1044 | "19 16.394553 15.765806 16.254662 \n", 1045 | "20 24.537655 23.691531 24.349399 \n", 1046 | "21 32.708073 31.572172 32.455344 \n", 1047 | "22 40.950232 39.447543 40.615895 \n", 1048 | "23 49.085875 47.364717 48.702931 \n", 1049 | "24 63.963452 62.350318 63.604542 \n", 1050 | "25 73.025169 71.302690 72.641930 \n", 1051 | "26 82.292754 80.227127 81.833168 \n", 1052 | "27 91.313977 89.152646 90.833097 \n", 1053 | "28 100.523028 98.093287 99.982429 \n", 1054 | "29 109.759742 106.905364 109.124665 \n", 1055 | "30 130.133239 129.893820 130.079970 \n", 1056 | "31 140.147464 139.902251 140.092906 \n", 1057 | "32 150.116324 149.858077 150.058866 \n", 1058 | "33 160.144701 159.896766 160.089538 \n", 1059 | "34 170.162591 169.888040 170.101505 \n", 1060 | "35 180.254334 179.965742 180.190124 " 1061 | ] 1062 | }, 1063 | "execution_count": 10, 1064 | "metadata": {}, 1065 | "output_type": "execute_result" 1066 | } 1067 | ], 1068 | "source": [ 1069 | "# Estimate model, using the data converted to an R/rpy2 DataFrame\n", 1070 | "\n", 1071 | "get_att_gt = did.att_gt(data = rbaker,\n", 1072 | " yname = 'y',\n", 1073 | " tname = 'time',\n", 1074 | " idname = 'individual',\n", 1075 | " gname = 'treat_date', \n", 1076 | " control_group = 'notyettreated')\n", 1077 | "\n", 1078 | "# Aggregate results and extract for converting to a Pandas df\n", 1079 | "# You can toggle the aggregation type for whatever you want\n", 1080 | "csdid_results_r = did.tidy_AGGTEobj(did.aggte(get_att_gt, type = \"dynamic\"))\n", 1081 | "\n", 1082 | "# The results table is an R/rpy2 dataframe. Convert this to a Pandas df\n", 1083 | "with localconverter(ro.default_converter + pandas2ri.converter):\n", 1084 | " csdid_results = ro.conversion.rpy2py(csdid_results_r)\n", 1085 | "\n", 1086 | "# Print table\n", 1087 | "csdid_results" 1088 | ] 1089 | }, 1090 | { 1091 | "cell_type": "markdown", 1092 | "id": "584f1fa2", 1093 | "metadata": {}, 1094 | "source": [ 1095 | "### Sun and Abraham (2020 )- uses sunab in the fixest R package" 1096 | ] 1097 | }, 1098 | { 1099 | "cell_type": "code", 1100 | "execution_count": 63, 1101 | "id": "89d30737", 1102 | "metadata": {}, 1103 | "outputs": [ 1104 | { 1105 | "data": { 1106 | "text/html": [ 1107 | "
\n", 1108 | "\n", 1121 | "\n", 1122 | " \n", 1123 | " \n", 1124 | " \n", 1125 | " \n", 1126 | " \n", 1127 | " \n", 1128 | " \n", 1129 | " \n", 1130 | " \n", 1131 | " \n", 1132 | " \n", 1133 | " \n", 1134 | " \n", 1135 | " \n", 1136 | " \n", 1137 | " \n", 1138 | " \n", 1139 | " \n", 1140 | " \n", 1141 | " \n", 1142 | " \n", 1143 | " \n", 1144 | " \n", 1145 | " \n", 1146 | " \n", 1147 | " \n", 1148 | " \n", 1149 | " \n", 1150 | " \n", 1151 | " \n", 1152 | " \n", 1153 | " \n", 1154 | " \n", 1155 | " \n", 1156 | " \n", 1157 | " \n", 1158 | " \n", 1159 | " \n", 1160 | " \n", 1161 | " \n", 1162 | " \n", 1163 | " \n", 1164 | " \n", 1165 | " \n", 1166 | " \n", 1167 | " \n", 1168 | " \n", 1169 | " \n", 1170 | " \n", 1171 | " \n", 1172 | " \n", 1173 | " \n", 1174 | " \n", 1175 | " \n", 1176 | " \n", 1177 | " \n", 1178 | " \n", 1179 | " \n", 1180 | " \n", 1181 | " \n", 1182 | " \n", 1183 | " \n", 1184 | " \n", 1185 | " \n", 1186 | " \n", 1187 | " \n", 1188 | " \n", 1189 | " \n", 1190 | " \n", 1191 | " \n", 1192 | " \n", 1193 | " \n", 1194 | " \n", 1195 | " \n", 1196 | " \n", 1197 | " \n", 1198 | " \n", 1199 | " \n", 1200 | " \n", 1201 | " \n", 1202 | " \n", 1203 | " \n", 1204 | " \n", 1205 | " \n", 1206 | " \n", 1207 | " \n", 1208 | " \n", 1209 | " \n", 1210 | " \n", 1211 | " \n", 1212 | " \n", 1213 | " \n", 1214 | " \n", 1215 | " \n", 1216 | " \n", 1217 | " \n", 1218 | " \n", 1219 | " \n", 1220 | " \n", 1221 | " \n", 1222 | " \n", 1223 | " \n", 1224 | " \n", 1225 | " \n", 1226 | " \n", 1227 | " \n", 1228 | " \n", 1229 | " \n", 1230 | " \n", 1231 | " \n", 1232 | " \n", 1233 | " \n", 1234 | " \n", 1235 | " \n", 1236 | " \n", 1237 | " \n", 1238 | " \n", 1239 | " \n", 1240 | " \n", 1241 | " \n", 1242 | " \n", 1243 | " \n", 1244 | " \n", 1245 | " \n", 1246 | " \n", 1247 | " \n", 1248 | " \n", 1249 | " \n", 1250 | " \n", 1251 | " \n", 1252 | " \n", 1253 | " \n", 1254 | " \n", 1255 | " \n", 1256 | " \n", 1257 | " \n", 1258 | " \n", 1259 | " \n", 1260 | " \n", 1261 | " \n", 1262 | " \n", 1263 | " \n", 1264 | " \n", 1265 | " \n", 1266 | " \n", 1267 | " \n", 1268 | " \n", 1269 | " \n", 1270 | " \n", 1271 | " \n", 1272 | " \n", 1273 | " \n", 1274 | " \n", 1275 | " \n", 1276 | " \n", 1277 | " \n", 1278 | " \n", 1279 | " \n", 1280 | " \n", 1281 | " \n", 1282 | " \n", 1283 | " \n", 1284 | " \n", 1285 | " \n", 1286 | " \n", 1287 | " \n", 1288 | " \n", 1289 | " \n", 1290 | " \n", 1291 | " \n", 1292 | " \n", 1293 | " \n", 1294 | " \n", 1295 | " \n", 1296 | " \n", 1297 | " \n", 1298 | " \n", 1299 | " \n", 1300 | " \n", 1301 | " \n", 1302 | " \n", 1303 | " \n", 1304 | " \n", 1305 | " \n", 1306 | " \n", 1307 | " \n", 1308 | " \n", 1309 | " \n", 1310 | " \n", 1311 | " \n", 1312 | " \n", 1313 | " \n", 1314 | " \n", 1315 | " \n", 1316 | " \n", 1317 | " \n", 1318 | " \n", 1319 | " \n", 1320 | " \n", 1321 | " \n", 1322 | " \n", 1323 | " \n", 1324 | " \n", 1325 | " \n", 1326 | " \n", 1327 | " \n", 1328 | " \n", 1329 | " \n", 1330 | " \n", 1331 | " \n", 1332 | " \n", 1333 | " \n", 1334 | " \n", 1335 | " \n", 1336 | " \n", 1337 | " \n", 1338 | " \n", 1339 | " \n", 1340 | " \n", 1341 | " \n", 1342 | " \n", 1343 | " \n", 1344 | " \n", 1345 | " \n", 1346 | " \n", 1347 | " \n", 1348 | " \n", 1349 | " \n", 1350 | " \n", 1351 | " \n", 1352 | " \n", 1353 | " \n", 1354 | " \n", 1355 | " \n", 1356 | " \n", 1357 | " \n", 1358 | " \n", 1359 | " \n", 1360 | " \n", 1361 | " \n", 1362 | " \n", 1363 | " \n", 1364 | " \n", 1365 | " \n", 1366 | " \n", 1367 | " \n", 1368 | " \n", 1369 | " \n", 1370 | " \n", 1371 | " \n", 1372 | " \n", 1373 | " \n", 1374 | " \n", 1375 | " \n", 1376 | " \n", 1377 | " \n", 1378 | " \n", 1379 | " \n", 1380 | " \n", 1381 | " \n", 1382 | " \n", 1383 | " \n", 1384 | " \n", 1385 | " \n", 1386 | " \n", 1387 | " \n", 1388 | " \n", 1389 | " \n", 1390 | " \n", 1391 | " \n", 1392 | " \n", 1393 | " \n", 1394 | " \n", 1395 | " \n", 1396 | " \n", 1397 | " \n", 1398 | " \n", 1399 | " \n", 1400 | " \n", 1401 | " \n", 1402 | " \n", 1403 | " \n", 1404 | " \n", 1405 | " \n", 1406 | " \n", 1407 | " \n", 1408 | " \n", 1409 | " \n", 1410 | " \n", 1411 | " \n", 1412 | " \n", 1413 | " \n", 1414 | "
termestimatestd.errorstatisticp.value
1time::-180.0359150.0327841.0955150.273555
2time::-170.0189630.0318150.5960200.551297
3time::-160.0144020.0319910.4502070.652659
4time::-150.0467380.0315581.4810320.138913
5time::-140.0376200.0324661.1587530.246834
6time::-130.0433900.0314131.3812780.167502
7time::-12-0.0100920.022505-0.4484180.653949
8time::-11-0.0194760.023937-0.8136380.416046
9time::-100.0102290.0222020.4607130.645105
10time::-90.0025930.0229950.1127610.910243
11time::-80.0032860.0226820.1448610.884850
12time::-70.0219190.0191151.1467210.251772
13time::-6-0.0045190.018791-0.2405040.809989
14time::-50.0047200.0184780.2554340.798440
15time::-4-0.0014600.017715-0.0823980.934347
16time::-3-0.0086170.018591-0.4634970.643109
17time::-2-0.0179400.018094-0.9914670.321697
18time::07.9888480.018820424.4912040.000000
19time::115.9999420.018842849.1500180.000000
20time::224.0107560.0188231275.5992570.000000
21time::331.9984020.0192941658.4696660.000000
22time::440.0157930.0196132040.2470090.000000
23time::548.0283990.0176902714.9404410.000000
24time::662.9701060.0269002340.9055920.000000
25time::771.9763020.0263612730.4425780.000000
26time::881.0243320.0283132861.7442840.000000
27time::989.9777260.0281453196.9818550.000000
28time::1099.0327930.0295043356.5862290.000000
29time::11108.0041670.0314813430.8232180.000000
30time::12129.9868950.0464252799.9350210.000000
31time::13139.9975790.0469902979.2898150.000000
32time::14149.9584720.0498333009.2304670.000000
33time::15159.9931520.0497083218.6888080.000000
34time::16169.9947720.0547443105.2825590.000000
35time::17180.0779330.0563763194.2104220.000000
\n", 1415 | "
" 1416 | ], 1417 | "text/plain": [ 1418 | " term estimate std.error statistic p.value\n", 1419 | "1 time::-18 0.035915 0.032784 1.095515 0.273555\n", 1420 | "2 time::-17 0.018963 0.031815 0.596020 0.551297\n", 1421 | "3 time::-16 0.014402 0.031991 0.450207 0.652659\n", 1422 | "4 time::-15 0.046738 0.031558 1.481032 0.138913\n", 1423 | "5 time::-14 0.037620 0.032466 1.158753 0.246834\n", 1424 | "6 time::-13 0.043390 0.031413 1.381278 0.167502\n", 1425 | "7 time::-12 -0.010092 0.022505 -0.448418 0.653949\n", 1426 | "8 time::-11 -0.019476 0.023937 -0.813638 0.416046\n", 1427 | "9 time::-10 0.010229 0.022202 0.460713 0.645105\n", 1428 | "10 time::-9 0.002593 0.022995 0.112761 0.910243\n", 1429 | "11 time::-8 0.003286 0.022682 0.144861 0.884850\n", 1430 | "12 time::-7 0.021919 0.019115 1.146721 0.251772\n", 1431 | "13 time::-6 -0.004519 0.018791 -0.240504 0.809989\n", 1432 | "14 time::-5 0.004720 0.018478 0.255434 0.798440\n", 1433 | "15 time::-4 -0.001460 0.017715 -0.082398 0.934347\n", 1434 | "16 time::-3 -0.008617 0.018591 -0.463497 0.643109\n", 1435 | "17 time::-2 -0.017940 0.018094 -0.991467 0.321697\n", 1436 | "18 time::0 7.988848 0.018820 424.491204 0.000000\n", 1437 | "19 time::1 15.999942 0.018842 849.150018 0.000000\n", 1438 | "20 time::2 24.010756 0.018823 1275.599257 0.000000\n", 1439 | "21 time::3 31.998402 0.019294 1658.469666 0.000000\n", 1440 | "22 time::4 40.015793 0.019613 2040.247009 0.000000\n", 1441 | "23 time::5 48.028399 0.017690 2714.940441 0.000000\n", 1442 | "24 time::6 62.970106 0.026900 2340.905592 0.000000\n", 1443 | "25 time::7 71.976302 0.026361 2730.442578 0.000000\n", 1444 | "26 time::8 81.024332 0.028313 2861.744284 0.000000\n", 1445 | "27 time::9 89.977726 0.028145 3196.981855 0.000000\n", 1446 | "28 time::10 99.032793 0.029504 3356.586229 0.000000\n", 1447 | "29 time::11 108.004167 0.031481 3430.823218 0.000000\n", 1448 | "30 time::12 129.986895 0.046425 2799.935021 0.000000\n", 1449 | "31 time::13 139.997579 0.046990 2979.289815 0.000000\n", 1450 | "32 time::14 149.958472 0.049833 3009.230467 0.000000\n", 1451 | "33 time::15 159.993152 0.049708 3218.688808 0.000000\n", 1452 | "34 time::16 169.994772 0.054744 3105.282559 0.000000\n", 1453 | "35 time::17 180.077933 0.056376 3194.210422 0.000000" 1454 | ] 1455 | }, 1456 | "execution_count": 63, 1457 | "metadata": {}, 1458 | "output_type": "execute_result" 1459 | } 1460 | ], 1461 | "source": [ 1462 | "# Estimate model, using your dataset converted to an R/rpy2 DataFrame\n", 1463 | "\n", 1464 | "sunab_mod = fixest.feols(fml = Formula(\"y ~ sunab(treat_date, time) | individual + time\"), \n", 1465 | " subset = Formula('~year < 2004'),\n", 1466 | " data = rbaker)\n", 1467 | "\n", 1468 | "# Get results table \n", 1469 | "sunab_resultsr = broom.tidy_fixest(sunab_mod)\n", 1470 | "\n", 1471 | "# The results table is an R/rpy2 dataframe. Convert this to a Pandas df\n", 1472 | "with localconverter(ro.default_converter + pandas2ri.converter):\n", 1473 | " sunab_results = ro.conversion.rpy2py(sunab_resultsr)\n", 1474 | "\n", 1475 | "# Print table\n", 1476 | "sunab_results" 1477 | ] 1478 | }, 1479 | { 1480 | "cell_type": "code", 1481 | "execution_count": 66, 1482 | "id": "a4346683", 1483 | "metadata": {}, 1484 | "outputs": [ 1485 | { 1486 | "data": { 1487 | "text/plain": [ 1488 | "Text(0.5, 0.98, 'DID Estimators - Baker data')" 1489 | ] 1490 | }, 1491 | "execution_count": 66, 1492 | "metadata": {}, 1493 | "output_type": "execute_result" 1494 | }, 1495 | { 1496 | "data": { 1497 | "image/png": "iVBORw0KGgoAAAANSUhEUgAABZsAAAPoCAYAAAC4aCA8AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAACy+ElEQVR4nOzdeZxrdXn48c8DuMWFRRARUZTighvqLWpxQcVIrQavS2Vciiva3nGvVVtbsdZ9q8vVFpWL+tNRFJG4hyKg4gIXRdkFBQVBQHGPss3z++Oc8YaQmcnMyUySyef9euU1yTnn+3y/yZwkJ0++eU5kJpIkSZIkSZIkVbHVsAcgSZIkSZIkSRp/JpslSZIkSZIkSZWZbJYkSZIkSZIkVWayWZIkSZIkSZJUmclmSZIkSZIkSVJlJpslSZIkSZIkSZWZbJYkSVrDImK/iMiOy37DHpNGT0Rc2LGPHDHs8SxXROzetb8/c9hjkiRJmiQmmyVJ0sjpkTDKiLg2Iv4YET+PiO9GxAcj4pEREfPEOHShJOs88dsR8YuIODUiPhoRB0bE1ssY/zN7xO91OWFZD9A897FKrGFbK8nOQVhg/7k2In4bEWdExGERsfewxzoJ1tLzTJIkaaVtM+wBSJIk9WlroFZebgfsAzwX+E5ETGXmhQOIf7PysjNwP+AZwDll/NMqxh+WHwOv6Lqt8bQ1cCvgHuXlmRGxPjO/ONxhSZIkSQWTzZIkaRxsBj5FkQi+M/BYYMdy3QOBb0fE32TmBcuM/xPgA8BNgDsAfwvsVq67G/DNiNgvMzcvM/6nKO5Dt4uWGa9vmXkR8PaV7mdcRcQ2wI0y80/DHssC5vafbSi+ZFlfLr8R8F/Amkk2R8StMvN3wx6HJEmSlscyGpIkaRycmZlvz8zXZ+azgDsC/69j/W2BIyrEv6iM/4bMfD5FQvstHetvDnwyIm60zPhfKeN3Xz7VuVFE7BoR746Is8qSIVdHxGURcVpEHB4RTyy326/8Of9ru9p3llw4onPbXuVEepQauVVEvLMsVdKOiG9HxP7ltreOiP8tx/PniNgcEY/tvqNlfx8q118SEX8qt/9ZRHw2Iupd2x9R3pc7diw+eIExR0RMRcSXy7FcHRG/KUurvDoibtVjTNcr0RER94qIYyLiV8A1wAPK7e4aER+OiPPKcV8VEZdGxCkR8YGIeOTi/+oVMbf/vDkznwCc0bHu7p0bRsQOEfGWiDg2Ii4oy25cExG/iohvRcQrIuJm/XYcEdtGxHc6Hr/fRsRDO9bvFhFvi4gfRsTvy8fsJ1GUublrj3jd+9zNI+JNZZtrgPf0Oa5dyv/VZeX/6rSIeB7Qs6zOch6bJT7PtomI10fEFyPi/Ii4soz9m/K58PqI2L6f+yZJkjTOnNksSZLGTma2I+JZwH2Ae5WLHxoR+2TmyQOIfy3wqoi4F/CYcvEeFDNKj6wav5eI2BE4Bdila9Vtyst9KJLgR61E/6XjgHUdtx8IfCUipoA3UTwGc+4PHBMR+2fm8R3LHws8p0fs3crL+oj418x801IHVyYCjwYe3bVqW4oZv/sAz4uIR2fmefOEuTfwbYovEDpj35Vi9vAtura/bXlZRzGz/riljntQoqgf/tcUs+/nXNK12e2Af+nRfAfgQeXloIh4aGb+cZH+tgW+SpmMB34FHDA3wz8iHgN8ErhlV9M7UZS4eXpEPC0zP7tAN18GHrLQOHqM6/bAt9jy6wMonh+HAZ9foOnAHpsebgq8psfybSmeK/cHnhERD8zMXywxtiRJ0tgw2SxJksZSZl4bEYcD7+pY/EigcrK5wwfZkmyei7+cZPMBZTK525cz88zy+pPYkmj+M7CJoszGThSzfh/W0W6uDnMdeFTH8s7azJ2zX/t1P4r7/AdgmqJMw9YU9/k6imTen4F/ojiO3IoiedeZbP4j8A3gh8CVQJsi4bY/WxLZr4uIj2TmJRTJyjOAfwXmZn7OlU3pvL8A7+T6ieZvA8cCdwEOKpfdiSIJfu/yS4Nu9y3vy8eBc4G/Ksf8LLYkmn9D8fj/kqJ+9x7AQ7sDraJNEbFpnnVv7Lo9C5xD8Tz4BfBr4MYUM6CfRPF/ux/wjyxQXqVHovlS4FFz+2tE3BH4NEUNdYALKPaTPwMHAntTJGA/HhH3yMyfzNPVQ8qxHktRxubX842pw3u5fqL5GxT74P2Axy3QbqmPzVKeZ0nxGHwH+HkZe2uK/fEpFI/THSkS0tN93EdJkqSxZLJZkiSNs3O7bt9+ROM/pbx0+yUwl2y+acfyEzPznzo3jIitgN1hSx3miLgFHUmwzKxam/k/MvMNZX+3BaY61r0mM9/cse7vy+X7dAbIzNdGxKEUSbu9KBLI1wKfY0uy+UYUifuPZeZXKGZPT7Ml2Xxm932JiB0oZsvO+Qbw8My8rlz/I+A/ynV3p0g6Hj3P/XxSZn6uK/7TOm5+KjNf1rX+RhQzY0fJu4EPdy7IzLOAu0fErhSzoG9HMSP7VOCe5QWKuuTz7S/dieYLgf0zs/Pkki9kS6L5F8Dec7WWI+JNwHkUCeGbAi8CXjJPX58FnpyZswvf1UK57x3YsegE4JFz7SPiw8Cze7Vd6mOzlOdZORP6zuWXSg+guO814CyKL0/mvqz4237upyRJ0rgy2SxJksZZd33WHLP4nb5Rxg/g0RFxFsWsyfOB04GvLTA7dFA+3nH9wq51n+i43lmi4np1aMu6xh+kmNG5kKUm7h/A9Y9dPzKXaC4dzpZkM8C+9E42n9GdaC59HXhxef35EbEPcDbF4/8Disf/p/0MNCL+Bvibefr+Sj8xusydIHArYE/g6RRJ3BdTnCjz6R19b08xK7vBAvWLWfjxf3zH9XMoZjRf3LVNZ+mL2wK/jZi3uwcv0Ncb+000l9Zx/fv1sa72H2GeZPOAHpueIuKmwPuAZ1LMaJ7PrkuNLUmSNE5MNkuSpHHWfQKy7oTYqMR/VmYesdAGmXlqObv3DcB2FLNzO0/+dl1EvC0zX73MMfTj5x3Xr+5a11kbuLM8xV+SdhFxO+AYuuohz+MmSxzbDl23u+vedt/u3n7OOb0WZuZnI+K/gJdTzHa9b3mZ8+eI+OfM3NjHWOt0nVSu9BFgOcnmr3TuPxHxLYrkOsDTIuJTmTlXq/jDXH/m73z6ffx/Re/SFvM9vr3stMC6nv+PBWzXdfuyRW53GvRj0+mN9K5VPojYkiRJY2OrYQ9AkiRpOSJiG4o6u50GffK2561w/OvJzPdTzBJ9KPAC4G3ASeXqrSlOWrhitYMz85oF1vWqf9ztsVw/0fwKYIfMDPpLQC/kyq7bt13kdvf2c+Y98Vtm/jtFYnR/ijIR/00xqxmKmcTvjog79zPYFfbdrtsPB4iIGsWs3TnHU8yE3qb8H3y6z/jnseULhX2BZjlzt1Pn4/tTiv/1fJfuutJ/sYwT8f2m6/bOi9wGBvrYzOegjutnUJyI8sZl7LdVjC1JkjQ2nNksSZLGTkTcDPhf4F4di0/MzFMGFH8b4L+4fn3V8ynqDq+IiNgFIDMvpSip8Y1yeVDMLN223PSvKUo+AFzTFaOWme2VGmMfuk+CeHhmzs2KPah74y6d96XWY/13KRKgc8ev/xARmzpKKHSXTjiJJYiIOwG/Kcd7XHmZqxX9q3KzrSlmOy9YziQzDwUOXUr/S7RP1+0blX+34/olHL6QmecDRMRtKJPSffgW8HqKmdgBPAI4OiIOzMy5Ge/f7BjHzsAXM/Ps7kAR8UCKkwYOyqlsKTcD8IyIOKJjPzh4nnbbsfzHpp/nWee+f3xmnl5uezOun+SWJEla00w2S5KkcXCPiPhnitmle1DMoO1M7lxGUSt1uXYr498YuAPwGIoTfM35I3DQQjN/F3FAeeKwG+g42di+wJER8R2KmZGXUiS5HsKWRDNcf0Zpd1mPT0TEt4HrgGZm/miZ412u7hMqfikivkgxg/Spi7S9GPir8vrfRcRbgCuAqzPzPZl5ZUQcDhxSbvNQ4JsRcWwZvzOZfS7weZbmicCbIuIbZftLKRKaB3RtN9+M6ZU0t/9sRbH/P6Nr/TfLv5dTzPzdrrz9mojYmSI5+wxu+GXAvDLzY2WN43fPjYFi/3xSOcv9vcA/UpQcuSnw3Yj4DPBjiuT3X1H8j3aj+AXCaf32vci4Lo2Iz7MlgbsfcEJEfI3ipJSPm6dplcemn+fZuWw5weDzIiKB3wFP5obleCRJktYsk82SJGkcrCsvvZwEPD0zL6wQ/87M/1P3s4CnZuYP5lnfj6eUl17e3nE9gAeVl17OAz7TcfvLwB+AW5S3D2RLTdoLgdVONjcpkop7l7cfUF6gODFbd9mTTp+mSBxCMbP5X8rrfwTeU15/CcX/av/ydq/H6mfAgX2W/ei2DcUM1/lmuZ7Ellnlq2mh/efLlCUgMvPaiHgj8NZy3fZseRx/DhwLPKrfTjPzPRFxa7acePFA4OMR8dTMvDAingzMALcsLwv9fwdpGrg/W0629xC2nLDwaxQzsa+n4mPTz/PsP4Ejy2U3BV5UXv89cBTFlxmSJElrnjWbJUnSuJgF/kQx4/QU4IPAIzLzwRUTzXOS4uf+lwHfBz5GkVC6d8VEc7++BbyK4gR7P6KYhXkd8FuK0gGvBx6Qmb//y4AzL6co9XE8RVJrqMqZ348EPkQ5K5lixucrgOcu0vx/gFeX23efnHAu/p+AR1PMRP1q2ce1FDNINwOvAe6Tmd0zrPvRpDip31coZuf+juLxv5Lif/MvwKMy87plxB6kqylO1vhliuTu4zpKSJCZbwOeD5xNMTP+CuDjFEn/S24QbRGZ+VqKWcxz/h44PCK2yswvAnsBbwa+R7EPXkORvD2ZYlb0/mX/A5OZF1HcnyMo7t9VwJkUCd7uOuud7Zb12PTzPMvMTwNPoHiuXk1R+qYJPJDilwqSJEkTITJz2GOQJEmSJEmSJI05ZzZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLmngRkUu8PDMiTi+v361HvBtFxB/K9YfO0+dHy/XP6Fh24SL9Htqx7TP7GOeFK/BwSZIkSQMVEbuXx69HrHA/R5T97L6S/SwyhlW5r6stIv4zIv4cEbsNeywrISLuX/7fnjPssUijbpthD0CSRsDreix7CbAt8G7gN13rTgOOA+4JPBI4p2v9A4CbA1muP7RH/IeXf7/WY12vPgFO6LHsB8DneixnnhiSJElaYRGxNfBs4OnAvYBbAr8GfgGcDDQzszm8Ea4tEfFB4LnAn4DbZeZvhjuiyVImmP8ZOCwzL+pYfmtgPfB3FM+DXYGrgdOBTcCmzJydJ+bfAK8BHgjcFDgfOBx4b2Ze17XtvsCBFJ+xdgduBVxC8ZntzZl5/jx93Ax4FXAQcEfgdxSfuV6bmWd3bpuZp0bE54D/iohPZeYf+nhopIlkslnSxMvMQ7uXRcQzKZLN/52ZF/ZY/zXgxcAjgI1dqx9R/v0M8PiIuHlm/rGj7V2A2wPnZObPewypZ5/zOK3X+CVJkjQcZaL5C8ABFF/+fxG4GNgB2AN4KnA3wGTzAETELSmShQncjCLB/76hDmry/DtwE+BtXcufDHwAuBQ4HvgZsDPwBOBDwN9GxJMzMzsbRcSBwFHAn4FPAVcCjwPeBexbxu10FLAT8C3g48C1wIOA5wAHRcSjMvPbXX3cBDi2jLeZYsLPbmXsv4uIR2Tmd7v6eRPwXeBFwBv7eWCkSWSyWZKW50TgOmC/iNiq6xv5R1B88/4xioOVBwNf7VoPxTftkiRJWlumKBLNPwAelpm/7VwZETWKX8JpMJ4K3IIiEbkBeB4mm1dNRGwLPA04rnNWc+lHQAP4YufnpYj4V4oZ/k+kSDwf1bHuVsAHKT9rZebmcvm/U/wq9EkRcVBmfrKjn3cBH8vMS7rG9q/AG4DDKGZWd3oZRaL5M8BT5sYXEZ+i+OXo4RFxr85xZ+bJEXEO8PyIeEv3DGtJBWs2S9IylB8aTqWYobL33PLyp1gPpDgQ+jrFQdIju5rP3TbZLEmStPb8Tfn3iO5EM0BmtjPz+M5lEXFoWQ92v+7t56vx21l/OCKeX55T5M8RcVlEHFYmAfsSEbeLiP+IiJMi4hcRcXVEXBIRn4iIuy80pvL6JyPil2X/myPisfP0c8uIeGdEXFxue05EvIxquYnnAbMUCccvAPeOiMWS+VtFxMvK/v9cjuddZaKze8wXlpdblWO/MCKumTufylIfu67YfT12EbFtRLwiIr5WjvXqiLgiIpoR8cB5YmdEnBARO0fE4eV+8ceI+FZEPKTc5uYR8baI+GlEXBURZ0ZE96zhxUwBNYoZyNeTmV/LzM93l8rIzF8A/1Pe3K+r2ZMoZil/ci7RXLb5M0VZDYB/7Ir3lu5Ec+ktFKVV7lmW9AAgIgJ4QXnzX7oSyscA3wD2Ah7WI+YngTsA+/dYJwlnNktSFccB+1DMVP5euezBFD8hOz4zfxsR32fLTOa5A5v9KA6IT5gn7ksi4jddy36Tmf/dY9u9Y56TEALfycyvLHovJEmSNEi/Kv/eZZX6eyvwaODzQIuibu3zgL+i4zh0EQ+lqF17PMUs0z8Ae1Ik/hoRsW9m/qBHuztSzFD9CcWv+nYAngIcExH7dybVy7IFxwF/TTHr++PAdhQlGHol9RYVEfcF7g8cm5kXlQn5JwCHUJQ7mM+7yvt8JHAMxeP3EuAhEfHgMrHZ6cYUk0l2oHiMfwdcUK5b8ccOuDvFDN2vU5Rl+TVFwrNBUYricfMc928HnAT8Hpgp+zgI+GpEPAj433LZF4AbUSSOPxURF2Xmd+Z78LrMJV2/2ef2c64p/17btXxun+11f74OtIG/iYibZOZVi/SRHfE7ZyHvQfH4/SgzL7hBK/gy8JByLMd3rTup/Psorv/rVUklk82StHxfA15NcRDy9nLZ3MHR8R1/Xx4R25UnKrk3sCOwOTN/PU/cF/dY9lPgv3ssv0956eXd9D5IkyRJ0sr5LPBK4AVR1BM+Gjg1M3+6Qv09ELhXZv4MICK2oThOfXhE7JOZJ/cR42vAzpn5+86FEXEfiuTam4G/7dFuP+DQzHxdR5tPUByDvoLrJ+peTpFo/izw5I6yBW+m+MXgcjy//Lup/Ptl4DLgKRHx0sz83Tzt9gX2nvufRMSrgU9TJKpfAby+a/tdgLMoyqL8sWvdajx2Z1Oc+PCXXX3cniJh/S56H/ffhyKh/E8dj/exwEfL+CdRlKr4c7nuYxQJ3VdSnNivHw+mSGb/qM/t5/bRfyhvdo/7ruXfG8TLzGsj4gLgHsCdKR6XhTyZ4uSc3+k6aeS8fZTOK//2+sLolPLvQxfpW5pYltGQpOX7JnAVxQyIG5XLHgGclZmXlbePp3it3a+8PVdC4/8WiHunzIyuy+7zbPuRHtvOXV6y3DsmSZKk5cnM71OcpO6y8u9RwIUR8auIODoiHjfgLv9zLtFc9n8tW5Kv+/Q55su7k6Xl8h+wJXF9oxu25KfAf3W1+SrFieC6+34Wxa/7ussWXAC8p59xdoqIm1PMxP0tRUJ/7r5/HLg5RS3n+by7M/lfjucV5fiePU+bl/dINK/KY5eZv+1ONJfLL6aoOXy3iLhDjz7awCu6ylh8gmK27/bAiztncWfmN4AL6SgTuJCIuDHFCf9+0X2Sv0W8Gbgn8KXyPneaK/9ygxI0Xcu3W2RsdwLeS3FfXz6oPsrSOH+mmBktqQeTzZK0TOWB2bcoTkiyTxR18e5PcVA55xsUBzhzSWZPDihJkrTGZeaRFMmoR1PMkv0CxefvxwPNiPhIWV5tEDb3WDZ3orbt+w0SEX8XEZ+PiEvLmsQZEQk8jqJM3I49mp02z0nSLursu5zh/VfAzzPzxz22P6HfcXY4CLgVRW3fzrIXc4n2QxZoe2L3gsz8CcW4d4+I7bpW/xn44XzBVvKx6+hj34g4MiIuKusrz/XxwnKTXXvE+lF3Irzs8zKKMn0/6dHm58Dt57uvXebqIM/3i80biIgXUSR/zwGe0W+7zhDl33mT2xFxG4pZ7jtRJNS/NeA+rqT3/1QSltGQpKq+RlEX7xEUB1tb0/GTt8z8Q0ScCjwiIramqP11FVtqfUmSJGkNysxrKOr7tgDKY8EnAodTlBA4GvjcALr6TY9lc3Vqt+4nQJkAfDdF0vBYitm1bYpk2+MpyjHcpM++5/rvnNw2N5P0sh7bAvyin3F2mUsmH9G5MDPPKI+/7x8R6zpPMtdhoXHckWK8v+lYfvl8M3dX4bEjItZTzGD+c9nHj4E/UszE3o+i5nWvPuabuXvtIuv6zRX9qfx70342jogNFI/VWcAjM/PKHpvNjWu+E1zeqmu77j5uQ/EZ7a4Uieb3D7oP4GZsue+SuphslqRqjqOYrTKXbE5uODPjeIqThjyO4sDl+Mz04ESSJGmClDNKj4yIewGvoTh+/Fy5eq7MQa/P6Nut5LjK+rmvo0i03i8zL+1a/6ABdDOXtNt5nvW3XUqwiLg3W0pNfHuBSeKH0Hvm987AuQuMozvJOF+ieTUeOyg+b1wNrMvM69Upjoj/ZZknWKwqM38TEVezZYbzvCLiJRS1pc+gSDRfPs+m5wLrKOolX6+Wd/l434kiIX6DWdkRsQvF57O7ARvmSTTP9QHzn8Rzz/LvDWo6R8RWFM/JXicWlIRlNCSpqlMoTojxIOAxwA96fEM/N9P5P8u/ltCQJEmaXHNlDTozpHNlCHbrsf26lR0OO1Ikz77VI1l6C+B+VTsoSzmcD+waEXv02GS/JYacm9V8AvDheS5/AqbK+9DtBsnZiLgzxeN/YdfJ5Bay4o9d6a8ozgvTnWjeiuIEfcN0OrBLRNxqvg0i4pUUiebTgIcvkGiGLSUJD+ix7qFAjeLxvqqrj9tTlEe5G/CCBRLNUMwM/xlwl7K2c7e5Ezp+rce6u1I8d09bIL400Uw2S1IF5UlIvk7xs7U96X1AchJwDXCv8vYgk817R8Sh810G2I8kSZL6EBFTEfGoMhHYve62wPPKm1/vWHVy+fdZ5ezNue13A/5jxQZbuJyi7MP9OxOz5Unt3s3gatNuoshBvKXzsSmTfS/qN0hE3Ax4GnAd8LTMfG6vC8WJGW9BcRLBbi+OiDt2xNwKeFs5vk09tp/Paj12FwJ7RsTtOvoI4LXAXgPqY7lOoHjcep6MMiL+neKEgKdSzGi+wYkOu3wG+CVwUET85YuWiLgpW06o+IGuPu5AkWjeA3hOZh62UAdlSZT/KW++tWt/PJCi9OFZ9KjtDTyw/Ht8j3WSsIyGJA3CccDflddvcNCRmX+MiJOBfYHfUcyGHpT7lJf5HDrAviRJkrS4BwAvBn4REd9ky8/t70RxzHgz4BiKpBoAmfndiPg6xczNkyPiaxSlHh4HfJXeM54HIjNnI+I9FGXfTo+IY4AbU5yXZAeK49uHD6Crd1DUMH4i8L2I+CpFzdynUCTeG33GeQrFbOLPZ+YlC2z3IeDpFLOgP9i17iTgtIj4FEXJjEdTHFOfCry1z3Gs5mP3Lork6Pcj4iiKiSz7UiSaP0+xnwzLURQn/Hs08H+dKyLiYIpfd15HceL0F/UoeXJhZh4xdyMzfxcRz6N4fpwQEZ+kOCFfg2JW8WeAT3XFOBHYneL/d8d5Jt0ckZkXdtx+J/BY4EnAdyPiOIqTej6Z4guEZ2fm7A2iQL28P8f0WCcJk82S1FNm7r6Ebd9FcQC40DaL/rxtiX0eQdfJUCRJkjQS3gGcB+wP3JsiCXdT4FcUs0A/AXyixwnnDqSYXXsg8MIyxr9QnGDw71d4zP8OXAE8F3g+RQL2WIra0q8bRAeZeVVE7E8xGeIpFAn5Cylmqx5N/8nmuZnhH1qkvxMj4kfAuoi4b2Z+v2P1S4H1ZazdKf437wb+IzP/3Oc45qzGY/e/EXEV8BLgYIoSId8AnkWRvB9asjkzvx0R3weeFhGvKmuTz5krUbE1xdh7OZEbnuTxcxHxMODfKO7fTSnKsLwMeE+P587u5d/7l5deTqDY3+b6mNsfXwU8lWKf+B1FHfXXZuZZ3QEiYluKL0y+kJkXzdOPNPFinhOqSpIkSZIkSQuKiCmKL1GekJlHD3s8KyUiXgi8B3hoZn5j2OORRpXJZkmSJEmSJC1LWT/62xQlYvbuMfN47JW1wn9McXLCJw17PNIo8wSBkiRJkiRJWpYyuXwIRTmU2y2y+bjaHTgM+Ochj0Maec5sliRJkiRJkiRVNhInCNxxxx1z9913H/YwJEmSNGCnnnrqLzNzp2GPQ6vPY3xJkqS1aaFj/JFINu++++5s3rx52MOQJEnSgEXET4c9Bg2Hx/iSJElr00LH+NZsliRJkiRJkiRVZrJZkiRJkiRJklSZyWZJkiRJkiRJUmUmmyVJkiRJkiRJlZlsliRJkiRJkiRVZrJZkiRJkiRJklSZyWZJkiRJkiRJUmUmmyVJkiRJkiRJlZlsliRJkiRJkiRVZrJZkiRJkiRJklSZyWZJkiRJkiRJUmUmmyVJkiRJkiRJlZlsliRJkiRJkiRVZrJZkiRJkiRJkiZcs9lkenqaZrO57Bgjn2wexJ2UJEmSJEmSJPXWbDaZmppi48aNTE1NLTsXO9LJ5mazyfr16yvfSUmSJEmSJElSb61Wi3a7DUC73abVai0rzkgnm1utFrOzs0C1OylJkiRJkiRJ6q1er1Or1QCo1WrU6/VlxRnpZPOg7qQkSZIkSZIkqbdGo8HMzAwbNmxgZmaGRqOxrDjbDHhcAzV3J1utFvV6fdl3UpIkSZIkSZI0v0ajUTn/OtLJZhjMnZQkSZIkSZIkrayRLqMhSZIkSZIkSRoPJpslSZIkSZIkSZWZbJYkSZImTEQcHhGXR8QZHcs+FRGnlZcLI+K0cvnuEfGnjnX/M7SBS5IkaaSNfM1mSZIkSQN3BPA+4KNzCzLzKXPXI+IdwG87tv9xZu69WoOTJEnSeDLZLEmSJE2YzPx6ROzea11EBPD3wCNWdVCSJEkae5bRkCRJktTpIcBlmXlex7I7RcT3I+LEiHjIfA0j4pCI2BwRm6+44oqVH6kkSZJGislmSZIkSZ2mgJmO25cCd8jM+wIvAz4REbfq1TAzD8vMdZm5bqeddlqFoUqSJGmUmGyWJEmSBEBEbAM8AfjU3LLMvCozf1VePxX4MXCX4YxQkiRJo8xksyRJkqQ5+wPnZObFcwsiYqeI2Lq8fmdgT+AnQxqfJEmSRpjJZkmSJGnCRMQM8G3grhFxcUQ8p1x1ENcvoQHwUOCHEfED4DPACzLzytUbrSRJksbFNsMewEprNpu0Wi3q9TqNRmPYw5EkSZKGLjOn5ln+zB7LjgKOWukxSZIkafyt6WRzs9lk/fr1zM7OsmnTJmZmZkw4S5IkSZIkSdIKWNNlNFqtFrOzswC0221ardaQRyRJkiRJkiRJg9NsNpmenqbZbA57KIsnmyNit4g4PiLOjogzI+LF5fJDI+LnEXFaeXlMR5tXR8T5EXFuRDx6Je/AQur1OrVaDYBarUa9Xh/WUCRJkiRJkiRpoJrNJlNTU2zcuJGpqamhJ5z7KaNxLfDyzPxeRNwSODUiji3XvSsz3965cUTsRXFikXsAtwP+LyLukpnXDXLg/Wg0GszMzFizWZIkSZIkSdKa02q1aLfbwJbKDsPMgS6abM7MS4FLy+u/j4izgV0XaHIg8MnMvAq4ICLOB/ahONv1qms0GiaZJUmSJEmSJK059XqdTZs20W63R6Kyw5JqNkfE7sB9ge+Wi6Yj4ocRcXhEbF8u2xW4qKPZxfRITkfEIRGxOSI2X3HFFUsfuSRJkiRJkiRNsLnKDhs2bGBmZmbok277TjZHxC2Ao4CXZObvgA8AewB7U8x8fsfcpj2a5w0WZB6Wmesyc91OO+201HFLkiRJkiRJ0sRrNBq8733vG3qiGfpMNkfEjSgSzR/PzM8CZOZlmXldZs4CH6QolQHFTObdOprfHrhkcEOWJEmSJEmSJI2aRZPNERHAh4GzM/OdHct36dhsPXBGeb0JHBQRN4mIOwF7AicPbsiSJEmSJEmSpFGz6AkCgX2BZwCnR8Rp5bJ/BaYiYm+KEhkXAs8HyMwzI+JI4CzgWmBDZl432GFLkiRJkiRJkkbJosnmzPwmveswf2mBNm8A3lBhXJIkSZIkSZKkMdL3CQIlSZIkSZIkSZqPyWZJkiRJkiRJUmUmmyVJkiRJkiRJlZlsliRJkiRJkiRVZrJ5Ac1mk+npaZrN5rCHIkmSJEmSJEkjbZthD2BUNZtN1q9fz+zsLJs2bWJmZoZGozHsYUmSJEmSJEnSSHJm8zxarRazs7MAtNttWq3WkEckSZIkSZIkSaPLZPM86vU6tVoNgFqtRr1eH/KIJEmSJEmSJGl0WUZjHo1Gg5mZGVqtFvV63RIakiRJkiRJkrQAk80LaDQaJpklSZIkSZIkDVyz2VxzE10toyFJkiRJkiRJq6jZbDI1NcXGjRuZmpqi2WwOe0gDYbJZkiRJkiRJklZRq9Wi3W4D0G63abVaQx7RYJhsliRJkiRJkqRVVK/XqdVqANRqNer1+pBHNBjWbJYkSZIkSZKkVdRoNJiZmVlzNZtNNkuSJEmSJEnSKms0GmsmyTzHMhqSJEmSJEmSpMpMNkuSJEmSJEmSKjPZLEmSJEmSJEmqzGSzJEmSJEmSJKkyk82SJEmSJEmSpMpMNq+QZrPJ9PQ0zWZz2EORJEmSJEmSpBW3zbAHsBY1m03Wr1/P7OwsmzZtYmZmhkajMexhSZIkSZIkSdKKcWbzCmi1WszOzgLQbrdptVpDHpEkSZIkSZIkrSyTzSugXq9Tq9UAqNVq1Ov1IY9IkiRJkiRJklaWZTRWQKPRYGZmhlarRb1et4SGJEmSJEmSpDXPZPMKaTQaJpklSZIkSZIkTQzLaEiSJEkTJiIOj4jLI+KMjmWHRsTPI+K08vKYjnWvjojzI+LciHj0cEYtSZKkUWeyWZIkSZo8RwAH9Fj+rszcu7x8CSAi9gIOAu5Rtnl/RGy9aiOVJEnS2DDZLEmSJE2YzPw6cGWfmx8IfDIzr8rMC4DzgX1WbHCSJEkjrtlsMj09TbPZHPZQRo7JZkmSJElzpiPih2WZje3LZbsCF3Vsc3G57AYi4pCI2BwRm6+44oqVHqskSdKqazabrF+/no0bNzI1NWXCuYvJZkmSJEkAHwD2APYGLgXeUS6PHttmrwCZeVhmrsvMdTvttNOKDFKSJGmYWq0Ws7OzALTbbVqt1pBHNFpMNkuSJEkiMy/LzOsycxb4IFtKZVwM7Nax6e2BS1Z7fJIkSaOgXq9Tq9UAqNVq1Ov1IY9otGwz7AFIkiRJGr6I2CUzLy1vrgfOKK83gU9ExDuB2wF7AicPYYiSJElD12g0mJmZodVqUa/XaTQawx7SSDHZLEmSJE2YiJgB9gN2jIiLgdcC+0XE3hQlMi4Eng+QmWdGxJHAWcC1wIbMvG4Iw5YkSRoJjUbDJPM8TDZLkiRJEyYzp3os/vAC278BeMPKjUiSJElrgTWbJUmSJEmSJEmVmWyWJEmSJEmSJFVmsnlE3ete92LXXXel2WwOeyiSJEmSJEmStCiTzSOo2Wxy1llncckllzA1NWXCWZIkSZIkSdLIM9k8glqtFrOzswC0221ardaQRyRJkiRJkiRJCzPZPILq9Tq1Wg2AWq1GvV4f8ogkSZIkSZIkaWHbDHsAuqFGo8HMzAytVot6vU6j0Rj2kCRJkiRJkiRpQSabR1Sj0TDJLEmSJEmSJGlsWEZDkiRJkiRJklSZyWZJkiRJkiRJUmUmmyVJkiRJkiRJlZls1g00m02mp6dpNpvDHookSZIkSZI0EOa8Vp4nCNT1NJtN1q9fz+zsLJs2bWJmZsYTFUqSJEmSJGmsNZtNpqamaLfb5rxW0KIzmyNit4g4PiLOjogzI+LF5fIdIuLYiDiv/Lt9R5tXR8T5EXFuRDx6Je+ABqvVajE7OwtAu92m1WoNeUSSJEmSJElSNa1Wi3a7DZjzWkn9lNG4Fnh5Zt4deCCwISL2Al4FHJeZewLHlbcp1x0E3AM4AHh/RGy9EoPX4NXrdWq1GgC1Wo16vT7kEUmSJEmSJEnVmPNaHYuW0cjMS4FLy+u/j4izgV2BA4H9ys0+ApwAvLJc/snMvAq4ICLOB/YBvj3owWvwGo0GMzMztFot6vW6PyeQJEmSJEnS2DPntTqWVLM5InYH7gt8F9i5TESTmZdGxG3KzXYFvtPR7OJyWXesQ4BDAO5whzsseeBaOY1GwyecJEmSJEmS1hRzXiuvnzIaAETELYCjgJdk5u8W2rTHsrzBgszDMnNdZq7baaed+h2GJEmSJEmSJGkE9ZVsjogbUSSaP56Zny0XXxYRu5TrdwEuL5dfDOzW0fz2wCWDGa760Ww2mZ6eptlsDnsokiRJkiRJkibEosnmiAjgw8DZmfnOjlVN4ODy+sHAMR3LD4qIm0TEnYA9gZMHN2QtpNlssn79ejZu3MjU1JQJZ0mSJEmSJEmrop+ZzfsCzwAeERGnlZfHAG8GHhUR5wGPKm+TmWcCRwJnAV8BNmTmdSsyet1Aq9VidnYWgHa7TavVGvKIJEmSJEmSJE2CRU8QmJnfpHcdZoBHztPmDcAbKoxLy1Sv19m0aRPtdptarUa9Xh/2kCRJkiRJkiRNgEWTzRovjUaDmZkZWq0W9XrdM2xKkiRJkiRJWhUmm9egRqNhklmSJEmSJEnSquqnZrMkSZIkSZIkSQsy2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNGqhms8n09DTNZnPYQ5EkSZIkSZK0ijxBoAam2Wyyfv16Zmdn2bRpEzMzM56oUJIkSZIkSZoQzmzWwLRaLWZnZwFot9u0Wq0hj0iSJEmSJEnSajHZrIGp1+vUajUAarUa9Xp9yCOSJEmSJEnSuLNs6/iwjIYGptFoMDMzQ6vVol6vW0JDkiRJkiRJlTSbTaampmi325ZtHQMmmzVQjUbDJ7wkSZIkSZIGotVq0W63gS1lW809jS7LaEiSJEmSJEkaSZZtHS/ObJYkSZIkSZI0kizbOl5MNkuSJEmSJEkaWZZtHR+W0ZAkSZIkSZIkVWayWZIkSZIkSZJUmclmSZIkacJExOERcXlEnNGx7G0RcU5E/DAijo6I7crlu0fEnyLitPLyP0MbuCRJkkaayWZJkiRp8hwBHNC17Fjgnpl5b+BHwKs71v04M/cuLy9YpTFKkiRpzJhsliRJkiZMZn4duLJrWSszry1vfge4/aoPTJIkSWPNZLMkSZKkbs8Gvtxx+04R8f2IODEiHjJfo4g4JCI2R8TmK664YuVHKUmSpJFislmSJEnSX0TEvwHXAh8vF10K3CEz7wu8DPhERNyqV9vMPCwz12Xmup122ml1BixJkqSRYbJZkiRJEgARcTDwWOBpmZkAmXlVZv6qvH4q8GPgLsMbpSRJkkaVyWaNlGazyfT0NM1mc9hDkSRJmigRcQDwSqCRme2O5TtFxNbl9TsDewI/Gc4oJUmSNMq2GfYApDnNZpP169czOzvLpk2bmJmZodFoDHtYkiRJa05EzAD7ATtGxMXAa4FXAzcBjo0IgO9k5guAhwL/GRHXAtcBL8jMK3sGliRJ0kQz2ayR0Wq1mJ2dBaDdbtNqtUw2S5IkrYDMnOqx+MPzbHsUcNTKjkiSJElrgWU0NDLq9Tq1Wg2AWq1GvV4f8ogkSZIkSZIk9cuZzRoZjUaDmZkZWq0W9XrdWc2SJEmSJEnSGDHZrJHSaDRMMkuSJEmSJEljyDIakiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2aw1o9lsMj09TbPZHPZQJEmSJEmSpImzzbAHIA1Cs9lk/fr1zM7OsmnTJmZmZmg0GsMeliRJkiRJkjQxnNmsNaHVajE7OwtAu92m1WoNeUSSJEmSJEnSZDHZrDWhXq9Tq9UAqNVq1Ov1IY9IkiRJkiRJmiyW0dCa0Gg0mJmZodVqUa/XLaEhSZIkSZIkrTKTzVozGo2GSWZJkiRJkiRpSCyjIUmSJEmSJEmqzGSzJEmSJEmSJKkyk82SJEmSJEmSpMpMNkuSJEmSJEmSKjPZLEmSJEmSJEmqbNFkc0QcHhGXR8QZHcsOjYifR8Rp5eUxHeteHRHnR8S5EfHolRq4JEmSJEmSpNHVbDaZnp6m2WwOeyhaJf3MbD4COKDH8ndl5t7l5UsAEbEXcBBwj7LN+yNi60ENVpIkSZIkSdLoazabTE1NsXHjRqampkw4T4hFk82Z+XXgyj7jHQh8MjOvyswLgPOBfSqMT5IkSZIkSdKYabVatNttANrtNq1Wa8gj0mqoUrN5OiJ+WJbZ2L5ctitwUcc2F5fLbiAiDomIzRGx+YorrqgwDEmSJEmSJEmjpF6vU6vVAKjVatTr9SGPSKthucnmDwB7AHsDlwLvKJdHj22zV4DMPCwz12Xmup122mmZw5AkSZIkSZI0ahqNBjMzM2zYsIGZmRkajcawh6RVsM1yGmXmZXPXI+KDwBfKmxcDu3VsenvgkmWPTlpFzWaTVqtFvV73BVCSJEmSJKmiRqNhjmXCLGtmc0Ts0nFzPXBGeb0JHBQRN4mIOwF7AidXG6K08prNJuvXr7dovSRJkiRJkrRMiyabI2IG+DZw14i4OCKeA7w1Ik6PiB8CDwdeCpCZZwJHAmcBXwE2ZOZ1KzZ6aUBarRazs7OAReslSZIkSZKk5Vi0jEZmTvVY/OEFtn8D8IYqg5JWW71eZ9OmTbTbbYvWS5IkSZIkScuwrJrN0lozV7Tems2SJEmSJEnS8phslkoWrZckSZIkSZKWb1knCJQkSZIkSZIkqZPJZkmSJEmSJElSZSabJUmSJEmSJEmVmWyWJEmSJkxEHB4Rl0fEGR3LdoiIYyPivPLv9h3rXh0R50fEuRHx6OGMWpIkSaPOZLMkSZI0eY4ADuha9irguMzcEziuvE1E7AUcBNyjbPP+iNh69YYqSZKkcWGyWRoBzWaT6elpms3msIciSZImQGZ+Hbiya/GBwEfK6x8BHt+x/JOZeVVmXgCcD+yzGuOUJEnSeDHZLA1Zs9lk/fr1bNy4kampKRPOkiRpWHbOzEsByr+3KZfvClzUsd3F5bIbiIhDImJzRGy+4oorVnSwkiRpZTghTlWYbJaGrNVqMTs7C0C73abVag15RJIkSdcTPZZlrw0z87DMXJeZ63baaacVHpYkSRq0ZrPJ1NSUE+K0bCabpSGr1+vUajUAarUa9Xp9yCOSJEkT6rKI2AWg/Ht5ufxiYLeO7W4PXLLKY5MkSaug1WrRbrcBJ8RpeUw2S0PWaDSYmZlhw4YNzMzM0Gg0hj0kSZI0mZrAweX1g4FjOpYfFBE3iYg7AXsCJw9hfJIkaYU5IU5VbTPsAUgqEs4mmSVJ0mqJiBlgP2DHiLgYeC3wZuDIiHgO8DPgyQCZeWZEHAmcBVwLbMjM64YycEmStKLmJsS1Wi3q9bq5Ci1ZZPYst7aq1q1bl5s3bx72MKRlazabvhBLktRDRJyameuGPQ6tPo/xJUmS1qaFjvGd2SxV1Gw2Wb9+PbOzs2zatMlSGJIkSZIkSZpI1myWKmq1WszOzgIWz5ckSZIkSdLkMtksVWTxfEmSJEmSJMkyGlJlFs+XJEmSJEmSTDZLA9FoNEwyS5IkSZIkaaJZRkOSJEmSJEmSVJnJZkmSJEmSJElSZSabJUmSJEmSJEmVmWyWJEmSJEmSJFVmslmSJEmSJEmSVJnJZmnMNZtNpqenaTabwx6KJEmSJEmSJpjJZmmMNZtN1q9fz8aNG5mamjLhLEmSJEnShHIymkaByWZpjLVaLWZnZwFot9u0Wq0hj0iSJEmSJK22ZrPJ1NSUk9E0dCabpTFWr9ep1WoA1Go16vX6kEckSZIkSZJWW6vVot1uA05G03CZbJbGWKPRYGZmhg0bNjAzM0Oj0Rj2kCRJkiRJ0ipzMppGxTbDHoCkahqNhklmSZIkSZIm2NxktFarRb1eN0+goTHZLEmSJEmSJI05J6NpFFhGQ5IkSZIkSZJUmclmSZIkSZIkSVJlJpslSZIkSZIkSZWZbJYkSZIkSZIkVWayWZIkSZIkSZJUmclmSZIkSZIkSVJlJpslSZIkSZIkSZWZbJYkSZIkSZIkVWayWZIkSZIkSZJUmclmacI1m02mp6dpNpvDHookSZIkSZLGmMlmaYI1m03Wr1/Pxo0bmZqaMuEsSZIkSdIqcxKY1hKTzdIEa7VazM7OAtBut2m1WkMekSRJkiRJk6PZbDI1NeUkMK0ZJpulCVav16nVagDUajXq9fqQRyRJkiRJ0uRotVq0223ASWBaG0w2SxOs0WgwMzPDhg0bmJmZodFoDHtIkiRJkiRNDCeBaa3ZZtgDkDRcjUbDJLMkSZIkSUMwNwms1WpRr9f9fK6xZ7JZkiRJkiRJGhIngWktsYyGJEmSJEmSJKmyRZPNEXF4RFweEWd0LNshIo6NiPPKv9t3rHt1RJwfEedGxKNXauCSJEmSJEmSpNHRz8zmI4ADupa9CjguM/cEjitvExF7AQcB9yjbvD8ith7YaCVJkiRJkiRJI2nRZHNmfh24smvxgcBHyusfAR7fsfyTmXlVZl4AnA/sM5ihSpIkSZIkSZJG1XJrNu+cmZcClH9vUy7fFbioY7uLy2U3EBGHRMTmiNh8xRVXLHMYkiRJkiRJkqRRMOgTBEaPZdlrw8w8LDPXZea6nXbaacDDkCRJkrRUEXHXiDit4/K7iHhJRBwaET/vWP6YYY9VkiRJo2ebZba7LCJ2ycxLI2IX4PJy+cXAbh3b3R64pMoAJUmSJK2OzDwX2BugPPfKz4GjgWcB78rMtw9vdJIkSRp1y53Z3AQOLq8fDBzTsfygiLhJRNwJ2BM4udoQJUmSJA3BI4EfZ+ZPhz0QSZIkjYdFk80RMQN8G7hrRFwcEc8B3gw8KiLOAx5V3iYzzwSOBM4CvgJsyMzrVmrwkiRJklbMQcBMx+3piPhhRBweEdv3auB5WSRJkiZbZPYsqbyq1q1bl5s3bx72MCQtUbPZpNVqUa/XaTQawx6OJGkERcSpmblu2OPQ0kTEjSnK4d0jMy+LiJ2BX1Kcj+X1wC6Z+eyFYniML0mStDYtdIy/3JrNkiZcs9lk/fr1zM7OsmnTJmZmZkw4S5K0dvwt8L3MvAxg7i9ARHwQ+MKwBiZJkqTRtdyazZImXKvVYnZ2FoB2u02r1RryiCRJ0gBN0VFCozwp+Jz1wBmrPiJJkkZMs9lkenqaZrM57KFII8Nks6Rlqdfr1Go1AGq1GvV6fcgjkiRJgxARNYrzsny2Y/FbI+L0iPgh8HDgpUMZnCRJI6LZbDI1NcXGjRuZmpoy4SyVLKMhaVkajQYzMzPWbJYkaY3JzDZw665lzxjScCRJGkmtVot2uw1s+bWvn4slk82SKmg0Gr6ZSpIkSZImTr1eZ9OmTbTbbX/tK3Uw2SxJkiRJkiQtgb/2lXoz2SxJkiRJkiQtkb/2lW7IEwRKkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLkiRJkiRJkioz2SxJkiRJkiRJqsxksyRJkiRJkiSpMpPNkiRJkiRJkqTKTDZLGppms8n09DTNZnPYQ5EkSZIkSVJF2wx7AJImU7PZZP369czOzrJp0yZmZmZoNBrDHpYkSZIkSZKWyZnNkoai1WoxOzsLQLvdptVqDXlEkiRJkiRJqsJks6ShqNfr1Go1AGq1GvV6fcgjkiRJkiRNAks6SivHMhqShqLRaDAzM0Or1aJer1tCQ5IkSZK04prNJlNTU7TbbUs6SivAZLOkoWk0Gr6pS5IkSZJWTavVot1uA1tKOvq5VBocy2hIkiRJkiRpIljSUVpZzmyWJEmSJEnSRLCko7SyTDZLkiRJkiRpYljSUVo5ltGQJEmSJEmSJFVmslmSJEmSJEmSVJnJZkmSJEmSJElSZSabJUmSJEmSJEmVmWyWJEmSJEmSJFVmslnSxGk2m0xPT9NsNoc9FEmSJEmSpDVjm2EPQJJWU7PZZP369czOzrJp0yZmZmZoNBrDHpYkSZIkSdLYc2azpLG03NnJrVaL2dlZANrtNq1WayWGJ0mSJEmSNHFMNksaO81mk6mpKTZu3MjU1NSSEs71ep1arQZArVajXq+v1DAlSZIkSZImislmSWOn1WrRbreBpc9ObjQazMzMsGHDBktoSJIkSZIkDZA1myWNnXq9zqZNm2i328uandxoNEwyS5IkSZIkDZjJZkljZ252cqvVol6vmziWJEmSJEkaASabJY0lZydLkiRJkiSNFms2S5IkSZIkSZIqM9ksSZIkSZIkSarMZLMkSZIkSZIkqTKTzZIkSZIkSZKkyjxBoCRJkqS/iIgLgd8D1wHXZua6iNgB+BSwO3Ah8PeZ+ethjVGSJEmjyZnNkiRJkro9PDP3zsx15e1XAcdl5p7AceVtSZIk6XpMNkuSJElazIHAR8rrHwEeP7yhSJIkaVSZbJakJWo2m0xPT9NsNoc9FEmSVkICrYg4NSIOKZftnJmXApR/b9OrYUQcEhGbI2LzFVdcsUrDlSRJ0qiwZrMkLUGz2WRqaop2u82mTZuYmZmh0WgMe1iSJA3Svpl5SUTcBjg2Is7pt2FmHgYcBrBu3bpcqQFKkiRpNDmzWZKWoNVq0W63AWi327RarSGPSJKkwcrMS8q/lwNHA/sAl0XELgDl38uHN0JJ0qTyV6bS6DPZLElLUK/XqdVqANRqNer1+pBHJEnS4ETEzSPilnPXgTpwBtAEDi43Oxg4ZjgjlCRNqrlfmW7cuJGpqSkTztKIsoyGJC1Bo9FgZmaGVqtFvV63hIYkaa3ZGTg6IqD4rPCJzPxKRJwCHBkRzwF+Bjx5iGOUJE2gXr8y9fOYNHoqJZsj4kLg98B1wLWZuS4idgA+BewOXAj8fWb+utowJWl0NBoND2okSWtSZv4EuE+P5b8CHrn6I5IkqVCv19m0aRPtdttfmUojbBBlNB6emXtn5rry9quA4zJzT+C48rYkSZIkSZK0LHO/Mt2wYYMnapdG2EqU0TgQ2K+8/hHgBOCVK9CPJEmSJEmSJoS/MpVGX9WZzQm0IuLUiDikXLZzZl4KUP69Ta+GEXFIRGyOiM1XXHFFxWFIkiRJkiRJkoap6szmfTPzkoi4DXBsRJzTb8PMPAw4DGDdunVZcRySJEmSJEmSpCGqNLM5My8p/14OHA3sA1wWEbsAlH8vrzpISZIkSZIkSdJoW3ayOSJuHhG3nLsO1IEzgCZwcLnZwcAxVQcpSZIkSZIkSRptVcpo7AwcHRFzcT6RmV+JiFOAIyPiOcDPgCdXH6YkSZIkSZIkaZQtO9mcmT8B7tNj+a+AR1YZlCRJkiRJkiRpvFSq2SxJkiRJkiRJEphsliRJkiRJkiQNgMlmSVpFzWaT6elpms3msIciSZIkSZI0UCabJWmVNJtN1q9fz8aNG5mamjLhLEmSJGkiOOlGmhwmmyVplbRaLWZnZwFot9u0Wq0hj0iSJEmSVlaz2WRqaspJN9KEMNksSaukXq9Tq9UAqNVq1Ov1IY9IkiRJklZWq9Wi3W4DTrqRJoHJZklaJY1Gg5mZGTZs2MDMzAyNRmPYQ5IkSZKkFeWkG2mybDPsAUjSJGk0GiaZJUmSJE2MuUk3rVaLer3u5yFpjTPZLEmSJEmSpBXjpBtpclhGQ5IkSZIkSZJUmclmSZIkSZIkSVJlJpslSZIkSZIkSZWZbJYkSZIkSZIkVWayWZIkSZIkSZJUmclmSZIkSZIkSVJlJpslSZIkSZIkSZWZbJYkSZIkSZIkVWayWZIkSZIkSZJUmclmSRojzWaT6elpms3msIciSZIkaY3z84ekpdpm2AOQJPWn2Wyyfv16Zmdn2bRpEzMzMzQajWEPS5IkSdIa1Gw2mZqaot1u+/lDUt+c2SxJY6LVajE7OwtAu92m1WoNeUSSJEmS1qpWq0W73Qb8/CGpfyabJWlM1Ot1arUaALVajXq9PuQRSZIkSVqr/PwhaTksoyFJY6LRaDAzM0Or1aJer/sTNkmSJEkrxs8fkpYjMnPYY2DdunW5efPmYQ9DkiRJAxYRp2bmumGPQ6vPY3xJkqS1aaFjfMtoSJIkSZIkSZIqM9ksSZIkSZIkSarMZLMkSZIkSZIkqTKTzZIkSZIkSZKkykw2S5IkSZIkSZIqM9ksSZIkSZIkSarMZLMkSZIkACJit4g4PiLOjogzI+LF5fJDI+LnEXFaeXnMsMcqSZKk0bPNsAcgSZIkaWRcC7w8M78XEbcETo2IY8t178rMtw9xbJIkSRpxJpslSZIkAZCZlwKXltd/HxFnA7sOd1SSJEkaF5bRkKQJ0Ww2mZ6eptlsDnsokqQxEBG7A/cFvlsumo6IH0bE4RGx/TxtDomIzRGx+YorrlitoUqSunjsL2lYTDZL0gRoNptMTU2xceNGpqamPOiUJC0oIm4BHAW8JDN/B3wA2APYm2Lm8zt6tcvMwzJzXWau22mnnVZruJKkDh77Sxomk82SNAFarRbtdhuAdrtNq9VacgxnR0jSZIiIG1Ekmj+emZ8FyMzLMvO6zJwFPgjsM8wxSpLmN4hjf0laLpPNkjQB6vU6tVoNgFqtRr1eX1J7Z0dI0mSIiAA+DJydme/sWL5Lx2brgTNWe2ySpP5UPfaXpCo8QaAkTYBGo8HMzAytVot6vU6j0VhS+16zI5YaQ5I0FvYFngGcHhGnlcv+FZiKiL2BBC4Enj+MwUmSFlf12F+SqjDZLEkTotFoLPtAs16vs2nTJtrttrMjJGkNy8xvAtFj1ZdWeyySpOWrcuwvSVWYbJYkLcrZEZIkSZIkaTEmmyVJfXF2hCRJkiRJWognCJQkSZIkSZIkVWayWZK04prNJtPT0zSbzWEPRZIkSZIkrRDLaEiSVlSz2WT9+vXMzs6yadMmZmZmLMchSZIkSdIa5MxmSdKKarVazM7OAtBut2m1WkMekSRJkiRJWgkmmyVJK6per1Or1QCo1WrU6/Uhj0iSJEmSJK0Ey2hIklZUo9FgZmaGVqtFvV63hIYkSZIkSWuUyWZJ0oprNBommSVJkiRJWuNWrIxGRBwQEedGxPkR8aqV6keStPY1m02mp6dpNpvDHookSZK0IjzmlbQWrEiyOSK2BjYCfwvsBUxFxF4r0ZckaW1rNptMTU2xceNGpqamPPiWJEnSmuMxr6S1YqXKaOwDnJ+ZPwGIiE8CBwJn9dz63HNhv/1WaCiSpHF29/PO44vtdnGj3WbXf/xHeOc7hzsoSZIkaYBarRbt8pi33W7TarUsQydpLK1UGY1dgYs6bl9cLvuLiDgkIjZHxOZrrrlmhYYhSRp32++wA1ttVbxdbbXVVmy/ww5DHpEkSZI0WPV6nVqtBkCtVqNerw95RJK0PCs1szl6LMvr3cg8DDgMYN26dckJJ6zQUCRJ42xH4DfNJq1Wi3q9zo7O8JDGS/Q6LJQkSZ0ajQYzMzN/OeZ1VrOkcbVSyeaLgd06bt8euGSF+pIkrXGNRsMDbkmSJK1pHvNKWgtWqozGKcCeEXGniLgxcBBgdXtJkpbAM5JLkiRJksbJiiSbM/NaYBr4KnA2cGRmnrkSfUmStJBxTdh6RnJJkiRJ0rhZqZnNZOaXMvMumblHZr5hpfqRJGk+45yw7XVGckmSJEmSRtmKJZslSRq2cU7YekZySZIkSdK4MdksSVqzxjlhO3dG8g0bNjAzM+PJYiRJkiRJI2+bYQ9AkqSVMpewbbVa1Ov1sUvYVjkjebPZHNv7PSw+ZpIkSZJUTWTmsMfAunXrcvPmzcMehiRJa8Jcrep2u02tVnNmdB98zFZORJyameuGPQ6tPo/xJUmS1qaFjvEtoyFJ0hozzrWqh8XHTJIkSZKqM9ksSdICms0m09PTNJvNYQ+lb+Ncq3pYBvGYjeO+IkmSJEmDZBkNSZLm0Ww2Wb9+PbOzs2NXWsH6w0tX5TEb531lpVlGY3J5jC9pUnjcJWnSWEZDkqRlaLVazM7OAuNXWqHRaPC+971vWR94JnWGbpXHrOq+MqmPuSRJ427uvA8bN25kamrK93JJE89ksyRJ85jEchRzM3T9wLQ0VfYVP6RKkjS+PO+DJF2fyWZJkubRaDSYmZlhw4YNE1MWYZxncw9TlX3FD6mSJI2vSZycIEkL2WbYA5AkaZQ1Go2JSDLPqdfrbNq0iXa77QemJVruvjKIx9xakZIkDcfcF86+D0tSwRMESpK0QsY1AVh13ON6v4dpLZ+c0BMETi6P8SVJktamhY7xTTZLkrQC5urwzs1WHbUE4EqZ1Ps9TNPT02zcuPEvtzds2MD73ve+vtuv9JcDJpsnl8f4kiRJa9NCx/jWbJYkaQVMah3eSb3fw+TJCSVJkiSNCpPNkiStgEk9Wcyk3u9h8uSEkiRJkkaFJwiUJGkFTOrJYib1fg+bJyeUJEmSNAqs2SxJkkaGicvVt9InJ7Rm8+TyGF+SJGltWugY35nNkiRpJHSeXHDTpk2eXHCVLHdWNBRlOGZnZ4EtZTj8n0mSJEmTy5rNkiRpJFg/ePxYo1uSJElSJ5PNkiRpJJi4HD9VTk4oSZIkae2xjIYkSRoJnlxwPFUpw6HxEhEHAO8GtgY+lJlvHvKQJEmSNGKc2SxJkkZGo9Hgfe9737KTl81mk+npaZrN5oBHJk22iNga2Aj8LbAXMBURe1WJOajn6yCf96M2JuNMZpxRHJNxJEn9iswc9hg8U7UkSaqs2Wyyfv16ZmdnqdVqlnUYEQudqVrjIyIeBByamY8ub78aIDPfNF+bdbe8ZW6+//17rvvlr37FWWedxezsLFtttRV77bUXO9761kse16DijOKYjDOZcUZxTMaRJHWLE0+c9xjfmc2SJGlNaLVazM7OAp5gUFoBuwIXddy+uFx2PRFxSERsjojN11xzzbzBfn3llX95vs7OzvLrK69c1qAGFWcUx2ScyYwzimMyjiRpSTJz6Jf73//+KUmSVMUxxxyTtVotgazVannMMccMe0jKTGBzjsDxppdqF+DJFHWa524/A3jvQm0WOsYf1PN1kM/7URuTcSYzziiOyTiSpG4LHeNbRkOSJK0ZzWbTEwyOGMtorA3LKqOxyDH+oJ6vg3zej9qYjDOZcUZxTMaRJHVa6BjfZLMkSZJWjMnmtSEitgF+BDwS+DlwCvDUzDxzvjYe40uSJK1NCx3jb7Pag5EkSZI0XjLz2oiYBr4KbA0cvlCiWZIkSZPJZLMkSZKkRWXml4AvDXsckiRJGl1bDXsAkiRJkiRJkqTxZ7JZkiRJkiRJklSZyWZJkiRJkiRJUmUmmyVJkiRJkiRJlZlsliRJkiRJkiRVZrJZkiRJkiRJklSZyWZJkiRJkiRJUmUmmyVJkiRJkiRJlZlsliRJkiRJkiRVZrJZkiRJkiRJklSZyWZJkiRJkiRJUmWRmcMeAxFxBfDTBTbZEfhlhS6qtB9WW/u2b/se3bb2bd+T0Pe4jtu+R6/vO2bmThVia0z1cYwP1fe9QccZZCzjGGdUYhlnMuMMMpZxjDMqsYwzOnHmP8bPzJG/AJuH1X5Ybe3bvu17dNvat31PQt/jOm77Hr++vUz2ZVD7ziD3wVEbk3EmM84ojsk44xVnFMdknMmMM4pjMs7KxrGMhiRJkiRJkiSpMpPNkiRJkiRJkqTKxiXZfNgQ2w+rrX3bt32Pblv7tu9J6Htcx23f49e3Jtug9p1B7oOjNibjTGacQcYyzmTGGWQs4xhnVGIZZwzijMQJAiVJkiRJkiRJ421cZjZLkiRJkiRJkkaYyWZJkiRJkiRJUmUmmyVJkiRJkiRJlZlsliRJkiRJkiRVNhbJ5oj4pyVsu1VEbFVev3FE3C8idlhifzfqsWzHpcToanu3PreLiHhARDwhItaX12MJ/awr2z2u3z472t4hIrYrr+8eEU+KiHv20e7eS+mnR/sbd97HiHh4RLw8Iv52GbFuUf6/t6swHve1CRERtx5i37cZVt9LtRL7ylJen5b7HBnE87MrXt+vDV3tlvS6VOU1cQCvx8t6H+iKsaz3oYh4dER8ICKaEXFMef2AJd6FXnH/o8++nxMRu3ctf3YfbSMi/j4inlxef2REvCci/mlu/1vieL+2hG137Lr99LLvQxZ7jpb/ox3K6ztFxEcj4vSI+FRE3L6Pvt8ZEfv2O1ZpTvka9w8RsX95+6kR8b6I2NDr9X6BOC+KiN0GMJ4HRMStyus3i4jXRcTnI+ItEbFthbgPjoiXRUR9AGP86DLb7RMRf11e36scz2OWEedu5WvbLbqWV36NLuM8axnjeWX5evfu8vrdK/S/U0TcNyLu1X0flxBjm47rtyjfC5f6mWC75fTdR9y/iognRsReA4i17OOorjiNAcUZyHgq9D/QfXGePpbz/Kj8fB3U60ePuMt6PeuKsazX10G93g/w/Wcg74cd8faIiH8u98V3RMQLqryPqT8xYp/rY4g5jhvIzJG6AC/rurwc+OXc7UXaPh64DLgUOBD4LvA14GLgcX30/fBy2yuAFrB7x7rvVbhPP+tjmzpwPvBl4EPl5SvlsvoibR8GbAb+D/g18AXgJOAEYLc++n4VcAFwDvDc8u+HgTP7eMyvK8f4emCvZTw2PwC2L6+/AvgW8BrgWOBNi7R9f8f1BwM/A44HLgIe4762IvvaLYD/LPeN35bj/w7wzD76XVf+f/4fsFv5P/4tcApw3z7af6/cN/ZYxuPyZmDHjnH8pLy/PwUe1kf7Azqub1s+P34IfALYeZG2O3Rdbg1cCGwP7NBH37cFPgBsLNseCpwOHAnsskjbWwFvAj4GPHW+589K7CsD2E+X/RwZwPOzymtD1delKq+Jy349psL7QNl+2e9DwH8DXwIOKh+zB5fXvwS8e7n7WT/7GvBG4OvlGH4MvLDf/Wzu/w18BmhSvLZ9GvgH4JOLjZ3iNaTzcjpw1dztPvr+Xsf11wBfBQ4ux/CuRdqe1XH9U8BLgdsDzwSO7aPvK8r/90+Bt9LHa7gXL5kJ8PFyn/s8xXvT0cAzgCOAjywhzm+BS4BvAP8E7LTM8ZwJbFNeP6x8LXgw8Frgs0uIc3LH9ecBp5UxTgJetYQ4za7L54E/zN1eQpzXUhyfbaY4Dvga8B/l692/LSHOi4Bzgc9RHLsc2LFu2cerXX0sekzQse0ry8f2VcDTy8ur5pYtsd+9KN6zzgeupjhWuKDcF7ddQpxnAr8CfgT8LcUx5nEU7/tTS4hzbTme5wDbVXg8j2fLMe8zynF9iOI95oVLiPOarsfqR+XjcyHwgCXEeULX5YnAL+ZuLyHOvsDZ5XP2ARTHRT8pH+cHLSHOvcrnxkXlc377jnUnLyHOwPbFRfpZyvNjIM/XAb5+DOr1bFCvr4N6vR/U+89A3g87/vfHUhwPfovi+PQNwFnAfkuIsy3F5+ZzKF7XflU+795Mhdelrj6+vIRtK32W7dh22Z+nu+JU+lzfEWfZuYWuOJVyHB1xlp1nWTDuIIMNaOf7ffmk+4/yif9aig+urwVeu0jb75c70p2A3wF3LZffEdjcR9+nAPcorz8JOA944FzsRdq+Z57Le4Hf9dH32XQkUzqW3wk4u4/7vVPH9keX1x8FtPro+0zgZuWT5fcdsW4OnNFH3/csX8zOp0iUvKrXfZmn/Rkd1zcDNyuvb8MiH7a5/gft44H7ldfv3Of/231t6fvaMRQH1benSLz9O7An8BHgjYu0PZniIHyK4gDvSeXyRwLf7mPcFwBvp0jenUyRHLldn/vZ6V37yl+X1+/S5/+rc1/7EPBf5f/6pcDnFmk7W46983JN+fcnffT9FeCF5fPqhxQHt3colx2zSNujKN6EHk9xYHcUcJPu+7RC+0rV/bTKc6Tq87PKa0PV16Uqr4nLfj2mwvtAR9/Leh8CfjTP8gDO66Pv381z+T1w7SJtT2fLB4/tKBLc7+pnP5trX/69EcUB+Y07/l+nL9J2LkF9t3Lf3J3itfGOwB37ecw79zvg5h1jWazvczuun9q17rR++6Z4/f/3cv85p3yO3GWx9l4m9zL3OlY+Ry4Dti5vx2KvcV1xvk/xC806xYe0KyjeLw8GbrmEOGd3XP9e17rTljKejuundL2GLvh87IrzvfJ1YT+KL/H2o/ji9GEs7YPj6cDWQK18PbxVufxmS3ycTwduUV7fneJ96cXd97mf//s8l9OBq5YQ50fAjXosvzF9vF90tfkOW44P9qFM7lAksz6zxMdoR7Ycc+xRLt95GY/1YykSUL+iOOY+iPI4YAlxOo8jTgFuXV6vLXE8ncczXwT+tuOx+tYS4lxL8QX04cCm8vL78u/hS4hzMkWi+EEUEwAeXC6/H3DSEuJ8EziA4j3/nynev+b+Z0vZpwe5Lw7q+TGo5+ugXj8G9Xr2/Y7rVV5fB/Z6z2Defwbyftj5Pyuv14ATyut3WOL//qsUnzVv27HstuWyRScjdLS53zyX+wOXLiFOpc+yHXGW/Xm6K06lz/W99j+WmFvo/r93XD+eJeY4OtpewDLzLAvGrRpg0Jfyn/4Z4C1ArVzW1z+u64XojK51/SRWftB1+x4U3w6uX6w9xZvmIeWLTPfll330fR7lB96u5TcGzl+k7Q87rm/dtfOe2UffP+xoezmw1XyPY4+23S/U+wDvpPjAvOiBCMU3b/csr3+FLTP6brqUvrnhh+Xv99G3+9rS97XucZ9S/t0KOGcJj9nP5lvX5//7IRTf2P6C4oX1kEXansOWhNJ3utYtepDS1fdpXetOW6TtP5f79r06ll3Qz37Wx+O2WN/dY/03ilkAt+5zP62yr1TdT6s8Rzofs+U8P6u8NlR9XRrIa2J5u+/XYyq8D3S274jR9/sQxUHfPj2W79Pn8/NnzDMLALhokbZnd93emuKDw6cXG3ePfe0rXetO66P9eoqZQo2l7GfltucA96U4cO9+vizYN/C/FL9SuRnwDuDx5fKHAyf20fcNnkfAvSlmnyz42uBlsi/AGeV7yPbl+8QO5fKbdj8fF4nT/Xp3I6ABzABXLCHOp4Fnldc3AevK63ehPMbpM84Pyvt0a7o+4PXz2t+x7VYUH/KOBfYul/X9utCrz+7++3lt6tj2rK7btyjfm965xDiXAXtTfpnWcdkduGQJcc6hx5dxZaxz+40z9z+bb5/qvt+LxDmt4/olXeuWm9y9GfD3wGcpEs+fWMr/Hti1vH48cNPy+tb08b42z3i696HvLyHOX1PM9P5HIMplFyzlf9XdZ/drRa/3pH7+X+Xth1NOaFhinEHui4N6fgzq+fr9Xtd7PX6LxBnU69mgXl8H9Xo/qPefgbwflm1OZ0sSdns6PoPQx3F8x7bz7rtL2a8pfm35tfI1qPvypyXEOa3r9pI+y/baT1ji5+mubSt9ru+1D/W4j0sZT6UcxzzjWVKeZaHLX+pLjYrM/BnwpIg4EDg2It61lPYRsVVmzgLP7li2NcUTeTHXRMRtM/MX5VjOjIhHUnwbu8cibU+heCJ/q8eYDu2j78OBUyLikxSJAShKDRxE8cF3IZsj4sMUb+QHUvxsmYioURxYLOZ7EfEJim8HjwM+EhFfAR5B8dOLhVyvLmRmngycHBEvBx7aR98vAD4eET+gSHBsjogTKT60vnGRtneLiB+WY9g9IrbPzF9HUSdz0TpH7mvL2tf+GBEPzsxvRsTjgCvL8c9GLFrH989lba1tgYyIx2fm5yLiYRRvSH3LzG8A34iIF1LMnHwKxc+h5rMR+FJEvBn4SkT8N8UB/CMpfoq1mNtExMso9rVbRURk+WrMIrXvM/Pt5WP9roi4iGLmXy7Upktn/I8usK6Xm3Tsp2TmGyLiYorkVj91CavsK1X30yrPkUrPz4qvDZVel6j2mljl9bjK+wBUex96JvCBiLglRakTKPaz35XrFvNRig9ll/VY94lF2v44Ih6WmScCZOZ1wHMi4r8ofuq7mF9ExC0y8w+Z+Zd6iBFxW4qfZS8oM4+OiBbw+oh4Lv29f8y5lOIDJMCVEbFLZl5a1mq7dpG20xQH7OeWt18aEX+k+CnnM/ro+wav95k5NxPr1f0MXhPrwxQfjram2Ac/HRE/oUj0fHIJcbpf766h/Gl2RNxsCXGeC7w7Il5DMVvy2+V79UXlun5tC5xajivn3r/Kuql9n+egfN96V0R8uvx7GSzr89rVEVHLzDbFF1IAlPU7Z5cQ5xcRsXdmnlaO7w8R8ViK44N7LSHOFyhmXJ7WvSIiTlhCnJcAx0XEeWw5LrkD8FcUr2tL8eOI+HeK960nUB4PlrVSl/KY/ywi3gTcEjgnIt5BcYy5P8XrdL/+sp9k5p8oft59ZPk/e/wS4rwUaEXEURSzdr9Wvp8/hCLB1q87R0SzHNftO/Yn6O94BoDMPCUiHkUxg/BrEfFKlnYcPKfzmLf7fWYp750REdtm5m/L8R0fEU+kmDG5wxLivITB7YuDen4M6vk6kNePAb6eDeT1lcG93g/q/WdQ74dQzI49JSK+Q3HM/xYoatJTfl7v008j4l8ofulxWRljZ4rj8YsWatjlbOD5mXle94ryMe9X1c+yc6p8nv6LAXyun7Ps3EKXqjmOG1hGnmVeseU+jZ7yQ+rrKOpCLZq4jKKI/emZ+eeu5btT/NTm/y3Sfn+Kb6N+0LV8W2A6M9+wQNsdgD93vAkvWRQnbmgAu1LseBdT1DNa8IN+eVD0PIp6Wj+g+EnSdeWL3W0y86eLtN8GeDLFE+UzFLPJnkoxW2xjZv5xgbZPzczFPswvqEwA1Sm+VdyG4n5/NTN/s0i7O3YtuiQzr4nipEkPzczPLmEMk7av3Z0iIbTUfe3eFG9md6H4NvbZmfmj8o1sKjPfs0Db+1DU9pylOBD+R4pZrj8HntcrKdnV/pOZeVCfd7FX+/3KPjv3s6OBTeVBwkJtX9u16P2ZeUWZUHprZv5Dn2N4HMXBxO6Zeds+2/xn2ccfupb/FfDmzHzSAm3fSlHC4P+6lh8AvDcz9+yj/+XuK5X204rPkUrPz642S31tqPy6VOE1cdmvx1XeB8r2ld6Hyhi3pWM/m/uiYSXNfSgoP9h3r9s1M3++zLg3pyhrcfkS2tyHou7k/yynz444W1PMbunruVc+p7bJzF8toY9bdL8mSf2KiNsBZOYlUZwUbX+KmUYnLyHGXTLzRwMc0y0pyh1tQ/H60+vLq+XErVH88uKCZbb/O2DfzPzXJba7SWZe1WP5jhT1KU/vM87tKcoR3eD1OCL2zcyTljKuQYjiy9t9uP5xySnll4VLibMd8K9sed96c2b+vnxNvHtmfqfPOLcCNlC8f74PeDTwLIqamf+VmX0lnCPinzPz7Uu5DwvE2pbiPbzzOOKYzDxnCTEe1rXo1DJ5uTNFKbyNyxjX7Sjq5K7LzDsvsW0D+L/u97aI2AN4Yma+tc84T6WYXfudruV3AP49M5+3hDENZF8clEE9Xwf1+tGj/bJezxaIt6zX16qv94N8/xnE+2FHrHsAd6eY7NP3c70rxvYUpSYOBOZOfHcZRTL9LZnZV+I6Ip5E8Vns3B7rHp+Zn+szTuXPsuX2y/48vUDMJX+u72g7kNxCGWs/rp/juIiibvuiOY6OGJXyLPPGHeVksyStNWVya4/MPGPYYxmUiDgqM/uZBTrQtva9+n2v9rgj4m7LPWCu2t6+V79vTbZBfYlhHONUiPGXX1RVjLNLv0nmVRrPqMVZk4+PpMmyFj/XD9JSpmivioi4VUS8KSI+Vn7z2Lnu/SvVdsT6nlpq+wXifnm5bau2t+/J6DsivlChv2W3Hde+yxmUbx5G31XbLmBJs1MG2Na+x6vtctq3KvZXpb19D6e9Jlc/JXuMY5yVjPOlAcSA4oR6gzCo8YxanDX1+HQfWw/yOH25sYwzmXEGHasrzrOMc32Z+ae5RPMojGfU4oxczWaKWlLnUdRNenYUNZSeWv6U44Er2HbU+n5Sv+0j4n7zraI42cCCqrS378nqex67LqPNINra93D67qXKT2Sq/rzGvsenbc/2ETFf+Z2gOFv8gqq0t+/V71uTLYoahT1XsYT6i8YxTpU4C3UxgBjGmbw43aU3+i7FsYKxjDOZcQYdq9PrWFrdd+NMeJxRTDbv0fET289FxL9RnEygscJtx7nvU4AT6f1Gud0Kt7fvyeq7l+8vo80g2tr3cPqWBu1ZwMuBG9QHBKZ6LBtke/te/b412d4IvI3eJ7Fcyi8ujWOcKnHm88EBxDDOhMXpLglSpUTIoGIZZzLjVI0VxUnOe64CdjaOcZYkM0fqQnHmyq26lh1McTbdn65U2zHv+wxgz3nWXdRH38tub9+T1Xe/F+CoYbS176H1/f1htLXv8Wo7X3vga8DfzLP9BX3EXHZ7+179vr1M9gX4FnD/edb1fQxiHONUiePFyyAvwKEL3R5GLONMZpyqsShOBrg3cMeuy+4UJz03jnH6voxczWbg88AjOhdk5kcoZtBcvYJtx7nvQ5n/2/wX9tF3lfb2PVl992ucasLad/W+XzmktvY9Xm3na/8k4LReG2fmnfqIWaW9fa9+35pszwJ+Os+6dcYxzirFuZ5Rq7tqnPGKA5y6yO1hxDLOZMapGusLwC0y86ddlwuBE4xjnKWIMpMtSQMTEd/LzPlqQ69YW/sebN8RcToL1OjNzHsvEHPZbe179fse5rj7FRFH5ZZyU6va3r5Xv29Njoi4bWb+wjjGGVaciNglO35q3n3bOMaRJC3NKM5svoFBno3Tvu3bvgffXmvWY4HHAV8pL08rL18CPrOCbe179fse5rj7Nc6z/+1bmt+XjGOcYcbpTjAuN+FonMmLExF3iYjjIuKM8va9I+I1yxnPoGIZZzLjDDqWVNlCNTZG5cKI1Ze0b/u277V5X+x73vUn9bNs0G3te/X7Hua4+4j9vWG1t+/htPcyGZdBHYMYxzgVYhy60G3jGGeBGCcC+3Tuh8AZyxzPQGIZZzLjrECsLyx02zjGWewyFjObge8Pqa1927d9L8+o1YS172ptbx4RD567ERH7AjfvM3aVtva9+n0Pc9ySJtMHjWOcIccZtbqrxhmfOLXMPLlr2bXLHM+gYhlnMuMMOtbzFrltHOMsaJvlNlxNmfns7mX91gGs0ta+7du+r98++qzLmpmtHvGW3da+h9N3h2cDmyJi2zLebylO0tOPKm3te/X7Hua4FxNDbG/fw2mvCZCZ7zeOcYYZJzM/v9Bt4xhnAb+MiD0oj7cj4knAcus+DyqWcSYzzkBj5QiVqzHO+MWBMUk2z2NcaxDat32Pc9+PLf9uKP9+rPz7NKC9SLwqbe17CH1HxMs6bn6UYobqH8vbD2eBGfFV2tr36vc9zHEvwSjP/rfvlWmvNSwivpCZj53vtnGMs0px7gJ8ANg5M+8ZEfcGGpn5X8YxTh82AIcBd4uInwMXAE9fYoxBxzLOZMYZaKyIODQzD53vtnGMs2iszHknvY20iPheZt5vtdvat33bN0TESZm572LLBt3Wvle374h4bXn1rsBfA8dQzFR8HPD1zHzuSrS179Xve8jj7msG/kq0t+/V71uaExG7dM6Y6b5tHOOsUpwTgVcA/5uZ9y2XnZGZ9zSOcZYQ7+bAVpn5++W0X4lYxpnMOIOKFRGPy47Z/t23jWOcxYzzzGZJw3PziHhwZn4TIJZRE3aZbe17FfvOzNeV27eA+80dsETEocCnV6qtfa9+38McN2M8+9++l91eGrmffBpnMuNQ1jiNuF7Vn2XXXTXOZMWJiO2AfwB2B7aZi5eZLxpWLONMZpxBx+pOMC434WicyYwDjM0JAnsZ1xqE9m3fa6HvZwMbI+LCiLgA2MjSasIut619D6fvOwBXd9y+muIgZqXb2vfq973q487Mn2bmT4F9M/NfMvP08vIq4NGLdVilvX2vft/SnPLLqHlvG8c4qxGH0au7apzxivMliuOc0ylOMDh3WY5BxTLOZMYZWKyIuEtEHBcRZ5S37x0RrzGOcZZinGc2j2sNQvu277HtO8a0Jqx9L6/vDh8DTo6IoykOytcDH1mFtva9+n0Pc9xjN/vfviu312Tr/gC83A/XxjFOlTijVnfVOOMV56aZ+bLFN1vVWMaZzDiDjPVByjIzAJn5w4j4BLDUmubGmcw4AKNXsznGtAahfdv3hPQ9rjVh7XsZfXfFuh/wkPLm1zOz7xO+VWlr36vf97DGXbbbBGxL8Rr1W+BZq9Hevle/b0kaJTFidVeNMx5xIuKlwB+ALwBXzS3PzCuHFcs4kxlnwGM6JTP/OiK+n1tqmp+WmXsbxzj9GsWZzeNag9C+7XvN951jWhPWvpfXd1es7wHfW0qbQbS179Xve7XHHWM8+9++l9deioi7AB8Ads7Me0bEvYFGZi5p9oxxjFMlThlrO0ao7qpxxisORbmwtwH/xpbJPAnceYlxBhnLOJMZZ5CxRq1cjXHGKw7A6M1snhMRJ2XmvostG3Rb+7Zv++6r73OA+2TmVeXtmwA/yMy7rWRb+x5O39JKijGe/W/f1X81ockUESdS/lSzY/bMGZl5T+MYZ7XilO2+BXyHosbp7NzyzFxKCSnjTG6cHwMPyMxfLqXdSsYyzmTGGfCY7kxRZuZvgF9TlpnJzAuNY5x+jeLM5jnjWoPQvu17Evoe15qw9r28vqUVk2M8+9++q/9qQhOrlpknRzmbsHStcYyzynFg9OquGme84pxJf78sXc1YxpnMOAOLlZk/AfaPimVmjDOZceaMcrL52cCmiLheHcBVaGvf9m3fi8jMN0TEl9lSl7XvGp1V2tr3cPqWVskdKH7+N+dqip+3rkZ7+179vjXZRu0nn8aZzDgAH4uI51G9XqpxJjPOdcBpEXF8V5ylluMYZCzjTGacgcWKEStXY5zxijNn5JLNMaY1CO3bvieh7045RjVh7bt639IqGOfZ//btrya0NBsofqp5t4j4OeVPNY1jnFWOA6NXd9U44xXnc+VlEAYVyziTGWeQsb5EjzIzxjHOUoxczeYY0xqE9m3fk9C3JK2kiLgfW2bgf32pM/CrtLfv1e9bigH9VNM4xqkQY6TqrhpnvOJIa1FEfC8z72cc41SKN2rJ5jlR1AF8Ym6pA3hL4NOZecBKtrVv+7bv/tpLkiQtR/dPNeeWV/3Jp3GMs5Q4ZawmcFBmVqpzapzJihMRR2bm30fE6WyZGT0nM/M+qx3LOJMZZ9CxyngvBf5AxTIzxpnMOHNGroxGh3GtQWjf9j0JfUuSJC3XqP3k0ziTGQdGr+6qccYjzovLv2cDr+hYHsBblziWQcUyzmTGGXQsGL1yNcYZrzjAaCebx7UGoX3b9yT0LUmStFw3zcyXLb6ZcYyzonFg9OquGmcM4mTm3Akp/yozf9q5LiLuNoxYxpnMOIOOVXpZGatqmRnjTGYcYITLaMD41iC0b/uehL4lSZKWY9R+8mmcyYwjLVdE/CPwTxQz/n7cseqWwEmZ2fcJKwcVyziTGWfQscp4I1GuxjjjGecv8UY52SxJkiRpbYmIDcAbgN/Q8VPNzFzSTzWNY5zlxhm1uqvGGbs42wLbA28CXtWx6vfL+PJkILGMM5lxBh2rjHc0cA+gUrka40xmnL/EM9ksSZIkabVExI+BB1T9qaZxjFMhxi6ZeWlEHEmPGqeZ+ffGMY40iSLi4F7LM3NJJTeNM5lx5oxyzWZJkiRJa8+ZwCB+pmkc4yxLjljdVeOMVxxpLVtuctE4xulkslmSJEnSaroOOC0iqv5U0zjGWVaczhqnEfHDjlW3BE4yjnGkSTOC5WqMM0ZxbhDXMhqSJEmSVsuo/eTTOJMXZ9TqrhpnvOJIa9GolasxznjFuUFck82SJEmSJEnSZIuI72Xm/bqW/TAz720c4/TLMhqSJEmSVtyo/eTTOJMZR5J0Q6NWrsY44xXnBnGd2SxJkiRppY3aTz6NM5lxJEk3NGrlaowzXnFuENdksyRJkqTVMmo/+TTOZMaRJEkrwzIakiRJklbcqP3k0ziTGUeSJK0sZzZLkiRJWnGj9pNP40xmHEmStLJMNkurKCJOAB6WmdGxbD/geOB1mXnoUAYmIiKBEzNzv2GPRSsrIj4KHADcKTP/OOzxDFpEPBH4DLB/Zh437PFIkiRJkibHVsMegDRKIuJuEfHeiDgjIn4bEVdHxCUR8cWIeE5E3HTYY9RoiIitI+J5EXFiRFwZEddExOUR8cOI+FBENIYwpv0iIiPi0HnWP7Ncv98CMZ5WbpMRUV+hoQ5NRKwDng68uTPRHBG7RsQLI+LLEXFhRFwVEb+KiGMj4gmLxHxsRJxQvmb8ISK+GxEH99guIuKA8jXmtIj4dUT8OSLOjYj/joidF+hjh3KbubFdEhGHR8Tte2z+WeB7wDsjwvd5SZIkSdKqsWazVIqI/wBeS/ElzHeAjwB/AHYG9gM+BPwjsG5IQ9SIiIitgS9QzI79DfBF4GJgB2AP4KnA3YDmkIZYxSFAUpzZ/RCgNdzhDNwbgd8BH+ha/kLglcAFFL80+AVwR+AJwP4R8a7MfFl3sIiYBt4L/Ar4f8DVwJOAIyLiXpn5zx2b3wT4crnN14H/A7YGHgG8GDgoIh6Smed19XFr4FvAXYCvAZ+k2L+eBfxdRDwoM38yt31mZkS8BfgUcBDwiSU9QpIkSZIkLZPJZgmIiH8FXgdcBDw5M7/bY5vHAi9f7bFpJE1RJJp/QFEW5bedKyOiBjxgGAOrIiLuCjyUIgm6A9CIiJ0z87LhjmwwIuIuwP7AhzLzT12rTwb2y8wTu9rcneLLp5dGxMcz89SOdbsDbweuBNZl5oXl8v8ETgFeHhFHZea3yybXAa8B3p+Zv+6IsxXwfuD5wDuBx3WN7Y0UiebrJbwj4kXAu8u2B3S1OYbii5B/wmSzJEnSskTEdsBTM/P9wx6LJI0Lf16riVcmjA4FrgEe0yvRDJCZczNZO9s+MyKOioifRMSfIuJ3EXFSRDx9AOO6f0S8OyJ+UJZp+HNEnBcR74iI7bu2fXRZ9uANXcsf0VESYbeudUeWy+/csezxEfH/IuJHEfHHsiTAqRHxou6f40fEJ8v2D51n/E8q17+3j/u6bUS8IiK+FhEXR1G+5IqIaEbEA+dpk2Xpgh0j4rCIuLQsL3BmRDxrnjY3joh/j4gfl9teEBH/FRE3WWyMXf6m/HtEd6IZIDPbmXn8at7HiDiCYkYuwGs7/u8Lls3o8rzy7ybgCOBGwDPnGdtcSY5nRsTDy3H+vnwOfLFM0na3OaJss3tEPD8iTi/368vK+7dtjzYPL9edVcb+UxRlbl4bSy9r82yKGduf6l6RmZ/tTjSXy8/u2H6/HvFuArxvLtFctvk1RYIY4AUdy6/JzDd0JprL5bPAf/bqIyJuDjwD+CPFLy86vQ+4EHh05/O4jHkV8Dlg34i4W/f9kiRJUl+2o/jyvi9RMM8iaaL5IigVP0W/EXBUZp6x0IZlAqfTB4DdKX4S/98UP2+/I/CxiHh9xXE9j+In8OdSJP/+B7gUeBlwUkTcsmPbb1D8NP+RXTEe0XH9L+siIiiSWhd2/vweeDNwP+C7FKUBPgbcgmL25Ee6Ys99u//8ecZ/SPn3sHnWd7o78AZglqIkxTuBY8vxfyMiumdtztkOOAl4EMUJ0T4K3A44PLpq5pb3+UiKpF5SJOq+QJEwPLKPMXb6Vfn3Lktos9L38XNs+R+dSDFTf+5y4WKDi4gbAwdTlJg4mmI27NXAc8vHbj6PpSi18TuKffQbwGOAEyNix3navLW8/ADYCPycYn8/use2rwTqwGnA/1KUs7ma4guiL0dR0qRf+1PMLv7OEtpA8UUUwLVdy+eeX1/p0ebLXdss5up5+ngQcDPgpMz8feeKMkk9V+bk4T1inlT+3b/PMUiSJOn63gzsEcX5Nt5WTh45JYrztLwOislLEXF2RLyf4rwZD4mIc6I4j8sZEfHxiNg/iklJ50XEPkO9R5K00jLTi5eJvgDHUSQfn7uMtnv0WHbjMuY1wK5d604onnbXW7Zf2f+hXcvvCGzdI/5zyu1f2bX86xSJqm07ln2b4oDnl8DHOpbfp4zx4T7uz1YUScwEHtC17gzgz8COXcvvRJFUPanPx3Hb7hjl8tsDlwBn91iX5eVDnY8TsFf5OJzVtf1Ty+2/Ddy0Y/kOwI/LdSf0Od77UiQHZykS8k8A7jgC97HnvtTnfTqobPu/HcuOKpc9ssf2zyzXXdu9HnhTue5fupYfUS7/GXCHjuXblPtvAvt0tbkzED36f325/VP6vH83L8d6+hIfl1tR1G+eBe7ete6Kcgy3nqftH8r1tT76eWW57UzX8g3l8vfO0+6fy/Vv6bFu7nl+5FL3By9evHjx4sWLFy8JxcSiM8rrdYqJNEHxGekLFCXodi+PFR/Y0eZa4F7ldqcCh5ftDgQ+N+z75cWLFy8reXFmswS7lH8vXmrDzPxxj2VXU8zW3IYbzjReSuyfZuZ1PVYdTjGL9NFdy4+jONnYwwDKmc/rKGbPHt81lkd2tOnss9f9maWY2UyPPj9AUUbg4K7lh1AcTP1vj/HfQGb+NjN/+f/bu/c4SfO6PvSfLyyKrSi3RQlIlgCixAtIh8QohosWeEnjiiKtGNRE4knGHCV6jnJ8KZGTeIm3aAYV0QUiNqCI1BEvZRBBExF7YV0WFbnDygoLiwZsgkB/zx9PDfT29sx0z1MzVdPzfr9e/erqp5761Ld6qmpmvvV7vs8B26/PsJr306vqHgfcdCfJE/f+nrr7TzOs6PyMfau/T42deFJ3/+89+9+UoXF5aN39qiSPS/KO+ffnJ3lzVb27ql5QVftn7l6oxzjGqZXoz9iz7dTlb87pPae7X7xv26nV7KdbtfH93f3WUz9094cyrN6/xW26+43d3Qdk/MT8+/7n5OncLcPr44ZD7n9qNfzTM5wk9Kd7GKmx16mxH7cYpbJv+y3Gg+y7n3+UYUTGezPMdD6X+7j9Adf91fz7Qc8rAACOZjL/elWGBT2fnuQ+8+ve0t17j557U3e/ev5/qdckefH837SvztCMBji2NJthaIomwwrAo92w6h5VdXJ+mNTOqRm5GZqPydDgOreiqm5TVSeq6g9qmNn84Xn2bobVlvuzf3f+/VQj+Z9laHi/eH7dXffM0X3Yvtucus87VdUPzg8Le9+ex3PqpGj77/NZGVZvPmFPxqk5v+/JEcZTVNXn1zBH+m3zucSn7vtbT3PfSfK67v5fB2x/2/z77fds+9wMv7s/OGD/3ztsnad09/MyNPEekaFZ/esZ3lO/Ism0qp65f/zEBXiM56Sq7p1hVfRr+6Mns0uGURDvSHLlGUZibJ+htjsccN2RblNVH19VT5ofrvg3VbU7/52datwf9jV2p/n395xxr5v70SRfnWE0yBPPsu9BzvreUsNJC/+/DKN8HnfQBz4j7uOm+ffT/dkBAHB4leQHuvv+8697d/fPz6/723377h2/uLvn590M/0cDOLa8ycEwwuDTM4wzOLT5CblekaE59vsZZqf+TYaZsFdkWO171BPP7fXcJFcmeWOSF2ZYpXjqHynfdkD2yzP8I+dUs/nhGUY9/EE+OrP34VX1ugyHe/1pd59a+XjqTMt/nGEExisyNJJvynAI2O2T/J/777O731tVv5jkW6rqoT2cFO9RST4lyU/sXUF8JlV1ZYbVvf87w0rsN8wfy26GJug/O+DxJslfnyby1NzbvfN8PynJTd39wQP2/6sDtp3VPGs2/8p8fvCjM6w+/xcZZhD/2vy6C/EYz9U3Z/jH8zP2buzuD83/fP99hg8QfuQw9c1vd6babnGbHPB45h9c/G6G1c7XZXhN3JiPzlD+vhz+Nfb++fdDnVSwqv5zkm/PMN7jy/qW89qT4fV+5wzPrXcfcP0nzr8f9GFBquo+GY46uGOSx3b39DT3kZx+dfQn7ttvr4+bf3//AdcBAHB2701y6kjC307ylKp6dne/r6rulo/+uxSAOc1mGJqxD8vQnP35s+y71xMzrJb8xu5+xt4rqmoztxwtcWhVtZ6h0fzfk3zp3gbp/OzG/9f+23T3B6vqD5I8oqrumuHx/GF37yT5i6q6PsOJwl6Z4R9Mv7sv4l9laDT/h+5+8r56Pi9Ds/kgP53kWzKcKPAlOdqJAU95SobG+Pr+UQVV9bOZjwYZ6W+S3LGqbnNAw/lTFpCf+aiL51XVZ2UYh/CwzJvNuTCP8cj2rERPkh+oqh84za7fnIObzefTozI0mp/Z3d+w94r5c/z7jpD1zvn3O51xryH7xzN8oPOSJF8+fw0d5LUZms2flmEW+P76Pj7J9Qfdfn6UwYvn9Xx1d7/wDPeRnP5klKcO3fyLA6479VjfecB1AACcRXe/e35iv+syHPX3S0n+cL6w4n0ZRuodNPoQ4JKl2QzDrNjvTvLoqrrffB7ugarqY/escLz3/PvzD9h1bOPwVPb0gMbog/LRFYv7vTjDWIfHJvnM3LwZ97sZmnev2rPvQfd5pMfT3ddW1f/IMGrhH2doaL/sgPm2Z3LvJK85oAl7qyRfcIScM3nlvLYvyNBE3OshC7qPU947/753jMaFeIyn/qF7lNXOj0pylwxNzYNGjCTJQ5N8WlX9s+5+6Yj6jmqRr7EbMqyKvu/pdpiPPfmvSf5NhtXnj+ruM60K/t0kn5/kkdnXbE7yJXv22X8/n5Xhg6RPSvLo7v71M9zHyzOsTP78qrpdd596bp167kzmP+5/TifDERtJcs0Z8gEAOIPu/tp9m/7LAbt95p7937zv52843XUAx5GZzVzy5n/hPznJxyR50XxV8S1U1SMzfJp9ypvn3x+yb79HZFglPMbpsu+S4eSDp3OqsfVdGRqdL9533SdlaKTt5pZzik93nw/I0Iw/k5/O8Pt7/vx+f+Ys++/35iT3qaq/t+d+K0Oz/H5HzDqdUyeg+49V9ZFRClV1x9zypGxnVFWbVfXF82bf/us+JR89od7L9lz15pz/x3hqlMNRTgh3aiX693b3vzroK8l/2rfvhfLm+feH7N04H2HzQ0cJmp+Q5WVJ7jyfUX0z8z+Lp2V4ffxmko2zNJqT4Tn1gSQnquqKPVl3SPKk+Y83ey1U1f0zNIZvl6GZfaZGc7r7fUn+W4ZV0k/ed/WJDCN7fru733jAzf/J/PtBjWgAAABYOCubIUl3/6equixD4++Pq+p/ZjiJ2fuSfHKGGcf3yc1PbPbUJN+Y5Jer6vlJ/jLDp9SPzHBivK8ZUdIfJ/kfSb5yXssfzOv4kgwrUN9+mtu9KsOc5bvMa3/FnutONZ7vkmS7u/96322fleQ7k/xEVT00yesyPOYvT/KrZ3k8v5zkxzOcrO1d8/2P4sczNOVeNf9dfjDDitH7ZTh52j8/Yt5BtjI8ho0k11XVCzOclO2rMvy+73WErH+cYazIX81Hl7xpvv2eSb4sw8rzF2aY0XzKhXiMr83wPHxsVf1dkrdmOHHcf+vut+zfuarumWG197vy0XEfB3nOvP5HV9W3dvdNZ9h3kf6/JK9P8sT5auBXZWikf3mSF+VoTfVk+DDk0RlW/79+33Xfm+FDovdnWAn8XfvO75gk13T3r536obvfVFXfmeQnk2xX1XMzjEr5qgwz4H907wkX503oF2eY0fziJJ83H1Gz30/se30+KUPD/YnzZvUrknxGhlXp70zyb0/zeCcZ5mPfYnU1AAAAnA+azTDX3d9fVb+cYWXjQzM0km+bYbXoNRlWUv7inv2vnTdl/98kX5rh9fQnSb4yQ4PnnJvN3f3hqtrYk/3vMjQRnz7fduCoj+7erarfm9fwsu7+0J7rrq+qv8gw+/UWzafufntVPTjJD2YY6/CIJH+e4ffx38/0eLr776rq2Rnm3D7jNCdTO9Pj/dmq+sD89o/P0PD7/Qx/Bo/OAhqx3d1V9dUZVn1/Q4ZVoTdkWJ36/RlO3HdYP5qhGf9FST47w+/q1HPl9zLMcvul+WraU/d/IR7jh+cnIvzBJI/JsHq2MnxYcYtmc4bmamVoRv/dGXL/tqqek2HF9uMzNJ7Pu/n9PizD43lIkgdnOGHmU5L8WI7+Gnt+kndkOHnj/iME7jn//nE5/Ur+Z2ZfU767f6qq3pzkO+a5t8rw+vye7n7mvtt/UoZGczLMVH94DvaM7DmJ4nxW4Odl+DDsKzL8Ht6d4bn7vd19/f6Aqvq0DCub/8sZZk4DAADAQtWeXgjAOZs3ub8wyX27+3VLLgcOVFXfnWEsyOd296vOtv/Fqqp+NMMHKp9xmhEbAAAAsHCazcBoVfWgJH+U5Le6+0vOtj8sy3xe92uTXNvdixhdsnKq6q5J3pDkqd39HcuuBwAAgEuHMRrAOauq/yPDnOZvzHDSwe9bbkVwZt39v6vq65M8tKo+vrv/dtk1nQdXZBj7c9CZ0gEAAOC8sbIZOGfzWbV3zzBH98nd/UvLrQgAAACAZdFsBgAAAABgtJUYo3HnO9+5r7jiimWXAQDAgl199dXv6u7Ll10HAABw/q1Es/mKK67I9vb2sssAAGDBquoty64BAAC4MG617AIAAAAAALj4aTYDAAAAADCaZjMAAAAAAKNpNgMAAAAAMJpmMwAAAAAAo2k2AwAAAAAwmmYzAAAAAACjaTYDAAAAADCaZjMAAAAAAKNpNgMAAAAAMJpmMwAAAAAAo2k2AwAAAAAwmmYzAAAAAACjaTYDAHBk0+k0J06cyHQ6XXYpAADAitBsBgDgSKbTaTY3N3Py5Mlsbm5qOAMAAEk0mwEAOKLZbJadnZ0kyc7OTmaz2ZIrAgAAVoFmMwAARzKZTLK2tpYkWVtby2QyWXJFAADAKrhs2QUAAHBx2djYyNbWVmazWSaTSTY2NpZdEgAAsAKqu5ddQ9bX13t7e3vZZQAAsGBVdXV3ry+7DgAA4PwzRgMAAAAAgNE0mwEAAAAAGO2szeaq+oWqemdVXbdn23Or6pr515ur6pr59iuq6v17rvuZ81g7AAAAAAAr4jAnCHxGkv+a5FmnNnT315y6XFU/muRv9uz/hu6+/4LqAwAAAADgInDWZnN3v6yqrjjouqqqJI9J8rAF1wUAAAAAwEVk7MzmByd5R3e/bs+2e1bVq6rqpVX14NPdsKqeUFXbVbV94403jiwDAAAAAIBlGtts3kyytefnG5Lco7sfkOSJSX6pqj7xoBt299O6e7271y+//PKRZQAAAAAAsEzn3GyuqsuSfGWS557a1t0f6O53zy9fneQNST5tbJEAAAAAAKy2MSubvyjJn3f39ac2VNXlVXXr+eV/kOQ+Sd44rkQAAAAAAFbdWZvNVbWV5A+T3Leqrq+qfzm/6rG5+QiNJPnCJNdW1Z8k+ZUk39LdNy2yYAAAAAAAVs9lZ9uhuzdPs/0bDtj2/CTPH18WAAAAAAAXk7EnCAQAAAAAAM1mAAAAAADG02wGALiETKfTnDhxItPpdNmlAAAAx4xmMwDAJWI6nWZzczMnT57M5uamhjMAALBQms0AAJeI2WyWnZ2dJMnOzk5ms9mSKwIAAI4TzWYAgEvEZDLJ2tpakmRtbS2TyWTJFQEAAMfJZcsuAACAC2NjYyNbW1uZzWaZTCbZ2NhYdkkAAMAxUt297Bqyvr7e29vbyy4DAIAFq6qru3t92XUAAADnnzEaAAAAAACMptkMAAAAAMBoms0AAAAAAIym2QwAAAAAwGiazQAAAAAAjKbZDAAAAADAaJrNAAAAAACMptkMAAAAAMBoms0AAAAAAIym2QwAAAAAwGiazQAAAAAAjKbZDAAAAADAaJrNAAAAAACMptkMAHARmE6nOXHiRKbT6bJLAQAAONBlyy4AAIAzm06nufLKK7O7u5urrroqW1tb2djYWHZZAAAAN2NlMwDAipvNZtnd3U2S7OzsZDabLbkiAACAW9JsBgBYcZPJJGtra0mStbW1TCaTJVcEAABwS8ZoAACsuI2NjWxtbWU2m2UymRihAQAArKTq7mXXkPX19d7e3l52GQAALFhVXd3d68uuAwAAOP+M0QAAAAAAYDTNZgAAAAAARtNsBgAAAABgNM1mAAAAAABG02wGAAAAAGA0zWYAAAAAAEbTbAYAAAAAYDTNZgAAAAAARtNsBgAAAABgNM1mAAAAAABG02wGAAAAAGC0szabq+oXquqdVXXdnm1Prqq/rKpr5l9fuue6766q11fVa6vqEeercAAAAAAAVsdhVjY/I8kjD9j+4919//nXbyRJVd0vyWOT/MP5bZ5aVbdeVLEAABeb6XSaEydOZDqdLrsUAACA8+qszebuflmSmw6Z96gkz+nuD3T3m5K8PsmDRtQHAHDRmk6n2dzczMmTJ7O5uanhDAAAHGtjZjafqKpr52M27jDfdrckb9uzz/XzbbdQVU+oqu2q2r7xxhtHlAEAsJpms1l2dnaSJDs7O5nNZkuuCAAA4Pw512bzTye5V5L7J7khyY/Ot9cB+/ZBAd39tO5e7+71yy+//BzLAABYXZPJJGtra0mStbW1TCaTJVcEAABw/lx2Ljfq7neculxVP5fk1+c/Xp/kU/fsevckbz/n6gAALmIbGxvZ2trKbDbLZDLJxsbGsksCAAA4b86p2VxVd+3uG+Y/XpnkuvnlaZJfqqofS/L3ktwnyStGVwkAcJHa2NjQZAYAAC4JZ202V9VWkockuXNVXZ/k+5I8pKrun2FExpuT/Osk6e7XVNXzkvxpkg8l+bfd/eHzUjkAAAAAACujug8cqXxBra+v9/b29rLLAABgwarq6u5eX3YdAADA+XeuJwgEAAAAAICP0GwGAAAAAGA0zWYAAAAAAEbTbAYAAAAAYDTNZgAAAAAARtNsBgAAAABgNM1mAAAAAABG02wGAAAAAGA0zWYAAAAAAEbTbAYAAAAAYDTNZgAAAAAARtNsBgA4wHQ6zYkTJzKdTpddCgAAwEVBsxkAYJ/pdJrNzc2cPHkym5ubGs4AAACHoNkMALDPbDbLzs5OkmRnZyez2WzJFQEAAKw+zWYAgH0mk0nW1taSJGtra5lMJkuuCAAAYPVdtuwCAABWzcbGRra2tjKbzTKZTLKxsbHskgAAAFZedfeya8j6+npvb28vuwwAABasqq7u7vVl1wEAAJx/xmgAAAAAADCaZjMAAAAAAKNpNgMAAAAAMJpmMwAAAAAAo2k2AwAAAAAwmmYzAAAAAACjaTYDAAAAADCaZjMAAAAAAKNpNgMAAAAAMJpmMwAAAAAAo2k2AwAAAAAwmmYzAAAAAACjaTYDAAAAADCaZjMAcKxMp9OcOHEi0+l02aUAAABcUjSbAYBjYzqdZnNzMydPnszm5qaGMwAAwAWk2QwAHBuz2Sw7OztJkp2dncxmsyVXBAAAcOnQbAYAjo3JZJK1tbUkydraWiaTyZIrAgAAuHRctuwCAAAWZWNjI1tbW5nNZplMJtnY2Fh2SQAAAJeM6u5l15D19fXe3t5edhkAACxYVV3d3evLrgMAADj/jNEAAAAAAGA0zWYAAAAAAEY7a7O5qn6hqt5ZVdft2fafq+rPq+raqnpBVd1+vv2Kqnp/VV0z//qZ81g7AAAAAAAr4jArm5+R5JH7tv1Oks/s7s9O8hdJvnvPdW/o7vvPv75lMWUCAAAAALDKztps7u6XJblp37ZZd39o/uPLk9z9PNQGAAAAAMBFYhEzm78pyW/u+fmeVfWqqnppVT34dDeqqidU1XZVbd94440LKAMAAAAAgGUZ1Wyuqv8nyYeSPHu+6YYk9+juByR5YpJfqqpPPOi23f207l7v7vXLL798TBkAAAAAACzZOTebq+rxSb48ydd1dydJd3+gu989v3x1kjck+bRFFAoAAAAAwOo6p2ZzVT0yyf+dZKO7d/Zsv7yqbj2//A+S3CfJGxdRKAAAAAAAq+uys+1QVVtJHpLkzlV1fZLvS/LdST42ye9UVZK8vLu/JckXJvn+qvpQkg8n+ZbuvunAYAAAAAAAjo2zNpu7e/OAzT9/mn2fn+T5Y4sCAAAAAODiMuoEgQAAAAAAkGg2AwAAAACwAJrNAAAAAACMptkMAAAAAMBoms0AAAAAAIym2QwAAAAAwGiazQAAAAAAjKbZDAAAAADAaJrNAAAAAACMptkMAAAAAMBoms0AAAAAAIym2QwAAAAAwGiazQAAAAAAjKbZDAAAAADAaJrNAAAAAACMptkMAAAAAMBoms0AAAAAAIym2QwAAAAAwGiazQAAAAAAjKbZDAAAAADAaJrNAAAAAACMptkMAAAAAMBoms0AAAAAAIym2QwAAAAAwGiazQDASphOpzlx4kSm0+mySwEAAOAcXLbsAgAAptNprrzyyuzu7uaqq67K1tZWNjY2ll0WAAAAR2BlMwCwdLPZLLu7u0mSnZ2dzGazJVcEAADAUWk2AwBLN5lMsra2liRZW1vLZDJZckUAAAAclTEaAMDSbWxsZGtrK7PZLJPJxAgNAACAi1B197JryPr6em9vby+7DAAAFqyqru7u9WXXAQAAnH/GaAAAAAAAMJpmMwAAAAAAo2k2AwAAAAAwmmYzAAAAAACjaTYDAAAAADCaZjMAAAAAAKNpNgMAAAAAMJpmMwAAAAAAo5212VxVv1BV76yq6/Zsu2NV/U5VvW7+/Q57rvvuqnp9Vb22qh5xvgoHAAAAAGB1HGZl8zOSPHLftu9K8uLuvk+SF89/TlXdL8ljk/zD+W2eWlW3Xli1AAAAAACspLM2m7v7ZUlu2rf5UUmeOb/8zCRfsWf7c7r7A939piSvT/KgxZQKAAAAAMCqOteZzZ/c3Tckyfz7Xebb75bkbXv2u36+7Raq6glVtV1V2zfeeOM5lgEALNt0Os2JEycynU6XXQoAAABLtOgTBNYB2/qgHbv7ad293t3rl19++YLLAAAuhOl0miuvvDInT57M5uamhjMAAMAl7Fybze+oqrsmyfz7O+fbr0/yqXv2u3uSt597eQDAKpvNZtnd3U2S7OzsZDabLbkiAAAAluVcm83TJI+fX358khfu2f7YqvrYqrpnkvskecW4EgGAVTWZTLK2tpYkWVtby2QyWXJFAAAALMtlZ9uhqraSPCTJnavq+iTfl+QHkzyvqv5lkrcm+eok6e7XVNXzkvxpkg8l+bfd/eHzVDsAsGQbGxvZ2trKbDbLZDLJxsbGsksCAABgSar7wJHKF9T6+npvb28vuwwAABasqq7u7vVl1wEAAJx/iz5BIAAAAAAAlyDNZgAAAAAARtNsBgAAAABgNM1mAAAAAABG02wGAAAAAGA0zWYAAAAAAEbTbAYAAAAAYDTNZgAAAAAARtNsBgAAAABgNM1mAAAAAABG02wGgEvQdDrNiRMnMp1Ol10KAAAAx4RmMwBcYqbTaTY3N3Py5Mlsbm5qOAMAALAQms0AcImZzWbZ2dlJkuzs7GQ2my25IgAAAI4DzWYAuMRMJpOsra0lSdbW1jKZTJZcEQAAAMfBZcsuAAC4sDY2NrK1tZXZbJbJZJKNjY1llwQAAMAxUN297Bqyvr7e29vbyy4DAIAFq6qru3t92XUAAADnnzEaAAAAAACMptkMAAAAAMBoms0AAAAAAIym2QwAAAAAwGiazQAAAAAAjKbZDAAAAADAaJrNAAAAAACMptkMAAAAAMBoms0AAAAAAIym2QwAAAAAwGiazQAAAAAAjKbZDAAXkel0mhMnTmQ6nS67FAAAALiZy5ZdAABwONPpNFdeeWV2d3dz1VVXZWtrKxsbG8suCwAAAJJY2QwAF43ZbJbd3d0kyc7OTmaz2ZIrAgAAgI/SbAaAi8RkMsna2lqSZG1tLZPJZMkVAQAAwEcZowEAF4mNjY1sbW1lNptlMpkYoQEAAMBKqe5edg1ZX1/v7e3tZZcBAMCCVdXV3b2+7DoAAIDzzxgNAAAAAABG02wGAAAAAGA0zWYAAAAAAEbTbAYAAAAAYLTLzvWGVXXfJM/ds+kfJPneJLdP8s1Jbpxvf1J3/8a53g8AAAAAAKvvnJvN3f3aJPdPkqq6dZK/TPKCJN+Y5Me7+0cWUSAAAAAAAKtvUWM0Hp7kDd39lgXlAQAAAABwEVlUs/mxSbb2/Hyiqq6tql+oqjscdIOqekJVbVfV9o033njQLgAAAAAAXCRGN5ur6mOSbCT55fmmn05yrwwjNm5I8qMH3a67n9bd6929fvnll48tAwAAAACAJVrEyuYvSfLK7n5HknT3O7r7w929m+TnkjxoAfcBAAAAAMAKW0SzeTN7RmhU1V33XHdlkusWcB8AAAAAAKywUc3mqlpL8sVJfnXP5h+uqldX1bVJHprk28fcBwAcB9PpNCdOnMh0Ol12KQAAAHBeXDbmxt29k+RO+7Z9/aiKAOCYmU6n2dzczM7OTq666qpsbW1lY2Nj2WUBAADAQi1ijAYAcAaz2Sw7OztJkp2dncxmsyVXBAAAAIun2QwA59lkMsna2lqSZG1tLZPJZMkVAQAAwOKNGqMBAJzdxsZGtra2MpvNMplMjNAAAADgWKruXnYNWV9f7+3t7WWXAQDAglXV1d29vuw6AACA888YDQAAAAAARtNsBgAAAABgNM1mAAAAAABG02wGAAAAAGA0zWYAAAAAAEbTbAYAAAAAYDTNZgAAAAAARtNsBgAAAABgNM1mAAAAAABG02wGAAAAAGA0zWYAAAAAAEbTbAaAM5hOpzlx4kSm0+mySwEAAICVdtmyCwCAVTWdTnPllVdmd3c3V111Vba2trKxsbHssgAAAGAlWdkMAKcxm82yu7ubJNnZ2clsNltyRQAAALC6NJsB4DQmk0nW1taSJGtra5lMJkuuCAAAAFaXMRoAcBobGxvZ2trKbDbLZDIxQgMAAADOoLp72TVkfX29t7e3l10GAAALVlVXd/f6susAAADOP2M0AAAAAAAYTbMZAAAAAIDRNJsBAAAAABhNsxkAAAAAgNE0mwEAAAAAGE2zGQAAAACA0TSbAQAAAAAYTbMZAAAAAIDRNJsBAAAAABhNsxkAAAAAgNE0mwEAAAAAGE2zGQAAAACA0TSbAQAAAAAYTbMZAAAAAIDRNJsBAAAAABhNsxkAAAAAgNE0mwEAAAAAGO2yMTeuqjcneW+SDyf5UHevV9Udkzw3yRVJ3pzkMd39nnFlAgAAAACwyhaxsvmh3X3/7l6f//xdSV7c3fdJ8uL5zwAAAAAAHGPnY4zGo5I8c375mUm+4jzcBwAAAAAAK2Rss7mTzKrq6qp6wnzbJ3f3DUky/36Xg25YVU+oqu2q2r7xxhtHlgEAAAAAwDKNmtmc5PO7++1VdZckv1NVf37YG3b305I8LUnW19d7ZB0AAAAAACzRqJXN3f32+fd3JnlBkgcleUdV3TVJ5t/fObZIADiq6XSaEydOZDqdLrsUAAAAuCScc7O5qj6+qm536nKSSZLrkkyTPH6+2+OTvHBskQBwFNPpNFdeeWVOnjyZzc1NDWcAAAC4AMasbP7kJH9QVX+S5BVJXtTdv5XkB5N8cVW9LskXz38GgAtmNptld3c3SbKzs5PZbLbkigAAAOD4O+eZzd39xiSfc8D2dyd5+JiiAGCMyWSSq666Kjs7O1lbW8tkMll2SQAAAHDsjT1BIACsnI2NjWxtbWU2m2UymWRjY2PZJQEAAMCxV9297Bqyvr7e29vbyy4DAIAFq6qru3t92XUAAADn35iZzQAAAAAAkESzGQAAAACABdBsBgAAAABgNM1mAAAAAABG02wGAAAAAGA0zWYAAAAAAEbTbAYAAAAAYDTNZgAAAAAARtNsBgAAAABgNM1mAFbKdDrNiRMnMp1Ol10KAAAAcASXLbsAADhlOp3myiuvzO7ubq666qpsbW1lY2Nj2WUBAAAAh2BlMwArYzabZXd3N0mys7OT2Wy25IoAAACAw9JsBmBlTCaTrK2tJUnW1tYymUyWXBEAAABwWMZoALAyNjY2srW1ldlslslkYoQGAAAAXESqu5ddQ9bX13t7e3vZZQAAsGBVdXV3ry+7DgAA4PwzRgMAAAAAgNE0mwEAAAAAGE2zGQAAAACA0TSbAQAAAAAYTbMZAAAAAIDRNJsBAAAAABhNsxkAAAAAgNE0mwEAAAAAGE2zGQAAAACA0TSbAViI6XSaEydOZDqdLrsUAAAAYAkuW3YBAFz8ptNprrzyyuzu7uaqq67K1tZWNjY2ll0WAAAAcAFZ2QzAaLPZLLu7u0mSnZ2dzGazJVcEAAAAXGiazQCMNplMsra2liRZW1vLZDJZckUAAADAhWaMBgCjbWxsZGtrK7PZLJPJxAgNAAAAuARVdy+7hqyvr/f29vayywAAYMGq6uruXl92HQAAwPlnjAYAAAAAAKNpNgMAAAAAMJpmMwAAAAAAo2k2AwAAAAAwmmYzAAAAAACjaTYDAAAAADDaOTebq+pTq+olVfVnVfWaqvo/59ufXFV/WVXXzL++dHHlAgAAAACwii4bcdsPJfn33f3Kqrpdkqur6nfm1/14d//I+PIAAAAAALgYnHOzubtvSHLD/PJ7q+rPktxtUYUBAAAAAHDxWMjM5qq6IskDkvzRfNOJqrq2qn6hqu5wmts8oaq2q2r7xhtvXEQZAJyD6XSaEydOZDqdLrsUAAAA4CJW3T0uoOoTkrw0yX/s7l+tqk9O8q4kneQpSe7a3d90poz19fXe3t4eVQcARzedTrO5uZmdnZ2sra1la2srGxsbyy4LOEaq6uruXl92HQAAwPk3amVzVd0myfOTPLu7fzVJuvsd3f3h7t5N8nNJHjS+TADOh9lslp2dnSTJzs5OZrPZkisCAAAALlbn3Gyuqkry80n+rLt/bM/2u+7Z7cok1517eQCcT5PJJGtra0mStbW1TCaTJVcEAAAAXKzO+QSBST4/ydcneXVVXTPf9qQkm1V1/wxjNN6c5F+PuA8AzqONjY1sbW1lNptlMpkYoQEAAACcs9EzmxfBzGYAgOPJzGYAALh0jJrZDAAAAAAAiWYzAAAAAAALoNkMAAAAAMBoms0AAAAAAIym2QwAAAAAwGiazQAAAAAAjKbZDAAAAADAaJrNAAAAAACMptkMAAAAAMBoms0AF6HpdJoTJ05kOp0uuxQAAACAJJrNABed6XSazc3NnDx5MpubmxrOAAAAwErQbAa4yMxms+zs7CRJdnZ2MpvNllwRAAAAgGYzwEVnMplkbW0tSbK2tpbJZLLkigAAAACSy5ZdAABHs7Gxka2trcxms0wmk2xsbCy7JAAAAIBUdy+7hqyvr/f29vayywAAYMGq6uruXl92HQAAwPlnjAYAAAAAAKNpNgMAAAAAMJpmMwAAAAAAo2k2AwAAAAAwmmYzAAAAAACjaTYDAAAAADCaZjMAAAAAAKNpNgMAAAAAMJpmMwAAAAAAo2k2A1xA0+k0J06cyHQ6XXYpAAAAAAul2QxwgUyn02xububkyZPZ3NzUcAYAAACOFc1mgAtkNptlZ2cnSbKzs5PZbLbkigAAAAAWR7MZ4AKZTCZZW1tLkqytrWUymSy5IgAAAIDFuWzZBQBcKjY2NrK1tZXZbJbJZJKNjY1llwQAAACwMNXdy64h6+vrvb29vewyAABYsKq6urvXl10HAABw/hmjAQAAAADAaJrNAAAAAACMptkMAAAAAMBoms0AAAAAAIym2QwAAAAAwGiazQAAAAAAjKbZDAAAAADAaJrNAAAAAACMdt6azVX1yKp6bVW9vqq+63zdDwAAAAAAy3dems1VdeskJ5N8SZL7Jdmsqvuda950Os2JEycynU5H17aoLDlyxlq1muRcmBwAAACA46q6e/GhVZ+X5Mnd/Yj5z9+dJN39Awftv3672/X2Ax94YNa73v3u/Omf/ml2d3dzq1vdKve73/1y5zvd6ZzqWlSWHDmei3LO9c8e4FJTL33p1d29vuw6AACA8+98jdG4W5K37fn5+vm2j6iqJ1TVdlVtf/CDHzxt0Htuuim7u7tJkt3d3bznppvOuahFZcmR47koBwAAAIB9unvhX0m+OsnT9/z89Ul+6nT7P/CBD+zTeeELX9hra2udpNfW1vqFL3zhafc9m0VlyZHjuSgHgMNJst3n4d+bvnz58uXLly9fvnz5Wr2v1Rijsb7e29vbp82bTqeZzWaZTCbZ2NgYVduisuTI8VyUA8DZVZUxGgAAcIk4X83my5L8RZKHJ/nLJH+c5Gu7+zUH7X+2ZjMAABcnzWYAALh0XHY+Qrv7Q1V1IslvJ7l1kl84XaMZAAAAAICL33lpNidJd/9Gkt84X/kAAAAAAKyOWy27AAAAAAAALn6azQAAAAAAjKbZDAAAAADAaJrNAAAAAACMptkMAAAAAMBoms0AAAAAAIym2QwAAAAAwGiazQAAAAAAjKbZDAAAAADAaJrNAAAAAACMptkMAAAAAMBo1d3LriFVdWOSt5xltzsnedeC7nJRWXLkrEqWHDmrkiXn0sxZZJac45fz97v78gXcFwAAsOJWotl8GFW13d3rq5QlR86qZMmRsypZci7NnFWsSc7FlQMAABwPxmgAAAAAADCaZjMAAAAAAKNdTM3mp61glhw5q5IlR86qZMm5NHMWmSXn0swBAACOgYtmZjMAAAAAAKvrYlrZDAAAAADAitJsBgAAAABgNM1mAAAAAABG02wGAAAAAGC0y5ZdwJlU1a2SfE6Sv5fk/Ule093vkLPYnFWsaRE5VfV5SR6X5MFJ7jrPuS7Ji5L8Ynf/jZzVyVnFmhb82FbmtXGcc1axpuOYU1W3TfLlGV4bp3KuS/Ki7n7NpZ6zijWtWg4AAHA8VXcvu4ZbqKp7Jfm/k3xRktcluTHJbZN8WpKdJD+b5JndvSvn3HNWsaYF5vxmkrcneWGS7STv3JPz0CT/PMmPdfdUzvJzVrGmBeas2mvjWOasYk3HOOfJGZ7/v5fk6tzytXHbJP++u6+9FHNWsaZVywEAAI6vVW02byX56SS/3/sKrKq7JPnaJO/p7mfKOfecVaxpgTl37u532efi2GcVa1rgPqv22jiWOatY0zHO+bLuftEZrr9Lknt09/almLOKNa1aDgAAcHytZLMZFqmq7pDkQ9393gXlHap5eiFU1ScmuU+SN3b3e5ZdT5JU1ed29yuXXQcAAAAAF9ZKniCwqjbmMwHH5tzjVE4NvrGqfqqq/o+qOud51VV1z6r6yqr69AXU+J/O8XafUlWfMr98+byef3iOWZ84P7x6//bPPpe8A3K++Ij7f1JVfU1VPbGqvn1++fZHzPh7VfWsqvqbJO9K8pqqemtVPbmqbnOEnC+pqjdV1R9U1QOq6jVJ/qiqrq+qhx8h56aqenpVPbyq6iiPZV/OL1bVneeXH5HkNUl+KMk1VfXVR8j5pj2X715VL66qv66q/1lVn3aEnM/d9/XAJNP57+pzD//Ikqr69Kr6zap6UVXdq6qeMa/pFVX1GUfI+dSqek5V/X5VPWnvn3dV/dpRajrDfbz6iPuPfk6fJf+or7GFvOYX+T60L/ec3hcPyDmn9+pF/d2xqL/L5llfWFX3nV/+gqr6jqr6snPI+YSq+qr58/Bbq+qRNcxwPkrGZVX1r6vqt6rq2qr6k/lr91uO8v56lvt42hH2vfW8nqdU1efvu+57jpCzVlX/V1V9Z1Xdtqq+oaqmVfXDVfUJR6n/NPl/cQ63+ew9l29TVd8zr+k/VdXaEXJO7Pm7495V9bL5++sfVdVnHSHnV6vqcYv4fQAAAMfTSq5srqr3J/nbJL+ZZCvJb3f3h88h57okD+runar6oST3SvJrSR6WJN39TWe4+d6cX+vur5hfflSSn8gwr/CfJvmB7n7GIXN+cv+mJF+f5Fnzev7dIXP+dZLvmt/+h5J8Q4am4+cn+eHu/vnD5MyzHpPh8bwzyW2SfEN3//H8uld295Eahqe5j7d29z0Oue+/SPJ9SWZJ/nK++e5JvjjJf+juZx0y53eTfH93/15VfWWGExl9T5LvTnKX7n7CIXOuSbKZ5PZJfj3Jl3X3y+fNz2cf9vdTVa9N8lPzrCuS/EqSre5++WFuvyfn1d39WfPL/zPJ13b3m+dNhBd39+ccMucjf7ZV9bwkL07yc0keleREdx+qkV5Vu0lenuQDezb/k/m27u6HHfKhpapeluQ/J/mEJD+YYbbsczOciOrbjlDT7yR5/ryGf5nkgUn+eXe/u6pe1d0POGTOV57uqiQ/092XHzJnIc/ps9zHUV5jC3nNL+p9aFHvi/OsRb1XL+rvjkX9XfYTSR6U4aS+v53k4fPMf5bkVd39nYfMeUyS70zyJ0kemuR/ZvjQ+bOSfF13H+pDlBrGcfx1kmcmuX6++e5JHp/kjt39NYfMuePprkryJ91990PmPD3JWpJXZHjuvLS7nzi/7ijP6ecleVuSj0ty3yR/luR5GWYUf0p3f/1hcuZZ701y6h9Ypz5gXMswG7u7+xMPmbP3vfpHk9wpyVVJviLJnbr7Xxwy5zXd/Q/nl1+U5Ond/YKqekiS/9jdn3+m2+/J+cskf5jhtfDfMzyvX9Tdf3eY2wMAAMffqjabX5XhPzJfleSxST4zyQsyNOdeeoScP+3u+80vX53kH/X8xEdV9SdHaMx9pEE1b/B9XXe/6RwafNdnaHzM8tH/fP5Iku9IksPMJJ3nvDrJP87wH+K3JLl3d/9VDeMiXtLd9z9MzjzrmiRf0t03VNWDMjR4ntTdv3rExtzpTpJWSR7W3R9/yJzXJvnH3f3X+7bfIckfdfehVt3u//Otqqu7+4Hzy3/e3Yda6bjvP/pv6+5P3XPdNYf9Xe/LuUeG5/VjMzSxn9PdTzpkzmuSfF53/6+q+oMkX7jnOf2RZsIR67nZ4zjin/tXJfnWJD/U3b8x3/am7r7nYW6/L2vv6+z13X3vg+o9RM7+x/O4DB8ybCT55SPkfDDJs/PRhtFeX9XdtztkzqKe04t6jV2TxbzmF/I+tKj3xXnWot6rF/Z3Rxbzd9lr5rf9uAwfWNxt3gi/TYZm82ceMufaJP9kfts7Z/jA7BHz1bM/093/9JA5r+3u+57mur84wnP6wxmeO3uP9uj5z3fr7o85ZM613f3Z88uXJXlqkjtn+HDv5Ud4Tl/T3fevqkpyQ5K7dnfPf/6TU/dxyKyfSvJJSb6zu98x33bk98Z9z+lrMjwXP3jUmvb+mVXVH3f3P9pz3bVHyHlVdz+gqm6XoeG9meQfZfgwdqu7Z0d4eAAAwDF0zqMkzrPuYf7szyX5uRoO035Mkh+sqrvvbfidxduq6mHd/btJ3pzkU5O8parudNR69ly+rLvfNC/yXfOVnYf1GUmekuSRGf4D+pdV9X1HaabMfbC7d5LsVNUbuvuv5vW8p6qO+unBrbv7hvntX1FVD03y61V19xzcZDudByd5XJL37dteGVbkHVad5n53c/OGxNncOG8y/m6SR2f488/8P+hHOWT8r+crOD8xyXuq6tszrHT7otzysZ7JR2rv7rcm+eEkP1zDYfGPPULOf0jykqo6meR/JPnlqnphhobWbx0h5+7zFaWV5PKquk13f3B+3aEPg+/uX6mq30rylKr6xiT/Pkd73ux16z2Xf2zfdYdqOs3dpqpu293/e17jL1bVX2VYEXqohuzctUl+pLuv239FVX3REXIW9Zxe1GtsUa/5Rb0PLep9MVnce/XC/u5Y0N9lPW96nnoMpx7nbo72flZJ3j+//LdJ7jIPv7aG+e+H9Z4axvY8f08T/lZJvjrJUWbHvzHJw+fviTcvtOptR8j5yPtDd38oyROq6nszvP8fedzD/Hf9G93Dp/Hzn4/0vtbd31rDWKGtGsb3/Nec23vjJ1XVlRn+nD/21Pv0OdT0K1X1jCTfn+QFVfVtSX41wyr5W/z+z+DU7+S9Sf5bkv9Wwwr1x2Q40kGzGQAALnGr2my+WQNm3sT4ySQ/WVV//wg5/yrJs6rqyUn+JsNc21cluUOSJx4h53Oq6n/N6/rYqvqU+Qq+j8nNG2RnNP/P2bfN/wP6izUcynouc7N39zQHPzKzs4bZoEfNe29V3au73zCv8YYaDqv9tSRHmb368iQ7B63Wm6/sPKz/mOSVVTXLcDhzktwjw8iBpxwh55syrI78riTXJDkx337HDKtcD+vxGcZv7CaZZFjF9dsZVuN98xFyXnLQxu5+bYYG8qF09/Oq6pXz+/60DK/hz8uwouy3j1DP3sPutzM0ZN4zb4adbgXt6Wp6X5Jvr6r7Zzis/lArfg9wsqo+obvf191PPbWxqu6d4XDtw3p6hhW3H3kudvd/nzfHfvgIOd+W5H+d5rorj5CzqOf0ol5ji3rNL+R9aIHvi8mC3quzuL87FvV32Yuq6veT3DbD8/t5VfXyDGM0XnaEnN9I8ltV9dIkX5Lkl5OPjLM4ygcfj80wOuWpVXWquXz7DO9zR/nw7Ccy/E4PanYe5bW6XVWP7O6PfODW3d9fVW9P8tNHzDn1HrR3rv29khz5BLPdffX8g6kTGd6PzmV+90szHJWRJC+vqk/u7nfM36sPfaLa7v5/quobMoy9uFeSj03yhAyv+687Qj23+JC1u29K8jPzLwAA4BK3qmM0HtLdv7fAvM/IRxtz1yf541OrsUbm3j7JZ3T3H57DbSvJv8kwEuFxR7ztPZK8fb6Ca+/2u83rOXRjrqo+J8nfdvfr922/TZLHdPezj1LbItRwGP4jktwtQwPk+gyzTo+yYo4lmD+vb9fdp2vSXpJW6Tk9f83vdPfr9m0/0mt+ke9De257zu+LZ8m9fc7hvXrs3x2L/Lusqj4vw4LWl8+bn1dmaNL+yhFr+tIk98swguF35ttuleQ23f2BM9744Lw7Zfi3xKEbnxejqqoe8Q+mqrprkgf0fNwQAADAcbWSzWY4H2pxJzyUcwFyVrGmc8k5TJPKPuP3WcWajus+Z7n9F59qYo9xXHNWsaZVywEAAC5u53qo8tLUcFIqOec5Z5FZK5RzlMPE5Sw/Z5FZy8x5SVV963wl8EeDqj6mqh5WVc/MMK5FzricVazpuOacyc+PvP1xz1lk1nHNAQAALmIrObO5qr7ydFcl+RQ5i8lZxZoW+dgO8KKRt5dzYXMWmbXMnEdmmCG+VVX3TPLXST4uw4d9syQ/3t3XnGPObTPMIj5uOefy+znfNa1aztKeQ1V1urnuleTQJ1E8rjmrWNOq5QAAAMfXSo7RqKoPJnl2Dj5z+1d196FOQCbn4qtpgTkrddi5fS7pEQiX9XyucQ1zke+c5P3d/ddnup2co+WsYk3HOOc9SR6XW54srpI8t7s/+VLOWcWaVi0HAAA4vlZyZXOSa5P8SHdft/+KGs7sLmcxOatY06JyXlJVz0/ywu5+656Mj0nyBRkOFX9JkmfIWYmcVaxpUTmvSPK5SdLdH0xyw1n2l3PuVq2m45rz8gwnmXzp/iuq6rVyVrKmVcsBAACOqVVd2fzgJG/Z2+DZc916d2/LGZ+zijUtMOe2GQ4X/7okBx12fvKQh4vLuQA5q1jTAnNe1d0PONt+csZbtZqOaw4AAACczko2m2GsFTzsXM5FVtMCc65P8mOnu767T3udnMPnrGJNxzhn1UbVrNQ+q1jTqu0DAAAcX7dadgGHVVWvlHP+cxaZteScV5y60N0f7O4bzqUBKueC5axiTYvKuXWST0hyu9N8yVlMzirWdFxzXlJV31pV99i7sao+pqoeVlXPzDBm5lLNWcWaVi0HAAA4plZ1ZvNBSs4FyVlk1jJzjsNjuJRyFpm1ajk3dPf3yznvOYvMknNmj8wwYmarqk6NmLlthmb2LMmPH3J8znHNWcWaVi0HAAA4pi6aMRpV9f929/fIOb85q1jTueSs4GHnci6ymhaYc1N33/Ew+8pZjSw5Z81ZtVE1K5WzijWtWg4AAHB8reTK5oPm/e1vNp7r3EA5q13TAh/bqcPFx65OlXNhchaZtWo514+8vZwLnyXnzF6R5HOTYcRMkhvkrHxNq5YDAAAcUyvZbM4wE/D5SV7Y3W89tbGqPibJF2SYB/iSJM+QMypnFWtaVM6qHXYu58JlrVrOhxaQIefCZsk5s1UbVbNqOYvMOq45AADAMbWSYzSq6rYZZgJ+XZJTMwE/LsMJDWdJTh5mJqCcs1u1mhaYs2qHncu5yGpaYM47kzzndNd397+TMz5nFWs6xjmrNqpmpXJWsaZVywEAAI6vVV3Z/KHufmqSp46cCSjn4qtpUTmrdti5nAuXtWo5709y9WmuO8qnfXIuXJacM1u1UTWrlrPIrOOaAwAAHFOr2mxetdmCxzVnFWtaVM6qHXYu58JlrVrOu7v7mfs3VtUXJNlM8iw5C8lZxZqOa86qjapZtZxFZh3XHAAA4Jha1Wbzqs0WPK45i8xatZy7V9VPnu7KIxyaL+fC5KxiTYvK+btTF6rq/km+NsljkrwpyfMPmSHn4qzpuOZccYR9L8WcRWYd1xwAAOCYWtVm8+VV9cTTXXmEmYByLr6aFpWzaoedy7lwWauW8/iq+t4MK0ffneS5GeblP/QIGXIuzpqOa86qjapZtZxFZh3XHAAA4Jha1Wbzqs0WPK45i8xatZxVO+xczsVX06Jy/izJ7yf55939+nnGtx/ytnIu7pqOa86qjapZtZxFZh3XHAAA4Jha1Wbzqs0WPK45i8xatZxVO+xczsVX06JyHp3ksUleUlW/leQ5ObcPU+RcfDUd15xVG1WzajmrWNOq5QAAAMdUdR/1SPfzr6pu6u47yjm/OatY0wJz7pvka3Lzw8W/o7v/vpzVy1nFmhb52OZ5H5/kK+Z5D0vyzCQv6O6ZnMXlrGJNxy2nqt6S5HtPc3V396FW/R/XnFWsadVyAACA42tVm83Xdvdnyzm/OatY0wJzdjMcLv4v9xwu/sbu/gdyVi9nFWta5GM7IPuOSb46ydd098PknJ+cVazpOORU1Su7+3MP2P4FSTa7+99eyjmrWNOq5QAAAMfXrZZdwGms2mzB45qzyKxVy3l0kr/KcLj4z1XVw3Puh53LOf85q1jTIh/bzXT3Td39s2MbqXIuvpqOSc7NRsxU1Q9X1ZuTPCXDXOhLPWcVa1q1HAAA4Jha1ZXN78wwS/JAfciZgHIuvpoW+djmeStx2Lmci7emRT42OA5qxUbVrFrOKta0ajkAAMDxtarN5pWaLXhcc1axpvM5D/I4HL5+KeWsYk2LfGxwsVq1UTWrlrOKNa1aDgAAcHytarN5pWYLHtecVazJPEiA1VZVVyZ5bJJ/muS3MhyN8vTuvqec1axp1XIAAIDja1VnNq/abMHjmrOKNZkHCbDCuvsF3f01ST49ye8l+fYkn1xVP11Vk0s9ZxVrWrUcAADg+FrVlc0rNVvwuOasYk3mQQJcfFZtVM2q5axiTauWAwAAHA+r2mxeqdmCxzVnFWsyDxIAAAAALk6rOkbj0Un+KslLqurnqurhSUrOwnNWsaZFPjYAAAAA4AJZyZXNp1TVxyf5igwjFR6W5JlJXtDdMzmLy1nFmhb52AAAAACA82+lm817rdpsweOas4o1mQcJAAAAAKvvomk2AwAAAACwulZ1ZjMAAAAAABcRzWYAAAAAAEbTbAZYgKq6fVX9m2XXAQAAALAsms0Ai3H7JIduNtfAezAAAABwbGh0ACzGDya5V1VdU1X/uaq+s6r+uKqurar/kCRVdUVV/VlVPTXJK5M8uKr+vKqeXlXXVdWzq+qLqup/VNXrqupBS31EAAAAAEeg2QywGN+V5A3dff8kv5PkPkkelOT+SR5YVV843+++SZ7V3Q9I8pYk907yX5J8dpJPT/K1Sb4gyXckedIFrB8AAABglMuWXQDAMTSZf71q/vMnZGg+vzXJW7r75Xv2fVN3vzpJquo1SV7c3V1Vr05yxYUrGQAAAGAczWaAxaskP9DdP3uzjVVXJPnbfft+YM/l3T0/78Z7NAAAAHARMUYDYDHem+R288u/neSbquoTkqSq7lZVd1laZQAAAAAXgFVzAAvQ3e+en9jvuiS/meSXkvxhVSXJ+5I8LsmHl1giAAAAwHlV3b3sGgAAAAAAuMgZowEAAAAAwGiazQAAAAAAjKbZDAAAAADAaJrNAAAAAACMptkMAAAAAMBoms0AAAAAAIym2QwAAAAAwGj/P4Ei936Lob+tAAAAAElFTkSuQmCC\n", 1498 | "text/plain": [ 1499 | "
" 1500 | ] 1501 | }, 1502 | "metadata": { 1503 | "needs_background": "light" 1504 | }, 1505 | "output_type": "display_data" 1506 | } 1507 | ], 1508 | "source": [ 1509 | "# Create a plot for the estimators that are suitable for our data/model\n", 1510 | "\n", 1511 | "fig = plt.figure(figsize = (25, 15))\n", 1512 | "\n", 1513 | "ax1 = fig.add_subplot(2, 2, 1)\n", 1514 | "het_coef_df.plot(x = 'varname', y = 'coef', kind = 'bar', \n", 1515 | " ax = ax1, color = 'none', \n", 1516 | " yerr = 'err', legend = False)\n", 1517 | "ax1.set_ylabel('')\n", 1518 | "ax1.set_xlabel('')\n", 1519 | "ax1.axhline(y = 0, color= 'r', linestyle='-')\n", 1520 | "ax1.scatter(x = np.arange(het_coef_df.shape[0]), \n", 1521 | " marker = 'o', s = 10, \n", 1522 | " y = het_coef_df['coef'], color = 'black')\n", 1523 | "ax1.set_title('TWFE', size = 20)\n", 1524 | "\n", 1525 | "\n", 1526 | "ax2 = fig.add_subplot(2, 2, 2)\n", 1527 | "sunab_results.plot(x = 'term', y = 'estimate', kind = 'bar', \n", 1528 | " ax = ax2, color = 'none', \n", 1529 | " yerr ='std.error', legend = False)\n", 1530 | "ax2.axhline(y = 0, color='r', linestyle='-')\n", 1531 | "ax2.scatter(x = np.arange(sunab_results.shape[0]), \n", 1532 | " marker = 'o', s = 10, \n", 1533 | " y = sunab_results['estimate'], color = 'black')\n", 1534 | "ax2.set_title('Sun and Abraham (2020)', size = 20)\n", 1535 | "\n", 1536 | "ax3 = fig.add_subplot(2, 2, 3)\n", 1537 | "csdid_results.plot(x = 'term', y = 'estimate', kind = 'bar', \n", 1538 | " ax = ax3, color = 'none', \n", 1539 | " yerr ='std.error', legend = False)\n", 1540 | "ax3.axhline(y = 0, color='r', linestyle='-')\n", 1541 | "ax3.scatter(x = np.arange(csdid_results.shape[0]), \n", 1542 | " marker = 'o', s = 10, \n", 1543 | " y = csdid_results['estimate'], color = 'black')\n", 1544 | "ax3.set_title(\"Callaway and Sant'Anna (2020)\", size = 20)\n", 1545 | "\n", 1546 | "\n", 1547 | "fig.suptitle(\"DID Estimators - Baker data\", fontweight = 'bold', size = 20)" 1548 | ] 1549 | } 1550 | ], 1551 | "metadata": { 1552 | "kernelspec": { 1553 | "display_name": "Python 3 (ipykernel)", 1554 | "language": "python", 1555 | "name": "python3" 1556 | }, 1557 | "language_info": { 1558 | "codemirror_mode": { 1559 | "name": "ipython", 1560 | "version": 3 1561 | }, 1562 | "file_extension": ".py", 1563 | "mimetype": "text/x-python", 1564 | "name": "python", 1565 | "nbconvert_exporter": "python", 1566 | "pygments_lexer": "ipython3", 1567 | "version": "3.8.8" 1568 | } 1569 | }, 1570 | "nbformat": 4, 1571 | "nbformat_minor": 5 1572 | } 1573 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 Causal Inference - Python Code 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Advanced DID workshop - Python code 2 | 3 | This repository has 2 files: 4 | 1. baker.ipynb - this Jupyter notebook mirrors in Python the baker.do from Scott Cunningham's DID workshop 5 | 2. DIDestimators.ipynb - this Jupyter notebook provides sample Python code for using R packages for the following estimators/papers: 6 | * Bacon Decomposition. Goodman-Bacon (2019) 7 | * Brantly Callaway, Pedro H.C. Sant’Anna (2020) (applied to Baker data) 8 | * Clément de Chaisemartin, Xavier D’Haultfoeuille (2020) 9 | * Pedro H.C. Sant’Anna , Jun Zhao (2020) 10 | * Liyang Sun, Sarah Abraham (2020) (applied to Baker data) 11 | * Kirill Borusyak, Xavier Jaravel, Jann Spiess (2021) 12 | * Gardner (2021) 13 | 14 | --------------------------------------------------------------------------------