{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Reply Tool AB Test Post-Deployment QA\n", "\n", "[Post-Deployment QA Task](https://phabricator.wikimedia.org/T273096) | [Enable Reply Tool AB Test Task](https://phabricator.wikimedia.org/T273554)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Instrumentation changes were deployed to make it possible to identify any non-discussion tool EditAttemptStep events by users in the AB test. These changes were deployed on 12 February 2020.\n", "\n", "The purpose of this post-deployment QA is to confirm that events are logging as expected and needed to run the AB test." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Requirements\n", "\n", "* Be able to distinguish between A/B test and non-A/B test events within EditAttemptStep\n", "* Within the Reply Tool A/B test, be able to distinguish between Discussion Tool and non-Discussion Tool events.\n", "* Within the Reply Tool A/B test, be able to distinguish all events logged for the control group and the treatment group (This would include both Discussion Tools and VisualEditor/WikiEditor events)" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "shhh <- function(expr) suppressPackageStartupMessages(suppressWarnings(suppressMessages(expr)))\n", "shhh({\n", " library(magrittr); library(zeallot); library(glue); library(tidyverse); library(zoo); library(lubridate)\n", " library(scales)\n", "})" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# collect all desktop edit attempts by bucket/test group and event type\n", "query <-\n", "\"\n", "SELECT\n", " date_format(dt, 'yyyy-MM-dd') as attempt_dt,\n", " event.bucket AS experiment_group,\n", " wiki As wiki,\n", " event.integration AS event_type,\n", "-- review participating wikis\n", " IF( wiki IN ('frwiki', 'eswiki', 'itwiki', 'jawiki', 'fawiki', 'plwiki', 'hewiki', 'nlwiki',\n", " 'hiwiki', 'kowiki', 'viwiki', 'thwiki', 'ptwiki', 'bnwiki', 'arzwiki', 'swwiki', 'zhwiki',\n", " 'ukwiki', 'idwiki', 'amwiki', 'omwiki', 'afwiki'), 'TRUE', 'FALSE'\n", ") AS is_AB_test_wiki,\n", " CASE\n", " WHEN min(event.user_editcount) is NULL THEN 'undefined'\n", " WHEN min(event.user_editcount) < 100 THEN 'under 100'\n", " WHEN min(event.user_editcount) >=100 AND min(event.user_editcount) < 500 THEN '100-499'\n", " ELSE '500+'\n", " END AS initial_edit_count,\n", " event.is_oversample AS is_oversample,\n", " event.user_id as user_id,\n", " event.editing_session_id as edit_attempt_id,\n", " event.editor_interface AS editor_interface\n", "FROM event.editattemptstep\n", "WHERE\n", "-- Review data starting a few days prior to the AB test deployment on Feb 11th\n", " year = 2021 \n", " AND month = 02\n", " AND day >= 06\n", "-- look at only desktop init events\n", " AND event.platform = 'desktop'\n", " AND event.action = 'init'\n", " -- remove bots\n", " AND useragent.is_bot = false\n", "GROUP BY\n", " date_format(dt, 'yyyy-MM-dd'),\n", " event.bucket,\n", " wiki,\n", " event.integration,\n", " IF( wiki IN ('frwiki', 'eswiki', 'itwiki', 'jawiki', 'fawiki', 'plwiki', 'hewiki', 'nlwiki',\n", " 'hiwiki', 'kowiki', 'viwiki', 'thwiki', 'ptwiki', 'bnwiki', 'arzwiki', 'swwiki', 'zhwiki',\n", " 'ukwiki', 'idwiki', 'amwiki', 'omwiki', 'afwiki'), 'TRUE', 'FALSE'\n", " ),\n", " event.is_oversample,\n", " event.user_id,\n", " event.editing_session_id,\n", " event.editor_interface\n", "\"\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Don't forget to authenticate with Kerberos using kinit\n", "\n" ] } ], "source": [ "collect_edit_attempts <- wmfdata::query_hive(query)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "collect_edit_attempts$attempt_dt <- as.Date(collect_edit_attempts$attempt_dt)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Edit attempts and distinct users by experiment group" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "scrolled": true }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "`summarise()` regrouping output by 'is_ab_test_wiki' (override with `.groups` argument)\n", "\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\n", "
A grouped_df: 4 × 4
is_ab_test_wikiexperiment_groupn_usersn_attempts
<lgl><chr><int><int>
FALSENULL 49398212818
TRUEcontrol 5751 19307
TRUENULL 13980 64972
TRUEtest 6338 21229
\n" ], "text/latex": [ "A grouped\\_df: 4 × 4\n", "\\begin{tabular}{llll}\n", " is\\_ab\\_test\\_wiki & experiment\\_group & n\\_users & n\\_attempts\\\\\n", " & & & \\\\\n", "\\hline\n", "\t FALSE & NULL & 49398 & 212818\\\\\n", "\t TRUE & control & 5751 & 19307\\\\\n", "\t TRUE & NULL & 13980 & 64972\\\\\n", "\t TRUE & test & 6338 & 21229\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A grouped_df: 4 × 4\n", "\n", "| is_ab_test_wiki <lgl> | experiment_group <chr> | n_users <int> | n_attempts <int> |\n", "|---|---|---|---|\n", "| FALSE | NULL | 49398 | 212818 |\n", "| TRUE | control | 5751 | 19307 |\n", "| TRUE | NULL | 13980 | 64972 |\n", "| TRUE | test | 6338 | 21229 |\n", "\n" ], "text/plain": [ " is_ab_test_wiki experiment_group n_users n_attempts\n", "1 FALSE NULL 49398 212818 \n", "2 TRUE control 5751 19307 \n", "3 TRUE NULL 13980 64972 \n", "4 TRUE test 6338 21229 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "edit_attempts_byexperimentgroup <- collect_edit_attempts %>%\n", " # remove anon users and review data following AB deployment\n", " filter(attempt_dt >= '2021-02-12',\n", " user_id != 0) %>%\n", " group_by (is_ab_test_wiki, experiment_group) %>%\n", " summarise(n_users = n_distinct(user_id),\n", " n_attempts = n_distinct(edit_attempt_id))\n", "\n", "edit_attempts_byexperimentgroup " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I confirmed that I can distinguish events in the AB test (indicated by `experiment_group = 'control'` or `experiment_group = 'test'`) and events not in the AB test (indicated by `experiment_group = 'NULL'`). \n", "\n", "I can also distinguish between events logged to the `Test` versus `Control` groups within the AB test with the new instrumentation. We are logging a reasonable amount of attempts in each group among the expected experiment population.\n", "\n", "`Control` and `Test` events are only logged for the wikis included in the AB test as expected. \n", "\n", "About 53.6% of all logged-in users that have attempted a desktop edit since the AB test deployment on 12 Feb 2020 on the participating wikis were not included in the AB test. Based on the AB test criteria, this would include users that have used the reply tool before (defined as people whose discussiontools-editmode preference is set). This indicates that the targeting for the A/B test is fairly restrictive. However, even with the restrictive criteria, I believe we should have sufficient data to complete the analysis in 2 to 3 weeks based on the current rate of daily AB events logged. \n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Discussion-Tool related edit attempts and distinct users by experiment group" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "`summarise()` regrouping output by 'event_type' (override with `.groups` argument)\n", "\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\n", "
A grouped_df: 4 × 4
event_typeexperiment_groupn_usersn_attempts
<chr><chr><int><int>
discussiontoolscontrol 19 36
discussiontoolstest 1342 3128
page control574419271
page test 568918101
\n" ], "text/latex": [ "A grouped\\_df: 4 × 4\n", "\\begin{tabular}{llll}\n", " event\\_type & experiment\\_group & n\\_users & n\\_attempts\\\\\n", " & & & \\\\\n", "\\hline\n", "\t discussiontools & control & 19 & 36\\\\\n", "\t discussiontools & test & 1342 & 3128\\\\\n", "\t page & control & 5744 & 19271\\\\\n", "\t page & test & 5689 & 18101\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A grouped_df: 4 × 4\n", "\n", "| event_type <chr> | experiment_group <chr> | n_users <int> | n_attempts <int> |\n", "|---|---|---|---|\n", "| discussiontools | control | 19 | 36 |\n", "| discussiontools | test | 1342 | 3128 |\n", "| page | control | 5744 | 19271 |\n", "| page | test | 5689 | 18101 |\n", "\n" ], "text/plain": [ " event_type experiment_group n_users n_attempts\n", "1 discussiontools control 19 36 \n", "2 discussiontools test 1342 3128 \n", "3 page control 5744 19271 \n", "4 page test 5689 18101 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dt_attempts_byexperimentgroup <- collect_edit_attempts %>%\n", " # review only AB test events\n", " filter(attempt_dt >= '2021-02-12',\n", " is_ab_test_wiki == TRUE,\n", " experiment_group != 'NULL',\n", " user_id != 0\n", " ) %>% \n", " group_by (event_type, experiment_group) %>%\n", " summarise(n_users = n_distinct(user_id),\n", " n_attempts = n_distinct(edit_attempt_id))\n", "\n", "dt_attempts_byexperimentgroup" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I confirmed I am able to distinguish between discussion tool (`event.type = 'discussiontools'`) and non-discussion tool events (`event.type = 'page'`) for both the `Test` and `Control` groups.\n", "\n", "There are very few discussion tool attempts (36 attempts from 19 users) in the control group. This is expected as these events could only be recorded for users that manually enabled DiscussionTools. \n", "\n", "There is a similar number of attempts recorded for main edit attempts (`event.integration = page`) in both the test and control groups. I would expect there to be fewer non-discussion tool edit attempts in the test group compared to the control since that group is shown the reply tool as default. \n", "\n", "I reviewed edit attempts on talk pages only to see if some of those edits included edits to the article, where the discussion tool is not available. \n" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "# review only talk page edit attempts\n", "query <-\n", "\n", "\"\n", "SELECT\n", " date_format(dt, 'yyyy-MM-dd') as attempt_dt,\n", " event.bucket AS experiment_group,\n", " wiki As wiki,\n", " event.integration AS event_type,\n", " event.init_type AS init_type,\n", " IF( wiki IN ('frwiki', 'eswiki', 'itwiki', 'jawiki', 'fawiki', 'plwiki', 'hewiki', 'nlwiki',\n", " 'hiwiki', 'kowiki', 'viwiki', 'thwiki', 'ptwiki', 'bnwiki', 'arzwiki', 'swwiki', 'zhwiki',\n", " 'ukwiki', 'idwiki', 'amwiki', 'omwiki', 'afwiki'), 'TRUE', 'FALSE'\n", ") AS is_AB_test_wiki,\n", " CASE\n", " WHEN min(event.user_editcount) is NULL THEN 'undefined'\n", " WHEN min(event.user_editcount) < 100 THEN 'under 100'\n", " WHEN min(event.user_editcount) >=100 AND min(event.user_editcount) < 500 THEN '100-499'\n", " ELSE '500+'\n", " END AS initial_edit_count,\n", " event.is_oversample AS is_oversample,\n", " event.user_id as user_id,\n", " event.editing_session_id as edit_attempt_id,\n", " event.editor_interface AS editor_interface\n", "FROM event.editattemptstep\n", "WHERE\n", "-- AB test deployed on Feb 11th \n", " year = 2021 \n", " AND ((month = 02 AND day >= 12) OR (month > 02))\n", "-- look at only desktop events\n", " AND event.platform = 'desktop'\n", "-- review all talk namespaces\n", " AND event.page_ns % 2 = 1\n", " AND event.action = 'init'\n", "GROUP BY\n", " date_format(dt, 'yyyy-MM-dd'),\n", " event.bucket,\n", " wiki,\n", " event.integration,\n", " event.init_type,\n", " IF( wiki IN ('frwiki', 'eswiki', 'itwiki', 'jawiki', 'fawiki', 'plwiki', 'hewiki', 'nlwiki',\n", " 'hiwiki', 'kowiki', 'viwiki', 'thwiki', 'ptwiki', 'bnwiki', 'arzwiki', 'swwiki', 'zhwiki',\n", " 'ukwiki', 'idwiki', 'amwiki', 'omwiki', 'afwiki'), 'TRUE', 'FALSE'\n", " ),\n", " event.is_oversample,\n", " event.user_id,\n", " event.editing_session_id,\n", " event.editor_interface\n", "\"\n" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Don't forget to authenticate with Kerberos using kinit\n", "\n" ] } ], "source": [ "collect_edit_attempts_talkonly <- wmfdata::query_hive(query)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "`summarise()` regrouping output by 'event_type', 'init_type' (override with `.groups` argument)\n", "\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\n", "
A grouped_df: 6 × 5
event_typeinit_typeexperiment_groupn_usersn_attempts
<chr><chr><chr><int><int>
discussiontoolspage control 34 83
discussiontoolspage test 18644339
page page control 8441312
page page test 9291755
page sectioncontrol 7181179
page sectiontest 6261010
\n" ], "text/latex": [ "A grouped\\_df: 6 × 5\n", "\\begin{tabular}{lllll}\n", " event\\_type & init\\_type & experiment\\_group & n\\_users & n\\_attempts\\\\\n", " & & & & \\\\\n", "\\hline\n", "\t discussiontools & page & control & 34 & 83\\\\\n", "\t discussiontools & page & test & 1864 & 4339\\\\\n", "\t page & page & control & 844 & 1312\\\\\n", "\t page & page & test & 929 & 1755\\\\\n", "\t page & section & control & 718 & 1179\\\\\n", "\t page & section & test & 626 & 1010\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A grouped_df: 6 × 5\n", "\n", "| event_type <chr> | init_type <chr> | experiment_group <chr> | n_users <int> | n_attempts <int> |\n", "|---|---|---|---|---|\n", "| discussiontools | page | control | 34 | 83 |\n", "| discussiontools | page | test | 1864 | 4339 |\n", "| page | page | control | 844 | 1312 |\n", "| page | page | test | 929 | 1755 |\n", "| page | section | control | 718 | 1179 |\n", "| page | section | test | 626 | 1010 |\n", "\n" ], "text/plain": [ " event_type init_type experiment_group n_users n_attempts\n", "1 discussiontools page control 34 83 \n", "2 discussiontools page test 1864 4339 \n", "3 page page control 844 1312 \n", "4 page page test 929 1755 \n", "5 page section control 718 1179 \n", "6 page section test 626 1010 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dt_attempts_bytestgroup_talkpage_only <- collect_edit_attempts_talkonly %>%\n", " # review only AB test events\n", " filter(attempt_dt >= '2021-02-12',\n", " is_ab_test_wiki == TRUE,\n", " experiment_group != 'NULL'\n", " ) %>% \n", " group_by (event_type, init_type, experiment_group) %>%\n", " summarise(n_users = n_distinct(user_id),\n", " n_attempts = n_distinct(edit_attempt_id))\n", "\n", "dt_attempts_bytestgroup_talkpage_only " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "ISSUE: There appear to be close to the same number of non-discussion tool edit attempts (`event.integration = 'page'`) to talk pages in both the control and test groups. I would expect there to be far fewer number of non-dt edit attempts in the test group compared to the control group as they are shown the reply tool as default. \n", "\n", "This could be reflective of actual user behavior. From David Lynch: \"Someone who's used to replying to comments via the source editor might be sticking with what they know, rather than poking at new things. In that case, the fairly even split between control and test would be consistent with a user-type who's just not paying attention to the new functionality.\"\n", "\n", "I looked at the edit count bucket splits to confirm if we see more page events in the test group for more experienced users to fit the hypothesis above:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "`summarise()` regrouping output by 'event_type', 'experiment_group' (override with `.groups` argument)\n", "\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\n", "
A grouped_df: 12 × 5
event_typeexperiment_groupinitial_edit_countn_usersn_attempts
<chr><chr><chr><int><int>
discussiontoolscontrol100-499 3 10
discussiontoolscontrol500+ 5 20
discussiontoolscontrolunder 100 26 53
discussiontoolstest 100-499 186 477
discussiontoolstest 500+ 5051229
discussiontoolstest under 10011872633
page control100-499 117 165
page control500+ 5551418
page controlunder 100 744 908
page test 100-499 108 175
page test 500+ 5541697
page test under 100 754 893
\n" ], "text/latex": [ "A grouped\\_df: 12 × 5\n", "\\begin{tabular}{lllll}\n", " event\\_type & experiment\\_group & initial\\_edit\\_count & n\\_users & n\\_attempts\\\\\n", " & & & & \\\\\n", "\\hline\n", "\t discussiontools & control & 100-499 & 3 & 10\\\\\n", "\t discussiontools & control & 500+ & 5 & 20\\\\\n", "\t discussiontools & control & under 100 & 26 & 53\\\\\n", "\t discussiontools & test & 100-499 & 186 & 477\\\\\n", "\t discussiontools & test & 500+ & 505 & 1229\\\\\n", "\t discussiontools & test & under 100 & 1187 & 2633\\\\\n", "\t page & control & 100-499 & 117 & 165\\\\\n", "\t page & control & 500+ & 555 & 1418\\\\\n", "\t page & control & under 100 & 744 & 908\\\\\n", "\t page & test & 100-499 & 108 & 175\\\\\n", "\t page & test & 500+ & 554 & 1697\\\\\n", "\t page & test & under 100 & 754 & 893\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A grouped_df: 12 × 5\n", "\n", "| event_type <chr> | experiment_group <chr> | initial_edit_count <chr> | n_users <int> | n_attempts <int> |\n", "|---|---|---|---|---|\n", "| discussiontools | control | 100-499 | 3 | 10 |\n", "| discussiontools | control | 500+ | 5 | 20 |\n", "| discussiontools | control | under 100 | 26 | 53 |\n", "| discussiontools | test | 100-499 | 186 | 477 |\n", "| discussiontools | test | 500+ | 505 | 1229 |\n", "| discussiontools | test | under 100 | 1187 | 2633 |\n", "| page | control | 100-499 | 117 | 165 |\n", "| page | control | 500+ | 555 | 1418 |\n", "| page | control | under 100 | 744 | 908 |\n", "| page | test | 100-499 | 108 | 175 |\n", "| page | test | 500+ | 554 | 1697 |\n", "| page | test | under 100 | 754 | 893 |\n", "\n" ], "text/plain": [ " event_type experiment_group initial_edit_count n_users n_attempts\n", "1 discussiontools control 100-499 3 10 \n", "2 discussiontools control 500+ 5 20 \n", "3 discussiontools control under 100 26 53 \n", "4 discussiontools test 100-499 186 477 \n", "5 discussiontools test 500+ 505 1229 \n", "6 discussiontools test under 100 1187 2633 \n", "7 page control 100-499 117 165 \n", "8 page control 500+ 555 1418 \n", "9 page control under 100 744 908 \n", "10 page test 100-499 108 175 \n", "11 page test 500+ 554 1697 \n", "12 page test under 100 754 893 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dt_attempts_bytestgroup_talkpage_only_editbucket <- collect_edit_attempts_talkonly %>%\n", " # review only AB test events\n", " filter(attempt_dt >= '2021-02-12',\n", " is_ab_test_wiki == TRUE,\n", " experiment_group != 'NULL'\n", " ) %>% \n", " group_by (event_type, experiment_group, initial_edit_count) %>%\n", " summarise(n_users = n_distinct(user_id),\n", " n_attempts = n_distinct(edit_attempt_id))\n", "\n", "dt_attempts_bytestgroup_talkpage_only_editbucket" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## AB Test Edit Attempts Logged by Wiki" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\n", "
A data.frame: 1 × 1
num_wikis
<int>
21
\n" ], "text/latex": [ "A data.frame: 1 × 1\n", "\\begin{tabular}{l}\n", " num\\_wikis\\\\\n", " \\\\\n", "\\hline\n", "\t 21\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A data.frame: 1 × 1\n", "\n", "| num_wikis <int> |\n", "|---|\n", "| 21 |\n", "\n" ], "text/plain": [ " num_wikis\n", "1 21 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ab_attempts_num_wiki <- collect_edit_attempts_talkonly %>%\n", "# review only AB edit attempts\n", " filter(attempt_dt >= '2021-02-12',\n", " is_ab_test_wiki == TRUE,\n", " experiment_group != 'NULL'\n", " ) %>%\n", " summarise(num_wikis = n_distinct(wiki))\n", "\n", "ab_attempts_num_wiki" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Edit attempts by users in the AB test were recorded on 21 of the 22 participating wikis. A review of attempts by each participating wikis indicates that no edit attempts by a user included in the AB test have yet been recorded on Amharic Wikipedia. As a smaller wiki, this seems possible if no user that met the AB test criteria has made an edit attempt." ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "`summarise()` regrouping output by 'wiki' (override with `.groups` argument)\n", "\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\n", "
A grouped_df: 42 × 4
wikiexperiment_groupn_usersn_attempts
<chr><chr><int><int>
afwiki control 3 10
afwiki test 4 13
amwiki control 1 3
amwiki test 1 1
arzwikicontrol 4 5
arzwikitest 6 7
bnwiki control 20 29
bnwiki test 25 52
eswiki control205 414
eswiki test 4711131
fawiki control 89 134
fawiki test 158 312
frwiki control205 352
frwiki test 5281347
hewiki control103 265
hewiki test 149 459
hiwiki control 13 14
hiwiki test 24 41
idwiki control 33 47
idwiki test 54 97
itwiki control179 347
itwiki test 4191196
jawiki control148 199
jawiki test 234 544
kowiki control 26 46
kowiki test 36 76
nlwiki control 56 147
nlwiki test 125 354
plwiki control 81 131
plwiki test 166 354
ptwiki control101 154
ptwiki test 230 487
swwiki control 3 5
swwiki test 4 7
thwiki control 12 14
thwiki test 19 42
ukwiki control 60 118
ukwiki test 98 233
viwiki control 30 47
viwiki test 39 77
zhwiki control 62 93
zhwiki test 134 274
\n" ], "text/latex": [ "A grouped\\_df: 42 × 4\n", "\\begin{tabular}{llll}\n", " wiki & experiment\\_group & n\\_users & n\\_attempts\\\\\n", " & & & \\\\\n", "\\hline\n", "\t afwiki & control & 3 & 10\\\\\n", "\t afwiki & test & 4 & 13\\\\\n", "\t amwiki & control & 1 & 3\\\\\n", "\t amwiki & test & 1 & 1\\\\\n", "\t arzwiki & control & 4 & 5\\\\\n", "\t arzwiki & test & 6 & 7\\\\\n", "\t bnwiki & control & 20 & 29\\\\\n", "\t bnwiki & test & 25 & 52\\\\\n", "\t eswiki & control & 205 & 414\\\\\n", "\t eswiki & test & 471 & 1131\\\\\n", "\t fawiki & control & 89 & 134\\\\\n", "\t fawiki & test & 158 & 312\\\\\n", "\t frwiki & control & 205 & 352\\\\\n", "\t frwiki & test & 528 & 1347\\\\\n", "\t hewiki & control & 103 & 265\\\\\n", "\t hewiki & test & 149 & 459\\\\\n", "\t hiwiki & control & 13 & 14\\\\\n", "\t hiwiki & test & 24 & 41\\\\\n", "\t idwiki & control & 33 & 47\\\\\n", "\t idwiki & test & 54 & 97\\\\\n", "\t itwiki & control & 179 & 347\\\\\n", "\t itwiki & test & 419 & 1196\\\\\n", "\t jawiki & control & 148 & 199\\\\\n", "\t jawiki & test & 234 & 544\\\\\n", "\t kowiki & control & 26 & 46\\\\\n", "\t kowiki & test & 36 & 76\\\\\n", "\t nlwiki & control & 56 & 147\\\\\n", "\t nlwiki & test & 125 & 354\\\\\n", "\t plwiki & control & 81 & 131\\\\\n", "\t plwiki & test & 166 & 354\\\\\n", "\t ptwiki & control & 101 & 154\\\\\n", "\t ptwiki & test & 230 & 487\\\\\n", "\t swwiki & control & 3 & 5\\\\\n", "\t swwiki & test & 4 & 7\\\\\n", "\t thwiki & control & 12 & 14\\\\\n", "\t thwiki & test & 19 & 42\\\\\n", "\t ukwiki & control & 60 & 118\\\\\n", "\t ukwiki & test & 98 & 233\\\\\n", "\t viwiki & control & 30 & 47\\\\\n", "\t viwiki & test & 39 & 77\\\\\n", "\t zhwiki & control & 62 & 93\\\\\n", "\t zhwiki & test & 134 & 274\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A grouped_df: 42 × 4\n", "\n", "| wiki <chr> | experiment_group <chr> | n_users <int> | n_attempts <int> |\n", "|---|---|---|---|\n", "| afwiki | control | 3 | 10 |\n", "| afwiki | test | 4 | 13 |\n", "| amwiki | control | 1 | 3 |\n", "| amwiki | test | 1 | 1 |\n", "| arzwiki | control | 4 | 5 |\n", "| arzwiki | test | 6 | 7 |\n", "| bnwiki | control | 20 | 29 |\n", "| bnwiki | test | 25 | 52 |\n", "| eswiki | control | 205 | 414 |\n", "| eswiki | test | 471 | 1131 |\n", "| fawiki | control | 89 | 134 |\n", "| fawiki | test | 158 | 312 |\n", "| frwiki | control | 205 | 352 |\n", "| frwiki | test | 528 | 1347 |\n", "| hewiki | control | 103 | 265 |\n", "| hewiki | test | 149 | 459 |\n", "| hiwiki | control | 13 | 14 |\n", "| hiwiki | test | 24 | 41 |\n", "| idwiki | control | 33 | 47 |\n", "| idwiki | test | 54 | 97 |\n", "| itwiki | control | 179 | 347 |\n", "| itwiki | test | 419 | 1196 |\n", "| jawiki | control | 148 | 199 |\n", "| jawiki | test | 234 | 544 |\n", "| kowiki | control | 26 | 46 |\n", "| kowiki | test | 36 | 76 |\n", "| nlwiki | control | 56 | 147 |\n", "| nlwiki | test | 125 | 354 |\n", "| plwiki | control | 81 | 131 |\n", "| plwiki | test | 166 | 354 |\n", "| ptwiki | control | 101 | 154 |\n", "| ptwiki | test | 230 | 487 |\n", "| swwiki | control | 3 | 5 |\n", "| swwiki | test | 4 | 7 |\n", "| thwiki | control | 12 | 14 |\n", "| thwiki | test | 19 | 42 |\n", "| ukwiki | control | 60 | 118 |\n", "| ukwiki | test | 98 | 233 |\n", "| viwiki | control | 30 | 47 |\n", "| viwiki | test | 39 | 77 |\n", "| zhwiki | control | 62 | 93 |\n", "| zhwiki | test | 134 | 274 |\n", "\n" ], "text/plain": [ " wiki experiment_group n_users n_attempts\n", "1 afwiki control 3 10 \n", "2 afwiki test 4 13 \n", "3 amwiki control 1 3 \n", "4 amwiki test 1 1 \n", "5 arzwiki control 4 5 \n", "6 arzwiki test 6 7 \n", "7 bnwiki control 20 29 \n", "8 bnwiki test 25 52 \n", "9 eswiki control 205 414 \n", "10 eswiki test 471 1131 \n", "11 fawiki control 89 134 \n", "12 fawiki test 158 312 \n", "13 frwiki control 205 352 \n", "14 frwiki test 528 1347 \n", "15 hewiki control 103 265 \n", "16 hewiki test 149 459 \n", "17 hiwiki control 13 14 \n", "18 hiwiki test 24 41 \n", "19 idwiki control 33 47 \n", "20 idwiki test 54 97 \n", "21 itwiki control 179 347 \n", "22 itwiki test 419 1196 \n", "23 jawiki control 148 199 \n", "24 jawiki test 234 544 \n", "25 kowiki control 26 46 \n", "26 kowiki test 36 76 \n", "27 nlwiki control 56 147 \n", "28 nlwiki test 125 354 \n", "29 plwiki control 81 131 \n", "30 plwiki test 166 354 \n", "31 ptwiki control 101 154 \n", "32 ptwiki test 230 487 \n", "33 swwiki control 3 5 \n", "34 swwiki test 4 7 \n", "35 thwiki control 12 14 \n", "36 thwiki test 19 42 \n", "37 ukwiki control 60 118 \n", "38 ukwiki test 98 233 \n", "39 viwiki control 30 47 \n", "40 viwiki test 39 77 \n", "41 zhwiki control 62 93 \n", "42 zhwiki test 134 274 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ab_attempts_bywiki <- collect_edit_attempts_talkonly %>%\n", "# review only AB edit attempts\n", " filter(attempt_dt >= '2021-02-12',\n", " experiment_group != 'NULL',\n", " is_ab_test_wiki == TRUE) %>%\n", " group_by(wiki, experiment_group) %>%\n", " summarise(n_users = n_distinct(user_id),\n", " n_attempts = n_distinct(edit_attempt_id))%>%\n", " arrange(wiki)\n", "\n", "ab_attempts_bywiki" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "There are no large discrepancies between the number of unique users that made an edit attempt in the control and test groups on each wiki as expected if 50% of users were randomly assigned to each bucket.\n", "\n", "Note: I reviewed the mediawiki user preferences table to confirm that users in each wiki were bucketed appropriately based on the `dicussiontools-abtest` preference and value. See further details in [T268193#6781374](https://phabricator.wikimedia.org/T268193#6781374).\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## AB Test Edit Attempts by User Edit Count" ] }, { "cell_type": "code", "execution_count": 300, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "`summarise()` regrouping output by 'experiment_group' (override with `.groups` argument)\n", "\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\n", "
A grouped_df: 6 × 4
experiment_groupinitial_edit_countn_usersn_attempts
<chr><chr><int><int>
control100-499 316 838
control500+ 13404601
controlunder 10018253104
test 100-499 364 999
test 500+ 13555000
test under 10021324243
\n" ], "text/latex": [ "A grouped\\_df: 6 × 4\n", "\\begin{tabular}{llll}\n", " experiment\\_group & initial\\_edit\\_count & n\\_users & n\\_attempts\\\\\n", " & & & \\\\\n", "\\hline\n", "\t control & 100-499 & 316 & 838\\\\\n", "\t control & 500+ & 1340 & 4601\\\\\n", "\t control & under 100 & 1825 & 3104\\\\\n", "\t test & 100-499 & 364 & 999\\\\\n", "\t test & 500+ & 1355 & 5000\\\\\n", "\t test & under 100 & 2132 & 4243\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A grouped_df: 6 × 4\n", "\n", "| experiment_group <chr> | initial_edit_count <chr> | n_users <int> | n_attempts <int> |\n", "|---|---|---|---|\n", "| control | 100-499 | 316 | 838 |\n", "| control | 500+ | 1340 | 4601 |\n", "| control | under 100 | 1825 | 3104 |\n", "| test | 100-499 | 364 | 999 |\n", "| test | 500+ | 1355 | 5000 |\n", "| test | under 100 | 2132 | 4243 |\n", "\n" ], "text/plain": [ " experiment_group initial_edit_count n_users n_attempts\n", "1 control 100-499 316 838 \n", "2 control 500+ 1340 4601 \n", "3 control under 100 1825 3104 \n", "4 test 100-499 364 999 \n", "5 test 500+ 1355 5000 \n", "6 test under 100 2132 4243 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ab_attempts_byeditcount <- collect_edit_attempts %>%\n", "# review only AB edit attempts\n", " filter(attempt_dt >= '2021-02-12',\n", " experiment_group != 'NULL',\n", " is_ab_test_wiki == TRUE) %>%\n", " group_by(experiment_group, initial_edit_count) %>%\n", " summarise(n_users = n_distinct(user_id),\n", " n_attempts = n_distinct(edit_attempt_id))\n", "\n", "ab_attempts_byeditcount " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We are logging a reasonable amount of attempts in each edit count group for each test group across all participating wikis. \n", "\n", "Currently, we have edit attempts from the most unique users in the under 100 edits edit bucket for both AB experiment groups. However, we are currently logging the most attempts from senior contributors with over 500 edits." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## AB Test Edit Attempts by Logged In Status" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "reply_ab_events_byloggedin <- collect_edit_attempts %>%\n", " filter(attempt_dt >= '2021-02-12',\n", " is_ab_test_wiki == TRUE,\n", " test_group != 'NULL') %>% \n", " mutate(logged_in_status = ifelse(user_id == 0, 'logged-out', 'logged-in')) %>% \n", " filter(logged_in_status == 'logged-out') %>% \n", " group_by (wiki,test_group, initial_edit_count) %>%\n", " summarise(users = n_distinct(user_id),\n", " n_attempts = n_distinct(edit_attempt_id))\n", "\n", "reply_ab_events_byloggedin " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I confirmed that there are no edit attempts from logged out users recorded as part of the AB test. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## AB Test Edit Attempts by Editing Interface" ] }, { "cell_type": "code", "execution_count": 232, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "`summarise()` regrouping output by 'test_group' (override with `.groups` argument)\n", "\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\n", "
A grouped_df: 6 × 4
test_groupeditor_interfacen_usersn_attempts
<chr><chr><int><int>
controlvisualeditor 14782649
controlwikitext 13483083
controlwikitext-2017 49 125
test visualeditor 17543781
test wikitext 15773678
test wikitext-2017 44 110
\n" ], "text/latex": [ "A grouped\\_df: 6 × 4\n", "\\begin{tabular}{llll}\n", " test\\_group & editor\\_interface & n\\_users & n\\_attempts\\\\\n", " & & & \\\\\n", "\\hline\n", "\t control & visualeditor & 1478 & 2649\\\\\n", "\t control & wikitext & 1348 & 3083\\\\\n", "\t control & wikitext-2017 & 49 & 125\\\\\n", "\t test & visualeditor & 1754 & 3781\\\\\n", "\t test & wikitext & 1577 & 3678\\\\\n", "\t test & wikitext-2017 & 44 & 110\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A grouped_df: 6 × 4\n", "\n", "| test_group <chr> | editor_interface <chr> | n_users <int> | n_attempts <int> |\n", "|---|---|---|---|\n", "| control | visualeditor | 1478 | 2649 |\n", "| control | wikitext | 1348 | 3083 |\n", "| control | wikitext-2017 | 49 | 125 |\n", "| test | visualeditor | 1754 | 3781 |\n", "| test | wikitext | 1577 | 3678 |\n", "| test | wikitext-2017 | 44 | 110 |\n", "\n" ], "text/plain": [ " test_group editor_interface n_users n_attempts\n", "1 control visualeditor 1478 2649 \n", "2 control wikitext 1348 3083 \n", "3 control wikitext-2017 49 125 \n", "4 test visualeditor 1754 3781 \n", "5 test wikitext 1577 3678 \n", "6 test wikitext-2017 44 110 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "reply_ab_events_byinterface <- collect_edit_attempts %>%\n", " filter(attempt_dt >= '2021-02-12',\n", " is_ab_test_wiki == TRUE,\n", " test_group != 'NULL') %>% \n", " group_by (test_group, editor_interface) %>%\n", " summarise(n_users = n_distinct(user_id),\n", " n_attempts = n_distinct(edit_attempt_id))\n", "\n", "reply_ab_events_byinterface " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Events from all three editor interface types (visualeditor, wikitext, and wikitext-2017) were recorded for each test group type as expected. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Discussion tool events without oversampling change" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "All of the data reported above in this report included the oversampling of discussion tool related events, which was deployed along with the other instrumentation changes on 12 February 2020.\n", "\n", "I reviewed edit attempts by oversampling status to confirm if this change was deployed correctly to all dt-related events." ] }, { "cell_type": "code", "execution_count": 301, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "`summarise()` regrouping output by 'experiment_group' (override with `.groups` argument)\n", "\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\n", "
A grouped_df: 6 × 4
test_groupis_oversamplen_usersn_attempts
<chr><chr><int><int>
controlfalse 2641 5707
controltrue 98 149
NULL false73685329915
NULL true 1348 5530
test false 2586 5726
test true 851 1844
\n" ], "text/latex": [ "A grouped\\_df: 6 × 4\n", "\\begin{tabular}{llll}\n", " test\\_group & is\\_oversample & n\\_users & n\\_attempts\\\\\n", " & & & \\\\\n", "\\hline\n", "\t control & false & 2641 & 5707\\\\\n", "\t control & true & 98 & 149\\\\\n", "\t NULL & false & 73685 & 329915\\\\\n", "\t NULL & true & 1348 & 5530\\\\\n", "\t test & false & 2586 & 5726\\\\\n", "\t test & true & 851 & 1844\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A grouped_df: 6 × 4\n", "\n", "| test_group <chr> | is_oversample <chr> | n_users <int> | n_attempts <int> |\n", "|---|---|---|---|\n", "| control | false | 2641 | 5707 |\n", "| control | true | 98 | 149 |\n", "| NULL | false | 73685 | 329915 |\n", "| NULL | true | 1348 | 5530 |\n", "| test | false | 2586 | 5726 |\n", "| test | true | 851 | 1844 |\n", "\n" ], "text/plain": [ " test_group is_oversample n_users n_attempts\n", "1 control false 2641 5707 \n", "2 control true 98 149 \n", "3 NULL false 73685 329915 \n", "4 NULL true 1348 5530 \n", "5 test false 2586 5726 \n", "6 test true 851 1844 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# review edit attempts by oversample status\n", "edit_attempts_by_oversample <- collect_edit_attempts %>%\n", " group_by (experiment_group, is_oversample) %>%\n", " summarise(n_users = n_distinct(user_id),\n", " n_attempts = n_distinct(edit_attempt_id))\n", "\n", "editattempts_by_oversample" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Oversampled events are recorded for each experiment group type.\n", "Now let's review discussion tool events by oversample status." ] }, { "cell_type": "code", "execution_count": 302, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "`summarise()` regrouping output by 'event_type' (override with `.groups` argument)\n", "\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\n", "
A grouped_df: 4 × 4
event_typeis_oversamplen_usersn_attempts
<chr><chr><int><int>
discussiontoolsfalse 217 387
discussiontoolstrue 1510 5940
page false46210164384
page true 404 824
\n" ], "text/latex": [ "A grouped\\_df: 4 × 4\n", "\\begin{tabular}{llll}\n", " event\\_type & is\\_oversample & n\\_users & n\\_attempts\\\\\n", " & & & \\\\\n", "\\hline\n", "\t discussiontools & false & 217 & 387\\\\\n", "\t discussiontools & true & 1510 & 5940\\\\\n", "\t page & false & 46210 & 164384\\\\\n", "\t page & true & 404 & 824\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A grouped_df: 4 × 4\n", "\n", "| event_type <chr> | is_oversample <chr> | n_users <int> | n_attempts <int> |\n", "|---|---|---|---|\n", "| discussiontools | false | 217 | 387 |\n", "| discussiontools | true | 1510 | 5940 |\n", "| page | false | 46210 | 164384 |\n", "| page | true | 404 | 824 |\n", "\n" ], "text/plain": [ " event_type is_oversample n_users n_attempts\n", "1 discussiontools false 217 387 \n", "2 discussiontools true 1510 5940 \n", "3 page false 46210 164384 \n", "4 page true 404 824 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dt_attempts_by_oversample <- collect_edit_attempts %>%\n", " filter(user_id != 0) %>% \n", " group_by (event_type, is_oversample) %>%\n", " summarise(n_users = n_distinct(user_id),\n", " n_attempts = n_distinct(edit_attempt_id))\n", "\n", "editattempts_bydtevents_by_oversample" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I confirmed that we are oversampling discussiontool events. There are also some non discussion tool events (`event.type = page`) we are still oversampling." ] }, { "cell_type": "code", "execution_count": 303, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "`summarise()` regrouping output by 'attempt_dt' (override with `.groups` argument)\n", "\n" ] } ], "source": [ "# daily discussion tool edits attempts by oversample\n", "\n", "dt_events_daily <- collect_edit_attempts %>%\n", " filter(event_type == 'discussiontools') %>%\n", " group_by(attempt_dt, is_oversample) %>%\n", " summarize(n_attempts = n_distinct(edit_attempt_id))\n" ] }, { "cell_type": "code", "execution_count": 304, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Warning message:\n", "“Removed 2 rows containing missing values (geom_vline).”\n" ] }, { "data": { "image/png": "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\nX19//vnne8bdhaG33nqrkwU7h8MhhJgxY4Z7aEVfI0aM8Hx5ujMuaRLlhy4/pAaD4aWXXlqz\nZs2ePXs+/vhjd49R0YlbxOjRo9esWdP+JMi//PKLEMI9EJvb5MmTExMTd+zYsXv37uzs7MLC\nwl9++SUuLu6KK65oXedsz4JKpfJtonvGi/2s7rSynOizPQ4AAAAA4B8Kdm348MMPGxsbVSrV\nxIkT3ZG//e1vTqfzf//3f91jdbU6dOiQf7uYO3fu8uXLV6xY8dBDD61YsUIIIdmyf3wzP53W\nTpRWq/WDDz648847//jHP950002ZmZnudjHt9/PVarVCiMbGRkn8yJEjZ7u7Dq7gyd1izj0U\nnafm5mZ3wxw/mq2dlQ4mIFee7s26xxn0dLqz0xnHjx//17/+JYQ4depUm62iNm/efPDgQXdf\nRf+4J/bNzMxcsmSJ3xs5K0eOHJF88dzNTgcOHNjl+1KpVMnJydXV1fv27Wst2Al/bxFXX331\n73//+8OHD2/cuPHiiy/2XcFisbi7vnp2JlUqlbNmzfrTn/709ttvP//882+//bYQ4tZbb/Xs\nftuFZ6Gdi73L77Tt8+NE9/y3EQAAAEDfxBh2UuXl5Q8//LAQ4uabb259bHNXIiQ9vCorK7/7\n7jv/9jJs2LDLLrusqKjo8ccf37dv38iRIz27E/qnzczPSKvV3nzzzZMnT3a5XAUFBUKIyy+/\nXAjx7rvv2my2072rX79+Wq22oqKipqbGM/7xxx+f7e7OdgUhxEUXXSSEWL16tbu1Syt3oSE1\nNbW7C3YdTECuPN379RySzG316tUdebu7Gmu32zuy8qpVq5xO56RJk9ocI9M906i7Cd4ZN366\nRVdeeaUQ4h//+EcHhzjsPMmhc/1nJhbPEthZHaV22O12dy9L9ywWrfy7RWRkZLhHbHzwwQfb\nHD1w0aJF5eXlUVFRc+bM8Yy7e7/+/e9/t1qt7u+JZ39Y0T1nwfdi7/I7bfs6cqIlev7bCAAA\nAKBvomD3X42NjStXrszLyysrKxs6dOgLL7zQuigtLU0I8dZbb1ksFnekqalp9uzZdXV1fu/O\nPY3msmXLhBC//e1vuylzX6+99pqkuUpFRcWOHTvEf8ZvuuGGG0aMGHHw4MHbbrvNsw1dQ0PD\nhg0b3P/WaDTnn3++0+l87LHHWrvBfvbZZ0uXLj3b3Z1xBV8333xzXFzcoUOHFi1a1Lr33bt3\n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\nR48bb7wx1SkBAABaQebP7wAAZL5zbRaXweCORBKVt6uqp2sYKF2dd9559fX1BoNB6yBoB0lN\niX388cdvuOGGZcuWnXfeeYWFhUOGDPnNb37z6aefnnvuuX/+859THREAAAAAAHRZOlG8wGlX\nV1ZX14RlFrVoTJIks9ms0+m0DtIadXV1WkdIL0k17Hbv3n3VVVc1Kup0uiuuuGL37t0pSAUA\nAAAAAPAfJa4Gy9hVxeQPA2w90Vijddai0eif/vSnk046KS8vLy8vb9CgQTNmzKiurk7mS/n9\n/ptvvrl///4mk6lHjx6XX355YieD1atXi6J4//33N3rIjBkzdDrdnj17Et99yZIlI0aMyMrK\nysvLGzNmzPvvv584+fXXXxdF8dVXX73nnnsGDRpkNBrvvffeFjMHAoG77rrrjDPOcLlcJpOp\nqKjolltuqampafRly8vLH3/88SFDhpjN5uHDhy9fvlwQhG3btpWUlNjtdovFMm3aNL/f3+hR\nL7/88p133llYWGgymQYNGvTwww83/xQ1/wO2XVJTYvPz89U/f0JNTU2fPn3aMQ0AAAAAAEAj\n4x32HJ2uNhZLVN70eM9v2MVDI7fffvvixYunTZt2/fXXS5K0a9eulStXVlVV5eXlNf/A2tra\nc845Z9OmTZdffvlZZ531ww8/PPHEE6tWrVq3bt2QIUN++ctf9unT57nnnrvzzjvVD1m+fPl5\n550XbxPFYrHJkye/9957F1988axZs4LB4IsvvvjrX//6pZdemjp1auJRt912W0FBwYIFC/Lz\n8+MzeZvPvGfPnqeeeuqiiy6aOnWq0Wj8+OOPlyxZ8q9//eujjz5Sr1y8aNGigwcPXnnllSaT\n6Yknnrjkkktee+216667bty4cfPnz//888+XLVsmiuJLL72k/qlvueWWkSNHvv7667m5uc8+\n++zvf//7Q4cOHWvnhiR/wDZRkvCHP/xh3LhxkUhEXTx06J5v7UMAACAASURBVNCAAQMWLVqU\nzFdIH9dcc83u3bu1TtFKkUiksrKypqZG6yAZzOv1ut1urVNksLq6usrKymAwqHWQTCXLcmVl\nZSAQ0DpIBgsEApWVlbFYTOsgmSoUClVWVtbV1WkdJIPZ7fYBAwZonSKD1dTUVFZWhsNhrYNk\nqmg0WllZWV1drXWQDObz+SorK7VOkcHq6+srKyvr6+u1DpKp4heEfr9f6yCZp3TTZmHNp4n/\n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\n06bddNNNWmeBIAjC66+/fvHFF5eVlZWUlGid5Qh+2wEAAF1Ck524rvaXSwAAAGQEpsQCAICu\nQqfTJVYpjh+q76V5BwAAugJFUUKh0LHuNRqNzGVJB/w/AAAAnV983pYsy6JKfIZsfHbwAw88\noHFEAACADvHtt99mHdurr76qdUAIQpIj7Kqrq6uqqgoKCuKH+/bte/TRR71e75VXXnnOOeek\nMh4AAEA7qK+v79ev3+7duxvVCwsLd+zYIQjCvHnz5s2bp0U0AACADjVw4MDPP//8WPcOGDCg\nI8Okg4suuigNZ1ok1bC77rrrtmzZEv/fWVdXN2rUqD179giCsHTp0k8++SSZHUYAAAC0tWvX\nrviNLVu2CIIwdOhQTeMAAABow2w2n3baaVqnQAuSmhK7du3aSZMmxW+/8sore/bs+fvf/75j\nx46BAwcuWrQolfEAAADa2dChQ+nWAQAAIJ0l1bA7dOhQnz594rdXr149fPjwyy67rLCw8Le/\n/W0zoygBAADSx9ixYyVJEpuidTQAAACggaSmxIqimNhSbe3atRdccEH8dvfu3Q8fPpyqaAAA\nAO1Ep9PFt5gAAAAA0l9SI+z69ev34YcfCoLw+eef7969e+zYsfH6vn37HA5H6sIBAAC0i3i3\nTpKk1atXK0fROh0AAADQQFIj7K644oo77rhj//79mzdvdjqdv/71r+P1DRs2DBo0KJXxAAAA\n2od6xgAAAACQzpIaYXfrrbfefPPNO3fu7Nmz56uvvpqXlycIgtfrXbly5bnnnpvihAAAAO2A\nteoAAACQKZIaYafX6xcvXrx48WJ10eFwhEKh1KQCAABoZ6xhBwAAgEyR1Ai7MWPG/Pvf/z66\n/sEHH4wZM6adEwEAALQ3SZIEQRBFUZIk01G0TgcAAAA0kNQIu48++sjv9x9dP3z48EcffdTe\nkQAAANpZYnidoijhcFjbMAAAAEDzkmrYHYvf7zebze0VBQAAIEVYwA4AAAAZpLmG3ddff/31\n11/Hb69evXrv3r3qe71e72OPPTZs2LAUpgMAAGgPLGAHAACADNJcw+6NN96455574rcXLFhw\n9AlZWVkvv/xySnIBAAAAAAAAXVJzDbtp06addtppgiBMmjRpwYIFJ510UuIuURTz8vJGjBhh\nsVhSnhEAAOD46XQ6QRAOHTrkcrnit48lFot1VCgAAACgZc017AYPHjx48GBBEObPnz916tTC\n/8/evcfZVdb34n/W3jN7z0xuBBJAciXBhMhFjFD15/GYnuMB6eF+xBKgYNJQkBalXArW0xMQ\nGqWA8voB1liQiPAqqQa11fKjUTQKFizJwWhJQM0FozEhCTG3mX1dvz9Wsp3chslcsteeeb//\n4LX2s9bsfPdi7dnPfPaznmfixMNUFABAryW3wT700EO33nqrW2IBAPrDLbfcsmDBgo0bN37u\nc5+7/vrrD3bYRz7ykU2bNn3rW986nLU1tG4tOnHbbbf1cxkAAH0sWWjiggsuCBadAADoBz/4\nwQ/uvvvuH/zgByeffHJra2u9yxlQDmGV2J///Off/OY3V61aFcfx5MmTL7jgghNOOKH/KgMA\n6I3Oo+qMsAMA6HOvvvrqyJEj/8t/+S/1LmQA6lZgF8fxLbfccs8998RxXGu85ZZb/uqv/urT\nn/50v9UGAAAAQLdVq9Wf/aS3TxJFmVNOe9OjLrnkkoULF4Y9tzKsX7/+Jz/5yac//emf/exn\nhUJh2rRpt99++9lnn73/Dz777LO33nrr8uXLq9XqxIkTP/WpT1100UXJri9/+cv33nvvq6++\neuyxx55//vl33nnnsGHDevtyGlO3ArvPfe5zd99998yZM+fMmTNp0qRCofCzn/3snnvu+cxn\nPnPMMcd0cYsyAEC9dL3QRGcWnQAABohSqfT4I719kkwm/+n73vSoJ554YsaMGf/7f//vTZs2\nJS0/+MEPrrnmmre//e2ZTOaJJ54477zzXnrppZNOOmmfAs8555yrrrrq0UcfzWQyL7/8cj6f\nT3Y98MADt99++3333fee97xn/fr1119//axZs772ta/19uU0pm4Fdp///Oc//vGP33ff7/9v\nTZ069YILLvjv//2/P/jggwI7ACCF3AYLAHA4ffjDH65tz50795lnnlm4cOGnPvWpzsds3br1\nd7/73dlnnz1p0qQQQm2B00qlctttt911112XXXZZCGHSpElf/OIXp0+fvmHDhmOOOebwvYbU\nyHTnoNdee+3KK6/cpzGbzV5++eWvvfZaP1QFANBbUbfVu1IAgIFg/fr1H//4x6dPnz527Nhj\njz32xz/+8Zo1a/Y5ZvTo0R/5yEc++MEPnnnmmX/7t3/705/+NGlfvXr15s2b58yZU+uhTZ8+\nPYTwi1/84jC/ipToVmB37LHH7tixY//2HTt2jBs3rq9LAgDoA9Vuq3elAAADwTnnnLN8+fLP\n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\nzmHDhvWy/oGhW4Hd008/fdlll02fPv2mm266+eabk8bjjjvu1FNPXbRokcAOAEi5SqWSbMRx\nXC6X61sMAEA/KcbxXa+t6+WTZKOoO4HdQw891NHRsf8tsd/85jdvvPHGV155JYSQz+e7eIYH\nHnjg9ttvv++++97znvesX7/++uuvnzVr1te+9rVe1j8wdCuwmzdv3mmnnfb888+Xy+VaYBdC\neM973pOEqQAAaWYCOwCAw2PcuHF/+7d/u88NDfurVCq33XbbXXfdddlll4UQJk2a9MUvfnH6\n9OkbNmw45phjDkulqdatOeyWLl16+eWXNzXtm+6NHz9+/fr1/VAVAEBfqnap3tUBAAwcJ598\n8pumdSGE1atXb968ec6cOdEe06dPDyH84he/6P8aG0C3ArtKpXLAQYwbN25sbm7u65IAAAAA\naEitra2dH+4T3tUmKkk2nnrqqXhv733vew9bqWnWrVtip0yZ8uyzz/75n/9558Y4jv/5n//5\n5JNP7p/CAAD63kknnbRmzZp9RtW1t7fXqx4AgD6UDdE7hw3t5ZN0a2xXCCGEXC73prMDH330\n0Zs2bao9XLFiRbIxefLkkSNHfuMb3/jgBz/YkyoHum4FdldeeeXNN9985plnzpw5M2nZsWPH\nTTfd9OMf/3j+/Pn9WR4AQN/IZDJxHNe7CgCAftSWzbz4zrcftn9u8uTJ3/nOd1asWDF69Oih\nQ4e2tLTsf8yZZ5554403vvrqq1OmTPnhD3/40EMPJe1NTU2333779ddfP2rUqD/+4z/O5/Mr\nVqxYtGjRo48+etjqT7NuxaYf+9jHzjrrrNmzZ0+YMCGEcMUVVxx11FHz588/99xz58yZ088V\nAgD0Vi2t23/1CetRAAD0zNVXX33SSSe9+93vHj169IIFCw54zBVXXPGnf/qn73//+4899tjP\nfe5zt9xyS23Xdddd9/jjj//bv/3bH/zBH5x++ulz586dNGnSYSo99bo1wq6pqelf/uVf5s+f\n/+ijj3Z0dKxfv/7kk0++4oor/uIv/qI78wgCANRXktY9//zz3/ve9z7xiU9kMplKpXLMMcds\n3Lix3qUBADSqUaNGPfXUU51bvva1r+1zTFNT0z333HPPPffUWm6++eba9iWXXHLJJZf0a5EN\nqluBXQghm81ee+211157bb9WAwDQT6Ioete73vUf//EftZYNGza4TxYAgBTq1vi4GTNmvPTS\nS/u3P/PMMzNmzOjjigAA+s1f/MVfhD0D7gAAIJ26FdgtWbJk69at+7dv3LhxyZIlfV0SAEDf\n6xzS1bYldwAApFCvZqDbunXrAVcAAQBIoZUrV4Y9q0xEUWS5CQAA0qmrOeyWL1++fPnyZHvx\n4sXr1q3rvHfLli3333//tGnT+rE6AIC+MGXKlJ///OePP/74HXfc8fLLL3fuwHz605+uY2EA\nALC/rgK7J5988vbbb0+2582bt/8Bra2tTzzxRL/UBQDQd1555ZXa9oknnuhOWAAA0qyrwO7S\nSy89/fTTQwjnnnvuvHnzTjnllNquKIqGDRt22mmnDR8+vN9rBADoUw888MBtt932hS984UMf\n+lC9awEAgH11FdhNmTJlypQpIYS5c+fOnDlz4sSJh6koAIC+0NbW1tHRMWHChNWrVyctf/qn\nf/qlL30p2b744oujKKpWq/UrEAAADqBbi058//vfP+Aqsc8888yMGTP6uCIAgD7S3t4ex/Ef\n/dEf1VpqaV0ijuNMpldrcAEAQJ/rVg91yZIlBwzsNm7cuGTJkr4uCQCgLz344IPJxllnnZVs\nfPWrX43j+Oijjw4hmM8OAIC06dVXylu3bm1paemrUgAA+tXixYtDCFEUJVPXbdiwod4VAQDA\nAXQ1h93y5cuXL1+ebC9evHjdunWd927ZsuX++++fNm1aP1YHANA7URTVtpPBdBMmTOi81wg7\nAADSpqvA7sknn7z99tuT7Xnz5u1/QGtr6xNPPNEvdQEA9IX987jaAhQAAJBOXQV2l1566emn\nnx5COPfcc+fNm3fKKafUdkVRNGzYsNNOO2348OH9XiMAQC9ks9lKpXLAxSUMrwMAIIW6Cuym\nTJkyZcqUEMLcuXNnzpw5ceLEw1QUAEBfGDp06I4dO6rVau3G2La2ttreG2+8sU51AQBAV7oK\n7Gpuu+22fi4DAKDvbd++vampqVKpJA+z2ezOnTtrez/3uc+FEA448g4AAOqoW4FdCCGO4+98\n5zsvvPDCli1bqtVq51333XdfPxQGANAHyuXywXbt06UBAICU6FZgt3379rPPPvu555474F6B\nHQAAAAD0lW7dAzJ37tx///d/nzdv3ssvvxxC+Na3vrVkyZIzzzzzjDPOWLNmTf8WCAAAAACD\nSbcCu69//esf/vCHP/GJTxx//PEhhKOOOuq//tf/+q//+q9xHD/wwAP9XCEAAAAADCLdCux+\n/etfv+997wt7ZmUulUohhGw2e8kll3z1q1/t1/oAAAAAYFDpVmA3ZMiQJKTL5XItLS2/+c1v\nkvbhw4f/9re/7cfqAAAAAGCQ6VZgN2nSpFdeeSXZfvvb3/7EE0/EcVwulxcuXDh27Nj+LA8A\nAAAABpduBXZnnnnmokWLkkF2c+bM+cY3vnHCCSe89a1v/e53vztr1qx+rhAAAAAABpGm7hx0\n6623XnbZZdVqNYQwZ86c3/3ud1/60pcymcxtt91266239nOFAAA9kc1mu3lkpVLp10oAAOCQ\ndCuwGzFixIgRI2oPb7zxxhtvvLHfSgIA6APJd40AANBwuhXYAQA0nCiK6l0CAAD0hMAOABiY\njLADAKBBdWvRCQAAAADg8DDCDgAYLDKZTBzHtYdRFBmFBwBAChlhBwAMfAsWLIiiqHNaF0KI\n4ziKogULFtSpKAAAODCBHQAw8M2ePTvZGDlyZBzHcRwfddRR++wCAICU6FZgN2PGjJdeemn/\n9meeeWbGjBl9XBEAQF9LxtbFcbxly5akZdOmTbXGelYGAAD76VZgt2TJkq1bt+7fvnHjxiVL\nlvR1SQAAfS+Kom42AgBAffXqltitW7e2tLT0VSkAAP3ngCPpDK8DACCFuloldvny5cuXL0+2\nFy9evG7dus57t2zZcv/990+bNq0fqwMA6DuZTKbzsrCZjMl8AQBIo64CuyeffPL2229PtufN\nm7f/Aa2trU888US/1AUA0HfGjx//2muvJcvC7r+rLiUBAMDBdBXYXXrppaeffnoI4dxzz503\nb94pp5xS2xVF0bBhw0477bThw4f3e40AAL2zdu3ad77zncuWLdunffr06UuXLq1LSQAAcDBd\nBXZTpkyZMmVKCGHu3LkzZ86cOHHiYSoKAKCv1YK5iVxpWwAAIABJREFUlStXjho1atSoUfWt\nBwAADqarwK7mtttu6+cyAAAOkxNPPLHeJQAAQFcOGtgtWLAghPAnf/In2Ww22T6Yj3zkI31c\nFABAP8hkMp2XhY2iqPMaFAAAkBIHDexmzZoVQrjkkkuy2WyyfTACOwAg5RYsWLB/fyZZg+KR\nRx7RmQEAIFUOGtgtXrw4hJDL5WrbAAANavbs2cnGyJEjt2zZEkIYNWrU5s2bk10COwAAUuWg\ngd0HPvCBA24DADSc5E7YzvfDbtq0KYQQRVHnRgAASINMvQsAADgcoijqZiMAANSXwA4AGBQO\nOJLO8DoAAFLooLfEtrS0dPMpOjo6+qgYAIB+lMlkOi8Lm8n45hIAgDQ6aGB3zjnndH748ssv\nr1ixYsyYMVOnTo2iaOXKlb/+9a+nTZv2tre9rf+LBADoiSiKoiiqVqvjx49/7bXXkmVh9zlm\n/PjxdakNAAAO5qCB3de+9rXa9o9+9KOzzjrrS1/60pVXXpl8F12tVr/0pS9df/31Dz300OEo\nEwCgF9auXfvOd75z2bJl+7RPnz596dKldSkJAAAO5qCBXWe33nrrlVdeOWvWrFpLJpOZM2fO\nsmXLPvGJTyxZsqRPSvn2t789f/78zi133HHH29/+9mT7xRdf/MpXvrJu3boRI0Z84AMfmDlz\nZu0b8i52AQAkasHcypUrR40aNWrUqPrWAwAAB9OtwG7p0qV/8id/sn/7O97xji9/+ct9WM2w\nYcPuuOOO2sPjjjsu2XjllVfuvPPOs88++4YbbvjlL3/5+c9/vlqtXn755V3vAgDY34knnljv\nEgAAoCvdCuxyudz//b//d//2pUuX5vP5Pqwmm81OmjRp//Ynn3xyzJgxV199dQhhwoQJ69ev\n/+Y3v3nxxRfn8/kudvVhYQBAg4rjOJvNdn1MpVI5PMUAAEB3dCuwO+ecc+bPn3/aaafNnj27\nqakphFAulx966KF/+Id/6NuxbNu3b7/iiivK5fLYsWPPP//89773vUn7ihUr3v/+99cOmz59\n+sKFC1etWjVt2rQudtWec926dbUDKpVKpVIpl8t9WPZhk/w5Ua1WG7T+NIjjOITgBPZYsrpi\n476J6i65AuM4dgJ7rPYutr5nzwzOj5LOK8MeUA/OxqA6gX2r9lFiDpOeSU7gYHsX9y0dwl5y\nEfaSDmHvJeewUqkkGw3HN4V0R7cCu7vvvvuFF164+uqrP/nJT771rW+N4/jnP//55s2bp06d\n+nd/93d9Vcq4ceM++tGPTpgwoVgsLlmy5K677pozZ855550Xx/HWrVtHjhxZOzLZ3rJlSxe7\nai0vvvjizTffXHs4efLkbdu2bd26ta/KPvwKhUKhUKh3FY2toS+ANNi1a9euXbvqXUUDK5VK\nLsJe2rZtW71LaGzt7e3t7e31riJFevCW9C7upR07dtS7hMZWLBaLxWK9q2hs3sW9pEPYS+Vy\n2UXYS43bIdy+fXu9S6ABdCuwO/bYY5cuXfrZz372ySefXL58eQhh8uTJH/vYx2644YahQ4f2\nVSmnnnrqqaeemmyfcsopO3fuXLRo0XnnndfLpx0zZsxFF11Ue7hy5cp8Pt/S0tLLp62LOI4L\nhUJTU1MyzpEeKBQKcRw36AWQBuVyuVwuNzc3v+n9ZRxMR0dHNpttbm6udyGNqlgsVqvVfD5v\nbE7PVKvVYrE4qN7FURT1R4feR0mPJR8luVzOONmeSTqEPkp6Q4ewlyqVSqlUGlQfJX0reRdn\nMplcLlfvWhpVqVSqVCqN2yE0hRfd0d3cZ9iwYXPnzp07d26/VtPZtGnTnnvuuXK53NTUdMQR\nR7zxxhu1Xcn2kUceGUXRwXbVWqZMmfLXf/3XtYdXX311W1tbH+aMh1O5XC4UCs3NzUOGDKl3\nLY2qVCpVq9UGvQDSoL29vVwut7S0+IzpmTiOk8DORdhj27ZtKxaLQ4YM8ad+zySjcnK5XGtr\na71rOXz64x3nXdxjO3fuLJfLra2t8qaeqVQqSYfQRdhjSWrsBPZYR0dHqVRq3GEQdVeL3V2E\nPbZ9+/ZKpdLW1tagqfGg6obRY4fw1065XF66dOlTTz11eAburlix4ogjjkiGkk2bNm3ZsmW1\nXcuWLWtpaUmWp+hiFwAAAAA0nO4Gdv/4j/84duzY008//Y/+6I9WrlwZQvjNb35z9NFHP/bY\nY31VyoMPPvjMM8+sWLHiJz/5yf333//cc89deOGFya6LLrro17/+9fz589euXfu9733v61//\n+nnnnZcM8OliFwAAAAA0nG7dEvv0009fdtll06dPv+mmm2oLOBx33HGnnnrqokWL+mqh2Fwu\nt3Dhws2bN+dyuTFjxtx8883ve9/7kl1Tp0795Cc/+dhjjz399NMjRoy48MILL7300jfdBQAM\ncrNnzz777LPrXQUAAByabgV28+bNO+20055//vlyudx5xdX3vOc9jz/+eF+VctVVV1111VUH\n23vGGWecccYZh7oLABjMHn744XqXAAAAh6xbt8QuXbr08ssv339l0vHjx69fv74fqgIAAACA\nQapbgV2yXvL+7Rs3brS8FwAAAAD0oW4FdlOmTHn22Wf3aYzj+J//+Z9PPvnkfqgKAAAAAAap\nbgV2V1555T/90z898sgjtZYdO3Z89KMf/fGPf/yRj3ykv0oDAAAAgMGnW4Hdxz72sbPOOmv2\n7NkTJkwIIVxxxRVHHXXU/Pnzzz333Dlz5vRzhQAAAAAwiHQrsGtqavqXf/mXBx988Pjjjx8+\nfPj69etPPvnk++677+tf/3om061nAACorz/8wz/MZDLRgdS7NAAA2Mu+C78eTDabvfbaa6+9\n9tp+rQYAoD9ks9lqtVrvKgAAoFuMjwMABr4krctkMosXL473U+/qAABgL90dYQcA0NCiKKpU\nKvWuAgAA3pwRdgDAoGCuOgAAGoXADgAYFMxhBwBAo3BLLAAw8GUymWq1mqwJ29zcvM/eQqFQ\nl6oAAOCABHYAwMBXG14Xx3GxWKxvMQAA0DWBHQAw8JnADgCABiKwAwAGPhPYAQDQQCw6AQAA\nAAApYoQdADBYZDKZOI5rD6MoMvIOAIAUMsIOABj4FixYEEVR57QuhBDHcRRFCxYsqFNRAABw\nYAI7AGDgmz17drIxcuTIOI7jOD7qqKP22QUAACnhllgAYOBLxtZ1HmG3adOmEML+w+4AAKDu\njLADAAaFKIq62QgAAPUlsAMABoUDjqQzvA4AgBQS2AEAg0Umk+niIQAApIR+KgAw8I0fPz7s\nWRa2Jhlel+wCAID0ENgBAAPf2rVrp0+fvn/79OnT165de/jrAQCALlglFgAYFJYuXZpsrFy5\nctSoUaNGjapvPQAAcDACOwBgcDnxxBPrXQIAAHRFYAcADEzZbDaEsGHDhlGjRiXbB1OpVA5X\nUQAA8ObMYQcADEzVarVarT700EO17YOpd6UAALAXI+wAgIEpiqIQwgUXXFDbBgCAhiCwAwAG\nps5D5wyjAwCggbglFgAYjPL5fDabXbBgQb0LAQCAfQnsAICBL5PJdL4rNoqiYrFYrVZnzZo1\nderUOhYGAAD7E9gBAANfHMe17Uxmd/8nifBeffXV+tQEAAAHIbADAAaF2gi7JLx7/vnnTWwH\nAEA6CewAgMHoXe96V7B6LAAAqSSwAwAGhWRg3ZAhQ4KcDgCAdGuqdwEAAIdJLac744wzko3O\nc9sBAEBKGGEHAAx8N9xwQ207iqIXXnghhHDuuefWryIAADgogR0AMPDde++98R61tSbuvvvu\n2bNnL168uL61AQDAPtwSCwAMRvl8vlwuP/zwwx/4wAfqXQsAAOzFCDsAYODLZDKdF5qIoqhY\nLFar1VmzZk2dOrWOhQEAwP4EdgDAwNd5cYlMZnf/J4nwXn311frUBAAAByGwAwAGhdoIuyS8\ne/7552uT2QEAQKoI7ACAwehd73pX6JTiAQBAegjsAIBBIRlYN2TIkCCnAwAg3awSCwAMFrWc\n7owzzkg2Os9tBwAAKWGEHQAw8N1www217SiKXnjhhRDCueeeW7+KAADgoAR2AMDAd++998Z7\n1NaauPvuu2fPnr148eL61gYAAPtwSywAMEideOKJDz/8cL2rAACAfQnsAICBr+tVJsxkBwBA\nqrglFgAAAABSxAg7AGDgmz17dueH69at++53v1upVEIIkydPrlNRAABwYAI7AGDgO+BcdZs2\nbRo9evQvf/nLw18PAAB0wS2xAMAgNWrUqK7ntgMAgLoQ2AEAg5flJgAASCG3xAIAA99ZZ521\nT8sLL7ywbdu2uhQDAABdE9gBAAPfv/3bvx1sVy6XO5yVAADAm3JLLAAwGEVRFEXR4sWLC4VC\nvWsBAIC9GGEHAAx85qoDAKCBGGEHAAAAACkisAMABr5MJhNF0aZNmzo3btq0KYqiTEZ3CACA\ndNFDBQAGvuSW2FGjRnVuTB66WxYAgLQR2AEAg0IURd1sBACA+hLYAQAAAECKCOwAgEHhgLe+\nuh8WAIAUEtgBAINFJpOprTuxcuVKy00AAJBO+qkAwMA3e/bsEEIcx6NHj46iKIqiadOmJcPr\nkl0AAJAeAjsAYOB7+OGHr7322v3bb7jhhocffvjw1wMAAF0Q2AEAg8KDDz4Yx3EcxytWrHj9\n9deT7XvvvbfedQEAwL4EdgDA4HLiiSeOGjUqn89ns9kFCxbUuxwAANiXwA4AGPgymUwURbWH\nURQVi8VqtTpr1qypU6fWsTAAANifwA4AGPiS9SUStcVhkwjv1VdfrU9NAABwEAI7AGBQqI2w\nS8K7559/vlqt1rUiAAA4MIEdADAYvetd7wqdUjwAAEgPgR0AMCgkA+uGDBkS5HQAAKRbU70L\nAAA4TGo53RlnnJFsdJ7bDgAAUmLQBXZxHJfL5VKpVO9CeqJSqYQQqtVqg9afBskfZk5gjyUX\nYaVScQ57JrkC4zh2AnssmXSsVCrV1g3gkAzad/H1119/3333JdtRFD377LOlUun8889PWnpw\nNgbbCexDybu4XC7Xu5BGlZxAHcLe0CHspUH7UdJXdAh7r/ZR0qDT0foQpDsGY2BXLBYLhUK9\nC+mJ5Dd7pVJp0PrTII7jOI6dwB5LPlpKpVKDfjSmRLVadRH2WHLtFYtFtzT2THICB+FHyR13\n3HHHHXfUHiYv/1Of+tSoUaMuvvjiHpyNwXYC+1Dyp36pVEo2OFQ6hL2X/CZ0AnssefOWy2WD\nlHsmOW86hL3R6B1CWS3dMegCu0wm09bWNnTo0HoX0hPlcrlQKDQ3Nyfz79ADSdLUoBdAGrS3\nt5fL5ZaWlnw+X+9aGlIcxx0dHdls1kXYY9u2bSsWi0OGDDHCrmeKxWKxWMzlcq2trfWupf5O\nP/30Rx99tGc/613cYzt37iyXy62trc3NzfWupSElUV1zc7OLsMfK5XK5XHYCe6yjo6NUKuXz\n+ZaWlnrX0pCSAQQ6hL2xffv2SqXS1taWzWbrXUtP6IbRHYMusAMABomkE79hw4ZRo0Z13aE3\n1AsAgFQxPAEAGJiq1Wq1Wn3ooYdq2wdT70oBAGAvRtgBAANTMq/NBRdcEDqtDwsAAOknsAMA\nBqbOQ+cMowMAoIG4JRYAAAAAUkRgBwAMfH/zN3+T2dtnPvOZehcFAAAHJrADAAayTZs2ZTKZ\nO++8M97bJz7xiUxGRwgAgDQyhx0AMJCNHj26tl1beiKO4+S/URQl2wAAkB6+WAYABqxsNpts\nnHnmmXEcV/eI43jGjBnJrqYm318CAJAuAjsAYMBKFod929ve9vTTT++z63vf+96UKVNCCJVK\npQ6VAQDAwQnsAIAB7j//8z8P2P7KK68c5koAAKA7BHYAAAAAkCICOwBgIKstNNGDvQAAUBcC\nOwAAAABIEcuiAQADWRzHmcxBv6GM4/hwFgMAAN0hsAMABjipHAAAjUVgBwAMWKaoAwCgEQns\nAIABq1qt1rsEAAA4ZBadAAAAAIAUEdgBAAAAQIoI7AAAAAAgRQR2AAAAAJAiAjsAAAAASBGB\nHQAAAACkiMAOAAAAAFJEYAcAAAAAKSKwAwAAAIAUEdgBAAAAQIoI7AAAAAAgRQR2AAAAAJAi\nAjsAAAAASBGBHQAAAACkiMAOAAAAAFJEYAcAAAAAKSKwAwAAAIAUEdgBAAAAQIoI7AAAAAAg\nRQR2AAAAAJAiAjsAAAAASBGBHQAAAACkiMAOAAAAAFJEYAcAAAAAKSKwAwAAAIAUEdgBAAAA\nQIoI7AAAAAAgRQR2AAAAAJAiAjsAAAAASBGBHQAAAACkiMAOAAAAAFJEYAcAAAAAKSKwAwAA\nAIAUEdgBAAAAQIoI7AAAAAAgRQR2AAAAAJAiAjsAAAAASBGBHQAAAACkiMAOAAAAAFJEYAcA\nAAAAKSKwAwAAAIAUEdgBAAAAQIoI7AAAAAAgRQR2AAAAAJAiAjsAAAAASBGBHQAAAACkiMAO\nAAAAAFJEYAcAAAAAKSKwAwAAAIAUEdgBAAAAQIoI7AAAAAAgRQR2AAAAAJAiAjsAAAAASBGB\nHQAAAACkiMAOAAAAAFJEYAcAAAAAKSKwAwAAAIAUEdgBAAAAQIoI7AAAAAAgRQR2AAAAAJAi\nTfUu4Pe+853vLFmyZM2aNYVC4bjjjvuf//N//o//8T+SXd/+9rfnz5/f+eA77rjj7W9/e7L9\n4osvfuUrX1m3bt2IESM+8IEPzJw5M4qiw109AAAAAPSFFAV2zzzzzEknnXT++ee3tbX96Ec/\nuv/++8vl8tlnn53sHTZs2B133FE7+Ljjjks2XnnllTvvvPPss8++4YYbfvnLX37+85+vVquX\nX355HV4AAAAAAPRaigK7efPm1bbf9ra3rV69+rnnnqsFdtlsdtKkSfv/1JNPPjlmzJirr746\nhDBhwoT169d/85vfvPjii/P5/OEpGwAAAAD6UIoCu30Ui8Wjjz669nD79u1XXHFFuVweO3bs\n+eef/973vjdpX7Fixfvf//7aYdOnT1+4cOGqVaumTZtW+8F169bVDqhUKpVKpVwuH5YX0ccq\nlUoIoVqtNmj9aRDHcQjBCeyxarUaQmjcN1HdJVdgHMdOYI/V3sWZjGlYe8JHSV9xAnus9lFi\nDpOeSU6gd3Fv6BD2kouwl3QIey85h5VKJdloOEl/DLqW0sDuO9/5zi9+8Ys/+7M/Sx6OGzfu\nox/96IQJE4rF4pIlS+666645c+acd955cRxv3bp15MiRtR9Mtrds2VJrefHFF2+++ebaw8mT\nJ2/btm3r1q2H66X0vUKhUCgU6l1FY2voCyANdu3atWvXrnpX0cBKpZKLsJe2bdtW7xIaW3t7\ne3t7e72raGzexb20Y8eOepfQ2IrFYrFYrHcVjc27uJd0CHupXC67CHupcTuE27dvr3cJNIA0\nBnY//OEPv/CFL/zlX/7lW9/61qTl1FNPPfXUU5PtU045ZefOnYsWLTrvvPO682wTJky48sor\naw9ffPHFlpaW1tbWPi/7MKhWq4VCoampqbm5ud61NKqOjo44jhv0AkiDcrlcKpVyuVw2m613\nLY2qvb09m83mcrl6F9KoisVipVJpaWkxNqdnKpVKsVhsbm5uakpjH6CB+CjpsVKpVC6X8/m8\ncbI9E8dxR0eHDmFvFAqFarXqXdxjSYfQR0mPJe/iTCZjHqceSzqEjftR4n893ZG637BPPfXU\nww8/fNNNN7373e8+2DHTpk177rnnyuVyU1PTEUcc8cYbb9R2JdtHHnlkrWXSpEnXXXdd7eHV\nV1/d2to6ZMiQ/im/f5XL5UKh0Nzc3KD1p0GxWKxWq05gj7W3t5dKpXw+7zOmZ+I4TgI7F2GP\nJTMbtLW1NWj/rO6SUTm5XM5fqr3kXdxjO3fuLJfLLS0t8qaeqVQqSWDnIuyxUqmkQ9gbHR0d\nSYewpaWl3rU0pCSw0yHsjWq1mnQIG3QYgW4Y3ZGuv3aeeOKJRx555G/+5m+6SOtCCCtWrDji\niCOS73OmTZu2bNmy2q5ly5a1tLQccHkKAAAAAEi/FI2w+4d/+Id//dd//bM/+7Nhw4atWrUq\nhNDc3Dxu3LgQwoMPPjht2rS3vOUtxWLxBz/4wXPPPTdr1qzkpy666KJbbrll/vz5H/zgB1et\nWvX1r3/9ggsuMPYHAAAAgAaVosDu+9//fqVS+fu///tay7HHHvvFL34xhJDL5RYuXLh58+Zc\nLjdmzJibb775fe97X3LM1KlTP/nJTz722GNPP/30iBEjLrzwwksvvbQ+LwAAAAAAei1Fgd3j\njz9+sF1XXXXVVVdddbC9Z5xxxhlnnNE/RQEAAADAYZWuOewAAAAAYJAT2AEAAABAigjsAAAA\nACBFBHYAAAAAkCICOwAAAABIEYEdAAAAAKSIwA4AAAAAUkRgBwAAAAApIrADAAAAgBQR2AEA\nAABAigjsAAAAACBFBHYAAAAAkCICOwAAAABIEYEdAAAAAKSIwA4AAAAAUkRgBwAAAAApIrAD\nAAAAgBQR2AEAAABAigjsAAAAACBFBHYAAAAAkCICOwAAAABIEYEdAAAAAKSIwA4AAAAAUkRg\nBwAAAAApIrADAAAAgBQR2AEAAABAigjsAAAAACBFBHYAAAAAkCICOwAAAABIEYEdAAAAAKSI\nwA4AAAAAUkRgBwAAAAApIrADAAAAgBQR2AEAAABAigjsAAAAACBFBHYAAAAAkCICOwAAAABI\nEYEdAAAAAKSIwA4AAAAAUkRgBwAAAAApIrADAAAAgBQR2AEAAABAigjsAAAAACBFBHYAAAAA\nkCICOwAAAABIEYEdAAAAAKSIwA4AAAAAUkRgBwAAAAApIrADAAAAgBQR2AEAAABAigjsAAAA\nACBFBHYAAAAAkCICOwAAAABIEYEdAAAAAKSIwA4AAAAAUkRgBwAAAAApIrADAAAAgBQR2AEA\nAABAigjsAAAAACBFBHYAAAAAkCICOwAAAABIEYEdAAAAAKSIwA4AAAAAUkRgBwAAAAApIrAD\nAAAAgBQR2AEAAABAigjsAAAAACBFBHYAAAAAkCICOwAAAABIEYEdAAAAAKSIwA4AAAAAUkRg\nBwAAAAApIrADAAAAgBQR2AEAAABAigjsAAAAACBFBHYAAAAAkCICOwAAAABIkaZ6F3C4xXFc\nLpdLpVK9C+mJSqUSQqhWqw1afxrEcRxCcAJ7LLkIK5WKc9gzyRUYx7ET2GPVajWEUCqVMhnf\nOfWEd3FfcQJ7LHkXl8vlehfSqJITqEPYGzqEveSjpJd0CHuv9lGSbDQcH4J0x2AM7IrFYqFQ\nqHchPZH8Zq9UKg1afxrEcRzHsRPYY8lHS6lUatCPxpSoVqsuwh5Lrr1isRhFUb1raUjJCfRR\n0ntOYI8lf+qXSqVkg0OlQ9h7yW9CJ7DHkjdvuVxOrkYOVXLedAh7o9E7hLJaumPQBXaZTKat\nrW3o0KH1LqQnyuVyoVBobm4eMmRIvWtpVEnS1KAXQBq0t7eXy+WWlpZ8Pl/vWhpSHMcdHR3Z\nbNZF2GPbtm0rFotDhgwxwq5nisVisVjM5XKtra31rqWxeRf32M6dO8vlcmtra3Nzc71raUhJ\nVNfc3Owi7LFyuVwul53AHuvo6CiVSvl8vqWlpd61NKRkAIEOYW9s3769Uqm0tbVls9l619IT\numF0h792AAAAACBFBHYAAAAAkCICOwAAAABIEYEdAAAAAKSIwA4AAAAAUkRgBwAAAAApIrAD\nAAAAgBQR2AEAAABAigjsAAAAACBFBHYAAAAAkCICOwAAAABIEYEdAAAAAKSIwA4AAAAAUkRg\nBwAAAAApIrADAAAAgBQR2AEAAABAijTVuwAAoBfiOHS0hxDi9vYQQujoCHE1LhRCpRJKxVAu\nx+VyKJVCpRyKxVCtxrt25ovFaPTR8QlTomPeEjK+ugMAgNQR2AFA/yuVQrkUl0qhXN6do5VK\nSWMo7dUeQoj3tO/emyRuvz+yFEq19t0/ckhyIYQQiiGEXC5z3Nho4qTMxEnRhOOjtiF9/KoB\nAIAeEdgBwJsEamF3iNZpVzcDtRBCR3uI4zq/uoMpFqtrVoU1qyohhBCiI4/KTJwUTZycmXh8\ndPSxIYrqXB4AAAxWAjsADqM9+dfBxB0dXcVblUrmjS3ZUinetaNaKISwOw6LCx2hGodiIVQq\ncTLoLAnXKpW4WAzVSigUQjWOO9pDCKF9VwghdHTEcRwKHaFa7csX2MjiLZsrWzaHZf8RQoiG\nDI0mHJ+ZcHw04fjM2PGhubne1QEAwCAisAPonvb2EOIQwu7hVIk9g6ficjkUi7sbaxlQtRIX\n9mqM4zi/c2emXCrn8wf9h97sJsfdU5UdTBJUdfHjHV1GVNVqKHR09fzFYlypdPH0oevyeq05\nhOYQDvkuUA5RvHNH/PJPqy//NIQQstnMmLHR+CS/mxSNGFHv6gAAYIAT2NH4ioW4UAjFYuho\njwuFUCyEYjFubw+FjlAsxsXC7vZCIRSLLTt3xHFcbNp95UdNTSGX6/RcUWht7fzcUT6/14zs\nTc17DTPJZKJ8y17FtLSEqNPxzc1RU6d3WSYb9o5potbWvW46y+VCttPx2WzUZXkDzYETsY4Q\nV0MIcaUSkhFVIYRCIVQrIYRQrca1xmIhVGqNeyKnYjFUyiGEEMdxx4Eaa+lSp5FfB2zsK8n/\n0S4SL+hjmUzIt0RRFFpaQghxS2u1oyPzxuZDuFG3Uqm+tja8trby7PdDCNERI6MJx2cmTMpM\nmBgdN9ayFQAA0OcEdqRDqRgXi6FQCO274mIxFAuhUIg72pOULS7uaS8UQqkY79oVisVQLMTF\nwqGO5Un+rKz9kZrWaaW6LZ8PmWztUdTUtE+eGPbOE6OW1pDplA8258LeeWKU75wPhtDatteP\n5/JRtZorFkNzc7myZ4RT+hIxaDytbSGEqKUlRFHIt4RMJsrlQlNT8iVBlG0KuebdiX/yPUEU\nQktbSEL/sOergnw+ymZ3v6+bmqLm5pDd5zssNWosAAAgAElEQVSJEEIoFos7t20bms3mNq6v\nrl0Tr11V/dXa36fh3RBvfSPe+kb1J8tCCCGXy4wdH02clBk/0bIVAADQVwR29J1yOS4WQkdH\nKHR0GvLWEYrFUCjEhY7Q0RGKhbhYDIWOuL09lJL2QqpnZE+5vf/GftOT2PuzHIWQDBE0QIzB\nJZ8PmWyUy4U9idju8blJiBZFUUtLbQxs1NoaQpSEaFE+FzLZ3YNnm5uj5uaQzYZckrvlQxSF\nlvoMm41bWjJT35aZ+rYQQqhW49+ur65dVV27Ol67Ot6y+RCeqFisrvpFWPWLSgghiqJRR2cm\nHB9NPD4z/vjo6GMsWwEAAD0jsGM/pVLcviuZBitubw/tu+Jdez3cvRJisitZD3HXrri9PZSN\nkwLqJxmMlowzbW4OTc3Rno1k5OnuXU2d9jY17U7fOh35+/YQdu9qaR3gwVMmEx03JnvcmOx7\n3hdCiLdvi9e9Vl33q3jtqurqVYfwuz2O49c3VF7fEF58PoQQ8vnM+InRhEmZseMyEycP8Dv6\nAQCgTwnsBqJqNRQ64o6O3bO5dXSEjva97jNN7idNhrYV9gx5S9q7nOoeODSdxk/tjoFCqFQq\nId+S7WLNzUwmamk56N6w373M+/+zXScjB7pNcq8fz7d0NSvZfrda7yvXHGW7/HDZ+1brfTU1\nRV2Wt6NULlUqI0aMyLS2RZko5PIhm+3ieA5VNGx4NO3kzLSTQwihXK6uey1+bU117ap47Zp4\n+7ZDeKJCofrzV8LPX6mEEDKZ6C1jMhOOz0yYGE2YFI08sn9qBwCAAUJg12Cyr2/M/GpNOa7u\nDt06OkKhY3fo1tEeCh1xsWhGsBBCaG2NcrmQy4dcPmpt3b2Rz3VEmTiOW2txxj7LcVaqcXHv\niZzad+31sFDYa33MSqeFQcPek7jtPr7L5TjpE3vSn72m8OvcWEt/auOkOq/mUQunstkot2dJ\nkNrkgMl9i/s31gK12johu2+KDCF0FajFcbxt8+ZcLtc6fHjPX/LgFm/bVi0WoyOPjKx1cBg0\nNWUmTgoTJ2XDfwshxJs3VV9bHa9ZXV27Ot6w/hB+v1Wr8a9/Vfn1ryo/+kEIIRo+IpqQrDl7\nfGbMOJErAADsQ2DXYDK/fi3z3f9vsEwfls9HuXzI5UNLS9TSEnL5kMtFLS0h3xLl8yGXD/mk\nPRfy+SjfElpaQi4f5fL7rMTaWemNN6rV6rCjjjqcr6PTP1/qfHNZXK3uO9H73vlgXCyEcud8\nsBL2zhPjfdbc2CcfLJfizulttRoKe+WJcUfHXrMH1laK2PPPxfuVF8dxtVrNZDK1qeV7nYhF\nv19ptzZUKhNFtYm9OoVfvx84lty9CBxe0VGjskeNCu84I4QQCoXqa6vjtWuqr62url0TOg5h\nCaB42+/in75U/elLIYTQ1JwZOy6aMCkz8fho/MRo6LD+qR0AABqJwK7BxLmDRlEplctFuXzI\n5UJrW5TLhfy+Q95CS1uU7zQULp8PzUn7QJztqLm58yquUQhhyNC9j9grSUzhpFnt7e07d+4c\nNmxY7uCpKDAo5POZt54Y3npiNoQQx/GG31bXro7XrqquXRNv2ngIz1MuVdesCmtWVZaEEEI0\nanRm/PHRxOMzE46PjnnLAJ89EIDBo1KJ23eFXbvi9l3xzh1NmzZlhgyJT5gSjTii3pUBKSWw\nazRdTu3UX5qbo1wu5FtCS+vu0C3fachbviW0tu4J5mphXC7K5wf+TO0AhBCiKDr2Ldlj3xLe\n9f+EEOKdO+K1q5M1Z6vrXjukiRriTa9XNr0elv04hBBaWjLjk2nvjs+Mmxi6ntsRBpW49wu/\nA32hUNgTw+1Mwriwa1e8a1do3xm3t4ddO3/fsveNMsnYhGIydeyYcdHYcZmx46Mx46LhI+ry\nOoAUEtg1mLg3gV1Tc9TaGtradi+P2NoWtbbuvrVw93YuNDVFbW2htW33BPmtbVHbkK6ntweA\nzqIhQ6O3nZJ52ykhhFCtxq9vqK5ZHa/5ZXXNqnjL5kN4oo6O6qsrqq+uCCGETCYafXRmzLho\n4uTMxOOjo4/1hRBpVyrtnpsimS23VAzlclwq7Z4fo7RnV6293GnX7h/pfGQplPbsKnQMq1ZD\nCIXWtmj48Ki1LbS2RcOHh2EjotbW0NoWtbVFw0eEYcOjocO6WkQIOJhSKW7fFdp3xe3toT0J\n4HbF27eFbb/b3bI7htsZKr2drCjevi1e+Z9h5X8mTxQNGx6NHR+NGZcZOy4aOz4aZtZjGLwE\nMY0m3xKOGBm1tOw15C2XD/lOQ9ty+dDatnuMW23Imym9ATj8MpnomLdkj9kz+G7rG/GaVdXX\nVlfXrI7X//rQlq3Y8NvKht+GZf8RQvj/27vzKKnqM+Hjz721d/XG3nTT3dBCEBREFDXxNTE5\nJGoUd3yDwxBzjhlGnCgG9MRAzsDIkHGcqAwhssRoUBOMYdEZZJyDikNQMy9iMETUQNNNb9As\nvVRXV9d2f+8ft7q6abSht7p1q7+fPzh1b12rnvt4q+r+nv4tWnZOx7IVY4qZ1BK9EWqV5HSu\n4TYxjMTUsWaNLB6TSFSMuITDYhjKnAT2rP9EIhEViyWqafGYikTPnnB2QE9BhVq762unaZo/\nW/x+Lcsv2Tlado74/VpWtub3S3ZO4il/NneJGBQiEdUalFDojK5wHf8GE1W5UKt0WUQutVSg\nWR08IAcPJOp3eXlaUYk+plgrKtHGFDPTKzCoULCzmfio0bEHHvH7/VYHAgBAj2n5Q7Rpl+nT\nLhMRiUSM6kpzzVnj6BFpbT3Xf91BtQTUXz4y/vKRiIjDoY8p0UrG6qXjtLFldEbIHOGwGHEV\niUg8nuiGFotJJJIooiVWZlcSCkliFSYlbW2iDBWOiBFPrKRkdk8zi2iGocJhUapHa6TYm1Kq\nJSAtgXMMoPX5NH+O5veLP1vzZ0tOjpZlPvZr2TmJnS7K4kg/SpkVt/ZOcO2jUDv2dCrJxWLn\nfsH0o5qaVNOfjY//bG5q+UO0ovbBs2NKNFqFQEajYAcAAKzgdutlE6RsQmLZihP17ctWHFEn\n6nswRVc8blQekcoj8d1vi4g2ZKg2tkw3+98VFDIe0EqRsGrt1HsllGhCO5qbvcEWQ9Oi8ZjE\nDRVuSxbREquft4WYoy2lQiEVCqmT3R7jdmv+bLNfXqK0l52dqOX5szV/tpadIyxIhX4RjbbX\n2j6vK5xZiUt8pQya4ns71digGhsSf68yf/I66nfFWhb1OyCjULADAABW0zRt5CjHyFEy4yoR\nkXDYOFphVJSrmiqj4nCPmmSq4bRqOG18uFdExO3WC8doY8v0sWVa6ThaMv3jc6d2CoUk0KSa\nm8+nP4smYnbWOu8R0UgDkYiKnJaG091VUp1OzZclWVmfM61ebp6Wmyu+LKbVG7y+6Kuj885Q\nq/k1YnWsfdA+aXjiU+DzSacHibnCfT7l9Z2ORN2RcHZzo1FdpWqq1NEKFWzp6bslfvIO7Dc3\nz5j/rmSs5s/u79MDkFIU7AAAQJrxePQJE/UJE0VEDEPV1RgVR4yjR1RFuWps6MHrRCJGRblU\nlMfFrAkW6KVjtdIyvXScNmLkwIRuT5HImX1YghIKqdbgWf1ZQoNoMOlAczjE7dF0XTwe0XRz\nEWQtK0tExOsTTdM8HtF1cxpizVwizOkUl1scunK6gsGgU8Qbj6mWgARbVDAowRYVbFEtAQmn\naga9s8ViKtAsgebuinq63j6tXrZkt3fQMx9kZ2tZ7dPqUdSzBfP/eGtyOdROi6J2+jdRx7dv\nt1ld76hEZ2VpPr9k+cTnT1TfOv/ryzrfGSGVklOnVHaOXjRGn3RxYt+pk6qmyqg+qqqrjNqq\nXvQf7Dr/3bDhycUr9MJi8fl6+oIArEXBDgAApDFd14qKHUXFjqu/KuZsPuaw2aNHjJrqHizP\np5Q6Xhc/Xif/+56IaH6/VjJOLx2njR2njykRVx8WYU9P5tROiXUMkxM5fUG72p5TOw0sTROv\nT0Q0s4mbKKJ5xaGLyy1Op+Z0icvZXkRzaG6P6Lp4vKKJ5vWJiPh8Iprm9SbrbuJyaU6nOF19\nnA8uHo9HGxocXq8j+/O6z8SiKhiUYFC1NCcLedLSooItHaW91mBfAugTwzh3UU8kOYleYuxt\ndudp9XITTzlpyJwpObQ8FpNoVETMWR3FMJS5ioK5Okpy4RRzOkgRFY0kvgTMuSDjhjIXTomE\nze9YZc4xmlxQJRKRWCw7FtNi0UjqT7O/uN1all98Ps3n7yjGJetuWf6Ox15vaiLShg3Xhg3X\np14qIqJU1/pdz5fCUKdOqlMnjY8+FBHRNG3ocG1MsT6mRBtTrBcWp+y8APQav3MAAMA2tLw8\nbeqlifZMPK6O1RpHDhuVR1T5IdUSOP/XUcGgOnjAOHhARETXtREj9bFlWmmZPqZYGzV6YGLv\nD7Fo53FkXzSmTFpbVbClB4vw2pfTlaiCuVziconTpbU/6Njv7PSUSKLE5nSecaTLdeZ+t42L\nQU6XlpcvefmaFHV3WKhVNTd1XEiBZtXcZF5FqrlJmptUa7AHBfH+plqD0hpUJ7o9KDn2MDdP\ny8lNDDxMjr1tH4qboojPFo1KLCoiKhqVWEzai2IqmqiaJdYjNp8VOeMAs7IWi5qvkyjAJTc7\n/eeJZ6WjuJYaWsreqae6H5GavDyy0r7gq2na8BHa8BH6JdPNHaq5SdVUmeNnjcryHq3UJGJW\nAE+oUyeM/fsS79Bp/KxeWiZmD18A6SS9v6cAAAC+iMOR6Hz3f64VEXWy3qisUJVHjMpydfxY\nD4ZfGYY6fix+/Jj88V0R0fLytbFleslYfWyZNrrofMc39UUolOj+1mVNw9ZW1RpM7DGrKmZD\n3abcHi0rS7KyDLcn5va4PB6H2T70ZYmI5vWJponHI7pD3G7N4ZD2caCa2y26Qzwe0TTN6xXR\nGNjVD3xZmi+r+7KLCgaltUUFg9LSooIBaWlRrcFET71AIPGUhd0zY1EViEqgWR0/9oXHuFzt\no27bl8HN8ktOjkM0pelGwylzujQVj0skIpIse6nE+idmoU1EhcNiGB1LDCerZuGwGPH2NYs7\nurChP7lcZ3R8O2N0avJfv+bLyuxvBi03T8vNS4yfVUqdrDc736maKqOmOtH5sSfOGD+radrw\nkYn+d0XFetEYcbOGDGA9CnYAACATaMNHOoaPlMuuEBGJhI3aGlVRblSU97QngmpqVPv3Jfog\nOBxaQaFuLltxwYSeTeBtzrAeaFbNTd11hbO0H1M/+KL+LF06OnXqzxIMBttCIU9enrNvI0Mx\n0DS/X/x+bUS3ByVXEmju6KPXdQWSQHOKIv7c8BobpLGhS/3eLeIWobRmpfNbnEHLzTNr+jiD\npmkjRjlGjJJLZ5g7VHOT+ZOnaqqM2upEAfr8KaVOHFcnjieWbGrvf6ePLdPGlumFY8SdcRNH\nAHZAwQ4AAGQct0cfWyZjyxyS6EBnVJaryiNG5RF16mQPXiceVzVV8Zqq+J53REQbMVIvHSex\nmBaLGh992HWhhtaQCrUv1NDTxlJacbu7zrDu82lZ/o6mdZbZn8VnzvKGQc3l0lx5kpvX3Vjy\naFQFW6QloDqtjyEtgfbHQdUSYD2TTJBYJtiv+Xyd/j27Q5xffD7R0ndYrR1puZ3mizAMVX/c\nqKlSNeb8dzXS88kGzf53HRNHjBylFxVrReb8d0UZOPErkJYo2AEAgIym69roQsfoQrnq/4iI\nagmoyiNGRbk6WmFUH+3RgD51oj5+ol6LRrVAc/Sl5wYs4gGgaWatreus6maLumNPlubLSvep\nnWA7LpeWP0Tyh3RXoYnHVbBFgsGupT1zGdzWoDkg18YrjaYVt1scTkmuqeJwmv2nNI9HHI7k\nqHPN4RS3S0TE4xVdF01LLKjidEZFC0ej3vwhrry8jmVSKeKkCV3XCkY7CkYnupybf7WqMcfP\nHjVqaxPzIZ4/w1DH6uLH6uSD/028/sgCc/EKrahELywUJ92lgQHBDRkAABhEtOwc7aKp+kVT\nRUQMQ9XVGEcOq5oq48hh1XDa6uh66PzGlIkvS8vOEV23OlzgizkcWm6e5Oado9tVNKqS62OY\nI80DzZJcPaO5STU12myMefuqwYk1UkTOWD7l7AOcHfs/Zx2V9v/cfNCxmopIxwH9McI02tYW\nbWnxZGfrrDSa/pJ/tbr8KhERw1AnjpuLV6iaKqOmqscTLxqGOlYbP1Yre99PvP6IkXpRsVZU\nrI0p0YuK+7gQNoAkCnYAAGCw0nVz2QpzS50+ZVQeSSxbcazOslVWzfGnvqyuHd+ysrQsv/h8\nmq99dCqNIgw2Lpc2dJg2dFh3x4RCKhhQLS1iLpERCKjWxDhc1dKSGJDbpUKhaeb47o6qmdcr\nmi66rpkFqWTVzOMVXRNNF69XRLRkdSx5vMcjcmYXNk1LrJoiklhQRfqnagb0hq5ro0Y7RrX3\nv4vH1fE6c/0Ko6ZK1dX0uOSdXLhp3/8TEXE4tFGj9TGJ4l2K1m4CMhQFOwAAABERbegwx9Bh\ncunlIiKRsHG0UlWWG5UVxtEjEurbBFuJqZ3OmgMusbJhojaXOICpnYC+8Pk0n08bPrKbQ5pO\nnIiF24YNG5YY7AkMWg6HVjjGUThGrhARkXhcHavtqN8dq+1x/S4eV7XV8dpq+d/3Eq9fUNhR\nvysopH4HnD8KdgAAAGdxe/TxX5LxXzIbFur0KePIYVVZblSUdxxz/iNSc3IpwwHpQ7lcStPo\n5gZ05XAkOp5fKSIi8bg6Wd8xfraHE78mXqGmKl5TJX98V+Ss8bNjSpg1FegGHw8AAIBzSHS+\nu+wKEVGPPWHkD/X89Gk65gAAMpnDccb42VjUqK1NLD5bc1QdP9bjuSO6jJ91uvTCQq2oRCsq\n1seUaKMK+GEFOqNgBwAA0BOaJppGowIAMLg4XXpJqZSUJja79L+rquzx+NlY1DhaKUcrE5sO\nhzZ8REf/u+JSxs9ikKNgBwAAAAAAeqJL/7tO9TujolzV1fS4/1083nX9Cup3GNwo2AEAAAAA\ngD7oUr+LRIzaalV9VNVUGTVVqv64KNWzF+xSv3O79cIxWlGxVlSsjykWn7//TwFIMxTsAAAA\nAABA/3G79bFlMrYssRkOG7VVqrrKqK5SNUfVyRM9rt9FIkZFubQv/eRyu2XqdLn9//Zr0EB6\noWAHAAAAAAAGjMejjxsv48YnBrWGw0ZdTV/632mRiGKFWWQ6LnEAAAAAAJAqHk/X/nc9r98Z\no0YPbJCA1SjYAQAAAAAAi3Sp37W1Gcdqz1m/ixcUpjRIIOUo2AEAAAAAgPTg9Z67fpeVpXLz\nLI0SGHAU7AAAAAAAQFo6s36ngkFVc7Tt9ClrgwJSgIIdAAAAAACwAc3v1740KR4ISDhsdSzA\nwNKtDgAAAAAAAABABwp2AAAAAAAAQBqhYAcAAAAAAACkEQp2AAAAAAAAQBqhYAcAAAAAAACk\nEQp2AAAAAAAAQBqhYAcAAAAAAACkEQp2AAAAAAAAQBqhYAcAAAAAAACkEQp2AAAAAAAAQBqh\nYAcAAAAAAACkEQp2AAAAAAAAQBqhYAcAAAAAAACkEQp2AAAAAAAAQBqhYAcAAAAAAACkEQp2\nAAAAAAAAQBqhYAcAAAAAAACkEQp2AAAAAAAAQBqhYAcAAAAAAACkEQp2AAAAAAAAQBqhYAcA\nAAAAAACkEafVAfSDvXv3vvDCC9XV1Xl5eTNnzpwzZ46maVYHBQAAAAAAAPSG7XvYffrppytW\nrJg8efKTTz45d+7cLVu2vPTSS1YHBQAAAAAAAPSS7XvYbdmypaioaP78+SJSWlpaV1f36quv\nzp492+PxWB0aAAAAAAAA0GO2L9gdPHjwa1/7WnJz+vTpL7/8cnl5+aRJk8w9p0+fPnToUPKA\naDQai8Wi0WiqA+0P8XhcRAzDsGn86UApJSIksNfMizAej5PD3jGvQKUUCew1wzBEJBqN6rrt\nO4lbgk9xfyGBvWZ+imOxmNWB2JWZQG4I+4Ibwj7ip6SPuCHsu+RPifnAdvgRxPmwd8FOKdXY\n2DhkyJDkHvPx6dOnk3v279//8MMPJzcvuOCCQCDQ1NSUyjj7VzgcDofDVkdhb7a+ANJBa2ur\n1SHYWzQa5SLso0AgYHUI9tbW1tbW1mZ1FPbGp7iPgsGg1SHYWyQSiUQiVkdhb3yK+ygUCoVC\nIaujsLFYLMZF2Ef2vSFsaWmxOgTYgL0LduejtLT0u9/9bnJz7969Xq/X5/NZGFKvGYYRDoed\nTqfL5bI6Frtqa2tTStn0AkgHZgdVt9vtcDisjsWuQqGQw+Fwu91WB2JXkUgkHo97vV7WF+qd\neDweiURcLpfTmfn3AAOKn5JeM4c7eDwe+sn2jlKqra2NG8K+CIfDhmHwKe4184aQn5JeMz/F\nuq4zj1OvmTeE9v0p4X89zoe9v2E1TcvPz29oaEjuMR8PHTo0uaesrOwHP/hBcnP+/Pk+n8/v\n96cyzv4Si8XC4bDL5bJp/OkgEokYhkECey0UCkWjUY/Hw29M7yilzIIdF2GvxePxeDyelZVl\n0/szy5m9ctxuNy3VPuJT3GvBYDAWi3m9XupNvROPx82CHRdhr0WjUW4I+6Ktrc28IfR6vVbH\nYktmwY4bwr4wDMO8IbRpNwJuw3A+bN/amTRp0r59+5Kb+/bt83q9ZWVlFoYEAAAAAAAA9Jrt\nC3a33357TU3NunXrKisr33777a1bt9588830/QEAAAAAAIBN2XtIrIhMnDhxyZIlL7744htv\nvJGXl3fbbbfdfffdVgcFAAAAAAAA9JLtC3YiMmPGjBkzZlgdBQAAAAAAANAPbD8kFgAAAAAA\nAMgkFOwAAAAAAACANJIJQ2J7auvWrXl5eVZH0RuGYYRCIZfL5Xa7rY7FrkKhkFIqKyvL6kDs\nKhqNRiIRj8fjdA7Gb4++U0q1trY6nU7Wxum1cDgci8WysrI0TbM6FluKx+NtbW1ut9vlclkd\ni13l5+d7vd5f//rXVgdiV5FIJBqNer1eh8NhdSy2xA1h34VCIcMw/H6/1YHYVSwWC4fD3BD2\nmnlD6HA4vF6v1bHYlXlD6PP5dN2WnZCOHTtmdQiwgcH4Dbtx40arQwAAAHY1dOhQEVm9erXV\ngQAAABujHwm6pymlrI4hpT744IOGhgaro+ilqqqqNWvWXH311bNmzbI6Frt66qmnGhsbly9f\nbnUgdrV79+7t27f/zd/8zZQpU6yOxZZCodDy5csnTpz4ve99z+pY7Grjxo0ff/zx0qVLs7Oz\nrY7Flj7++OONGzded911X//6162Oxa6WL1/u9/sXL15sdSB2tX379t27d993332lpaVWx2JL\nx48ff+qpp2bMmHHHHXdYHYtdrVmzprq6+qc//anVgdjVH//4x61bt86ePfuyyy6zOhZbisVi\nS5cuHTdu3Pz5862Oxa42bdr0pz/96ZFHHjH/imZHbrd7xowZPp/P6kCQvgZdDztb/6j85S9/\nWbNmTXFx8cyZM62Oxa7Wr18fCARIYK+ZnbenTJlCDnunublZRIYPH04Ce23Hjh0i8tWvftW+\n92fWMkfCjh8/nouw11auXJmVlUUCe+3AgQO7d+++/PLLL7nkEqtjsaXy8vKnnnqqsLCQi7DX\nXnjhBU3TSGCvNTU1icjkyZPJYe9EIhERGTJkCAnstV27donI1VdfXVRUZHUswECx5XhvAAAA\nAAAAIFNRsAMAAAAAAADSyKCbww4AAAAAAABIZ/SwAwAAAAAAANIIBTsAAAAAAAAgjVCwS2v/\n8i//8sQTT1gdhY2RwD4igX1HDvuIBPYdOewjEthHJLDvyGEfkcA+IoF9Rw77iARicHJaHcDg\nsmHDhv/4j//ovOf6669fsGBBv7z43r17X3jhherq6ry8vJkzZ86ZM0fTNPOp1tbWl1566b33\n3mtsbBw6dOi3vvWtu+66q1/eNMUsSeAPf/jDQ4cOdT5S07RNmzb5fL5+ed9UsiSBSqnf//73\nb7755smTJ/1+/9SpU+fNmzdixIh+edPUsySH0Wh08+bNu3btOnHixPDhw2+66aZZs2b1yzum\n3sAl8LPPPtu8efPhw4fr6+u/+c1v/uAHP+j8bDffkLZjSQ67T6+9WJLAnTt3vvPOOxUVFeFw\nuLCw8MYbb/zmN7/Z93e0hCUJ3L1792uvvVZTUxMOh4cNG3bNNdd85zvfcblcfX9TS1j1TWj6\n5JNPHn30UaXUtm3b+v6OlrAkgdu3b1+3bl3ngx977LFLLrmk72+aelZdgRnTJBGLckir5Hx0\nk8AMa5VgMKBgl2p5eXnLly9Pbubm5vbLy3766acrVqy44YYbfvjDHx4+fPgXv/iFYRhz584V\nkUgk8uMf/zgej8+bN6+wsDAQCIRCoX55U0ukPoGLFi0Kh8PJIx9//PGioiI7/i6aUp/ALVu2\n/Pa3v12wYMFFF1108uTJtWvX/vM///PTTz/dL+9ridTn8Je//OXu3bvvu+++Cy644K9//esz\nzzyjadpNN93UL++begOUwLa2ttGjR3/lK1/5zW9+0+WpbnJrU6nPYTdP2VHqE/jWW29ddNFF\nt9xyS1ZW1rvvvrt69epYLHbDDTf0y/umXuoT6HA4Zs6cWVhY6Ha7Dx069Otf/7q5ufn+++/v\nl/e1ROpzaGpubn7iiScuvfTSffv29cs7WsWSBObk5Dz22GPJzcLCwn55U0ukPoEZ1iQRK3JI\nq+R8dJPAzGuVIONRsEs1p9NZVlbWZedbb721devW2traIUOGXHnllXPnzu38zfvyyy+//vrr\nwWBw6tSpCxYsGD58+Nkvu2XLlqKiovnz54tIaWlpXV3dq6++Onv2bI/H89prr504cWLt2rU5\nOTkDemqpkfoEFhUVJQ87dOhQXV3d97///YE5uVRIfQI//vjjyZMnz5w5U0RGjx594403rl27\nNhqN2rdnRIpz6Ha733rrrTvvvPOaa+dGB1cAAA3/SURBVK4RkcLCwurq6t/97nff/va3dd2W\n0xoMUAKnTp06depUEdmyZUuXp7q5Pvv53FIl9Tns5ik7Sn0CV65cmXw8efLkI0eO7Nmzx74F\nu9Qn8Ctf+Ury8cSJEysrKz/66KN+Ox8rpD6HIqKU+tnPfjZz5kyv12v3gp0lCXQ4HGe/qU2l\nPoEZ1iQRK3JIq6SPCcy8Vgkyni0bexlm+/btv/rVr+644441a9YsWrTo4MGDq1atSj67d+/e\nysrKFStWrFy5srGxceXKlUqps1/k4MGD06dPT25Onz69ra2tvLxcRN59992pU6e++OKL3/3u\nd+fPn79mzZpAIJCC80qZgU5gZ6+//vqoUaMuu+yyAToXSwx0AqdMmXLo0KFPPvlERBoaGv7w\nhz9Mnz49w34XBzSHhmHEYrHOpSWv19vY2FhTUzOgJ5VK/ZLAbpznB9zWBjqHGS/FCYxEInl5\neX2OOo2kLIGGYZSXl//pT3+y6VDEbqQgh5s2bYrFYt/5znf6NfB0kYIEBgKBefPm3X333Y88\n8siePXv6NXzrDXQCM75JIqn9KaFV0osEDoZWCTIMPexS7dSpUzfffHNyc/369b/5zW/uueee\na6+9VkQKCgr+4R/+YeHChY2Njfn5+SLidrsXLlzodrtFZNGiRffdd9/+/funTZvW+TWVUo2N\njUOGDEnuMR+fPn1aROrq6ioqKr785S8vXbq0ubl5w4YNy5cvf+KJJ2w6f1PqE5jU0tLyP//z\nP7ae+kqsSOCtt94ai8UeffRREYnH49OnT//Rj36UgjMdOCnOocPhuPTSS7dv337ppZeWlJQc\nOXJk+/btZhjFxcWpOOH+NhAJ7MZ5fsDtJcU5zDzWJnDnzp2HDh36u7/7u344E4tYksBoNDp7\n9myllFLqW9/6lq0TKFbkcP/+/f/1X//19NNP2/o2Jin1CSwuLr7vvvtKS0sjkcg777zz+OOP\n33vvvZ1jsJfUJzDDmiRi6U8JrZLeJTDzWiXIeBTsUq3LWP1oNBoIBFavXr169erOh9XV1Zlf\nTBdccIH5rSQiRUVFOTk5lZWVSqnki9x444333ntvN+9oGIbf73/ooYecTqeIuN3uJUuWfPzx\nxxdddFH/nlpqpD6BSTt37lRKmZ2o7Sv1CdyzZ8+WLVvmz58/adKkkydPPv/88//6r//6k5/8\nxL53GKnP4QMPPPDMM8888MADmqbl5OR8/etf37Ztm03Hw8rAJNDWQ0J6gRz2kYUJ3L1799q1\nax966KEJEyb0z8lYwZIEOp3OVatWRaPRv/71ry+++GJubu68efP686xSK8U5bGho+NnPfrZw\n4cLOf72wtdRfhMlxdiIyZcqUYDC4efNm+xbsUp/ADGuSiKU/JbRKepfAzGuVIONRsEu1LmP1\nzUFty5Yt6zxc65wmTZr085//3HycnZ2taVp+fn5DQ0PyAPPx0KFDzX9zc3PNn0YRKSkpEZH6\n+nqb/jqmPoEmpdSOHTuuvvpquw9iSn0Cn3322W984xvXX3+9iJSWlmZnZz/88MOffvrphRde\n2B8nZIHU5zA/P//RRx+NxWLmqmpvvPGGiIwePbo/zsYCA5HAbo48nw+47aQ4h5nHqgTu2LHj\n2WefXbx48VVXXdWTeNOOJQnUNK20tFRExo8fr+v6L37xi9tvv92+l26Kc3jkyJHGxsZ/+qd/\nMjfNjoq33nrrXXfddffdd/c4+jRg+dfgpEmT9uzZE4vFkvfY9pL6BGZYk0SsuwhplXTWowRm\nXqsEGc+uHTQyRkFBQXZ29vvvv/9FBxw+fDgSiZiPa2pqAoFASUmJ1+sd0878g8OkSZM6Tx68\nb98+r9drfgNefPHFx44di8fj5lNVVVUiMmrUqIE7qVRKQQJNH374YV1dnX0nCP8iKUhgOBzu\n3BfM/BNW8oLMACm7CJ1Opzm37uuvvz5+/PiMWYS+vxLYjXPm1u5SkMPMlpoEbtq06bnnnvvJ\nT35i92rd2VJ/BcZiMaVULBbrU9zpZKBzOHny5NWrV69qd8stt+i6vmrVqhtvvLGfz8Qiqb8I\nDx48mJ+fb9Nq3dlSkMDMbpJICi9CWiXS2wRmfKsEmcexbNkyq2MYRPbt21dVVXXrrbcm9+i6\n7vF4fve738Xj8by8vGAwePDgwVdeeeXLX/6yiPzhD3+oqak5evRoSUlJfX39v//7v+fn599z\nzz1n99odOXLkli1bmpqaRowY8eGHH27cuPGWW24x/zpRVFT02muvHTt2bPTo0VVVVWvXri0o\nKLj77rvt2PXXkgSann32WZfLZevRN2JRAuvq6t58881hw4Z5PJ6KiooNGza43e65c+fa9B7X\nkhx+9NFHH3zwQSwWO3To0Lp16yorK3/0ox8NGzYslSfeXwYugZFIpLKysqGhYffu3T6fr6io\nKDl13Tk/4PZiSQ67ecp2LEnghg0btm3bdu+99xYWFjY0NDQ0NLS0tNi0c4QlCVy/fn0gEAiF\nQvX19Xv27HnppZemTZt23XXXpfLE+1Hqc+h0OvM7qaio2L9//9///d97vd6Unnk/seQiXLNm\nTUtLS1tbW21t7SuvvLJr1645c+ZMmjQplSfeXyxJYCY1ScSiHJpolfQ6gRnWKsFgwKVpvZtu\nuikvL2/btm3btm1zOBwFBQWd//Z++eWXjxkzZsmSJa2trVOmTFmwYMHn/qpNnDhxyZIlL774\n4htvvJGXl3fbbbclBzgUFRWtWLHiueeeW7RoUXZ29vTp0z/3q82+BjqBInLixIm9e/fOnz8/\nFeeTcgOdwO9///u5ubmbNm06ffq03++fPHnyvHnzOq95mgEGOoe6ru/YsaO2ttblck2ePPnx\nxx/PpN5h0k8JrK6uXrhwofm4pqbmvffe03V927Ztcq4PeGYY6Bx281RmGOgE7tq1Kx6PP/PM\nM8mDCwoK1q9fP8CnlToDnUCv1/vKK6/U19fruj5y5MjZs2fPmjUrNaeWMgOdw4w30Al0u90v\nv/zyqVOn3G53UVHRww8/fM0116Tm1FJjoBOY8U0SScmnmFZJXxI4GFolyDBaXxaTBgAAAAAA\nANC/mMMOAAAAAAAASCMU7AAAAAAAAIA0QsEOAAAAAAAASCMU7AAAAAAAAIA0QsEOAAAAAAAA\nSCMU7AAAAAAAAIA0QsEOAAAAAAAASCMU7AAAwKCzd+9erZ2u63l5eRMmTLjzzjtfeOGFtra2\nHr3UZ599tmzZso8++miAQgUAAMAg5LQ6AAAAAGtcccUVs2fPFpFgMHj06NGdO3du3rx5xYoV\nv//976dMmXKeL/LZZ58tX758/PjxU6dOHchgAQAAMIhQsAMAAIPUlClTFi9enNw0DOPnP//5\nwoULr7vuugMHDgwdOtTC2AAAADCYMSQWAABARETX9QceeGDhwoV1dXWrVq0ydzY1NS1duvTK\nK68cPny4x+MpKytbvHhxS0uL+eyyZctmzZolIn/7t39rDrC99tprzadisdiTTz45bdo0n8+X\nk5Nz7bXX/vd//7cVpwUAAAD7oWAHAADQ4f777xeR//zP/zQ3q6qq1q9ff9llly1duvSpp566\n4oornnzyyW9/+9tKKRG55557Vq5cKSI//vGP33777bfffvvpp58WkXg8fvPNNz/88MMXXnjh\nE0888Y//+I+NjY3XX3/9b3/7W+vODAAAALbBkFgAAIAOF1xwQU5OzqeffmpuTpgwoaamxuVy\nmZsLFiyYOnXqkiVL3nzzzZkzZ44dO9ac7W7SpEnJvnUism7duh07dvzqV7/63ve+Z+558MEH\nr7rqqoceemj27NlOJzdgAAAA6A497AAAAM6Qm5sbDAbj8biIeDyeZLUuGo22tbXddtttIvL+\n++938wobN24cOXLknDlz2trF4/E5c+YcP358//79KTgFAAAA2Bp/4AUAADhDc3Oz3+93OBzm\n5vPPP79+/fr9+/e3trYmjzl9+nQ3r3Dw4MHm5mafz3f2U/X19f0bLQAAADIPBTsAAIAOhw4d\nCgQC06dPNzeffPLJRYsWzZo165e//GVhYaHH4zl16tRNN91kGEY3L2IYxoQJEzZu3Hj2Uxde\neOGAxA0AAIAMQsEOAACgw5o1a0TEXPtVRJ599tlx48a9+uqrmqaZe3bv3t35+OT+zr70pS8d\nOHDg4osvzs7OHuB4AQAAkIGYww4AAEBExDCM1atXr1q1avTo0Q8++KC5U9d1pZQ5n52IxONx\nc1nYpJycHDlrhOy8efMikcjixYvNxWSTamtrB/AEAAAAkCnoYQcAAAapP//5z//2b/8mIqFQ\nqLKycufOnZWVlRMmTNi8efOQIUPMY+68885ly5bdcMMNd911VyAQ2LRpU5ca3CWXXOL1elev\nXu12u/Pz80eOHPmNb3zj/vvv37lz57p16z788MNbbrllxIgRVVVV77333v79+5nDDgAAAOek\ndbnpBAAAyHh79+6dMWOG+VjTNL/fP2rUqGnTpt1888133XWX1+tNHhmLxR5//PHnnnuuqqpq\n1KhRd9555wMPPDBu3LgHH3zw6aefNo/ZunXr8uXLP/nkk3A4/LWvfW3Xrl0iYhjGhg0bnn/+\n+QMHDsRisYKCgmnTpt1xxx1z585N+ekCAADAZijYAQAAAAAAAGmEOewAAAAAAACANELBDgAA\nAAAAAEgjFOwAAAAAAACANELBDgAAAAAAAEgjFOwAAAAAAACANELBDgAAAAAAAEgjFOwAAAAA\nAACANELBDgAAAAAAAEgjFOwAAAAAAACANELBDgAAAAAAAEgjFOwAAAAAAACANPL/AVrapt6k\nBh9ZAAAAAElFTkSuQmCC", "text/plain": [ "plot without title" ] }, "metadata": { "image/png": { "height": 480, "width": 840 } }, "output_type": "display_data" } ], "source": [ "# plot daily dt events\n", "options(repr.plot.width = 14, repr.plot.height = 8)\n", "\n", "p <- dt_events_daily %>%\n", " ggplot(aes(x= attempt_dt, y= n_attempts, color = is_oversample)) +\n", " geom_line(size = 1.5) +\n", " geom_vline(xintercept = as.numeric(as.Date(c('2021-02-12', linetype = \"dashed\", color = \"black\")))) +\n", " geom_text(aes(x=as.Date('2021-02-12'), y=600, label=\"Discussion Tool Sampling Rate Change\"), size=3.7, vjust = -1.2, angle = 90, color = \"black\") +\n", " scale_x_date(date_labels = \"%b-%d\", date_breaks = \"1 day\", minor_breaks = NULL) +\n", " scale_y_continuous(labels = polloi::compress) +\n", " labs(\n", " x = 'Date', y = \"edit attempts per day\",\n", " title = \"Daily Discussion Tool Edit Attempt By Oversample\"\n", " ) +\n", " theme(legend.position = \"bottom\",\n", " text = element_text(size=20)) + \n", " theme_bw() \n", " \n", "\n", "p" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The plot above show that discussion tool events are oversampled starting on 12 Feb 2021 following the deployment of the config change. The increase in dt events fits with a sampling rate change of 100%." ] } ], "metadata": { "kernelspec": { "display_name": "R", "language": "R", "name": "ir" }, "language_info": { "codemirror_mode": "r", "file_extension": ".r", "mimetype": "text/x-r-source", "name": "R", "pygments_lexer": "r", "version": "3.5.2" } }, "nbformat": 4, "nbformat_minor": 4 }