Political Donations Lifetime Value Analysis using Markovian States of Engagement

Optimizing efficiency of data transformations with data.table

Setup

First, let’s install if needed and load the required libraries. I’ll be working mainly with “data.table” library, since it is both more computationally efficient, and very convenient to work with. I highly recommend learning that library and speeding up your future R work.

## Loading required package: data.table
## Loading required package: tidyr
## Loading required package: plyr
## Loading required package: dplyr
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:plyr':
## 
##     arrange, count, desc, failwith, id, mutate, rename, summarise,
##     summarize
## The following objects are masked from 'package:data.table':
## 
##     between, first, last
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
## Loading required package: ggplot2
## Loading required package: ggthemes
## Loading required package: directlabels
## Loading required package: lubridate
## 
## Attaching package: 'lubridate'
## The following object is masked from 'package:plyr':
## 
##     here
## The following objects are masked from 'package:data.table':
## 
##     hour, isoweek, mday, minute, month, quarter, second, wday,
##     week, yday, year
## The following object is masked from 'package:base':
## 
##     date
## Loading required package: markovchain
## Package:  markovchain
## Version:  0.6.9.14
## Date:     2019-01-20
## BugReport: http://github.com/spedygiorgio/markovchain/issues
## 
## Attaching package: 'markovchain'
## The following object is masked from 'package:lubridate':
## 
##     period
## [[1]]
## [1] TRUE
## 
## [[2]]
## [1] TRUE
## 
## [[3]]
## [1] TRUE
## 
## [[4]]
## [1] TRUE
## 
## [[5]]
## [1] TRUE
## 
## [[6]]
## [1] TRUE
## 
## [[7]]
## [1] TRUE
## 
## [[8]]
## [1] TRUE
## 
## [[9]]
## [1] TRUE
### remove old objects from memory if needed:
# rm(ci, conf.intervals, dfs, dt.tenth, dt_tenth, lm_lin, lm1, lm2, new.dat) # remove by name
# rm(list=setdiff(ls(), "object_to_keep")) # remove all objects except these objects to keep
# load initial dataset
df_original <- fread("./data/dt_bernie_repeaters.csv") # (complete or relative) path of dataset
setDT(df_original) #set as data.table object
summary(df_original)
##        V1           donor_uid             date               amount       
##  Min.   :      1   Length:3332208     Length:3332208     Min.   :   1.00  
##  1st Qu.: 833053   Class :character   Class :character   1st Qu.:  10.00  
##  Median :1666104   Mode  :character   Mode  :character   Median :  10.00  
##  Mean   :1666104                                         Mean   :  25.22  
##  3rd Qu.:2499156                                         3rd Qu.:  27.00  
##  Max.   :3332208                                         Max.   :5400.00  
##                                                                           
##  aggregate_amount   n_donations       prev_date         days_since_last 
##  Min.   :    1.0   Min.   :  2.000   Length:3332208     Min.   :  0.0   
##  1st Qu.:   15.0   1st Qu.:  3.000   Class :character   1st Qu.:  7.0   
##  Median :   40.0   Median :  6.000   Mode  :character   Median : 20.0   
##  Mean   :  102.6   Mean   :  8.808                      Mean   : 30.5   
##  3rd Qu.:  100.0   3rd Qu.: 11.000                      3rd Qu.: 31.0   
##  Max.   :26500.0   Max.   :171.000                      Max.   :305.0   
##                                                         NA's   :674884

State Time Period Definition

Let’s assume we are working with a dataset of actions: such as purchases, requests, donations, visits, clicks etc. We’d want to decide on a time-period to model as one time-step that contains all the most important patterns and cycles of the data, and transform the data into a dataset where each row is that time-period and each column (i.e., amount) summarizes the total values of that variable during that time (i.e., sum of dollars spent that week, or minutes spent on the website per day).

First, we need to think and define the time-period that we’ll call a “state”, so that we can later chunk the data into rows that summarize these time-periods and call them steps. For this, we’ll need to use our on reasoning about the nature of the area and problem. On one hand, we don’t want too wide timeframes, since then we would lose valuable information hidden inside by summarizing it with just a few metrics. On the other hand, we don’t want too small time-frames, since they don’t reflect true cycles, lack sufficient information, and we usually won’t have enough data to justify those. We want to charachterize what are the natrual “cycle” period of the space. For example, let’s consider modeling the requests of a user of a ride-hailing platform such as Uber/Lyft/Via. Starting from smaller timeframes - naturally, hours would not be enough to capture ride-hailing patterns; a day might catch some (i.e., commute patterns or evening outings), but each day would have too much random variability such that it’s not good for inference. On the other hand, we would also miss grander scheme information from skipping over the next time-frame scale: weekly patterns. We might model each week as a step, since people have their weekly routines and have different likelihoods of wanting to take Ubers both at different times of day but also at different times of the week (i.e., peaking at Friday and Saturday nights). This is probably where we should stop, since we don’t have as strong monthly patterns; and while we might have yearly seasonal effects, it is too broad for us to make inference upon. If we have that data, we should verify all those assumptions in the data first. Once we decided on a data time-step, we will later reshape the data to a “wide” dataset where each row contains summary statistic (such as sum or average amount of each column in the original dataset)

Actblue: Monthly States (time-periods)

In this case, we are investigating patterns of donations to election campaigns through the donation platform “actblue”. Through analyzing the data (that I’ve done previously in python here: https://github.com/tomereldor/actblue-donors/blob/master/notebooks/Tomers-actblue-preprocessing.ipynb.), I observed that the majority of repeating donations are done every month; with a few different tiers like weekly and daily donations, as well as lower frequencies or just occasional donations without a reoccuring automatic cycle. For that reason, it seems that we should model donations per month, since if it would be shorter, we’d miss the common monthly cycles; but any longer would be too few “steps” in our data that spans for about a year (between 2015-2016).

Data Preprocessing

I did much of the data preprocessing already in python. You can find it here: https://github.com/tomereldor/actblue-donors/blob/master/notebooks/Tomers-actblue-preprocessing.ipynb. You will need to inspect and clean the data, remove the irrelevant or messy variables, limit the time scope of the data if it is too long, maybe the geographical and other scopes, and make sure you are left with only the population you really want to study. For example, I for now only care about “repeating” donors - donors who have donated more than once. For that, As you could see in the python notebook, I integrated many datasets of different time periods, and extracted only the relevent repeating donors.

Now I’ll start cleaning and transforming the dataset to the desired format.

Dataset Formatting

First, let’s make sure each column has the right format

summary(df_original)
##        V1           donor_uid             date               amount       
##  Min.   :      1   Length:3332208     Length:3332208     Min.   :   1.00  
##  1st Qu.: 833053   Class :character   Class :character   1st Qu.:  10.00  
##  Median :1666104   Mode  :character   Mode  :character   Median :  10.00  
##  Mean   :1666104                                         Mean   :  25.22  
##  3rd Qu.:2499156                                         3rd Qu.:  27.00  
##  Max.   :3332208                                         Max.   :5400.00  
##                                                                           
##  aggregate_amount   n_donations       prev_date         days_since_last 
##  Min.   :    1.0   Min.   :  2.000   Length:3332208     Min.   :  0.0   
##  1st Qu.:   15.0   1st Qu.:  3.000   Class :character   1st Qu.:  7.0   
##  Median :   40.0   Median :  6.000   Mode  :character   Median : 20.0   
##  Mean   :  102.6   Mean   :  8.808                      Mean   : 30.5   
##  3rd Qu.:  100.0   3rd Qu.: 11.000                      3rd Qu.: 31.0   
##  Max.   :26500.0   Max.   :171.000                      Max.   :305.0   
##                                                         NA's   :674884

There are three main types of variable formats that we care about for this case: 1. Numeric - any numeric value (either int or float) that we will make numeric calculations with or should treat as a scale. 2. Date - date information has its own format, which we should use to do calculations with and extract elements from. 3. Factor - means categorical variable. A related format can be “character”. That would be good to capture a column of unique strings of text, such as comments or notes. However, if we want to use those for grouping or subsetting (like username), we should convert those to factors since it is really a category. We see that V1, that should be just a numeric index, is just “V1”, but it’s ignorable. Donor_uid is of class charachter while it should be either numeric or a factor - in our case, it’s a text-base ID and thus can’t be numeric and must be a factor. An alternative would be to convert this ID to a numerical id and do operations on it; but in our case, it holds information (name and zip code) which is nicer to observe. Date should be converted into a date format, as well as previous date. Amount, aggregate amount, number of donations, and days_since last are already in numerical format.

# convert donor ID to a factor (categorical) rather than character:
df_original$donor_uid <- factor(df_original$donor_uid) 
# convert date columns to dates rather than text
df_original$date <- as.POSIXct(df_original$date)
df_original$prev_date <- as.POSIXct(df_original$prev_date)
# view df
head(df_original)
##    V1            donor_uid       date amount aggregate_amount n_donations
## 1:  1 ;RICHARD|FAHEY|38548 2015-05-06     10               20          10
## 2:  2 ;RICHARD|FAHEY|38548 2015-06-06     10               20          10
## 3:  3 ;RICHARD|FAHEY|38548 2015-07-06     10               80          10
## 4:  4 ;RICHARD|FAHEY|38548 2015-08-06     10               80          10
## 5:  5 ;RICHARD|FAHEY|38548 2015-09-06     10               80          10
## 6:  6 ;RICHARD|FAHEY|38548 2015-10-06     10               80          10
##     prev_date days_since_last
## 1:       <NA>              NA
## 2: 2015-05-06              31
## 3: 2015-06-06              30
## 4: 2015-07-06              31
## 5: 2015-08-06              31
## 6: 2015-09-06              30
summary(df_original)
##        V1                              donor_uid      
##  Min.   :      1   CHRISTOPHER|FLESNER|72120:    217  
##  1st Qu.: 833053   XITIJ|SHAH|75204         :    201  
##  Median :1666104   NICKOLAS|ZACHARIAS|66046 :    182  
##  Mean   :1666104   ANGELA|BAILEY|32771      :    174  
##  3rd Qu.:2499156   CHI|SEXTON|77450         :    150  
##  Max.   :3332208   MUSTAFA|FARIS|78752      :    149  
##                    (Other)                  :3331135  
##       date                         amount        aggregate_amount 
##  Min.   :2015-04-30 00:00:00   Min.   :   1.00   Min.   :    1.0  
##  1st Qu.:2015-09-30 00:00:00   1st Qu.:  10.00   1st Qu.:   15.0  
##  Median :2015-12-30 00:00:00   Median :  10.00   Median :   40.0  
##  Mean   :2015-12-01 01:54:39   Mean   :  25.22   Mean   :  102.6  
##  3rd Qu.:2016-02-08 00:00:00   3rd Qu.:  27.00   3rd Qu.:  100.0  
##  Max.   :2016-02-29 00:00:00   Max.   :5400.00   Max.   :26500.0  
##                                                                   
##   n_donations        prev_date                   days_since_last 
##  Min.   :  2.000   Min.   :2015-04-30 00:00:00   Min.   :  0.0   
##  1st Qu.:  3.000   1st Qu.:2015-09-21 00:00:00   1st Qu.:  7.0   
##  Median :  6.000   Median :2015-12-16 00:00:00   Median : 20.0   
##  Mean   :  8.808   Mean   :2015-11-16 08:24:24   Mean   : 30.5   
##  3rd Qu.: 11.000   3rd Qu.:2016-01-28 00:00:00   3rd Qu.: 31.0   
##  Max.   :171.000   Max.   :2016-02-29 00:00:00   Max.   :305.0   
##                    NA's   :674884                NA's   :674884

Trasnforming to timeframe summaries

Now we will need to start summarizing the DF per user per state. I’ll use data.table from now on for most such purposes. Our State timeframe is a MONTH. Thus, first step is to add a MONTH column, so that we can group by it. We could either choose to do monthly on a variable start day per user according to their first donation, but since we are summarizing all the month’s information into one row, it doesn’t really matter and we can also do the simpler way of grouping per calendar month. If someone makes a donation every 15 of the month, it will still be summarized to the same aggregate amount a month as it would if she would donate every 1st of the month.

I’m using the “data.table” package to serve as my data structure and main data manipulation package, since it is highly more efficient and convenient than base R. I highly recommend working with it! It is actually easy to learn and will make your R coding more efficient. Check it out here: https://cran.r-project.org/web/packages/data.table/vignettes/datatable-intro.html

The basic concept to understand is that data.table queries and performs operations by this syntax: DT[i, j, by]

R: i (rows) , j (columns) , by SQL: where | order by , select | update , group by

  • However, if you are about to make dummy / categorical variable operations (like regression) with data.table, be careful with the size of the dataset, vector and memory of your machine, since such operations effectively add another column per category in the background (one-hot encoding).

Below, I’ll take a sample of data and do the same transformation to it using data.table and using ddply, the common alternative, and show the efficiency of each.

# let's take just the year + month. Since the data all lists in the same format YYYY-MM-DD, it's easiest just to take the first 6 charachters.
df_original$monthyear <- substr(df_original$date, start = 1, stop = 7)


# I always prefer to experiment first with a smaller sample of the data before doing a heavy or risky operation on the whole dataset. Let's make that sample:
dt_sample <- sample_n(df_original, 100000)
dt_sample <- setDT(dt_sample) # ensure it's a data.table
nrow(dt_sample) # checking: it does have 100000 rows. 
## [1] 100000
setkey(dt_sample, donor_uid, monthyear)


## Let's show that data.table is more efficient than the common alternative, ddply:
system.time( 
  dt <- dt_sample[ , list(total_amount = sum(amount), 
                               avg_amount = mean(amount), 
                               n_donations_month = .N,
                               n_donations_life = mean(n_donations)
                                ), 
                        by=list(donor_uid, monthyear)]
)
##    user  system elapsed 
##   0.024   0.004   0.016
# first position: empty, meaning selecting all rows
# third position: by=list(donor_uid, monthyear) : here we group by donor ID and MONTH
# second position: here we specify what happens to each column 

#  user  system elapsed 
#  0.052   0.008   0.014 

This took 0.014 seconds using data.table

# using ddply
system.time( 
  dt_sum_ddply <- ddply(dt_sample, 
                        ~ donor_uid + monthyear,
                        summarize, 
                         total_amount = sum(amount), 
                         avg_amount = mean(amount), 
                         n_donations_life = mean(n_donations)
                        )
  )   
##    user  system elapsed 
##  69.574   0.964  71.830
#    user  system elapsed 
# 171.593   0.644 173.036 

Using ddply it took 3+ minutes (173 seconds) versus 0.014 seconds in data.table, meaning data.table was 12,000 times more efficient! Let’s do this using data.table on the entire dataset

setDT(df_original)
dt <- df_original[ , list(total_amount = sum(amount), 
                               avg_amount = mean(amount), 
                               n_donations_month = .N,
                               n_donations_life = mean(n_donations)
                                ), 
                        by=list(donor_uid, monthyear)]
head(dt,30)
##                        donor_uid monthyear total_amount avg_amount
##  1:         ;RICHARD|FAHEY|38548   2015-05        10.00   10.00000
##  2:         ;RICHARD|FAHEY|38548   2015-06        10.00   10.00000
##  3:         ;RICHARD|FAHEY|38548   2015-07        10.00   10.00000
##  4:         ;RICHARD|FAHEY|38548   2015-08        10.00   10.00000
##  5:         ;RICHARD|FAHEY|38548   2015-09        10.00   10.00000
##  6:         ;RICHARD|FAHEY|38548   2015-10        10.00   10.00000
##  7:         ;RICHARD|FAHEY|38548   2015-11        10.00   10.00000
##  8:         ;RICHARD|FAHEY|38548   2015-12        10.00   10.00000
##  9:         ;RICHARD|FAHEY|38548   2016-01        10.00   10.00000
## 10:         ;RICHARD|FAHEY|38548   2016-02        10.00   10.00000
## 11:        :LAURA|GARRISON|30601   2016-02        10.00    5.00000
## 12:         .SUSAN|HAJIANI|90025   2015-11       100.00  100.00000
## 13:         .SUSAN|HAJIANI|90025   2016-01        50.00   50.00000
## 14:      'RONY' KHAN|ZAHID|14450   2016-01        23.00   11.50000
## 15:         'STANLEY|LEHTO|98597   2015-09       100.00  100.00000
## 16:         'STANLEY|LEHTO|98597   2016-01        50.00   50.00000
## 17:         'STANLEY|LEHTO|98597   2016-02       100.00  100.00000
## 18: (ANJANEYA)MURTY|KANURY|97330   2015-05        35.00   35.00000
## 19: (ANJANEYA)MURTY|KANURY|97330   2015-10        35.00   35.00000
## 20: (ANJANEYA)MURTY|KANURY|97330   2015-11        68.54   22.84667
## 21: (ANJANEYA)MURTY|KANURY|97330   2015-12       105.00   21.00000
## 22: (ANJANEYA)MURTY|KANURY|97330   2016-01        60.00   20.00000
## 23: (ANJANEYA)MURTY|KANURY|97330   2016-02       120.00   24.00000
## 24:        (DR.) MARY|LUTZ|11226   2016-02        15.00    5.00000
## 25:     (JAMES) DAVID|RICH|85308   2015-12        10.00   10.00000
## 26:     (JAMES) DAVID|RICH|85308   2016-02       200.00   50.00000
## 27: (LETITIA) DIANE|TAYEBY|05301   2015-08        35.00   35.00000
## 28: (LETITIA) DIANE|TAYEBY|05301   2015-09        35.00   35.00000
## 29: (LETITIA) DIANE|TAYEBY|05301   2015-10        35.00   35.00000
## 30: (LETITIA) DIANE|TAYEBY|05301   2015-11        35.00   35.00000
##                        donor_uid monthyear total_amount avg_amount
##     n_donations_month n_donations_life
##  1:                 1               10
##  2:                 1               10
##  3:                 1               10
##  4:                 1               10
##  5:                 1               10
##  6:                 1               10
##  7:                 1               10
##  8:                 1               10
##  9:                 1               10
## 10:                 1               10
## 11:                 2                2
## 12:                 1                2
## 13:                 1                2
## 14:                 2                2
## 15:                 1                3
## 16:                 1                3
## 17:                 1                3
## 18:                 1               15
## 19:                 1               15
## 20:                 3               15
## 21:                 5               15
## 22:                 3               15
## 23:                 5               15
## 24:                 3                3
## 25:                 1                5
## 26:                 4                5
## 27:                 1                7
## 28:                 1                7
## 29:                 1                7
## 30:                 1                7
##     n_donations_month n_donations_life

We will continute to use data.table whenever possible and I advise you to utilize it yourselves.

Time-Series States Dataset

Now that we summarized the dataset to a month-level, we will use it to create month long states. We want to create a continuum of states per each donor. Meaning, we want for each donor to have a list of what happened during EACH month of the 10 months; and if they didn’t make any contribution during that month, we want that row saying that they had 0 donations! This is in order to create a continuous representation of states per donor/user.

Let’s go and fill the data for missing lines:

setkey(dt, donor_uid, monthyear)
dt <- dt[order(donor_uid,monthyear)]

Now, we have many people who only donated one month. That will not add much valuable inforamtion. How many people donated for more than one month?

# let's add a column: "month_donated" - in how many different months this donor donated?
# meaning, how many listings does this dataset hold of the same donor?
dt[, months_donated := .N, by=donor_uid]

# let's plot this as a histogram
qplot(data = dt, x=months_donated, main = "How many months did people donate in?", xlab = "Number of Months Users Donated In")
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.

For now, for the sake of this exercise of analysis, let’s work just with donors who donated in more than one month. This will mean that we’ll not have a good overall picture of the probabilities of donating more than one month, but we will limit our analysis FOR THOSE WHO DONATED IN MORE THAN ONE MONTH, to really inspect the hypothesis of continuous / repeated donations versus one-time donations.

# SUBSET THE DATA TO DONORS WHO DONATED MORE THAN ONCE
dt_repeaters <- dt[months_donated>1, ,]
# let's work with the data subset of repeating donors:
# get a unique list of all IDs and unique list of all possible monthyears
# unique_ids <- levels(dt_repeaters$donor_uid) # the levels are based on the original full dataset. Let's do just for this one:
print(paste("Number of repeated donations:", nrow(dt_repeaters)))
## [1] "Number of repeated donations: 2097445"
unique_ids <- unique(dt_repeaters$donor_uid)
print(paste("Unique repeated donors:", length(unique_ids)))
## [1] "Unique repeated donors: 579825"
unique_monthyears <-  sort(unique(dt_repeaters$monthyear))
print(paste("Months:", length(unique_monthyears)))
## [1] "Months: 11"
print(sort(unique_monthyears))
##  [1] "2015-04" "2015-05" "2015-06" "2015-07" "2015-08" "2015-09" "2015-10"
##  [8] "2015-11" "2015-12" "2016-01" "2016-02"
# Now we need to make a new dataset of all permutations
# there are a number of ways to do this.
# 1) from base R, you can use expand.grid(column_1, column_2).
# 2) from tidyR package, you can use the slighlty improved "crossing": crossing(column_1, column_2) and get a tibble.
# 3) in data.table, you can use "CJ" function, which creates a join data.table, with the "UNIQUE" option on.

# Now, let's use data.table join data table to get a data table with all permutations. 
library(data.table)
dt_combos <-  CJ(donor_uid = unique_ids, monthyear = unique_monthyears, unique = TRUE)
head(dt_combos)
##               donor_uid monthyear
## 1: ;RICHARD|FAHEY|38548   2015-04
## 2: ;RICHARD|FAHEY|38548   2015-05
## 3: ;RICHARD|FAHEY|38548   2015-06
## 4: ;RICHARD|FAHEY|38548   2015-07
## 5: ;RICHARD|FAHEY|38548   2015-08
## 6: ;RICHARD|FAHEY|38548   2015-09

Now that we have our base table with all required IDs and timesteps, we can fill in data where we have recorded values. The rest will be donations of 0 since they didn’t donate. Since we need ALL rows from the first (LEFT) table of permutations and keeping even the ones without matches from the RIGHT table, while inserting only the matched rows from the second (RIGHT) table, this is called a LEFT-OUTER JOIN - a concept taken mainly from SQL language. It is implemented in multiple ways in R: as merge functions in base, in dplyr, and in our case in data.table. For a more complete guide on joins in data.table, see this tutorial: https://rstudio-pubs-static.s3.amazonaws.com/52230_5ae0d25125b544caab32f75f0360e775.html

# now, combine this permutations dataset with the actual info from our dt_repeaters dataset.
# first, we need to set the columns we want to match on as keys:
setkey(dt_combos, donor_uid, monthyear)
setkey(dt_repeaters, donor_uid, monthyear)

# Now, we perform the match!
# The "all.x" part is the "Left Join", meaning: 
# take everything from the LEFT table and match what you can from the RIGHT (X=LEFT, versus RIGHT=Y)
dt.all <- merge(dt_combos, dt_repeaters,  all.x=TRUE)
dt.all
##                     donor_uid monthyear total_amount avg_amount
##       1: ;RICHARD|FAHEY|38548   2015-04           NA         NA
##       2: ;RICHARD|FAHEY|38548   2015-05           10         10
##       3: ;RICHARD|FAHEY|38548   2015-06           10         10
##       4: ;RICHARD|FAHEY|38548   2015-07           10         10
##       5: ;RICHARD|FAHEY|38548   2015-08           10         10
##      ---                                                       
## 6378071:   ZZYZX|CURTIS|47408   2015-10           NA         NA
## 6378072:   ZZYZX|CURTIS|47408   2015-11           NA         NA
## 6378073:   ZZYZX|CURTIS|47408   2015-12           10         10
## 6378074:   ZZYZX|CURTIS|47408   2016-01           10         10
## 6378075:   ZZYZX|CURTIS|47408   2016-02           NA         NA
##          n_donations_month n_donations_life months_donated
##       1:                NA               NA             NA
##       2:                 1               10             10
##       3:                 1               10             10
##       4:                 1               10             10
##       5:                 1               10             10
##      ---                                                  
## 6378071:                NA               NA             NA
## 6378072:                NA               NA             NA
## 6378073:                 1                2              2
## 6378074:                 1                2              2
## 6378075:                NA               NA             NA

GREAT! Now we have the merged data.table. BUT WAIT - there’s NAs! Why is that? of course, we just matched the rows with donations, while leaving the rows without donations as NA’s. Now all we need to complete this stage is to fill out the dataset NAs with the relevant values: 0’s for the amounts and n_donations, and the unique user value for n_donations_life and months_donated.

# let's fill out the NA lines with relevant values:
dt.all[is.na(total_amount)]$total_amount <- 0
dt.all[is.na(avg_amount)]$avg_amount <- 0
dt.all[is.na(n_donations_month)]$n_donations_month <- 0
dt.all$monthyear <- factor(dt.all$monthyear)
# now fill n_donations_life and months_donated with the constant corresponding statistic per user
# first, get a condensed table of unique matches: total n_donations_life and months_donated of each user (regardless of month). This is like a dictionary we'll later multiply
dt.totalstats = unique(dt.all[!is.na(n_donations_life), .(donor_uid, n_donations_life, months_donated)])
setkey(dt.totalstats, donor_uid)
setkey(dt.all, donor_uid)
dt.all <- merge(dt.all[,.(donor_uid, monthyear, total_amount, avg_amount, n_donations_month)], dt.totalstats, all.x = TRUE)

#save file "fwrite" is a quicker and efficient writer of data.tables
fwrite(dt.all, "./data/dt_all.csv")

print(summary(dt.all))
##                         donor_uid         monthyear      
##  ;RICHARD|FAHEY|38548        :     11   2015-04: 579825  
##  .SUSAN|HAJIANI|90025        :     11   2015-05: 579825  
##  'STANLEY|LEHTO|98597        :     11   2015-06: 579825  
##  (ANJANEYA)MURTY|KANURY|97330:     11   2015-07: 579825  
##  (JAMES) DAVID|RICH|85308    :     11   2015-08: 579825  
##  (LETITIA) DIANE|TAYEBY|05301:     11   2015-09: 579825  
##  (Other)                     :6378009   (Other):2899125  
##   total_amount        avg_amount       n_donations_month 
##  Min.   :    0.00   Min.   :   0.000   Min.   :  0.0000  
##  1st Qu.:    0.00   1st Qu.:   0.000   1st Qu.:  0.0000  
##  Median :    0.00   Median :   0.000   Median :  0.0000  
##  Mean   :   12.06   Mean   :   8.422   Mean   :  0.4833  
##  3rd Qu.:   10.00   3rd Qu.:  10.000   3rd Qu.:  1.0000  
##  Max.   :12000.00   Max.   :5400.000   Max.   :113.0000  
##                                                          
##  n_donations_life  months_donated  
##  Min.   :  2.000   Min.   : 2.000  
##  1st Qu.:  2.000   1st Qu.: 2.000  
##  Median :  3.000   Median : 3.000  
##  Mean   :  5.083   Mean   : 3.617  
##  3rd Qu.:  6.000   3rd Qu.: 5.000  
##  Max.   :171.000   Max.   :11.000  
## 
head(dt.all)
##               donor_uid monthyear total_amount avg_amount
## 1: ;RICHARD|FAHEY|38548   2015-04            0          0
## 2: ;RICHARD|FAHEY|38548   2015-05           10         10
## 3: ;RICHARD|FAHEY|38548   2015-06           10         10
## 4: ;RICHARD|FAHEY|38548   2015-07           10         10
## 5: ;RICHARD|FAHEY|38548   2015-08           10         10
## 6: ;RICHARD|FAHEY|38548   2015-09           10         10
##    n_donations_month n_donations_life months_donated
## 1:                 0               10             10
## 2:                 1               10             10
## 3:                 1               10             10
## 4:                 1               10             10
## 5:                 1               10             10
## 6:                 1               10             10
## loading checkpoint if needded:
# dt.all <- fread(paste0(PATH,"/data/"))

Defining States - Data Exploration and Analysis

In order to define our states, it is important to know our problem space well, the analyzed users relatively well, and what is the purpose and usage of this analysis (who is going to use it and for what). There are two directions we can take this in:

1. Manual Definition from Human Knowledge

1. User: Who is using this and for what? Do they already have groupings of users that we should consider? Do they treat customers differently based on some criteria or thresholds? 2. Product: Does our product or service offer distinct tiers? If so, we shuold consider those as differences in states. If not explicitly, does it do so implicitly? 3. User Journey: The best state maps would map the life journey of the user with our product / service. For example: new -> first_time_user -> weekly_high_amount_user -> monthly_high_amount_user -> churned. By knowing the usual journey flows of our customers we’ll be able to construct users stories and thus build some hypotheses for possible stages of a user’s life. If we don’t know that already, we can learn that by looking at the data.

2. Computational Algoithms to help define states

We can use some algorithms to help us define the states here! Two main ways we can do that are as follows:

1. Clustering into states: decide which few features (columns) of the data are most important at defining a state? For example, frequency and amount. We can choose those and cluster the data according to those. If we are lucky enough to be able to cluster according to only 2 (or sometimes 3) features, we can also plot all the data’s point values on a scatterplot with these two features, and plot the resulted state clusters or boundaries to help discern the quality of clustering.

2. Predicting next states - if you use a regression or better yet a decision tree or random forest on all the features to predict an outcome such as the next state, or the next amount donated next month, you could find what are the most valuable data-pieces!

3. Hidden Markov Models - Hidden Markov Models assume that there are some hidden processes which drive our observed processes above the ground. We can use some visible variable such as the “amount” as the measured proxy (visible state), while assuming that there are hidden states which drive it invisibly in the background. This approach should also maximize the stability of those states, although potentially at the expense of the interpretability of the states themselves.

3. Combine computational data analysis with domain knowledge to creaete states

if you don’t have your states of engagement already, you should think on what are useful and reasonable “states” of engagement for your case. This process shouldn’t really be entirely automatic, because eventually this sort of analysis needs to have understanble states that would hopefully be relevant to (1) understand and talk about your customer base more broadly in other uses and (2) treat these “states” as cohort and make decisions accordingly, such as treating or incentivizing them differently, or such as inferring customer behavior patterns from the transitions between them. However, we do want the states to be rather stable, meaning - the probability of staying in each state should be relatively high (except for states defined differently, such as if you define a “new” state or another inherently temporary state). With that, devizing the states should be informed by understanding data and customer behavior. For inspiration, see below.

Suggested Procedure for discerning states: 1. Decide what is the metric for “value” that you want to measure. In many cases that would be money, but not necessarily, such as time spent on your platform, clicks, or whatever drives your revenue or key business outcomes 2. Decide what are the most important variables to differentiate between states. In many cases those will be: (1) frequency per time period (averaged) and (2) value delivered. 3. Think organizationally and conceptually: do you have organizational relevance to particular types of divisions across these variables? for example, frequency of every order of magnitude (amountly, daily, weekly, monthly, yearly), or in value levels? (are there different tiers of customers according to their value delievered? such as “gold” status in a frequent flyer club; are there currently any promotions or segmentation of the customer base that is likely to persist and could inform these states here?) 4. Explore the distribution of these two variables. Does the data lend itself to some distinct groupings? Do these make sense? 5. Try to combine the logical and data-driven hypotheses about states and inform your state formation. 6. Alternatively, or in combination to inform the above, you could let the data speak for itself - and use a clustering algorithm to automatically choose optimal clusters along the measured variables. I’ll demonstrate such a technique using a simple and famous clustering algorithm called K-means. 7. Another possible direction, which would be usually mainly useful later on in the process, is to use Hidden Markov Models (HMMs) - which assumes that there is a visible layer of states that is driven by an unkown, hidden layer of states. However, we need to start off with some “state” definitions as the visible states.

Clustering Approach

If you have very specific domain knowledge and business use-case describing your states already, that’s great, and that’s something I can’t help with in generalizing. Therefore, I’m going to to take a more domain agnostic and generalizable approach here and create first definition of states being informed by clustering.

In our case, there are 2 important variables which would define a state: 1. Amount donated, and 2. Frequency. Amount donated - we have that information already, as a continuous amount donated in aggregate over the month. We currently have two amount metrics: average amount donated that month, or total amount donated that month. Which one will we choose depends on what is the other variable of choice, and which would maximize information given combined with the other variable. Frequency - we currently have number of donations this month. We might want to include more past information; for example - how many consecutive months have you donated? That might be more predictive. However, the Markovian assumption is that the states are “memoryless”: the current state is supposed to be sufficiently predicitve about the next ones. Therefore, we will start with a 1-step markov decision process. Later we can try incorporating more memory by wrangling the data to have a more memory-based metric, or by implementing a multi-step markov model.

Our variables of choice then are: For frequency, the existing 1-step variable is N_Donations per month. For amount, we have either average amount per donation, or total amount donated that month. Considering that we already have the number of donations as another variable, it makes more since to use the Average amount donated, which gives us a more intuitive metric of the actual average amount value (i.e., $1 per day), and we can easily multiply it by the N_donations per month to get the monthly total if we like.

First, we will explore the data distributions around these variables of interest:

Distribution of N_Donations Per Month

qplot(x = n_donations_month, binwidth=1, data=dt[n_donations_month>0], xlab = "Number of repeated donations", main = "Histogram: Number of repeated donations per donor") 

So the number of repeated donations per person turns out to be logarithmic with exponential decay.

Distribution of Average Amount Donated

qplot(x = avg_amount, binwidth=5, data=dt[n_donations_month>0 & avg_amount<=500], xlab = "Average Amount (for months with donation)", main = "Histogram: Average Amount Donated") 

We can see a mostly poisson like distribution, but it’s mainly multimodel comprised of commmon sums to donate. This is probably because the Bernie Sanders ActBlue website campaign encouraged candidates to buttons of suggested donation values of these peaked values: - $10 - $27 - $50 - $100 - $250 - $500 - $1,000 Or: Other [Insert Value].

This is a clear example of how NUDGING and user architecture really influences users to follow nudges; the given donation amounts were almost all of the donations.

Scatterplot of relationship between main two variables

if you want to be agnostic to the sizing of each feature, you should normalize / standartize all of your features before clustering. In this case I want that proportion of weighting, so I’m keeping the sizes as is for now.

Let’s see if there are any visible divisions of the data: #### Scatterplot of avg_donation_amount vs n_donations_month

# let's see the relationship between donation_amount vs days_since_last_donation
# we'll sample 500,000 out of the 2.1 Million rows with actual donations we have, since R couldn't produce that image with all those datapoints!
qplot(x=n_donations_month, y=avg_amount, data = sample_n(dt.all[n_donations_month>0],500000), geom="point", main="Monthly donations vs Donation Amount", xlab = "Number of donations that Month", ylab = "Donation Amount", alpha=0.1)

These are the main two axis upon which we will create our states, since we are interested in groups of varying (1) frequency and (2) amount. Therefore, plotting these variables against each other is important. In some cases, the data might have had more natural divisions by itself. In other cases, you might want to transform the data in some ways to have more granularity or a different measure of a similar metric so that it would be more easily divisible (for example: number of donations in the past 2 months; days since last donation, etc).

Get States Approximations Using Clustering

Grouping #1: States by 1 month (completely memoryless)

if you want to be agnostic to the sizing of each feature, you should normalize / standartize all of your features before clustering. In this case I want that proportion of weighting, so I’m keeping it like this. The two most important variables for us for clustering are: average donation amount vs number of donations per month. We might want to check later other transformations of variables which might be more accurate, but it depends on our later application, like: the number of consecutive months with donations, or that weighted by the number of donations per month.

Let’s see what clustering might suggest for us. We will try to cluster the data according to our 2 (or more) most important variables - usually reltaed to frequency (here: days since last donation) and amount (could be also # of amounts / time spent / clicks / egnagement etc).

# Make sure to clean your values from NAs and INFs, and if you want - trasnform them into making more relevant groupings (for example, raising to the second power if you want more distinct differences at higher amounts).
summary(dt.all)
##                         donor_uid         monthyear      
##  ;RICHARD|FAHEY|38548        :     11   2015-04: 579825  
##  .SUSAN|HAJIANI|90025        :     11   2015-05: 579825  
##  'STANLEY|LEHTO|98597        :     11   2015-06: 579825  
##  (ANJANEYA)MURTY|KANURY|97330:     11   2015-07: 579825  
##  (JAMES) DAVID|RICH|85308    :     11   2015-08: 579825  
##  (LETITIA) DIANE|TAYEBY|05301:     11   2015-09: 579825  
##  (Other)                     :6378009   (Other):2899125  
##   total_amount        avg_amount       n_donations_month 
##  Min.   :    0.00   Min.   :   0.000   Min.   :  0.0000  
##  1st Qu.:    0.00   1st Qu.:   0.000   1st Qu.:  0.0000  
##  Median :    0.00   Median :   0.000   Median :  0.0000  
##  Mean   :   12.06   Mean   :   8.422   Mean   :  0.4833  
##  3rd Qu.:   10.00   3rd Qu.:  10.000   3rd Qu.:  1.0000  
##  Max.   :12000.00   Max.   :5400.000   Max.   :113.0000  
##                                                          
##  n_donations_life  months_donated  
##  Min.   :  2.000   Min.   : 2.000  
##  1st Qu.:  2.000   1st Qu.: 2.000  
##  Median :  3.000   Median : 3.000  
##  Mean   :  5.083   Mean   : 3.617  
##  3rd Qu.:  6.000   3rd Qu.: 5.000  
##  Max.   :171.000   Max.   :11.000  
## 

There are many clustering algorithms available. For this tutorial purpose, let’s use the k-means, since it is the most common one, most familiar to readers, easily understable, and its algorithm answers our needs. We’ll use one of the common algorithm to each k-means clustering called “Hartigan-Wong”. The Hartigan-Wong updates its centroids every time when a point moves. Additionally, it also saves time by making smarter choices in how it checks for the closest cluster. Other available algorithms in R, like Lloyd’s k-means algorithm, are not as efficient, but rather remained as historical legacy since Lloyd’s was the first (and thus least developed) clustering algorithm.

# now let's see what clustering would bring us
cluster <- kmeans(x=dt.all[, .(avg_amount, n_donations_month)], centers=6, iter.max = 500, nstart = 25, algorithm = "Hartigan-Wong")
cluster
## K-means clustering with 6 clusters of sizes 14329, 4573944, 605060, 5247, 105169, 1074326
## 
## Cluster means:
##    avg_amount n_donations_month
## 1 243.6466807         1.4298974
## 2   0.2687651         0.0806702
## 3  36.5112569         1.4033484
## 4 724.2082118         1.2090719
## 5  99.1876644         1.3559794
## 6  11.7963175         1.5778162
## 
## Clustering vector:
##     [1] 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 5 2 3 2 2 2 2 2 2 5 2 2 2 3 5 2
##    [35] 3 2 2 2 2 3 6 6 6 6 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2
##    [69] 2 2 2 6 6 6 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 3 2 2 2
##   [103] 2 2 2 2 2 2 3 3 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2
##   [137] 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 5 2 5 2 5 2 2 2 2 3 2 5 2
##   [171] 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 5 2 3 2 2 2 2 2 2 2 2 2 2 2 6 6 6
##   [205] 6 6 6 2 2 2 2 2 6 2 6 6 2 2 2 6 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 5 3
##   [239] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 6 2 6 6 6 6
##   [273] 6 6 6 2 5 3 2 2 5 3 2 3 2 5 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 5 2 2 2 2
##   [307] 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 6 2 3 2
##   [341] 2 2 2 2 3 6 6 2 2 2 2 2 2 2 2 2 2 2 3 2 5 2 2 2 2 6 2 2 2 2 6 3 6 3
##   [375] 2 2 6 6 6 6 6 6 6 6 6 2 2 6 2 2 2 2 6 2 2 2 2 2 2 5 2 3 2 2 2 3 5 2
##   [409] 2 2 5 2 2 2 2 2 5 5 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2
##   [443] 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 6 2 6 2 2 2 2 2 2 3 2
##   [477] 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 6 6 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 3 3
##   [511] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2
##   [545] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 6 2 2 2 2 3 2 2 2
##   [579] 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 2
##   [613] 2 6 6 6 2 2 2 2 2 3 2 3 6 2 3 2 2 2 2 2 6 6 6 2 2 6 2 2 2 2 2 3 2 2
##   [647] 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 4 3 6 6 6 3 5 5 2 2 2 2 2 3 2 2 2
##   [681] 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 5 5 5 5 5 2 2 2 2 2 2 2 2 3 2
##   [715] 3 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 3 5 2 2 2 2 2 2 2
##   [749] 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 6 3 2 6 6 2 2 2 2 2 2 3 2
##   [783] 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
##   [817] 2 2 2 2 6 6 2 2 6 2 6 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 6 6
##   [851] 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2
##   [885] 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 6 6 2 2 6 6 2 2 6 2 6 2
##   [919] 6 2 2 2 2 5 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 6 6
##   [953] 6 6 6 6 6 2 2 2 2 2 5 2 5 2 2 2 2 2 3 2 2 2 5 2 2 2 2 2 2 2 2 2 3 3
##   [987] 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 3 2 2
##  [1021] 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 5 3 2 2 2 2 3 2 2 3 2
##  [1055] 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 6 2 2 2 2 6 2 2 2 2 2 6 3 2 2 2
##  [1089] 2 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 3 6
##  [1123] 2 2 2 6 6 2 6 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2
##  [1157] 2 2 2 2 2 6 6 6 6 6 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2
##  [1191] 6 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2
##  [1225] 2 2 2 2 2 3 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2
##  [1259] 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 6 6 2 2 3 2 2 2 2 6
##  [1293] 2 2 2 2 6 2 2 2 2 2 5 2 5 2 5 2 5 2 3 3 3 6 6 6 2 2 2 2 2 2 2 2 2 2
##  [1327] 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
##  [1361] 2 3 6 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2
##  [1395] 2 2 2 5 6 2 3 3 3 2 6 6 3 6 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 6 2 2
##  [1429] 2 2 2 2 2 2 2 2 2 2 6 6 6 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2
##  [1463] 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2
##  [1497] 2 2 2 2 2 2 2 2 3 3 6 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 3 2 6 3 3 2
##  [1531] 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 3 2 6 2 6 2 2
##  [1565] 2 2 2 2 6 2 2 6 2 2 2 3 3 2 6 2 2 2 6 6 2 2 6 6 6 6 6 6 2 2 2 2 2 2
##  [1599] 2 2 2 2 2 2 6 2 2 2 2 3 6 2 2 2 2 6 3 2 2 6 2 2 2 2 2 3 6 2 2 2 2 2
##  [1633] 2 2 6 2 2 2 3 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 6 6 2 6 6 6 2 2 2 2 2
##  [1667] 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 6 6 6 6 2 2 2 5 2 5
##  [1701] 2 5 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 6 6 2 6 2 2 6 6 6 6 6 6
##  [1735] 6 6 6 6 2 2 6 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 2
##  [1769] 3 2 2 2 2 2 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2
##  [1803] 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 6 2 2 2 2 2 6
##  [1837] 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2
##  [1871] 2 2 2 2 2 6 2 2 5 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2
##  [1905] 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2
##  [1939] 2 2 2 2 2 2 3 3 3 2 3 2 6 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2
##  [1973] 2 2 2 2 2 2 2 6 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2
##  [2007] 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 3 2 2 2 2 5 2 2
##  [2041] 2 2 2 2 2 5 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2
##  [2075] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 2 2 2 2 6 6 6
##  [2109] 6 2 2 2 2 5 2 3 2 2 5 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2
##  [2143] 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 5
##  [2177] 5 5 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 3 2 2 5 2 3 2 2 2 2 2 2 2 2 2 2
##  [2211] 6 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 1 2 2 5 5 5
##  [2245] 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 6 6 6 6 3 3 2 2 2 2 2 2 2 2 2 2 2 2
##  [2279] 2 2 2 2 2 2 2 3 2 3 2 2 6 6 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2
##  [2313] 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2
##  [2347] 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 6 6 6
##  [2381] 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 6 6
##  [2415] 6 6 6 6 6 6 2 6 2 6 2 6 2 2 2 3 6 2 2 2 2 2 2 6 2 2 2 3 2 2 2 6 2 2
##  [2449] 2 6 6 6 6 2 2 2 2 2 2 2 6 2 2 3 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2
##  [2483] 2 6 6 2 2 2 2 2 6 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 6 2 2 6 2 2 2 2 2
##  [2517] 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 5 5 5 5 5 5 5 5 2 2 2 2 2 2 2 2 2
##  [2551] 3 3 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 6 2 6 2 6 2 2 2 2 2 2 2 2 3 3
##  [2585] 2 2 5 4 2 2 2 2 2 2 4 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 5 2 2 2 3
##  [2619] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2
##  [2653] 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2
##  [2687] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2
##  [2721] 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 5 5 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2
##  [2755] 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2
##  [2789] 6 2 6 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 6 2 2 6 6 6 2 2 2 2 2 2
##  [2823] 2 2 2 2 6 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2
##  [2857] 2 2 3 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 6 3 3 2 2 6 2 2 6 2 2
##  [2891] 2 6 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2
##  [2925] 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2
##  [2959] 2 2 2 2 2 2 2 2 3 3 2 6 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 6 2 6 2 2
##  [2993] 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6 6 6 6 2
##  [3027] 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2
##  [3061] 2 2 2 2 2 2 6 2 6 2 2 2 2 2 6 2 2 6 2 2 2 6 2 2 2 6 6 2 6 6 3 2 2 2
##  [3095] 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 3
##  [3129] 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 1 2 5 2 2 2 2 2
##  [3163] 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 3 2
##  [3197] 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2
##  [3231] 2 2 6 6 2 2 2 2 2 2 2 2 2 5 6 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 2 3
##  [3265] 6 3 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 6 2 5 2 2 2 2 2 2 2 2 2
##  [3299] 2 2 2 2 2 2 2 2 2 2 6 2 6 2 6 6 6 6 6 2 2 6 2 6 2 2 2 2 2 2 2 2 3 6
##  [3333] 6 2 2 2 3 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3
##  [3367] 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 3 6 3 6 3 3 3 2 2 2 2 2 2 2 2 2 5 3 2
##  [3401] 6 6 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 3 2 5 2 2 6 6 2 2 2 2 2 2 2 2 2
##  [3435] 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 6 2 6 2 3 2 2 2 6
##  [3469] 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 3 3 6 2 2 2 2
##  [3503] 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 3 2 5 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2
##  [3537] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2
##  [3571] 6 6 6 6 6 2 2 2 2 2 2 2 2 3 3 3 2 2 6 2 2 6 2 2 2 2 2 2 2 3 2 2 6 3
##  [3605] 3 6 6 3 2 3 2 2 2 6 2 2 2 2 2 2 2 2 2 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2
##  [3639] 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 3
##  [3673] 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2
##  [3707] 6 2 2 2 2 2 6 6 2 6 6 3 2 2 2 2 2 2 2 3 3 5 3 3 2 3 2 2 5 3 2 2 2 2
##  [3741] 2 2 3 2 2 3 3 3 6 6 3 2 2 2 2 2 2 2 6 2 2 3 2 2 2 2 2 2 2 2 6 2 6 2
##  [3775] 2 6 6 6 6 6 6 6 6 6 2 3 2 3 2 3 2 3 3 6 6 2 2 2 2 2 2 2 6 2 2 2 2 2
##  [3809] 2 2 2 2 6 2 3 6 3 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2
##  [3843] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2
##  [3877] 2 2 2 2 6 2 6 2 2 2 3 3 6 3 3 3 3 5 2 2 2 2 2 2 2 2 2 2 6 4 2 2 2 2
##  [3911] 3 2 2 2 3 3 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 6 6 2 6 2 2 2 6 2 2
##  [3945] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 3 6 3 6 2 3 6 2 6 2 2 2 2
##  [3979] 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 3 2 2 2 3 6 2 6 2 2 2 2 2 2 2 2 2 3
##  [4013] 6 6 6 2 2 2 6 6 2 2 6 3 2 3 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3
##  [4047] 3 3 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 6 3 2 2 3 2 2 2 2 2 2 2 2 3 3
##  [4081] 3 2 2 2 2 2 3 6 6 6 6 6 2 2 2 6 3 6 6 3 6 3 3 2 2 2 2 2 2 2 2 2 3 3
##  [4115] 2 2 2 2 2 6 3 3 3 3 3 2 2 2 2 2 6 2 2 6 6 6 2 2 2 2 3 3 2 2 2 2 2 2
##  [4149] 2 2 2 2 6 2 2 2 2 6 2 2 2 6 6 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2
##  [4183] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2
##  [4217] 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 6 3 2 3 2 3
##  [4251] 3 6 2 2 6 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2
##  [4285] 3 2 2 6 2 2 2 2 3 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
##  [4319] 2 2 6 2 2 2 2 6 2 2 6 2 6 6 6 6 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2
##  [4353] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2
##  [4387] 3 2 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2
##  [4421] 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 6 2 6 2 2 2 2 2 6 2 2 2 6
##  [4455] 2 2 6 6 6 6 6 6 2 2 2 4 2 3 2 3 2 2 6 2 2 3 2 2 2 2 2 6 2 6 2 2 2 5
##  [4489] 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2
##  [4523] 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 6 6 6 6 6 6 2 6
##  [4557] 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 5 2 2 2 5 2 2 2 2 2 6 2 6 2 2 2 2 2 2
##  [4591] 2 2 6 6 2 2 6 6 2 2 2 2 6 6 2 2 2 3 6 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2
##  [4625] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 3 6 6 2 2 2 2 2
##  [4659] 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 3 6 6 3 2 2 6 2 2 2
##  [4693] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 6
##  [4727] 6 6 6 6 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 2 2
##  [4761] 6 3 2 2 2 2 2 2 2 2 6 6 3 2 2 2 6 6 2 6 2 2 3 3 2 2 6 2 2 2 2 2 2 2
##  [4795] 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 6 6
##  [4829] 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 6 6 3 2 2 2 2 2 2 3 2 2 2 3
##  [4863] 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 3 2 2 2 3 6 2 2 6 2 2 2 6 2 6 6 6 2
##  [4897] 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3
##  [4931] 3 2 2 2 2 2 2 3 2 2 2 4 2 2 6 2 6 6 3 3 2 2 2 2 2 2 2 2 3 6 2 2 2 2
##  [4965] 2 2 2 2 2 2 6 2 2 2 2 2 6 6 6 6 3 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 3 2
##  [4999] 2 2 3 2 2 3 3 2 2 6 6 2 3 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 6 2
##  [5033] 2 2 2 2 6 6 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2
##  [5067] 2 2 3 2 3 2 6 6 6 6 6 6 6 6 6 6 2 2 2 3 2 6 2 2 2 5 2 2 2 2 2 2 2 2
##  [5101] 2 3 2 6 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3
##  [5135] 2 2 3 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 6 6 6 6 6
##  [5169] 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 5
##  [5203] 5 2 2 2 2 2 2 2 2 3 6 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2
##  [5237] 2 2 2 2 3 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 3 6 2 2 2 2 2 6
##  [5271] 2 2 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2
##  [5305] 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 5 2 5 2 2 3 5 2 2 2 2
##  [5339] 3 2 2 2 2 2 2 3 2 2 2 2 2 2 5 2 3 2 5 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2
##  [5373] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6
##  [5407] 6 6 6 6 6 6 2 2 2 3 2 3 3 3 3 1 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 6
##  [5441] 2 2 6 2 6 2 2 3 2 2 3 2 2 3 5 2 2 2 2 2 2 2 3 2 2 3 2 2 6 2 2 2 2 2
##  [5475] 6 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 6 2 6 2
##  [5509] 2 2 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 6 2 2 2
##  [5543] 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2
##  [5577] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6
##  [5611] 2 2 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 6 2 2 2 6 2 2
##  [5645] 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 6 2 6 6 6 6 2 6 2 6 2 2 2 2 6 2 2 2
##  [5679] 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 6 6 3 2 3 2 2 2 2 2 2 3 2 6 6 6 2 2 2
##  [5713] 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 3 3 6 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3
##  [5747] 2 3 2 2 3 3 3 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 2
##  [5781] 2 2 2 6 6 2 2 6 6 6 6 6 6 6 6 2 2 2 6 2 6 2 6 2 2 6 6 6 2 2 2 2 2 2
##  [5815] 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6
##  [5849] 6 6 6 6 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 6 2 2
##  [5883] 2 3 2 2 6 2 2 6 6 2 2 6 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2
##  [5917] 2 3 2 6 6 2 6 2 2 3 2 6 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 6 2 2 2
##  [5951] 6 2 2 2 6 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6
##  [5985] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 2 6 2 3 2
##  [6019] 3 2 2 2 3 2 2 2 6 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 6 2 6 2 2 6 6 6 2 2
##  [6053] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2
##  [6087] 2 5 3 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 5 6 2 3 2 2 6 2
##  [6121] 2 6 2 2 2 6 3 5 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 6 6 2 2 2 2 2
##  [6155] 2 2 2 6 6 6 2 6 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2
##  [6189] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 3 2
##  [6223] 2 2 3 3 2 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 2 2 2 2 2 2 6
##  [6257] 6 6 6 2 2 2 2 6 6 6 6 6 6 3 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 3 3 3
##  [6291] 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 6 6 6 6 6 6
##  [6325] 3 2 2 2 2 2 6 2 2 2 2 6 2 2 2 6 2 2 6 6 6 2 6 2 2 2 2 2 2 2 6 6 2 2
##  [6359] 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 2 6 2
##  [6393] 2 2 2 2 2 2 2 6 6 6 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2
##  [6427] 2 2 2 2 2 2 3 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 3 6 2 2 2 2 2 2 2 2 2 2
##  [6461] 2 6 6 6 6 6 6 6 2 6 2 2 2 6 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2
##  [6495] 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
##  [6529] 2 2 2 2 6 6 2 2 2 2 5 2 2 2 2 2 3 2 2 2 2 2 6 6 6 6 6 6 2 3 3 2 6 3
##  [6563] 2 2 3 5 5 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 6 2
##  [6597] 2 2 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 6 6 6 6
##  [6631] 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2
##  [6665] 3 3 2 2 2 3 2 2 2 6 2 2 2 2 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 6 2 6 6 6
##  [6699] 3 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 2 2 2 2 2 5
##  [6733] 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2
##  [6767] 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2
##  [6801] 2 2 2 2 2 2 3 6 6 2 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 3 3 6 2 2 2 2 6
##  [6835] 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2
##  [6869] 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 6 2 6 3 3 3 3 6 6 2 2 2 6 2 2 2 2 2
##  [6903] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2
##  [6937] 2 2 6 6 2 2 2 2 2 3 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 6 2 2 6 2
##  [6971] 2 6 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 6 6 6 2 6 6 2 6 6 6 6 6 6 6
##  [7005] 6 6 6 2 2 2 2 2 2 2 3 2 3 3 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
##  [7039] 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 6 2 2 6 2
##  [7073] 2 2 2 2 2 2 2 2 2 5 2 3 2 2 3 2 2 2 2 2 2 2 5 2 2 2 2 2 2 2 6 2 2 6
##  [7107] 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 3 2 2 3 2 2
##  [7141] 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 6 2 2 2
##  [7175] 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 2 2 2 6 2 2 3 2
##  [7209] 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 4 2 1 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2
##  [7243] 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2
##  [7277] 6 2 2 2 2 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 6 6
##  [7311] 6 6 6 6 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2
##  [7345] 2 6 6 2 2 2 2 3 2 2 2 3 2 3 3 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 3 6 6 3
##  [7379] 3 3 3 2 3 6 3 2 2 2 2 2 2 2 2 2 2 5 2 2 2 3 2 2 3 2 6 2 2 2 2 2 2 2
##  [7413] 6 2 2 2 2 2 2 2 6 2 2 6 6 2 2 2 2 2 3 2 5 2 2 2 2 2 2 2 2 2 2 2 6 6
##  [7447] 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2 3
##  [7481] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 1 2 5 3 3 2 3 3 2 3 3 3 3 3 3 3 3 6 5 2
##  [7515] 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 6 3 6 2 2 2 6 6 6 6 6 6 6 6 2 2
##  [7549] 2 2 2 3 3 3 3 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2
##  [7583] 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 5 1 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2
##  [7617] 2 2 2 2 2 2 3 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2
##  [7651] 2 2 6 6 2 6 2 1 3 2 6 6 6 6 6 6 3 2 2 2 2 3 2 6 2 6 2 2 2 2 2 2 2 2
##  [7685] 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 6 2
##  [7719] 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 2
##  [7753] 2 2 2 2 2 2 2 2 6 2 2 6 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2
##  [7787] 2 2 2 2 2 2 6 2 2 6 2 2 2 2 6 6 6 6 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6
##  [7821] 2 5 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2
##  [7855] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 1 5 1 2
##  [7889] 2 2 2 2 2 2 2 2 5 5 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2
##  [7923] 2 3 3 3 3 3 3 6 6 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 6 6 2 6 6 6 6 2 2 2
##  [7957] 2 3 2 2 6 2 3 3 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2
##  [7991] 2 2 2 2 6 2 6 2 3 3 2 3 6 2 2 2 2 2 2 2 6 2 6 6 6 6 6 6 6 2 2 2 2 2
##  [8025] 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2
##  [8059] 6 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 6 2
##  [8093] 2 2 2 6 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2
##  [8127] 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2
##  [8161] 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 6 2 2 2 6 2 2
##  [8195] 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 2 2
##  [8229] 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 6 2
##  [8263] 2 2 2 2 2 2 2 2 6 6 2 2 2 3 3 3 3 3 3 5 5 2 2 2 2 3 2 2 2 2 2 6 2 2
##  [8297] 2 2 2 2 2 2 3 2 3 2 1 6 2 1 3 2 6 3 1 1 2 2 2 1 2 2 2 2 2 2 5 2 2 2
##  [8331] 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
##  [8365] 2 2 2 5 3 5 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 6 2
##  [8399] 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 5 2 2 2 2 3 2 2 2 2 2 2 2 2
##  [8433] 2 2 6 6 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2
##  [8467] 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 6 2 6 6 6 6 6 6 6 6 2 2 2 3 6 6 6 6
##  [8501] 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 5 3 2 2 2 2 2 6 6 6 6
##  [8535] 6 6 2 2 2 2 2 2 5 2 3 2 3 2 2 5 6 6 6 3 6 3 3 6 2 2 2 2 2 2 2 2 2 5
##  [8569] 5 2 2 2 2 2 3 2 2 2 2 6 2 2 5 2 2 3 3 2 2 5 5 2 2 2 2 3 6 6 6 2 6 3
##  [8603] 2 2 2 2 6 6 6 6 6 6 6 3 6 2 2 2 2 6 3 2 3 3 2 2 2 2 2 2 2 2 2 3 6 2
##  [8637] 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 6 2 2
##  [8671] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 5 2 2 2 2 2 2 2 6 6 6 6 6 2 2 6
##  [8705] 2 2 2 2 2 3 6 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2
##  [8739] 2 2 2 2 6 2 6 2 2 2 5 2 3 2 2 6 2 3 2 2 2 2 2 2 6 2 6 2 3 2 2 2 2 2
##  [8773] 3 3 3 3 3 3 2 2 2 2 2 3 2 2 6 6 6 2 2 6 2 2 6 6 6 6 6 6 2 2 2 2 2 2
##  [8807] 2 2 2 6 3 2 2 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2
##  [8841] 3 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 6 2
##  [8875] 6 6 6 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2
##  [8909] 2 2 2 2 2 2 2 2 2 2 6 6 6 2 6 2 2 2 2 2 2 2 2 3 6 6 6 6 6 6 6 2 2 2
##  [8943] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2
##  [8977] 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 3 6 2 6 2 2 2 2 2 2 6 6 6 6 6 6 2
##  [9011] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 3 6 2 2 2 2 2 2 2 2 6 6 2 2 2
##  [9045] 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2
##  [9079] 2 2 2 2 2 2 4 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2
##  [9113] 2 2 2 2 6 6 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2
##  [9147] 6 6 6 6 6 6 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 6 2 2 2 3 3 2 2 2 2 2 2
##  [9181] 2 3 2 2 2 2 2 2 2 2 6 2 2 2 6 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2
##  [9215] 2 2 3 3 2 2 2 2 2 2 6 6 6 6 6 2 3 3 3 5 3 5 2 2 2 2 2 2 2 2 2 2 2 3
##  [9249] 6 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3
##  [9283] 3 5 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 6 2 2 2 2 2 2 2 2 6 6
##  [9317] 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 1 2 3 2 2 2 2 2 2 2 2 2 2 2
##  [9351] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 2 5 2 2 2
##  [9385] 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 6 6 6 6 6 2 2
##  [9419] 2 6 2 2 2 2 2 2 3 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
##  [9453] 2 6 6 6 6 6 6 6 2 2 2 2 2 6 2 2 3 2 6 2 2 6 2 2 2 2 6 2 2 6 2 2 2 2
##  [9487] 2 2 2 2 2 6 6 2 2 2 2 3 3 3 3 3 3 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6
##  [9521] 2 6 2 2 2 6 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2
##  [9555] 6 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6
##  [9589] 6 6 6 6 2 2 2 2 2 3 2 6 2 2 2 2 2 5 2 2 2 2 2 2 2 5 2 2 2 2 2 2 2 2
##  [9623] 2 2 2 2 2 2 2 2 2 3 2 6 6 6 2 2 2 2 5 3 5 3 5 5 5 2 2 2 2 6 6 6 6 6
##  [9657] 6 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3
##  [9691] 5 2 3 2 2 2 6 2 2 6 3 6 2 2 2 2 2 2 2 2 2 5 5 2 2 2 2 2 2 2 2 6 2 6
##  [9725] 2 2 2 2 2 6 2 2 2 2 6 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2
##  [9759] 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 3 2 3 3 2 2
##  [9793] 6 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 6 6 6 6 2 2 2 2 2 6 6 6 6 6 6 2 2 3
##  [9827] 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 6 2 2 2 2 2 2 2 6 2 3 2 2 3 2 2 6 2
##  [9861] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 3 6 6 6 2 6 2 2 2 6 2 2 6 2 2 2 2 2 2 2
##  [9895] 2 2 2 3 2 6 2 2 2 2 3 3 2 2 2 2 6 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 6
##  [9929] 2 6 6 6 6 2 2 3 3 2 6 6 6 6 6 6 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2
##  [9963] 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2
##  [9997] 3 2 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 3 2 2 5 2 6 6 6 6 6 6 6 6
## [10031] 6 6 2 2 2 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 6 6
## [10065] 6 2 2 2 2 2 2 2 2 2 6 6 3 2 2 2 2 2 5 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6
## [10099] 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 5 2
## [10133] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 6 3 2 2 2 2 2 2 2 2 2 3 6 2 2
## [10167] 2 2 2 2 2 2 2 6 3 2 3 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2
## [10201] 2 5 2 2 2 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 3 2 2 2 6 6
## [10235] 6 6 2 2 2 2 2 2 5 5 2 2 2 2 2 2 2 5 2 2 2 2 2 2 2 2 6 2 6 2 2 2 6 2
## [10269] 2 2 2 2 2 6 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2
## [10303] 2 2 6 2 6 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 6 2 6 6 6
## [10337] 6 6 6 6 2 5 2 2 2 2 2 2 2 2 5 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2
## [10371] 2 2 6 2 2 2 2 2 6 6 6 6 6 3 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2
## [10405] 2 6 2 2 6 6 6 6 6 6 6 2 2 2 5 6 2 2 2 2 5 5 2 5 2 2 2 2 2 2 2 2 2 6
## [10439] 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3
## [10473] 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2
## [10507] 3 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2
## [10541] 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 6 6 2 2 2 2 2 2 2 2
## [10575] 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 3 6 2 2 2 2
## [10609] 6 2 2 2 2 6 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2
## [10643] 6 2 2 6 2 6 2 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2
## [10677] 2 2 3 6 6 2 2 2 6 2 6 2 2 2 6 6 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2
## [10711] 2 3 6 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 5 3 2 2 6 2 2 6 2 2
## [10745] 6 2 3 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [10779] 2 2 2 2 2 2 2 2 5 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3
## [10813] 3 2 2 2 2 2 2 2 2 6 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3
## [10847] 2 2 2 2 2 2 2 2 2 5 5 2 2 2 2 2 3 2 2 5 2 2 2 2 4 2 2 2 2 2 2 2 1 2
## [10881] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 2 6 6 2 2 2 2 2 6 2 2 2 2 6 2 2
## [10915] 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 5 3 6 2 2 2 2 2 2 6 6 2 6 6 2 2 2
## [10949] 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 3 2
## [10983] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 2 2 2 2 2 3 2 2
## [11017] 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 6 2 2 6 6 2 2 6 2 3 2 2 2 2 2 2 2 2
## [11051] 2 2 2 2 2 2 6 6 2 2 6 2 6 6 2 2 2 6 6 2 2 6 6 6 6 6 6 2 2 2 2 2 3 2
## [11085] 2 2 6 3 2 2 3 2 2 3 3 3 5 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 2 2
## [11119] 6 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 6 6 3 2 2 3 2 2 3 2 2 2 6 2 2 2 2 2
## [11153] 2 2 2 3 3 2 2 6 2 6 6 2 6 2 2 3 2 6 2 6 2 3 2 2 2 2 3 3 2 3 3 6 3 2
## [11187] 3 2 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 5 2 2 2 2 2 2 2 2 2 3 6
## [11221] 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 3 6 3 2
## [11255] 2 2 2 3 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 3 2 2 6 2 6
## [11289] 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2
## [11323] 2 2 2 2 3 2 3 2 2 2 2 2 2 2 6 6 6 2 6 2 3 3 3 3 3 3 3 5 3 5 2 2 2 2
## [11357] 2 2 2 2 6 2 6 2 2 2 2 2 6 2 2 3 2 6 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2
## [11391] 2 2 2 2 2 6 2 2 2 6 6 6 6 6 6 3 2 2 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2
## [11425] 2 6 2 2 2 6 6 6 6 6 6 6 6 3 3 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2
## [11459] 2 6 2 6 2 2 2 2 2 2 6 6 2 2 3 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 3 2 2
## [11493] 2 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 2 6
## [11527] 2 2 2 2 2 5 5 5 5 5 5 5 5 2 2 2 2 2 3 3 3 3 2 2 2 2 2 6 2 2 2 2 2 2
## [11561] 2 2 2 5 2 2 5 2 2 5 2 5 2 2 2 2 6 6 6 6 6 6 6 2 2 2 6 6 6 6 2 3 3 3
## [11595] 2 2 6 2 6 6 3 2 3 3 5 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2
## [11629] 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 6 2 2 2 6 2 2 2 5 2 2 2 2 2 6 2 2 2 2
## [11663] 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 6 2 2 2
## [11697] 2 2 6 2 2 2 2 6 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2
## [11731] 2 2 2 2 6 6 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2
## [11765] 2 2 2 3 3 6 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2
## [11799] 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 6 6 6 2 2 2 2 2 2 2
## [11833] 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6
## [11867] 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [11901] 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 6 2 6 3 6 6 6 6 2 3 6
## [11935] 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 6
## [11969] 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 6 6 6 6 6 2 6 2 2 3 3 3 3 3 3 3 3 2 2
## [12003] 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 6 2 2 3 6 2 2 6 2 6 6 6 6 6 6 6 2 2
## [12037] 2 2 2 2 2 2 2 6 6 2 2 2 2 3 6 2 2 6 2 6 2 2 2 2 2 6 6 6 2 2 2 2 2 2
## [12071] 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 6 2 2 6 2 2 2 3 3 2 6 6 6
## [12105] 2 2 2 2 6 6 6 2 3 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 2 2 6 2 3 2 2 2 2 5
## [12139] 2 2 2 2 2 4 2 2 2 2 2 2 6 2 2 6 6 2 2 3 2 2 6 2 2 2 3 3 2 2 2 2 2 2
## [12173] 2 2 2 3 6 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2
## [12207] 2 2 3 3 2 2 2 2 2 6 2 2 2 3 3 2 2 2 2 5 2 2 2 2 5 6 2 2 2 2 2 2 2 2
## [12241] 2 6 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 6 3 6 2 2 2 2 2 2 2 2 2
## [12275] 6 6 2 2 2 2 3 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 6 2 2 2
## [12309] 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 6 3 2 2 2 6 6 6 6 6 6 6 6
## [12343] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2
## [12377] 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 6 2 2 2 3 3 2 2 2 2 2 6 2 2 2 6 6 2 2
## [12411] 2 6 6 6 6 6 6 6 6 2 6 6 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 6 2 2 2
## [12445] 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2
## [12479] 2 2 2 2 3 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 6 5 2 2 2 5
## [12513] 6 6 6 2 2 2 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6
## [12547] 6 6 6 6 6 2 2 2 2 2 6 6 6 6 6 6 2 6 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2
## [12581] 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 6 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2
## [12615] 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 6 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2
## [12649] 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 6 2 2 2 2 6 2 6 2 6 2 2 3 2 2 2 3 2
## [12683] 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 6 6 6 2 2 2 6 6 6 6 6 6 6 6 6 6
## [12717] 2 2 2 2 2 5 2 2 3 2 5 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 6 2 2 6 2
## [12751] 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 6 2 6 6 3 2 2
## [12785] 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 6 2 6 6 6 2 3 2 2 2
## [12819] 2 2 2 2 2 5 2 5 2 2 6 2 2 6 2 6 2 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 5
## [12853] 2 2 2 2 3 2 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2
## [12887] 6 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5
## [12921] 2 2 2 5 5 2 2 2 6 2 2 2 6 6 6 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 3 2 6 6
## [12955] 6 6 6 6 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 6 6
## [12989] 6 6 6 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3
## [13023] 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 6 2 6 3 2 2 2 2 1 2 2 2 2 3
## [13057] 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 5 5 5 5 3 2 2 2 2 2 2 2 2 2 6 6
## [13091] 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 3 3 2
## [13125] 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 3 2 2 2 2 3 2 2
## [13159] 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 6 6 6 6 6 2 6 2 6 2 6 2 2 2 6 6 2 2 2
## [13193] 2 3 2 2 2 2 6 2 2 2 6 6 6 6 6 6 2 6 2 2 2 2 3 3 3 6 6 3 3 3 2 2 2 2
## [13227] 2 3 3 2 6 6 6 2 2 2 2 2 2 2 2 6 6 2 2 3 2 2 2 2 2 2 2 3 6 2 2 2 2 2
## [13261] 2 3 2 2 2 3 2 2 6 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 6
## [13295] 2 2 6 2 6 2 6 6 6 6 6 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 5 2 2
## [13329] 5 2 5 5 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 3 2
## [13363] 2 6 2 2 2 2 2 2 2 2 2 3 3 3 2 1 5 2 2 2 2 2 2 5 2 2 2 2 2 2 3 6 2 2
## [13397] 6 6 2 2 2 2 2 6 6 6 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2
## [13431] 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 6 2 2 2 2 2 1 2 2 2 2 1
## [13465] 2 2 6 6 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 3 6 2 2 2 2 6 6 6 6 6 6 6 2
## [13499] 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 2 6 6 6 2 2
## [13533] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 3 6 6 3 2 2 2
## [13567] 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 6 3 3 2 2 2 2
## [13601] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2
## [13635] 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [13669] 2 2 6 6 2 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6
## [13703] 6 6 6 6 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2
## [13737] 6 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 6 6 6 6 6 6 6 3 2 2 2 2 2 3 6 2 2
## [13771] 6 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2
## [13805] 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 5 6 2 2 6 2 2 2 2 2 2 2 2 2 6 2
## [13839] 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 6 2 3 6 2 2 2 2 2 3 2 3 2
## [13873] 2 2 2 2 3 6 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 6
## [13907] 6 2 6 2 6 6 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2
## [13941] 2 2 2 3 2 2 2 3 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 6 2 6 6 6 6 2 2 2 2
## [13975] 2 2 2 2 2 6 6 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2
## [14009] 2 2 2 2 6 3 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [14043] 2 2 2 6 6 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 5 5 5 2 2 2 2 3 2 3
## [14077] 2 6 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 6 5 2 3 6 6 6 6 6 6
## [14111] 6 6 6 2 2 6 2 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 6 6 3 2 2 2 2 2 2 2 2 5
## [14145] 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 6 2 6 2 6 2 2 2 2 2 2 2 2 2 3
## [14179] 3 2 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 6 6 6 6 6 6 6 6
## [14213] 2 2 2 2 2 6 6 6 6 3 6 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2
## [14247] 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6 2 2 3 3 3 3 3 3 2 2 2 2 2
## [14281] 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2
## [14315] 2 2 2 2 2 3 2 3 2 6 3 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 6 6
## [14349] 6 6 6 6 6 6 6 2 2 1 2 2 3 2 3 6 6 3 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2
## [14383] 2 2 2 2 3 6 2 2 2 2 2 2 2 3 6 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2
## [14417] 2 2 2 6 6 2 2 2 2 2 2 5 2 6 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2
## [14451] 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 5 2 2 3 2 2
## [14485] 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 6 2 2 2
## [14519] 2 6 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3
## [14553] 3 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 6 6 6 6 6 6 6
## [14587] 2 2 2 3 2 6 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 6 6 6 6 6 6 6 2
## [14621] 2 2 2 2 5 2 2 2 1 3 2 2 5 2 2 5 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2
## [14655] 2 2 2 2 2 3 2 2 3 2 4 2 2 2 2 2 2 5 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [14689] 6 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3
## [14723] 3 3 3 3 3 5 3 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 3 6 2 2 6 3 6 2 2 2 2 2
## [14757] 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 6 6 6 6 6 2 2 2 6 6 6 2 2 5 5 5 5
## [14791] 5 5 2 2 2 2 2 6 6 6 6 6 6 3 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 3 2 2
## [14825] 2 6 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2
## [14859] 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 6 3 3 6 6 6 6 2 2 2 2 2 2 2 6 2
## [14893] 6 2 2 2 2 3 2 2 2 2 6 2 3 2 2 2 2 2 2 2 6 2 2 6 2 2 6 3 6 2 3 2 2 2
## [14927] 2 6 2 6 2 2 6 2 2 2 2 2 2 6 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 5 6
## [14961] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 6 6 2 2 2 5 2 3 2 2 2 3 3 2 6 2
## [14995] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2
## [15029] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 1 2 2 3 2 2 2 2 2 2 2 2 2 2 2 6 6 2 6 2
## [15063] 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 6 3 3 2 2 2 2
## [15097] 2 2 2 2 2 3 3 2 2 2 2 2 6 3 2 2 3 3 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2
## [15131] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3
## [15165] 3 3 3 3 3 2 2 2 2 2 2 6 6 2 6 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2
## [15199] 2 2 6 6 2 2 2 2 6 6 2 2 3 2 2 2 2 2 2 2 2 2 2 6 3 6 2 6 2 2 2 2 2 2
## [15233] 2 6 2 2 2 6 2 2 2 2 2 2 6 3 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6
## [15267] 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 6 2 2 6 2 2 2 2 2 2 2
## [15301] 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 6
## [15335] 2 2 2 2 2 2 3 3 6 6 3 2 2 2 5 3 3 3 3 3 5 3 2 2 2 2 2 3 2 2 2 2 2 2
## [15369] 2 2 2 2 2 2 2 3 6 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 3 3 2 2 2
## [15403] 6 6 2 2 2 2 3 3 3 2 2 2 2 2 2 5 2 6 2 3 6 6 6 2 6 6 6 6 6 6 2 2 6 6
## [15437] 6 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2
## [15471] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
## [15505] 6 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 3 2 2
## [15539] 6 6 6 6 6 2 2 6 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 6 2 6 3 2 2 2 2 2 2 2
## [15573] 2 2 6 6 2 2 2 6 2 2 2 2 2 6 6 2 6 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 5 2
## [15607] 2 2 3 2 6 6 6 6 6 6 6 2 2 2 2 6 6 6 6 6 6 6 6 6 6 2 2 6 6 6 6 6 6 2
## [15641] 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 5 2 2 2 2 3 2
## [15675] 6 2 2 6 2 2 2 2 2 6 6 2 2 2 2 6 2 2 2 2 6 6 6 2 2 2 6 2 6 2 2 2 6 6
## [15709] 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 6 4 6 6 6 6 2
## [15743] 3 6 2 2 2 2 2 2 6 6 2 2 6 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 6 6 2 3
## [15777] 2 6 3 6 2 3 3 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 3 2 2 3
## [15811] 2 2 6 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2
## [15845] 2 2 2 6 6 2 6 2 2 2 2 2 2 2 2 3 3 3 2 2 6 2 2 2 2 2 3 2 2 2 2 2 2 2
## [15879] 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2
## [15913] 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 3 2 6 3 3
## [15947] 6 6 6 6 2 2 2 2 2 5 2 3 2 2 5 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 3 2 2
## [15981] 6 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2
## [16015] 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2
## [16049] 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 3 2 3
## [16083] 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 6 2 3 2 6 6 2 2 2 2 2 2 2 2 2
## [16117] 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [16151] 2 6 2 2 2 2 2 2 6 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2
## [16185] 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2
## [16219] 3 2 3 3 2 3 3 2 2 2 1 2 2 2 2 2 2 5 2 2 2 2 2 2 2 2 6 2 2 2 2 1 2 1
## [16253] 2 2 2 2 2 2 2 4 2 2 2 2 2 2 4 2 4 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 6
## [16287] 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 6 6 6 3 6 2 2 2 2 2 2 2
## [16321] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2
## [16355] 2 2 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 4 4 2 2 2 2 6 6 6 6 6
## [16389] 6 6 2 5 2 5 2 5 1 2 2 5 2 2 2 2 2 2 2 5 2 2 2 5 2 2 2 2 2 5 3 2 3 2
## [16423] 3 2 3 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2
## [16457] 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2
## [16491] 2 2 2 2 1 2 2 2 2 5 2 2 2 2 3 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2
## [16525] 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [16559] 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2
## [16593] 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 6 2 6 2 2 6 6 2 2 2 2 6 6 6 6 2 2 2 2
## [16627] 2 2 2 2 2 3 2 2 2 2 2 6 6 2 6 3 6 2 5 2 2 2 3 5 2 3 2 5 2 2 2 2 2 2
## [16661] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 6 2 6 2 2 2 2 6 2 2 2 2 2 2 2
## [16695] 2 2 5 5 2 2 2 2 3 3 3 3 3 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [16729] 2 2 2 2 2 2 2 2 5 5 5 5 5 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2
## [16763] 6 3 2 2 2 2 2 6 2 3 3 2 2 2 5 5 2 2 2 2 2 2 2 5 2 2 2 2 2 6 2 2 6 6
## [16797] 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 5 3 5 5 5 5 2
## [16831] 2 2 2 2 2 2 2 2 6 2 2 2 2 3 2 2 6 6 2 6 2 2 2 2 2 2 2 2 2 2 6 6 3 2
## [16865] 2 2 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 2 2 2 2 2
## [16899] 2 2 2 2 2 2 2 6 6 2 2 2 3 2 6 6 6 6 6 3 2 6 2 3 2 2 2 2 2 2 2 2 2 2
## [16933] 2 2 2 2 2 6 6 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [16967] 2 2 2 2 2 6 6 2 2 2 2 2 6 6 2 2 2 6 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2
## [17001] 2 6 2 2 6 6 2 2 2 2 6 2 3 2 6 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 6 6 6 6
## [17035] 6 6 6 6 6 2 2 2 2 1 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 3 2
## [17069] 2 2 2 6 2 6 2 2 2 6 6 6 6 6 6 2 6 6 2 2 2 2 2 2 2 6 2 2 6 6 2 2 6 2
## [17103] 2 2 2 2 2 2 2 5 2 2 2 2 2 3 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 6 2 2 2
## [17137] 2 6 2 2 2 1 2 2 2 6 2 2 6 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 6 2 6 2
## [17171] 3 2 2 2 2 2 6 6 6 2 6 6 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 6 2 2 2 6
## [17205] 2 2 2 2 2 2 2 2 2 6 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2
## [17239] 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 5 2 2 2 2 2 2 2 5 6 6
## [17273] 6 6 6 6 6 6 6 6 6 2 2 6 2 2 3 3 6 3 3 3 2 2 6 2 2 2 2 2 2 2 2 2 2 2
## [17307] 2 2 2 2 2 2 5 5 2 2 2 2 2 2 2 2 2 6 2 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2
## [17341] 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 2 5 2 2 2 2 2 2 2 6 2 2 2 2 2 2
## [17375] 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2
## [17409] 2 2 3 3 3 2 2 2 2 2 5 5 2 4 2 2 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2
## [17443] 2 2 6 2 2 3 3 2 3 3 2 6 3 6 3 2 2 2 2 2 2 2 2 3 2 6 2 2 6 2 2 6 2 2
## [17477] 2 6 2 2 2 2 6 1 2 6 2 6 5 2 2 2 2 2 2 2 2 3 2 3 3 2 6 6 6 6 6 6 6 6
## [17511] 6 6 2 2 2 6 2 2 2 2 2 2 2 2 3 6 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 6
## [17545] 2 2 2 2 2 2 2 2 2 3 6 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 5 2 2 2 2 2 3 2
## [17579] 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 6 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2
## [17613] 2 2 2 2 2 2 2 1 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 6 2 2 2
## [17647] 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 3 3 3 3 3 3 2 2 2
## [17681] 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [17715] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2
## [17749] 2 2 2 6 2 2 2 2 5 2 5 5 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 6 6 6 6 6 6 6
## [17783] 6 6 6 6 6 2 2 2 2 2 2 2 2 3 3 3 2 2 5 6 6 6 6 6 6 6 3 2 2 2 2 2 2 2
## [17817] 2 3 2 3 2 2 1 2 6 3 2 2 3 6 6 2 2 2 2 2 2 2 3 6 6 6 2 2 2 2 2 2 2 2
## [17851] 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [17885] 2 6 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 6 6
## [17919] 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 6 2 2 6 2 6
## [17953] 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 2 2 6 2 2 2
## [17987] 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 2 2 6 6 2 2 2 3 2 2 2 2 2 3 2 2 2
## [18021] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 6 6 6 6 6 2 2 6 2 2 6
## [18055] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2
## [18089] 6 2 2 6 2 2 2 2 6 6 6 6 6 6 6 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [18123] 2 2 2 2 6 6 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 3 2 2 2 2
## [18157] 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 6 6 6 2 6 6 2 2 2 6 2 2 2
## [18191] 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 6 2 6 2 6 2 6 6 2 2 2 2 2 3 2 2
## [18225] 3 3 6 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 3 2 3 2 2 6 2 2
## [18259] 5 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 5 1 2 2 2 5 2 2 2 2 2 2 2 2 2 2 3
## [18293] 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 2
## [18327] 2 2 2 2 2 2 2 2 6 3 6 2 2 2 2 2 2 3 2 6 3 2 2 2 2 2 6 2 3 2 2 2 2 2
## [18361] 2 6 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 6 2 2 3 2 2 2 2 2 2 3 2 6 6 6 6 3
## [18395] 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 2 6 6 2 2 6 2
## [18429] 2 2 6 2 2 2 6 2 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2
## [18463] 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2
## [18497] 2 3 2 2 2 3 2 2 2 2 2 6 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2
## [18531] 2 2 2 2 6 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 3 3 2 2 2
## [18565] 2 2 2 5 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 6 6
## [18599] 6 6 6 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 3 2 6 2 2 6
## [18633] 6 6 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 1 2 2 5 1 5 2 6 6 6 6 6 6 2 2 2
## [18667] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 3 2 2 2 2 2 2 2 2 6 2 6
## [18701] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 5 2 2 2 2 2 2 2 2 3 2 3 2
## [18735] 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 6 6 6 2 2 6 2 6 6 2 2 5 2 5 2 2
## [18769] 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2
## [18803] 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 4 3 2 2 6 6 6 2 6 6 2 2 2 2 2 2 2
## [18837] 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2
## [18871] 2 2 2 5 2 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2
## [18905] 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2
## [18939] 2 2 2 2 2 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 6 6 6 2 3 2 2
## [18973] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 6 2 6
## [19007] 6 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 3 2 2 2
## [19041] 3 2 2 2 3 2 2 5 3 5 5 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 2 6
## [19075] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 6 2
## [19109] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 5 2 2 2 5 5 5 5 5 5 5 5 5 2 2
## [19143] 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2
## [19177] 2 2 2 2 2 2 6 3 2 2 2 2 2 3 3 6 6 6 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3
## [19211] 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2
## [19245] 2 2 2 2 3 6 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [19279] 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2
## [19313] 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 6 2 2 2 2 3 2 6 2 2 2 2 2 2 2 6
## [19347] 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 3 2 6 2 2 2
## [19381] 2 6 2 6 2 2 6 2 2 2 2 2 6 2 2 2 2 6 6 6 6 6 6 2 2 1 1 2 5 3 5 5 5 5
## [19415] 5 2 2 6 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2
## [19449] 2 2 2 2 2 6 2 2 2 6 2 2 2 6 6 6 6 6 6 6 6 6 2 3 3 2 2 3 2 2 2 3 3 2
## [19483] 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 6 2 2 2 2 2 2 2 2 2 5 6 2 2
## [19517] 6 2 2 6 2 6 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 5 5 5 2 2 2
## [19551] 2 2 2 2 2 2 3 2 2 5 2 5 2 2 2 2 3 5 5 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
## [19585] 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2
## [19619] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2
## [19653] 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 3 2 2 2 2 6 6 6 6 6
## [19687] 6 6 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 6 6 6 2 2 6 2 2 2 2 6 2 2 2 2 2
## [19721] 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 6 2 2 2
## [19755] 6 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 6 6 6 6 6 6 6 6 2 2 2 6 2 2 2 2 2 6
## [19789] 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 6 2 6 2 2 2 6 2 2 2 6 2 2 2
## [19823] 2 2 2 2 2 2 2 2 6 6 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2
## [19857] 2 2 2 2 2 3 2 6 3 3 2 2 2 2 2 2 6 6 2 2 2 2 2 6 3 2 3 2 2 3 3 3 2 2
## [19891] 2 2 2 2 2 2 2 2 6 2 6 6 6 6 6 6 6 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [19925] 6 6 6 6 6 6 6 6 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 6 6 6 2 2 6 2 2 2 2 2
## [19959] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 6 3 2 2 2 6 6
## [19993] 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 3 2 2 3
## [20027] 2 3 2 3 2 2 2 2 2 2 3 3 3 6 3 3 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 6 2
## [20061] 2 2 2 2 2 2 2 2 2 2 2 3 2 3 6 2 6 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2
## [20095] 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 6 6 6 6 6 2 6 2 2 2 2 6 2 2 2 2
## [20129] 2 2 2 2 5 6 6 6 6 6 6 6 3 2 2 2 2 2 6 2 2 6 2 6 2 2 2 5 3 2 2 2 3 2
## [20163] 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2
## [20197] 2 2 6 2 2 2 2 2 2 2 5 2 2 2 2 2 6 2 2 3 3 3 3 3 2 2 2 2 3 2 5 3 3 2
## [20231] 2 2 2 6 2 2 6 2 2 2 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 6 6 3 2 6 6 2 2
## [20265] 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [20299] 2 2 2 2 2 3 3 3 2 2 2 2 2 6 2 2 2 6 6 2 2 2 2 2 2 2 2 3 6 3 2 2 2 2
## [20333] 2 2 2 2 6 2 6 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 3 2 2 6 6 6 2 2 2 2 6
## [20367] 6 6 6 6 6 6 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 6 2 2 2 2 3 2 2 2 2 2 3 2
## [20401] 2 2 3 2 2 2 6 6 6 6 6 6 6 6 6 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 6 2
## [20435] 2 2 2 6 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 6 6 6 6 6
## [20469] 6 6 6 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 6 2 2 2 6 6 2 2 2 2 2 2 2 2 2
## [20503] 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6 6 6 6 6
## [20537] 6 2 2 2 2 2 3 2 2 2 3 2 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 6 6 6 6 6
## [20571] 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 3 6 3 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2
## [20605] 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2
## [20639] 6 6 2 6 6 2 2 2 2 2 2 2 2 2 6 2 2 6 3 3 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [20673] 2 2 2 2 2 2 3 6 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [20707] 2 2 2 2 6 6 6 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 6 2 2 2 6 2 6 2 6 2 2 2
## [20741] 6 2 2 2 2 2 2 2 6 6 6 6 6 6 3 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 5 2 2 2
## [20775] 2 5 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2
## [20809] 2 2 2 2 2 2 2 2 2 3 2 6 3 6 3 2 2 2 2 6 6 2 2 2 6 6 2 2 2 2 2 2 2 6
## [20843] 6 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6
## [20877] 2 6 2 2 2 2 2 6 2 6 2 2 6 2 2 2 3 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 6 2
## [20911] 6 2 2 2 2 2 2 2 2 3 6 6 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 6
## [20945] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 6 2 2 2 2 2
## [20979] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [21013] 2 2 3 2 2 2 2 2 6 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2
## [21047] 6 2 2 2 2 2 3 2 2 2 2 2 2 2 6 2 2 2 6 2 2 3 3 2 3 2 2 3 3 6 2 2 2 2
## [21081] 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 6 2 2 2 2 2
## [21115] 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2 6 3 2 2 2 2 2 2 6
## [21149] 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2
## [21183] 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 5 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2
## [21217] 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 6 2 2 3
## [21251] 2 6 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2
## [21285] 6 2 2 2 2 2 2 2 2 6 6 3 2 2 2 3 2 3 2 2 2 3 6 2 2 2 2 2 2 2 2 5 2 6
## [21319] 2 2 2 2 2 2 5 6 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2
## [21353] 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2
## [21387] 2 2 2 2 2 3 3 2 3 2 2 2 2 2 6 2 6 6 6 3 2 2 2 2 6 2 2 2 2 6 2 2 2 2
## [21421] 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 3 3 6 2 2 2 2
## [21455] 6 6 6 6 6 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2
## [21489] 3 2 6 6 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 6 6 2 2 2 2 2 2 6
## [21523] 6 3 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 3 3 2 2 2 2 2 6 6
## [21557] 2 2 2 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 6 2 2 3 2 2
## [21591] 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 3 6 6 6 6 2 2 6 2 2 2 2 2 2
## [21625] 2 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 3 3 3 2 2 5 2 2 2 2 2 2 2 2 2 6
## [21659] 5 2 2 2 3 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 6 6 6 6 3 3 6
## [21693] 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 6 6 6 5 6 2
## [21727] 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 6 6 6 6 2 2
## [21761] 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 3 2 3 2 2 2 2 2 2 2 2
## [21795] 2 2 2 3 2 6 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
## [21829] 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 6 2 2
## [21863] 2 2 2 2 2 6 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 3 3 3 2 2 2 2 2 2
## [21897] 2 2 6 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [21931] 2 2 6 6 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2
## [21965] 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2
## [21999] 2 2 2 2 2 2 2 5 5 5 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 6
## [22033] 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2
## [22067] 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 3 2 2 2
## [22101] 2 2 2 2 2 2 2 6 6 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2
## [22135] 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2
## [22169] 2 2 6 2 2 6 6 6 2 2 2 6 2 6 2 2 2 6 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2
## [22203] 2 2 5 2 2 3 5 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 5 5 2 3 5 5 2 2 2 2 2
## [22237] 2 2 2 6 3 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2
## [22271] 2 2 3 3 3 2 2 2 2 2 2 5 2 3 2 3 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2
## [22305] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 2 2 6
## [22339] 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2
## [22373] 6 6 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3
## [22407] 3 2 2 2 2 2 2 2 2 2 1 6 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 2 2 2 2 2 2 5
## [22441] 2 2 2 2 6 2 2 2 2 6 2 2 2 3 2 2 6 6 2 6 6 6 2 2 2 2 2 2 2 2 3 6 6 2
## [22475] 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 6 6 2 3 2 3 2 2 2 2 2 2 3 2 2
## [22509] 2 2 2 2 2 6 6 6 3 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2
## [22543] 6 2 6 3 2 2 2 2 2 2 2 2 2 2 5 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2
## [22577] 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 5 5 2 2 2 2 2
## [22611] 2 2 2 2 6 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 6 2 2
## [22645] 2 2 6 2 6 2 2 2 2 2 6 6 6 2 6 3 2 2 2 2 2 6 2 2 2 2 2 2 6 2 6 6 2 2
## [22679] 2 2 6 2 2 2 2 2 2 5 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 6 2 2
## [22713] 2 2 2 2 6 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2 2 6 6 2 3 3 2 2 2 2 2 2
## [22747] 2 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 5 5 2 2 2 6 2 2 2 2 2 2
## [22781] 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6
## [22815] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2
## [22849] 2 2 2 2 2 2 6 6 6 3 2 2 2 2 2 2 2 2 2 3 3 2 2 6 6 6 3 6 3 2 2 2 2 2
## [22883] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2
## [22917] 2 2 2 3 2 3 2 3 2 2 3 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6
## [22951] 6 6 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 3
## [22985] 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2
## [23019] 2 6 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 5 6 2 6 3 6 6 3 6 3 2 2 2 2 2 2 2
## [23053] 2 6 2 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 5 2 2 2 2 2 5 5 2 2 2 2 2 2 6 6
## [23087] 6 6 6 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 6 2 2 2 3 2 2 2 2 2
## [23121] 3 3 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 5 2 2 2
## [23155] 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2
## [23189] 2 2 2 2 2 2 2 6 6 6 6 2 2 1 2 2 2 2 2 2 5 2 2 2 2 2 2 2 2 6 6 2 2 2
## [23223] 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 6 2 2 2 2 2 3 2 2
## [23257] 2 2 2 2 2 2 2 6 3 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2
## [23291] 2 2 2 2 2 5 5 5 2 2 2 2 2 2 2 2 2 6 6 2 5 2 2 2 2 2 2 2 5 2 2 2 2 2
## [23325] 2 2 2 2 6 2 6 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [23359] 2 2 2 2 2 2 2 2 2 2 2 3 2 2 6 6 6 2 2 2 2 2 2 2 2 6 2 3 2 2 2 5 2 2
## [23393] 2 2 3 2 5 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 5 3 6 2 3 2 2 2 2 2 2 2 2 2
## [23427] 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [23461] 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 3 2 2 3
## [23495] 3 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 6 2
## [23529] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 3 3
## [23563] 2 2 2 2 2 2 3 2 3 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2
## [23597] 2 2 2 2 2 2 6 2 3 3 2 6 2 2 2 2 2 6 2 6 3 2 2 6 6 6 6 6 6 6 6 6 2 2
## [23631] 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 3 3 2 2 3 6 6 2 2 2
## [23665] 2 2 3 2 2 3 3 3 2 2 6 2 2 2 2 2 6 2 6 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2
## [23699] 2 2 3 2 6 2 3 2 2 2 2 2 6 6 6 6 6 6 2 2 5 2 2 2 2 3 5 3 2 2 2 2 2 2
## [23733] 2 2 2 6 6 6 2 2 2 2 2 2 3 2 3 2 2 2 2 6 2 2 2 2 2 6 6 6 2 2 2 6 2 2
## [23767] 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 3 2 2 6 6 2 2 2 2 3 6 6
## [23801] 6 6 6 6 2 2 2 2 2 6 2 2 2 2 6 2 3 6 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2
## [23835] 2 2 2 2 2 2 2 2 6 6 6 6 3 2 2 2 2 2 2 2 6 2 6 2 2 2 3 2 6 6 6 6 6 6
## [23869] 6 3 2 2 6 2 2 6 2 2 2 6 3 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 6
## [23903] 6 2 6 3 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 3 3 3
## [23937] 2 2 6 6 6 6 6 6 6 6 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 6 3 2
## [23971] 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 6 6 6 6 6 6 2 2 2 2 6 6 6 6 6 6 6 2 5
## [24005] 2 2 2 5 2 2 2 2 2 2 2 2 2 2 2 3 3 6 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2
## [24039] 2 6 6 6 6 6 6 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
## [24073] 5 2 3 2 2 2 5 2 2 5 2 2 5 5 5 2 2 2 2 3 2 2 2 2 2 2 5 2 2 2 2 2 2 2
## [24107] 2 2 2 6 6 3 2 2 2 2 2 6 6 2 6 6 6 2 2 3 2 2 2 2 2 3 3 3 2 2 2 6 2 2
## [24141] 3 2 2 6 6 2 2 2 2 3 3 3 3 3 3 2 2 6 2 6 2 2 6 2 2 6 6 2 2 2 2 2 2 2
## [24175] 2 6 3 6 2 2 2 2 2 2 2 2 2 2 2 2 3 3 5 2 3 2 2 2 3 2 2 2 2 6 6 6 6 6
## [24209] 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6
## [24243] 6 2 2 6 6 6 6 6 6 6 6 6 6 2 3 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 3 2
## [24277] 6 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 6 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6
## [24311] 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 6 2 6 2 2 2 6 2 2 2 2 2 2 6 2
## [24345] 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 3 2 2 3 2 2 2 6 6 6 6 6 6 2 2 2 2
## [24379] 2 2 2 6 2 2 6 6 6 2 2 2 2 2 2 2 2 2 5 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [24413] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2
## [24447] 2 2 2 2 2 2 6 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 6 6 2 2
## [24481] 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [24515] 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2
## [24549] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 5 5 3 5 2
## [24583] 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 3 2 3 2 5 2 2 2 2 2 2 2 2 2
## [24617] 2 2 2 2 3 2 2 2 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6
## [24651] 2 2 2 2 2 2 2 2 2 6 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [24685] 2 2 2 2 2 3 2 2 3 6 6 2 2 6 2 2 3 2 2 2 3 6 2 2 2 2 3 2 2 2 2 2 3 2
## [24719] 2 2 2 2 6 2 2 6 6 6 2 2 2 2 5 2 3 2 5 2 3 2 2 2 2 2 2 2 6 2 6 2 2 6
## [24753] 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2
## [24787] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
## [24821] 6 6 2 2 2 2 2 3 2 2 2 2 3 6 6 6 6 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [24855] 2 2 2 6 6 6 2 2 6 6 6 6 6 6 6 2 6 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2
## [24889] 2 2 2 6 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6
## [24923] 6 6 6 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 3 2 2 3 2 6 2 2 2 6 6 6
## [24957] 2 2 6 2 2 2 6 2 2 3 2 3 6 6 2 2 6 2 2 2 3 2 2 2 2 1 2 2 2 2 2 2 2 5
## [24991] 2 1 2 2 2 2 2 2 2 2 3 6 3 2 2 2 2 6 6 2 2 6 2 2 2 2 2 2 2 3 2 2 2 3
## [25025] 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 6 6 2 2 6 2 2 2 6 2 2 2 2 2
## [25059] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 3 3 6 3 3 3 3 3 2
## [25093] 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 5 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [25127] 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3
## [25161] 3 3 3 3 3 3 5 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2
## [25195] 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 6 2 2 2 2 2 2 2 2 3 2 3 2 6 6 6 6
## [25229] 6 6 6 6 6 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2
## [25263] 2 2 6 2 6 2 2 2 2 2 2 2 3 3 6 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 5 2 2 2
## [25297] 2 5 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2
## [25331] 2 3 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2
## [25365] 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 6 2 2 2 3 2 2 2 2 2 3
## [25399] 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 5 2 2 2 2 5 3 2
## [25433] 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 6 6 6 6 6 6 2 2 3 2 2 3 6 2 2 2 2 2
## [25467] 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 1 3 2 3
## [25501] 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 6 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 6
## [25535] 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2
## [25569] 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2
## [25603] 2 3 2 2 6 2 2 2 2 3 2 3 3 2 2 3 2 2 2 6 2 2 3 2 2 6 2 2 2 2 2 2 2 2
## [25637] 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2
## [25671] 2 6 2 6 2 2 2 2 2 2 3 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [25705] 2 2 6 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 6 2 2 6
## [25739] 6 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 6 6 2 2 2 2 1 2 2 2 2 2 3
## [25773] 2 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 6 2 2 6 2 2 6 6 2 2 2 2 3 2 2
## [25807] 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 3 2
## [25841] 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 3 2 5 2 2
## [25875] 6 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2
## [25909] 2 2 6 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 4
## [25943] 2 5 2 2 2 1 2 2 5 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [25977] 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2
## [26011] 6 6 6 6 2 2 2 2 2 2 3 2 2 6 3 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 6 6
## [26045] 2 2 6 2 2 3 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 2 3 3 2 6 2 5 2 2 2 2
## [26079] 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 6 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6
## [26113] 2 6 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 3 2 3
## [26147] 6 2 2 2 2 2 2 6 2 6 6 6 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6
## [26181] 2 2 2 2 2 2 5 2 2 3 2 2 6 2 2 2 2 2 2 2 2 6 2 6 6 6 6 6 6 6 6 6 6 2
## [26215] 2 2 2 2 2 2 3 2 2 3 5 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2
## [26249] 2 6 6 6 6 6 6 6 5 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 2 2 2
## [26283] 3 3 3 3 2 3 6 3 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2
## [26317] 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6
## [26351] 2 2 2 2 6 6 2 2 2 2 2 3 2 2 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6
## [26385] 6 6 6 6 6 2 2 2 3 6 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 6
## [26419] 2 2 6 2 2 2 2 2 2 2 2 2 2 5 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [26453] 2 3 3 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 6 6 6 2 6 2 2 5 2 2 2 3 2 2
## [26487] 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3
## [26521] 3 2 3 3 3 3 3 3 3 3 3 5 2 2 6 2 2 2 2 2 2 2 3 2 2 2 2 2 5 3 2 2 2 2
## [26555] 2 2 2 6 6 3 2 2 6 2 2 2 2 2 2 2 2 2 3 6 3 2 2 2 2 2 2 2 2 2 2 6 6 2
## [26589] 2 6 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2
## [26623] 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 6 2 2 2
## [26657] 2 2 2 2 2 3 6 6 2 2 6 2 2 2 2 2 2 2 6 2 5 2 2 2 2 2 2 5 2 2 2 2 2 2
## [26691] 2 2 2 6 6 2 6 2 2 2 6 2 6 2 6 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 3 3 2 2
## [26725] 5 2 2 2 5 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 3 2 2 2 6 6 2 2 2 2 2 2 2
## [26759] 2 2 6 2 6 2 2 2 2 2 2 2 2 3 2 3 2 2 6 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2
## [26793] 2 2 6 2 2 2 2 2 2 2 2 2 3 6 6 2 2 2 2 2 2 2 2 5 2 5 2 2 2 6 2 2 2 2
## [26827] 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6 6 6 6 6 2 2 6 6 6 2 2 2 2
## [26861] 3 6 2 2 2 2 2 2 2 2 5 2 5 2 2 2 6 2 2 2 2 6 6 6 2 3 2 2 2 3 3 3 2 2
## [26895] 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 5 2 2 2 3 2 2 2 2 2 2 2 2 6 6 6
## [26929] 2 2 2 2 2 2 2 2 2 2 6 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2
## [26963] 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2
## [26997] 2 2 2 2 5 2 3 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2
## [27031] 2 2 3 3 3 3 3 1 2 6 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 3 2
## [27065] 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2
## [27099] 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2
## [27133] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 1 2 2 2 2 2 2 2
## [27167] 2 3 3 3 2 6 6 6 6 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [27201] 2 6 6 2 2 2 2 2 6 6 6 6 6 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 5 2 3 2 2 6
## [27235] 2 2 2 2 2 2 2 2 2 1 2 2 1 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 2 2 2
## [27269] 6 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3
## [27303] 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2
## [27337] 2 2 2 2 2 2 6 2 3 2 2 2 6 2 2 2 2 2 6 6 2 2 2 3 3 3 3 3 3 3 3 3 2 2
## [27371] 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 3 3 6 2 2 3 2 2 2 2 2
## [27405] 2 2 2 2 2 2 2 6 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [27439] 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2
## [27473] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 5 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2
## [27507] 2 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2
## [27541] 2 2 2 2 2 2 2 6 2 2 2 3 2 6 3 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2
## [27575] 6 6 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 3 2 2 5 2 2 2 2 2 2 2 2 2
## [27609] 2 2 2 2 6 6 6 6 2 6 6 6 6 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 6 2
## [27643] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3
## [27677] 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6 6 3 2
## [27711] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 6 2 2 2 2 6 6 2 2
## [27745] 2 2 2 2 2 2 2 2 3 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2
## [27779] 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 1 4 2 2 2 2 2
## [27813] 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 6 2 3 2 2 2 2 6 6 2 2 2 2 2 2 6 6
## [27847] 6 6 6 6 6 6 2 2 2 2 3 6 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [27881] 2 2 2 6 6 2 3 3 3 3 3 3 3 3 3 3 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3
## [27915] 3 6 6 6 2 5 2 3 2 5 2 3 3 3 5 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2
## [27949] 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 3 6 2 2 2 2 2 2 6 2 2 2 2 2 5 2 2 2
## [27983] 2 3 2 6 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 3 2
## [28017] 3 2 2 2 3 3 3 3 3 3 5 5 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 6 6 2 3
## [28051] 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 2 6 6 6 6 2
## [28085] 6 6 2 2 6 2 2 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2 6 6 2 2
## [28119] 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 5 2 3 2 2 2 2
## [28153] 2 2 2 2 2 5 2 5 2 2 2 2 6 6 6 6 6 6 2 2 2 6 6 6 6 2 6 2 2 2 2 2 2 2
## [28187] 6 2 6 6 2 6 6 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [28221] 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 6 2
## [28255] 2 2 6 6 2 2 2 2 2 3 2 2 2 6 2 2 2 2 2 6 2 2 2 6 2 6 2 2 3 2 2 2 3 5
## [28289] 2 3 5 3 2 2 2 2 6 6 6 6 6 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 6
## [28323] 6 6 6 2 2 2 2 6 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [28357] 6 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 6 6 2 6 2 2 2 6 2 2 2 2
## [28391] 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 3 6 2
## [28425] 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 6 2 2 2 6 2
## [28459] 2 2 2 2 2 2 2 2 2 6 2 5 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 6 2 2 2 6 2 2
## [28493] 2 2 2 2 3 2 2 2 6 2 2 2 2 2 2 3 2 2 6 6 2 2 2 2 2 2 3 2 2 3 2 2 2 2
## [28527] 2 2 6 2 2 2 2 6 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 6 6 3 2 2 2 2
## [28561] 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 6 6 6
## [28595] 6 6 6 6 6 6 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 4 2 4 5 2 2 2 2 2 2
## [28629] 2 2 2 2 6 2 2 3 2 2 2 2 3 3 6 5 2 2 2 2 2 2 2 2 2 6 6 2 2 3 2 3 2 2
## [28663] 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 3 3 3 3
## [28697] 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 3 3 3 3 2 2 2 2 2 6 2 2 2 2 2 2
## [28731] 6 6 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 3 2 2 6 6
## [28765] 2 2 2 6 6 6 6 6 6 6 6 6 2 2 6 2 2 2 2 2 2 5 5 2 2 2 2 2 2 2 2 2 6 6
## [28799] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 3 6 6 6 2 2 2 2 2 2 6 6 2 6 2 2
## [28833] 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 3 2 2 3 2 5
## [28867] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 5 2 2 2
## [28901] 2 2 6 3 6 6 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 3 3 3 2 2 6 2
## [28935] 3 2 2 3 3 3 3 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 3 2 2 2 2
## [28969] 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2
## [29003] 2 2 2 2 6 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2
## [29037] 2 2 6 3 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2
## [29071] 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3
## [29105] 2 6 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 6 3 3 2 2 2 2 2 2 2 2 6 3
## [29139] 3 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6
## [29173] 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 6 2 6 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2
## [29207] 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 3 2 3 2 2 2 2 3 2 2 2 2 2 2 6
## [29241] 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 3
## [29275] 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2
## [29309] 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2
## [29343] 2 2 2 3 2 2 6 2 6 2 2 2 2 2 6 2 6 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 6
## [29377] 6 6 2 6 6 2 3 2 2 6 6 6 6 2 2 2 2 2 2 2 3 3 3 3 3 3 5 2 2 2 2 2 2 2
## [29411] 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 6 6 6 6 2 2 2 6 2 2 2 2 2
## [29445] 2 6 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 6 2 6 2 6 2 2 2 2 2 2 2
## [29479] 2 2 2 6 6 6 6 6 6 6 2 6 6 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 6
## [29513] 2 2 2 2 2 2 3 3 3 3 3 3 6 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 3 2
## [29547] 2 3 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 3 3 2
## [29581] 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2
## [29615] 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 2 3 2 2 2 2 2 2
## [29649] 2 2 2 3 2 2 2 3 2 2 2 3 5 5 5 3 5 5 3 2 2 2 2 2 6 6 6 6 6 6 2 2 3 2
## [29683] 3 6 3 6 3 3 3 2 2 2 2 5 2 2 2 2 3 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [29717] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3
## [29751] 6 2 6 3 3 2 2 2 2 2 6 2 2 2 2 6 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 6 6
## [29785] 6 6 6 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 5 2 1 2 3 2 6 2 2 2 2 2 2 5 2
## [29819] 2 2 5 2 2 2 2 2 1 2 2 3 2 5 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6
## [29853] 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 6 6
## [29887] 6 2 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 6 2 2 2 2 3
## [29921] 2 2 2 3 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 5 2 3 2 2 2 2 2 2 2 2 2 2 2 2
## [29955] 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 6 2 2 3 2 2 2 2 2 2 3 3 3 3 3 6 3 2 2
## [29989] 2 2 2 2 6 2 2 2 2 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 6 2 2 2 6 2 2 5 2
## [30023] 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
## [30057] 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [30091] 6 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2
## [30125] 2 2 2 6 6 2 2 2 2 2 6 2 2 3 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 3 2
## [30159] 2 2 5 5 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2
## [30193] 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 3
## [30227] 3 2 2 2 6 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 3
## [30261] 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 6 6 6
## [30295] 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 6 6 3 2 2 2 2 3 2 2
## [30329] 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 1 2 1 2 2
## [30363] 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 6 6 6 6 6 6 6 2 2 2
## [30397] 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2
## [30431] 2 2 2 6 6 6 6 2 3 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2
## [30465] 2 2 3 2 2 6 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 5 5 5 2 5 5 2 2 6 3 2 6
## [30499] 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [30533] 2 2 2 6 6 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 6 2 2 2
## [30567] 2 2 6 3 3 3 3 3 6 2 3 6 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 6 2 2 2 2 6 2
## [30601] 2 2 2 2 2 2 3 6 2 2 3 3 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 3
## [30635] 3 2 2 6 6 6 6 6 6 2 6 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 2 2 2 2 2
## [30669] 2 2 2 2 2 2 2 2 6 6 6 2 2 2 5 2 2 2 2 2 5 2 2 6 6 6 6 6 6 2 6 6 6 2
## [30703] 2 2 2 2 2 2 6 2 6 6 2 2 2 2 3 3 3 3 3 5 5 2 2 2 2 2 6 2 2 2 2 6 2 2
## [30737] 2 2 2 2 2 6 2 2 3 2 2 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 6 6 2 2
## [30771] 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 3 2
## [30805] 6 2 2 2 2 6 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 3 6 6 6 6 2 3 2 2 2 2 2
## [30839] 2 2 2 6 6 6 2 2 2 2 2 2 6 2 2 6 2 2 6 6 6 6 2 2 2 2 2 3 2 2 2 2 2 2
## [30873] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 6 2 2 2 2 3 6 6 6 6
## [30907] 6 6 2 2 2 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 3 2 2 2 3 6 2 2 2 2 2 6 2 2
## [30941] 2 2 6 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 6 3 2 2 2 2 2 2 2 2 2 6
## [30975] 6 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 1 2 2 1 1 1 2 2 6 2 2 2 6 2 6 2
## [31009] 2 2 5 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2
## [31043] 2 2 2 2 2 2 2 2 2 6 6 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 6 2 2
## [31077] 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 2 3 2 6 6 2 2 2 2 2 2 2 2 2 2
## [31111] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2
## [31145] 2 2 2 2 2 6 2 6 2 2 6 2 2 2 2 2 2 6 6 2 2 6 6 6 6 6 3 6 6 6 2 2 2 6
## [31179] 2 6 2 2 6 2 2 2 2 2 2 2 5 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [31213] 2 2 6 6 6 6 2 2 6 6 2 2 6 2 6 6 6 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3
## [31247] 2 2 5 2 5 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 5 2 5 2 5 2 2 2 2 2 6 2
## [31281] 2 2 2 6 2 2 6 6 2 6 6 6 6 2 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2
## [31315] 3 2 3 2 2 2 2 2 2 2 2 5 5 5 2 6 2 6 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [31349] 2 2 2 2 2 6 2 2 6 6 2 2 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 3 2
## [31383] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 6 2 2 2 2 2 6 2 2 6 2 6
## [31417] 2 2 2 3 6 6 2 2 6 6 3 2 2 2 2 2 6 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 3 2
## [31451] 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 2
## [31485] 6 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 6 6 3 2 6 6 6 6 6 6 6 6 6 2 2 2 2
## [31519] 2 2 2 2 2 6 5 5 2 2 2 6 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 6 2 6 2 2 2 2
## [31553] 2 2 2 5 2 2 5 2 2 2 2 2 2 2 2 6 5 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [31587] 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6
## [31621] 2 2 2 6 6 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 6 6 2 2 2 2 2 6 6
## [31655] 6 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 3 2 2 2 2 2 6 2 2 2 2 2
## [31689] 2 2 2 2 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2 6 2 2 3 2 6 2 2 2 2 2 2 2 6 2
## [31723] 2 6 2 2 2 2 2 2 6 6 2 2 2 2 3 2 6 6 6 6 6 6 6 6 2 6 6 2 2 2 2 2 2 2
## [31757] 2 2 2 2 2 2 2 3 2 6 3 3 2 2 2 2 6 6 2 6 2 2 6 2 2 2 2 2 6 2 2 2 2 3
## [31791] 2 3 2 3 2 2 2 2 6 3 3 2 2 2 2 2 2 2 6 6 5 3 2 2 2 2 2 2 2 2 2 3 3 2
## [31825] 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 6 2 6
## [31859] 2 6 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 6 2 2 2 2 2 2 6 2 6 2 2 6 2 2 2
## [31893] 2 2 2 2 2 2 2 6 2 2 6 6 6 6 6 6 2 6 2 2 2 2 2 2 3 2 2 6 6 6 2 2 2 2
## [31927] 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2
## [31961] 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 6 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 3
## [31995] 2 6 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2
## [32029] 2 2 3 3 2 2 2 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 2 3 2 3 2 5 2 2 3 6 3 2
## [32063] 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 1 2 2 2 2 2
## [32097] 2 5 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 3 3 6 2
## [32131] 6 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 6 6 6 6 6 6 6
## [32165] 2 3 6 2 2 6 2 2 6 2 2 2 2 2 5 2 5 2 2 2 2 5 2 2 2 2 2 2 2 2 6 3 6 3
## [32199] 6 6 6 6 6 6 2 2 6 6 2 2 2 2 2 2 3 2 6 2 3 2 2 2 2 2 2 6 2 2 2 1 2 2
## [32233] 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2
## [32267] 2 2 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2
## [32301] 2 3 2 2 2 3 3 2 2 6 2 2 2 2 6 6 6 6 2 3 2 2 2 3 2 2 2 3 3 2 2 2 6 2
## [32335] 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 6 2 2
## [32369] 2 2 2 3 6 2 2 2 2 2 2 2 2 3 2 2 6 2 2 2 2 6 2 2 2 2 6 3 6 2 2 2 2 2
## [32403] 2 2 6 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 6 6 6 6 6 6
## [32437] 6 6 3 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 2 3
## [32471] 2 6 2 2 2 6 2 2 6 2 2 2 2 2 2 2 6 6 6 2 2 2 3 3 2 2 2 2 6 6 6 6 6 3
## [32505] 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 6 2 2 2 6
## [32539] 2 2 2 2 2 2 2 2 5 5 5 2 2 2 2 2 2 5 2 2 2 3 2 2 2 2 2 6 2 2 3 6 3 2
## [32573] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2
## [32607] 2 2 2 2 3 2 2 2 6 2 6 2 6 6 6 6 2 6 3 3 2 3 2 2 2 2 2 2 2 2 5 2 2 2
## [32641] 2 2 3 2 2 6 2 6 6 6 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 6 2 6 6 6 2 2 2 2
## [32675] 2 2 2 3 2 5 2 2 2 2 2 2 2 5 6 2 2 2 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2
## [32709] 2 2 2 2 6 6 2 2 2 2 2 1 2 2 1 1 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3
## [32743] 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2
## [32777] 2 2 6 6 2 2 6 6 6 6 6 6 6 6 3 2 2 2 2 2 2 2 2 6 2 6 2 6 2 2 2 2 2 2
## [32811] 2 2 2 2 2 2 2 2 2 6 2 6 6 3 2 2 2 2 2 6 2 6 6 6 6 2 6 2 2 2 6 2 2 2
## [32845] 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 5 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3
## [32879] 3 2 2 2 2 3 3 3 3 3 3 3 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 5 2 5
## [32913] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6 6 6 6 6 6 2
## [32947] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2
## [32981] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 6 2 2 2 6 6 6 6 2 2 6 3 2 2 3
## [33015] 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 6 3 2 3 2 2 2
## [33049] 2 3 2 2 2 2 3 2 2 2 2 2 2 6 2 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 3
## [33083] 6 6 6 6 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 6 2 3 2 2 2 2
## [33117] 2 3 2 2 6 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 6 6 2
## [33151] 2 2 2 2 2 2 2 2 2 2 2 2 2 5 3 2 2 2 2 5 2 3 1 2 2 2 2 2 2 2 2 2 2 2
## [33185] 2 6 6 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3
## [33219] 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 6 6
## [33253] 2 2 2 2 2 2 2 2 6 6 6 6 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 6 2 2 2 2 6
## [33287] 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2
## [33321] 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 6 2 2 6 2 2 2 2 2 2 2 6 2 2 3 6 6 2 2
## [33355] 2 2 2 2 6 2 6 6 6 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 5 2 2 2 5 2 3 2 2 2
## [33389] 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2
## [33423] 5 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2
## [33457] 5 6 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [33491] 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2
## [33525] 2 2 3 3 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2 6 6 6 3 6 2 2 2 2 2 2 2 2
## [33559] 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3
## [33593] 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 6 2 6 2 2 2
## [33627] 6 2 2 6 2 2 2 2 6 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 3 2 3 5 2 2 3 2
## [33661] 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2
## [33695] 2 3 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2
## [33729] 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 5 2 5 5 5 5 5 5 4 2 2 2 2 6
## [33763] 2 6 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [33797] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2
## [33831] 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2
## [33865] 6 2 6 2 6 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 6 6 6 6
## [33899] 6 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 6 2 2
## [33933] 3 3 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 2 2 3 2 2
## [33967] 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 3 2 2 2 2 2 2 2 2 2 2
## [34001] 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 6 2 6 2 2 6 2 2 2 2 2 2 2 6 2 6 6
## [34035] 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 5 2 2 5 2 2 2 2 2 2 2
## [34069] 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6 3 2 2 2 6 6 6 2 2 2 2 2 2 2 2
## [34103] 2 2 2 2 3 2 2 2 6 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2
## [34137] 6 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 6 6 6 2 2 3 6 2 2 6 6
## [34171] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2
## [34205] 6 6 2 2 2 3 2 2 6 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2
## [34239] 2 2 2 3 2 2 3 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2
## [34273] 2 6 2 3 4 2 4 2 2 5 2 2 4 2 4 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2
## [34307] 6 3 2 2 6 6 6 6 3 2 3 2 2 6 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2
## [34341] 6 6 2 2 2 2 2 6 6 2 3 6 3 2 2 2 2 2 2 2 2 3 6 6 2 2 2 2 2 2 2 2 2 2
## [34375] 2 2 2 2 6 6 6 2 2 3 6 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 3 6 3
## [34409] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 6 6 6 6 2
## [34443] 6 6 6 2 6 2 2 2 6 6 2 2 2 2 2 6 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 6 2 2
## [34477] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 3 2 3 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2
## [34511] 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 3 3 6 2 2 2 2 2 2 2 2 2 2 2
## [34545] 2 2 2 2 3 6 3 2 2 2 6 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2
## [34579] 2 3 2 2 2 3 2 2 2 2 6 6 6 6 6 6 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2
## [34613] 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2
## [34647] 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 5 2 2 2
## [34681] 2 2 3 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2
## [34715] 2 2 2 2 2 2 2 2 2 3 6 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 6 2 6 2 2
## [34749] 6 2 2 3 2 2 2 2 2 6 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3
## [34783] 2 2 2 2 2 2 5 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2
## [34817] 6 6 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 6 6 6 6 6 2 2
## [34851] 2 2 6 2 2 2 6 6 6 2 2 6 2 2 2 2 2 2 6 6 2 2 2 6 6 6 6 6 6 6 6 2 2 2
## [34885] 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 6 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2
## [34919] 2 5 2 5 3 5 5 2 6 6 6 2 6 6 6 6 6 3 2 2 2 2 2 2 2 2 2 6 6 2 2 3 2 2
## [34953] 2 2 3 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 3 3 3 3 2 2 2 2 6 2 2
## [34987] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2
## [35021] 2 3 6 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 6 2
## [35055] 2 6 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [35089] 2 2 2 2 3 3 2 6 6 6 2 6 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2
## [35123] 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 3 2 5
## [35157] 2 2 2 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2
## [35191] 2 2 2 3 6 2 6 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2
## [35225] 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 6 6 6 6 2 2 6
## [35259] 6 6 6 6 6 6 6 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 6
## [35293] 6 6 6 6 6 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 6 6 2 2 2 2 2 6 3 2 2 2 2 2
## [35327] 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2
## [35361] 2 2 2 2 2 2 2 2 6 2 2 2 2 6 6 6 2 2 2 2 2 2 3 2 2 5 2 2 2 2 2 2 5 6
## [35395] 6 6 5 3 2 3 3 3 6 6 3 6 6 6 6 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2
## [35429] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 6 2 2 2 2 2 2 6 2 6 2 2 2 2 2
## [35463] 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 6 2 6
## [35497] 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 6
## [35531] 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2
## [35565] 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [35599] 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2
## [35633] 2 2 6 6 6 2 6 6 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 3 2 3 2 3
## [35667] 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 2 3 2 2 6 2 2 2 2 2
## [35701] 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2
## [35735] 3 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2
## [35769] 2 3 2 2 2 2 6 2 2 2 2 2 3 2 6 2 2 2 2 2 6 2 2 6 2 6 2 2 2 2 2 2 2 2
## [35803] 6 2 3 2 5 6 2 2 6 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2
## [35837] 6 6 2 2 2 2 2 2 2 2 1 2 3 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2
## [35871] 6 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 3 2
## [35905] 2 2 2 2 2 2 3 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 6 2
## [35939] 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 3 2 2 2 2 2 2 3 2 2 2
## [35973] 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2
## [36007] 2 6 6 6 6 6 6 6 2 2 2 2 2 2 6 3 6 6 3 2 2 2 2 2 2 5 2 2 5 5 2 2 2 2
## [36041] 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2
## [36075] 2 2 2 5 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6
## [36109] 6 6 6 6 2 2 2 6 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 3 2 2 2
## [36143] 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 6
## [36177] 6 6 2 2 2 2 3 3 3 3 2 1 2 2 2 2 2 3 2 2 2 2 5 2 5 2 2 2 2 6 2 2 2 6
## [36211] 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2 2 2 2 2 2 6
## [36245] 2 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 3 2 2
## [36279] 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2 2 2 3 2
## [36313] 2 2 2 2 3 2 3 6 6 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 5 5 2 2 2
## [36347] 2 2 2 2 2 6 2 6 6 6 2 2 6 2 6 6 2 6 2 6 2 6 2 2 2 2 2 2 2 6 6 2 2 2
## [36381] 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 5 2 5 2 2 2 2
## [36415] 2 6 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 6 2 2 2 2 2 2 2 2 2 3 2 2 2
## [36449] 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3
## [36483] 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 6 2 2 2 2 2 6 2 2 6 2 2 6
## [36517] 2 2 6 2 2 2 2 2 2 2 2 2 2 3 3 2 6 6 6 6 6 6 2 2 2 2 2 2 6 2 2 2 2 2
## [36551] 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 6 6 6
## [36585] 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 6 3 3 2 2 2 2 2 2 2 2 3 2
## [36619] 3 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 6
## [36653] 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 6 2
## [36687] 2 6 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 6 6 6 6 2 2 2 3 2 2 2 2 5 2 2 2 6
## [36721] 6 6 6 6 6 2 2 6 2 2 2 6 2 2 2 2 2 2 6 2 2 3 6 2 2 2 2 2 2 2 3 2 2 2
## [36755] 2 2 2 5 2 2 2 3 2 2 2 2 2 2 5 2 2 3 5 2 6 6 2 2 2 6 6 6 6 6 2 2 2 2
## [36789] 2 6 2 2 6 6 6 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2
## [36823] 2 2 2 6 2 1 2 2 6 2 2 2 2 2 2 2 3 2 2 2 6 2 6 2 2 6 6 3 2 2 3 2 2 2
## [36857] 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 6 2 2 2
## [36891] 2 2 2 6 2 2 3 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 2
## [36925] 2 6 3 2 2 2 2 2 3 2 2 6 2 3 2 2 2 2 2 2 3 3 6 6 3 2 2 2 2 2 2 2 2 2
## [36959] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 6 2 2 2
## [36993] 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 6 2 2 2 2 6 6 2 2 2 2 2 2 2 3 3 2 2
## [37027] 2 2 2 2 2 6 6 6 6 6 6 2 3 3 2 6 6 6 6 6 2 6 2 2 2 2 2 2 2 2 3 6 6 2
## [37061] 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 5 2 2 2 2 2 2 2 2 2 2 2 2 2
## [37095] 2 2 2 6 2 6 2 6 6 2 2 2 2 2 2 6 6 2 3 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2
## [37129] 2 2 2 2 6 2 2 6 2 2 2 2 2 6 2 2 2 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2
## [37163] 2 2 2 2 6 6 6 2 2 2 3 2 2 2 2 3 5 5 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 2
## [37197] 2 2 2 2 2 6 2 2 2 2 3 2 3 2 2 2 3 2 2 2 6 2 2 2 2 2 6 6 2 2 2 2 2 2
## [37231] 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 6
## [37265] 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 6 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2
## [37299] 1 1 4 2 2 2 2 2 5 2 2 2 2 5 3 2 6 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2
## [37333] 6 2 2 6 2 2 2 3 2 2 2 2 2 6 2 2 2 2 6 6 2 6 3 6 2 6 6 6 2 2 6 6 6 6
## [37367] 6 2 2 2 2 2 2 6 2 6 6 2 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3
## [37401] 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 3 2 6 2 3 2
## [37435] 2 2 5 2 2 2 2 2 2 5 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2
## [37469] 2 2 2 6 2 2 6 6 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2
## [37503] 2 2 6 6 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 6 6 2 2 6 6 6
## [37537] 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [37571] 2 2 6 6 2 3 2 2 6 2 2 2 2 2 2 2 3 2 2 2 2 2 5 2 6 6 3 2 3 2 3 2 2 2
## [37605] 2 2 2 3 2 2 6 2 2 3 2 2 2 3 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2
## [37639] 2 3 3 3 2 2 2 3 6 6 6 2 2 2 3 2 2 2 2 2 2 2 6 3 6 3 2 2 2 6 2 6 2 2
## [37673] 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 2 2 6
## [37707] 6 2 2 2 2 2 2 6 2 2 6 2 6 2 6 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3
## [37741] 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 6 6 6 6 6 6
## [37775] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 6 3 3 3 2 2 2 2 2 2 2 2 2 6 2 2
## [37809] 2 2 2 2 2 2 2 6 6 3 2 2 2 2 3 2 2 2 3 6 6 2 2 2 2 6 6 6 6 6 3 3 2 2
## [37843] 2 2 2 2 2 2 6 3 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 6 2 6 2 2 6 2 2 2
## [37877] 6 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 2
## [37911] 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 5 2 2 2 2 5 3 5 2 2 2 2 2
## [37945] 3 2 2 2 2 3 2 2 1 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2
## [37979] 2 2 5 3 3 2 2 2 2 2 2 3 3 3 3 3 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2
## [38013] 2 6 6 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 6 6 6 6 6 6 6 6 2 6 2 2 2 6 2
## [38047] 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2
## [38081] 2 6 2 2 6 2 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 6 6
## [38115] 6 2 2 2 2 2 2 2 2 2 2 6 2 2 3 3 3 6 6 6 6 6 6 2 2 2 2 3 2 3 2 2 2 6
## [38149] 2 6 6 6 6 6 6 6 2 2 2 2 2 5 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2
## [38183] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 3 2 2 2 2 2 6 2 2 2 2 2 2 2
## [38217] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2
## [38251] 2 2 2 2 2 2 5 5 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [38285] 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2
## [38319] 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2
## [38353] 2 2 6 2 6 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 6 2 2 2 2
## [38387] 2 2 2 2 2 2 6 2 6 6 6 6 2 2 2 2 2 2 6 2 5 2 2 2 2 5 2 2 2 2 2 2 2 2
## [38421] 6 2 6 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 6 6 6 6 3 6 2 2 2 6 2 6 2 2 2
## [38455] 6 6 2 5 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 6
## [38489] 2 2 2 2 2 2 2 2 2 6 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 6 2 2 2 2 2 3
## [38523] 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 6 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 6 2
## [38557] 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 3 3 6 3 6 2 2 2 2 2 2 3 2 2 3 2 2 2
## [38591] 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2
## [38625] 2 3 6 2 3 3 6 3 2 2 2 2 2 2 3 3 2 2 2 2 2 6 6 6 6 6 6 2 6 6 2 2 2 2
## [38659] 2 6 2 2 6 2 3 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 3 2 2 3 3 6 3 2 2 2 2 2
## [38693] 3 2 2 2 2 3 2 2 2 2 2 2 3 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2
## [38727] 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 6 2 2 2 6 2 2 2 2 3 2 6 6 3 3 6 2
## [38761] 2 2 3 2 2 2 2 2 2 6 6 6 6 6 6 2 2 6 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2
## [38795] 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 6 2 2 2 2 2 2 2 2 2 2 2
## [38829] 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 6 6 6 6 2 2 2 2 5 2 2 2 3 6
## [38863] 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 3 2 3 3 6 2 2 6 2 2 2 2 2 2 2 6
## [38897] 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 5 2 2 2 2 2 2 2 2 2 2 2 2
## [38931] 2 2 2 2 6 6 6 6 6 6 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2
## [38965] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2
## [38999] 2 2 2 5 2 2 2 3 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2
## [39033] 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 6 2 6 6 6 6 6 2 2 6 6
## [39067] 6 6 6 6 6 6 2 2 6 2 2 6 2 2 6 6 6 2 2 2 2 2 2 6 2 2 2 2 2 2 6 6 6 6
## [39101] 6 2 6 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 3 2 2 2 2 5 2 2 3 2 2 6 6 6
## [39135] 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 3 3 3 2 2 2 2 2 2 2 2
## [39169] 2 2 6 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2
## [39203] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2
## [39237] 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 3 6 2 2 3 2 3 2 2 2 2 2 2 2 2 6 6 6
## [39271] 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 3 2 2 2 2 3 2
## [39305] 2 2 2 2 2 2 2 2 6 3 2 1 5 2 3 3 2 3 3 5 5 2 2 2 2 2 6 6 2 2 6 6 2 2
## [39339] 2 2 6 6 2 2 2 6 6 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 6 2 2 3 2 5 3
## [39373] 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2
## [39407] 2 2 2 2 2 3 3 2 2 2 4 2 2 2 2 2 4 2 2 2 2 2 2 2 2 2 5 2 3 2 2 2 2 2
## [39441] 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 6 6 6
## [39475] 6 6 6 6 6 2 2 2 2 2 2 6 6 6 6 2 2 2 6 6 6 6 6 6 2 2 2 2 6 2 2 2 6 2
## [39509] 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [39543] 2 6 6 2 2 2 2 2 6 6 6 2 6 6 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 6 2 2 3
## [39577] 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 6
## [39611] 6 2 6 2 2 2 2 2 2 6 6 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 6 2 6 6 2 3
## [39645] 2 2 2 2 6 6 2 2 2 6 6 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 6 2 2 2 2 2 2
## [39679] 2 2 2 2 6 6 6 2 6 6 2 2 2 2 2 2 2 2 3 3 3 2 2 6 2 2 2 2 2 2 2 2 2 2
## [39713] 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 6 6 2 2 2 3 2 2 2
## [39747] 2 2 2 2 2 2 6 6 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [39781] 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 6 6 6 6
## [39815] 6 6 2 2 6 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2
## [39849] 2 2 6 6 6 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 5 2 2 2 2 2 3 2 2 2 2 2 2 2
## [39883] 2 6 2 6 2 3 6 2 6 2 3 6 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 6 2 2 2 2 3 2
## [39917] 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 3 2 2 2
## [39951] 3 3 2 6 2 2 2 2 2 6 6 6 6 2 2 2 2 2 6 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2
## [39985] 6 2 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 6 2 2
## [40019] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2
## [40053] 2 2 2 2 2 2 2 2 2 2 2 4 2 2 2 4 2 2 2 2 4 2 2 2 2 2 2 2 2 2 3 6 2 2
## [40087] 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 6 2 3 2 3 3 3 2 3 3 6 3 2 2 3
## [40121] 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 6 2 2 2 2 2 2 2
## [40155] 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 6 6 6 2 6 2 2 2 2 3
## [40189] 2 2 2 2 2 3 2 2 6 6 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [40223] 2 2 6 6 6 2 2 2 6 2 2 3 2 2 3 2 2 2 2 6 6 6 6 6 6 6 6 2 3 2 2 2 2 2
## [40257] 2 2 2 3 2 2 2 2 2 6 2 6 6 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2
## [40291] 2 2 6 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 6 2 6 6
## [40325] 6 6 2 6 2 2 2 6 2 2 2 6 2 2 2 2 2 2 1 5 2 2 2 5 2 6 6 6 6 6 6 6 2 3
## [40359] 3 2 2 2 2 2 2 3 2 2 2 5 2 2 2 2 2 2 2 2 2 6 2 2 4 2 2 2 2 2 2 2 3 3
## [40393] 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2 3 2 2 6 2 2 2 2 2 2 2 2 2
## [40427] 2 2 2 2 2 3 3 2 2 5 2 2 2 2 2 6 6 6 6 6 3 2 2 3 2 2 3 2 2 3 2 3 2 2
## [40461] 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 3 3 3 2 2 2
## [40495] 2 2 2 2 2 6 6 6 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [40529] 2 2 6 2 6 6 6 2 2 2 2 6 6 6 6 6 6 6 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2
## [40563] 2 2 2 2 2 3 2 2 3 2 2 2 2 2 6 2 3 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 2
## [40597] 3 2 6 2 6 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 3 2
## [40631] 2 2 3 3 2 2 3 2 2 3 2 2 3 2 5 3 2 2 2 2 2 3 2 2 2 2 2 2 2 6 6 6 6 6
## [40665] 6 6 6 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 3 2
## [40699] 3 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [40733] 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 6
## [40767] 2 2 2 2 2 2 6 2 2 6 6 2 6 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2
## [40801] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2
## [40835] 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2
## [40869] 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 6 2
## [40903] 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2
## [40937] 2 2 6 6 6 6 2 2 2 2 2 6 6 2 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2
## [40971] 2 2 2 6 6 2 2 2 2 2 6 2 2 6 2 6 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 3 2
## [41005] 3 2 2 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 6 6 2 2 2 6 6 2 2 2 2 2 2 2 2
## [41039] 2 2 2 2 2 2 2 2 6 2 6 6 6 6 2 5 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 6
## [41073] 6 2 2 2 6 6 2 3 3 3 3 3 5 2 6 2 2 6 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2
## [41107] 6 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 6 2 2 2 2 2 2 2 2 2
## [41141] 2 2 3 2 2 2 2 2 2 3 6 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2
## [41175] 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 3 2 2 6 2 2 2 2 2 2 2
## [41209] 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 2 2 2 3 2 2 2
## [41243] 2 5 2 2 2 2 2 5 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2
## [41277] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 2 2 5 2 2 2
## [41311] 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [41345] 6 6 6 6 3 2 6 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2
## [41379] 2 2 2 3 2 6 6 6 6 6 6 2 2 2 2 2 2 3 2 2 6 6 2 3 6 2 2 2 2 3 2 2 2 2
## [41413] 2 3 3 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2
## [41447] 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 2
## [41481] 3 2 2 6 2 2 2 2 2 6 2 6 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [41515] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2
## [41549] 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 3 2 3 6 2 2 2 2
## [41583] 2 2 2 2 2 2 6 6 6 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [41617] 5 2 2 2 2 4 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [41651] 2 2 6 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2
## [41685] 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 3 2 2 2 2 2 2 2
## [41719] 2 2 6 6 6 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2
## [41753] 2 2 2 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2
## [41787] 6 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 6 6 2 5 2 2 2 2 2 2 2
## [41821] 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 2
## [41855] 6 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6
## [41889] 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 3 6 2 6 6 2
## [41923] 2 2 2 2 6 6 2 2 3 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 6
## [41957] 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 3 6 2 3 2 2 2 2 2 2 2 2
## [41991] 2 6 2 6 6 2 2 6 2 2 2 2 2 3 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2
## [42025] 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 3 3 2 6 6 6 6 6 6 6 6 2 6 2 2 2 2 2
## [42059] 2 5 2 3 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2
## [42093] 2 2 2 6 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 6 2 2 2 3 2 2 2 2 2 2 6
## [42127] 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [42161] 2 6 3 3 3 3 6 2 6 3 2 2 2 2 2 2 2 2 2 2 2 6 6 3 3 2 6 6 6 6 6 6 2 2
## [42195] 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 3 2 2 2
## [42229] 6 2 2 2 2 2 2 6 2 2 3 2 2 3 2 3 6 2 6 2 6 3 5 2 3 2 2 2 3 3 3 3 2 3
## [42263] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2
## [42297] 2 2 2 2 2 2 2 2 2 2 2 2 3 6 6 6 6 6 3 6 2 2 2 2 2 3 3 3 2 2 3 3 2 2
## [42331] 2 2 2 2 6 6 6 6 6 2 2 2 2 2 3 2 2 2 3 6 2 2 2 2 2 2 2 3 3 3 3 2 2 2
## [42365] 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 6 3 2 2 2 2
## [42399] 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [42433] 5 5 5 5 5 5 6 6 6 2 2 6 6 6 6 6 6 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2
## [42467] 2 2 6 3 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 6 6 6
## [42501] 6 6 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3
## [42535] 2 2 6 2 2 2 2 2 2 6 2 6 6 6 2 2 2 2 2 2 2 2 6 2 6 3 6 3 2 3 3 2 2 2
## [42569] 2 2 2 6 2 2 2 2 2 6 3 2 3 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2
## [42603] 6 2 2 2 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2
## [42637] 2 2 2 2 3 6 2 6 6 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2
## [42671] 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 6 6 6 6 6 6 2 2
## [42705] 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 3 3 2 6 2 2 2 2 2 2 6 6 2 2 2 6
## [42739] 6 6 6 6 6 2 2 2 2 2 6 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 6 2
## [42773] 2 2 3 2 2 2 3 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 3 2 2 5 5 5 2 2 2 6 2
## [42807] 2 2 2 2 2 6 2 2 2 2 2 6 6 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [42841] 2 2 2 6 6 2 2 2 2 2 2 2 2 6 1 2 2 2 2 2 2 3 3 2 6 2 3 2 2 2 2 6 2 2
## [42875] 2 2 6 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 6 6 2 2 2 6 2 2 6 2
## [42909] 2 6 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3
## [42943] 3 2 2 6 2 2 2 2 3 2 6 2 6 2 2 2 2 2 2 2 1 6 2 2 2 2 2 2 2 2 2 2 2 2
## [42977] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 5 5 5 2 2 2 2 2 2 2 2 6 6 2
## [43011] 2 2 2 2 2 5 2 2 2 2 5 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 6 2 2 2 6 6 2
## [43045] 2 2 2 2 2 2 2 2 5 3 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3
## [43079] 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2
## [43113] 5 2 2 2 2 2 2 5 2 2 2 6 6 6 6 6 6 6 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2
## [43147] 2 6 2 2 2 6 2 2 2 2 2 6 6 3 6 2 2 6 2 2 6 2 2 2 6 6 6 6 6 2 2 2 2 2
## [43181] 2 2 2 6 2 6 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2
## [43215] 2 2 2 2 2 2 2 2 2 2 6 2 6 3 3 6 2 2 2 2 2 5 2 2 5 2 2 2 2 3 2 2 2 2
## [43249] 2 3 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2
## [43283] 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2 2
## [43317] 2 2 2 2 3 6 6 6 6 6 6 6 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 3 2
## [43351] 6 2 2 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 6 2 3 2 2 2 2 2 6 6
## [43385] 2 2 2 6 2 2 2 3 2 6 3 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2
## [43419] 2 3 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2
## [43453] 2 6 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 3 2 3 2 2 6 2 2 2 2 2 2 2 6 2 2 2
## [43487] 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 6 2
## [43521] 6 6 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 6
## [43555] 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6
## [43589] 6 6 6 6 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 6 6 6 6 6 2 2 6 2 2 2 2 2 6 6
## [43623] 6 6 6 6 2 3 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2
## [43657] 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 6
## [43691] 6 2 2 2 2 2 2 2 2 2 6 3 6 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 6
## [43725] 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 6 3 2 2 2 3 6 6 6 6 6 6
## [43759] 2 2 2 2 6 6 6 6 6 6 6 2 3 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 6 2
## [43793] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 3 2 2
## [43827] 2 2 2 2 2 2 3 3 6 2 2 2 2 2 2 2 2 2 6 6 2 2 5 2 2 2 2 2 1 2 2 2 2 2
## [43861] 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
## [43895] 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2
## [43929] 2 2 2 6 6 2 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 6 6 2 2 2 2 2 6 6 2 2
## [43963] 6 2 2 2 3 2 2 2 2 2 2 2 6 2 6 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2
## [43997] 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 6 6 2 2 2 2 2 6 2 2
## [44031] 2 2 6 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 5 2 2 2 2 5 2 2 2 2 2 2 2 2 2
## [44065] 2 6 2 2 2 6 6 6 2 2 6 2 6 2 2 2 6 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6
## [44099] 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 6 2 3 2 2 2 2 2 6 2 2 2 6 2
## [44133] 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 6 2
## [44167] 2 2 2 2 2 6 6 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 6
## [44201] 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2
## [44235] 6 6 6 6 6 5 6 6 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 3 3 3 5 3 2 6 6 6
## [44269] 6 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2
## [44303] 2 2 2 2 3 3 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 6 2 6 6 6 6 6
## [44337] 6 6 2 2 6 2 3 2 2 2 2 3 2 2 2 6 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 6 6 6
## [44371] 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 3 2 2 2 5 6 6 3 6
## [44405] 3 3 5 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [44439] 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 6 2 2 3 2 2 2 2 2 6 6 2 6 6
## [44473] 6 2 2 2 2 2 2 3 3 2 6 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2 6
## [44507] 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 6 2 2 3 2 2 2 2 5 2 5 2 6 3 2 2
## [44541] 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 6 2 2 6 6 2 2 2
## [44575] 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 6 6 2 6 6 6 6 6 6 6 2 2 2
## [44609] 2 3 6 6 2 6 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2
## [44643] 2 2 2 2 6 3 2 2 5 2 2 2 2 2 2 2 6 5 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2
## [44677] 5 2 2 2 5 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 6
## [44711] 2 2 2 2 3 2 2 2 6 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2
## [44745] 2 3 2 3 2 2 2 2 2 2 2 2 2 3 6 2 2 6 2 2 2 2 2 2 2 6 2 2 3 2 3 2 2 3
## [44779] 2 2 5 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 6 2 2 2 2 2 6 6 3 2
## [44813] 3 3 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2
## [44847] 2 2 5 2 2 2 3 2 2 2 3 3 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 3 3 3
## [44881] 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 6 2 3 2
## [44915] 1 2 6 6 6 6 6 6 6 6 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2
## [44949] 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [44983] 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 3 2 2 2 2 3 2 6 2 2
## [45017] 2 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 3 3 2 6 2 2 6
## [45051] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2
## [45085] 2 2 2 2 2 2 2 2 3 6 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 6 2 2 2 2 2 2 2
## [45119] 2 2 6 3 2 2 2 2 2 5 3 2 2 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [45153] 6 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 3 2 2 2 2 2 3
## [45187] 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 6 2 2 2 2 2 2 6
## [45221] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 6 2
## [45255] 2 2 2 2 2 2 2 2 2 5 3 2 3 2 2 2 3 2 6 2 6 6 2 2 2 2 2 6 3 3 3 3 6 2
## [45289] 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 6 2 6 2 2 2 2 2
## [45323] 6 6 6 6 6 6 6 3 6 2 2 6 6 2 6 2 2 6 2 2 2 2 2 2 6 6 2 2 2 2 6 2 1 1
## [45357] 1 1 1 1 2 2 2 2 2 2 2 6 2 6 2 2 6 6 6 2 2 6 2 6 3 3 3 3 3 6 3 2 2 2
## [45391] 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 5 3 2 2 2 2 2 2 2 2 2 6 6 2 2 6 2 2
## [45425] 3 2 2 2 6 6 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [45459] 2 6 6 6 6 2 2 2 2 6 6 6 6 6 6 6 2 2 2 5 2 2 2 2 2 3 3 2 3 2 3 2 2 2
## [45493] 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 6 6 6 3 2 2 2 3 2 3 2 2
## [45527] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6 2 2 6 6 2 3 2 2 6 2 2 2 6
## [45561] 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 6
## [45595] 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 3 2 6 2 2 2 2 2 6 6 6 6
## [45629] 2 2 2 2 6 6 6 2 6 2 2 2 2 2 2 2 6 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2
## [45663] 2 2 2 2 2 2 2 6 3 3 2 2 2 2 6 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 6 2
## [45697] 2 2 2 2 2 2 2 2 3 2 2 2 2 2 6 2 2 2 6 2 2 2 2 5 2 2 2 2 3 5 2 2 2 3
## [45731] 2 2 2 6 6 3 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 3 2 2 2 2 2 2 1 2 2 2 2
## [45765] 2 2 6 2 2 2 6 2 2 2 2 6 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2
## [45799] 2 2 2 2 1 1 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2
## [45833] 3 2 2 2 6 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6
## [45867] 6 6 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2
## [45901] 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 5 3 5 2 6 2 2 2 2 2 6 2
## [45935] 6 2 2 2 6 2 2 6 2 2 6 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 6 6
## [45969] 6 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 6 2 2 2 6
## [46003] 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 3 2 6 3 2 5 2 5 2 2 5 5 5 5 3 2
## [46037] 2 2 2 2 6 2 6 2 2 2 2 2 2 6 3 6 2 3 2 2 2 2 2 2 2 2 2 6 2 2 3 2 2 2
## [46071] 2 2 2 3 3 2 2 2 6 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 6 2 3 3 3 3 2 2 2
## [46105] 2 2 2 2 2 2 2 6 2 2 3 3 3 3 3 2 3 5 3 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2
## [46139] 2 2 5 2 3 3 3 2 2 2 2 2 2 2 2 5 3 2 2 2 2 2 2 2 2 2 2 6 6 2 6 2 6 2
## [46173] 2 2 2 2 3 2 5 2 5 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2
## [46207] 2 2 2 3 5 2 2 6 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 6 2 5 2 2 2 2 2 2 2
## [46241] 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 5 2 5 3 2 2 2 2 2 2 2 2 2
## [46275] 2 5 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6
## [46309] 2 3 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2
## [46343] 3 2 2 2 2 2 2 2 2 6 6 3 2 2 2 2 2 6 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2
## [46377] 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 6 2 3 3 2 2 3 3 3 3 3 3 2
## [46411] 6 2 2 2 2 2 2 3 3 6 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2
## [46445] 6 6 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 3 6 6 2 2 2 2 2 6 2 6 6 6 6 2 2 3
## [46479] 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 6 6 6 6 6 6 3 2 2 2 2 2
## [46513] 2 2 2 2 6 2 3 2 2 2 6 6 6 6 6 6 6 6 2 5 2 2 5 3 3 2 6 3 5 2 2 2 2 2
## [46547] 2 2 2 3 6 6 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2
## [46581] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 6 6
## [46615] 6 6 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2
## [46649] 6 6 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 3 2 2 2 2 6
## [46683] 6 6 2 2 2 2 2 2 2 2 4 1 3 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 3 2 2 2 2 2
## [46717] 3 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 6 2 2 2 2 6 2 6 6 2 2 2 2 2 6 2 2
## [46751] 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2
## [46785] 6 2 2 2 2 2 2 2 6 6 2 2 6 2 2 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 2 2 2 2
## [46819] 2 2 2 2 2 2 2 6 3 2 2 5 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 2 2 6 6 2 3 2
## [46853] 2 2 2 2 2 2 2 3 2 2 2 6 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2
## [46887] 2 3 2 2 5 2 2 2 2 2 2 6 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 3 3 2 2
## [46921] 2 3 3 2 3 3 2 2 2 2 2 2 2 2 6 6 2 2 3 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2
## [46955] 6 2 2 2 2 2 6 2 2 6 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6
## [46989] 2 6 6 6 2 2 2 3 2 2 2 2 6 6 3 2 2 2 2 2 3 2 2 2 6 2 2 6 2 3 2 3 2 2
## [47023] 3 3 3 2 2 2 2 2 5 2 2 2 2 5 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 5 2 2
## [47057] 2 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2
## [47091] 2 2 2 6 2 2 2 2 2 6 2 2 2 2 3 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6
## [47125] 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 3 3 6 2 6 2 2 2 6 3 2
## [47159] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 6 2 2
## [47193] 2 3 2 6 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2
## [47227] 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 6 2 2 6 6 6 2 2 2 2 2 2 2 2 3 3 2
## [47261] 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 3 2 2 2 2 3 2 5 2 2 2
## [47295] 2 2 2 2 5 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 6 2 3
## [47329] 6 6 6 6 3 2 2 2 2 2 2 5 2 2 2 6 2 2 2 2 2 2 2 2 2 6 3 2 2 6 6 6 6 6
## [47363] 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 6 5 2 2 3 2 2 2 6 2
## [47397] 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 6 6 2 2 2 2 2 2 2 2 2
## [47431] 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2
## [47465] 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 6 6 2
## [47499] 2 2 2 2 2 3 2 2 2 3 3 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 3 5 2 6 2 2
## [47533] 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 3 3 2 2
## [47567] 6 2 2 2 6 6 2 2 6 2 2 2 2 2 2 6 2 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2
## [47601] 2 2 2 2 2 2 3 3 2 5 3 5 2 3 2 2 2 3 5 2 2 2 2 6 2 2 2 6 3 2 2 2 2 2
## [47635] 2 2 2 2 6 6 6 2 2 2 2 2 3 2 2 2 6 6 2 2 6 2 6 2 6 6 2 6 2 2 2 2 2 2
## [47669] 2 2 2 3 5 5 2 2 2 2 2 2 5 2 2 3 3 2 2 2 2 2 2 2 2 6 6 6 2 6 6 6 6 2
## [47703] 2 2 2 2 2 2 2 2 2 2 6 2 6 6 6 6 2 2 2 2 2 6 2 2 2 3 3 2 2 2 2 2 6 2
## [47737] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 6 6 6 6 6 6 6
## [47771] 2 2 2 2 2 3 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2
## [47805] 3 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 4 2 2 2 2 2 6 2 2 2 2
## [47839] 6 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [47873] 2 2 2 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 3 2 6 2
## [47907] 2 2 6 2 2 2 3 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 3 6 2 6
## [47941] 2 2 2 2 2 2 2 2 3 2 2 6 2 2 2 2 6 6 6 6 2 2 2 2 2 5 5 5 2 2 2 2 2 2
## [47975] 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2
## [48009] 2 6 2 2 2 2 6 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2
## [48043] 2 2 2 6 3 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 3 2 2 2 3
## [48077] 5 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3
## [48111] 2 2 2 2 2 2 3 2 2 2 2 2 3 2 5 2 2 2 3 2 2 2 2 6 2 6 2 2 2 2 2 3 2 6
## [48145] 6 2 6 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6
## [48179] 6 2 2 2 2 2 2 3 2 2 6 6 6 2 6 6 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2
## [48213] 2 2 2 6 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 3 2 2 6 6
## [48247] 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 6 2 2 6 6 2 2 6 2 2 6 6 6 6 6 6 6 2
## [48281] 2 2 2 3 2 2 2 2 3 3 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 1 1 1 2 2 1 2 2 2
## [48315] 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 3 6 3 2 2 2 2 2 6 2 2 2 6 2 2 2 2
## [48349] 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2
## [48383] 2 2 2 2 2 3 3 2 2 2 2 2 2 2 6 2 2 6 2 2 6 2 2 6 2 2 2 2 3 2 2 2 2 2
## [48417] 2 6 2 6 6 6 2 2 6 2 2 2 6 2 6 6 6 2 2 2 2 2 2 2 6 2 6 2 2 2 6 6 6 6
## [48451] 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2
## [48485] 2 2 6 3 2 2 2 2 5 2 2 3 2 2 2 2 2 6 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2
## [48519] 2 2 6 2 2 2 2 2 2 6 2 6 6 6 2 2 3 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 2
## [48553] 6 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2
## [48587] 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 6 2 6
## [48621] 2 2 2 6 2 6 2 2 6 6 6 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2
## [48655] 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 5 2 2 2 2 2 2 6 2 6 6 6 2 2
## [48689] 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [48723] 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [48757] 2 2 2 2 3 3 3 2 2 2 6 6 6 2 6 6 6 6 2 6 2 2 2 6 2 2 2 2 2 2 2 3 2 2
## [48791] 2 2 6 3 6 2 2 2 2 2 2 6 2 2 3 6 3 2 2 6 2 2 6 6 6 6 6 6 2 2 2 2 2 3
## [48825] 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2
## [48859] 2 2 3 6 2 2 2 2 6 6 6 6 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 2 6
## [48893] 6 2 2 2 2 2 2 2 6 2 2 2 6 6 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 6 2 2 3
## [48927] 6 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 6 6 6 6 6 6 6 2 2 2 6 2 2 2 2 2 2
## [48961] 6 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6
## [48995] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 2 2 2 3 2
## [49029] 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2
## [49063] 2 2 2 2 2 2 2 6 3 2 2 2 2 3 3 3 3 3 3 3 2 2 6 2 2 6 2 2 2 2 2 2 2 2
## [49097] 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 3 2 2 2 2 6 2 6 2 2 3 2
## [49131] 2 3 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 3 3 6 2 2 2 2 2
## [49165] 2 2 2 6 6 6 2 2 2 2 3 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [49199] 2 2 2 3 3 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 3 2 2 2 2
## [49233] 2 2 2 6 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2
## [49267] 3 3 2 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 3 5 2 2 2 2 2 2 2 2 6
## [49301] 6 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 6 2 2 2 6 2 2 2 6 6 6 6 6 6 6 6
## [49335] 2 2 2 2 6 6 6 2 6 6 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [49369] 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 3 6 2 3 2 2 2 2 3 2 2 2 2 2 3 2
## [49403] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2
## [49437] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 6 2 3 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2
## [49471] 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2
## [49505] 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2
## [49539] 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2
## [49573] 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2
## [49607] 2 6 6 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2
## [49641] 3 3 3 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 3 3
## [49675] 6 3 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 5 2 2 2
## [49709] 5 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 3 6 6 6 6 2 2
## [49743] 2 2 2 2 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 1 4 2 2 2 2 2 6 2 2 6 6 2 2
## [49777] 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 6 6 6 2 2 3 3 3 3 3 6 2 2 3 2 6
## [49811] 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 6 6 2 2 2 2 2 2 2 2
## [49845] 2 2 6 6 2 6 2 6 2 2 2 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2
## [49879] 2 2 2 2 6 2 6 2 2 2 2 2 3 2 2 2 6 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2
## [49913] 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 6 2 2 2 2 2 6 2 2 2
## [49947] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6
## [49981] 6 6 6 6 2 6 2 6 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [50015] 3 2 6 2 2 2 2 2 5 5 5 5 5 1 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6
## [50049] 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2
## [50083] 6 2 2 6 6 6 6 6 2 6 6 3 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 6 6 6 6 6 6
## [50117] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 3 2 2 2 2 2 2 3 6 2 2 2 2
## [50151] 2 2 2 2 6 2 2 2 6 6 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2
## [50185] 2 2 2 2 2 2 6 6 2 2 3 2 2 2 6 2 6 2 2 3 2 2 2 2 2 2 2 6 2 2 6 2 2 2
## [50219] 2 6 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2
## [50253] 2 2 3 2 2 3 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [50287] 6 3 3 3 3 3 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 5 2 2 2
## [50321] 2 2 2 5 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2
## [50355] 3 3 6 3 2 2 2 2 2 2 2 2 2 3 3 2 2 5 2 2 5 2 2 2 6 3 2 2 2 2 2 2 2 6
## [50389] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 6 2 6 6 6 6
## [50423] 6 6 2 2 2 2 2 2 2 2 3 2 2 2 5 2 2 2 2 2 2 2 2 5 2 2 2 2 2 2 2 2 6 6
## [50457] 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 6
## [50491] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 6 6 2 2 2
## [50525] 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 6 6 6 2 3
## [50559] 2 2 2 2 2 2 6 3 3 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2
## [50593] 2 2 2 2 2 1 6 2 2 2 3 6 2 2 3 6 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [50627] 6 3 6 3 6 3 3 2 2 2 6 2 6 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 6
## [50661] 6 6 6 6 6 6 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 2 2
## [50695] 2 2 2 5 5 2 2 6 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [50729] 2 2 6 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2
## [50763] 2 6 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2
## [50797] 2 2 2 2 2 5 2 2 2 2 3 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 3
## [50831] 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 3 3 2
## [50865] 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 3 2 3 6 6 6 2 2 2 2 2 2 2 2 6 6 2 2
## [50899] 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2 2
## [50933] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 6 6 6 6 6 2 2 6
## [50967] 2 2 6 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 6 2 3 3 3 2 2 2 2 2 2 2 2 2 2 4
## [51001] 2 3 2 2 4 2 2 2 2 3 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2
## [51035] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 2 2 2 2 3 2
## [51069] 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 6 2 6 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2
## [51103] 2 2 6 6 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2
## [51137] 6 6 6 2 6 2 2 2 6 6 6 6 6 6 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [51171] 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2 6 2 6 6 6 2 6 2 2 2 2
## [51205] 2 2 2 2 2 2 2 3 3 2 2 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 6 2 2 2 2 3 3
## [51239] 2 2 2 2 2 2 2 2 2 3 3 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 5 6 2
## [51273] 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2
## [51307] 2 2 6 2 6 2 3 6 6 2 2 6 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2
## [51341] 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
## [51375] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2
## [51409] 2 2 2 3 6 3 2 2 2 2 2 2 6 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 3 6
## [51443] 6 6 6 3 3 2 2 2 2 2 2 6 2 6 6 6 2 2 2 2 2 3 2 2 2 2 5 2 3 6 2 2 3 6
## [51477] 2 6 2 2 2 2 2 6 2 6 2 6 2 6 2 2 2 2 6 6 6 6 6 6 6 3 2 2 2 2 5 5 3 3
## [51511] 3 5 5 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 3 3 6 3 3 3 3 3
## [51545] 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2
## [51579] 2 3 2 2 2 2 2 6 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [51613] 2 2 2 6 2 6 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 3 6 2
## [51647] 2 5 2 2 2 2 2 5 5 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 2 6 6 2 2 2
## [51681] 2 2 2 2 2 2 2 3 5 2 2 2 2 2 2 2 2 2 3 6 2 6 6 2 2 2 2 2 2 2 2 2 2 2
## [51715] 2 6 6 2 2 2 2 3 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 6 6 3 2 2 2 2
## [51749] 6 6 6 2 3 6 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2
## [51783] 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 6 2 2 2 2 2 2
## [51817] 2 2 2 6 2 2 2 2 2 6 2 2 2 2 6 6 2 3 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2
## [51851] 6 2 2 6 2 2 2 2 2 2 2 2 3 3 3 2 3 2 5 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2
## [51885] 3 2 2 2 2 6 2 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 6 2 6 2 2 2 6 2 2
## [51919] 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 6 2 2 3 2
## [51953] 3 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 6 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 6
## [51987] 2 3 3 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2
## [52021] 5 2 2 2 6 2 2 2 5 3 2 2 6 6 2 6 6 6 6 6 2 3 2 3 2 2 3 3 3 3 6 3 2 2
## [52055] 2 2 2 2 3 2 2 3 3 2 2 2 2 2 5 3 2 6 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 6
## [52089] 2 3 2 2 6 6 6 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2
## [52123] 6 2 3 2 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 4 2 2 4 2 2 2 6 6 2 2
## [52157] 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 6 2 2 6 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2
## [52191] 2 2 6 3 2 2 3 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [52225] 2 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 6 6 6 6 6 2 2 3 6 2 2 2 2 2 3 6 2
## [52259] 2 2 2 2 2 2 2 2 3 2 2 2 6 6 2 2 2 6 6 6 6 6 6 6 6 2 2 2 6 2 6 2 2 2
## [52293] 2 2 2 2 2 2 2 2 2 2 2 3 3 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2
## [52327] 3 2 2 2 2 2 5 2 2 2 2 5 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2
## [52361] 2 2 2 2 2 2 2 2 2 6 3 2 2 2 6 6 6 6 6 2 6 2 2 2 2 2 2 2 6 2 2 2 6 2
## [52395] 2 2 2 2 2 2 6 3 2 2 2 6 2 2 2 6 3 3 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2
## [52429] 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 2 2 2 6 6 6 6 6 6 6 6 2 2 2
## [52463] 6 6 6 6 6 2 6 6 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2
## [52497] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 6 2 2 2 2 2 3 2 2 2
## [52531] 3 2 2 2 6 6 2 2 2 2 2 2 2 3 2 2 3 2 2 6 2 2 6 2 2 2 2 3 2 2 2 2 2 2
## [52565] 2 2 6 6 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 5 3 3 2 2 2 2 2 2 2
## [52599] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 6 2 2
## [52633] 6 2 6 2 2 2 3 2 6 6 6 2 2 2 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 2
## [52667] 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2
## [52701] 2 2 3 2 2 2 3 2 2 2 2 3 2 2 6 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6
## [52735] 2 2 2 2 2 6 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2
## [52769] 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 3 3 2 3
## [52803] 6 6 2 3 6 6 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 5 5 2 2 3 2 2 3 2 5 2 2 2
## [52837] 6 6 6 6 6 6 6 6 2 6 6 6 6 6 6 6 6 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [52871] 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 3 2 2 2
## [52905] 2 2 2 2 2 6 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2
## [52939] 2 2 2 6 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 3 2
## [52973] 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [53007] 6 2 2 6 2 6 6 2 6 3 6 6 6 2 2 2 2 2 2 2 2 2 3 6 6 2 2 2 2 2 2 2 2 2
## [53041] 3 3 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 6 2 2 2
## [53075] 2 2 6 2 6 2 6 2 2 6 2 6 2 2 2 2 2 2 2 2 2 5 5 2 2 2 2 2 2 2 6 6 2 2
## [53109] 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 3 3 6 2 2 2 2 2 2 2 2 2 2 2 2
## [53143] 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 6 2 6 2 2 2 6 2 2 2 2 2 3 2 2 2
## [53177] 6 6 2 2 2 2 2 2 2 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 2 6 2 2 3 2 6 2 2 3
## [53211] 2 2 2 2 2 2 6 2 2 3 2 2 2 6 6 2 6 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
## [53245] 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2
## [53279] 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 6 6 6 2 2 2 2 2 2
## [53313] 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 1
## [53347] 2 6 6 6 2 2 2 2 2 2 3 3 6 6 6 2 2 2 2 2 2 3 6 6 6 6 2 3 2 2 2 2 2 2
## [53381] 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3
## [53415] 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 6 2 2
## [53449] 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2 3
## [53483] 2 2 2 6 2 6 2 2 3 2 2 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 6 6 6 6 6 6 2
## [53517] 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2
## [53551] 2 2 2 2 2 2 2 6 6 2 6 2 6 6 2 2 6 2 2 6 2 2 2 2 2 2 2 2 3 6 2 2 2 2
## [53585] 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 6 6 2 6 2 2
## [53619] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2
## [53653] 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 5 2 3 2 2 6 5 2 2 2 2 2 2
## [53687] 5 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 1 2 2 1 2 2 5 2 2 2 5 5 5 5 5
## [53721] 5 5 5 5 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 6 6 6 6 2 3 6 6 6 6 6 6
## [53755] 6 6 6 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2
## [53789] 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 2 2 6 6 2
## [53823] 2 2 3 2 2 2 2 2 2 6 3 6 2 2 2 3 2 2 2 2 2 2 1 2 2 3 2 2 2 2 2 2 3 2
## [53857] 2 2 2 2 2 2 2 2 3 6 6 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2
## [53891] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 6 6 6 2 2 6
## [53925] 2 2 2 6 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2
## [53959] 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [53993] 2 2 2 2 6 6 6 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 6 6 2 2 2 2 2 2 2
## [54027] 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2
## [54061] 2 6 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 6 3 6 2 2 2 2 2 2 2
## [54095] 2 2 3 3 2 2 2 2 2 2 2 2 6 6 6 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 6
## [54129] 6 6 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 6
## [54163] 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 3
## [54197] 3 2 2 2 6 2 2 3 2 3 2 2 2 2 6 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 6 2 6 2
## [54231] 2 2 2 6 6 6 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2
## [54265] 3 3 3 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2
## [54299] 2 2 2 2 3 3 3 3 3 2 2 6 6 6 6 6 6 6 6 3 2 2 2 2 2 2 2 2 2 2 6 2 2 5
## [54333] 3 2 3 5 3 5 5 5 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2
## [54367] 2 2 6 6 2 6 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2
## [54401] 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2
## [54435] 2 2 3 6 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 6 2 6 2 2 2 2 2 2 2 2 3 2 2 2
## [54469] 2 2 6 2 2 2 2 2 2 2 2 2 6 3 3 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 3 2 3
## [54503] 3 3 3 3 2 3 2 2 3 2 6 3 2 2 2 2 2 2 2 2 6 6 6 6 6 2 1 1 2 2 2 2 2 2
## [54537] 1 1 2 2 3 2 2 2 2 2 2 6 2 2 6 6 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 2
## [54571] 3 2 2 1 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 3 3 2 6 6 2 2 2 2 2 2 2 2
## [54605] 2 2 2 2 2 3 3 3 3 5 5 2 2 2 2 2 2 2 3 3 6 6 2 2 2 2 6 6 6 6 2 2 2 2
## [54639] 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [54673] 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2
## [54707] 2 2 2 2 2 2 6 6 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2
## [54741] 2 2 2 2 3 2 3 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 3 2 3 6 6 2 2 2 2 2
## [54775] 6 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 6 2 6 6 2 2 6
## [54809] 2 6 2 2 2 2 2 2 2 2 2 5 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2
## [54843] 5 2 3 2 2 2 2 2 2 2 2 6 2 2 6 2 6 6 2 2 2 2 6 6 6 6 2 2 2 6 6 6 6 6
## [54877] 6 6 6 2 2 6 6 2 6 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2
## [54911] 3 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 1 2 2 4 2 2 2 2 2 6 2 2 6 2
## [54945] 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 6 3 3 3 2 2 2 2
## [54979] 2 2 2 2 6 6 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 6
## [55013] 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 3 3 2 2 6 2 2 6 2 2 2 2 6 2 2 2
## [55047] 6 2 2 2 2 2 2 3 3 2 2 2 5 2 6 2 6 6 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 2
## [55081] 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2
## [55115] 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 4 2 1 1 5
## [55149] 3 2 5 5 5 1 2 2 6 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2
## [55183] 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 6 2 2 2 3 3 2 2 2 2 2 2 2 2
## [55217] 2 2 6 6 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 5 2 2 2 3 2 2 2 2 2 2 6 2 2
## [55251] 6 2 6 2 2 2 2 2 2 2 3 3 3 6 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [55285] 2 2 2 2 2 2 2 3 2 2 6 2 3 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2
## [55319] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 2 2 6 2 2
## [55353] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 6 2
## [55387] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 6 6 6 2 6 2 2 2 6 2
## [55421] 2 6 2 6 6 6 2 2 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 6 2 6 2 2 6 2 2 2
## [55455] 2 6 2 2 2 6 2 6 2 2 2 6 2 6 6 2 6 6 6 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2
## [55489] 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2
## [55523] 6 6 6 2 2 6 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2
## [55557] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 6 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2
## [55591] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6
## [55625] 2 6 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2
## [55659] 6 6 2 2 2 2 2 2 2 2 3 2 6 3 2 2 2 2 6 2 2 3 2 2 2 2 2 2 2 2 2 2 2 6
## [55693] 3 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2
## [55727] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2
## [55761] 2 2 2 2 2 2 2 2 5 6 2 2 2 2 1 6 3 3 6 5 3 2 2 2 2 2 2 2 2 2 6 6 2 2
## [55795] 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2 2 3 3 3 3 3 2 2 2
## [55829] 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 6 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2
## [55863] 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2
## [55897] 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2
## [55931] 2 2 6 6 3 2 2 2 2 2 2 2 2 2 5 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2
## [55965] 6 2 2 2 2 2 2 2 6 6 6 6 6 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2
## [55999] 2 2 2 2 2 2 3 2 6 2 2 2 2 3 2 2 2 2 5 2 3 3 3 3 5 2 2 2 2 2 2 2 2 6
## [56033] 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 3 2 2 2 2 2 2 2 2
## [56067] 3 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [56101] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 2 2 3 3 2 2 6 2 2 2 2 2 2
## [56135] 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2
## [56169] 2 2 2 6 2 6 2 2 3 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 6 2 2 2 6 2 2 2
## [56203] 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 6 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2
## [56237] 2 6 3 2 6 6 6 2 2 2 2 2 3 3 2 6 3 3 2 2 2 2 2 3 6 2 6 6 6 2 2 2 2 2
## [56271] 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2
## [56305] 6 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 6 6 6 2 6 6 3 2 2 2 2 2 2 2
## [56339] 2 2 3 3 2 6 6 6 6 2 2 2 6 6 6 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [56373] 2 6 2 2 2 2 2 2 5 5 2 2 2 5 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [56407] 2 2 2 6 2 2 2 2 2 6 2 2 6 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 6 6 6
## [56441] 6 2 6 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2
## [56475] 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 6 2
## [56509] 2 2 2 1 2 2 2 2 2 5 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 6 2 6 2 2 5
## [56543] 2 2 2 2 3 2 2 2 3 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2
## [56577] 2 2 2 2 2 2 3 3 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2
## [56611] 2 2 6 2 6 6 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2
## [56645] 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 3 2 2 2 2 3 2 2 2 6 6 2 2 2
## [56679] 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2
## [56713] 2 2 2 2 2 2 2 6 2 6 2 2 6 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [56747] 2 2 6 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [56781] 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2
## [56815] 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 2 3 2 2
## [56849] 2 2 2 2 2 6 6 6 2 6 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 6 6 6 6 6 6 6 2
## [56883] 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2
## [56917] 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 6 6 2 2 2
## [56951] 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 5 1 1 2 2 2 2
## [56985] 2 2 2 2 3 3 5 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2
## [57019] 3 3 2 2 2 2 2 2 2 2 2 6 2 2 3 6 6 2 2 2 2 2 2 2 2 2 6 6 2 6 2 6 2 2
## [57053] 2 2 2 2 6 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2
## [57087] 2 2 3 6 2 2 2 2 6 6 6 6 2 6 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 6 6
## [57121] 6 6 6 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2
## [57155] 3 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 6 2 2 2
## [57189] 2 2 2 2 2 2 2 2 6 2 2 6 2 2 6 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2
## [57223] 2 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2 2 2 2
## [57257] 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 5 2 2
## [57291] 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 2 2 6 3 2 2 2
## [57325] 2 3 5 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 6 2 2 2 2 2 2 3 2 2 2 5
## [57359] 2 2 2 2 2 2 3 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 5 5 2 3 3 2 2 2 3 3 3
## [57393] 3 3 3 2 3 5 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3
## [57427] 2 2 3 2 3 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2
## [57461] 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 5 6
## [57495] 6 6 3 2 2 2 5 3 3 6 6 6 2 2 2 2 2 3 2 6 2 6 6 6 6 2 2 2 2 2 2 2 2 2
## [57529] 2 2 2 2 6 2 2 2 2 3 2 2 3 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3
## [57563] 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 5 3
## [57597] 2 2 2 6 2 6 3 2 2 6 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 6 2 2 2 2 6 2
## [57631] 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 3 3 2 2 2
## [57665] 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 6 6 6 6 3 2 2 2 2 2 1 2 2 2 5 5 2 2 1
## [57699] 2 2 2 2 2 3 6 6 2 3 2 2 2 5 2 2 5 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2
## [57733] 2 2 2 2 2 6 2 2 2 2 2 2 3 2 2 3 2 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2
## [57767] 6 3 2 2 3 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 3
## [57801] 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2
## [57835] 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 6 6 2 6 6 6 2 2 2 2 2 2 2 2
## [57869] 2 6 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2
## [57903] 2 6 2 3 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 6 2
## [57937] 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 3 2 2 3 2 2 2 6 2 2 6 2 2 2 2 2
## [57971] 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2
## [58005] 2 2 2 2 2 2 2 2 6 6 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2
## [58039] 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2
## [58073] 2 2 6 2 2 3 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
## [58107] 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2
## [58141] 2 6 6 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2
## [58175] 2 2 2 2 2 2 5 6 2 2 5 2 2 2 5 3 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 6 2
## [58209] 2 2 2 2 2 2 3 3 3 3 3 6 3 3 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2
## [58243] 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 5 2 2 3 2 3 2 3 2 2 2 2 2 2 2
## [58277] 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 6 6
## [58311] 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 3 2 2 3
## [58345] 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 6 2 6 2
## [58379] 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 2 2 3 3 3 3 3 2 2
## [58413] 2 2 2 2 2 2 6 6 6 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 5 2 3 2 2 2
## [58447] 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2
## [58481] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 6 2 2 2 2 2 2 6 6 2 2 2 2 2
## [58515] 2 2 2 2 6 6 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2
## [58549] 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 3 2 6 3 2 2 2 2 2 2 2
## [58583] 2 6 6 6 2 2 2 2 2 2 2 2 6 6 3 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 6 2
## [58617] 2 2 6 2 2 2 2 2 2 2 2 6 6 3 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2
## [58651] 2 2 2 2 2 6 6 6 2 2 2 2 2 2 6 2 6 6 6 6 6 6 6 2 2 2 2 6 2 6 6 2 6 2
## [58685] 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 6 2 2 2 6 6 6
## [58719] 2 2 2 2 2 6 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2
## [58753] 3 3 3 2 2 5 2 3 3 5 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2
## [58787] 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 2 3 2 3 3 2 2 2
## [58821] 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
## [58855] 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2
## [58889] 6 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 6 2 2 2 6 2 6 2 2 2 2 2 2 2 2
## [58923] 2 2 2 2 6 2 3 2 6 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2
## [58957] 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 2 6
## [58991] 2 2 6 2 2 2 2 2 6 6 2 2 2 6 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 6 2 2 2
## [59025] 2 2 2 2 2 2 2 2 2 2 3 6 3 2 2 2 2 2 2 2 3 3 3 6 2 2 2 2 2 6 2 2 2 2
## [59059] 2 2 2 2 2 2 3 2 2 6 2 6 2 2 2 2 2 6 2 2 2 3 2 2 2 2 2 2 6 2 2 2 2 3
## [59093] 2 2 3 2 5 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 6 2 2 2 2 2
## [59127] 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2
## [59161] 2 2 2 2 2 2 2 2 2 2 5 5 2 2 2 2 2 2 5 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [59195] 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 6 2 2 2 2
## [59229] 6 2 2 2 2 2 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2
## [59263] 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [59297] 2 2 2 2 6 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2
## [59331] 2 3 2 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 6 2 2
## [59365] 2 2 3 2 2 2 6 2 2 6 6 6 6 6 2 2 2 2 2 6 6 6 6 6 2 2 6 2 2 2 2 2 2 2
## [59399] 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 2 6 2
## [59433] 2 2 2 2 6 2 2 2 6 2 3 6 2 2 2 2 2 2 2 2 6 6 6 2 3 2 2 2 2 2 2 2 2 6
## [59467] 2 2 2 2 2 6 2 2 2 6 3 2 6 6 6 6 6 6 6 6 6 6 2 6 6 6 6 6 6 6 6 6 6 2
## [59501] 2 2 2 2 2 5 5 2 5 5 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 6 6 6 6 6 2 2
## [59535] 2 2 2 3 3 2 6 3 6 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2
## [59569] 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2
## [59603] 2 6 6 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2
## [59637] 3 2 2 3 3 2 2 6 3 2 2 6 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 6 2 6
## [59671] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6
## [59705] 6 6 2 3 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2
## [59739] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 3 2 2 2 2 2 2 2
## [59773] 2 3 2 2 2 2 2 2 2 2 3 6 2 2 2 2 6 2 2 3 6 6 2 6 2 2 2 2 2 2 2 2 2 2
## [59807] 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 3 6 2
## [59841] 2 3 2 2 3 6 2 6 3 3 3 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2
## [59875] 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 6 2 2 6 6 6 2 2
## [59909] 2 2 2 2 2 2 2 6 6 2 2 3 2 2 3 2 2 3 3 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2
## [59943] 2 2 2 2 2 3 2 6 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [59977] 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 5 2 2 2 5 2 2 2 6 6
## [60011] 6 6 6 6 6 2 2 2 2 2 2 6 6 2 6 6 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2
## [60045] 3 2 2 3 3 2 3 6 6 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2
## [60079] 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2
## [60113] 2 3 3 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 3 2 2 2
## [60147] 6 2 2 2 2 2 2 5 2 2 2 3 3 2 6 6 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [60181] 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 3 3 3 3 3 3 3
## [60215] 2 2 3 2 3 3 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 3 2 2 2 5 2
## [60249] 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 6 6 6 2 2
## [60283] 2 2 3 2 2 2 2 2 3 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 5 2
## [60317] 2 5 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2
## [60351] 2 2 2 2 2 2 2 2 2 6 6 6 6 3 6 6 3 6 2 2 2 2 2 2 2 3 2 2 6 2 3 2 2 2
## [60385] 2 6 6 2 2 2 2 2 2 6 2 2 2 2 2 2 6 6 2 2 6 2 2 2 2 2 2 6 2 2 2 2 6 2
## [60419] 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6 2 2 2 3 2 2 2 2 1 5 5 2 2 2 2 2 2 2
## [60453] 2 2 1 3 2 3 2 2 2 3 2 2 6 6 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2
## [60487] 6 6 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [60521] 6 6 2 2 2 3 2 6 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3
## [60555] 5 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 6
## [60589] 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 6 2 6 2 2 2 2
## [60623] 2 2 2 2 2 2 2 6 2 2 2 3 2 2 2 2 3 2 3 3 5 2 2 2 2 2 6 6 6 6 6 6 2 2
## [60657] 3 2 6 2 2 2 6 6 6 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 3 2 2 6
## [60691] 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2
## [60725] 2 2 6 6 2 6 6 2 2 2 6 2 6 6 2 6 2 2 2 2 6 3 3 3 3 3 3 3 3 2 2 6 2 2
## [60759] 2 2 2 6 2 6 2 2 2 2 2 6 2 2 2 2 6 2 6 6 6 6 6 6 2 2 6 6 2 3 2 2 2 3
## [60793] 2 3 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2
## [60827] 2 2 2 3 2 2 6 6 2 2 2 2 2 6 2 2 2 3 2 3 2 2 6 6 6 6 2 2 2 2 2 6 2 2
## [60861] 2 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 3 2 2 2 2
## [60895] 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6
## [60929] 2 2 2 2 6 2 2 2 2 2 2 6 2 6 6 6 3 6 6 6 6 3 3 2 2 2 2 2 2 2 2 6 2 6
## [60963] 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 6 6 6 6 6 6 2 2 2 3 6 2 6 6 6 6 3 2
## [60997] 2 2 2 2 2 2 2 6 6 6 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 3
## [61031] 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2
## [61065] 2 2 2 2 2 2 3 5 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 2 2 3 6 2 2 2 2
## [61099] 2 2 2 2 5 3 6 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 6 2 2 2 6 6 6 6
## [61133] 2 3 2 6 2 2 2 2 5 2 2 5 2 2 5 3 5 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2
## [61167] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3
## [61201] 3 3 3 3 6 6 2 2 2 6 3 2 6 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2
## [61235] 2 3 3 2 6 2 2 2 2 2 6 6 6 6 2 6 2 2 2 6 2 2 2 6 6 2 2 2 2 3 2 2 2 2
## [61269] 2 6 2 2 2 2 2 5 2 3 5 5 5 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 3 2 2
## [61303] 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 6 2 2 6 2 6 2 2 2 2 2 2 2 2 2 3 5
## [61337] 6 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 3 2
## [61371] 6 6 2 2 6 2 2 2 6 6 2 2 2 2 6 6 6 6 6 6 2 3 6 6 6 6 6 6 2 2 2 2 2 2
## [61405] 2 2 2 2 2 6 2 6 6 2 2 2 2 2 6 6 6 6 6 6 2 6 6 6 6 2 2 2 2 2 2 2 2 2
## [61439] 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 6 3 6 2 2 2 2 2 2 2 2
## [61473] 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 6 6 6 6 6 2 2 2 2 3 2 3 2 2 2
## [61507] 5 2 2 2 2 5 2 6 6 6 6 6 2 6 6 6 6 2 2 2 6 2 6 6 2 2 6 2 2 2 2 3 3 2
## [61541] 2 2 3 6 2 2 2 2 2 2 2 2 2 6 2 6 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2
## [61575] 2 3 6 6 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 5 2 2 2 2 2 3 2 2 2 2 2 2 2 6
## [61609] 2 6 6 2 6 6 2 2 2 2 2 3 6 6 2 2 2 2 2 2 3 2 3 2 3 2 2 6 6 6 6 6 6 2
## [61643] 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2
## [61677] 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 5 2 5 5 2
## [61711] 2 2 2 2 2 2 6 2 2 2 2 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 3 3 2
## [61745] 2 2 2 2 2 6 2 6 2 6 2 3 2 2 2 2 2 1 1 1 1 2 2 2 2 2 3 3 3 3 3 3 2 2
## [61779] 3 2 2 2 2 3 6 6 3 2 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2
## [61813] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 2 2 3 2 2 2 2
## [61847] 2 3 2 2 2 3 3 2 2 2 2 2 6 2 2 6 3 3 2 2 2 2 2 6 2 2 2 6 6 2 2 6 6 6
## [61881] 2 6 6 6 6 6 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 6 2 2 6 2 6 2 2 2 2 2 2
## [61915] 2 2 2 6 6 2 6 6 2 2 2 2 2 2 3 3 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2
## [61949] 6 6 2 2 2 6 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 6 6 3 2 2 2 6 2 2 2 6
## [61983] 6 2 2 2 2 2 2 2 2 2 2 3 3 6 2 6 2 6 2 2 2 2 2 3 2 2 5 2 5 2 2 2 2 3
## [62017] 3 6 2 2 2 6 2 2 2 2 6 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 3
## [62051] 6 2 2 6 2 2 6 2 6 2 6 6 2 2 2 2 2 2 2 6 2 6 2 2 5 2 2 2 2 3 2 2 2 3
## [62085] 2 2 3 2 2 2 2 6 2 2 3 2 2 2 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 2
## [62119] 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 6 6 6 3 2 2
## [62153] 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 6 2 2 3 2 2 2 2 2 2 3 2 2 6 2
## [62187] 2 2 2 2 6 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 6 6 6 2 6 6 2 2 2 2 2
## [62221] 2 2 2 2 6 6 6 2 2 2 2 2 2 2 6 2 2 6 2 2 3 6 6 6 6 6 6 6 6 2 2 2 2 2
## [62255] 3 6 2 3 3 3 2 2 3 3 3 3 3 3 3 4 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2
## [62289] 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 3 2 6 6 2 2 2 2 2 2 6 6
## [62323] 2 2 6 3 2 2 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2
## [62357] 2 5 5 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2 2
## [62391] 2 3 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 3 3
## [62425] 3 2 2 3 2 2 2 2 2 6 2 6 2 2 2 3 3 3 2 3 6 6 6 2 2 2 2 2 2 2 2 2 2 2
## [62459] 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 6 6 6 6 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2
## [62493] 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 6 6 3 6 2 2 2 2 2 2 6 6 6 6 6 6 2 2
## [62527] 2 2 2 2 2 2 2 3 6 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 6 2 2 2 2
## [62561] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2
## [62595] 2 2 2 2 2 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 3 2
## [62629] 2 2 2 2 2 6 2 3 2 2 3 3 2 6 6 6 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 6 3
## [62663] 6 6 6 3 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [62697] 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 5 5 2 2 2 2 2 2 2 2
## [62731] 2 6 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [62765] 3 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 3 2 6 2 3 2 2 2 2 2 2 2 2 2 2
## [62799] 6 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3
## [62833] 2 2 6 2 2 2 2 2 2 3 2 2 2 6 2 2 2 2 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2
## [62867] 2 2 2 2 2 2 2 2 6 4 2 2 2 2 2 2 2 2 5 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2
## [62901] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 3 2 2 3 2 2 2 2
## [62935] 3 3 6 3 2 3 2 3 2 2 2 2 2 6 3 2 6 2 2 2 2 2 2 6 2 2 2 6 6 6 2 2 2 2
## [62969] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2
## [63003] 2 2 2 5 2 5 2 2 2 2 2 2 5 2 2 2 5 2 2 2 2 2 2 2 3 2 5 5 2 2 2 2 2 2
## [63037] 2 5 2 5 2 2 2 2 2 2 2 2 2 2 5 5 2 6 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2
## [63071] 2 2 6 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 6 6
## [63105] 6 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 2
## [63139] 2 6 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 6 2 2 6 2 6 2 2 2 2 2 2 2 2 3 6
## [63173] 3 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 3 2 2 6 6
## [63207] 2 2 2 2 2 2 2 2 2 2 2 2 5 5 2 2 6 2 2 2 3 6 2 6 6 2 2 2 2 2 2 2 2 2
## [63241] 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 6 6 2 2 2 3 2 2 2 6 2 6 2 2 2 2
## [63275] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [63309] 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 6 6 6 6 6 6 6 6 6 6
## [63343] 6 6 6 6 6 6 6 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 3 6 2 6 6 6 3
## [63377] 6 6 3 3 3 3 2 2 2 2 2 2 2 2 5 5 5 2 2 3 2 2 2 2 2 2 2 6 2 2 6 2 6 2
## [63411] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2
## [63445] 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 6 6 6 2 6 2 6 2 6 2 2 2 2 2 2 6 3
## [63479] 6 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 6
## [63513] 2 3 2 2 2 2 2 6 2 2 2 6 2 2 5 2 2 2 2 2 2 2 5 5 2 2 2 2 2 2 2 2 2 2
## [63547] 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 6 2 2 6 6 2
## [63581] 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 5 2 2 3 2 3 2 2 2 2 2 2 2 6 2 2 2 2
## [63615] 2 2 2 2 6 2 2 6 6 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 6 6 6 2 2 6 6 3 2 2
## [63649] 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2
## [63683] 2 2 2 2 2 6 6 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2
## [63717] 2 3 6 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 6 3 3 2 2 2 2 5
## [63751] 2 2 2 2 2 3 2 2 2 2 2 2 6 2 2 6 2 3 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2
## [63785] 2 2 3 2 3 2 6 6 2 6 6 6 2 2 2 3 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 6
## [63819] 2 2 2 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6
## [63853] 6 6 6 2 2 2 2 2 2 3 2 6 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2
## [63887] 6 6 2 2 2 6 2 6 6 2 6 6 6 2 6 6 6 6 6 6 6 6 6 6 2 2 2 6 2 6 6 6 6 6
## [63921] 6 2 2 2 2 2 5 5 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 6 6 6 6 6 3 3 6 6 3 3
## [63955] 2 2 2 2 2 2 2 2 2 3 3 2 2 6 2 6 6 6 6 6 6 6 2 2 2 2 2 6 2 2 2 3 2 2
## [63989] 2 2 2 2 3 3 3 3 2 2 2 2 5 2 2 2 2 2 2 2 3 2 2 6 6 6 6 6 6 6 6 6 2 2
## [64023] 2 2 2 6 2 2 2 6 6 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 6 2 2 2
## [64057] 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [64091] 2 2 2 6 3 2 2 2 2 6 2 2 6 2 2 2 6 3 2 6 2 2 2 2 2 2 2 6 6 2 2 6 6 6
## [64125] 6 6 6 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 3 2 6 2 6 2 3 2 6 2 2
## [64159] 2 2 3 2 6 2 4 4 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2
## [64193] 2 3 3 6 2 2 2 2 2 3 2 2 6 6 6 2 2 2 2 2 2 2 2 2 5 5 2 2 2 2 3 2 3 2
## [64227] 2 2 2 2 2 6 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2
## [64261] 6 6 2 5 2 2 2 5 2 2 2 5 2 2 2 2 1 3 6 3 2 2 3 2 2 2 2 2 2 2 2 2 5 5
## [64295] 5 2 2 2 2 6 2 2 2 3 6 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 6 6 6
## [64329] 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 3 2 2 3 3 2
## [64363] 2 2 2 2 2 3 2 2 2 6 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 6 2 2 3 3 2 2
## [64397] 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 5 2 2 2
## [64431] 2 6 6 6 6 6 6 3 2 2 2 3 2 6 2 2 6 6 6 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2
## [64465] 2 2 2 2 2 6 6 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2
## [64499] 2 2 2 3 2 3 2 2 2 2 6 2 2 2 6 6 6 2 2 2 6 2 6 6 2 2 2 6 2 2 2 2 2 2
## [64533] 2 2 6 6 6 2 6 6 6 6 6 6 2 2 2 3 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2
## [64567] 2 2 6 6 2 2 6 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2
## [64601] 2 3 3 2 2 2 2 5 2 2 2 2 2 5 2 2 2 3 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 6
## [64635] 6 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3
## [64669] 6 2 2 2 2 2 2 2 2 1 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6
## [64703] 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 6 2
## [64737] 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 6 2 2 2 2 2 2
## [64771] 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 6 2 2 6 6 2 6 2 2 2 2 3 2 2 3 3 2 2 2
## [64805] 2 2 2 2 2 6 3 3 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 5 2 5 2 2 2 2
## [64839] 2 2 2 2 6 6 6 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2
## [64873] 6 2 2 2 2 6 2 2 2 2 2 3 2 2 2 2 3 2 6 2 3 2 6 3 3 3 3 3 2 2 2 2 2 2
## [64907] 2 2 2 2 6 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 3 2 2 2 2 2 2 2 2
## [64941] 2 6 2 6 2 2 2 2 2 3 6 2 3 2 2 1 2 3 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2
## [64975] 2 6 3 2 2 2 2 2 2 2 2 2 4 4 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3
## [65009] 3 3 2 2 2 2 2 2 6 3 6 6 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2
## [65043] 5 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3
## [65077] 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2 3 3 6 2 2 2 2 2 2 2 2 5 5 3 2
## [65111] 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2
## [65145] 2 2 2 3 3 2 6 3 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 2 2 6 2 2 2 2
## [65179] 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2
## [65213] 2 2 2 2 6 2 6 2 2 2 2 6 3 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2
## [65247] 2 2 2 3 3 2 2 2 2 2 2 2 2 2 5 6 6 2 2 6 6 6 6 6 6 2 2 6 2 2 2 2 2 6
## [65281] 6 6 6 6 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2
## [65315] 2 6 6 6 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2
## [65349] 2 2 2 2 6 6 6 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 6 2 2 2 2
## [65383] 3 3 2 2 6 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2
## [65417] 6 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 3 2 2 3 2
## [65451] 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 2 2 6 6 2 2 2 2 2 2 3 2 2 3 2 2
## [65485] 2 2 2 2 2 2 2 5 3 3 2 2 2 2 2 2 2 2 3 2 6 2 6 2 2 2 2 2 2 2 2 6 2 2
## [65519] 2 2 2 2 2 2 2 2 6 2 2 3 2 2 2 3 6 6 6 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2
## [65553] 3 2 2 6 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 6 6 3 6 6 3 6 6 2 2 2 6
## [65587] 2 2 2 2 2 2 6 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 6 6 6 6
## [65621] 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [65655] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2
## [65689] 2 2 5 3 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 6 2 2 2 2 3 2
## [65723] 6 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2 2
## [65757] 2 3 2 2 2 2 2 2 2 2 6 2 2 2 6 6 2 6 6 6 2 2 6 6 2 2 2 2 2 2 2 2 6 6
## [65791] 6 2 6 6 6 6 6 6 6 6 6 6 2 3 2 2 3 3 3 3 3 3 3 2 6 2 6 2 6 6 2 6 6 6
## [65825] 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2
## [65859] 3 2 6 2 3 3 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 2 2 6 6 2 2 2 2 6 6 3 2 2
## [65893] 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 3 5 2 5 2 2 2 5 2 2 6
## [65927] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [65961] 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 6 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2
## [65995] 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 5 2 2 2 2 5 2 2 6 6 6 6
## [66029] 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [66063] 2 6 2 6 2 2 2 2 2 2 2 6 2 6 6 2 2 3 2 2 2 2 2 2 2 5 2 2 2 2 2 2 2 2
## [66097] 2 5 5 2 2 2 2 2 6 2 2 2 2 6 2 6 6 6 2 2 2 2 2 6 6 2 2 2 6 2 2 2 2 6
## [66131] 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 5 5 3 2 2 2 2 2 2 2 2 6 6
## [66165] 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 6 6 6 6 6 6 3 2 2 2 2 2 2 2 2 6 6 2
## [66199] 2 2 2 2 2 2 3 2 6 6 2 2 6 3 3 3 6 3 6 6 6 3 2 2 2 2 2 2 3 3 3 3 2 2
## [66233] 2 2 2 2 2 5 2 2 2 3 2 6 2 6 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2
## [66267] 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 5 5 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [66301] 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2
## [66335] 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 3 6 6 2
## [66369] 2 2 3 2 2 2 2 6 2 2 6 6 2 2 6 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 6 3 2 2
## [66403] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 3 2 6 2 2 2 1 2 6 6
## [66437] 2 2 2 3 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6 6 6 6
## [66471] 6 2 6 2 2 2 2 2 2 2 2 2 2 2 5 2 3 3 2 6 2 6 3 5 2 2 2 2 2 2 2 2 2 2
## [66505] 6 6 2 2 2 2 2 2 2 2 2 2 2 3 2 2 5 2 5 3 5 3 3 3 2 2 2 2 2 2 2 2 2 2
## [66539] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6 6
## [66573] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2
## [66607] 2 2 2 6 6 6 2 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2 6 2 2 2
## [66641] 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2
## [66675] 2 2 2 2 2 2 2 5 2 3 2 2 2 6 2 2 3 3 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [66709] 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2
## [66743] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2
## [66777] 2 6 2 2 6 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 6 2 2 2 2 6 2 2 2 6 6 2 2
## [66811] 2 2 2 6 2 2 2 2 2 6 6 6 6 6 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2
## [66845] 6 2 6 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 3 2 2 2 2 2 2
## [66879] 2 2 2 2 2 2 6 3 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 6
## [66913] 2 2 2 2 2 2 6 6 3 6 6 6 2 2 2 2 6 2 2 2 2 6 6 2 2 2 6 6 6 6 6 6 2 2
## [66947] 2 2 2 2 2 2 2 2 6 5 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 6 2 2 2 6 2 2 2
## [66981] 2 2 2 2 2 2 2 2 3 3 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 2 2
## [67015] 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 6 2 2 2 6 2 2 2 2
## [67049] 2 2 2 2 3 3 3 3 2 2 6 2 2 6 2 2 2 6 6 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2
## [67083] 2 2 2 2 6 6 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 5 2 2 5 5 2 2 2 2 2
## [67117] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 3 1
## [67151] 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 6 2 2 2 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2
## [67185] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 3 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2
## [67219] 6 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2
## [67253] 3 3 2 2 2 2 2 2 2 2 6 3 3 2 6 6 6 6 6 6 6 6 6 6 2 2 2 3 6 3 3 3 3 6
## [67287] 3 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6
## [67321] 2 2 2 2 2 2 2 2 2 6 6 2 2 3 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2
## [67355] 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2
## [67389] 2 2 2 2 5 3 6 3 3 2 2 2 6 6 6 6 6 6 6 6 2 2 5 2 2 2 6 6 6 2 2 2 3 2
## [67423] 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 6 6 2 6 6 2 2 2 2
## [67457] 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 3 2 3 2 2 3
## [67491] 3 6 3 3 3 3 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 6 2 2 3 2 2 2 2 2 2 6 2
## [67525] 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2
## [67559] 2 3 2 3 2 2 2 2 6 6 2 2 6 2 6 2 2 2 2 3 6 2 2 2 3 2 2 2 2 2 3 6 6 2
## [67593] 6 6 5 2 2 2 2 2 6 2 2 2 6 6 2 2 2 2 2 6 3 6 6 6 2 2 3 2 2 2 2 2 3 2
## [67627] 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 6 6 2 2 2 2 2 2 2 2 2 6
## [67661] 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 5 5 3 3 5 2 2 2 3 2 2 2 2 2
## [67695] 2 2 2 2 2 3 2 2 2 2 2 2 2 2 5 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 6 2
## [67729] 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 6 2 2 2 3 2 2 2
## [67763] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [67797] 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [67831] 2 6 2 2 6 2 6 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 6
## [67865] 2 6 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 5 3 5 2 2 2 3 2 3
## [67899] 3 3 3 3 2 2 6 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 5 3 3
## [67933] 3 3 3 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 6 2 2 2 2 2 2 2 2 2
## [67967] 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 6 2
## [68001] 6 2 2 2 2 2 3 2 2 6 2 6 2 2 2 6 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 6
## [68035] 6 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 5 3 5 2 2 2 5 2
## [68069] 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2
## [68103] 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 6 6 6 2 2
## [68137] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 3 6 3 3 3 2 2 2
## [68171] 2 2 6 2 2 6 6 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2
## [68205] 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 6 2 2 3 6 3 3 6 6 2 2 2 2 2
## [68239] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2
## [68273] 2 2 2 6 6 2 2 3 2 2 2 2 2 3 2 2 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 6 6
## [68307] 6 6 6 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2 6 2 2 6 2 2
## [68341] 2 6 6 3 2 2 2 2 3 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6
## [68375] 2 3 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 3 2 5 2 6 6 2 2 2 2 2 2 2
## [68409] 2 2 2 2 2 2 3 2 2 6 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 6 6 2 2 2 6 2 2
## [68443] 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 6 3 6 2 2 2 2 2 2 2 2 2 2 2 2
## [68477] 2 2 2 2 6 2 6 6 2 6 2 2 2 2 2 6 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2
## [68511] 3 2 3 2 3 2 2 3 3 2 2 2 2 6 6 2 2 6 2 6 2 2 6 6 2 2 2 2 2 6 2 2 2 2
## [68545] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 3 3 3 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [68579] 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 6 6 6 6 6 6 2 6 6 6 6 6
## [68613] 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 5 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2
## [68647] 2 2 6 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2
## [68681] 2 3 2 6 2 2 2 6 2 2 2 2 6 6 6 2 6 6 2 2 2 2 2 2 2 6 2 2 2 2 2 3 2 2
## [68715] 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 3 6 2
## [68749] 6 6 2 2 2 2 2 3 2 2 6 6 3 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 5 5 5 5
## [68783] 5 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 6 6 6 6 6 2 2 2 2 2 2 2 2 6 6 6
## [68817] 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 3 2
## [68851] 2 2 2 2 2 2 2 2 6 6 2 5 2 2 2 2 2 6 6 3 2 2 2 2 2 2 6 2 6 2 2 2 2 2
## [68885] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 5 3 2 2 2 2
## [68919] 2 2 2 2 2 4 2 4 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2
## [68953] 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 6 6 2 2 2 2 3 2 2 2 2 2
## [68987] 2 3 2 6 6 6 2 2 3 2 2 2 6 6 6 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2
## [69021] 3 3 3 6 3 2 2 2 6 2 2 6 6 6 2 6 2 2 2 2 2 2 2 2 2 6 3 2 2 3 2 2 2 6
## [69055] 2 2 2 2 2 2 2 2 3 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 6 6 6 6 6
## [69089] 6 6 6 2 2 2 2 2 2 2 6 2 2 6 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2
## [69123] 5 5 2 3 6 6 6 6 6 2 2 3 3 2 2 2 2 2 2 2 2 2 3 5 2 2 2 2 2 2 2 2 2 3
## [69157] 3 2 2 2 2 2 2 2 2 6 6 2 2 2 6 2 2 2 2 2 2 2 3 2 3 6 6 6 6 2 2 2 6 6
## [69191] 2 2 2 2 2 2 2 2 2 5 3 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2
## [69225] 2 2 2 2 6 6 2 2 3 6 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 6 2 2 2 2 2 2 2 2
## [69259] 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 5 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [69293] 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 2 2 6 2 2 2 2 6 6
## [69327] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 3 2 2 3 2 2 2 6 2
## [69361] 6 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 2 2 6 6 6 2 6 6 2 2 2 2 2 3
## [69395] 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2
## [69429] 6 2 6 2 2 2 2 2 2 3 6 6 6 3 3 2 2 2 2 2 3 3 2 3 6 2 2 2 2 2 2 2 2 2
## [69463] 2 2 6 2 3 2 2 2 2 3 2 6 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6
## [69497] 2 6 2 2 2 2 5 6 3 2 2 3 3 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 3 3
## [69531] 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2
## [69565] 2 3 2 6 6 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 2 2 2 2
## [69599] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 6 6 6 6 6 6 2 2 2 6
## [69633] 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 6
## [69667] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 5 2 5 2 3 2 2
## [69701] 2 3 3 2 3 6 3 2 2 2 2 2 6 2 2 6 2 6 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2
## [69735] 6 2 2 2 2 6 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2
## [69769] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 6 2 6 6 3 2 2 2 2 2 2 6 2
## [69803] 2 2 6 6 2 2 2 2 2 2 2 2 5 2 3 2 2 2 2 2 2 6 6 6 6 6 2 3 2 2 3 2 2 2
## [69837] 2 2 2 2 2 2 2 2 3 2 2 2 6 2 2 2 2 2 2 2 2 2 2 5 5 2 2 2 2 2 2 2 2 2
## [69871] 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 6 6 2 3 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6
## [69905] 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 3 6 2 2 2 2
## [69939] 2 2 2 2 2 2 2 2 2 6 6 2 2 2 6 6 6 6 6 6 6 6 2 2 2 6 2 2 2 2 2 2 3 2
## [69973] 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 5 2 2 2 2 2 2 2 2 2 6 6 2 2
## [70007] 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2
## [70041] 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 6 6 2 2 2 3
## [70075] 2 5 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2
## [70109] 2 2 2 2 2 6 2 2 2 2 2 2 2 6 3 2 2 2 2 3 6 6 6 3 6 6 3 2 2 2 2 2 2 2
## [70143] 2 2 2 6 6 2 2 2 2 2 2 6 2 6 2 6 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2
## [70177] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2
## [70211] 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 6 2
## [70245] 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [70279] 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 6 6
## [70313] 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 2 2 3 2
## [70347] 2 5 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2
## [70381] 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [70415] 2 2 2 2 6 2 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6
## [70449] 6 6 6 6 6 6 6 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 6 3 2 6 2 2 2
## [70483] 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [70517] 3 2 6 6 6 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [70551] 2 6 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2
## [70585] 6 6 6 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2
## [70619] 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 3 2 2 2 2 2 2 2 2 2 6 6
## [70653] 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 3 2 2 2 2 2 2 2 2 6 2 6
## [70687] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 6 6 2 2 2 2 2 2
## [70721] 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 5 6 2 2 2 2 2 6 6 6 6 6 6 2 2
## [70755] 2 2 2 5 2 3 5 5 5 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2
## [70789] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 6 2 2 2 2 6 2 2 2 2
## [70823] 2 2 2 2 2 6 6 2 2 2 2 2 6 6 6 6 2 6 2 2 6 2 2 2 2 2 2 2 3 2 2 2 2 2
## [70857] 2 2 2 6 6 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 2 2 2 2 2 3 2 3 2 6 3 2 5 2
## [70891] 2 2 3 6 6 2 2 2 2 2 6 6 6 6 6 6 2 6 2 2 2 2 3 2 2 2 3 2 2 2 2 6 6 6
## [70925] 2 6 6 6 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 2
## [70959] 6 2 2 2 2 2 2 2 2 3 2 3 6 3 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 6
## [70993] 6 6 2 2 6 2 2 2 3 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2
## [71027] 2 2 5 2 2 2 2 2 2 2 5 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6
## [71061] 2 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 6 6 6 2
## [71095] 2 2 2 2 2 2 2 2 5 1 2 3 2 2 3 6 5 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2
## [71129] 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [71163] 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2
## [71197] 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [71231] 2 2 2 2 6 6 2 2 2 3 2 2 6 2 2 6 6 2 2 2 2 2 6 6 6 2 6 6 2 2 2 2 2 2
## [71265] 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 6 3
## [71299] 2 2 3 6 2 2 2 2 2 2 2 2 6 2 3 2 2 2 6 6 6 6 6 6 6 6 2 2 2 6 2 2 2 2
## [71333] 2 6 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 5 6 3 2 6 6 2 3 2 3 6
## [71367] 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 5 5 5 2 2 5 2 2 6 2 2 2 2 2 2 6
## [71401] 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 3 2 2
## [71435] 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2
## [71469] 2 2 2 2 2 2 3 2 2 3 2 1 2 2 5 5 5 5 5 5 5 2 2 2 2 2 2 2 2 2 6 5 2 2
## [71503] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2
## [71537] 2 2 2 2 2 2 6 2 2 2 3 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 6 6 6 3 2 2 2 2
## [71571] 6 6 6 2 6 2 6 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 6 6 2 2 3 2 2 2 2 2
## [71605] 4 2 2 4 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 6 2 2 2 6 6 2 2 2 2 2 2
## [71639] 2 2 6 6 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 6 6 2 2 2 2 2 2 2 3 2 2 2 2
## [71673] 3 2 3 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 6
## [71707] 2 3 3 2 2 2 6 2 6 6 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6
## [71741] 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 3 2 2 6 6 2 2 2 2 2 2 2 2 5 2
## [71775] 5 2 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 3 6 2 6 2 6
## [71809] 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2
## [71843] 2 2 2 2 2 2 2 2 3 3 2 2 6 6 2 2 2 2 2 6 2 2 2 2 2 2 2 6 6 6 6 6 2 2
## [71877] 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 3 2 2 2 2 6 2 2 2
## [71911] 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
## [71945] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2
## [71979] 2 2 2 2 2 6 2 2 2 2 2 6 2 2 6 2 6 2 2 2 6 2 2 2 2 2 3 6 2 2 2 2 2 6
## [72013] 2 3 6 3 6 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2 2 2
## [72047] 2 6 6 2 2 6 6 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 6
## [72081] 2 2 2 2 2 2 2 2 6 2 2 3 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2
## [72115] 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2
## [72149] 2 2 2 2 2 3 6 2 2 3 3 3 3 2 6 2 2 6 6 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3
## [72183] 2 2 2 2 2 2 2 2 2 5 5 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 6 2 2 2 2 2 2
## [72217] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 3 6 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2
## [72251] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2
## [72285] 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6 6 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3
## [72319] 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 5 2 2 2 2 2 2 2 3 2 2 2 2 3 2
## [72353] 2 2 2 6 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 5 2 2 6 2 2 2 2
## [72387] 2 2 2 6 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 3 2 2 5 5 2 2 3 2 6 2 6
## [72421] 2 6 6 3 2 2 2 2 1 2 3 5 2 5 5 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6
## [72455] 6 6 6 2 2 2 2 2 2 2 3 2 2 2 2 6 6 2 2 3 6 6 6 6 6 2 2 2 2 3 3 3 3 3
## [72489] 3 3 2 2 3 6 6 6 6 6 6 6 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2
## [72523] 6 2 2 2 2 2 2 2 2 2 6 6 2 2 3 2 2 2 2 3 3 3 5 2 2 6 6 6 6 6 6 6 2 3
## [72557] 2 2 2 2 2 2 6 2 2 2 6 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2
## [72591] 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2
## [72625] 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 6 2 6 6 2 2 2
## [72659] 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2
## [72693] 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 1 2 2 3 2 2 3 3 3 3 5 5 2 5 5 2 2
## [72727] 5 3 5 2 5 5 2 2 3 2 2 6 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2
## [72761] 2 2 2 2 6 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2
## [72795] 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 6 2 2 2 3 2 3 2 2
## [72829] 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 3 2
## [72863] 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 6 6 6 6
## [72897] 3 2 2 2 2 2 3 3 3 6 6 6 2 2 6 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2
## [72931] 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2 6 6 2 2 3 3 3 3 3 2 3 3 3 3 2
## [72965] 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [72999] 1 2 2 2 2 2 1 2 2 2 5 2 2 2 5 2 5 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 6
## [73033] 2 2 2 2 6 6 6 6 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 3 5 2 2 2
## [73067] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 3 2 2 6 6 3 3 2 3 6 2 2
## [73101] 6 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 3 3 6 2 2 3 2 3 2 2 2 2 2 2
## [73135] 2 2 2 6 6 2 6 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3
## [73169] 2 3 3 3 2 2 2 2 2 6 6 2 2 6 6 2 6 2 6 6 2 6 3 6 6 6 2 2 2 2 2 2 2 6
## [73203] 6 2 6 2 2 2 2 2 2 2 2 6 2 6 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2
## [73237] 3 2 2 2 2 6 6 6 6 6 6 2 3 2 2 6 6 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6
## [73271] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 5 2 3 2 2 2 2 2 2 2
## [73305] 2 6 6 6 6 6 6 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 2 2 2 2 2 6 2 2 2
## [73339] 2 2 2 2 2 2 2 2 6 6 2 2 2 2 3 2 2 2 6 2 3 2 3 6 2 2 2 2 3 3 6 2 2 2
## [73373] 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 6 2 2 2 6 3 2 3 2 2 2
## [73407] 2 2 6 2 2 6 2 2 2 2 2 6 2 2 2 2 6 2 6 2 2 6 6 6 6 6 6 6 6 6 2 6 2 2
## [73441] 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2
## [73475] 6 2 2 2 2 6 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 6 6 2 3 6 6 2 3 3
## [73509] 3 3 6 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 5 2
## [73543] 2 2 2 3 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 6 2 2 3 6 2 2 2 2 2 2 2 2 2
## [73577] 2 6 3 2 2 2 2 2 2 3 2 6 2 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 6 2 3 2
## [73611] 2 2 2 2 2 2 3 2 2 2 3 6 3 2 2 3 2 2 2 2 2 2 3 3 2 6 6 6 6 6 6 6 6 6
## [73645] 6 2 2 2 2 2 3 2 2 2 3 3 2 2 2 6 2 2 2 2 6 6 2 2 6 6 2 2 6 2 6 6 6 6
## [73679] 2 2 2 2 2 2 2 5 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 5 2 3 2 2 2 2 2 2 2 2
## [73713] 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 3 2 3 2 2 2 3 2 2 2
## [73747] 6 3 6 6 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 6 2 3 2 2 2
## [73781] 2 2 2 2 2 2 1 5 2 2 2 2 2 6 2 2 2 6 6 2 2 2 6 2 6 6 6 2 2 2 2 2 2 2
## [73815] 2 6 2 2 2 6 2 6 2 2 2 2 2 2 2 6 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2
## [73849] 2 2 2 2 3 6 2 2 6 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 6 2 2 2 6
## [73883] 6 6 6 6 3 2 2 2 2 2 2 2 3 6 6 6 2 2 2 6 2 6 2 2 3 6 6 3 6 6 2 2 2 2
## [73917] 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 6 3 2 2 2 2 2 2 5 2
## [73951] 5 5 5 2 2 2 2 2 6 2 2 2 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2
## [73985] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 6 2
## [74019] 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 6 2 6 6 6 6 2 2 2 2 2 2
## [74053] 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [74087] 2 2 2 6 2 2 2 2 2 6 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2
## [74121] 2 2 2 6 2 2 2 2 2 2 2 6 2 2 6 6 3 6 6 6 2 2 2 2 2 2 6 2 2 3 3 2 1 2
## [74155] 2 2 3 2 3 2 2 5 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 5 2 2 2 2 5 2 3 2 2
## [74189] 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2
## [74223] 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [74257] 2 2 2 6 6 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2
## [74291] 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2
## [74325] 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 5 2 2 2 2
## [74359] 2 5 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3
## [74393] 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 6 5 2 3 5 2 2 2 2 2 6 2 6 6 2 2 2
## [74427] 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 4 4 2 2 5 2 2 2 2 2 2 5 2 2
## [74461] 1 2 2 2 2 2 2 2 5 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2
## [74495] 2 2 2 2 2 2 2 6 6 2 3 5 3 3 3 2 2 2 5 5 2 2 6 2 2 6 2 2 2 2 2 2 2 2
## [74529] 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2
## [74563] 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2
## [74597] 2 2 6 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 3
## [74631] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [74665] 6 6 6 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 6 6 2 3 2 2 2 3 2 6
## [74699] 2 3 2 2 3 6 2 6 2 6 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2
## [74733] 6 6 2 2 2 2 2 6 2 6 2 6 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 6 2 6 3 6 6 3
## [74767] 6 2 2 2 2 2 2 2 2 6 6 2 2 6 2 2 2 2 2 2 2 2 2 2 3 6 2 1 2 2 2 6 2 2
## [74801] 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 6 6 6 6 2
## [74835] 2 2 2 2 2 2 2 6 3 2 2 2 2 2 6 6 2 6 2 6 6 2 2 2 2 2 2 2 2 6 6 2 2 2
## [74869] 2 2 3 3 3 3 3 3 3 2 6 2 6 2 2 2 2 2 2 6 2 2 2 2 2 3 2 3 6 2 2 2 6 6
## [74903] 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [74937] 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3
## [74971] 2 6 3 6 6 6 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 5 5 5 2 2 2 2 6 2
## [75005] 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 6 2 2 2 3 2 2 2
## [75039] 2 6 2 2 2 2 2 2 2 2 2 2 2 5 5 2 2 2 2 2 2 2 2 2 3 3 2 5 2 2 2 2 2 3
## [75073] 2 2 2 2 2 6 2 2 2 6 2 6 6 6 2 3 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 3 3 3
## [75107] 3 3 2 3 3 2 2 2 3 3 2 3 3 6 3 2 3 2 3 2 3 6 3 3 2 2 2 2 2 2 2 2 2 3
## [75141] 3 2 2 2 2 2 2 2 2 6 3 3 2 5 3 3 3 3 3 3 3 3 1 2 2 2 2 2 2 2 2 2 2 2
## [75175] 3 2 2 3 2 2 2 2 2 3 3 6 2 2 2 6 6 6 6 6 6 3 2 2 2 2 2 2 2 2 2 2 2 2
## [75209] 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 3 2 5 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2
## [75243] 2 2 2 6 6 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2
## [75277] 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [75311] 2 2 2 2 3 6 6 2 2 2 5 5 5 2 5 2 5 5 2 6 2 2 5 2 2 2 2 2 2 2 2 2 2 2
## [75345] 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 3 2 2 6 2 6 2 6 2 6 2 6 2 2 2 2 2 2
## [75379] 2 2 2 6 6 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 3 2 6 2 2 2 2 3 5 2 2 2 2
## [75413] 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 3 2
## [75447] 2 2 3 2 2 2 2 2 2 2 2 2 3 6 2 2 2 5 2 6 2 2 2 2 1 2 2 2 2 2 6 2 6 2
## [75481] 6 6 2 2 2 2 2 2 3 2 2 2 6 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 6 3 2 2 2
## [75515] 2 2 2 3 6 2 2 2 6 3 6 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 6 3 2 2
## [75549] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 6 6 6 2 2 3 3 3 3 3 3 3 3 3 2
## [75583] 2 3 2 6 2 2 2 2 2 2 2 2 2 2 3 3 2 2 6 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2
## [75617] 6 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 6 2 2 2 3 2 6 6
## [75651] 6 6 2 6 2 2 2 2 2 2 2 3 6 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 6 2
## [75685] 6 6 2 2 6 6 6 2 2 2 2 2 2 2 2 6 6 3 2 3 3 2 6 6 2 2 2 6 6 2 5 2 5 2
## [75719] 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 6 2 2 3 2 2 2 3 2 2 2 2 2 2 3
## [75753] 2 2 3 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2
## [75787] 6 2 2 6 2 6 6 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2
## [75821] 3 3 3 2 2 2 2 2 2 2 2 3 6 2 6 3 2 3 6 6 6 6 6 6 3 2 5 3 2 2 2 2 2 2
## [75855] 2 2 5 3 2 2 2 3 2 2 5 2 3 2 2 5 2 2 2 2 2 5 2 5 2 2 3 6 3 3 3 3 3 3
## [75889] 3 2 2 2 6 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2
## [75923] 2 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 6 2 2 2 2 2 2 2
## [75957] 2 2 2 2 3 2 2 2 3 2 2 2 5 2 2 2 2 2 2 2 5 2 2 2 2 6 2 2 2 2 6 6 2 2
## [75991] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 5 2 3 2 2 3 2 2 2 3 2 2 2
## [76025] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2
## [76059] 2 2 6 2 6 6 6 2 2 2 6 2 3 6 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2
## [76093] 2 2 3 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [76127] 2 2 2 6 6 2 2 2 2 2 2 4 2 2 4 2 2 2 2 2 6 6 2 2 6 2 2 2 2 2 2 2 2 2
## [76161] 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3
## [76195] 3 6 6 2 2 2 5 2 3 2 3 3 2 2 2 6 2 6 2 2 3 2 2 2 2 2 6 6 2 2 6 2 2 3
## [76229] 3 2 2 3 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 1 2 2 2 2 3 6 2 2 6 6
## [76263] 6 2 2 2 2 2 2 2 2 6 2 2 2 3 6 2 3 2 3 2 2 2 5 2 6 2 2 2 2 2 2 3 2 2
## [76297] 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 6 2 2 2 2 2 2 2 2 3 2 3 2
## [76331] 3 2 2 6 6 2 6 6 6 6 2 2 2 6 2 2 3 2 6 3 2 2 2 6 2 2 2 2 2 6 2 2 2 2
## [76365] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 6 2 2 2 2 2 6 6 2 2 2 2 2 3 6
## [76399] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 3 3 2 2 2 2
## [76433] 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 6 6 2 2 2 2 2
## [76467] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 6
## [76501] 2 2 2 2 6 2 2 2 2 2 2 3 2 6 2 2 2 2 2 6 6 6 6 6 6 3 3 2 2 2 2 6 6 6
## [76535] 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 6 6 6
## [76569] 6 6 6 2 2 2 6 6 6 6 6 6 6 6 2 2 6 2 2 2 2 3 3 6 2 2 2 6 2 2 6 2 2 6
## [76603] 6 6 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 2
## [76637] 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 3 3
## [76671] 2 2 5 2 2 5 2 3 2 2 5 2 2 2 2 2 2 2 6 6 6 6 2 2 2 3 3 3 3 3 3 3 3 2
## [76705] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 5 2 2 2 2 2 2 2 2 6 6 3 2 2
## [76739] 2 2 2 3 2 2 2 2 5 2 2 2 2 2 2 2 2 2 2 2 5 2 2 2 2 2 2 2 5 2 2 2 2 2
## [76773] 2 2 6 6 2 6 6 6 6 6 6 6 6 6 2 2 6 6 6 2 2 2 2 2 6 2 6 6 2 2 2 3 3 3
## [76807] 3 3 3 3 3 3 3 2 2 6 2 6 6 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [76841] 2 2 3 2 2 3 2 2 6 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 2 2 3
## [76875] 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 6 6 6 6 6 2 3 3 3 3 2 2
## [76909] 2 2 2 2 2 3 3 2 3 3 2 2 6 6 6 2 2 2 2 2 2 2 2 3 3 3 2 2 2 6 6 6 6 2
## [76943] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 3 3 3 3 2 2 2 2 2 2 2 2 6
## [76977] 2 2 2 2 2 2 2 2 6 2 6 2 6 2 2 2 3 2 2 2 2 6 2 6 3 3 3 3 2 3 3 3 3 5
## [77011] 5 5 2 2 2 2 5 2 2 2 5 5 2 2 2 2 2 2 2 2 6 3 3 2 1 2 2 2 2 2 2 2 2 1
## [77045] 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 6 2 3 6 6 3 2 6 2 2 2 2 2 2 2 6 2 2
## [77079] 2 2 5 2 2 2 2 2 5 2 2 2 2 2 2 2 5 2 2 3 2 2 2 6 2 2 6 2 2 2 2 2 2 2
## [77113] 2 2 2 2 2 2 2 6 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 3 6
## [77147] 2 2 2 2 6 6 6 3 2 3 2 2 2 2 2 2 3 2 2 2 6 6 2 6 6 6 6 6 6 6 2 2 2 2
## [77181] 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 6 6 2 6 6 3 6 6 6 3 2 3 6 2 2 2 2 2
## [77215] 2 2 2 2 5 5 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 3 3 3 2 6 6 6 6 6
## [77249] 6 6 6 6 6 6 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 2 6 2 2 6 2 2 2 3
## [77283] 2 2 6 2 6 2 2 2 2 6 2 2 6 2 2 2 6 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2
## [77317] 2 6 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
## [77351] 5 1 2 2 2 2 6 2 2 6 2 2 6 2 2 2 2 2 2 2 2 6 6 2 2 6 6 6 6 6 6 2 2 2
## [77385] 6 2 2 2 2 2 6 6 6 6 6 6 2 2 5 2 2 3 2 2 3 2 5 2 2 2 2 2 2 2 2 2 3 3
## [77419] 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 6 6 6 6 6 6 6 2
## [77453] 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 5 2 2 2 2 2 2 6 6 6 6 6 2 2
## [77487] 2 2 2 2 2 2 2 3 3 2 2 6 2 2 2 2 2 2 6 3 2 6 6 6 6 3 3 2 5 3 3 2 2 2
## [77521] 2 2 2 3 6 6 6 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 6 2
## [77555] 2 6 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2
## [77589] 2 2 2 3 5 1 2 2 2 2 2 2 2 2 2 2 6 2 3 2 2 2 3 2 2 2 2 2 2 2 2 6 2 2
## [77623] 2 3 2 3 3 2 2 2 2 2 5 3 2 2 2 5 2 2 2 2 3 2 2 2 6 2 3 2 2 2 2 2 2 2
## [77657] 2 2 3 3 2 2 2 2 2 2 2 6 2 6 6 2 2 5 5 2 5 2 2 5 2 5 2 2 2 2 3 6 3 3
## [77691] 5 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 5 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2
## [77725] 6 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 5 2 2 3 2 2 2 2 2 2 2 2 3 3
## [77759] 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 6 6 6 6 3 3 3 2 2 2 2 3 6 2 6 3 3 6
## [77793] 2 3 3 2 2 3 2 6 2 6 6 2 2 5 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2
## [77827] 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 6 3 5 5 2 2
## [77861] 2 2 2 2 2 2 3 6 6 2 2 2 2 2 2 2 2 6 6 6 2 3 2 2 2 3 6 6 6 6 6 2 2 2
## [77895] 2 6 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2
## [77929] 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 3 3 2 2 2 2 2
## [77963] 2 6 2 6 6 6 2 2 2 2 2 2 5 2 5 2 5 2 4 2 2 2 2 2 2 1 5 5 2 2 2 3 2 2
## [77997] 2 6 2 2 3 2 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2
## [78031] 2 2 3 6 2 5 2 2 2 5 5 3 3 5 5 2 2 2 2 2 2 2 2 3 6 6 2 2 2 2 2 2 3 2
## [78065] 2 2 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 3 2 2 2
## [78099] 2 6 2 2 2 2 2 2 3 2 2 6 2 2 6 6 6 6 3 6 2 6 6 6 2 6 6 2 2 2 2 2 2 2
## [78133] 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 6
## [78167] 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 3 5 2 2 2 2 2 2 2 2 2 2 2 2
## [78201] 6 2 2 6 6 2 2 6 2 2 2 2 6 2 2 6 6 6 6 2 3 2 2 2 2 2 2 3 3 6 2 3 2 2
## [78235] 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 6 2 2 2 2 3 2 2 2
## [78269] 6 6 2 6 6 6 2 6 2 2 2 2 2 2 2 2 3 2 5 2 2 2 2 2 2 6 2 6 2 6 2 3 2 2
## [78303] 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 3 6 3 5 3 2 2 2 2
## [78337] 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3
## [78371] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3
## [78405] 2 3 6 3 2 2 2 2 2 5 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 6 2 2 2 2 2 2
## [78439] 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [78473] 2 6 2 2 2 5 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 6 6 6 6 6 6 6
## [78507] 6 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 3 6 2 2 6 2 2 6 2 6
## [78541] 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 5 2 2 2 3 2 5 2 2 2 2 6 6 6 6 6 6 6 2
## [78575] 2 2 2 5 2 2 2 3 2 2 2 2 6 2 2 2 2 2 6 2 3 2 6 6 2 6 6 6 6 6 6 6 5 2
## [78609] 5 5 5 5 5 5 2 2 5 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2
## [78643] 5 2 6 2 2 2 2 2 2 2 2 2 2 3 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3
## [78677] 2 2 2 2 5 2 3 2 2 2 3 6 2 2 2 2 6 6 2 2 6 6 6 6 6 2 2 2 6 2 6 6 6 6
## [78711] 2 6 6 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 6 2 6 6 6 6 6 3 2 2 2 2 2 2
## [78745] 2 2 2 6 3 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 6 2 2 2 2
## [78779] 2 6 6 6 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 4 2 2 2
## [78813] 2 4 2 2 2 2 2 5 2 2 2 2 2 5 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 1 2 2 2
## [78847] 2 4 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 6 2 6 2 3 2 3 2 3 3 3 3 2 2 2 2 2
## [78881] 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 6 2 3 2 3 2 2 2 2 2 2 2 2 5
## [78915] 2 2 2 2 2 2 3 2 6 3 2 2 2 2 2 2 6 2 2 3 2 2 2 2 2 2 6 2 6 2 6 6 6 2
## [78949] 2 2 2 2 6 2 2 2 2 3 2 2 6 2 6 6 6 6 6 6 6 2 2 2 2 2 2 6 2 2 2 6 5 2
## [78983] 3 5 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 6 2 3 3 3 2 3 2 3 3 6 3 2 2 2
## [79017] 6 6 6 6 6 6 6 2 2 2 5 2 2 2 2 2 2 3 5 2 2 2 2 3 6 2 2 3 3 3 2 2 2 2
## [79051] 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [79085] 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2
## [79119] 2 2 6 2 6 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2
## [79153] 2 3 2 3 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 3 6 6 6 2 2 2 2 2 2 2 2
## [79187] 6 2 6 2 2 2 3 2 2 2 2 2 2 3 6 6 6 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [79221] 3 3 2 2 2 6 2 2 6 2 6 6 6 2 2 2 2 6 2 2 2 6 2 6 2 2 2 2 6 2 2 6 2 2
## [79255] 2 2 3 6 2 2 2 2 2 6 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 5 2 5
## [79289] 2 2 3 2 2 2 2 2 3 2 5 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2
## [79323] 2 2 6 6 6 6 6 6 6 6 2 2 6 2 6 6 2 2 6 6 6 6 6 6 6 6 6 2 3 3 3 3 2 2
## [79357] 2 2 2 3 2 2 3 6 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2
## [79391] 2 6 2 2 2 2 6 6 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2
## [79425] 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 6
## [79459] 2 6 2 2 2 6 2 2 5 2 2 6 2 2 6 2 2 2 2 5 2 2 3 2 2 2 3 2 2 2 3 2 3 2
## [79493] 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 3 6 2 2 2 6 2 2 2 6 2 2 3 2
## [79527] 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 3 2 2 2 6 6 2 2 6 6 6 6 6 6
## [79561] 6 6 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 3 2 2 2 3 2 6 6 2 2 2 2 2 2
## [79595] 2 2 3 3 6 6 3 3 6 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 6 3 3
## [79629] 3 2 2 2 2 2 2 2 2 6 6 6 2 2 6 6 6 6 6 6 2 6 2 2 2 2 5 5 2 2 2 2 2 2
## [79663] 2 5 2 3 2 3 2 2 3 3 6 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 5 2
## [79697] 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 2 5 2 2 2 5 5 2 2
## [79731] 6 2 3 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 3 6 1 2 2
## [79765] 2 2 1 2 2 5 1 5 2 3 2 2 6 6 2 6 6 3 3 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2
## [79799] 2 2 2 2 2 2 3 2 2 2 2 2 6 3 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3
## [79833] 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 5 6 2 5 2 2 2 2 2 3 6 3 2 2 2 2
## [79867] 3 2 6 2 3 3 3 2 3 2 6 6 3 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3
## [79901] 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 5 2 2 2 2 2 2
## [79935] 2 5 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2
## [79969] 3 3 2 6 2 6 2 6 6 6 6 6 6 2 6 6 6 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 1
## [80003] 1 2 2 2 2 5 6 3 6 5 5 5 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 3 2 2 2 3
## [80037] 3 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 6 2 2 2 6 2 2 2 2 2 2 6 2
## [80071] 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 6 2 2 2 2 3 2 2 3 3 6 3 3 3 2 2
## [80105] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 1 6 2 2 2 2 2 2 2 2 2 5 3 2 2 2
## [80139] 2 6 6 6 6 6 6 3 2 3 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 2 2 2
## [80173] 2 2 2 3 6 6 6 2 2 2 3 2 2 2 2 2 3 6 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2
## [80207] 2 2 2 6 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 6 6 2 2 2 2 3 2 2 2 2 2 2 2 6
## [80241] 2 2 2 6 6 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 6 2 6 2 2 2
## [80275] 6 6 6 3 2 2 2 2 2 5 3 3 2 5 5 2 2 6 6 6 6 2 2 2 2 2 2 6 6 6 6 6 6 6
## [80309] 6 3 3 2 2 5 2 2 2 2 2 2 2 3 2 2 2 2 2 2 6 6 6 6 6 2 5 2 2 2 2 2 2 4
## [80343] 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 6
## [80377] 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 5 2 5 5 5 5 2 2 2 2 2 6 2 2 2 2 3
## [80411] 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 3 3 3 6 6 3 6 2 2 2 2 2 2 2 2 2 6 6 2
## [80445] 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 6 6 2 3 2 3 6 6 6 6 6 6 6 2 2
## [80479] 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 6 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2
## [80513] 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2
## [80547] 2 2 2 3 6 2 2 5 2 2 2 2 2 2 2 2 5 2 2 2 2 2 2 3 3 6 3 3 6 2 2 2 2 3
## [80581] 5 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 6 3 3 2 2 2 2 6 2
## [80615] 6 2 2 6 2 2 2 6 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 3 2 6 2 6 6 6 6
## [80649] 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 6 2 2
## [80683] 6 2 6 2 3 2 5 2 2 2 2 2 2 2 2 2 2 2 2 2 4 2 2 1 1 2 2 2 2 2 5 5 2 3
## [80717] 6 3 2 2 2 2 2 2 2 2 3 6 3 2 2 2 2 5 2 2 2 2 5 2 2 2 2 2 2 6 2 2 6 6
## [80751] 2 2 6 2 3 2 6 2 2 2 2 2 2 2 3 6 2 6 6 6 6 6 6 2 2 2 2 2 3 2 3 6 2 2
## [80785] 2 2 2 2 6 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 6 6 6 2
## [80819] 2 2 2 2 3 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [80853] 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6
## [80887] 6 6 6 6 6 6 6 6 2 2 2 2 2 6 6 2 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 3 6
## [80921] 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2
## [80955] 2 2 6 2 6 2 2 2 2 2 2 6 6 3 3 2 3 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2
## [80989] 2 2 2 3 3 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2
## [81023] 2 3 6 6 5 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 6 6 6 6 6
## [81057] 6 6 5 2 3 2 2 2 2 3 3 2 6 3 2 2 2 2 2 2 2 2 6 2 6 2 2 3 2 2 2 2 3 2
## [81091] 3 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 6 6 6 6 2 2 2 2 2 5 5 5 5 5 5 5 3 5
## [81125] 5 6 6 6 2 6 6 6 2 6 6 6 2 2 2 6 2 2 2 6 2 2 6 2 2 2 2 2 3 2 2 5 3 3
## [81159] 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 5 5 5 2 2 2 2 2 2 2 6 2 2 2 6 2 6
## [81193] 6 6 6 3 6 6 6 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 6 2 6 6 6 2 2
## [81227] 3 3 3 3 3 3 3 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 6 2 6 2 2 6 2 6 2 2 3
## [81261] 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 5 3 3 2 2 2 2 2 6 2 6 3 2 3 2 2 2 2
## [81295] 2 2 2 2 3 3 2 2 2 2 2 2 6 6 6 6 2 6 2 2 2 2 2 2 2 2 5 3 2 2 2 2 6 6
## [81329] 6 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 6 6 6 6 6 6
## [81363] 6 6 6 6 6 2 3 2 2 2 2 2 2 3 2 2 2 2 2 6 2 6 2 6 3 2 2 2 2 2 2 2 2 2
## [81397] 2 3 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2
## [81431] 2 3 2 2 3 3 2 2 2 2 2 6 6 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2
## [81465] 3 6 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 5 2 2 2 5 2 6 6 2 2 2 6 2 2 2
## [81499] 2 2 2 2 2 2 5 2 2 2 5 3 6 2 2 2 2 6 2 6 6 2 6 2 2 2 2 2 2 2 5 2 3 2
## [81533] 2 6 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 5 6 6 3 2 2 2 2 2 6 2 2 2 2 3 2
## [81567] 2 2 6 6 6 6 6 6 6 6 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 6 3 2 2
## [81601] 2 6 6 6 6 6 6 6 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2
## [81635] 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 3 6 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2
## [81669] 2 2 2 6 3 6 2 2 2 5 2 2 2 2 2 2 3 6 2 2 3 2 6 6 6 6 6 6 6 2 2 2 2 2
## [81703] 2 2 2 3 2 3 2 6 2 2 2 2 6 2 2 2 2 2 6 6 6 6 6 6 6 6 6 6 2 2 5 2 2 3
## [81737] 2 2 2 3 5 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [81771] 2 6 2 3 2 2 2 2 2 3 2 2 1 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 6 2 2
## [81805] 2 2 2 2 2 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 3 2 2 2 6 2 6 6 6 6 6 6 6 6
## [81839] 6 6 2 2 2 2 2 2 2 2 2 3 3 6 2 6 2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2
## [81873] 4 2 5 3 5 5 5 2 1 4 1 1 2 2 5 2 2 6 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2
## [81907] 2 2 2 5 5 5 5 3 5 5 5 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 6 2 3 2 2 2
## [81941] 2 3 6 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 6 2 2 5 2 2 2 2 2 2 2 2 3 2 6
## [81975] 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 6 2 6 2 6 2 2 2 2 2 2 2 2 2 2
## [82009] 2 2 2 5 2 3 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3
## [82043] 2 6 2 2 2 2 6 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 6 2 3 2 2 2
## [82077] 2 2 2 3 2 3 2 2 2 2 2 4 2 2 2 4 2 2 2 2 3 2 2 2 2 2 2 6 2 2 5 2 3 2
## [82111] 3 2 2 2 3 2 2 2 6 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 3 2 2 2 2 2 2 2
## [82145] 2 2 2 3 2 2 2 2 2 2 2 6 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [82179] 2 6 2 2 2 6 2 3 3 2 2 6 2 2 2 2 2 2 2 2 2 3 2 3 3 2 6 2 6 6 6 6 6 6
## [82213] 6 6 2 2 2 6 2 2 3 2 2 6 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 6 6 6 6
## [82247] 6 2 3 3 3 3 3 3 3 3 3 2 2 2 2 6 2 2 2 2 2 3 6 2 2 2 6 2 2 2 6 2 6 2
## [82281] 2 2 2 2 2 3 2 5 5 5 5 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2
## [82315] 2 2 2 2 2 3 6 6 2 3 2 2 2 6 2 2 2 2 2 2 3 2 2 2 2 5 2 2 3 3 5 5 2 2
## [82349] 6 2 2 2 2 2 2 2 6 2 2 3 2 2 3 3 3 3 3 3 3 6 6 6 6 6 6 6 6 6 6 2 2 2
## [82383] 2 2 2 2 2 2 3 3 2 2 2 5 2 2 2 2 2 5 2 2 2 2 2 2 2 2 6 6 6 2 2 6 6 2
## [82417] 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3
## [82451] 3 2 2 6 2 3 6 2 6 2 2 6 2 3 6 6 2 2 6 6 6 6 6 6 2 2 2 6 2 2 2 2 6 2
## [82485] 2 2 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 6 6 6 2
## [82519] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 6 6 6 2 2 2 2 6 2 6 2 2 2 6
## [82553] 6 6 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 6 6 2 2 2 2 2 2
## [82587] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3
## [82621] 3 2 2 3 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3
## [82655] 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 6 2 6 5 2 2 2 2 6 2 2 3 2 2 2
## [82689] 2 2 2 2 6 2 3 2 3 3 2 2 2 6 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 6 2 2 2 2
## [82723] 2 2 2 2 2 3 2 2 3 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6
## [82757] 6 6 6 6 6 6 6 6 2 2 2 2 2 2 5 2 2 2 5 2 2 2 2 2 2 2 3 6 6 6 2 2 2 5
## [82791] 3 2 2 2 1 2 2 2 5 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2
## [82825] 2 2 2 2 2 3 2 3 2 2 2 2 5 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 6 6
## [82859] 2 6 2 3 3 2 2 2 2 2 2 5 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2
## [82893] 2 2 6 6 2 2 2 2 2 2 3 2 6 6 2 2 3 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [82927] 2 3 3 2 2 2 6 6 2 2 2 2 2 2 2 6 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2
## [82961] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3
## [82995] 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2
## [83029] 2 2 2 2 2 2 3 2 2 2 5 6 2 2 2 2 2 6 2 6 2 2 2 2 3 3 3 3 3 3 3 3 3 2
## [83063] 3 2 2 2 3 3 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2
## [83097] 2 2 6 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 5 2 6 6
## [83131] 2 2 6 6 6 6 6 6 2 2 6 2 2 2 2 6 6 6 6 5 3 5 3 3 6 3 3 3 6 3 2 2 2 2
## [83165] 2 2 2 2 6 6 6 2 5 2 2 2 3 3 3 3 3 3 2 2 2 6 2 2 2 6 2 6 6 2 2 2 2 2
## [83199] 2 2 2 5 2 5 2 2 2 6 2 2 2 2 2 2 5 2 2 2 2 4 1 2 2 2 4 1 2 2 2 2 2 2
## [83233] 3 3 3 3 3 2 2 2 2 6 6 2 2 2 2 2 2 5 6 2 2 3 2 2 5 2 2 2 3 2 2 2 3 3
## [83267] 2 2 2 2 2 3 2 2 2 6 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 6 2
## [83301] 2 2 3 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 3 2 2 2 3 3 6 2 2 2 2 3 4 2 2 2
## [83335] 2 3 2 2 2 2 2 6 2 2 6 2 2 2 2 6 2 2 6 2 6 6 2 2 5 5 5 2 2 2 2 2 2 2
## [83369] 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 6 6 2 3 2 2 2 2 2 2
## [83403] 2 2 2 6 2 2 2 2 3 3 2 2 2 2 6 6 2 2 2 2 2 2 2 2 5 2 2 2 2 2 2 2 1 2
## [83437] 2 2 3 2 6 2 6 6 2 6 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2
## [83471] 2 2 6 6 6 6 6 6 6 2 2 2 2 2 3 6 2 6 2 6 3 3 3 3 3 3 3 3 3 3 5 2 2 3
## [83505] 2 2 2 2 2 3 2 2 2 2 2 6 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2
## [83539] 2 2 3 3 3 2 2 2 2 6 2 2 2 6 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2
## [83573] 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 3 2 2
## [83607] 2 2 3 3 6 2 2 2 2 2 5 3 2 2 2 2 2 2 6 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2
## [83641] 2 2 2 6 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2
## [83675] 6 2 3 2 2 2 6 6 6 6 6 6 6 6 2 2 6 3 2 6 2 2 2 6 6 2 2 2 2 2 2 2 5 2
## [83709] 2 1 2 2 2 2 2 2 2 2 2 6 3 2 2 2 6 2 2 2 2 2 3 2 2 2 2 6 6 2 6 3 2 2
## [83743] 2 2 2 2 6 2 2 2 6 6 2 6 2 2 2 5 2 5 2 2 3 6 3 2 2 2 2 2 2 2 2 2 5 5
## [83777] 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 2 6 2 2 2 2 2 2 2 6 2 2
## [83811] 2 2 2 2 5 2 2 5 2 2 5 5 3 3 3 3 3 3 5 3 3 2 2 3 2 1 2 3 2 3 2 2 2 2
## [83845] 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2
## [83879] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2
## [83913] 2 6 2 2 2 2 3 2 3 2 2 2 2 2 2 5 2 2 2 2 2 2 2 2 3 3 3 3 5 2 2 2 2 2
## [83947] 2 2 2 6 6 6 2 2 2 2 2 6 2 6 2 6 3 2 2 2 3 2 6 2 2 2 2 2 2 2 6 2 2 2
## [83981] 2 2 6 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2
## [84015] 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 6 2
## [84049] 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3
## [84083] 3 3 2 2 6 2 2 6 6 6 6 6 6 2 2 2 2 2 6 2 2 2 2 3 2 5 2 2 2 2 2 2 2 2
## [84117] 3 2 2 2 3 3 3 2 2 6 6 6 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 6
## [84151] 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 6 6 6 6 2
## [84185] 2 2 2 2 2 2 2 5 2 3 2 2 6 2 6 6 6 2 2 6 6 2 2 2 2 6 6 2 2 2 2 2 2 2
## [84219] 2 2 2 3 2 2 2 3 5 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 6 6 3 2 3 2
## [84253] 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 6 6
## [84287] 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 6 2 2 6 2 6 6 6 6
## [84321] 6 6 6 6 6 6 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2
## [84355] 2 2 6 2 6 2 5 2 2 5 1 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 2
## [84389] 2 2 6 2 2 2 6 6 6 6 6 6 2 6 6 2 2 2 2 2 3 2 2 6 2 6 2 2 2 2 2 2 2 2
## [84423] 2 6 3 2 2 6 6 6 6 3 2 6 6 2 2 2 2 2 2 2 2 2 6 3 3 2 2 2 3 3 2 2 2 2
## [84457] 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 1 2 2 2 3 2 5 2 2 2 2 3 2 2 2 2 2
## [84491] 3 2 2 5 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 2 2 2 2 2 5 2
## [84525] 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2
## [84559] 2 3 3 3 3 3 3 5 3 3 2 3 3 3 3 6 6 6 6 3 3 2 2 2 2 5 2 2 2 2 5 5 2 2
## [84593] 2 2 2 2 2 2 3 3 3 2 3 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2
## [84627] 2 2 2 5 2 3 2 2 2 4 3 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 6 6 6
## [84661] 6 6 6 6 6 6 6 2 2 2 2 6 2 2 2 2 2 6 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2
## [84695] 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 5
## [84729] 2 2 2 5 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2
## [84763] 2 2 6 2 2 6 2 6 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 6 2
## [84797] 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 5 2 2 2 2 6 2 2 2 2 2 2 2 6 6 2 2
## [84831] 6 2 2 2 3 2 6 3 3 3 3 3 3 2 6 6 6 6 6 2 6 6 6 2 2 3 2 2 2 2 3 2 2 3
## [84865] 2 2 2 2 2 2 2 5 2 2 6 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2
## [84899] 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 3 6 2 2 2
## [84933] 2 6 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 6 3 3 6 3 2 2
## [84967] 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 2 2 2 2 6 2 6 2 4 2
## [85001] 2 4 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 5 2 2 2 5 2 2 2 2 2
## [85035] 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 1 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2
## [85069] 6 2 2 2 6 6 2 2 2 2 2 5 2 2 2 2 6 2 2 2 2 2 2 2 2 2 5 5 2 2 2 2 6 6
## [85103] 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 6 2 6 2
## [85137] 2 2 3 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 6 2 2 2 2 2 6 6 2 2 3 2 2 2 2 2
## [85171] 3 2 2 2 2 2 2 3 3 3 3 6 6 6 2 2 2 2 2 2 2 6 6 6 6 2 6 6 6 6 6 6 6 2
## [85205] 2 2 3 3 3 3 3 3 3 3 3 3 3 2 5 2 3 2 2 3 2 3 3 3 2 5 2 2 5 2 2 2 3 3
## [85239] 3 2 2 2 2 6 6 2 6 6 6 2 2 2 2 2 3 3 3 3 3 2 3 2 6 6 6 6 6 6 6 6 6 6
## [85273] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 5 2
## [85307] 2 2 2 2 2 2 2 2 2 6 6 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 3 2
## [85341] 2 6 2 2 2 2 2 3 2 2 3 6 6 2 6 6 6 6 6 6 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [85375] 2 2 2 2 2 2 3 3 2 2 2 2 2 5 2 2 2 2 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [85409] 2 2 2 2 5 6 6 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 6
## [85443] 2 2 2 2 2 3 2 2 2 6 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 3
## [85477] 3 3 3 3 3 2 2 2 3 2 3 6 2 6 3 3 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2
## [85511] 2 6 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 3 2 2 2 2 5 2 3 2 2 2 2 2 3 3 2 2
## [85545] 2 2 2 2 2 2 4 2 2 2 2 2 4 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 6
## [85579] 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 6 6 2 2 2 2 6 3 2 2 6 3
## [85613] 6 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2 2 2
## [85647] 2 6 2 3 6 6 6 6 6 6 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 2
## [85681] 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 1 2 1 1 5 5 3 5 2 5 5 5 2 5 5 5 2 2
## [85715] 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 3 2 6 2 2 3 2 2 6 6 6 2 2 2
## [85749] 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 6 2 2 2 2 2 3 2 2 2 2
## [85783] 2 2 2 2 2 2 2 2 2 2 3 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2
## [85817] 6 6 6 6 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 6 2 2 5 3 5 2 2 3 3 2 2
## [85851] 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6 2 2 2 6 2 2 3 2 2 2 2
## [85885] 2 2 2 6 2 2 3 2 2 6 6 2 3 2 2 2 6 6 2 2 6 6 6 6 2 6 2 2 2 2 2 2 2 2
## [85919] 2 3 3 2 2 2 2 2 2 1 3 2 3 5 2 6 6 6 6 6 6 6 6 6 6 2 2 2 6 2 3 2 2 2
## [85953] 2 3 2 2 2 2 5 2 2 2 3 2 2 2 6 6 6 2 6 6 6 3 6 3 2 6 6 6 6 6 6 2 2 2
## [85987] 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 3 1 2 2 2 1 2 2
## [86021] 2 5 1 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 2 2 3 2 2 6 6 2 2 3 3 2 3 2 2 2
## [86055] 2 2 2 2 2 2 2 2 2 2 2 2 5 2 5 3 2 5 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2
## [86089] 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2
## [86123] 3 2 2 6 2 2 6 6 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 6 2 2 6 2 6 2 2 2 2
## [86157] 2 2 2 2 2 6 6 2 2 2 5 2 2 2 2 2 2 5 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2
## [86191] 2 3 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 3 3 3 3 3
## [86225] 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 6 2 2 2 2 2 3 2
## [86259] 2 2 2 6 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 5 2 2 2 2 2 6 2 2 6
## [86293] 2 6 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 6 6 2 2 2
## [86327] 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 5 2 5 6 2 2 5
## [86361] 3 2 2 2 2 2 5 5 2 5 5 5 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 6 2 3
## [86395] 2 6 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 2 2
## [86429] 2 2 2 2 2 6 2 3 2 2 2 6 6 6 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2
## [86463] 2 2 2 2 2 2 2 6 6 2 2 6 2 3 2 2 3 2 3 3 2 2 2 6 2 2 2 2 2 3 3 2 2 2
## [86497] 2 2 2 2 2 6 6 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2
## [86531] 2 2 2 2 5 5 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 1 2 2 2 2 2 1 2 2 2 2 6
## [86565] 3 6 2 3 6 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 6 2 2 6 6 6 6 6 2 2 2 2 2 2
## [86599] 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 6 2 3 2 2 3 3 2
## [86633] 2 2 3 6 2 2 2 2 2 2 3 6 3 6 6 2 2 2 2 2 2 2 2 6 3 3 2 5 5 2 5 5 2 2
## [86667] 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 3 6 6 6 6 6
## [86701] 6 3 2 2 2 1 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 5 2 2 2 3 2 2
## [86735] 2 2 2 6 2 2 6 2 3 2 3 2 2 2 2 2 6 6 3 6 6 3 6 2 6 2 2 2 2 2 2 2 6 2
## [86769] 2 2 2 6 2 6 2 2 2 2 6 2 6 2 6 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 5 2 2
## [86803] 6 2 5 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 3 3 2 2 2 3 2 2 6 2 2 2
## [86837] 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 6 2 3 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2
## [86871] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 6 2 2 2 5 2 2 2 2 2 2 2 2 5 2 2 2 2
## [86905] 2 2 2 2 6 6 6 2 2 2 2 2 3 2 2 6 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [86939] 6 2 2 2 3 2 2 2 2 2 6 2 2 2 3 3 2 2 2 6 2 2 2 2 2 6 2 2 6 6 6 6 6 2
## [86973] 2 2 2 3 6 2 5 2 5 2 2 2 2 2 5 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 2
## [87007] 2 2 3 2 2 2 2 2 2 3 6 6 6 6 6 2 2 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 2 2
## [87041] 2 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 5 2 2 2 5 2 2 2 6 2 2 2 2 2 2 6
## [87075] 2 2 1 2 2 2 2 5 2 3 3 5 5 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2
## [87109] 2 5 2 2 2 2 2 2 2 2 2 5 2 2 6 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3
## [87143] 3 2 6 2 2 6 2 3 2 3 3 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 3 2 3 3 2 2
## [87177] 2 2 2 2 2 2 2 6 6 6 2 2 6 2 2 6 2 3 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2
## [87211] 6 2 2 2 2 2 3 2 3 2 2 2 2 6 2 6 2 2 2 2 2 2 6 2 6 6 6 6 2 2 2 2 2 2
## [87245] 2 2 2 2 2 2 3 5 2 2 3 2 3 3 3 2 5 5 5 2 2 2 2 2 2 2 2 3 3 5 2 2 2 2
## [87279] 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2
## [87313] 3 2 2 2 6 2 2 2 2 2 2 2 2 2 2 1 1 2 2 2 2 2 2 2 2 2 2 5 2 2 2 2 2 2
## [87347] 2 2 2 2 6 2 2 6 2 2 2 2 2 6 2 6 2 2 2 2 5 2 2 2 2 5 2 2 2 6 3 3 6 6
## [87381] 2 6 3 3 2 6 2 2 2 6 2 2 6 6 6 6 6 3 6 6 6 6 6 6 3 6 2 2 2 2 2 2 2 2
## [87415] 6 2 3 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2
## [87449] 3 3 2 6 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 3 3 2 2
## [87483] 2 2 2 2 2 2 2 2 2 3 3 6 2 2 2 2 2 2 5 2 2 5 3 2 2 2 2 2 2 2 2 3 3 3
## [87517] 2 2 6 2 2 2 6 6 2 6 6 2 5 6 5 2 2 6 6 2 6 2 2 2 2 2 2 2 2 2 2 3 3 2
## [87551] 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 2 2 2
## [87585] 2 2 2 2 2 2 2 2 2 2 3 6 6 6 6 6 6 6 6 6 2 2 2 2 2 3 2 6 2 2 2 2 2 3
## [87619] 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 6 6 2
## [87653] 2 2 2 2 2 2 3 2 3 2 2 2 6 2 2 3 2 2 2 2 5 2 2 2 6 2 3 2 2 2 3 3 2 3
## [87687] 3 3 3 3 3 3 2 6 6 6 6 3 2 3 6 6 6 2 2 2 3 2 2 5 2 2 3 3 2 2 2 2 2 2
## [87721] 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6
## [87755] 6 6 6 6 2 2 2 2 2 2 3 2 6 2 3 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 6
## [87789] 2 2 6 2 2 2 2 2 2 2 2 6 6 3 2 2 2 2 2 2 2 2 3 3 3 2 6 2 2 2 2 2 2 2
## [87823] 6 6 2 2 2 2 2 3 2 2 5 2 2 6 6 2 6 6 6 6 6 6 6 6 2 2 3 6 2 3 2 2 3 3
## [87857] 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3
## [87891] 2 2 2 2 3 3 2 2 3 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 3 2
## [87925] 2 2 3 2 6 6 2 3 3 3 2 6 2 6 2 2 6 2 6 6 6 2 6 2 2 2 2 2 2 2 2 3 2 6
## [87959] 6 6 6 6 6 6 6 6 6 2 6 2 2 2 2 6 6 6 6 6 2 6 2 6 2 2 2 2 2 2 2 2 2 2
## [87993] 2 2 2 2 6 2 6 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2
## [88027] 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 5 5 2 2 2 2 3 6 6 2 6 6 3 2 2 2 2 2
## [88061] 2 2 2 2 6 6 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 6 6 6 6 3 2 5 2 2 2 2
## [88095] 2 2 2 6 2 2 2 2 2 6 6 2 3 6 3 3 2 2 2 2 2 2 2 2 6 3 3 2 2 2 2 2 2 2
## [88129] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 6 6 6 6 6
## [88163] 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 5
## [88197] 2 5 2 2 2 2 2 6 2 3 6 3 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 3 2 5
## [88231] 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 6 6 2 6 6 6 2 2 2 2 2 6 2 2 6 6 2
## [88265] 2 2 2 2 2 2 2 2 6 2 6 2 2 2 6 6 6 6 6 6 6 6 2 6 2 2 2 6 2 2 2 2 2 2
## [88299] 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 3 3 3 6 3 2 2 2 2 2 6 2 2 2 2 6 2 2
## [88333] 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 6 2 6 2
## [88367] 2 2 6 2 2 2 6 3 2 2 2 2 2 6 2 2 3 2 2 2 6 2 2 2 2 2 2 6 6 6 2 2 2 6
## [88401] 6 6 6 6 6 6 6 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2
## [88435] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 6 6 6 6 6 2 3 2 2 2 2
## [88469] 2 2 2 6 6 2 3 3 2 5 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6
## [88503] 6 2 6 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [88537] 2 3 6 2 2 2 2 2 6 6 6 6 6 3 2 2 2 2 2 2 2 2 2 3 6 2 2 6 2 2 2 6 2 2
## [88571] 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2
## [88605] 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6
## [88639] 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 6 2 6 6 6 3 2 2 2 2 2 2 2 2 2 2 6 2
## [88673] 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 3 2 2
## [88707] 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2
## [88741] 6 6 6 6 6 6 2 6 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2
## [88775] 2 6 2 6 2 6 6 2 2 2 2 6 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 5
## [88809] 2 2 2 5 2 2 2 2 2 2 2 2 3 2 2 2 6 2 2 2 2 2 2 2 2 6 3 6 2 2 2 2 2 2
## [88843] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 6
## [88877] 2 2 6 2 2 2 6 2 2 2 2 2 2 2 6 2 2 6 2 2 6 2 2 2 2 2 2 2 2 3 2 2 2 2
## [88911] 3 2 2 2 6 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [88945] 6 6 2 3 3 2 6 6 6 6 6 6 6 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 6
## [88979] 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 6 3 2 2 2 6 2 2 2 2 2 2 2 3 2 2 3 2
## [89013] 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2
## [89047] 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 5 2 2 2 5 2 2 2
## [89081] 2 2 2 2 2 2 2 6 6 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2
## [89115] 2 2 6 3 2 2 2 6 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 3 3 5 2 2 2 2
## [89149] 2 6 2 2 3 2 3 2 2 2 3 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 6 2 2 2 2 2
## [89183] 6 2 2 6 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2
## [89217] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 6 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2
## [89251] 2 2 2 6 2 2 2 3 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 6 2 2 6 2 2
## [89285] 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [89319] 2 2 2 2 2 2 2 6 6 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 3 2 2 2 3
## [89353] 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 3 2 6 2 2 2 6 2
## [89387] 2 2 2 2 2 2 2 2 2 3 3 2 2 2 6 2 2 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [89421] 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2
## [89455] 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2
## [89489] 2 2 2 2 2 2 3 3 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 6 2 2 6 2 6 6 2 2 2 6
## [89523] 2 2 2 6 2 2 2 2 3 6 2 2 3 6 6 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2
## [89557] 2 2 2 2 6 6 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 6 6
## [89591] 2 2 6 6 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 3 2 2 2 2 2 2 2
## [89625] 2 5 2 5 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 5 2 2 2
## [89659] 3 2 2 2 2 2 6 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 2 6 6 6 6
## [89693] 6 6 2 2 2 2 2 2 6 6 6 6 6 2 2 2 6 6 6 3 6 6 6 3 2 2 2 3 6 2 2 2 2 2
## [89727] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 5 2 2 2 2 2 2 2 3 6 6 3
## [89761] 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 3 2 3 2 2 2 2 2 2 2 2 3 2
## [89795] 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2
## [89829] 2 2 2 6 2 2 6 2 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2
## [89863] 2 2 2 2 2 2 2 6 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 6 3 2 2 2 2
## [89897] 3 3 3 2 3 2 3 2 2 2 2 6 2 6 2 2 2 6 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2
## [89931] 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [89965] 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2
## [89999] 2 2 2 2 2 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2 2 2 2 6 6 2 2 2 6 2 2 2 2 2
## [90033] 2 2 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2
## [90067] 2 3 6 2 2 2 2 2 2 2 2 2 6 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 6 3
## [90101] 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 6 6
## [90135] 2 2 2 2 2 2 2 2 2 3 3 2 2 6 2 2 6 2 2 2 2 6 2 2 3 2 2 2 3 2 3 3 3 2
## [90169] 2 2 3 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2
## [90203] 2 3 3 6 2 3 6 2 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2
## [90237] 2 2 2 3 2 6 2 3 2 2 2 2 2 3 3 2 6 2 3 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2
## [90271] 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 6 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2
## [90305] 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 3 2 2 2 3 3 2 2 2 2 2 2
## [90339] 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 2 2 2 6 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2
## [90373] 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 4 4 4
## [90407] 4 4 4 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 5 2 3 2 2 2 2 6 2 2 2 2
## [90441] 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 6 2 2 2 2 2 6 2 3 2 5 2 2 2 2 2 2 3 2
## [90475] 2 2 2 6 6 6 2 3 2 6 2 2 6 6 6 6 2 6 2 2 6 2 6 2 2 3 2 2 2 3 2 2 3 3
## [90509] 2 2 2 2 2 2 3 2 2 6 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 6 2 2 6 6 6 2
## [90543] 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2
## [90577] 2 2 2 2 2 2 2 3 3 2 2 2 2 5 3 2 2 2 2 5 2 6 2 2 2 2 6 2 6 2 6 2 2 2
## [90611] 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2
## [90645] 2 2 2 2 2 2 2 2 2 2 2 2 3 3 6 6 6 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3
## [90679] 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 6 2
## [90713] 2 2 2 3 3 2 2 6 2 2 6 2 2 2 2 3 6 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2
## [90747] 6 6 6 6 2 2 2 2 2 2 6 2 6 2 2 2 2 6 6 6 6 2 2 2 6 2 2 2 2 2 2 2 2 2
## [90781] 3 3 5 2 2 2 2 2 2 2 2 2 5 5 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2
## [90815] 3 3 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3
## [90849] 2 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6
## [90883] 2 2 2 6 6 2 2 2 2 2 2 2 2 3 2 6 3 6 3 6 6 3 2 2 2 2 2 2 2 2 2 6 6 2
## [90917] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 5 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2
## [90951] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6 6 2 6 2
## [90985] 2 6 6 6 6 6 6 6 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2
## [91019] 2 2 2 2 2 2 5 2 2 2 2 2 2 3 3 3 3 3 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2
## [91053] 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2
## [91087] 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 5 2 2 3 6 2
## [91121] 2 2 3 2 2 2 6 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2
## [91155] 2 3 3 2 2 2 2 2 3 6 1 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 6 2 6 2 2 2 2
## [91189] 2 2 2 3 2 2 2 2 2 2 3 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 6 2 2 6 2 2 2
## [91223] 2 2 6 6 6 6 6 3 2 2 6 5 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2
## [91257] 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 6 6 6 2
## [91291] 2 2 2 2 2 2 6 2 6 2 2 6 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3
## [91325] 3 2 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 6 2 2 3 2 3 3 3 2 3 3 6 2 2 2
## [91359] 2 2 2 6 2 2 3 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 6 2 2 3 3 6 2 2 2 2
## [91393] 2 2 2 6 6 6 6 2 2 6 3 2 2 3 2 2 3 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2
## [91427] 2 6 2 6 6 6 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 3
## [91461] 2 2 3 3 3 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 6 2 2 2 2 6 2 2 6 2 2 2 2
## [91495] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2
## [91529] 2 6 3 2 2 2 2 6 6 3 2 2 2 3 2 2 6 6 2 2 2 2 2 2 6 2 2 2 2 2 3 2 3 2
## [91563] 2 3 2 2 2 2 2 2 3 2 2 2 5 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 3
## [91597] 6 2 2 2 2 2 2 2 2 2 3 6 2 2 3 2 2 6 2 2 2 3 2 2 2 3 2 2 6 2 2 6 3 2
## [91631] 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2
## [91665] 2 2 2 2 2 2 2 6 2 6 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 5 5 2 2
## [91699] 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 5 6 6 6 2 2 2
## [91733] 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 6 2 6 2 2 6 6 3 6 6 6 2 2 6 2
## [91767] 2 2 2 2 2 2 6 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2
## [91801] 2 2 2 6 2 2 2 2 2 2 2 3 2 2 2 6 3 2 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2
## [91835] 5 2 5 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2
## [91869] 3 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2
## [91903] 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 6 2 2 6 6 6 2 2 2 2 2 2 2 5 6
## [91937] 5 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 2 2 2
## [91971] 2 2 2 2 2 1 2 2 2 1 1 1 2 3 6 2 2 6 2 5 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [92005] 2 2 3 2 2 3 3 2 2 5 2 2 2 2 2 2 2 2 3 3 3 5 2 2 6 6 6 6 3 3 2 2 2 3
## [92039] 3 6 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [92073] 2 2 2 2 2 3 2 3 2 2 2 2 5 2 2 2 2 2 2 5 2 2 2 2 2 5 2 2 2 2 5 2 3 6
## [92107] 2 6 6 6 6 6 6 6 2 2 2 2 6 6 6 6 6 3 3 2 2 2 2 2 2 2 2 6 3 6 2 2 2 2
## [92141] 2 2 3 3 3 3 3 2 2 6 6 6 6 6 6 6 6 6 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3
## [92175] 2 5 2 2 2 2 2 3 3 6 3 3 3 6 3 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2
## [92209] 2 2 2 6 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 3 6 2 3 2 3 3 3 3
## [92243] 3 3 3 3 2 2 2 6 2 6 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2
## [92277] 6 6 3 2 2 2 2 2 2 2 2 2 2 6 3 3 3 3 6 3 3 3 3 3 3 2 2 2 2 2 2 2 2 6
## [92311] 2 6 2 6 2 6 6 6 2 6 6 6 6 2 2 2 2 2 6 5 2 2 2 2 2 6 2 2 2 6 6 4 3 6
## [92345] 3 2 2 2 2 2 2 6 6 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3
## [92379] 2 2 2 2 2 2 3 2 6 2 6 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 6 3 2
## [92413] 2 2 2 2 2 2 2 2 6 3 2 2 2 2 2 6 2 6 2 2 6 2 2 2 2 6 2 2 2 2 2 6 2 2
## [92447] 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2
## [92481] 2 2 2 2 2 6 6 6 2 2 2 2 2 6 2 2 2 6 3 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2
## [92515] 2 2 3 3 2 2 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [92549] 2 2 3 2 2 6 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2
## [92583] 2 2 6 2 3 2 2 2 2 2 2 2 6 6 6 6 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2
## [92617] 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2
## [92651] 6 2 3 1 6 6 2 6 6 6 6 6 6 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 6 2 2 2
## [92685] 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 6 6 2 6 2 2 6 2 3 2 2 2 2 2 2 2 2 2 2
## [92719] 2 2 2 2 2 2 6 2 2 3 2 3 2 2 2 2 2 2 2 2 4 5 2 2 2 2 2 2 2 3 2 2 3 2
## [92753] 2 5 2 2 2 2 2 2 2 2 5 2 2 2 2 2 3 2 2 2 2 6 6 2 2 2 2 6 2 2 2 2 2 2
## [92787] 2 2 2 2 2 3 2 2 2 6 2 3 2 6 2 2 2 6 6 2 6 2 2 2 2 2 5 2 2 5 2 2 2 2
## [92821] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2 2 6 2 2 2 6 6 6 6 6 6 6 6 2 2 5
## [92855] 5 5 5 5 2 5 5 5 2 6 6 2 2 6 6 6 2 2 6 2 2 2 2 2 2 2 2 2 2 6 2 6 6 6
## [92889] 6 6 6 6 6 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 3 2 2 2 6 6
## [92923] 3 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 5 5 2 3 2 2 3 2
## [92957] 2 2 2 2 2 2 2 3 2 2 2 2 2 3 5 5 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 6 6 2
## [92991] 2 2 2 2 2 2 2 2 2 3 2 2 2 6 2 2 2 2 2 5 2 2 2 2 2 1 2 2 2 2 2 3 3 2
## [93025] 3 6 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 3 3 3 3 3 3
## [93059] 2 2 2 2 5 2 2 2 5 2 2 2 2 2 5 5 2 2 5 2 5 5 5 5 2 2 2 6 6 6 6 6 6 6
## [93093] 6 2 2 2 2 2 6 2 2 2 6 6 2 3 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [93127] 2 2 2 6 6 6 6 2 2 6 6 2 2 2 2 2 6 2 2 2 6 2 2 2 2 6 2 6 2 2 6 6 6 2
## [93161] 2 2 2 2 2 2 2 5 5 2 2 2 2 6 2 2 6 6 6 2 2 5 5 2 2 2 5 2 2 2 2 2 2 2
## [93195] 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 5 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2
## [93229] 3 3 3 2 2 3 3 3 2 2 2 2 2 3 6 3 6 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [93263] 2 6 2 6 2 3 6 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 2 2 2 2 6 6 2 2 5 5 5 2
## [93297] 2 5 2 2 2 5 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 3 5 2 2 2 2 2 2
## [93331] 2 2 2 6 6 2 2 2 2 6 2 2 2 2 6 6 2 2 3 2 2 2 2 2 5 2 2 2 2 6 2 2 3 2
## [93365] 2 2 2 2 2 2 2 2 6 2 3 2 2 6 3 2 2 2 2 6 2 6 2 6 2 2 2 2 2 2 2 2 2 2
## [93399] 6 6 6 2 2 2 2 3 3 3 2 2 2 3 2 2 2 5 2 2 2 2 2 5 3 2 2 2 2 2 2 6 2 2
## [93433] 2 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 5 5 2 6 2 2 2 2 2 2 3 2
## [93467] 2 2 6 6 6 6 6 6 6 6 3 6 2 2 2 2 2 2 2 2 2 6 3 2 2 2 3 2 6 2 6 2 2 2
## [93501] 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2
## [93535] 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2 6 6 6 6 2 2 2 2 2 2 2
## [93569] 6 2 2 2 2 6 2 2 2 2 5 5 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 6 6 6 2 2 6
## [93603] 6 3 6 2 2 2 2 2 2 2 2 2 2 6 2 3 6 5 3 2 2 3 2 2 3 2 2 6 2 2 2 2 2 2
## [93637] 2 2 2 2 3 2 3 2 2 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [93671] 3 2 2 6 2 3 2 6 2 2 6 6 6 2 3 3 3 2 2 2 6 2 2 2 2 2 2 3 2 2 2 2 2 2
## [93705] 2 2 3 3 6 2 2 2 2 2 2 2 2 2 5 5 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2
## [93739] 6 2 2 2 2 2 2 2 6 6 6 6 6 6 6 2 2 5 2 2 3 3 3 3 3 6 2 2 2 2 5 2 2 2
## [93773] 3 5 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 6 2 2 6 2 2 6 2 2 2
## [93807] 2 2 2 2 2 2 2 2 6 6 6 6 3 2 2 3 2 3 2 2 2 2 2 2 2 2 5 2 2 6 2 6 6 2
## [93841] 6 2 2 2 2 2 5 2 2 2 5 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 6 6 2 6 6 6 6
## [93875] 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2
## [93909] 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 6 6 6 2 2 3 2 3 6 6 2 2 2 2 2 2
## [93943] 2 2 2 2 2 2 6 2 3 2 3 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 6
## [93977] 2 2 2 2 2 3 2 6 2 2 6 2 2 2 2 6 2 2 2 6 6 6 6 2 6 3 3 6 3 6 2 5 2 2
## [94011] 2 5 2 5 4 1 2 2 5 2 2 2 3 6 6 3 3 5 2 2 2 2 6 2 2 2 2 2 2 2 6 6 6 6
## [94045] 2 6 6 6 6 6 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 6 3 3 3 2 2 2 3 3 2
## [94079] 2 2 2 3 2 2 2 5 2 2 2 5 2 2 5 2 2 2 2 2 2 2 6 6 6 6 3 2 2 2 2 2 6 6
## [94113] 6 6 6 6 2 6 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 3 6 2 6 2 2 2 2 2 2 2 2
## [94147] 2 6 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2
## [94181] 2 2 2 2 2 2 2 2 2 2 3 6 3 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 6 6 2 2 6 2
## [94215] 6 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 6 6 2 2 6 6 2 2 2 2 2 2 2 2 2 6 6
## [94249] 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2
## [94283] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 6 2 2 2 2 2 2 2
## [94317] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 6 6 6 3 2 2 2
## [94351] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [94385] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 5 2 2 3 2 2 2 2 2 2
## [94419] 2 2 2 6 6 6 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [94453] 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2
## [94487] 2 2 6 6 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 3
## [94521] 2 3 2 2 6 3 2 2 2 3 3 6 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2
## [94555] 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2
## [94589] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 5 2 2 2 2 5
## [94623] 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 5 2 2 2 2 5 5 2
## [94657] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 3 2 2 2 6 3 2 2
## [94691] 2 2 2 6 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 6
## [94725] 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 3 2 2 2 2
## [94759] 2 2 2 2 2 3 6 3 2 3 2 2 6 2 6 6 6 3 2 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2
## [94793] 2 2 2 3 3 3 6 2 2 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [94827] 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2
## [94861] 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 2 2
## [94895] 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [94929] 2 6 2 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 6
## [94963] 3 6 6 2 2 2 6 6 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [94997] 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 2 6 2 2 6 6 2
## [95031] 2 6 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [95065] 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [95099] 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 6 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2
## [95133] 2 2 3 2 6 2 3 2 6 2 6 2 6 6 6 6 6 6 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2
## [95167] 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2
## [95201] 2 2 6 6 6 2 2 2 2 2 2 2 2 3 2 3 2 2 2 6 6 6 6 2 6 6 6 2 2 2 2 2 6 6
## [95235] 6 6 6 6 2 2 2 2 2 2 5 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2
## [95269] 3 2 3 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [95303] 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 6 2 2 6 3 2 2 2 2 2 2 2 2 3 6
## [95337] 3 2 2 2 6 2 2 6 6 6 6 6 2 6 2 2 2 2 6 2 2 3 3 2 2 2 2 2 2 2 3 2 6 2
## [95371] 2 2 6 6 2 2 6 2 2 6 6 6 6 3 3 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2
## [95405] 2 2 2 2 6 2 2 6 6 2 2 2 2 2 2 6 2 6 6 6 6 2 3 2 2 2 2 2 2 6 3 6 3 2
## [95439] 2 2 2 2 5 2 2 2 2 2 2 2 2 2 2 6 2 2 3 2 2 2 2 2 2 4 4 2 1 4 4 2 2 2
## [95473] 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 6 2 2 2 2 2 2 3 2 2 3 3 3
## [95507] 3 3 3 2 2 2 2 2 2 2 2 2 6 6 6 2 2 6 2 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2
## [95541] 2 5 2 6 2 2 2 2 5 2 2 2 2 2 3 6 6 2 2 2 2 2 6 2 2 3 3 3 2 6 6 2 6 6
## [95575] 2 6 2 6 6 2 2 2 6 2 2 2 3 2 2 2 2 2 6 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2
## [95609] 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 5 2 5 2 2 2 2 2 2 2 2
## [95643] 2 2 2 2 2 6 2 2 2 2 2 2 6 3 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2
## [95677] 2 2 2 2 2 6 2 6 2 6 6 6 6 2 2 2 2 2 2 2 2 6 6 6 2 2 6 3 2 6 6 2 3 6
## [95711] 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 6 6 2 6 6 6 6 2 2 2 2 3 2 2 2 2 2 5
## [95745] 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 6 5 2
## [95779] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 6 3 2 6 2 2 2 6 6 2 2
## [95813] 2 2 6 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3
## [95847] 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [95881] 2 5 2 2 3 2 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 3 2 2 2 2 2
## [95915] 2 2 2 6 6 6 2 2 2 2 6 3 2 2 2 2 3 2 2 2 2 2 6 6 6 6 6 6 2 2 6 2 6 6
## [95949] 2 6 2 6 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2 2 2 3 3 3 2 6 6 6 6 6 6
## [95983] 6 6 6 6 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2
## [96017] 2 3 2 2 2 2 2 2 2 2 2 2 3 6 2 2 2 2 2 2 5 2 2 2 1 2 2 2 2 2 2 2 2 2
## [96051] 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 6 2 3 3 2 2 2 3 3 2 2 2 5 2 5 2 2 2 2
## [96085] 2 3 6 6 2 2 6 6 6 6 6 6 3 2 2 2 2 3 2 2 6 2 6 2 2 2 2 2 2 2 2 6 2 6
## [96119] 2 2 2 2 2 6 2 2 6 2 2 2 2 2 3 2 6 2 2 2 2 2 2 2 2 2 2 5 2 3 2 2 2 2
## [96153] 2 2 6 2 6 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 6 2 6 6 6 6 6 6 6 2 2
## [96187] 2 2 2 2 2 6 6 2 3 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2
## [96221] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [96255] 2 2 2 2 3 5 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 6 6 6 6 6 6 2 2 2 2 2 2
## [96289] 2 2 2 6 6 2 2 2 2 2 2 3 3 3 3 3 3 5 2 5 2 2 3 2 2 5 3 6 2 2 5 2 2 2
## [96323] 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 2
## [96357] 2 2 6 6 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2
## [96391] 3 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 6 6 6 6 2 2 2 6 2 6 6 6 6
## [96425] 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 3 2
## [96459] 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 6
## [96493] 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 6 5 2 6 2 2 2 2 2 2 6 6 2 2
## [96527] 2 6 2 6 6 2 6 2 6 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 6 6 2 2
## [96561] 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [96595] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 6 2 2 5 2 3 3 2
## [96629] 2 2 5 6 2 3 3 2 2 2 2 2 3 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2
## [96663] 6 2 2 2 2 6 2 2 2 2 6 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 3 2 2 2 2 2 2
## [96697] 2 2 2 3 3 2 2 2 2 2 2 2 6 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2
## [96731] 2 2 2 6 2 2 2 2 2 2 3 6 6 2 6 2 2 2 2 2 2 5 2 2 6 3 2 2 2 2 2 2 2 2
## [96765] 3 5 5 2 2 6 6 2 2 2 6 6 2 6 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2
## [96799] 6 6 2 2 2 2 2 2 3 2 3 2 6 2 2 2 3 3 3 3 3 3 2 5 2 2 2 2 2 6 2 2 2 2
## [96833] 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 6 2 6
## [96867] 2 2 2 2 6 2 2 2 6 2 6 2 2 2 2 2 2 2 6 6 2 6 2 2 2 6 2 2 2 2 2 6 2 2
## [96901] 2 2 2 2 2 6 6 6 6 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2
## [96935] 2 2 2 6 2 2 2 6 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 6 6 2 2 6
## [96969] 6 6 6 6 6 2 2 2 2 2 2 2 2 6 2 6 6 6 6 2 2 2 2 2 6 6 2 2 2 2 2 2 6 2
## [97003] 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 5 6 5 2 2 2 6 2
## [97037] 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 6 2 2 2 3 2 2 2 2 2 2 2
## [97071] 2 2 2 3 6 2 2 2 2 2 2 2 6 6 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2
## [97105] 2 2 2 2 2 2 2 2 2 2 2 2 2 3 6 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2
## [97139] 5 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 5 6 2 2 2
## [97173] 2 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [97207] 6 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 6 6 6 6 2 2 2 2 2 6 6 6 6 6 6 2 2 2
## [97241] 2 3 3 6 3 3 6 3 3 6 6 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6 2
## [97275] 2 2 6 6 6 2 2 2 6 3 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2
## [97309] 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 6 2 2 2 2 2 2 2 6 2 2 2
## [97343] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 3
## [97377] 2 6 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2
## [97411] 2 2 2 2 2 6 2 6 6 6 6 6 6 3 6 6 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6
## [97445] 2 6 2 2 3 2 2 2 2 2 2 6 6 6 2 6 2 2 2 2 2 2 2 6 6 6 6 2 2 6 2 2 2 2
## [97479] 2 2 2 2 2 2 2 2 2 2 2 2 3 2 6 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6
## [97513] 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 3 2 2 2 2
## [97547] 3 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 3
## [97581] 2 2 3 2 2 2 6 2 2 2 2 2 2 2 2 2 6 2 6 2 6 2 6 2 2 6 2 2 2 2 2 2 6 2
## [97615] 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2
## [97649] 5 2 2 1 1 2 2 2 1 1 2 2 2 3 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 6 2 2 2
## [97683] 2 2 3 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2
## [97717] 2 2 6 2 2 2 2 6 2 6 6 6 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 6 6 2 2 6 6 2
## [97751] 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 5 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [97785] 2 2 2 6 6 6 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2
## [97819] 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 6 2 2 2
## [97853] 2 2 2 6 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 6 6
## [97887] 3 6 6 2 3 2 2 2 2 6 2 5 2 2 2 6 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [97921] 6 2 2 2 2 2 2 2 2 2 3 6 2 4 2 2 2 2 2 5 2 2 2 3 2 2 2 2 2 2 2 2 2 6
## [97955] 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 6 2 6 6 2 2 2 2 3 2 2 2 2 2 6 2 2
## [97989] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2
## [98023] 2 2 2 2 2 2 2 3 2 6 2 2 6 2 2 2 2 2 2 2 6 2 6 6 2 2 2 2 2 2 2 2 2 2
## [98057] 2 2 6 2 2 2 6 6 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [98091] 2 2 2 2 2 6 2 2 2 2 2 5 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2
## [98125] 2 2 3 2 3 2 2 2 5 2 2 5 2 5 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6
## [98159] 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 3 2 2 2 2 6 2 3 2 2 2 2
## [98193] 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 2 2 3
## [98227] 2 2 3 6 2 2 2 2 2 2 2 2 2 6 6 2 5 2 2 2 2 5 2 2 2 2 2 2 6 2 2 2 2 2
## [98261] 2 2 3 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2
## [98295] 2 2 2 3 3 6 2 6 3 6 6 6 5 2 2 2 1 2 2 5 2 2 1 5 2 2 6 3 3 2 3 3 3 3
## [98329] 3 2 2 2 2 2 6 3 3 3 2 2 2 2 2 2 6 6 6 2 2 2 2 2 3 3 2 3 3 3 3 3 5 3
## [98363] 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 6 3 2
## [98397] 3 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2
## [98431] 2 2 2 2 2 2 3 3 6 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2
## [98465] 2 3 2 6 2 6 6 6 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 6 6 6 2 2 6 2 2 2 2
## [98499] 2 2 6 6 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 3 2 2 2 2 2 2 2 2 2 6 2 6 6
## [98533] 6 6 6 2 6 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 2 2 2 3 2 2 6 2 2 2 2 2 6
## [98567] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2
## [98601] 2 2 3 6 2 2 2 2 2 2 2 2 6 2 6 2 2 2 2 3 2 2 2 6 3 2 2 2 2 2 2 2 2 2
## [98635] 6 6 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 6 6 6 2 6 6 6 2 2 2 2 2 2 2 2 2
## [98669] 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2
## [98703] 6 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 2 2 2
## [98737] 2 6 6 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2
## [98771] 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 3 5 5 2 2 2 2 2 2 2 2 2 2 3 2 2
## [98805] 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2
## [98839] 2 2 2 2 2 3 3 3 2 2 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## [98873] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 6 6 6 6 2 2 2 2 2 6 2 2 2 2 2
## [98907] 2 2 2 2 2 6 6 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 2 2 6 2 6 2 2 2 2 5 2 2
## [98941] 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 6 2 2 6 6 6 2 2 2 2 2 2 2
## [98975] 2 2 2 2 2 2 2 2 2 2 2 2 2 6 3 2 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2
## [99009] 3 2 6 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 6 6 2 2 2 2 3 6 2 2 2 2
## [99043] 2 2 2 2 2 6 2 2 2 2 2 2 3 2 2 2 2 2 3 6 3 2 6 6 2 2 2 2 2 2 2 2 2 2
## [99077] 2 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3
## [99111] 2 2 6 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 6 2 2 6 2 2 2 2 6 2 2 2 2
## [99145] 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 6 2 2 2
## [99179] 2 2 2 2 2 2 2 3 6 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2
## [99213] 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2
## [99247] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 6 2 6 2 3 2 2 2 2 2 2 2
## [99281] 2 2 2 5 2 1 2 2 2 2 2 2 2 2 2 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 2
## [99315] 6 6 6 6 6 2 2 2 2 2 2 2 2 2 3 5 2 6 6 6 6 6 6 6 6 3 3 2 2 2 2 2 2 2
## [99349] 2 6 2 3 2 2 2 2 2 6 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 6 2 2 2 2 2
## [99383] 2 1 2 2 2 2 2 2 2 2 6 2 6 3 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 3
## [99417] 2 3 2 2 2 2 2 2 2 2 2 6 6 2 6 6 6 6 6 6 6 6 6 6 2 2 2 2 2 3 2 2 3 2
## [99451] 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 6 6 2 2 6 6 6 6 6 6 2 6 6
## [99485] 2 2 2 2 2 2 2 2 2 6 6 2 2 2 6 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 2 2 2 2
## [99519] 2 2 2 2 2 2 2 2 2 6 2 2 6 2 2 2 2 2 2 2 3 2 6 2 2 2 2 6 6 6 2 3 2 3
## [99553] 6 2 2 2 2 2 6 2 2 2 2 2 6 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2
## [99587] 2 2 2 2 2 2 6 3 2 2 2 2 2 6 2 2 2 2 6 2 6 2 6 2 2 2 6 6 6 6 2 2 2 3
## [99621] 2 2 2 6 2 2 2 2 2 2 2 2 6 2 2 2 2 6 2 2 2 2 2 2 2 2 2 6 6 2 2 2 6 2
## [99655] 2 2 2 2 6 6 2 2 2 2 2 3 6 6 2 2 2 2 6 2 6 6 6 6 6 6 6 6 2 2 2 2 2 3
## [99689] 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2
## [99723] 2 3 2 6 2 2 6 2 6 3 2 3 3 3 5 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 6 2
## [99757] 6 6 6 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 6 6 6 6 6 6 6 2 2 2 2 2 2 2 2 2
## [99791] 6 6 2 2 2 6 6 6 6 6 2 2 2 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 6 2 2 2 2
## [99825] 6 2 6 6 6 2 2 6 6 3 6 3 2 6 2 2 3 2 3 2 2 2 2 2 2 2 6 2 6 6 6 2 2 6
## [99859] 2 2 6 2 2 2 2 2 2 6 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 6 6 2 2 6 6 6 2
## [99893] 2 2 2 2 6 6 6 2 6 6 2 2 2 2 2 2 2 2 2 3 3 2 2 2 6 2 2 2 2 2 2 3 2 2
## [99927] 2 2 2 2 6 2 2 2 6 2 2 2 2 2 2 3 2 2 2 6 2 3 2 6 6 6 6 6 6 6 6 2 2 2
## [99961] 2 2 2 2 3 6 6 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2
## [99995] 2 2 6 2 6
##  [ reached getOption("max.print") -- omitted 6278076 entries ]
## 
## Within cluster sum of squares by cluster:
## [1]   25641653    5849148   71244138 1140193467   14048565   17081398
##  (between_SS / total_SS =  80.1 %)
## 
## Available components:
## 
## [1] "cluster"      "centers"      "totss"        "withinss"    
## [5] "tot.withinss" "betweenss"    "size"         "iter"        
## [9] "ifault"

Now after we algorithmically clustered, let’s see where did the algorithm divide the data:

# See results

## Now we got states and interpretations for them. let's insert them into our data.
dt.all$cluster <- factor(cluster$cluster) # adds a cluster column to inform states 

# now we can plot this and see how it looks. I'm sampling 0.5 Million samples from the data so that the software can handle it. For plotting, I'm plotting average donations below 1000 since above that there are only some outliers (that belong to the same group).
ggplot(sample_n(dt.all[avg_amount<1000], 500000), aes(x=n_donations_month, y=avg_amount, color=cluster, alpha=0.2)) +
  geom_point() +
  labs(title =  "Avg Amount vs #N Donations This Month", 
        x = "Number of Donations This Month", 
        y = "Avg Donation Amount")

The clustering algorithm clustered the data into 1- different clusters, where we see the following trends: 1. They are mostly clustered by amount and not frequency 2. There are many more groups in the lower range; almost as if it was a more linearly spaced division in the log-scale. We shall consdier that but also other alternatives in choosing states.

Choice of the clusters themselves

As I mentioned before, the choice of states should be informed by data but more importantly - for our needs of later interpretation. The clustering algorithm chose to cluster mostly according to the amount donated, but we care maybe even more about the number of donations per month. Looking at the clusters, the data, previous data explorations and distributions, and the possible choice set for donations, we should come up with some distinct boundaries.

Choice of the number of clusters

How do you know how many clusters to have? This is really a case-by-case question. If you have some definitions and cut-offs that would make sense to cluster by, defnitely consider those. You probably don’t want too many clusters because you want them to be interpretable and understandable. My advice is go with a few clusters which are clear and interpretable in your situation, and mix insights from clustering methods, possibly Hidden Markov Models (see end of tutorial), and real-world relevance of groups. Computationally, I’d look at the distribution of clusters and see what looks most sensible (the most concise distinct clustering framework), while keeping an eye for the reported Cluster Sum of Squares by cluster (between_SS / total_SS = 87.8 %). After many trials and various amounts for the centers, this latest one included above seems to have good performance and decent interpretability. We’ll continue with that for now.

Check clusters boundaries to inform states boundaries, together with external information (of choice set)

Check clusters means on both axes

cluster$centers
##    avg_amount n_donations_month
## 1 243.6466807         1.4298974
## 2   0.2687651         0.0806702
## 3  36.5112569         1.4033484
## 4 724.2082118         1.2090719
## 5  99.1876644         1.3559794
## 6  11.7963175         1.5778162

Check cluster boundaries

## borders in amount
list_borders <- c()
for (i in seq(1,10)) {
  list_borders <- c(list_borders, c(min(dt.all[cluster == i, avg_amount]), 
                                  max(dt.all[cluster == i, avg_amount])))
}
## Warning in min(dt.all[cluster == i, avg_amount]): no non-missing arguments
## to min; returning Inf
## Warning in max(dt.all[cluster == i, avg_amount]): no non-missing arguments
## to max; returning -Inf
## Warning in min(dt.all[cluster == i, avg_amount]): no non-missing arguments
## to min; returning Inf
## Warning in max(dt.all[cluster == i, avg_amount]): no non-missing arguments
## to max; returning -Inf
## Warning in min(dt.all[cluster == i, avg_amount]): no non-missing arguments
## to min; returning Inf
## Warning in max(dt.all[cluster == i, avg_amount]): no non-missing arguments
## to max; returning -Inf
## Warning in min(dt.all[cluster == i, avg_amount]): no non-missing arguments
## to min; returning Inf
## Warning in max(dt.all[cluster == i, avg_amount]): no non-missing arguments
## to max; returning -Inf
list_borders
##  [1]  171.666667  483.333333    0.000000    6.010000   24.165000
##  [6]   67.833333  484.483333 5400.000000   67.857143  171.343333
## [11]    1.527273   24.345238         Inf        -Inf         Inf
## [16]        -Inf         Inf        -Inf         Inf        -Inf
## borders in n_donations_month
list_borders_nd <- c()
for (i in seq(1,10)) {
  list_borders_nd <- c(list_borders_nd, c(min(dt.all[cluster == i, n_donations_month]), 
                                  max(dt.all[cluster == i, n_donations_month])))
}
## Warning in min(dt.all[cluster == i, n_donations_month]): no non-missing
## arguments to min; returning Inf
## Warning in max(dt.all[cluster == i, n_donations_month]): no non-missing
## arguments to max; returning -Inf
## Warning in min(dt.all[cluster == i, n_donations_month]): no non-missing
## arguments to min; returning Inf
## Warning in max(dt.all[cluster == i, n_donations_month]): no non-missing
## arguments to max; returning -Inf
## Warning in min(dt.all[cluster == i, n_donations_month]): no non-missing
## arguments to min; returning Inf
## Warning in max(dt.all[cluster == i, n_donations_month]): no non-missing
## arguments to max; returning -Inf
## Warning in min(dt.all[cluster == i, n_donations_month]): no non-missing
## arguments to min; returning Inf
## Warning in max(dt.all[cluster == i, n_donations_month]): no non-missing
## arguments to max; returning -Inf
list_borders_nd
##  [1]    1   14    0   29    1   71    1    9    1   40    1  113  Inf -Inf
## [15]  Inf -Inf  Inf -Inf  Inf -Inf

For determining boundaries, we should take again a close look on the histogram:

qplot(x = n_donations_month, binwidth=1, data=dt.all, xlab = "Number of repeated donations", main = "Histogram: Number of repeated donations per donor") 

qplot(x = avg_amount, binwidth=1, data=dt[n_donations_month>0 & avg_amount<=100], xlab = "Average Amount (for months with donation)", main = "Histogram: Average Amount Donated") 

In addition to the histogram, we should consider the choices given to donors were: $10, $27, $50, $100, $250, $500, $1000, [custom_value]. But we mainly see the peaks (outside of 0) at: $10, $25, $50, and $100, with very few donations above a $100.

According to the above means and boundarie, previous data explorations and distributions, and the possible choice set for donations, I will be clustering according to the following: Amounts donated 0: non-donated 0< x_between ≤$10, - “1” 10< x_between ≤$25, - “10” 25< x_between ≤$50 - “25” 50 + and higher - “50”

Number of donations per month: - 0 donations: non-donated - 1-4 donations - “monthly” - 4-10 donations - “weekly” - 10+ donations - “daily”

Creating states according to boundaries

#f_divide_states <- function(dt) {
dt.all$state <- ""

# No donations:
dt.all[n_donations_month == 0]$state <- "Non" #0
dt.all[avg_amount == 0]$state <- "Non"

# low freq (Monthly): 1-4 donations (monthly to weekly donations)
# for each tier, we have 4 pricing tiers: 
# $0.1 - $10, $10 - $100, $100 - $500, $500+
dt.all[n_donations_month>0 & n_donations_month<=4 &
        avg_amount > 0 & avg_amount<=10]$state <- "monthly1"    #31
dt.all[n_donations_month>0 & n_donations_month<=4 &
        avg_amount > 10 & avg_amount<=25]$state <- "monthly10"  #32
dt.all[n_donations_month>0 & n_donations_month<=4 &
        avg_amount > 25 & avg_amount<=50]$state <- "monthly25"  #33
dt.all[n_donations_month>0 & n_donations_month<=4 &
        avg_amount > 50]$state <- "monthly50+"                  #34

# weekly: 4-10 donations
dt.all[n_donations_month>4 & n_donations_month<=10 & 
        avg_amount > 0 & avg_amount<=10]$state <- "weekly1"  #21
dt.all[n_donations_month>4 & n_donations_month<=10 &
        avg_amount > 10 & avg_amount<=25]$state <- "weekly10" #22
dt.all[n_donations_month>4 & n_donations_month<=10 &
        avg_amount > 25 & avg_amount<=50]$state <- "weekly25" #23
dt.all[n_donations_month>4 & n_donations_month<=10 &
        avg_amount > 50]$state <- "weekly50+"               #24


# daily: 10+ donations
dt.all[n_donations_month>10 &
        avg_amount > 0 & avg_amount<=10]$state <- "daily1"  # 11
dt.all[n_donations_month>10 &
        avg_amount > 10 & avg_amount<=25]$state <- "daily10" #12
dt.all[n_donations_month>10 &
        avg_amount > 25 & avg_amount<=50]$state <- "daily25" #13
dt.all[n_donations_month>10 &
        avg_amount > 50]$state <- "daily50+"                 #14

dt.all$state <- factor(dt.all$state)  
fwrite(dt.all, paste0(PATH,"/data/dt_state.csv"))
summary(dt.all$state)
##     daily1    daily10    daily25   daily50+   monthly1  monthly10 
##       1420       2308        849        326    1046867     450043 
##  monthly25 monthly50+        Non    weekly1   weekly10   weekly25 
##     409774     136893    4280630      14526      21681       9259 
##  weekly50+ 
##       3499
#install.packages("car")
#library(car)
dt.all$state_num <- recode(dt.all$state, 
     'Non' =        0 , 
    'monthly1' =    31,
    'monthly10' =   32,
    'monthly25' =   33,
    'monthly50' =   34,
    'weekly1'  =     21,
    'weekly10' =    22,
    'weekly25' =    23,
    'weekly50' =    24,
    'daily1'  =     11,
    'daily10' =     12,
    'daily25' =     13,
    'daily50+'  =    14 )
checkpoint to reload data from disk:
### load data from disk

fwrite(dt.all, "./data/dt.all.state.csv")

dt.all <- fread(paste0(PATH,"/data/dt_state.csv"))
dt.all$state <- factor(dt.all$state)
summary(dt.all$state)
##     daily1    daily10    daily25   daily50+   monthly1  monthly10 
##       1420       2308        849        326    1046867     450043 
##  monthly25 monthly50+        Non    weekly1   weekly10   weekly25 
##     409774     136893    4280630      14526      21681       9259 
##  weekly50+ 
##       3499

Here we finished setting up the states to a logical division, informed by the distribution of the data, somewhat by clustering analysis (although that was deemed less relevant in this particular case), and created states of donors which are graspable, discriminable, easy to understand, and revelant for this analysis.

Visualize the new states

Let’s see what does the division to states look like exactly. We

ggplot(sample_n(dt.all[avg_amount<1000], 500000), aes(x=n_donations_month, y=avg_amount, color=state)) +
  geom_point(alpha=0.3) +
  labs(title =  "Average Donation Amount vs Number of Donations That Month", 
        x = "Number of Donations This Month", 
        y = "Avg Donation Amount") 

I now want to plot this in a slightly more visualization thoughtful way - more easy and intuitive to read, less distractions from the actual data - like white background and better sizes of visualizations, more appropriate for paper-ready graphs and make data more easily detected by the human eye. This is based on visualization principles, and you can learn more about them by the field expert Claus O. Wilke, here: https://serialmentor.com/dataviz/. Wilke created the “cowplot” package which automatically transforms your ggplot visualizations to be of that style. It’s not necessarily more visually pleasing, but it is better for our human detection and understanding of the data in the plot more effectively.

# install if necessary and load the COW package, then plot normally!
#install.packages("cowplot")
require("cowplot")
## Loading required package: cowplot
## 
## Attaching package: 'cowplot'
## The following object is masked from 'package:ggthemes':
## 
##     theme_map
## The following object is masked from 'package:ggplot2':
## 
##     ggsave
# unloadNamespace("cowplot")
ggplot(sample_n(dt.all[avg_amount<1000], 500000), aes(x=n_donations_month, y=avg_amount, color=state)) +
  geom_point(alpha=0.3) +
  labs(title =  "Average Donation Amount vs Number of Donations That Month", 
        x = "Number of Donations This Month", 
        y = "Avg Donation Amount") +
  theme_minimal()

Create “Previous State” shifted column for transition

Now that we have created the “state” column, we need to create another column for each row of the “previous state” for each agent. From this, we’ll be able to build the transition matrix. For this operation, I’ll again use data.table. In order to create a shifted state column, we first need to order the dataset in the order to be shifted, and group by user (so that states don’t spillover between users). So the primary sort column is user, and then we want to order that by date. Since we have 6 Million rows, this takes a long time. I commented this out I’ve commented the opration row out for not accidentally running it when not needed, but you can uncomment it and use it on your machine.

# now for each division of the db perform the shift
# First step: "Set keys"" in data.table by the order we want to sort by the columns. make sure the first column is the primary group (the user: donor_uid) and the second is the secondary (dates: monthyear)
# 
setkey(dt, donor_uid, monthyear) # important for ordering 
dt <- dt[order(donor_uid, monthyear)] 
# verify it's ordered correctly by viewing it:
head(dt,20)
##                        donor_uid monthyear total_amount avg_amount
##  1:         ;RICHARD|FAHEY|38548   2015-05        10.00   10.00000
##  2:         ;RICHARD|FAHEY|38548   2015-06        10.00   10.00000
##  3:         ;RICHARD|FAHEY|38548   2015-07        10.00   10.00000
##  4:         ;RICHARD|FAHEY|38548   2015-08        10.00   10.00000
##  5:         ;RICHARD|FAHEY|38548   2015-09        10.00   10.00000
##  6:         ;RICHARD|FAHEY|38548   2015-10        10.00   10.00000
##  7:         ;RICHARD|FAHEY|38548   2015-11        10.00   10.00000
##  8:         ;RICHARD|FAHEY|38548   2015-12        10.00   10.00000
##  9:         ;RICHARD|FAHEY|38548   2016-01        10.00   10.00000
## 10:         ;RICHARD|FAHEY|38548   2016-02        10.00   10.00000
## 11:        :LAURA|GARRISON|30601   2016-02        10.00    5.00000
## 12:         .SUSAN|HAJIANI|90025   2015-11       100.00  100.00000
## 13:         .SUSAN|HAJIANI|90025   2016-01        50.00   50.00000
## 14:      'RONY' KHAN|ZAHID|14450   2016-01        23.00   11.50000
## 15:         'STANLEY|LEHTO|98597   2015-09       100.00  100.00000
## 16:         'STANLEY|LEHTO|98597   2016-01        50.00   50.00000
## 17:         'STANLEY|LEHTO|98597   2016-02       100.00  100.00000
## 18: (ANJANEYA)MURTY|KANURY|97330   2015-05        35.00   35.00000
## 19: (ANJANEYA)MURTY|KANURY|97330   2015-10        35.00   35.00000
## 20: (ANJANEYA)MURTY|KANURY|97330   2015-11        68.54   22.84667
##     n_donations_month n_donations_life months_donated
##  1:                 1               10             10
##  2:                 1               10             10
##  3:                 1               10             10
##  4:                 1               10             10
##  5:                 1               10             10
##  6:                 1               10             10
##  7:                 1               10             10
##  8:                 1               10             10
##  9:                 1               10             10
## 10:                 1               10             10
## 11:                 2                2              1
## 12:                 1                2              2
## 13:                 1                2              2
## 14:                 2                2              1
## 15:                 1                3              3
## 16:                 1                3              3
## 17:                 1                3              3
## 18:                 1               15              6
## 19:                 1               15              6
## 20:                 3               15              6
# # CREATE "Previous State" COLUMN, SHIFTED ONCE BEHIND, per group of user id. 
# ***UNCOMMENT THE LINE BELOW TO EXECUTE!!! 
# dt[, prev_state:= (shift(state, n=1L, fill = 0 , type = "lag")), by=donor_uid]
 
# save result: UNCOMMENT
# fwrite(dt, "./data/df_chunks/dt_states_1.csv")
# 
# # make sure it worked!! see below for further description of what to notice:
# dt[1:100, .(donor_uid, monthyear, state, prev_state)]

# create "New" state for new donors who don't have a previous state, and are not in the first month where everyone doesn't have a previous step.
# dt[isnull(prev_state) & monthyear != '2015-04', state:="New"]

Checkpoint to save or load the saved result:

# fwrite(dt.all, "./data/df_states_full.csv")
dt <- fread("./data/df_states_full.csv")
dt$state <- factor(dt$state) # make state from string to factor (category)
print(summary(dt$state))
##     daily1    daily10    daily25   daily50+   monthly1  monthly10 
##       1420       2308        849        326    1039280     447760 
##  monthly25 monthly50+        New        Non    weekly1   weekly10 
##     404846     134250     579825    3718246      14526      21681 
##   weekly25  weekly50+ 
##       9259       3499
head(dt)
##    V1            donor_uid monthyear total_amount avg_amount
## 1: 22 'STANLEY|LEHTO|98597   2015-04            0          0
## 2: 23 'STANLEY|LEHTO|98597   2015-05            0          0
## 3: 24 'STANLEY|LEHTO|98597   2015-06            0          0
## 4: 25 'STANLEY|LEHTO|98597   2015-07            0          0
## 5: 26 'STANLEY|LEHTO|98597   2015-08            0          0
## 6: 27 'STANLEY|LEHTO|98597   2015-09          100        100
##    n_donations_month n_donations_life months_donated cluster      state
## 1:                 0                3              3       5        New
## 2:                 0                3              3       5        Non
## 3:                 0                3              3       5        Non
## 4:                 0                3              3       5        Non
## 5:                 0                3              3       5        Non
## 6:                 1                3              3       3 monthly50+
##    state_prev state_num state_prev_num
## 1:          -         1             -1
## 2:        New         0              0
## 3:        Non         0              0
## 4:        Non         0              0
## 5:        Non         0              0
## 6:        Non        34              0

Divide into “Train” and “Test” datasets

In Machine Learning, when we want to develop predictive models, we have to balance fitting our model best but not overfitting. We test this by dividing our dataset into a “training” and “testing” datasets: we fit our model based on the training dataset, and then finally we test it and report conclusions on the test dataset. That shows the result of generalizing this model to out-of-sample new data, which is what we wanted when we developed a predictive model (otherwise, we would have known the answers already, no?!). Normally, we’d want our training and testing datasets to be similar in terms of being representative random samples from the population. However, in this case, such as in any other time-series or chronological dataset, in reality we will always have a history of data and will try to predict for the next unseen future data based on the past data. Therefore, we will actuallly need to divide our training and testing datasets by chronological date to early and late data, treating it as if we are now at the midpoint in time, and based on all that past data we will try to predict that “future” data.

# make monthyear into a factor
dt$monthyear <- factor(dt$monthyear)
# let's convert these to dates, since we will need that also later on for plotting.
# since we left out the day of month, we now need to manually insert a random day of month to have R accept that it's a date.
dt$date <-  as.Date(paste0(dt$monthyear, "-01") )

# Now split the dataset to training (2015) and testing datasets (2016)
dt_2015 <- dt[date < as.Date("2016-01-01"), ]
dt_2016 <- dt[date >= as.Date("2016-01-01"),]
print(paste("2015 Dataset N =", nrow(dt_2015)))
## [1] "2015 Dataset N = 5218425"
summary(dt_2015[, .(monthyear)])
##    monthyear      
##  2015-04: 579825  
##  2015-05: 579825  
##  2015-06: 579825  
##  2015-07: 579825  
##  2015-08: 579825  
##  2015-09: 579825  
##  (Other):1739475
print(paste("2016 Dataset N =", nrow(dt_2016)))
## [1] "2016 Dataset N = 1159650"
summary(dt_2016[, .(date)])
##       date           
##  Min.   :2016-01-01  
##  1st Qu.:2016-01-01  
##  Median :2016-01-16  
##  Mean   :2016-01-16  
##  3rd Qu.:2016-02-01  
##  Max.   :2016-02-01
print(paste0("Allocated into training set: ",100*nrow(dt_2015)/nrow(dt),"%."))
## [1] "Allocated into training set: 81.8181818181818%."

Filter First Month (without transitions)

For the upcoming calculations of states, we want to ignore the first month because no one has a previous state there. So we filter those out:

# filter anything in April
dt <- dt[dt$date > as.Date("2015-04-30"),]
df <- setDF(dt) # make a data.frame out of dt 
summary(dt$date)
##         Min.      1st Qu.       Median         Mean      3rd Qu. 
## "2015-05-01" "2015-07-01" "2015-09-16" "2015-09-15" "2015-12-01" 
##         Max. 
## "2016-02-01"

BUILD TRANSITION MATRIX

Now we can use our dataset and build a Markovian Transition Matrix based on the frequency of current transitions! ## Build Overall Transition Matrix: Based On All Data

# First, make sure your states are ordered in your desired order.
# in R, cateogircal columns would be "factors", and you need to do that by *specfying the order of the "levels"* in your factor. 

state_levels <- c("New", 'Non'  , 'monthly1' , 'monthly10', 'monthly25', 'monthly50+', 'weekly1' , 'weekly10' , 'weekly25' , 'weekly50+' , 'daily1', 'daily10', 'daily25', 'daily50+')
dt$state <- factor(dt$state, levels = state_levels)
dt$state_prev <- factor(dt$state_prev, levels = state_levels)

# first, let's create a dataframe with all possible combinations of states, as a template of all possible transition, to ensure that any transition matrix will include the entire combinations set even if ther is no data. 
# create a table with all possible combinations of states (for transitions) to ensure we have a listing for each one. This is espeiclaly needed for when we later do this *per month*, since in a smaller sample there is a higher chance of some combinations to not occur (and we do see that happens). 
states_combos <- expand.grid(state_prev=state_levels, curr_state=state_levels, KEEP.OUT.ATTRS = TRUE, stringsAsFactors = TRUE)


# This is a function which computes Transition Matrix from data and converts to vector 
f_compute_transitions_as_matrix <- function(df=setDF(dt), 
                                          curr_state_column = "state", 
                                           prev_state_column = "state_prev",
                                          return_ns=F, #the return Ns will return also the N amount of transitions
                                          factorize=F,
                                          states_combos_df = states_combos #need df of all states combinations
                                          ) { 
    # sometimes we want to make sure the columns are factored correctly, that could be handles here:
   if (factorize) {
      # transform the data into a contingency table of counts of joint occurences (previous & current states)
      dt$state <- factor(dt$state, levels = state_levels)
      dt$state_prev <- factor(dt$state_prev, levels = state_levels) }
  
    # melt the pairs of transition from wide format into long format
    transitions_long <- melt(table(df[[prev_state_column]], df[[curr_state_column]]))
    colnames(transitions_long) = c("state_prev", "curr_state","n") # change column names 
    
    # now, in case that there are missing combinations, add them:
    # first, merge the transitions counts into the df with full set of possible combinations, 
    # so that if there were any combinations missing they will be there from the combos df without an N value
    transitions_long_complete <- merge(states_combos, transitions_long, all.x=T)
    # now convert any missing NAs (without transitions) to 0 count.
    transitions_long_complete[is.na(transitions_long_complete)] <- 0
    
    # here we create the transition matrix by summarizing the long format, where the key is the current state
    trans_matrix <- spread(as.data.frame(transitions_long_complete), 
                           key =  curr_state, value = n, fill = 0,  drop = FALSE) 
    trans_matrix[["state_prev"]] <- NULL # delete the named row
    
    # Tabulate to get numbers of each row (from each state), 
    # and divide that row by this total number to get percentage of transitions
    n_per_row <- rowSums(trans_matrix) 
    trans_matrix <- trans_matrix / n_per_row # make into transition probabilities (every row sums to 1)
    trans_matrix <- replace(trans_matrix, is.na(trans_matrix), 0) # replace NA with 0 (never occured)
    trans_matrix <- data.matrix(trans_matrix) # convert into data (numerical) matrix
    #trans_matrix <- replace(trans_matrix, is.na(trans_matrix), 0) # replace NA with 0 (never occured)
    if (return_ns == T) {return(list(trans_matrix, n_per_row))} else {return(trans_matrix)}
}

Above this is the function that we can use to create a transition matrix out of any two columns, or subset of the dataframe. Let’s use it over the whole dataframe:

## TRANSITION MATRIX: convert vector to transition matrix
trans_matrix <- f_compute_transitions_as_matrix(dt, curr_state_column = "state", 
                                           prev_state_column = "state_prev", return_ns = F)
# Save matrix
fwrite(as.data.frame(trans_matrix, row.names = unlist(state_levels)), "./data/trans_matrix_all.csv")

# PRINT MATRIX
round(as.data.frame(trans_matrix, row.names = unlist(state_levels)),2)
##            New  Non monthly1 monthly10 monthly25 monthly50+ weekly1
## New          0 0.85     0.07      0.02      0.04       0.02    0.00
## Non          0 0.74     0.12      0.06      0.06       0.02    0.00
## monthly1     0 0.31     0.58      0.07      0.02       0.00    0.01
## monthly10    0 0.36     0.12      0.38      0.10       0.01    0.00
## monthly25    0 0.45     0.06      0.09      0.36       0.03    0.00
## monthly50+   0 0.51     0.03      0.04      0.09       0.32    0.00
## weekly1      0 0.04     0.33      0.11      0.01       0.00    0.25
## weekly10     0 0.04     0.11      0.23      0.08       0.01    0.05
## weekly25     0 0.04     0.04      0.10      0.22       0.08    0.01
## weekly50+    0 0.07     0.03      0.04      0.09       0.29    0.01
## daily1       0 0.01     0.09      0.02      0.00       0.00    0.19
## daily10      0 0.01     0.01      0.04      0.01       0.01    0.04
## daily25      0 0.02     0.01      0.02      0.03       0.02    0.00
## daily50+     0 0.06     0.03      0.03      0.04       0.07    0.01
##            weekly10 weekly25 weekly50+ daily1 daily10 daily25 daily50+
## New            0.00     0.00      0.00   0.00    0.00    0.00     0.00
## Non            0.00     0.00      0.00   0.00    0.00    0.00     0.00
## monthly1       0.01     0.00      0.00   0.00    0.00    0.00     0.00
## monthly10      0.02     0.01      0.00   0.00    0.00    0.00     0.00
## monthly25      0.01     0.01      0.00   0.00    0.00    0.00     0.00
## monthly50+     0.00     0.01      0.01   0.00    0.00    0.00     0.00
## weekly1        0.13     0.01      0.00   0.06    0.03    0.00     0.00
## weekly10       0.27     0.08      0.01   0.01    0.07    0.02     0.00
## weekly25       0.10     0.23      0.08   0.00    0.04    0.05     0.02
## weekly50+      0.02     0.08      0.26   0.00    0.01    0.02     0.06
## daily1         0.09     0.01      0.00   0.43    0.15    0.01     0.00
## daily10        0.20     0.09      0.01   0.06    0.40    0.09     0.03
## daily25        0.07     0.17      0.08   0.01    0.15    0.31     0.13
## daily50+       0.04     0.08      0.22   0.00    0.04    0.15     0.21

Great! The above transition matrix shows (as you could see more clearly colored in the report) that the diagonial values, meaning the stable transitions of staying in the same state, are the highest ones. That means that our categorization per states was reasonable, and we may continue. Naturally, it is not ideal - they are not as stable as being around 80% stable staying at the same state, but at least they are more likely to repeat than to transition to any other state (except for the state of “New” which is how I defined it).

Build “Train” Transition Matrix: Based Only on Early/Training Dataset

Now we would also want to test the predictive capability of this transition matrix by splitting the dataset to training (until Dec 2015) and test (Jan 2016 onwards). We will build the transition matrix on the training set and predict on the test set later. In this particular case, we will probably encounter a seasonality issue, since we don’t have enough years to model to account for seasonality, and I don’t presume to know enough how to predict to manually insert modifications to predictions in order to adjust for seasonality. The major change would be significant increases in donations as we get closer to the elections seasons. However, I will demonstrate this principle for the reader’s potential use.

### 2015 Only TRANSITION MATRIX + N's of rows
list_trans_matrix_2015 <- f_compute_transitions_as_matrix(dt_2015, curr_state_column = "state",
                                                          prev_state_column = "state_prev", return_ns = T)

trans_matrix_2015 <- list_trans_matrix_2015[[1]] 
trans_matrix_2015_Ns <- list_trans_matrix_2015[[2]] 

# PRINT MATRIX
round(as.data.frame(trans_matrix_2015, row.names = unlist(state_levels)),2)
##            New  Non monthly1 monthly10 monthly25 monthly50+ weekly1
## New          0 0.85     0.07      0.02      0.04       0.02    0.00
## Non          0 0.79     0.10      0.04      0.05       0.02    0.00
## monthly1     0 0.34     0.60      0.04      0.01       0.00    0.00
## monthly10    0 0.43     0.13      0.37      0.05       0.01    0.00
## monthly25    0 0.52     0.06      0.07      0.32       0.02    0.00
## monthly50+   0 0.61     0.03      0.03      0.07       0.25    0.00
## weekly1      0 0.09     0.51      0.11      0.01       0.00    0.19
## weekly10     0 0.07     0.20      0.30      0.09       0.01    0.06
## weekly25     0 0.08     0.07      0.16      0.33       0.07    0.01
## weekly50+    0 0.08     0.08      0.04      0.17       0.33    0.00
## daily1       0 0.05     0.21      0.05      0.00       0.00    0.33
## daily10      0 0.03     0.03      0.13      0.03       0.00    0.08
## daily25      0 0.08     0.08      0.08      0.08       0.00    0.00
## daily50+     0 0.00     0.00      0.12      0.12       0.25    0.00
##            weekly10 weekly25 weekly50+ daily1 daily10 daily25 daily50+
## New            0.00     0.00      0.00   0.00    0.00    0.00     0.00
## Non            0.00     0.00      0.00   0.00    0.00    0.00     0.00
## monthly1       0.00     0.00      0.00   0.00    0.00    0.00     0.00
## monthly10      0.01     0.00      0.00   0.00    0.00    0.00     0.00
## monthly25      0.00     0.00      0.00   0.00    0.00    0.00     0.00
## monthly50+     0.00     0.00      0.00   0.00    0.00    0.00     0.00
## weekly1        0.06     0.00      0.00   0.02    0.01    0.00     0.00
## weekly10       0.19     0.03      0.00   0.01    0.03    0.01     0.00
## weekly25       0.08     0.14      0.03   0.00    0.02    0.02     0.01
## weekly50+      0.02     0.06      0.16   0.00    0.00    0.01     0.03
## daily1         0.09     0.00      0.03   0.24    0.00    0.00     0.00
## daily10        0.34     0.10      0.02   0.05    0.16    0.02     0.02
## daily25        0.08     0.38      0.00   0.00    0.08    0.15     0.00
## daily50+       0.00     0.12      0.38   0.00    0.00    0.00     0.00

Now we have the transition matrix based on the data of 2015! It seems reasonable as it is fairly close to the full one.

BUILD MONTHLY HISTORY OF TRANSITION MATRICES

In order to substantiate the stability and over-time relevance of our model, we’d like to create the same transition matrix model based only on each month data, and later compare the values across months, so that we have the history and satilibity of transitions accroding to each month. If values change wildly (either wild oscilations or worse - a clear trend), we’d know that either (1) the monthly data is too sparse or that (2) transition patterns inherently change throughout time, and thus we might not be able to rely on the model to predict far into the future.

I’ll do that by: 1. Creating a new column “month” of year-month 2. Group the dataset by “Month”, and run the same trasition_matrix creation funcion on each group (using ddply that’s simple)

Building Per Month Datasets: We’ll use ddply and dplyr, which work with Data.Frames and not with Data.Tables, so we’ll convert the data.table into a dataframe simply by using “setDF()”

Let’s start with our monthly transition matrices and values. First, we’ll build the same concept as before - our Markovian transition matrix, but based on each Month’s data seperately.

Monthly Transition Matrices

# ALL monthly TRANSITION MATRICES
f_generate_monthly_trans_matrices <- function(df, states_colname="state",
                                               prev_states_colname="state_prev") {
  monthly_trans_matrices <- dlply(df, .(monthyear), .fun = f_compute_transitions_as_matrix, curr_state_column = states_colname, prev_state_column = prev_states_colname)
  #monthly_trans_matrices <- lapply(monthly_trans_matrices[2:length(monthly_trans_matrices)], na.exclude) 
  #monthly_trans_matrices <- monthly_trans_matrices[2:(length(monthly_trans_matrices)-1)]
  monthly_trans_matrices
  }

# Run Function!
monthly_trans_matrices <- f_generate_monthly_trans_matrices(df)

# make sure that each listing is of the same size:

complete_states <- function(avg_amounts, states_levels) {
  statesdf <- data.frame(states_levels)
  colnames(statesdf) = "states"
  states_amounts <- merge(statesdf, avg_amounts, all.x=T)
  states_amounts[is.na(states_amounts)] <- 0
  states_amounts 
  }

# Save Result
# fwrite(monthly_trans_matrices, "./data/monthly_trans_matrices.csv")
# View Result
monthly_trans_matrices[5:6]
## $`2015-09`
##       New        Non   monthly1  monthly10   monthly25  monthly50+
##  [1,]   0 0.00000000 0.00000000 0.00000000 0.000000000 0.000000000
##  [2,]   0 0.71045566 0.14073717 0.05833470 0.067973810 0.021711880
##  [3,]   0 0.20524794 0.71345410 0.05568422 0.013845942 0.002290965
##  [4,]   0 0.24956091 0.12922455 0.53563255 0.060620576 0.008196285
##  [5,]   0 0.37250066 0.09812384 0.08777416 0.412490091 0.018937726
##  [6,]   0 0.47942064 0.06071213 0.04248642 0.098129149 0.309354255
##  [7,]   0 0.00000000 0.36607143 0.05357143 0.008928571 0.000000000
##  [8,]   0 0.02739726 0.13698630 0.23287671 0.054794521 0.000000000
##  [9,]   0 0.07142857 0.07142857 0.07142857 0.214285714 0.035714286
## [10,]   0 0.00000000 0.11111111 0.00000000 0.111111111 0.000000000
## [11,]   0 0.00000000 0.33333333 0.00000000 0.000000000 0.000000000
## [12,]   0 0.00000000 0.00000000 0.00000000 0.000000000 0.000000000
## [13,]   0 0.00000000 0.00000000 0.00000000 0.000000000 0.000000000
## [14,]   0 0.00000000 0.00000000 0.00000000 0.000000000 1.000000000
##            weekly1     weekly10     weekly25     weekly50+         daily1
##  [1,] 0.0000000000 0.0000000000 0.0000000000 0.00000000000 0.000000000000
##  [2,] 0.0002911512 0.0003289342 0.0001200165 0.00002667034 0.000008890114
##  [3,] 0.0055333692 0.0033926314 0.0003254923 0.00002503787 0.000150227219
##  [4,] 0.0026611315 0.0108041939 0.0028740220 0.00010644526 0.000053222630
##  [5,] 0.0006606183 0.0044041223 0.0040958337 0.00070465956 0.000000000000
##  [6,] 0.0001207001 0.0022933011 0.0039831020 0.00301750151 0.000000000000
##  [7,] 0.3571428571 0.1250000000 0.0000000000 0.00000000000 0.044642857143
##  [8,] 0.1095890411 0.2876712329 0.0547945205 0.01369863014 0.013698630137
##  [9,] 0.0000000000 0.1428571429 0.2500000000 0.00000000000 0.000000000000
## [10,] 0.0000000000 0.0000000000 0.0000000000 0.66666666667 0.000000000000
## [11,] 0.0000000000 0.0000000000 0.0000000000 0.00000000000 0.666666666667
## [12,] 0.0000000000 0.0000000000 1.0000000000 0.00000000000 0.000000000000
## [13,] 0.0000000000 0.0000000000 0.0000000000 0.00000000000 0.000000000000
## [14,] 0.0000000000 0.0000000000 0.0000000000 0.00000000000 0.000000000000
##              daily10        daily25      daily50+
##  [1,] 0.000000000000 0.000000000000 0.00000000000
##  [2,] 0.000006667585 0.000004445057 0.00000000000
##  [3,] 0.000050075740 0.000000000000 0.00000000000
##  [4,] 0.000212890521 0.000000000000 0.00005322263
##  [5,] 0.000264247336 0.000044041223 0.00000000000
##  [6,] 0.000362100181 0.000000000000 0.00012070006
##  [7,] 0.044642857143 0.000000000000 0.00000000000
##  [8,] 0.054794520548 0.013698630137 0.00000000000
##  [9,] 0.035714285714 0.107142857143 0.00000000000
## [10,] 0.000000000000 0.000000000000 0.11111111111
## [11,] 0.000000000000 0.000000000000 0.00000000000
## [12,] 0.000000000000 0.000000000000 0.00000000000
## [13,] 0.000000000000 1.000000000000 0.00000000000
## [14,] 0.000000000000 0.000000000000 0.00000000000
## 
## $`2015-10`
##       New        Non   monthly1  monthly10  monthly25  monthly50+
##  [1,]   0 0.00000000 0.00000000 0.00000000 0.00000000 0.000000000
##  [2,]   0 0.81595452 0.07608040 0.03554288 0.05504291 0.017206572
##  [3,]   0 0.43603368 0.51516407 0.03332351 0.01224438 0.001696846
##  [4,]   0 0.53270421 0.11906142 0.29184539 0.04878388 0.003732987
##  [5,]   0 0.61685263 0.04330544 0.05297536 0.27294282 0.012250116
##  [6,]   0 0.66246851 0.02427296 0.02999771 0.07327685 0.207007099
##  [7,]   0 0.10189229 0.58806405 0.11790393 0.02037846 0.001455604
##  [8,]   0 0.07820513 0.25512821 0.31025641 0.12692308 0.010256410
##  [9,]   0 0.09926471 0.04044118 0.18014706 0.36029412 0.080882353
## [10,]   0 0.06250000 0.07812500 0.04687500 0.20312500 0.343750000
## [11,]   0 0.04000000 0.24000000 0.08000000 0.00000000 0.000000000
## [12,]   0 0.06666667 0.00000000 0.13333333 0.03333333 0.000000000
## [13,]   0 0.00000000 0.12500000 0.12500000 0.12500000 0.000000000
## [14,]   0 0.00000000 0.00000000 0.00000000 0.00000000 0.000000000
##             weekly1      weekly10      weekly25     weekly50+
##  [1,] 0.00000000000 0.00000000000 0.00000000000 0.00000000000
##  [2,] 0.00003680853 0.00007927991 0.00003963996 0.00001415713
##  [3,] 0.00070104440 0.00066917874 0.00007169772 0.00003983207
##  [4,] 0.00057965638 0.00266641935 0.00048691136 0.00011593128
##  [5,] 0.00004649000 0.00048814505 0.00097629010 0.00016271502
##  [6,] 0.00007633005 0.00038165026 0.00122128082 0.00114495077
##  [7,] 0.11208151383 0.04803493450 0.00291120815 0.00145560408
##  [8,] 0.03333333333 0.14487179487 0.02948717949 0.00384615385
##  [9,] 0.00367647059 0.08088235294 0.12500000000 0.01838235294
## [10,] 0.00000000000 0.03125000000 0.10937500000 0.10937500000
## [11,] 0.32000000000 0.12000000000 0.00000000000 0.04000000000
## [12,] 0.03333333333 0.33333333333 0.13333333333 0.03333333333
## [13,] 0.00000000000 0.12500000000 0.25000000000 0.00000000000
## [14,] 0.00000000000 0.00000000000 0.33333333333 0.66666666667
##               daily1       daily10     daily25      daily50+
##  [1,] 0.000000000000 0.00000000000 0.000000000 0.00000000000
##  [2,] 0.000002831425 0.00000000000 0.000000000 0.00000000000
##  [3,] 0.000031865654 0.00002389924 0.000000000 0.00000000000
##  [4,] 0.000023186255 0.00000000000 0.000000000 0.00000000000
##  [5,] 0.000000000000 0.00000000000 0.000000000 0.00000000000
##  [6,] 0.000000000000 0.00007633005 0.000000000 0.00007633005
##  [7,] 0.004366812227 0.00145560408 0.000000000 0.00000000000
##  [8,] 0.000000000000 0.00769230769 0.000000000 0.00000000000
##  [9,] 0.000000000000 0.00735294118 0.003676471 0.00000000000
## [10,] 0.000000000000 0.00000000000 0.015625000 0.00000000000
## [11,] 0.160000000000 0.00000000000 0.000000000 0.00000000000
## [12,] 0.033333333333 0.13333333333 0.033333333 0.03333333333
## [13,] 0.000000000000 0.12500000000 0.125000000 0.00000000000
## [14,] 0.000000000000 0.00000000000 0.000000000 0.00000000000

Above is an example of the first two transition matrices based on each month. We see, for example, that the “rare” columns aren’t always filled out, since it is rare to find those rare donations (and 1 month data isn’t always sufficient). That’s a weekness inherent to this check, so we shouldn’t count on the accuracy of the more “rare” values.

Average Monthly Amount Per State

Since we’d want to estimate what is the ‘value’ of being in each state, the key information for that is what was the actual amount donated in each state per donation-timestep.

# ALL MONTHLY AMOUNT FLOWS (Donor Monthly Amount Averages), PER DONOR STATE, PER MONTH
f_generate_monthly_amount_avgs <- function(df = dt, 
                                          states_column = "state", timeframe = "monthyear") {
    monthly_amount_avgs <- ddply(df[c(timeframe, states_column ,"avg_amount")], 
                              .(monthyear, eval(parse(text=states_column))), 
                              summarise, avg_amount=mean(avg_amount))
    colnames(monthly_amount_avgs) = c(timeframe,"state","avg_amount")
    return(monthly_amount_avgs)
}

# Run Function: Generate Average Monthly Amounts
monthly_amount_avgs <- f_generate_monthly_amount_avgs(df)
# Save and View Result
# fwrite(monthly_amount_avgs, "./data/monthly_amount_avgs.csv")
monthly_amount_avgs[1:25,]
##    monthyear      state avg_amount
## 1    2015-05     daily1   9.666667
## 2    2015-05    daily10  15.871212
## 3    2015-05   monthly1   9.128604
## 4    2015-05  monthly10  21.362677
## 5    2015-05  monthly25  44.118810
## 6    2015-05 monthly50+ 138.822419
## 7    2015-05        Non   0.000000
## 8    2015-05    weekly1   7.123500
## 9    2015-05   weekly10  16.981622
## 10   2015-05   weekly25  33.372008
## 11   2015-05  weekly50+ 109.907123
## 12   2015-06     daily1   7.077381
## 13   2015-06    daily10  12.428657
## 14   2015-06   monthly1   8.610756
## 15   2015-06  monthly10  18.938001
## 16   2015-06  monthly25  42.077613
## 17   2015-06 monthly50+ 135.983908
## 18   2015-06        Non   0.000000
## 19   2015-06    weekly1   7.815939
## 20   2015-06   weekly10  16.051128
## 21   2015-06   weekly25  35.254662
## 22   2015-06  weekly50+ 137.446507
## 23   2015-07     daily1   5.297009
## 24   2015-07    daily10  19.545455
## 25   2015-07   daily50+  71.428571

Above is the average “value” (amount donated) per state per time period.

Grab Diagonal Transition Probabilities (Probabilities of repeating the same state)

To get a sussinct idea of the differences between transition probabilities through history, I’ll use the diagonals of the transition matrix, which means the probability for each state to repeat itself. Then, we could visualize their progress over time.

# Monthly diagnoals df
f_grab_monthly_diagnoals <- function(monthly_trans_matrices, state_levels, timeframe="monthyear") {
  monthly_diagonals <- ldply(monthly_trans_matrices, .fun = diag)
  colnames(monthly_diagonals) <- c(timeframe, unlist(state_levels))
  return(monthly_diagonals)
}
# Run function
monthly_diagonals <- f_grab_monthly_diagnoals(monthly_trans_matrices, state_levels, timeframe="monthyear")
# View result
monthly_diagonals
##    monthyear New       Non  monthly1 monthly10 monthly25 monthly50+
## 1    2015-05   0 0.0000000 0.0000000 0.0000000 0.0000000  0.0000000
## 2    2015-06   0 0.8601765 0.4940459 0.3697429 0.2724654  0.2056265
## 3    2015-07   0 0.8684338 0.4475266 0.2392017 0.2427718  0.1725108
## 4    2015-08   0 0.8460426 0.5727861 0.3458286 0.3020536  0.2016585
## 5    2015-09   0 0.7104557 0.7134541 0.5356326 0.4124901  0.3093543
## 6    2015-10   0 0.8159545 0.5151641 0.2918454 0.2729428  0.2070071
## 7    2015-11   0 0.8479445 0.6672665 0.4193409 0.3472743  0.2536180
## 8    2015-12   0 0.5587033 0.6848462 0.4545049 0.3793568  0.4470461
## 9    2016-01   0 0.4697698 0.5800798 0.3722922 0.3749312  0.3659146
## 10   2016-02   0 0.4332018 0.5074471 0.3796755 0.5109247  0.4808587
##      weekly1   weekly10   weekly25  weekly50+    daily1   daily10
## 1  0.0000000 0.00000000 0.00000000 0.00000000 0.0000000 0.0000000
## 2  0.2926829 0.21212121 0.13333333 0.08333333 0.0000000 0.0000000
## 3  0.1157895 0.08629442 0.03797468 0.11538462 0.3333333 0.0000000
## 4  0.2068966 0.12790698 0.04000000 0.23076923 0.3333333 0.0000000
## 5  0.3571429 0.28767123 0.25000000 0.66666667 0.6666667 0.0000000
## 6  0.1120815 0.14487179 0.12500000 0.10937500 0.1600000 0.1333333
## 7  0.1818182 0.21052632 0.13142857 0.12280702 0.2142857 0.1111111
## 8  0.4516129 0.32035928 0.24468085 0.27272727 0.3333333 0.8000000
## 9  0.2888696 0.26736995 0.19289941 0.24045802 0.4202899 0.3968254
## 10 0.2607187 0.31481086 0.29571984 0.29538905 0.4622356 0.4285714
##      daily25  daily50+
## 1  0.0000000 0.0000000
## 2  0.0000000 0.0000000
## 3  0.0000000 0.0000000
## 4  0.0000000 0.0000000
## 5  1.0000000 0.0000000
## 6  0.1250000 0.0000000
## 7  0.0000000 0.0000000
## 8  0.0000000 0.0000000
## 9  0.2156863 0.1666667
## 10 0.3700787 0.2400000

Monthly Transitions Of Specific States

Additionally to the diagonals, i’d like to check some transitions To or From speicifc states more closely. For example, if our the state that donates the most throughout time is “Daily50+”, we’d like to know who / how people transition into that state? and where do they go afterwards? and how has that changed throughout history?

length(state_levels)
## [1] 14
# monthly Row or Column: To and From Daily
f_grab_trans_fromto <- function(monthly_trans_matrices, rowcolnum = 3, from_or_to = "from", states_list = state_levels, rows_id="monthyear") {
  ifelse(test = (from_or_to == "from"),
         yes =  grab_trans <- function(df) {df[rowcolnum,]},
         no =  grab_trans <- function(df) {df[,rowcolnum]}
  )
  monthly_trans_rows = ldply(monthly_trans_matrices, .fun = grab_trans,  .id = rows_id)
  colnames(monthly_trans_rows) <- c(rows_id,unlist(states_list))
  return(monthly_trans_rows)
}
# Run Function, for example from state daily low, since that's interesting
monthly_trans_from_dailylow <- f_grab_trans_fromto(monthly_trans_matrices, rowcolnum = 11, from_or_to = "from") 
# View result
monthly_trans_from_dailylow
##    monthyear New         Non   monthly1  monthly10 monthly25  monthly50+
## 1    2015-05   0 0.000000000 0.00000000 0.00000000         0 0.000000000
## 2    2015-06   0 0.000000000 0.00000000 0.00000000         0 0.000000000
## 3    2015-07   0 0.333333333 0.00000000 0.00000000         0 0.000000000
## 4    2015-08   0 0.000000000 0.33333333 0.00000000         0 0.000000000
## 5    2015-09   0 0.000000000 0.33333333 0.00000000         0 0.000000000
## 6    2015-10   0 0.040000000 0.24000000 0.08000000         0 0.000000000
## 7    2015-11   0 0.000000000 0.21428571 0.07142857         0 0.000000000
## 8    2015-12   0 0.166666667 0.00000000 0.00000000         0 0.000000000
## 9    2016-01   0 0.021739130 0.07971014 0.02173913         0 0.000000000
## 10   2016-02   0 0.003021148 0.06948640 0.02114804         0 0.006042296
##      weekly1   weekly10    weekly25 weekly50+    daily1   daily10
## 1  0.0000000 0.00000000 0.000000000 0.0000000 0.0000000 0.0000000
## 2  0.0000000 1.00000000 0.000000000 0.0000000 0.0000000 0.0000000
## 3  0.0000000 0.00000000 0.000000000 0.3333333 0.3333333 0.0000000
## 4  0.3333333 0.00000000 0.000000000 0.0000000 0.3333333 0.0000000
## 5  0.0000000 0.00000000 0.000000000 0.0000000 0.6666667 0.0000000
## 6  0.3200000 0.12000000 0.000000000 0.0400000 0.1600000 0.0000000
## 7  0.4285714 0.07142857 0.000000000 0.0000000 0.2142857 0.0000000
## 8  0.5000000 0.00000000 0.000000000 0.0000000 0.3333333 0.0000000
## 9  0.2318841 0.05797101 0.000000000 0.0000000 0.4202899 0.1594203
## 10 0.1419940 0.09667674 0.009063444 0.0000000 0.4622356 0.1722054
##        daily25 daily50+
## 1  0.000000000        0
## 2  0.000000000        0
## 3  0.000000000        0
## 4  0.000000000        0
## 5  0.000000000        0
## 6  0.000000000        0
## 7  0.000000000        0
## 8  0.000000000        0
## 9  0.007246377        0
## 10 0.018126888        0

Markov Chain

Now we can model this as a markov chain to get what would the steady state look like with the following transitions.

#install.packages("markovchain")
require("markovchain")

### Markov Chain
markov <- new("markovchain", states = unlist(state_levels), byrow = T, transitionMatrix = trans_matrix, name = "Driver States Markov Chain")
# print(markov)

#### Steady State
# The steady state is the EigenVector of the transition Matrix; it's the proportions of drivers in each state which will remain the same with the transition matrix.
steady <-  steadyStates(markov)
typeof(steady)
## [1] "double"
# reorder data.table
order_by_state <- function(vector = steady, new_order=state_levels) {
  vector_dt <- as.data.frame(t(vector))
  vector_dt$state<- rownames(vector_dt)
  vector_dt$state <- factor(vector_dt$state, levels = new_order)
  vector_dt[order(vector_dt$state),]
  vec <- as.double(vector_dt$V1)
  names(vec) <- new_order
  return(vec)
  }

steady <- order_by_state(steady, state_levels)
print(t(t(steady)))
##                    [,1]
## New        0.0000000000
## Non        0.5711958580
## monthly1   0.2042060065
## monthly10  0.0950029136
## monthly25  0.0802358268
## monthly50+ 0.0250789482
## weekly1    0.0045698099
## weekly10   0.0082197737
## weekly25   0.0041616392
## weekly50+  0.0018542719
## daily1     0.0011507385
## daily10    0.0025117365
## daily25    0.0012269323
## daily50+   0.0005855448

CUSTOMER LIFETIME VALUE EQUATION MODEL

Our Driver Value Equation: X = monthly_amounts + discount_factorEXPECTED_VALUE where EXPECTED_VALUE is: P_transition_matrixX (times expected value next week assuming it’s the same) So: X = monthly_amounts + discount_factor*(P_transition_matrix*X)

We need to get this in the form of MATRIXX=constant. So: X = monthly_amounts + discount_factor(P_transition_matrix*X) recall them in easier names: X = h + dPX X - dPX = h (I-dP)X = h

We can here solve equation of the form MATRIX*X_VECTOR = constant (Ax=b) So we’ll create the “A” matrix as: A = (I-dp)

Discount Factor: We need to manually determine a discount factor

discount = 0.8 # manually determined discount factor! You will manually determine the discount factor and there is no exact science about this. One useful measure is to check: how many steps in the future do you need to know about? If you say only 4 steps, you can set the discount factor so that after more than 4 steps the discounted value is negligible, according to your “negligible” threshold. Let’s say the “negligible” value is 0.05, or 5%, since this is commonly accepted as a significance value, so you could say that at that level the value is not significantly differnt than zero. So you can find a discount value that after 4 steps, meaning raised to the power of 4, would be around 5% or 0.05. This happens at values lower than 0.47. (0.47^4 = 0.049). Let’s say that we want to predict no more than 6 months into the future. For that, a value of 0.6 discount factor will be appropriate since 0.6^6 = 0.046656.

# GET DLV DATASET

state_levels <- c("New", 'Non'  , 'monthly1' , 'monthly10', 'monthly25', 'monthly50+', 'weekly1' , 'weekly10' , 'weekly25' , 'weekly50+' , 'daily1', 'daily10', 'daily25', 'daily50+')

# Here is a little function to make sure that all states are present in a summary dataframe, and if not - add the missing states and 0 as the amount. 

complete_states <- function(avg_amounts, states_levels) {
  statesdf <- data.frame(states_levels)
  colnames(statesdf) = "states"
  states_amounts <- merge(statesdf, avg_amounts, all.x=T)
  states_amounts[is.na(states_amounts)] <- 0
  states_amounts 
  }

### General Function with arbitrary (1) discount factor and state columns
generate_DLV_dataset_beta <- function(dataframe = df, 
                                         discount_factor = 0.3, 
                                         curr_states_column = "state", 
                                         prev_state_column = "state_prev", 
                                         stateslist = state_levels,
                                         amount_column = "avg_amount",
                                         factorize_df = F) {
    
   # Flow amounts: Avg monthly Amounts driven per state for all drivers in each state in all times
    avg_amounts = aggregate(dataframe[[amount_column]], by=list("states" = dataframe[[curr_states_column]]), FUN=mean)
    avg_amounts[["states"]] <- factor(avg_amounts[["states"]], levels=stateslist, ordered=TRUE)
    
    # if there are missing states that time period, add it and assign 0 with custom function above
    avg_amounts <- complete_states(avg_amounts, stateslist) 

    # Calculate transition Matrix
    trans_matrix <- f_compute_transitions_as_matrix(dataframe, curr_states_column, prev_state_column, factorize = factorize_df )
    
    # Calculate Customer Lifetime Value Solution! 
    ## Getting "A" Matrix: Re-factoring Transition Matrix P to A = (I-dp) = I - discount_factor*trans_matrix
    # get Identity Matrix with the number of dimensions as states:
    I = diag(nrow(trans_matrix)) 
    ## SOLVE Ax=B : EQUATION IS OF THE FORM: Ax = b where A:(I-dP), b = avg_amounts
    A = I - discount_factor * trans_matrix
    # take our constant as average amounts over desired period , as numeric vector
    b = as.vector(avg_amounts[['x']]) 
    # X_Values_named = matrix(data = Xs, ncol = 1, dimnames = list(stateslist))
    DLV_solutions = solve(A, b) 
    DLV_df <-  data.frame(data = cbind(avg_amounts, DLV_solutions))
    DLV_df['DLV_future_remainder'] <- DLV_df$data.DLV_solutions - DLV_df$data.x
    colnames(DLV_df) = c("state","Avg_Amounts_monthly", 
                         "DLV_Values","DLV_future_remainder")
    DLV_df$state <- factor(DLV_df$state, levels = stateslist)
    DLV_df[order(DLV_df[["state"]]),]
    DLV_df
}

### Using the General Function
#df <- setDF(df)
DLV_0.6 <- generate_DLV_dataset_beta(dataframe = df, discount_factor = 0.6)
DLV_0.6_2015 <- generate_DLV_dataset_beta(dataframe = setDF(dt_2015), discount_factor = 0.6)
DLV_0.4_2015 <- generate_DLV_dataset_beta(dataframe = setDF(dt_2015), discount_factor = 0.4)
DLV_0.4 <- generate_DLV_dataset_beta(dataframe = setDF(dt), discount_factor = 0.4)

#DLV_0.3_early <- generate_DLV_dataset_beta(dataframe = setDF(dt[dt$date<as.Date("2015-07-02"),]), discount_factor = 0.3)
#DLV_0.3_early
DLV_0.6
##                 state Avg_Amounts_monthly DLV_Values DLV_future_remainder
## New            daily1            6.277852   39.00389             32.72604
## Non           daily10           16.150704   51.49946             35.34875
## monthly1      daily25           33.738643   78.22754             44.48889
## monthly10    daily50+           78.615717  130.70535             52.08964
## monthly25    monthly1            8.230614   42.68653             34.45592
## monthly50+  monthly10           19.976802   53.01237             33.03557
## weekly1     monthly25           40.407341  102.62997             62.22262
## weekly10   monthly50+          133.208988  204.79248             71.58349
## weekly25          New            0.000000   45.20373             45.20373
## weekly50+         Non            0.000000   37.18583             37.18583
## daily1        weekly1            7.239903   58.90015             51.66025
## daily10      weekly10           16.527671   79.24088             62.71321
## daily25      weekly25           34.243213   87.83084             53.58762
## daily50+    weekly50+           97.233739  148.07637             50.84263

Prediction Power Check: Histograms of true and estimated DLVs per state

Comparing Markov Predicted DLV with actual amounts data. As a methodological check for confidence, we can simply report statistical significance or confidence intervals. However, these are somewhat not useful in terms that they don’t show us clearly the underlying distributions of the populations nor of the predictions and where does our predicted value or the true value sit on them; which would be a much more comprehensive and understandable way to convey our confidence than simple statistics like #confidenceintervals.

Generate TRUE DLV dataset and merge with Predicted DLV Values dataset (2016)

For data manipulation (for raising the discount factor to the power of the number of steps), we need to create a column with the ordinal number of the chronological steps:

# since our steps our defined by monthyear, we'll convert it to its ordinal order.
# that is easy in our case since it's already a numerical equivalent which appears in ascending order in our dataset, we can easily convert it to a factor which will be set automatically with ascending levels, and then use the numeric representation of that factor.
dt$monthyear <- factor(dt$monthyear, ordered = TRUE)
dt$timestep <- as.numeric(dt$monthyear)
df <- setDF(dt)

Visualizing Historical Values

Now, we’d also want to know how our estimates would change throughout time. I will estimate this by calculating the relevant values above (actual donations amounts per state, number of donors per state, transition probabilities, and discounted lifetime values) based only on the data of each month separately. Notive that this is different conceptually than our total values which are based on the aggregate of many months and a longer history, rather than only on the latest month, for example. You may think that we’d want then to calculate the data every time based on the corresponding history at that time (for example, if we measure August’s data, then use all months from the start of the data, April, to August). However, that would mean that we would regress to the mean and will not notice as much of the seasonal fluctuations which is exactly what we want this plot for. So even though the data would be more sparse and some of the values are therefore less reliable (based on less data), this is still the most straightforward, clear and least biased way to go about this.

require("lubridate")

generate_donor_DLVs_predictions <- function(df, discount, DLV_dataset, states_column = "state", 
                                             state_levels=state_levels, startdate=as.Date("2015-05-01")) {
   # First, since we are only predicting for the donors/users who started at that started, 
   # let's filter out data about other donors/users that were not present then. 
    # first, get a list of donors who were present at the start date
    setDT(df)
    donors_startdate <- unique(df$donor_uid[df$date == startdate])
    df_startdatedonors <- df[date >= startdate & donor_uid %in% as.vector(donors_startdate),]
    # map each donor / user to its starting state
    original_states_startdate <- df_startdatedonors[df_startdatedonors$date == 
                                                      startdate, .(donor_uid,state)]
    colnames(original_states_startdate) <- c("donor_uid","starting_state")
    
    # Merge to create a new dataset of donors with original states column
    df_startdatedonors <- merge(x = df_startdatedonors,
                                       y = original_states_startdate, 
                                by = "donor_uid", all.x = TRUE)
    
    # create a week # column (for later raising discount factor by that power)
    ### THIS ONLY WORKS IF INSPECTED IS 01/01 
    df_startdatedonors$discount_factor <- discount ^ df_startdatedonors$timestep # Discount factor per week 
    # discounted amounts
    df_startdatedonors$discounted_week_amounts <- (df_startdatedonors$avg_amount 
                                                        *  df_startdatedonors$discount_factor)
    # aggregate amounts per donor
    true_dlvs <- ddply(df_startdatedonors, .(donor_uid), 
                       summarise, true_dlv_amounts=sum(discounted_week_amounts))
    # merge into dataset of donor_uid, donor_original_state, sum_amounts
    donors_DLVs_bystate <- merge(x = original_states_startdate,
                                  y = true_dlvs, by = "donor_uid", all.x = TRUE)
    # add column of mean true value per state
    donors_DLVs_bystate <- ddply(donors_DLVs_bystate, "starting_state", 
                                  transform, true_dlv_mean  = mean(true_dlv_amounts))
    
    ## COMBINE WITH MARKOV ESTIMATED VALUES: ACCORDING TO PRIOR UNSEEN DATA 2015
    # add predicted values per state
    donors_DLVs_all <-  merge(x = donors_DLVs_bystate, 
                               y=DLV_dataset[,c("state",unlist(grep('DLV_Value',
                                                                    colnames(DLV_dataset),
                                                                    value=TRUE)))], 
                               by.x = 'starting_state', by.y = 'state', all.x = TRUE)
    donors_DLVs_all$starting_state <- factor(donors_DLVs_all$starting_state, 
                                                     levels = state_levels, ordered = T)
    return(donors_DLVs_all)
}


# run function: generate these datasets for needed disocunt factors 
# combine true values with predictions for 0.6 discount
donors_DLVs_combined_0.6 <- generate_donor_DLVs_predictions(df=df, discount=0.6, DLV_dataset=DLV_0.6,
                                                            states_column = "state",
                                                            state_levels=state_levels,
                                                            startdate=as.Date("2015-05-01") )
fwrite(donors_DLVs_combined_0.6, "./data/donors_DLVs_combined_0.6.csv") # save datasets

# combine true values with predictions for 0.4, 2015
donors_DLVs_combined_0.4_2015 <- generate_donor_DLVs_predictions(df, discount=0.4, DLV_dataset=DLV_0.4_2015) 
fwrite(donors_DLVs_combined_0.4_2015, "./data/donors_DLVs_combined_0.4_2015.csv")

# create the DLV 0.3 object for early data 2015
DLV_0.3_2015 <- generate_DLV_dataset_beta(dataframe = setDF(dt_2015), discount_factor = 0.4)
# combine true values with predictions
donors_DLVs_combined_0.3_2015 <- generate_donor_DLVs_predictions(df, discount=0.3, DLV_dataset=DLV_0.3_2015) 
fwrite(donors_DLVs_combined_0.3_2015, "./data/donors_DLVs_combined_0.3_2015")

### others:

# donors_DLVs_combined_0.6_2015 <- generate_donor_DLVs_predictions(df, discount=0.6, DLV_dataset=DLV_0.6_2015, startdate = "2015-05-01") 
# fwrite(donors_DLVs_combined_0.6_2015, "./data/donors_DLVs_combined_0.6_2015")

# donors_DLVs_combined_0.4 <- generate_donor_DLVs_predictions(df, discount=0.4, DLV_dataset=DLV_0.4) 
# fwrite(donors_DLVs_combined_0.4, "./data/donors_DLVs_combined_0.4.csv")

# show result
head(donors_DLVs_combined_0.6)
##   starting_state             donor_uid true_dlv_amounts true_dlv_mean
## 1         daily1      MARK|BOWEN|91367         12.77084      12.77084
## 2        daily10 BARBARA|BAHNSEN|96734         47.53204      30.30735
## 3        daily10   WAYNE|STAPLES|05491         13.08265      30.30735
## 4       monthly1  ;RICHARD|FAHEY|38548         14.90930      10.70999
## 5       monthly1   A M|CATANZARO|85044          9.60000      10.70999
## 6       monthly1 A NICOLE|BREWER|66210          6.53785      10.70999
##   DLV_Values
## 1   39.00389
## 2   51.49946
## 3   51.49946
## 4   42.68653
## 5   42.68653
## 6   42.68653
head(donors_DLVs_combined_0.3_2015)
##   starting_state             donor_uid true_dlv_amounts true_dlv_mean
## 1         daily1      MARK|BOWEN|91367         4.297407      4.297407
## 2        daily10 BARBARA|BAHNSEN|96734        10.603374      7.519314
## 3        daily10   WAYNE|STAPLES|05491         4.435255      7.519314
## 4       monthly1  ;RICHARD|FAHEY|38548         4.285689      3.530134
## 5       monthly1   A M|CATANZARO|85044         3.900000      3.530134
## 6       monthly1 A NICOLE|BREWER|66210         3.005194      3.530134
##   DLV_Values
## 1   19.21751
## 2   29.15468
## 3   29.15468
## 4   21.74505
## 5   21.74505
## 6   21.74505

Later we will compare these actual discounted total amounts with the predicted ones.

Visualizations

Now we got all our necessary datasets in place for both communicating the values of which directly (like the transition matrix) and to create the needed visualizations to communicate the trends effectively. Let’s start creating those visualizations.

How far are we currently from the Steady State?

Compare Steady state to true donor allocation

require(ggplot2)
require(scales)
## Loading required package: scales
require(ggthemes)

state_levels <- c("New", 'Non'  , 'monthly1' , 'monthly10', 'monthly25', 'monthly50+', 'weekly1' , 'weekly10' , 'weekly25' , 'weekly50+' , 'daily1', 'daily10', 'daily25', 'daily50+')


plot_steady_state_and_reality_compared <- function(fulldataframe = df, state_levels = state_levels, states_column = "state", steadystates = steady, analysis_title="") {

  # DF of donor proportions
  df_donor_props <- summary(fulldataframe[[states_column]]) / nrow(fulldataframe)
  
  df_donor_props_vertical <- t(rbind(steadystates, df_donor_props))
  colnames(df_donor_props_vertical) <- c("Steady_State", "Reality")
  melted_donors_props <- melt(df_donor_props_vertical)
  colnames(melted_donors_props) <- c("state","scenario","proportion")
  melted_donors_props$proportion <- as.numeric(as.character(melted_donors_props$proportion))
  melted_donors_props$state <- factor(melted_donors_props$state, levels=rev(state_levels), ordered = TRUE)
  melted_donors_props[order(melted_donors_props$state),]
  
  # PLOT 
  gg_steady_state_and_reality_compared <- ggplot(data=melted_donors_props, 
                                                 aes(x=state, y=proportion, 
                                                     fill=scenario)) +
    geom_bar(stat="identity", position=position_dodge(0.8)) + 
    coord_flip() + 
    scale_fill_discrete(name = "Scenario: ", labels = c("Predicted Steady State      ", "Reality (2015-2016 Avg)"), h =  c(10,170)) +
    labs(x = "Donor State (in Steady State vs Reality)", y = "Proportion of Donors", 
         title = paste0(analysis_title, "Donor Proportions in Stedy State / Reality")) +
    theme_minimal()  + theme(legend.position = "top") +
    #scale_x_continuous(limits = c(0,0.6)) +
    theme(plot.title = element_text(size=18, family = "Helvetica", face = "bold"), 
          plot.subtitle = element_text(family = "Helvetica"))  + 
    scale_fill_ptol() 
  
  ggsave("./dataviz/gg_steady_state_and_reality_compared.png", height = 6, width = 9)
  return(gg_steady_state_and_reality_compared)
}

gg_steady_state_and_reality_compared <- plot_steady_state_and_reality_compared(fulldataframe=df, state_levels=state_levels)
## Scale for 'fill' is already present. Adding another scale for 'fill',
## which will replace the existing scale.
gg_steady_state_and_reality_compared

  • Notice that the barplot above has a follows important visualization principles:
  • The bars are horizontal rather than vertical, since the list of categories is long and they would be too compressed and unreadable if they were to be aligned horizontally.
  • The colors are contrasting colors from the ptol() scheme which is friendly for the eye yet considering color blindness.
  • The legend is up at the top and conveniently tells us exactly all we need to know.
  • The bars are arranged according to the manually specified order: from the categories with the least donations to most contribution, which also roughly corresponds with the highest amounts of donors to least (inverse correlation)

Visualize: DLVs donor Lifetime Values as stacked bar plots

Constant: donor LifeTime Value

Now we want to see the donor lifetime values. Since this depends on discount factors, let’s visualize the donor’s lifetime value according to various discount factors and be able to compare between them. If the ranking or proportions stays the same, then that would be simple for us and indicate stability of ranking between profitability of states regardless of time horizon. For that, let’s first generate another dataset of discounted lifetime values:

DLV_0.8 <- generate_DLV_dataset_beta(dataframe = df, discount_factor = 0.8)

And now plot on the same plot both current donation amounts, and 2 levels of discounted predicted lifetime values.

plot_DLV_stacked_barplot_0.6_0.8 <- function(DLV_0.6,DLV_0.8, beta_1=0.6, beta_2=0.8, analysis_title="") {
    library("ggthemes")
  
    DLV_0.6_08 <- cbind(DLV_0.6,DLV_0.8[c(grep('Value', colnames(DLV_0.8), value=T),
                                            grep('remainder', colnames(DLV_0.8), value=T))])
    colname_DLV_value_1 <- paste0(beta_1,"_DLV_Value")
    colname_DLV_value_2 <- paste0(beta_2,"_DLV_Value")
    colname_DLV_remainder_1 <- paste0(beta_1,"_DLV_remainder")
    colname_DLV_remainder_2 <- paste0(beta_2,"_DLV_remainder")
    
    colnames(DLV_0.6_08) <- c("state", "Avg_monthly_Amounts", colname_DLV_value_1,
                              colname_DLV_remainder_1 , colname_DLV_value_2, colname_DLV_remainder_2)
    DLV_0.6_08_usable <- DLV_0.6_08[,c("state","Avg_monthly_Amounts", 
                                       colname_DLV_remainder_1, colname_DLV_remainder_2)]
    # Melt Dataframe to Long format for ggplot
    melted_dlv <- melt(DLV_0.6_08_usable,id.vars = "state") 
    melted_dlv$variable <- factor(melted_dlv$variable, 
                           levels=c(colname_DLV_remainder_2, colname_DLV_remainder_1,"Avg_monthly_Amounts"), ordered=TRUE)
    
    # Plot stacked bar plot
    gg_stacked_barplot_DLV_amounts_monthly <- ggplot(data = melted_dlv, aes(x = state, y = value,fill=variable)) +
       geom_bar(stat = 'identity') + 
       coord_flip() + scale_x_discrete(limits = rev(levels(melted_dlv$state))) + 
       labs(title = paste0(analysis_title, "Donors Current Donations and Lifetime Values"),
            subtitle = paste0("Discount factors = ",beta_1," and ",beta_2,
                              ". \nDLV: Predicted total discounted lifetime value"),
            y = "Value (Discounted Amounts)", x = "State", fill = "DLV Value Portion   ") +
        theme_fivethirtyeight() + 
        theme(legend.position = "top") +
        guides(fill = guide_legend(reverse=T)) +
        scale_fill_brewer(palette = 15) # scale_fill_ptol() +

    ggsave("./dataviz/gg_stacked_barplot_DLV_amounts.png", width = 10, height = 7)
    gg_stacked_barplot_DLV_amounts_monthly
}

plot_DLV_stacked_barplot_0.6_0.8(DLV_0.6, DLV_0.8, beta_1=0.6, beta_2=0.8)

Visualize Model Prediction Accuracy: Histograms of true DLVS distributions and where estimated DLVs fall

DLVS Distributions per State: Arbitrary Beta Function

Comparing Markov Predicted DLV with actual amounts data. As a methodological check for confidence, we can simply report statistical significance or confidence intervals. However, these are somewhat not useful in terms that they don’t show us clearly the underlying distributions of the populations nor of the predictions and where does our predicted value or the true value sit on them; which would be a much more comprehensive and understandable way to convey our confidence than simple statistics like #confidenceintervals.

donors_DLVs_combined_0.6_2015 <- generate_donor_DLVs_predictions(df, discount=0.6, DLV_dataset=DLV_0.6_2015) 
setDT(donors_DLVs_combined_0.6)
colnames(donors_DLVs_combined_0.6) <- c("starting_state", unlist(colnames(donors_DLVs_combined_0.6)[2:5]))
unique(donors_DLVs_combined_0.6[, c("starting_state", "true_dlv_mean")])
##     starting_state true_dlv_mean
##  1:         daily1     12.770835
##  2:        daily10     30.307347
##  3:       monthly1     10.709987
##  4:      monthly10     21.641112
##  5:      monthly25     38.659149
##  6:     monthly50+    108.321877
##  7:            Non      4.663363
##  8:        weekly1     11.828701
##  9:       weekly10     21.750778
## 10:       weekly25     43.942132
## 11:      weekly50+    131.598858
# save datasets
#fwrite(donors_DLVs_combined_0.4_2015, "./donors_DLVs_combined_0.4_2015.csv")
fwrite(donors_DLVs_combined_0.6_2015, "./donors_DLVs_combined_0.6_2015.csv")

Now that we have the needed dataset of true DLV values, let’s visualize their distrubtions per state, and our predicted state DLV.

plot_DLV_preds_dists <- function(DLV_dataset, discount, data_timeframe_str = "All data", analysis_title="") {
      
      # rename columns in dataset for convenience
      names(DLV_dataset)[names(DLV_dataset) == grep('DLV_Value', colnames(DLV_dataset), value=T)] <- "DLV_Values" 
      names(DLV_dataset)[names(DLV_dataset) == grep('true_dlv_mean', colnames(DLV_dataset), value=T)] <- "true_dlv_mean"
      errors =  abs(DLV_dataset[['DLV_Values']] - DLV_dataset[['true_dlv_mean']]) 
      
      # build ggplot
      gg_dists <- ggplot(DLV_dataset, aes(x=true_dlv_amounts), group = starting_state) +
        
        # histogram of true values per state, y=..density..:
        geom_histogram(aes(y=..density..), position="identity", fill = 'steelblue', alpha=0.5,  binwidth=5) +
        
        # density - overlay with transparent density plot:
        geom_density(alpha=0.2, color = 'darkgrey' ) +
        
        # true values mean:
        geom_vline(data=DLV_dataset, aes(xintercept = true_dlv_mean), 
                   color = 'gold', linetype="dashed", size=1, show.legend=T) +
        
        # estimated markov value:
        geom_vline(data=DLV_dataset, aes(xintercept = DLV_Values), 
                   color='red',linetype="dashed", size=1, show.legend=T) +
        
        # make into a grid with free scales 
        facet_wrap( ~ starting_state,  scales = "free") +
        labs(x = "Total DLV (Amounts)", y = "Density", 
             title = paste0(analysis_title, "Distributions of True DLV Amounts with Predicted DLV value, Discount Factor = ", 
                            discount, ", trained on ", data_timeframe_str),
             subtitle = paste0("What was the true total DLV amounts donated of drivers who started off in 04/2015 at each of the following states?
Blue: Distributions of their individual DLVs, Yellow: Group true mean, Red: Markov Model estimated value. 
Mean Error: ", round(mean(errors),2), " . Median error: ", round(median(errors),2), " over the true values") ) 
      ggsave(filename = paste0("./dataviz/gg_DLV_states_distributions__",discount,"_", gsub('([[:punct:]])|\\s+','_',data_timeframe_str) ), 
             plot = gg_dists, device = "png", width = 10, height = 7)
      gg_dists
}


# Plot!
plot_DLV_preds_dists(donors_DLVs_combined_0.6, discount = 0.6, 
                                      data_timeframe_str = "only 2015 data")
## Warning: Groups with fewer than two data points have been dropped.

## Warning: Groups with fewer than two data points have been dropped.

plot_DLV_preds_dists(donors_DLVs_combined_0.3_2015, discount = 0.6, 
                                      data_timeframe_str = "only 2015 data")
## Warning: Groups with fewer than two data points have been dropped.

## Warning: Groups with fewer than two data points have been dropped.

Performance evaluation

The above visualization shows the distributions of true DLVs of all drivers, their mean in yellow, and our predicted DLV in red. What can we do about it? 1. The simplest thing is to continue as is and know to discount our prediction by a factor of roughly a half. 2. We can try to improve our model inherently. For example, instead of using 1-step markov process, we can look further in the back in order to predict, in a 2-step (or more) Markovian process, or redefine the quantity used for prediction to account for the past more. 3. We can use ensemble models: given our current model’s results as predicted y and the true y labels, we can overlay another model, perhaps a simple regression, to learn how to turn one result to the other. This could have promising potential if our errors are consistent. We could use the factor(state) as a regressor (which is equivalent to one-hot encoding of each state as regressors), the predicted y, and the true y as a label. This would be a “fixed effects” regression model. By using this model, we could significanly improve the results. However, this doesn’t yet fix the inherent results of the model, which is preferable if we can. 4. Since we see consistent overestimation of our prediction, there might be a simple fix: it might just be fixed via a proxy of callibrating the discount factor to generate the results we want. Let’s check prediction results of other discount factors and their correlation with our desired true y’s (DLV amounts with a 0.6 discount factor).

# we need the true DLVs with 0.6 discount factor, 
# and the predictions for 0.4 values (or similar),
# and see if they match better. 
# if they do, we can just change our reference point of discount factor to fit reality. 

f_combine_pred_true_dts_2discounts <- function(preds_dt, true_dlvs_dt) {
  setDT(true_dlvs_dt)
  setDT(preds_dt)
  # renaming columns for compatibility
  # colnames(preds_dt) <- c("starting_state", unlist(colnames(preds_dt)[2:5]))
  DLVs_pred_train_unique <- unique(preds_dt[, .(starting_state, true_dlv_mean, DLV_Values)])
  DLVs_trues_unique <- unique(true_dlvs_dt[, .(starting_state, true_dlv_mean, DLV_Values)])
  
  # change column names to include the name / type of dataset before merging
  colnames(DLVs_pred_train_unique) <- c("starting_state", "pred_dlvs_true_train", 
                                      "dlv_pred_train")
  colnames(DLVs_trues_unique) <- c("starting_state", "true_dlvs", 
                                 "true_dlvs_pred")
  setDF(DLVs_pred_train_unique)
  setDF(DLVs_trues_unique)
  # merge pred train predictions and trues all true values
  #setkey(DLVs_pred_train_unique, starting_state)
  #setkey(DLVs_trues_unique, starting_state)
  DLV_preds_predtrain_truesall <- merge(DLVs_pred_train_unique[c("starting_state", 
                                                                 "dlv_pred_train")], 
                                     DLVs_trues_unique[c("starting_state", "true_dlvs")])
  DLV_preds_predtrain_truesall
}

# run function: merge predictions and true datasets of different discount factors.
DLV_preds_0.4train_0.6all <- f_combine_pred_true_dts_2discounts(donors_DLVs_combined_0.4_2015, 
                                                                donors_DLVs_combined_0.6)
DLV_preds_0.4train_0.6all
##    starting_state dlv_pred_train  true_dlvs
## 1          daily1       19.21751  12.770835
## 2         daily10       29.15468  30.307347
## 3        monthly1       21.74505  10.709987
## 4       monthly10       33.46116  21.641112
## 5       monthly25       67.11091  38.659149
## 6      monthly50+      165.81957 108.321877
## 7             Non       15.15070   4.663363
## 8         weekly1       32.22563  11.828701
## 9        weekly10       52.92302  21.750778
## 10       weekly25       53.39368  43.942132
## 11      weekly50+      118.06194 131.598858

This is still about half but still overshooting. Let’s try a lower discount value.

# DLV_0.3_2015 <- generate_DLV_dataset_beta(dataframe = setDF(dt_2015), discount_factor = 0.3)
# donors_DLVs_combined_0.3_2015 <- generate_donor_DLVs_predictions(df, discount=0.3, DLV_dataset=DLV_0.3_2015) 

# fwrite(donors_DLVs_combined_0.3_2015, "./data/donors_DLVs_combined_0.3_2015")
# donors_DLVs_combined_0.3_2015
# run function: merge predictions and true datasets of different discount factors.
#DLV_0.4_2015 <- generate_DLV_dataset_beta(dataframe = setDF(dt_2015), discount_ factor = 0.4)
colnames(donors_DLVs_combined_0.3_2015) <- c("starting_state", colnames(donors_DLVs_combined_0.3_2015)[2:4], "DLV_Values")
DLV_preds_0.3train_0.6all2 <- f_combine_pred_true_dts_2discounts(preds_dt = donors_DLVs_combined_0.3_2015, 
                                                                 true_dlvs_dt = donors_DLVs_combined_0.6)
DLV_preds_0.3train_0.6all2
##    starting_state dlv_pred_train  true_dlvs
## 1          daily1       19.21751  12.770835
## 2         daily10       29.15468  30.307347
## 3        monthly1       21.74505  10.709987
## 4       monthly10       33.46116  21.641112
## 5       monthly25       67.11091  38.659149
## 6      monthly50+      165.81957 108.321877
## 7             Non       15.15070   4.663363
## 8         weekly1       32.22563  11.828701
## 9        weekly10       52.92302  21.750778
## 10       weekly25       53.39368  43.942132
## 11      weekly50+      118.06194 131.598858

Let’s check which is better correlated

print(cor(DLV_preds_0.3train_0.6all2$dlv_pred_train, DLV_preds_0.3train_0.6all2$true_dlvs))
## [1] 0.9175808
print(cor(DLV_preds_0.4train_0.6all$dlv_pred_train, DLV_preds_0.4train_0.6all$true_dlvs))
## [1] 0.9175808

It looks like our first model is slightly better correlated, but they are actually both very well correlated. How about which is actually closer? let’s calcualted the sum of errors / squared errors:

# install.packages("caret")
require(caret)
## Loading required package: caret
## Loading required package: lattice
print(caret::postResample(pred = DLV_preds_0.3train_0.6all2$dlv_pred_train, obs = DLV_preds_0.3train_0.6all2$true_dlvs))
##       RMSE   Rsquared        MAE 
## 23.7221984  0.8419546 18.3135354
print(caret::postResample(pred = DLV_preds_0.4train_0.6all$dlv_pred_train,  obs = DLV_preds_0.4train_0.6all$true_dlvs))
##       RMSE   Rsquared        MAE 
## 23.7221984  0.8419546 18.3135354

So we see that the R square is high and comparable in both cases (0.96 or 0.97), where the RMSE is greater for the 0.4 discount factor rather than the 0.3 discount factor. We will go with the 0.3 discount factor for now as our proxy estimation for what a 0.6 discount factor will be.

Reiterating Model Performance: Adjusted Discount Factor.

Now let’s check the performance under the adjusted discount factor; translating 0.6 to 0.3 discount factors. Let’s create that matched combined dataset with 0.6 true DLVs and predictions using 0.3:

# take the predcitions from here: DLV_Values
# I've made the plotting function take as the prediction value any column with "DLV_Value" in its name
# so I'm going to keep that in the name, and remove that part of the name from the other one.
colnames(donors_DLVs_combined_0.3_2015) <- c(colnames(donors_DLVs_combined_0.3_2015)[1:4], "DLV_Values_Preds_0.3_train")

# and copy into true DLV values (amounts and means) from here - let's rename it so it would be clearer and not treated as predictive DLV Values
colnames(donors_DLVs_combined_0.6_2015) <- c(colnames(donors_DLVs_combined_0.6_2015)[1:4], "old_DLVs_0.6_train")
# we'll set both DT keys as donor_ids and then match on that. 
setDT(donors_DLVs_combined_0.3_2015)
setDT(donors_DLVs_combined_0.6_2015)
setkey(donors_DLVs_combined_0.3_2015, donor_uid)
setkey(donors_DLVs_combined_0.6_2015, donor_uid)
dt_DLVs_preds <- merge(donors_DLVs_combined_0.6_2015, donors_DLVs_combined_0.3_2015[,c("donor_uid","DLV_Values_Preds_0.3_train")])
dt_DLVs_preds
##                                    donor_uid starting_state
##      1:                 'STANLEY|LEHTO|98597            Non
##      2:         (ANJANEYA)MURTY|KANURY|97330      monthly25
##      3:             (JAMES) DAVID|RICH|85308            Non
##      4:         (LETITIA) DIANE|TAYEBY|05301            Non
##      5:       (LINDA)  DARKWIND|FIELDS|03031            Non
##     ---                                                    
## 579821:        {{BONNIET_NAME}}|HADDAN|81004            Non
## 579822: {{USER.FIRST_NAME}DO|BEARDSLEY|54773            Non
## 579823:                        |ALSTON|60461            Non
## 579824:                              ||24440            Non
## 579825:                  }EANETTE|FREY|65775            Non
##         true_dlv_amounts true_dlv_mean old_DLVs_0.6_train
##      1:        8.8845466      4.663363           34.40281
##      2:       23.9719126     38.659149           93.90574
##      3:        0.4702925      4.663363           34.40281
##      4:       11.0225526      4.663363           34.40281
##      5:        1.6023661      4.663363           34.40281
##     ---                                                  
## 579821:        0.5270262      4.663363           34.40281
## 579822:        0.5831627      4.663363           34.40281
## 579823:        8.3377152      4.663363           34.40281
## 579824:       20.1168000      4.663363           34.40281
## 579825:        0.1444470      4.663363           34.40281
##         DLV_Values_Preds_0.3_train
##      1:                   15.15070
##      2:                   67.11091
##      3:                   15.15070
##      4:                   15.15070
##      5:                   15.15070
##     ---                           
## 579821:                   15.15070
## 579822:                   15.15070
## 579823:                   15.15070
## 579824:                   15.15070
## 579825:                   15.15070

Plotting the distriubitons of true values and predicted value on top of those.s

# set names back to original
colnames(donors_DLVs_combined_0.3_2015) <- c(colnames(donors_DLVs_combined_0.3_2015)[1:4], "DLV_Values")
# now let's plot again using our previous function for plotting
plot_DLV_preds_dists(dt_DLVs_preds, discount = "(0.3) Matching 0.6", data_timeframe_str = "only 2015 data")
## Warning: Groups with fewer than two data points have been dropped.

## Warning: Groups with fewer than two data points have been dropped.

This is much better! Now we see that actually the predicted DLV Values (red dashed lines) are pretty close to the true observed population mean (yellow dashed line) and always within a central area of the true data distribution. This all was achieved only by this very simply 1-step markovian model, without any model ensembling or complications of the model itself; but just with an adjustment of the discount factor reference point itself.

Visualizing Historical Running Values

Prep: add date column

We mostly had a “monthyear” column that was meant to just convey order until now. Now we need an actual date column for plotting dates smoothly on the X axis by ggplot, that not all datasets have.

# let's create a function that converts month-year column to a date column
convert_monthyear_to_date <- function(any_df, replace=T) {
  # if "date" column doesn't exist yet, create it from monthyaer
  if ( !( any(names(any_df) == 'date')) ) {  
    any_df[['date']] = as.Date(paste0(any_df$monthyear, "-01") )
    if (replace) {any_df$monthyear <- NULL} }
  any_df
}
# replace monthyear with date:
monthly_diagonals <- convert_monthyear_to_date(monthly_diagonals, replace = T)
monthly_trans_from_dailylow <- convert_monthyear_to_date(monthly_trans_from_dailylow, replace = T)
# add date while keeping monthyear column (and filter new ones without history):
monthly_amount_avgs <- convert_monthyear_to_date(monthly_amount_avgs[monthly_amount_avgs$state!='New',], replace = F)

Donations Flow: Monthly Average Donations Amounts

### Flow: monthly Amount Average
require(directlabels)

plot_monthly_amount_flows <- function(df_monthly, state_levels = state_levels, analysis_title="") {
    
    df_monthly$state <- factor(df_monthly$state, levels = state_levels)
    # df_monthly <- df_monthly[df_monthly$date != max(df_monthly$date),]
    # df_monthly <- df_monthly[df_monthly$date != min(df_monthly$date),]
    gg_monthly_flow_amount_avg <- 
      ggplot(data = df_monthly, aes(x = date, y = avg_amount, color=state)) +
      #geom_point(size=0.8) +
      geom_line(size=0.8, alpha = 0.6)  + 
       labs(title = paste0(analysis_title, "History of Average Monthly Donations From Each State"), 
        subtitle = "What was the average donation by donors in each state each month?",
        y = "Average Monthly Donation in $USD", x = "Month (2015-2016)", color = "Donor State  ") +
        geom_dl(aes(label = state), method = list(dl.trans(x = x + 0.1), "last.points", cex = 0.6)) +
        geom_dl(aes(label = state), method = list(dl.trans(x = x - 0.1), "first.points", cex = 0.7)) +
        theme_minimal() +
        theme(plot.title = element_text(size=18, family = "Helvetica", face = "bold"), 
              plot.subtitle = element_text(size=12, family = "Helvetica"))  +

    ggsave(filename = "./dataviz/gg_monthly_flow_amount_avg", device = "png", width = 10, height = 6)
    gg_monthly_flow_amount_avg
  }

# plot!
plot_monthly_amount_flows(df_monthly= monthly_amount_avgs, state_levels = state_levels) 

Great. The above plot shows us that the actual donations per state didn’t change much through time. Almost all states stayed relateively constant throughout the whole time, while only Weekly and Daigly high amount donors varied more widely. This makes sense from two reasons: 1. Firstly it is a result of the way I segmented the states: that state includes all donation amounts above $50 while the others have a very limited range of up to 25 USD max, so this state has much more natural variance. 2. This state has fewer donors, thus small variations in 1 or 2 donors would lead to a high variation in the average value of the state.

Seeing that this is acceptable, let’s move on.

Number of donors per state throughout time

### Number of donors per state throughout time
generate_num_donors_groups <- function(df, states_column="state") {
    library(plyr)
    num_donors_groups <- ddply(.data = df[c("donor_uid","date",states_column)],
                                    .variables = .(date, eval(parse(text=states_column))), .fun = nrow)
    colnames(num_donors_groups) <- c("date","state","Num_donors")
    return(num_donors_groups)
}

plot_donor_groupsize_timeline <- function(num_donors_groups, analysis_title = '') {
    
    ### Number of donors per group throughout time history
    gg_donors_groupsizes_timeline <- 
      ggplot(data = num_donors_groups, aes(x = date, y = Num_donors, color=state)) +
       geom_line(size=1, alpha = 0.7)  +
       labs(title = paste0(analysis_title = '',"Monthly Number of Donors In Each State"), 
        subtitle = "Each month, how many donors were there in each state (group)?",
        y = "Number of Donors (in State S that Month)", x = "Month", color = "Donor State") +
        theme_minimal()  + 
        geom_dl(aes(label = state), method = list(dl.trans(x = x + 0.1), "last.points", cex = 0.6)) +
        geom_dl(aes(label = state), method = list(dl.trans(x = x - 0.1), "first.points", cex = 0.7)) + 
        theme(plot.title = element_text(size=18, family = "Helvetica", face = "bold"), 
              plot.subtitle = element_text(family = "Helvetica"))  
    ggsave(filename = "./dataviz/gg_donors_groupsizes_timeline", device = "png", width = 10, height = 6)
    gg_donors_groupsizes_timeline
}

# generate neeeded dataset
num_donors_groups <- generate_num_donors_groups(setDF(df))

# plot the timeline!
gg_donors_groupsizes_timeline <- plot_donor_groupsize_timeline(num_donors_groups)
gg_donors_groupsizes_timeline

This group sizes plot reveals these main conclusions: * There are many more new donors along the data (by the decrease in the “Non” count) * Monthly donors join the most, and there are less donors joining / sustaining as more frequent the group gets * There are more donors joining or sutstaining the lower the donation value is. All in all, it is quite an intuitive conclusion here that there are more donors the lower the commitment is: in amount or frequency. However, this reveals an important conlcusion: that frequency matters more than amount; since there are more monthly high amount donors rather than weekly or daily low amount donors. Perhaps a high frequency means more “commitment” for most people in our sample, which would be an interesting area of investigation.

Transition Probabilities History: Values on the Diagonal (repeating states) every week

# Transition Matrix Throughout Time: Values on the Diagonal (transition to self) every week
plot_transition_matrix_monthly_history <- function(monthly_df, titletext, 
                                                   analysis_title = '', subtitletext='', melt_it=T) {
  # if the dataset is a matrix, melt it first
  if (melt_it) {monthly_df <-  melt(monthly_df, id.vars = "date")}
  colnames(monthly_df) <- c("date", "state", "transition_prob")
  gg_transitions_matrix_timeline <-
    ggplot(data = monthly_df, aes(x = date, y = transition_prob, color=state)) +
     geom_line(size=1, alpha = 0.7)  +
     # geom_smooth(method = 'loess', span = 0.4, alpha = 0.1, size=0.3) + 
     labs(title = paste0(analysis_title, "Monthly Transition Probabilities: ",titletext), 
      subtitle = subtitletext,
      y = "Probability of State Repetition", x = "Month", color = "Donor State") +
      theme_minimal()  + 
      geom_dl(aes(label = state), method = list(dl.trans(x = x + 0.1), "last.points", cex = 0.4)) +
      geom_dl(aes(label = state), method = list(dl.trans(x = x - 0.1), "first.points", cex = 0.5)) + 
      theme(plot.title = element_text(size=18, family = "Helvetica", face = "bold"), 
            plot.subtitle = element_text(family = "Helvetica"))  #+ scale_colour_ptol() 
  ggsave(filename = "./dataviz/gg_transitions_matrix_timeline", device = "png", width = 10, height = 6)
  gg_transitions_matrix_timeline
}
# clear out empty column with no transitions to NEW or repetitions of NEW by definitions
# monthly_diagonals <- convert_monthyear_to_date(monthly_diagonals)
# monthly_diagonals$New <- NULL
# Plot DIAGONAL values history
plot_transition_matrix_monthly_history(monthly_df = monthly_diagonals, 
                                       titletext = "Repeats", 
                                       subtitletext = "Probability Of Repeating The Same State",
                                       melt_it = T)

So the above plot shows us a few things: 1. Most transitions are relatively stable, nut moving much more than 10% in their history (weekly and monthly states) 2. Some states had huge fluctations, particularly daily25, moving from 0 to 1 in September 2015 and going back towards zero. How can this be? this could very well come from a too small sample. Let’s look if that’s the case:

setDT(dt)
dt[state=="daily25" & date>=as.Date("2015-08-30") & date<as.Date("2015-10-02") ,]
##          V1                 donor_uid monthyear total_amount avg_amount
##  1:  726236       BRIAN|PICKENS|85008   2015-09       398.06   30.62000
##  2:  958710    CHARLES|FORWERCK|49684   2015-09       534.86   29.71444
##  3: 3087926      JOSE|RODRIGUEZ|00907   2015-10       458.83   41.71182
##  4: 3477887      KENNETH|LOWDEN|01749   2015-10       600.00   50.00000
##  5: 3731029           LEO|CANTY|06095   2015-09       458.00   32.71429
##  6: 4188277     MARY|SCHWEITZER|89450   2015-09       345.00   31.36364
##  7: 4245599         MATTHEW|LEE|67208   2015-10       346.00   26.61538
##  8: 5237831         ROBERT|PRUS|87505   2015-09       629.86   48.45077
##  9: 5882596      SUZANNE|SEARLE|02026   2015-09       499.95   33.33000
## 10: 5882597      SUZANNE|SEARLE|02026   2015-10       666.60   33.33000
## 11: 6269367     WILLARD|DEMPSEY|66502   2015-09       285.10   25.91818
## 12: 6303423 WILLIAM|MAISTRELLIS|02152   2015-09       545.00   41.92308
##     n_donations_month n_donations_life months_donated cluster   state
##  1:                13               21              6       2 daily25
##  2:                18               68              8       2 daily25
##  3:                11               57              7       4 daily25
##  4:                12               10              5       4 daily25
##  5:                14               15              5       2 daily25
##  6:                11               77             10       2 daily25
##  7:                13               55              7       2 daily25
##  8:                13               57              7       4 daily25
##  9:                15               96             10       2 daily25
## 10:                20               96             10       2 daily25
## 11:                11               31              7       2 daily25
## 12:                13               47              6       4 daily25
##     state_prev state_num state_prev_num       date timestep
##  1:   weekly10        13             22 2015-09-01        5
##  2:   weekly25        13             23 2015-09-01        5
##  3:  weekly50+        13             24 2015-10-01        6
##  4:   weekly25        13             23 2015-10-01        6
##  5:        Non        13              0 2015-09-01        5
##  6:   weekly25        13             23 2015-09-01        5
##  7:    daily10        13             12 2015-10-01        6
##  8:   weekly25        13             23 2015-09-01        5
##  9:    daily25        13             13 2015-09-01        5
## 10:    daily25        13             13 2015-10-01        6
## 11:  monthly25        13             33 2015-09-01        5
## 12:        Non        13              0 2015-09-01        5

Yes, indeed, by filtering we see that there were too few donors making that transition at that time to really say that it’s logical to have a 100% transition probability between those states. Let’s drop transitions for numbers of months with fewer than 10 donors:

setDT(num_donors_groups)
num_donors_groups[Num_donors<10]
##           date     state Num_donors
##  1: 2015-05-01    daily1          1
##  2: 2015-05-01   daily10          2
##  3: 2015-06-01    daily1          3
##  4: 2015-06-01   daily10          5
##  5: 2015-07-01    daily1          6
##  6: 2015-07-01   daily10          1
##  7: 2015-07-01  daily50+          1
##  8: 2015-08-01 weekly50+          9
##  9: 2015-08-01    daily1          3
## 10: 2015-08-01   daily10          1
## 11: 2015-08-01   daily25          1
## 12: 2015-08-01  daily50+          1
## 13: 2015-09-01   daily25          8
## 14: 2015-09-01  daily50+          3
## 15: 2015-10-01   daily25          4
## 16: 2015-10-01  daily50+          2
## 17: 2015-11-01    daily1          6
## 18: 2015-11-01   daily10          5
## 19: 2015-11-01  daily50+          1

Sadly, these are 19 combinations (out of 124) that we can’t make a sufficient conclusion for. Let’s drop those from our matrices:

remove_smallsample_transitions <- function(monthly_matrix, num_donors_groups) {
  matrix_melted <- melt(monthly_matrix, id.vars = .(date))
  colnames(matrix_melted) <- c("date", "state", "transition_prob")
  # num_donors_toosmall <- num_donors_groups[Num_donors<10, ]
  num_donors_enough <- num_donors_groups[Num_donors>=10, ]
  # left join for only rows of num_donors_enough:
  matrix_melted_large <- merge(num_donors_enough[, c("date", "state")], matrix_melted, all.x = TRUE)
  matrix_melted_large <- matrix_melted_large[complete.cases(matrix_melted_large), ]
  matrix_melted_large
}

monthly_diagonals_largeNs <- remove_smallsample_transitions(monthly_matrix = monthly_diagonals, num_donors_groups = num_donors_groups)
monthly_diagonals_largeNs
##            date      state transition_prob
##   1: 2015-05-01        Non       0.0000000
##   2: 2015-05-01   monthly1       0.0000000
##   3: 2015-05-01  monthly10       0.0000000
##   4: 2015-05-01  monthly25       0.0000000
##   5: 2015-05-01 monthly50+       0.0000000
##  ---                                      
## 101: 2016-02-01  weekly50+       0.2953890
## 102: 2016-02-01     daily1       0.4622356
## 103: 2016-02-01    daily10       0.4285714
## 104: 2016-02-01    daily25       0.3700787
## 105: 2016-02-01   daily50+       0.2400000
trans_matrix <- spread(as.data.frame(monthly_diagonals_largeNs), key = state, value = transition_prob, fill = 0,  drop = FALSE) 
trans_matrix
##          date New       Non  monthly1 monthly10 monthly25 monthly50+
## 1  2015-05-01   0 0.0000000 0.0000000 0.0000000 0.0000000  0.0000000
## 2  2015-06-01   0 0.8601765 0.4940459 0.3697429 0.2724654  0.2056265
## 3  2015-07-01   0 0.8684338 0.4475266 0.2392017 0.2427718  0.1725108
## 4  2015-08-01   0 0.8460426 0.5727861 0.3458286 0.3020536  0.2016585
## 5  2015-09-01   0 0.7104557 0.7134541 0.5356326 0.4124901  0.3093543
## 6  2015-10-01   0 0.8159545 0.5151641 0.2918454 0.2729428  0.2070071
## 7  2015-11-01   0 0.8479445 0.6672665 0.4193409 0.3472743  0.2536180
## 8  2015-12-01   0 0.5587033 0.6848462 0.4545049 0.3793568  0.4470461
## 9  2016-01-01   0 0.4697698 0.5800798 0.3722922 0.3749312  0.3659146
## 10 2016-02-01   0 0.4332018 0.5074471 0.3796755 0.5109247  0.4808587
##      weekly1   weekly10   weekly25  weekly50+    daily1   daily10
## 1  0.0000000 0.00000000 0.00000000 0.00000000 0.0000000 0.0000000
## 2  0.2926829 0.21212121 0.13333333 0.08333333 0.0000000 0.0000000
## 3  0.1157895 0.08629442 0.03797468 0.11538462 0.0000000 0.0000000
## 4  0.2068966 0.12790698 0.04000000 0.00000000 0.0000000 0.0000000
## 5  0.3571429 0.28767123 0.25000000 0.66666667 0.6666667 0.0000000
## 6  0.1120815 0.14487179 0.12500000 0.10937500 0.1600000 0.1333333
## 7  0.1818182 0.21052632 0.13142857 0.12280702 0.0000000 0.0000000
## 8  0.4516129 0.32035928 0.24468085 0.27272727 0.3333333 0.8000000
## 9  0.2888696 0.26736995 0.19289941 0.24045802 0.4202899 0.3968254
## 10 0.2607187 0.31481086 0.29571984 0.29538905 0.4622356 0.4285714
##      daily25  daily50+
## 1  0.0000000 0.0000000
## 2  0.0000000 0.0000000
## 3  0.0000000 0.0000000
## 4  0.0000000 0.0000000
## 5  0.0000000 0.0000000
## 6  0.0000000 0.0000000
## 7  0.0000000 0.0000000
## 8  0.0000000 0.0000000
## 9  0.2156863 0.1666667
## 10 0.3700787 0.2400000

Now we have only more credible transitions. Let’s see the transitions output of only more credible transitions?

plot_transition_matrix_monthly_history(monthly_df = monthly_diagonals_largeNs, 
                                       titletext = "Repeats", 
                                       subtitletext = "Probability of repeating the same state",
                                       melt_it = F)

Now we have the more credible transitions. While the transitions are still not very stable, there are at least no nonsensible leaps from 0 to 1 and back. The fact that the transitions are very unstable shows that the states themselves are not very stable. According to the transitions matrix, we can see that most donors are normally on “Non”, or a low frequency donation mode, and make one donations at a given time and then return back to their less active state. This can explain why are these transitions erlatively low. It is very interesting to see that in September there was a peak in state repetition probability meaning that most donors repeated their own state, and then a drop. There was such a peak again in December and then a drop in January. It might be a consequence of political events or campaigning efforts. One striking differnce over time is in the “daily” states - they really climbed in value since they entered the dataset, meaning that people got more and more consistent in giving.

DLV VALUES throughout time

### DLV VALUES throughout time

### 
plot_dlv_values_timeline <- function(DLV_monthly = DLV_monthly_0.6, state_levels = state_levels, analysis_title = '') {
  names(DLV_monthly) <- c("date", "state", "avg_amount_monthly", "DLV_Values", "DLV_future_remainder")
  DLV_monthly$state <- factor(DLV_monthly$state, levels = state_levels)
  DLV_monthly$date <- as.POSIXct(DLV_monthly$date)
  
  gg_monthly_DLVs <- 
    ggplot(data = DLV_monthly, aes(x = date, y = DLV_Values, color=state)) +
     geom_line(size=1, alpha = 0.6) + 
     labs(title = paste0(analysis_title, "Monthly Estimated Average DLVs Per Donor State"), 
      subtitle = "DLV monthly predictions by the Markov Model, estimated with a 0.3 Discount Factor (equivalent to 0.6)",
      y = "DLV - Discounted donor Lifetime Values (in Discounted Amounts)", x = "Month", color = "Donor State ") +
      geom_dl(aes(label = state), method = list(dl.trans(x = x + 0.1), "last.points", cex = 0.6)) +
      geom_dl(aes(label = state), method = list(dl.trans(x = x - 0.1), "first.points", cex = 0.6)) +
      theme_minimal() +
      theme(plot.title = element_text(size=18, family = "Helvetica", face = "bold"), 
            plot.subtitle = element_text(family = "Helvetica"))  # + scale_colour_ptol() 
  ggsave(filename = "./dataviz/gg_monthly_DLVs", device = "png", width = 10, height = 6)
  return(gg_monthly_DLVs)
}

# Generate Monthly DLV Values
# Running monthly DLV estimations and saving all to one dataframe 
DLV_preds_monthly_0.3 <- ddply(.data = df, .variables = .(date), .fun =  generate_DLV_dataset_beta) # , ...(beta = 0.3)
DLV_preds_monthly_0.3
##           date      state Avg_Amounts_monthly DLV_Values
## 1   2015-05-01     daily1            9.666667  13.965292
## 2   2015-05-01    daily10           15.871212  15.871212
## 3   2015-05-01    daily25            0.000000   0.000000
## 4   2015-05-01   daily50+            0.000000   0.000000
## 5   2015-05-01   monthly1            9.128604   9.128604
## 6   2015-05-01  monthly10           21.362677  21.362677
## 7   2015-05-01  monthly25           44.118810  44.118810
## 8   2015-05-01 monthly50+          138.822419 138.822419
## 9   2015-05-01        New            0.000000   0.000000
## 10  2015-05-01        Non            0.000000   0.000000
## 11  2015-05-01    weekly1            7.123500   7.123500
## 12  2015-05-01   weekly10           16.981622  16.981622
## 13  2015-05-01   weekly25           33.372008  33.372008
## 14  2015-05-01  weekly50+          109.907123 109.907123
## 15  2015-06-01     daily1            7.077381   7.077381
## 16  2015-06-01    daily10           12.428657  17.157500
## 17  2015-06-01    daily25            0.000000   2.808297
## 18  2015-06-01   daily50+            0.000000   3.308034
## 19  2015-06-01   monthly1            8.610756  12.910253
## 20  2015-06-01  monthly10           18.938001  24.134558
## 21  2015-06-01  monthly25           42.077613  50.657070
## 22  2015-06-01 monthly50+          135.983908 148.193219
## 23  2015-06-01        New            0.000000   7.938261
## 24  2015-06-01        Non            0.000000   4.736815
## 25  2015-06-01    weekly1            7.815939  52.273905
## 26  2015-06-01   weekly10           16.051128  46.121197
## 27  2015-06-01   weekly25           35.254662  35.254662
## 28  2015-06-01  weekly50+          137.446507 137.446507
## 29  2015-07-01     daily1            5.297009   5.297009
## 30  2015-07-01    daily10           19.545455  27.693098
## 31  2015-07-01    daily25            0.000000   5.830752
## 32  2015-07-01   daily50+           71.428571  82.911191
## 33  2015-07-01   monthly1            8.772380  16.789166
## 34  2015-07-01  monthly10           20.531464  28.944647
## 35  2015-07-01  monthly25           42.437429  51.519531
## 36  2015-07-01 monthly50+          134.401763 150.509646
## 37  2015-07-01        New            0.000000  10.329858
## 38  2015-07-01        Non            0.000000   9.708151
## 39  2015-07-01    weekly1            6.712308  11.613814
## 40  2015-07-01   weekly10           15.511849  35.538445
## 41  2015-07-01   weekly25           33.036909  33.036909
## 42  2015-07-01  weekly50+           95.374017  95.374017
## 43  2015-08-01     daily1            3.448413   3.448413
## 44  2015-08-01    daily10           21.818182  32.287238
## 45  2015-08-01    daily25           33.330000  45.792916
## 46  2015-08-01   daily50+          100.000000 119.150615
## 47  2015-08-01   monthly1            8.161460  18.056164
## 48  2015-08-01  monthly10           21.334047  31.698063
## 49  2015-08-01  monthly25           42.262716  59.043717
## 50  2015-08-01 monthly50+          139.127232 164.897800
## 51  2015-08-01        New            0.000000  18.302919
## 52  2015-08-01        Non            0.000000  13.960780
## 53  2015-08-01    weekly1            7.059553  19.492463
## 54  2015-08-01   weekly10           16.042453  65.511793
## 55  2015-08-01   weekly25           33.833824  33.833824
## 56  2015-08-01  weekly50+           96.967037 101.155271
## 57  2015-09-01     daily1            6.338653   6.338653
## 58  2015-09-01    daily10           15.656302  25.682845
## 59  2015-09-01    daily25           34.254299  48.393613
## 60  2015-09-01   daily50+           87.641414 110.113568
## 61  2015-09-01   monthly1            8.294359  18.143050
## 62  2015-09-01  monthly10           19.900762  29.271702
## 63  2015-09-01  monthly25           41.187400  61.286799
## 64  2015-09-01 monthly50+          131.187281 157.892905
## 65  2015-09-01        New            0.000000  15.086864
## 66  2015-09-01        Non            0.000000   7.192772
## 67  2015-09-01    weekly1            7.453889  15.366562
## 68  2015-09-01   weekly10           15.875516  20.401576
## 69  2015-09-01   weekly25           33.603743  48.005348
## 70  2015-09-01  weekly50+           97.308364 106.089874
## 71  2015-10-01     daily1            6.164193   6.164193
## 72  2015-10-01    daily10           12.976569  20.228341
## 73  2015-10-01    daily25           37.914301  48.977593
## 74  2015-10-01   daily50+           61.794091  73.602649
## 75  2015-10-01   monthly1            8.277243  15.198431
## 76  2015-10-01  monthly10           20.434496  27.546637
## 77  2015-10-01  monthly25           40.462815  56.501054
## 78  2015-10-01 monthly50+          127.362600 146.222622
## 79  2015-10-01        New            0.000000  11.722091
## 80  2015-10-01        Non            0.000000   8.596964
## 81  2015-10-01    weekly1            7.791786  25.334722
## 82  2015-10-01   weekly10           16.144762  38.524097
## 83  2015-10-01   weekly25           34.309393  49.125456
## 84  2015-10-01  weekly50+           82.206944  85.098546
## 85  2015-11-01     daily1            4.821037   4.821037
## 86  2015-11-01    daily10           16.814525  23.828039
## 87  2015-11-01    daily25            0.000000   3.569330
## 88  2015-11-01   daily50+           51.423077  62.603613
## 89  2015-11-01   monthly1            8.184308  14.815147
## 90  2015-11-01  monthly10           20.068944  27.424234
## 91  2015-11-01  monthly25           39.209138  48.547492
## 92  2015-11-01 monthly50+          122.996712 140.519404
## 93  2015-11-01        New            0.000000   9.175788
## 94  2015-11-01        Non            0.000000   6.237109
## 95  2015-11-01    weekly1            7.849833  19.956676
## 96  2015-11-01   weekly10           16.056976  41.137651
## 97  2015-11-01   weekly25           34.433767  38.285422
## 98  2015-11-01  weekly50+           82.602403  96.106580
## 99  2015-12-01     daily1            6.683495   6.683495
## 100 2015-12-01    daily10           15.618778  27.265495
## 101 2015-12-01    daily25           34.248290  48.218458
## 102 2015-12-01   daily50+           69.255202  87.810585
## 103 2015-12-01   monthly1            7.996354  18.927655
## 104 2015-12-01  monthly10           20.679568  30.345087
## 105 2015-12-01  monthly25           42.058586  59.553001
## 106 2015-12-01 monthly50+          133.234710 157.328173
## 107 2015-12-01        New            0.000000  15.754666
## 108 2015-12-01        Non            0.000000  15.478020
## 109 2015-12-01    weekly1            7.370370  19.629550
## 110 2015-12-01   weekly10           15.929948  25.662010
## 111 2015-12-01   weekly25           33.789283  33.789283
## 112 2015-12-01  weekly50+          111.939524 117.617820
## 113 2016-01-01     daily1            6.326959   6.326959
## 114 2016-01-01    daily10           16.143858  29.268699
## 115 2016-01-01    daily25           33.752501  47.685939
## 116 2016-01-01   daily50+           82.781553 101.000378
## 117 2016-01-01   monthly1            8.151627  19.098835
## 118 2016-01-01  monthly10           21.195971  31.276338
## 119 2016-01-01  monthly25           42.137539  61.768686
## 120 2016-01-01 monthly50+          136.293911 162.552879
## 121 2016-01-01        New            0.000000  15.330927
## 122 2016-01-01        Non            0.000000  11.052187
## 123 2016-01-01    weekly1            7.251639  20.803027
## 124 2016-01-01   weekly10           16.369964  35.451209
## 125 2016-01-01   weekly25           34.678959  54.762691
## 126 2016-01-01  weekly50+          105.488252 126.201037
## 127 2016-02-01     daily1            6.216447   6.216447
## 128 2016-02-01    daily10           16.265628  28.350458
## 129 2016-02-01    daily25           33.665435  49.694687
## 130 2016-02-01   daily50+           77.834116  95.294633
## 131 2016-02-01   monthly1            7.961810  17.178210
## 132 2016-02-01  monthly10           18.040497  26.540438
## 133 2016-02-01  monthly25           36.723217  58.107393
## 134 2016-02-01 monthly50+          131.160665 155.655498
## 135 2016-02-01        New            0.000000  11.649496
## 136 2016-02-01        Non            0.000000   9.703393
## 137 2016-02-01    weekly1            7.127389  20.825249
## 138 2016-02-01   weekly10           16.805099  34.993104
## 139 2016-02-01   weekly25           34.215864  48.998682
## 140 2016-02-01  weekly50+           93.140174 108.638896
##     DLV_future_remainder
## 1               4.298626
## 2               0.000000
## 3               0.000000
## 4               0.000000
## 5               0.000000
## 6               0.000000
## 7               0.000000
## 8               0.000000
## 9               0.000000
## 10              0.000000
## 11              0.000000
## 12              0.000000
## 13              0.000000
## 14              0.000000
## 15              0.000000
## 16              4.728843
## 17              2.808297
## 18              3.308034
## 19              4.299497
## 20              5.196557
## 21              8.579457
## 22             12.209311
## 23              7.938261
## 24              4.736815
## 25             44.457966
## 26             30.070068
## 27              0.000000
## 28              0.000000
## 29              0.000000
## 30              8.147644
## 31              5.830752
## 32             11.482620
## 33              8.016786
## 34              8.413183
## 35              9.082102
## 36             16.107883
## 37             10.329858
## 38              9.708151
## 39              4.901506
## 40             20.026596
## 41              0.000000
## 42              0.000000
## 43              0.000000
## 44             10.469056
## 45             12.462916
## 46             19.150615
## 47              9.894704
## 48             10.364016
## 49             16.781000
## 50             25.770568
## 51             18.302919
## 52             13.960780
## 53             12.432910
## 54             49.469340
## 55              0.000000
## 56              4.188234
## 57              0.000000
## 58             10.026543
## 59             14.139313
## 60             22.472154
## 61              9.848691
## 62              9.370940
## 63             20.099400
## 64             26.705624
## 65             15.086864
## 66              7.192772
## 67              7.912674
## 68              4.526059
## 69             14.401604
## 70              8.781511
## 71              0.000000
## 72              7.251771
## 73             11.063292
## 74             11.808558
## 75              6.921188
## 76              7.112141
## 77             16.038239
## 78             18.860021
## 79             11.722091
## 80              8.596964
## 81             17.542936
## 82             22.379334
## 83             14.816064
## 84              2.891602
## 85              0.000000
## 86              7.013514
## 87              3.569330
## 88             11.180536
## 89              6.630839
## 90              7.355290
## 91              9.338354
## 92             17.522692
## 93              9.175788
## 94              6.237109
## 95             12.106843
## 96             25.080675
## 97              3.851655
## 98             13.504177
## 99              0.000000
## 100            11.646718
## 101            13.970168
## 102            18.555383
## 103            10.931301
## 104             9.665519
## 105            17.494415
## 106            24.093463
## 107            15.754666
## 108            15.478020
## 109            12.259180
## 110             9.732062
## 111             0.000000
## 112             5.678296
## 113             0.000000
## 114            13.124841
## 115            13.933438
## 116            18.218825
## 117            10.947208
## 118            10.080367
## 119            19.631147
## 120            26.258968
## 121            15.330927
## 122            11.052187
## 123            13.551388
## 124            19.081245
## 125            20.083732
## 126            20.712785
## 127             0.000000
## 128            12.084830
## 129            16.029252
## 130            17.460517
## 131             9.216400
## 132             8.499941
## 133            21.384176
## 134            24.494833
## 135            11.649496
## 136             9.703393
## 137            13.697860
## 138            18.188005
## 139            14.782818
## 140            15.498722
# Plot normal DLV Values History
plot_dlv_values_timeline(DLV_preds_monthly_0.3)

This plot shows the following about the data: 1. There is some non-obvious distribution of the DLVs: monthly high donors donate more in total than weekly and daily high donors. It seems as above 50$, the monthly donors would be more skewed upwards than daily and weekly. 2. It was possible to consdier only one month’s data at a time and according to that get DLV values per only that month that was, albeit not perfectly constant, yet most of them were quite stable! That’s not a bad result for the stability of our DLV estimations; we don’t see major shifts in ranking or trends that owuld heavily affect our conclusions.

Conclusions from this plot

Most importantly, the plot reveals the folloing couple of insights: The ranking of groups was relatively consistent, and showed that the highest DLVs were of the groups that donated the most in average amount (all the 50+), and ranking down from then, and inside each such combination of groups, there was an INVERSE relationship with the frequency; monthly donors typically donated more than weekly and they donated more than daily donors of the same average amount tier!

Now, for the final outcome, let’s see what would be the overall contribution per group of donors in each state - meaning including the average amount and the number of donors!

DLV Values group-wide

plot_dlv_groupsized_values <- function(DLV_monthly, num_donors_groups, analysis_title='',discount_factor='0.6 output (inserted as 0.3)') {
    
    # merge monthly DLVs with groupsize, multiply these columns
    DLV_monthly_groupsized <- merge(DLV_monthly, num_donors_groups, 
                                   by = c("date","state"))
    DLV_monthly_groupsized['Total_group_DLV'] <- DLV_monthly_groupsized$DLV_Values * DLV_monthly_groupsized$Num_donors
    
  
    ### PLOT ###
    gg_monthly_DLVs_grouptotal <- 
      ggplot(data = DLV_monthly_groupsized, aes(x = date, y = Total_group_DLV, color=state)) +
       geom_line(size=1, alpha = 0.6)  + 
       labs(title = paste0(analysis_title, "Monthly Estimated Total DLVs Aggregated By Donor State Group Size that Month. Discount = ",
                           discount_factor),
        subtitle = "Total DLV monthly estimations by the model, times the number of donors in the group that month",
        y = "DLV - Discounted Lifetime Donations", 
        x = "Month", color = "Donor State ") +
        geom_dl(aes(label = state), method = list(dl.trans(x = x + 0.1), "last.points", cex = 0.6)) +
        geom_dl(aes(label = state), method = list(dl.trans(x = x - 0.1), "first.points", cex = 0.6)) +
        theme_minimal() +
        theme(plot.title = element_text(size=18, family = "Helvetica", face = "bold"), 
              plot.subtitle = element_text(family = "Helvetica")) 
    ggsave(filename = "gg_monthly_DLVs_grouptotal_smoothed", device = "png", width = 10, height = 6)
    return(gg_monthly_DLVs_grouptotal)
}

# num_donors_groups <- generate_num_donors_groups(df)
plot_dlv_groupsized_values(DLV_preds_monthly_0.3[DLV_preds_monthly_0.3$state!='Non',], num_donors_groups)

Since the numbers of monthly donors increased through time, especially of smaller donations, we would expect an increase in their total contribution. However that didn’t account for the total increase. The ranking between which monthly group had higher values fluctuated and switched a few times, and ended roughly on the order by the magnitude of the donation. This plot shows the important conclusion that most of the lifetime value comes from the monthly donors, even if they donate a small amount, because they were a much larger group. Therefore, for the Sanders’ campaigners - or democratic campaigners - you might be better off convincing more people to donate a monthly donation of whatever magnitude they can afford, than trying to get a higher frequency of donations that will later be stopped, or than trying to push hard for a higher amount!


Conclusion: Key Insights for Decision Makers

To summarize this whole analysis, here are a few of the most important insights that would matter more for decision makers from such an analysis: - While some of the states are a bit more stable, most states tended to drop down a tier of frequency but stay at a similar amount of donation the following month! - There were more and more Monthly donors, and more and more of Low donation amounts. Intuitively, it was easy to get people to join or stay in the lower commitment donation patterns. - The groups with the highest average DLV came from the highest average donation, not from frequency. Meaning, even if people donated every day, it still didn’t sum up to the same amounts in a whole month as the mothly donors. - Within the high amount donors of various frequencies, there was an INVERSE relationship with the frequency; monthly donors typically donated more than weekly and they donated more than daily donors of the same average amount tier! - In aggregate discounted lifetime donation values (times the number of drivers), most of the lifetime value comes from the monthly donors, even if they donate a small amount, because they were a much larger group. Therefore, for the Sanders’ campaigners - or democratic campaigners - you might be better off convincing more people to donate a monthly donation of whatever magnitude they can afford, than trying to get a higher frequency of donations that will later be stopped, or than trying to push hard for a higher amount!