Full Code of pyduan/amazonaccess for AI

master f8addfefcee8 cached
25 files
5.7 MB
1.5M tokens
55 symbols
1 requests
Download .txt
Showing preview only (6,017K chars total). Download the full file or copy to clipboard to get everything.
Repository: pyduan/amazonaccess
Branch: master
Commit: f8addfefcee8
Files: 25
Total size: 5.7 MB

Directory structure:
gitextract_2aa2etyw/

├── .gitignore
├── BSMan/
│   ├── __init__.py
│   ├── ensemble.py
│   └── logistic.py
├── MIT-LICENSE
├── README.md
├── cache/
│   ├── .gitignore
│   └── models/
│       ├── diagnostics/
│       │   └── cv_preds/
│       │       └── .gitignore
│       └── main/
│           └── cv_preds/
│               └── .gitignore
├── classifier.py
├── combine/
│   └── combine.py
├── data/
│   ├── test.csv
│   └── train.csv
├── external/
│   ├── __init__.py
│   ├── ben.py
│   └── greedy.py
├── helpers/
│   ├── __init__.py
│   ├── data.py
│   ├── diagnostics.py
│   ├── feature_extraction.py
│   ├── ml.py
│   └── utils.py
├── plots/
│   └── .gitignore
├── saved_params.json
└── submissions/
    └── .gitignore

================================================
FILE CONTENTS
================================================

================================================
FILE: .gitignore
================================================
*.py[cod]
*.pkl
*.log
.DS_Store

# C extensions
*.so

# Packages
*.egg
*.egg-info
dist
build
eggs
parts
bin
var
sdist
develop-eggs
.installed.cfg
lib
lib64

# Installer logs
pip-log.txt

# Unit test / coverage reports
.coverage
.tox
nosetests.xml

# Translations
*.mo

# Mr Developer
.mr.developer.cfg
.project
.pydevproject


================================================
FILE: BSMan/__init__.py
================================================


================================================
FILE: BSMan/ensemble.py
================================================
""" Amazon Access Challenge Starter Code

This was built using the code of Paul Duan <email@paulduan.com> as a starting
point (thanks to Paul).

It builds ensemble models using the original dataset and a handful of 
extracted features.

Author: Benjamin Solecki <bensolecki@gmail.com>
"""

from __future__ import division

import numpy as np
import pandas as pd
from sklearn.ensemble import (RandomForestClassifier, ExtraTreesClassifier, GradientBoostingClassifier)
from sklearn import (metrics, cross_validation, linear_model, preprocessing)

SEED = 42  # always use a seed for randomized procedures

def save_results(predictions, filename):
    """Given a vector of predictions, save results in CSV format."""
    with open(filename, 'w') as f:
        f.write("id,ACTION\n")
        for i, pred in enumerate(predictions):
            f.write("%d,%f\n" % (i + 1, pred))


"""
Fit models and make predictions.
We'll use one-hot encoding to transform our categorical features
into binary features.
y and X will be numpy array objects.
"""
# === load data in memory === #
print "loading data"
X = pd.read_csv('data/train.csv')
X = X.drop(['ROLE_CODE'], axis=1)
y = X['ACTION']
X = X.drop(['ACTION'], axis=1)
X_test = pd.read_csv('data/test.csv', index_col=0)
X_test = X_test.drop(['ROLE_CODE'], axis=1)
X_test['ACTION'] = 0
y_test = X_test['ACTION']
X_test = X_test.drop(['ACTION'], axis=1)

modelRF =RandomForestClassifier(n_estimators=1999, max_features='sqrt', max_depth=None, min_samples_split=9, compute_importances=True, random_state=SEED)#8803
modelXT =ExtraTreesClassifier(n_estimators=1999, max_features='sqrt', max_depth=None, min_samples_split=8, compute_importances=True, random_state=SEED) #8903
modelGB =GradientBoostingClassifier(n_estimators=50, learning_rate=0.20, max_depth=20, min_samples_split=9, random_state=SEED)  #8749
# 599: 20/90/08
#1999: 24/95/06

X_all = pd.concat([X_test,X], ignore_index=True)

# I want to combine role_title as a subset of role_familia and see if same results
X_all['ROLE_TITLE'] = X_all['ROLE_TITLE'] + (1000 * X_all['ROLE_FAMILY'])
X_all['ROLE_ROLLUPS'] = X_all['ROLE_ROLLUP_1'] + (10000 * X_all['ROLE_ROLLUP_2'])
X_all = X_all.drop(['ROLE_ROLLUP_1','ROLE_ROLLUP_2','ROLE_FAMILY'], axis=1)

# Count/freq
print "Counts"
for col in X_all.columns:
    X_all['cnt'+col] = 0
    groups = X_all.groupby([col])
    for name, group in groups:
        count = group[col].count()
        X_all['cnt'+col].ix[group.index] = count 
    X_all['cnt'+col] = X_all['cnt'+col].apply(np.log) # could check if this is neccesary, I think probably not

# Percent of dept that is this resource
for col in X_all.columns[1:6]:
    X_all['Duse'+col] = 0.0
    groups = X_all.groupby([col])
    for name, group in groups:
        grps = group.groupby(['RESOURCE'])
        for rsrc, grp in grps:
            X_all['Duse'+col].ix[grp.index] = float(len(grp.index)) / float(len(group.index) )

# Number of resources that a manager manages
for col in X_all.columns[0:1]:
    if col == 'MGR_ID':
        continue
    print col
    X_all['Mdeps'+col] = 0
    groups = X_all.groupby(['MGR_ID'])
    for name, group in groups:
        X_all['Mdeps'+col].ix[group.index] = len(group[col].unique()) 


X = X_all[:][X_all.index>=len(X_test.index)]
X_test = X_all[:][X_all.index<len(X_test.index)]

# === Combine Models === #
# Do a linear combination using a cross_validated data split
X_train, X_cv, y_train, y_cv = cross_validation.train_test_split(X, y, test_size=0.5, random_state=SEED)

modelRF.fit(X_cv, y_cv) 
modelXT.fit(X_cv, y_cv) 
modelGB.fit(X_cv, y_cv) 
predsRF = modelRF.predict_proba(X_train)[:, 1]
predsXT = modelXT.predict_proba(X_train)[:, 1]
predsGB = modelGB.predict_proba(X_train)[:, 1]
preds = np.hstack((predsRF, predsXT, predsGB)).reshape(3,len(predsGB)).transpose()
preds[preds>0.9999999]=0.9999999
preds[preds<0.0000001]=0.0000001
preds = -np.log((1-preds)/preds)
modelEN1 = linear_model.LogisticRegression()
modelEN1.fit(preds, y_train)
print modelEN1.coef_

modelRF.fit(X_train, y_train) 
modelXT.fit(X_train, y_train) 
modelGB.fit(X_train, y_train) 
predsRF = modelRF.predict_proba(X_cv)[:, 1]
predsXT = modelXT.predict_proba(X_cv)[:, 1]
predsGB = modelGB.predict_proba(X_cv)[:, 1]
preds = np.hstack((predsRF, predsXT, predsGB)).reshape(3,len(predsGB)).transpose()
preds[preds>0.9999999]=0.9999999
preds[preds<0.0000001]=0.0000001
preds = -np.log((1-preds)/preds)
modelEN2 = linear_model.LogisticRegression()
modelEN2.fit(preds, y_cv)
print modelEN2.coef_

coefRF = modelEN1.coef_[0][0] + modelEN2.coef_[0][0]
coefXT = modelEN1.coef_[0][1] + modelEN2.coef_[0][1]
coefGB = modelEN1.coef_[0][2] + modelEN2.coef_[0][2]

# === Predictions === #
# When making predictions, retrain the model on the whole training set
modelRF.fit(X, y)
modelXT.fit(X, y)
modelGB.fit(X, y)

### Combine here
predsRF = modelRF.predict_proba(X_test)[:, 1]
predsXT = modelXT.predict_proba(X_test)[:, 1]
predsGB = modelGB.predict_proba(X_test)[:, 1]
predsRF[predsRF>0.9999999]=0.9999999
predsXT[predsXT>0.9999999]=0.9999999
predsGB[predsGB>0.9999999]=0.9999999
predsRF[predsRF<0.0000001]=0.0000001
predsXT[predsXT<0.0000001]=0.0000001
predsGB[predsGB<0.0000001]=0.0000001
predsRF = -np.log((1-predsRF)/predsRF)
predsXT = -np.log((1-predsXT)/predsXT)
predsGB = -np.log((1-predsGB)/predsGB)
preds = coefRF * predsRF + coefXT * predsXT + coefGB * predsGB

filename = raw_input("Enter name for submission file: ")
save_results(preds, "submissions/en" + filename + ".csv")


================================================
FILE: BSMan/logistic.py
================================================
"""
This program is based on code submitted by Miroslaw Horbal to the Kaggle 
forums, which was itself based on an earlier submission from Paul Doan.
My thanks to both.

Author: Benjamin Solecki <bensolucky@gmail.com>
"""

from numpy import array, hstack
from sklearn import metrics, cross_validation, linear_model
from sklearn import naive_bayes
from sklearn import preprocessing
from scipy import sparse
from itertools import combinations

from sets import Set
import numpy as np
import pandas as pd
import sys

#SEED = 55
SEED = int(sys.argv[2])

def group_data(data, degree=3, hash=hash):
    """ 
    numpy.array -> numpy.array
    
    Groups all columns of data into all combinations of triples
    """
    new_data = []
    m,n = data.shape
    for indicies in combinations(range(n), degree):
	if 5 in indicies and 7 in indicies:
	    print "feature Xd"
	elif 2 in indicies and 3 in indicies:
	    print "feature Xd"
	else:
            new_data.append([hash(tuple(v)) for v in data[:,indicies]])
    return array(new_data).T

def OneHotEncoder(data, keymap=None):
     """
     OneHotEncoder takes data matrix with categorical columns and
     converts it to a sparse binary matrix.
     
     Returns sparse binary matrix and keymap mapping categories to indicies.
     If a keymap is supplied on input it will be used instead of creating one
     and any categories appearing in the data that are not in the keymap are
     ignored
     """
     if keymap is None:
          keymap = []
          for col in data.T:
               uniques = set(list(col))
               keymap.append(dict((key, i) for i, key in enumerate(uniques)))
     total_pts = data.shape[0]
     outdat = []
     for i, col in enumerate(data.T):
          km = keymap[i]
          num_labels = len(km)
          spmat = sparse.lil_matrix((total_pts, num_labels))
          for j, val in enumerate(col):
               if val in km:
                    spmat[j, km[val]] = 1
          outdat.append(spmat)
     outdat = sparse.hstack(outdat).tocsr()
     return outdat, keymap

def create_test_submission(filename, prediction):
    content = ['id,ACTION']
    for i, p in enumerate(prediction):
        content.append('%i,%f' %(i+1,p))
    f = open(filename, 'w')
    f.write('\n'.join(content))
    f.close()
    print 'Saved'

# This loop essentially from Paul's starter code
# I (Ben) increased the size of train at the expense of test, because
# when train is small many features will not be found in train.
def cv_loop(X, y, model, N):
    mean_auc = 0.
    for i in range(N):
        X_train, X_cv, y_train, y_cv = cross_validation.train_test_split(
                                       X, y, test_size=1.0/float(N), 
                                       random_state = i*SEED)
        model.fit(X_train, y_train)
        preds = model.predict_proba(X_cv)[:,1]
        auc = metrics.auc_score(y_cv, preds)
        #print "AUC (fold %d/%d): %f" % (i + 1, N, auc)
        mean_auc += auc
    return mean_auc/N
    
learner = sys.argv[1]
print "Reading dataset..."
train_data = pd.read_csv('train.csv')
test_data = pd.read_csv('test.csv')
submit=learner + str(SEED) + '.csv'
all_data = np.vstack((train_data.ix[:,1:-1], test_data.ix[:,1:-1]))
num_train = np.shape(train_data)[0]

# Transform data
print "Transforming data..."
# Relabel the variable values to smallest possible so that I can use bincount
# on them later.
relabler = preprocessing.LabelEncoder()
for col in range(len(all_data[0,:])):
    relabler.fit(all_data[:, col])
    all_data[:, col] = relabler.transform(all_data[:, col])
########################## 2nd order features ################################
dp = group_data(all_data, degree=2) 
for col in range(len(dp[0,:])):
    relabler.fit(dp[:, col])
    dp[:, col] = relabler.transform(dp[:, col])
    uniques = len(set(dp[:,col]))
    maximum = max(dp[:,col])
    print col
    if maximum < 65534:
        count_map = np.bincount((dp[:, col]).astype('uint16'))
        for n,i in enumerate(dp[:, col]):
            if count_map[i] <= 1:
                dp[n, col] = uniques
            elif count_map[i] == 2:
                dp[n, col] = uniques+1
    else:
        for n,i in enumerate(dp[:, col]):
            if (dp[:, col] == i).sum() <= 1:
                dp[n, col] = uniques
            elif (dp[:, col] == i).sum() == 2:
                dp[n, col] = uniques+1
    print uniques # unique values
    uniques = len(set(dp[:,col]))
    print uniques
    relabler.fit(dp[:, col])
    dp[:, col] = relabler.transform(dp[:, col])
########################## 3rd order features ################################
dt = group_data(all_data, degree=3)
for col in range(len(dt[0,:])):
    relabler.fit(dt[:, col])
    dt[:, col] = relabler.transform(dt[:, col])
    uniques = len(set(dt[:,col]))
    maximum = max(dt[:,col])
    print col
    if maximum < 65534:
        count_map = np.bincount((dt[:, col]).astype('uint16'))
        for n,i in enumerate(dt[:, col]):
            if count_map[i] <= 1:
                dt[n, col] = uniques
            elif count_map[i] == 2:
                dt[n, col] = uniques+1
    else:
        for n,i in enumerate(dt[:, col]):
            if (dt[:, col] == i).sum() <= 1:
                dt[n, col] = uniques
            elif (dt[:, col] == i).sum() == 2:
                dt[n, col] = uniques+1
    print uniques
    uniques = len(set(dt[:,col]))
    print uniques
    relabler.fit(dt[:, col])
    dt[:, col] = relabler.transform(dt[:, col])
########################## 1st order features ################################
for col in range(len(all_data[0,:])):
    relabler.fit(all_data[:, col])
    all_data[:, col] = relabler.transform(all_data[:, col])
    uniques = len(set(all_data[:,col]))
    maximum = max(all_data[:,col])
    print col
    if maximum < 65534:
        count_map = np.bincount((all_data[:, col]).astype('uint16'))
        for n,i in enumerate(all_data[:, col]):
            if count_map[i] <= 1:
                all_data[n, col] = uniques
            elif count_map[i] == 2:
                all_data[n, col] = uniques+1
    else:
        for n,i in enumerate(all_data[:, col]):
            if (all_data[:, col] == i).sum() <= 1:
                all_data[n, col] = uniques
            elif (all_data[:, col] == i).sum() == 2:
                all_data[n, col] = uniques+1
    print uniques
    uniques = len(set(all_data[:,col]))
    print uniques
    relabler.fit(all_data[:, col])
    all_data[:, col] = relabler.transform(all_data[:, col])

# Collect the training features together
y = array(train_data.ACTION)
X = all_data[:num_train]
X_2 = dp[:num_train]
X_3 = dt[:num_train]

# Collect the testing features together
X_test = all_data[num_train:]
X_test_2 = dp[num_train:]
X_test_3 = dt[num_train:]

X_train_all = np.hstack((X, X_2, X_3))
X_test_all = np.hstack((X_test, X_test_2, X_test_3))
num_features = X_train_all.shape[1]
    
if learner == 'NB':
    model = naive_bayes.BernoulliNB(alpha=0.03)
else:
    model = linear_model.LogisticRegression(class_weight='auto', penalty='l2')
    
# Xts holds one hot encodings for each individual feature in memory
# speeding up feature selection 
Xts = [OneHotEncoder(X_train_all[:,[i]])[0] for i in range(num_features)]
    
print "Performing greedy feature selection..."
score_hist = []
N = 10
good_features = set([])
# Greedy feature selection loop
while len(score_hist) < 2 or score_hist[-1][0] > score_hist[-2][0]:
    scores = []
    for f in range(len(Xts)):
        if f not in good_features:
            feats = list(good_features) + [f]
            Xt = sparse.hstack([Xts[j] for j in feats]).tocsr()
            score = cv_loop(Xt, y, model, N)
            scores.append((score, f))
            print "Feature: %i Mean AUC: %f" % (f, score)
    good_features.add(sorted(scores)[-1][1])
    score_hist.append(sorted(scores)[-1])
    print "Current features: %s" % sorted(list(good_features))
    
# Remove last added feature from good_features
good_features.remove(score_hist[-1][1])
good_features = sorted(list(good_features))
print "Selected features %s" % good_features
gf = open("feats" + submit, 'w')
print >>gf, good_features
gf.close()
print len(good_features), " features"
    
print "Performing hyperparameter selection..."
# Hyperparameter selection loop
score_hist = []
Xt = sparse.hstack([Xts[j] for j in good_features]).tocsr()
if learner == 'NB':
    Cvals = [0.001, 0.003, 0.006, 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.1]
else:
    Cvals = np.logspace(-4, 4, 15, base=2)  # for logistic
for C in Cvals:
    if learner == 'NB':
        model.alpha = C
    else:
        model.C = C
    score = cv_loop(Xt, y, model, N)
    score_hist.append((score,C))
    print "C: %f Mean AUC: %f" %(C, score)
bestC = sorted(score_hist)[-1][1]
print "Best C value: %f" % (bestC)
    
print "Performing One Hot Encoding on entire dataset..."
Xt = np.vstack((X_train_all[:,good_features], X_test_all[:,good_features]))
Xt, keymap = OneHotEncoder(Xt)
X_train = Xt[:num_train]
X_test = Xt[num_train:]
    
if learner == 'NB':
    model.alpha = bestC
else:
    model.C = bestC

print "Training full model..."
print "Making prediction and saving results..."
model.fit(X_train, y)
preds = model.predict_proba(X_test)[:,1]
create_test_submission(submit, preds)
preds = model.predict_proba(X_train)[:,1]
create_test_submission('Train'+submit, preds)


================================================
FILE: MIT-LICENSE
================================================
The MIT License (MIT)

Copyright (c) 2013 Paul Duan, Benjamin Solecki

Permission is hereby granted, free of charge, to any person obtaining a
copy
of this software and associated documentation files (the "Software"), to
deal
in the Software without restriction, including without limitation the
rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included
in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN
THE SOFTWARE.


================================================
FILE: README.md
================================================
Amazon Employee Access Challenge
================================

This code was written by Paul Duan (<email@paulduan.com>) and Benjamin Solecki (<bensolucky@gmail.com>).
It provides our winning solution to the Amazon Employee Access Challenge.
Our code is currently not merged. You'll find Benjamin's code in the BSMan/ folder, which needs to be run separately.


Usage:
---------------
    [python] classifier.py [-h] [-d] [-i ITER] [-f OUTPUTFILE] [-g] [-m] [-n] [-s] [-v] [-w]

    Parameters for the script.

    optional arguments:
      -h, --help            show this help message and exit
      -d, --diagnostics     Compute diagnostics.
      -i ITER, --iter ITER  Number of iterations for averaging.
      -f OUTPUTFILE, --outputfile OUTPUTFILE
                            Name of the file where predictions are saved.
      -g, --grid-search     Use grid search to find best parameters.
      -m, --model-selection
                            Use model selection.
      -n, --no-cache        Use cache.
      -s, --stack           Use stacking.
      -v, --verbose         Show computation steps.
      -w, --fwls            Use metafeatures.


To directly generate predictions on the test set without computing CV
metrics, simply run:  

    python classifier.py -i0 -f[output_filename]

This script will launch Paul's model, which incorporates some of Benjamin's features.
Benjamin's model is in the BSMan folder and can be run this way:  

    (in BSMan/)
    [python] logistic.py log 75
    [python] ensemble.py

The output of our models is then combined by simple standardization then weighted averaging, using 2/3 Paul's model and 1/3 Benjamin's.


Requirements:
---------------
This code requires Python, numpy/scipy, scikit-learn, and pandas for
some of the external code (this dependency will be removed in the
future).  
It has been tested under Mac OS X with Python v.7.x,
scikit-learn 0.13, numpy 0.17, and pandas 0.11.

License:
---------------
This content is released under the [MIT Licence](http://opensource.org/licenses/MIT).


================================================
FILE: cache/.gitignore
================================================
*.pkl


================================================
FILE: cache/models/diagnostics/cv_preds/.gitignore
================================================
# Ignore everything except this file
*
!.gitignore


================================================
FILE: cache/models/main/cv_preds/.gitignore
================================================
# Ignore everything except this file
*
!.gitignore


================================================
FILE: classifier.py
================================================
#!/usr/bin/env python

"""Amazon Access Challenge

This is my part of the code that produced the winning solution to the
Amazon Employee Access Challenge. See README.md for more details.

Author: Paul Duan <email@paulduan.com>
"""

from __future__ import division

import argparse
import logging

from sklearn import metrics, cross_validation, linear_model, ensemble
from helpers import ml, diagnostics
from helpers.data import load_data, save_results
from helpers.feature_extraction import create_datasets

logging.basicConfig(format="[%(asctime)s] %(levelname)s\t%(message)s",
                    filename="history.log", filemode='a', level=logging.DEBUG,
                    datefmt='%m/%d/%y %H:%M:%S')
formatter = logging.Formatter("[%(asctime)s] %(levelname)s\t%(message)s",
                              datefmt='%m/%d/%y %H:%M:%S')
console = logging.StreamHandler()
console.setFormatter(formatter)
console.setLevel(logging.INFO)
logging.getLogger().addHandler(console)

logger = logging.getLogger(__name__)


def main(CONFIG):
    """
    The final model is a combination of several base models, which are then
    combined using StackedClassifier defined in the helpers.ml module.

    The list of models and associated datasets is generated automatically
    from their identifying strings. The format is as follows:
    A:b_c where A is the initials of the algorithm to use, b is the base
    dataset, and c is the feature set and the variants to use.
    """
    SEED = 42
    selected_models = [
        "LR:tuples_sf",
        "LR:greedy_sfl",
        "LR:greedy2_sfl",
        "LR:greedy3_sf",
        "RFC:basic_b",
        "RFC:tuples_f",
        "RFC:tuples_fd",
        "RFC:greedy_f",
        "RFC:greedy2_f",
        "GBC:basic_f",
        "GBC:tuples_f",
        "LR:greedy_sbl",
        "GBC:greedy_c",
        "GBC:tuples_cf",
        #"RFC:effects_f",  # experimental; added after the competition
    ]

    # Create the models on the fly
    models = []
    for item in selected_models:
        model_id, dataset = item.split(':')
        model = {'LR': linear_model.LogisticRegression,
                 'GBC': ensemble.GradientBoostingClassifier,
                 'RFC': ensemble.RandomForestClassifier,
                 'ETC': ensemble.ExtraTreesClassifier}[model_id]()
        model.set_params(random_state=SEED)
        models.append((model, dataset))

    datasets = [dataset for model, dataset in models]

    logger.info("loading data")
    y, X = load_data('train.csv')
    X_test = load_data('test.csv', return_labels=False)

    logger.info("preparing datasets (use_cache=%s)", str(CONFIG.use_cache))
    create_datasets(X, X_test, y, datasets, CONFIG.use_cache)

    # Set params
    for model, feature_set in models:
        model.set_params(**ml.find_params(model, feature_set, y,
                                          grid_search=CONFIG.grid_search))
    clf = ml.StackedClassifier(
        models, stack=CONFIG.stack, fwls=CONFIG.fwls,
        model_selection=CONFIG.model_selection,
        use_cached_models=CONFIG.use_cache)

    #  Metrics
    logger.info("computing cv score")
    mean_auc = 0.0
    for i in range(CONFIG.iter):
        train, cv = cross_validation.train_test_split(
            range(len(y)), test_size=.20, random_state=1+i*SEED)
        cv_preds = clf.fit_predict(y, train, cv, show_steps=CONFIG.verbose)

        fpr, tpr, _ = metrics.roc_curve(y[cv], cv_preds)
        roc_auc = metrics.auc(fpr, tpr)
        logger.info("AUC (fold %d/%d): %.5f", i + 1, CONFIG.iter, roc_auc)
        mean_auc += roc_auc

        if CONFIG.diagnostics and i == 0:  # only plot for first fold
            logger.info("plotting learning curve")
            diagnostics.learning_curve(clf, y, train, cv)
            diagnostics.plot_roc(fpr, tpr)
    if CONFIG.iter:
        logger.info("Mean AUC: %.5f",  mean_auc/CONFIG.iter)

    # Create submissions
    if CONFIG.outputfile:
        logger.info("making test submissions (CV AUC: %.4f)", mean_auc)
        preds = clf.fit_predict(y, show_steps=CONFIG.verbose)
        save_results(preds, CONFIG.outputfile + ".csv")

if __name__ == '__main__':
    PARSER = argparse.ArgumentParser(description="Parameters for the script.")
    PARSER.add_argument('-d', "--diagnostics", action="store_true",
                        help="Compute diagnostics.")
    PARSER.add_argument('-i', "--iter", type=int, default=1,
                        help="Number of iterations for averaging.")
    PARSER.add_argument("-f", "--outputfile", default="",
                        help="Name of the file where predictions are saved.")
    PARSER.add_argument('-g', "--grid-search", action="store_true",
                        help="Use grid search to find best parameters.")
    PARSER.add_argument('-m', "--model-selection", action="store_true",
                        default=False, help="Use model selection.")
    PARSER.add_argument('-n', "--no-cache", action="store_false", default=True,
                        help="Use cache.", dest="use_cache")
    PARSER.add_argument("-s", "--stack", action="store_true",
                        help="Use stacking.")
    PARSER.add_argument('-v', "--verbose", action="store_true",
                        help="Show computation steps.")
    PARSER.add_argument("-w", "--fwls", action="store_true",
                        help="Use metafeatures.")
    PARSER.set_defaults(argument_default=False)
    CONFIG = PARSER.parse_args()

    CONFIG.stack = CONFIG.stack or CONFIG.fwls

    logger.debug('\n' + '='*50)
    main(CONFIG)


================================================
FILE: combine/combine.py
================================================
"""combine.py

This is an ad-hoc script we used to find how to merge our submissions.
For this to work, the prediction vectors must be placed in the internal/
folder.

Author: Paul Duan <email@paulduan.com>
"""

import numpy as np
import math
from sklearn import linear_model, cross_validation, preprocessing

from ..helpers.data import load_data
from ..helpers.ml import compute_auc, AUCRegressor


def inverse_transform(X):
    def clamp(x):
        return min(max(x, .00000001), .99999999)
    return np.vectorize(lambda x: -math.log((1 - clamp(x))/clamp(x)))(X)


def print_param(obj, params, prefix=''):
    for param in params:
        if hasattr(obj, param):
            paramvalue = getattr(obj, param)
            if "coef" in param:
                paramvalue /= np.sum(paramvalue)
            print prefix + param + ": " + str(paramvalue)


mean_prediction = 0.0
y = load_data('train.csv')[0]
y = y[range(len(y) - 7770, len(y))]

files = ["log75", "ens", "paul"]
totransform = []

preds = []
for filename in files:
    with open("%s.csv" % filename) as f:
        pred = np.loadtxt(f, delimiter=',', usecols=[1], skiprows=1)
        if filename in totransform:
            pred = inverse_transform(pred)
        preds.append(pred)
X = np.array(preds).T

standardizer = preprocessing.StandardScaler()
X = standardizer.fit_transform(X)

print "============================================================"
print '\t\t'.join(files)
aucs = []
for filename in files:
    with open("%s.csv" % filename) as f:
        pred = np.loadtxt(f, delimiter=',', usecols=[1], skiprows=1)
        aucs.append("%.3f" % (compute_auc(y, pred) * 100))
print '\t\t'.join(aucs)
print "------------------------------------------------------------"

combiners = [
    linear_model.LinearRegression(),
    linear_model.Ridge(20),
    AUCRegressor(),
]

for combiner in combiners:
    mean_coefs = 0.0
    mean_auc = 0.0
    N = 10

    print "\n%s:" % combiner.__class__.__name__
    if hasattr(combiner, 'predict_proba'):
        combiner.predict = lambda X: combiner.predict_proba(X)[:, 1]

    combiner.fit(X, y)
    print_param(combiner, ["alpha_", "coef_"], "(post) ")
    print "Train AUC: %.3f" % (compute_auc(y, combiner.predict(X)) * 100)

    if isinstance(combiner, AUCRegressor):
        continue

    kfold = cross_validation.KFold(len(y), 3, shuffle=True)
    for train, test in kfold:
        X_train = X[train]
        X_test = X[test]
        y_train = y[train]
        y_test = y[test]

        combiner.fit(X_train, y_train)
        prediction = combiner.predict(X_test)
        mean_auc += compute_auc(y_test, prediction)/len(kfold)

        if len(combiner.coef_) == 1:
            mean_coefs += combiner.coef_[0]/len(files)
        else:
            mean_coefs += combiner.coef_/len(files)

    print "Mean AUC: %.3f" % (mean_auc * 100)

print "\n------------------------------------------------------------"


================================================
FILE: data/test.csv
================================================
id,RESOURCE,MGR_ID,ROLE_ROLLUP_1,ROLE_ROLLUP_2,ROLE_DEPTNAME,ROLE_TITLE,ROLE_FAMILY_DESC,ROLE_FAMILY,ROLE_CODE
1,78766,72734,118079,118080,117878,117879,118177,19721,117880
2,40644,4378,117961,118327,118507,118863,122008,118398,118865
3,75443,2395,117961,118300,119488,118172,301534,249618,118175
4,43219,19986,117961,118225,118403,120773,136187,118960,120774
5,42093,50015,117961,118343,119598,118422,300136,118424,118425
6,44722,1755,117961,117962,119223,125793,146749,118643,125795
7,75834,21135,117961,118343,123494,118054,118054,117887,118055
8,4675,3077,117961,118300,120312,124194,124195,118363,124196
9,18072,15575,117902,118041,118623,280788,280788,292795,119082
10,22680,4474,117961,118446,119064,118321,118448,290919,118322
11,23150,25293,117961,118386,128823,118321,117906,290919,118322
12,80179,6222,117961,118052,118746,117905,117906,290919,117908
13,25993,52925,117980,117981,117920,118568,156279,19721,118570
14,14570,108550,117929,117930,117912,118568,281735,19721,118570
15,80452,1600,117961,118327,118507,118890,311441,118398,118892
16,34026,19839,117961,118300,120722,118685,120316,308574,118687
17,78106,53747,117916,118150,117884,118568,146968,19721,118570
18,34924,2017,117961,118327,121645,118321,117906,290919,118322
19,41297,3883,117961,118343,119987,118536,132799,308574,118539
20,73756,39942,117961,118225,124380,307024,140976,118331,118332
21,4675,771,117961,118300,120722,118321,117906,290919,118322
22,5349,7370,117961,118413,118481,127782,230830,290919,127783
23,80127,2765,118290,118291,118301,120344,267006,118424,120346
24,15798,5464,117916,119623,118403,118321,117906,290919,118322
25,28315,48938,118169,118170,118042,118043,285669,270488,118046
26,20351,2034,117961,118052,118328,299559,259703,118205,163732
27,8708,121729,118358,118359,29113,118054,117886,117887,118055
28,41649,49323,118990,118991,118992,118321,117906,290919,118322
29,5173,3970,117961,118300,118458,118054,118054,117887,118055
30,34299,9659,118742,118743,117920,117885,117886,117887,117888
31,29634,7648,117961,118300,119195,117905,117906,290919,117908
32,3069,3119,117961,118300,120312,119849,310589,118638,119851
33,27356,22800,117961,118343,118171,118636,185784,118638,118639
34,34277,3104,117961,118343,123476,118054,118054,117887,118055
35,80903,2819,117961,118300,120410,117905,117906,290919,117908
36,27178,46503,120140,120141,121589,120952,120953,118453,120954
37,13878,51311,117961,118343,121747,119928,310608,118331,119929
38,4675,17831,117902,117903,28618,128230,302830,4673,128231
39,77049,63815,117922,117923,117941,117879,117886,19721,117880
40,20293,21951,118006,118007,117941,117885,117886,117887,117888
41,20226,15615,118752,118753,119121,280788,280788,292795,119082
42,32270,15887,117961,118052,120356,126516,126517,118612,126518
43,79092,10472,117876,117877,117878,117879,117879,19721,117880
44,19722,4620,117961,118300,119181,117905,180083,290919,117908
45,80899,8085,117961,118300,118535,118321,147045,290919,118322
46,34005,770,117961,118300,119181,128230,302830,4673,128231
47,19980,5730,117961,118446,120026,120578,137493,118762,120580
48,79228,10704,117932,117933,117878,117879,117879,19721,117880
49,4675,7393,117902,117903,134257,117905,118036,290919,117908
50,75943,3100,216705,119256,118599,118054,167069,117887,118055
51,75078,7284,91261,118026,118202,117905,117906,290919,117908
52,16631,16541,117961,118225,120551,117905,117906,290919,117908
53,16218,5456,117961,118225,118403,117905,117906,290919,117908
54,39883,24926,91261,118026,118229,273308,120072,249618,118232
55,14955,43514,117961,118446,127812,118801,147130,19793,118803
56,43876,83560,118079,118080,117878,117879,304519,19721,117880
57,7543,4620,117961,118300,119181,117905,240983,290919,117908
58,23921,4914,117961,118300,120026,118834,127160,118424,118836
59,74001,50308,118090,118091,117884,117885,117913,117887,117888
60,16443,52194,117961,118052,126137,118924,148208,118667,118926
61,39333,7411,117961,118386,118746,118747,152307,118453,118749
62,4675,20818,119062,119063,124211,118321,117906,290919,118322
63,28566,28021,118212,118580,117895,117879,117897,19721,117880
64,33151,21009,117961,118343,149210,120097,174445,270488,120099
65,4675,33112,118212,118213,120551,118321,240983,290919,118322
66,27082,4663,117961,118225,120323,132096,132097,119095,132098
67,16018,33266,216705,119256,129526,119849,160290,118638,119851
68,77295,1978,117961,118327,120559,122269,141096,118643,122271
69,34924,6999,117961,118343,121747,118321,117906,290919,118322
70,20299,58476,117929,117930,117920,117879,310732,19721,117880
71,27295,4933,117961,118300,118458,307024,301218,118331,118332
72,45519,13845,117961,117962,118791,118792,211906,118424,118794
73,42481,101834,119134,119135,118042,118207,200069,270488,118209
74,74995,2541,117961,118343,118856,117905,117906,290919,117908
75,14937,5739,117961,118446,118684,118924,140784,118667,118926
76,40338,1411,117902,117903,118437,123670,305057,121916,123672
77,79121,16972,117961,118300,119987,118523,310608,118331,118525
78,22471,15412,117961,118343,127705,119849,127706,118638,119851
79,78422,15894,117961,118052,120304,120313,206347,118424,120315
80,75078,5496,91261,118026,118202,118321,117906,290919,118322
81,3130,122272,117961,118225,122273,122274,244154,3130,122275
82,40997,4199,117961,118225,118403,118321,117906,290919,118322
83,1020,3685,120140,120141,119968,124886,306399,118643,124888
84,32270,15785,117961,118343,118395,118890,125128,118398,118892
85,74909,8150,117961,118386,119954,118318,168365,118205,118319
86,43876,50213,118079,118080,117878,117879,117913,19721,117880
87,33146,13767,117961,117969,118970,118396,160046,118398,118399
88,42015,771,117961,118300,120722,118784,213944,290919,118786
89,42093,4139,117961,118300,123055,120344,188011,118424,120346
90,5342,16643,119134,119135,118701,119587,284481,118704,119589
91,74310,6957,117961,118300,125821,119849,310589,118638,119851
92,278393,15389,117961,118225,122870,119928,129017,118331,119929
93,79704,1030,117961,118343,120722,124435,127527,118363,124436
94,28149,8715,117961,118052,119986,118321,117906,290919,118322
95,79092,3000,117961,118225,120551,118321,240983,290919,118322
96,19399,58493,117918,117919,117941,118568,131694,19721,118570
97,34924,240,117961,118386,118404,118321,117906,290919,118322
98,75078,22873,117951,117952,118221,117885,117886,117887,117888
99,16175,16850,117961,118225,119238,122849,149223,119095,122850
100,28149,28275,118315,118463,123089,118321,125206,290919,118322
101,19945,795,117961,118225,120551,118784,117906,290919,118786
102,20897,15956,117961,117969,121617,131849,148158,121620,131851
103,18229,174,117961,118413,121639,118321,117906,290919,118322
104,15716,51766,117902,118041,118556,280788,280788,292795,119082
105,5372,17244,117961,118052,120398,118784,127126,290919,118786
106,79092,13867,117961,118446,120317,120690,120690,290919,120692
107,40466,14815,117961,118327,118320,123045,123107,120518,123047
108,15868,1568,117961,118300,120410,118321,117906,290919,118322
109,25328,1553,117961,118225,123173,118054,120716,117887,118055
110,16191,59029,117887,118178,118320,118321,117906,290919,118322
111,39262,71192,117961,118386,118522,118321,117906,290919,118322
112,23990,1652,117961,118327,118507,179731,169009,117887,117973
113,40997,4549,117961,118225,120050,118321,117906,290919,118322
114,74966,2014,117961,117962,117904,118777,237279,308574,118779
115,25788,54303,117961,118327,118492,118451,125738,118453,118454
116,954,815,117961,118300,123719,117905,117906,290919,117908
117,14924,15779,117961,118300,118535,117905,117906,290919,117908
118,27714,1080,117961,118052,118378,118451,151171,118453,118454
119,3853,7014,117961,118446,119961,118259,125206,290919,118261
120,74754,17451,117961,118052,126137,118054,118054,117887,118055
121,5173,49646,119691,119692,118635,120903,118406,119695,120904
122,75901,2582,117961,118343,121710,307024,133833,118331,118332
123,23096,15795,119062,119091,118042,118043,118044,270488,118046
124,27122,51226,117961,118327,118320,124886,164752,118643,124888
125,39883,15887,117961,118052,120356,120357,310997,118424,120359
126,27623,7011,117961,118327,120685,118321,118448,290919,118322
127,18072,43588,117961,119256,119257,118995,122492,292795,118997
128,3264,69337,120140,120141,118492,118274,220988,292795,118276
129,33642,50538,118953,118954,117920,118568,131694,19721,118570
130,23961,30520,117902,117903,117945,128422,130134,118453,128424
131,25270,4057,117961,118343,119598,119433,133686,118424,119435
132,41334,28245,118315,118463,123089,117905,130219,290919,117908
133,1937,8686,117961,118327,119830,118321,117906,290919,118322
134,45828,2078,118114,118115,117920,118568,125937,19721,118570
135,40426,2610,117961,118327,121979,118841,128747,118643,118843
136,15933,5767,117961,118343,118344,118321,117906,290919,118322
137,20487,2991,117961,118343,118700,117905,117906,290919,117908
138,73214,4961,117961,118343,118833,307024,294485,118331,118332
139,43312,58705,117910,118855,117941,118568,281735,19721,118570
140,29621,3077,117961,118300,120312,124194,124195,118363,124196
141,4675,7551,117961,118052,118867,118321,117906,290919,118322
142,38469,105262,118953,118954,118246,179731,291378,117887,117973
143,79325,7445,117961,118343,122299,179731,118054,117887,117973
144,20364,15764,91261,118026,119362,119065,158390,118667,119067
145,27323,7076,117961,118225,119238,119093,139668,119095,119096
146,302049,2590,118169,118170,118556,117946,125711,292795,117948
147,18072,18080,117961,119256,119257,117946,118806,292795,117948
148,39327,15504,117961,118386,123656,118321,240983,290919,118322
149,33248,3085,117961,118300,125821,118834,251171,118424,118836
150,25991,1614,117961,118327,118507,129909,185973,118453,129911
151,42654,30527,117961,118225,120551,119928,127692,118331,119929
152,23921,3933,117961,118343,119796,119849,157686,118638,119851
153,45517,49802,117961,118343,118514,307024,294485,118331,118332
154,33054,5659,117961,118300,124725,118321,117906,290919,118322
155,28149,70692,118315,118316,118202,118321,117906,290919,118322
156,43188,5244,117961,118343,119598,118321,117906,290919,118322
157,28149,83351,117961,118386,119954,118318,168365,118205,118319
158,30952,70134,117961,117962,126930,134095,303450,118474,118475
159,34950,25262,117961,118327,118320,118523,310608,118331,118525
160,37124,52314,117961,118300,118301,119928,219829,118331,119929
161,32642,46472,117961,119256,119257,118995,118806,292795,118997
162,45580,1810,117961,118327,120559,118641,306399,118643,118644
163,17308,55132,118169,118170,118042,118054,119008,117887,118055
164,80814,17713,117961,118225,120663,118321,117906,290919,118322
165,38704,60181,117916,118011,117884,117885,117913,117887,117888
166,80746,8697,117961,118446,119064,118361,127527,118363,118364
167,6977,7647,117961,118300,119181,118321,117906,290919,118322
168,40456,7560,117961,118300,119181,118321,117906,290919,118322
169,38,100,120140,120141,142145,117905,156948,290919,117908
170,26437,85728,118212,118580,117895,117896,117913,117887,117898
171,31441,30527,117961,118225,120551,119928,127692,118331,119929
172,32270,3651,119062,119091,123125,124152,300136,118424,124154
173,42378,18449,117961,118300,119181,118465,159686,118467,118468
174,39333,7411,117961,118386,118746,118054,168337,117887,118055
175,34982,25293,117961,118386,123072,128764,130802,118612,128765
176,42085,25629,117961,118343,120291,120006,129545,118424,120008
177,33642,58520,118003,118004,117878,117879,117879,19721,117880
178,25993,7076,117961,118225,120041,120591,120592,119095,120593
179,4675,1325,117961,117962,118910,118321,117906,290919,118322
180,18072,57718,117961,119256,119257,117946,118806,292795,117948
181,27416,22363,118084,118085,117912,117879,117886,19721,117880
182,80452,30520,117902,117903,117945,128422,130134,118453,128424
183,78625,82626,118090,118091,117912,117885,117913,117887,117888
184,79092,8435,117961,118225,124449,307024,311622,118331,118332
185,42085,7029,117961,117962,120677,120357,149187,118424,120359
186,34432,54618,117961,118052,118821,117905,240983,290919,117908
187,34582,1409,117961,118300,118437,118685,139689,308574,118687
188,38470,53240,117876,117877,117878,117879,117879,19721,117880
189,44641,6235,117961,118343,118437,307024,311622,118331,118332
190,37138,4936,117961,118343,120126,124576,124577,118424,124578
191,16503,16566,117961,118327,120559,120618,304465,118643,120619
192,45300,48101,117918,117919,117941,118568,131694,19721,118570
193,37138,5030,117961,118343,120126,119433,133686,118424,119435
194,75834,4261,118212,118213,126955,118321,173628,290919,118322
195,42085,6732,117961,117969,6725,120527,275449,6725,120529
196,16443,7076,117961,118225,120323,119093,120324,119095,119096
197,34924,34927,117961,118327,120299,137969,217580,118612,137970
198,15365,3868,117961,118052,120096,117905,117906,290919,117908
199,42388,7029,117961,117962,120677,120357,149187,118424,120359
200,81076,54618,117961,118052,118821,118321,117906,290919,118322
201,32621,1437,118212,118213,118437,120812,192211,118638,120814
202,43242,2827,118887,118888,119136,119587,254340,118704,119589
203,37981,21083,118106,118107,117941,117879,121445,19721,117880
204,74196,7647,117961,118300,119181,118321,117906,290919,118322
205,74302,2069,121518,121519,117895,128093,144793,119184,128095
206,16459,3230,117961,118386,121961,118523,310608,118331,118525
207,16923,4718,117961,118446,120317,117905,117906,290919,117908
208,41276,50976,117961,118413,119968,118321,117906,290919,118322
209,25812,118151,118079,118080,117878,118370,118371,118372,118373
210,3853,4998,117961,118343,119598,307024,311622,118331,118332
211,79092,3656,117961,118300,118631,118924,153285,118667,118926
212,967,15459,118169,118170,135245,259173,143905,292795,118943
213,42093,5186,118887,118888,124656,118912,309291,118424,118914
214,16988,15608,117961,118343,118395,118396,269406,118398,118399
215,5334,771,117961,118300,120722,118321,117906,290919,118322
216,74190,1443,117961,118343,120722,118321,117906,290919,118322
217,7543,7398,117961,118225,119924,118321,240983,290919,118322
218,20351,1938,117961,118300,118066,179731,304465,117887,117973
219,33147,2014,117961,117962,118910,120773,127525,118960,120774
220,42031,71192,117961,118386,118522,117905,117906,290919,117908
221,45232,3048,119062,119091,119734,153957,155022,118667,153959
222,79092,8784,117961,118300,119890,118422,147040,118424,118425
223,41594,41595,121785,121786,120299,120300,292871,120302,120303
224,42367,46610,117902,118041,118556,280788,280788,292795,119082
225,15064,17261,117961,118343,118833,118054,120238,117887,118055
226,80507,17514,117961,118343,121747,118321,117906,290919,118322
227,25993,20648,118219,118220,117941,117879,117897,19721,117880
228,78602,5432,117961,118327,118391,117905,117906,290919,117908
229,17226,4993,117961,118300,118979,118912,309291,118424,118914
230,6977,8607,117961,118225,118403,117905,240983,290919,117908
231,36971,7454,117961,118413,122007,118321,117906,290919,118322
232,90381,74746,117961,118327,118933,118784,121873,290919,118786
233,39331,83351,117961,118386,119954,118318,311618,118205,118319
234,33147,15389,117961,118225,122870,124886,128018,118643,124888
235,28344,7434,117961,118343,118514,118321,117906,290919,118322
236,20292,311085,117926,117927,117884,117879,117886,19721,117880
237,45652,7553,117961,118225,118403,118321,117906,290919,118322
238,22598,8094,117961,118343,139876,117905,117906,290919,117908
239,34950,7660,117961,118386,120361,118321,117906,290919,118322
240,80943,15967,117961,118300,124942,117905,117906,290919,117908
241,38719,58489,117916,117917,117884,117885,117913,117887,117888
242,43876,46754,118079,118080,117878,117879,118177,19721,117880
243,34025,4100,118290,118291,120291,119928,278266,118331,119929
244,75305,16973,117961,118300,124942,118321,117906,290919,118322
245,15716,73407,117902,118041,117945,280788,280788,292795,119082
246,4675,7072,117961,117962,118352,117905,117906,290919,117908
247,45015,8592,119062,119091,118514,117905,117906,290919,117908
248,23842,5330,117961,118052,122938,120097,174445,270488,120099
249,1151,124899,117961,118327,120171,118054,118054,117887,118055
250,74261,189,117961,118413,121639,117905,240983,290919,117908
251,3853,23224,117961,118225,120535,118890,311441,118398,118892
252,41758,41795,118315,118316,118317,119351,256809,3130,119353
253,972,4901,119596,119597,119598,118293,118294,118295,118296
254,79092,59785,91261,118026,120671,121143,184917,249618,121145
255,23921,119074,118163,119075,119076,118834,311236,118424,118836
256,391,50185,118216,118587,117884,117885,117913,117887,117888
257,16503,8106,117961,118327,120559,118318,181945,118205,118319
258,33642,98683,117975,117976,117941,118568,281735,19721,118570
259,80308,15894,117961,118052,119986,118685,126297,308574,118687
260,42006,2908,117961,118343,118979,119433,133686,118424,119435
261,44722,16850,117961,118225,119238,119093,180121,119095,119096
262,75324,1911,117943,117944,118042,118043,118176,270488,118046
263,40955,100547,118212,118213,119136,123670,232072,121916,123672
264,34628,1065,117961,118327,120559,118641,132791,118643,118644
265,74190,85728,118212,118580,117895,117896,117897,117887,117898
266,74236,51138,117961,118413,119968,118321,117906,290919,118322
267,34591,2594,117961,118300,123472,117905,117906,290919,117908
268,1937,1482,117961,117962,118450,118841,128747,118643,118843
269,23966,124899,117961,118327,120171,118054,118054,117887,118055
270,34429,5507,117961,118413,120370,117905,117906,290919,117908
271,6977,4519,117961,118300,118783,117905,117906,290919,117908
272,70087,35693,117916,118011,117920,121067,229187,121069,121070
273,31441,30523,117961,118343,119984,123067,269406,118398,123068
274,25993,14862,117961,118225,118403,118980,301534,118295,118982
275,16988,5016,117961,118343,121710,120789,250337,118424,120791
276,20897,3608,117961,118052,120671,120418,232183,249618,120419
277,20364,125466,117902,117903,120171,118863,142453,118398,118865
278,79121,5192,119596,119597,118825,118293,118294,118295,118296
279,20277,20939,117980,117981,118246,179731,188582,117887,117973
280,34591,2594,117961,118300,123472,118321,117906,290919,118322
281,17249,4887,117961,118343,119598,118422,300136,118424,118425
282,17296,23224,117961,118225,120535,123067,269406,118398,123068
283,79299,51755,119280,119281,118754,118805,118806,118474,118807
284,16219,4004,117961,118343,118856,118321,117906,290919,118322
285,6215,6217,117961,118327,118328,120765,120765,118467,120767
286,44812,70264,117961,118343,120722,118777,279443,308574,118779
287,4675,3756,117961,117969,118970,118890,125128,118398,118892
288,39883,15895,117961,118052,120677,122067,300136,118424,122069
289,39450,3936,117943,117944,117945,280788,126042,292795,119082
290,26437,85728,118212,118580,117895,117896,117897,117887,117898
291,13878,14561,118095,118096,117941,117879,117897,19721,117880
292,32270,3656,117961,118300,118631,118924,153285,118667,118926
293,917,3654,117961,118300,118631,118826,168415,118424,118828
294,60040,4933,117961,118300,118458,126869,283548,118295,126870
295,77183,2409,117961,117962,117904,127782,123170,290919,127783
296,96500,7011,117961,118052,120685,118321,117906,290919,118322
297,20222,5560,118256,118257,117945,118995,119235,292795,118997
298,33237,2409,117961,117962,117904,119949,123170,290919,119951
299,79543,6108,117961,118386,118404,118321,117906,290919,118322
300,15720,16850,117961,118225,119092,122849,119094,119095,122850
301,18072,25872,118169,118170,119796,118172,129003,249618,118175
302,40328,6736,117961,117969,6725,122290,268766,6725,122292
303,14910,6482,117961,118052,118992,118321,118448,290919,118322
304,25287,18189,117961,118327,123757,118321,117906,290919,118322
305,31299,7212,117961,118300,124725,124194,145500,118363,124196
306,7678,744,117961,118300,120722,118321,117906,290919,118322
307,74909,8520,117961,118386,119954,118318,168365,118205,118319
308,4675,1930,122880,122974,122870,120097,281292,270488,120099
309,74646,770,117961,118300,119181,119346,302830,4673,119348
310,79092,7388,117961,118225,119924,118318,168365,118205,118319
311,75078,92887,118315,118463,118522,129229,147633,119788,129231
312,17308,14650,118219,118220,117920,117899,117899,19721,117900
313,31996,8430,117961,118225,118403,118321,117906,290919,118322
314,14858,27508,117929,117940,117941,118568,125259,19721,118570
315,5112,310793,120342,120343,119076,118834,124426,118424,118836
316,80538,5041,117961,118343,119598,119928,134544,118331,119929
317,17825,2305,117961,117962,119223,128230,302830,4673,128231
318,34950,34826,118555,118178,118320,117905,117906,290919,117908
319,4679,3838,117961,118225,119924,118321,117906,290919,118322
320,75078,3889,117961,118386,121668,117905,117906,290919,117908
321,1937,6216,117961,118327,118328,124886,306399,118643,124888
322,37557,19832,117961,118386,123757,118321,117906,290919,118322
323,20351,8106,117961,118327,120559,120560,304465,118643,120562
324,41441,1334,117961,117962,118910,179731,118368,117887,117973
325,15064,52687,117961,117962,117904,179731,131272,117887,117973
326,81355,56723,118315,118316,118317,133306,120689,118205,133308
327,4675,5899,117961,118327,120318,118777,296252,308574,118779
328,75834,42230,117961,118327,118744,117905,117906,290919,117908
329,27124,32242,117961,118327,118929,119849,282370,118638,119851
330,76626,2938,117961,118413,122007,117905,117906,290919,117908
331,16003,2225,117961,117962,118501,126110,126111,118504,126112
332,41334,28253,118315,118463,123089,118321,130219,290919,118322
333,5451,770,117961,118300,120722,118747,130134,118453,118749
334,20299,92071,117929,117930,117884,117879,117886,19721,117880
335,15673,2781,117961,118300,118783,118451,130134,118453,118454
336,86127,782,117961,118413,127522,118321,117906,290919,118322
337,78851,2109,117876,117877,120694,124886,205741,118643,124888
338,20349,1080,117961,118327,118378,120952,120953,118453,120954
339,34346,810,117961,118300,123719,118321,240983,290919,118322
340,73798,52925,117980,117981,117920,118568,156279,19721,118570
341,28294,8121,91261,118026,118746,117905,117906,290919,117908
342,312129,25607,117961,118343,118856,117905,117906,290919,117908
343,38725,27818,117916,117917,117912,118568,117886,19721,118570
344,33155,2014,117961,117962,117904,120773,127525,118960,120774
345,4675,25262,117961,118327,118320,122297,301475,118331,118899
346,80847,17225,117961,118300,118535,118784,118406,290919,118786
347,38800,3949,117961,117962,118352,118777,279443,308574,118779
348,45904,55934,118006,118007,117878,179731,121256,117887,117973
349,3853,1467,117961,118343,118833,118834,127160,118424,118836
350,18072,3266,117961,118225,120323,120591,120592,119095,120593
351,79092,7001,117961,118327,118933,121594,302830,4673,121596
352,4675,7639,117961,118300,118957,117905,172635,290919,117908
353,35788,82613,117961,118300,119984,118890,311441,118398,118892
354,31661,7032,117961,118052,118992,118259,133680,290919,118261
355,78175,1140,117961,117962,118352,117905,117906,290919,117908
356,79121,2270,117961,118413,118631,123737,127475,118960,123738
357,80903,2819,117961,118300,123472,118321,117906,290919,118322
358,78311,54672,117932,117933,117878,117899,121756,19721,117900
359,25569,214,117961,118343,6104,117905,117906,290919,117908
360,18913,27518,117929,117930,117920,179731,188537,117887,117973
361,13878,5604,117961,118343,119598,118636,235245,118638,118639
362,1020,7399,118212,118213,123201,117905,117906,290919,117908
363,80381,2270,117961,118413,277693,120773,118959,118960,120774
364,40462,14638,117961,118052,118992,118784,120474,290919,118786
365,34950,56565,117961,118327,122109,120172,230830,290919,120173
366,5893,6217,117961,118327,118328,118465,121927,118467,118468
367,42085,3979,117961,118343,120347,118368,128683,117887,118486
368,78602,5432,117961,118327,118391,118641,123881,118643,118644
369,23096,2610,117961,118327,121979,118321,117906,290919,118322
370,79422,41759,118315,118463,119214,117905,117906,290919,117908
371,40062,148913,118212,118213,118921,118890,305057,118398,118892
372,25241,70643,117961,118327,120299,137969,217580,118612,137970
373,25985,55643,118256,118257,117945,118274,118806,292795,118276
374,35188,52314,117961,118300,118301,118980,306795,118295,118982
375,42085,4438,117961,118386,121668,118777,279443,308574,118779
376,5906,6007,117961,118446,16232,120418,138419,249618,120419
377,18072,46661,118256,118257,117945,118995,118806,292795,118997
378,25364,51269,117961,118300,118360,118636,247760,118638,118639
379,80674,5178,117961,118343,118660,118826,158101,118424,118828
380,77199,50952,117961,118327,118929,118321,117906,290919,118322
381,41312,17010,117943,117944,117945,118274,231536,292795,118276
382,41234,8751,117932,117933,117878,117879,117879,19721,117880
383,4675,111936,117961,118300,118783,117905,240983,290919,117908
384,42972,4713,117961,118052,120398,122022,299505,119221,122024
385,25749,5557,118169,118170,118940,247659,232183,19721,247660
386,31983,5079,117961,118300,127284,120789,284092,118424,120791
387,42093,7122,117961,118225,118403,118259,117906,290919,118261
388,35644,4819,118290,118291,118292,118293,118294,118295,118296
389,79617,85475,117961,118300,120410,118784,117906,290919,118786
390,17249,148913,118212,118213,118921,118890,305057,118398,118892
391,79625,20447,117961,118327,120283,121527,133249,118398,121529
392,4675,14800,117961,117962,118352,179731,162809,117887,117973
393,33423,4600,117961,118446,122550,307024,311622,118331,118332
394,25993,5002,117961,118343,119598,120344,310997,118424,120346
395,6670,26320,117961,118327,118391,118321,117906,290919,118322
396,75834,3944,117961,118343,118514,117905,240983,290919,117908
397,25103,7076,117961,118225,119238,119093,121698,119095,119096
398,34577,852,117961,117962,122215,123737,118959,118960,123738
399,5502,49802,117961,118343,118514,118321,124844,290919,118322
400,25749,123313,118169,118170,118171,118172,118173,249618,118175
401,32270,2395,117961,118300,123055,118054,118054,117887,118055
402,6977,7023,117961,117962,119223,118259,118260,290919,118261
403,7543,6277,117961,118343,118437,117905,240983,290919,117908
404,23799,5047,117961,118300,127284,118826,236735,118424,118828
405,31825,4098,117961,118343,118292,120006,310997,118424,120008
406,34861,71208,117961,118386,123656,118321,129272,290919,118322
407,967,17733,117961,118300,119984,118396,269406,118398,118399
408,34613,3722,117961,118300,120059,121469,159141,118424,121471
409,17292,148913,118212,118213,118921,118890,305057,118398,118892
410,75245,20440,117890,117891,117878,117899,123862,19721,117900
411,20364,5027,117961,118343,119598,118834,133686,118424,118836
412,44812,8147,117961,118327,145424,118321,117906,290919,118322
413,33642,20495,118219,118220,117941,117879,117897,19721,117880
414,25988,121925,117961,118327,118933,118321,125206,290919,118322
415,45580,46254,117961,118327,126310,124886,306399,118643,124888
416,16251,5360,117961,118446,118447,118784,117906,290919,118786
417,42093,52140,118887,118888,124656,118980,236007,118295,118982
418,39939,25724,118290,118291,119136,120056,162453,118474,120058
419,1020,96562,117902,117903,118783,118028,118368,117887,118030
420,23921,820,117961,118300,123719,118777,279443,308574,118779
421,4675,5620,121005,151110,5606,118321,117906,290919,118322
422,37651,13386,118219,118220,118221,118568,268194,19721,118570
423,33642,56776,117916,117917,117920,118568,131694,19721,118570
424,37737,25514,117918,117919,118483,117879,121445,19721,117880
425,23964,61062,117961,118446,120368,119849,219966,118638,119851
426,16767,3526,117961,118225,120323,119093,152422,119095,119096
427,74156,7520,91261,118026,124725,117905,117906,290919,117908
428,81070,5496,91261,118026,118202,118321,117906,290919,118322
429,25326,3767,120864,120865,118360,118777,279443,308574,118779
430,80786,4272,117961,118343,120666,123045,123107,120518,123047
431,33147,6751,117961,117969,6725,125687,245631,6725,125689
432,107908,15395,117961,119256,148450,123670,212510,121916,123672
433,3826,1525,117961,118413,121639,118321,117906,290919,118322
434,80860,7369,117961,118386,118896,118321,117906,290919,118322
435,37951,2112,5110,117954,117895,117896,186208,117887,117898
436,4675,16724,118212,118213,120551,117905,240983,290919,117908
437,41457,25475,118717,118718,117895,117879,118250,19721,117880
438,32270,29575,117961,117969,120574,119976,148648,19793,119978
439,78085,11826,118090,118091,117920,123191,123191,19721,123192
440,19825,15412,117961,118343,127705,119849,170027,118638,119851
441,74310,7337,117961,118300,124725,123045,159051,120518,123047
442,1020,16569,117961,118327,120559,120560,304465,118643,120562
443,1020,3225,117961,118327,118929,118784,200462,290919,118786
444,74075,2225,117961,117962,118501,126110,126111,118504,126112
445,34076,2685,122880,122974,117945,117946,149467,292795,117948
446,34005,744,117961,118300,120722,117905,117906,290919,117908
447,14666,100147,117951,117952,117941,117879,117897,19721,117880
448,70202,7014,117961,118446,119961,118278,287351,290919,118279
449,29100,3770,117961,118343,118395,120647,311441,118398,120649
450,18278,2641,117961,118327,118391,118784,117906,290919,118786
451,19815,1311,117961,117962,118910,119346,4673,4673,119348
452,39373,50781,91261,118026,139759,118321,117906,290919,118322
453,6977,7344,117961,118225,120663,138019,153236,120518,138021
454,25993,65220,118602,118603,117941,117899,117899,19721,117900
455,41235,58999,118742,118743,117941,117885,117886,117887,117888
456,28586,17319,117961,117962,118791,121469,310997,118424,121471
457,75078,28163,118315,118316,120361,118784,162214,290919,118786
458,15716,15395,118555,118178,117945,123670,212510,121916,123672
459,23921,3509,118752,119070,119781,118563,194960,270488,118565
460,34109,185,119134,119135,118575,118172,307446,249618,118175
461,18072,32884,118573,118574,117945,117946,144259,292795,117948
462,42085,52105,118595,118596,81476,118422,170384,118424,118425
463,31228,1334,117961,117962,118910,118321,240983,290919,118322
464,74001,58404,118090,118091,117884,117885,117913,117887,117888
465,80566,770,117961,118300,119181,118451,130134,118453,118454
466,42508,50976,117961,118413,119968,117905,117906,290919,117908
467,42313,16244,117961,118052,120318,118784,117906,290919,118786
468,74431,6985,119134,119135,118437,118777,264725,308574,118779
469,31222,54684,117961,117962,118910,118777,279443,308574,118779
470,35068,4945,117961,118300,118360,118636,310589,118638,118639
471,75078,70777,118315,118463,118522,118321,117906,290919,118322
472,79092,1911,117943,117944,118042,118043,118043,270488,118046
473,78745,7460,117961,118300,118783,118784,147114,290919,118786
474,31661,17244,117961,118052,120398,120006,311622,118424,120008
475,25240,7807,117961,118327,118518,120097,124862,270488,120099
476,25753,55929,122532,122533,117945,280788,280788,292795,119082
477,73756,4918,117961,118300,123055,120344,311360,118424,120346
478,1020,15682,117961,118300,118957,117905,117906,290919,117908
479,973,4110,119596,119597,118292,118422,191064,118424,118425
480,25883,1958,118441,118442,118378,119192,300603,119184,119194
481,17308,25686,118541,118542,118543,126138,127068,124136,126140
482,75834,133801,119062,119091,118535,118321,117906,290919,118322
483,79121,5016,117961,118343,121710,120789,250337,118424,120791
484,35625,25607,117961,118343,118856,117905,117906,290919,117908
485,16241,2061,117961,118327,120383,118641,306399,118643,118644
486,45055,49283,117961,118300,119181,118321,117906,290919,118322
487,45828,61247,117910,117911,117920,118568,125937,19721,118570
488,33054,5396,117961,118343,119993,120773,118959,118960,120774
489,35897,79100,91261,118026,119362,119065,158390,118667,119067
490,31917,724,117961,118300,119181,118321,117906,290919,118322
491,17308,47104,117890,117891,117878,117879,117879,19721,117880
492,23096,69507,126918,126919,118042,118043,146409,270488,118046
493,21719,18027,117961,117969,120620,120621,120622,19793,120623
494,39474,7459,5110,117954,122672,125751,135104,118870,125753
495,18913,13742,117929,117940,117941,117885,117913,117887,117888
496,4675,7032,117961,118225,120551,133306,133307,118205,133308
497,26808,46503,120140,120141,118378,120952,202760,118453,120954
498,40391,42230,117961,118327,118744,117905,117906,290919,117908
499,3853,3085,117961,118300,125821,119849,154949,118638,119851
500,35498,13419,117961,118300,120059,120812,305057,118638,120814
501,33054,3116,117961,118300,147589,118054,118054,117887,118055
502,1151,4108,118887,118888,119136,119137,122564,118474,119139
503,27124,7807,117961,118327,118518,118207,190710,270488,118209
504,20271,27819,117916,118150,117884,117885,117913,117887,117888
505,15022,8415,117961,118052,118881,117905,117906,290919,117908
506,20364,5242,117961,118343,120671,121469,125853,118424,121471
507,27826,7344,117961,118225,120663,123648,127917,120518,123650
508,43302,7084,117961,118386,121961,118318,168365,118205,118319
509,35376,215806,118315,118316,123656,118321,290919,290919,118322
510,20178,4743,119062,130600,120663,117905,117906,290919,117908
511,41314,7789,118573,118574,117945,117946,144259,292795,117948
512,3853,4874,117961,118343,121747,122645,269808,119221,122647
513,33323,70274,119062,119091,118042,118563,118563,270488,118565
514,39262,6108,117961,118386,118404,118321,117906,290919,118322
515,26402,6021,117961,118413,122007,118321,118448,290919,118322
516,6977,770,117961,118300,120722,118451,142600,118453,118454
517,1937,5490,117961,117962,5488,118641,118642,118643,118644
518,79443,4004,117961,118343,118856,118451,230830,118453,118454
519,25192,49147,118887,118888,123719,118777,279443,308574,118779
520,40630,24709,117916,118011,117941,117879,117886,19721,117880
521,41575,4370,117961,118343,118514,118784,165715,290919,118786
522,81316,205,117961,118386,118746,118784,118785,290919,118786
523,81001,7490,118349,118350,122672,130857,125539,308574,130858
524,25326,8698,120864,120865,119824,117905,117906,290919,117908
525,6960,6982,117961,118300,118783,118321,117906,290919,118322
526,44976,43884,118555,118178,118556,117946,118557,292795,117948
527,44812,16986,118212,118213,123201,118784,118785,290919,118786
528,25993,13864,117961,118446,123858,119849,244844,118638,119851
529,79092,86857,117902,118041,118556,118995,118806,292795,118997
530,30932,50806,117961,118446,119961,118259,125889,290919,118261
531,37260,52481,117983,117984,117878,117879,117897,19721,117880
532,77049,16641,117929,117940,117941,118568,192106,19721,118570
533,73815,10987,119170,119171,140453,129229,225246,119788,129231
534,14354,50195,118079,118080,117878,117879,304519,19721,117880
535,70310,52007,117961,117962,118910,179731,118368,117887,117973
536,37567,7389,117961,118386,118746,118451,130134,118453,118454
537,4675,34461,117961,118327,120685,122060,160617,290919,122062
538,35540,61026,117929,117940,117941,118568,281735,19721,118570
539,41575,8592,119062,119091,118514,117905,117906,290919,117908
540,34958,34612,117961,118327,118320,118321,117906,290919,118322
541,75787,15541,118573,118574,118556,280788,127423,292795,119082
542,25210,22800,117961,118343,119796,118636,185784,118638,118639
543,80784,57757,117961,118343,142038,118321,118448,290919,118322
544,28149,28273,118315,118316,120764,119172,287381,118467,119174
545,27755,13201,117951,117952,117941,117885,117897,117887,117888
546,28149,18190,117961,118386,120361,117905,117906,290919,117908
547,38205,47555,118185,31010,117912,117885,117913,117887,117888
548,34057,70062,117961,118386,118746,118321,117906,290919,118322
549,39879,7710,117902,118041,117945,280788,280788,292795,119082
550,6977,6982,117961,118300,118783,118321,118448,290919,118322
551,34230,3966,117961,118343,122012,118685,120316,308574,118687
552,35376,8068,117961,118386,118635,118321,117906,290919,118322
553,33151,21037,117961,117969,19666,120647,202872,118398,120649
554,40864,55134,118216,118217,117878,118396,269406,118398,118399
555,38468,62541,117980,117981,118246,179731,119035,117887,117973
556,74700,7560,117961,118300,119181,118321,117906,290919,118322
557,42085,52736,119596,119597,118911,120789,171744,118424,120791
558,28149,8368,91261,118026,118202,118321,117906,290919,118322
559,7543,16735,117961,118300,118783,118321,117906,290919,118322
560,203,210,117961,118386,118746,117905,117906,290919,117908
561,79299,36958,122532,122533,118171,259173,208153,292795,118943
562,23489,5053,117961,118300,121108,120344,267189,118424,120346
563,25570,32,117961,118343,118514,117905,117906,290919,117908
564,967,15510,118169,118170,134743,130479,137505,119784,130481
565,75078,24974,91261,118026,118027,119529,123357,119006,119531
566,17849,17858,117961,118386,118673,119976,123220,19793,119978
567,278393,22819,117961,118225,119136,118702,140153,118704,118705
568,45904,17973,118006,118007,118810,122952,305581,19793,122954
569,78320,71984,118003,118004,117878,117879,117879,19721,117880
570,39264,123313,118290,118291,118171,118172,118173,249618,118175
571,18072,38902,118256,118257,117945,117946,118806,292795,117948
572,4685,70,119920,119921,119922,117905,129950,290919,117908
573,79611,50736,117961,118052,118821,118321,117906,290919,118322
574,20299,46832,117989,117990,118810,118811,309981,19793,118813
575,79121,3918,117961,118343,118660,118826,158101,118424,118828
576,76465,1605,117961,118327,128935,118396,235280,118398,118399
577,1969,19958,117961,118327,118552,118054,118054,117887,118055
578,40862,25242,117887,118178,118320,118641,306399,118643,118644
579,20743,8781,118084,118085,117920,119323,119456,19793,119325
580,13878,20606,118095,118096,117941,117899,117899,19721,117900
581,42304,770,117961,118300,120722,118451,142600,118453,118454
582,75834,20361,117961,117962,118352,118054,120325,117887,118055
583,79296,17128,117961,118300,119984,118396,300044,118398,118399
584,44750,3225,117961,118327,118929,118784,126514,290919,118786
585,73921,85475,117961,118300,120410,117905,117906,290919,117908
586,3853,4554,117961,118300,118514,118259,118260,290919,118261
587,32456,25262,117961,118327,118320,118685,311622,308574,118687
588,391,50641,117926,118124,117941,118568,167402,19721,118570
589,33230,2014,117961,117962,117904,118636,310589,118638,118639
590,32630,1140,117961,117962,118352,118321,240983,290919,118322
591,76416,3053,117961,118225,120663,118641,306399,118643,118644
592,41758,46608,118315,118463,122636,120773,123148,118960,120774
593,15716,58711,117961,119256,119257,118995,118806,292795,118997
594,4675,101472,117961,118343,119142,118318,311618,118205,118319
595,42093,4950,117961,118343,118911,118912,309291,118424,118914
596,17249,2395,117961,118300,123055,118054,118054,117887,118055
597,25993,5730,117961,118446,118833,120578,120579,118762,120580
598,39264,7716,118573,118574,118623,118995,286106,292795,118997
599,42031,71385,118315,118463,118522,118318,120689,118205,118319
600,39939,795,117961,118225,120551,118321,117906,290919,118322
601,40237,102232,91261,118026,118027,122989,124043,119006,122991
602,39879,15439,117902,118041,118556,280788,280788,292795,119082
603,44977,2260,117961,118343,119598,118422,300136,118424,118425
604,16613,3869,117961,118225,129617,118747,236002,118453,118749
605,41314,86857,117902,118041,118556,118274,118806,292795,118276
606,41269,71189,117961,118386,121883,119962,131188,118205,119964
607,42709,1480,122532,122533,118575,119192,129506,119184,119194
608,27356,36051,117961,118386,118635,119849,282370,118638,119851
609,15064,60827,117961,118225,119781,118054,167069,117887,118055
610,7543,15990,117961,118413,125133,119849,128470,118638,119851
611,45652,249,117961,118225,118403,117905,117906,290919,117908
612,1937,1475,119062,119091,118450,118028,153719,117887,118030
613,3853,59043,117961,118343,118514,118321,117906,290919,118322
614,79296,25872,118169,118170,118575,117946,135255,292795,117948
615,15720,16850,117961,118225,119238,122849,120324,119095,122850
616,7543,7370,117961,117962,118481,118321,117906,290919,118322
617,38468,82284,118953,118954,117884,117885,117913,117887,117888
618,19484,12128,118219,118220,118810,120033,120034,19793,120035
619,42085,2908,117961,118343,118979,120344,303717,118424,120346
620,37807,16049,117926,118124,81476,179731,120238,117887,117973
621,34924,55782,117961,118327,120299,123073,217580,118612,123075
622,16633,4728,117961,118343,123125,118685,120316,308574,118687
623,80850,5369,117961,118413,122007,118321,118448,290919,118322
624,34924,50952,117961,118327,118929,118321,117906,290919,118322
625,77300,5580,117902,118041,118556,118274,118806,292795,118276
626,74615,17790,117961,118225,119924,117905,117906,290919,117908
627,79092,2113,117951,117952,117920,118568,124610,19721,118570
628,23990,4584,117961,118300,120297,118321,240983,290919,118322
629,3853,17669,117961,118446,118514,118321,290919,290919,118322
630,16512,49772,91261,118026,118746,118451,126309,118453,118454
631,72345,8168,117961,118386,119954,119962,168365,118205,119964
632,23096,4004,117961,118343,118856,117905,117906,290919,117908
633,35793,1605,117961,118327,128935,118396,235280,118398,118399
634,34810,49961,117961,118225,118403,117905,117906,290919,117908
635,78730,17930,117961,118446,118810,118811,120605,19793,118813
636,6195,1146,117961,118225,120663,117905,240983,290919,117908
637,27230,49850,117961,118413,122007,118259,118260,290919,118261
638,81350,4419,117961,118300,118458,118293,118302,118295,118296
639,20218,15381,119280,119281,117945,280788,130913,292795,119082
640,75901,25630,117961,118343,120291,120497,234773,118424,120499
641,19484,20496,118219,118220,118221,117885,117886,117887,117888
642,73815,28150,118315,118316,119214,126820,242608,118638,126822
643,33054,8709,117961,118300,128830,118054,118054,117887,118055
644,4675,44022,117961,117962,122215,118321,160543,290919,118322
645,1020,7229,117902,117903,127168,118321,117906,290919,118322
646,33642,68641,117989,117990,117941,117879,117886,19721,117880
647,7543,7519,91261,118026,120671,118321,117906,290919,118322
648,40185,56359,117893,117894,117895,118568,264384,19721,118570
649,25734,3734,117961,118300,120059,123670,305057,121916,123672
650,37651,2163,118219,118220,120694,118777,130218,308574,118779
651,6977,144199,118658,125100,125101,118784,239344,290919,118786
652,29918,7424,5110,117954,122672,133111,306530,118870,133113
653,38,3697,117961,118327,118933,118747,130134,118453,118749
654,13878,57715,117961,118446,118701,118702,129679,118704,118705
655,36237,21033,117961,118300,123749,119849,166593,118638,119851
656,23964,7029,117961,117962,120677,120357,149187,118424,120359
657,25812,11987,118006,118007,117884,117885,117886,117887,117888
658,80239,1614,117961,118327,120171,118747,130134,118453,118749
659,28294,86279,117961,118343,118609,120357,120065,118424,120359
660,25993,770,117961,118300,118437,118451,130134,118453,118454
661,79092,3707,117961,118446,118684,119949,121350,290919,119951
662,40997,1539,117961,118225,121716,118777,279443,308574,118779
663,31441,3085,117961,118300,125821,119849,154949,118638,119851
664,32270,4787,117961,118300,123055,118054,118054,117887,118055
665,38764,210,117961,118386,118746,118321,240983,290919,118322
666,27752,58925,118212,119763,128350,119004,144111,119006,119007
667,39447,124033,124034,124035,117945,280788,126042,292795,119082
668,18418,5409,117961,118343,119993,118321,240983,290919,118322
669,34433,16642,117961,118300,81476,118321,117906,290919,118322
670,33642,55751,118602,118603,117941,118568,209163,19721,118570
671,17308,14650,118219,118220,117920,117879,117897,19721,117880
672,74827,7935,117961,118052,120539,117905,117906,290919,117908
673,18605,19986,117961,118225,125139,120773,118959,118960,120774
674,23971,18686,117961,118386,128823,118784,118785,290919,118786
675,32270,22855,117961,118300,118360,119849,310589,118638,119851
676,6302,98757,117959,117960,117941,117885,117913,117887,117888
677,25705,4213,118290,118291,118701,119587,119588,118704,119589
678,43963,59748,117961,118386,119954,117905,117906,290919,117908
679,6977,8707,117961,118300,19772,132096,168524,119095,132098
680,34924,3768,117961,118327,118862,120647,311441,118398,120649
681,1969,57580,119596,119597,125440,119192,130411,119184,119194
682,38972,58881,118256,118257,117945,117946,118806,292795,117948
683,1020,174,117961,118413,121639,118321,117906,290919,118322
684,23150,25293,117961,118386,128823,117905,117906,290919,117908
685,82376,6257,117961,118343,120722,118321,240983,290919,118322
686,740,1402,118290,118291,118437,120313,137017,118424,120315
687,3719,54656,117876,117877,117878,117879,117879,19721,117880
688,26918,873,117961,118413,120526,118784,152747,290919,118786
689,18380,53338,117961,117962,122215,119949,130085,290919,119951
690,70086,56026,117983,117984,117878,118568,292195,19721,118570
691,79121,5110,119134,119135,121108,118422,300136,118424,118425
692,26431,100835,118212,118213,118360,120632,248953,118131,120634
693,849,852,117961,117962,122215,121594,302830,4673,121596
694,28074,1409,117961,118300,118437,118685,139689,308574,118687
695,80564,6235,117961,118343,118437,119949,127527,290919,119951
696,20897,4724,117961,118386,118896,121414,127581,118704,121416
697,4675,7554,117961,118300,121176,118784,117906,290919,118786
698,37651,20504,118219,118220,118008,117885,117886,117887,117888
699,42350,28254,127044,127045,118821,117905,198921,290919,117908
700,40000,209,117961,118343,6104,117905,117906,290919,117908
701,28149,81903,118315,118316,118317,307024,310608,118331,118332
702,44641,5225,117961,118343,118458,120006,311622,118424,120008
703,13878,17002,5110,117954,117895,117899,117897,19721,117900
704,75957,45165,117902,117903,118341,118028,118368,117887,118030
705,18255,1443,117961,118343,120722,118321,117906,290919,118322
706,20231,15586,119280,119281,118623,126684,193644,292795,126685
707,32270,4952,117961,118343,120126,123615,133686,118424,123617
708,79121,3085,117961,118300,127284,118826,236735,118424,118828
709,25993,25687,117961,118343,118660,118924,124941,118667,118926
710,25210,5649,117961,118446,118684,118760,118761,118762,118763
711,4675,17244,117961,118052,120398,118784,127126,290919,118786
712,73110,20376,117902,117903,120171,120990,137612,118398,120992
713,80233,1334,117961,117962,118910,118451,130134,118453,118454
714,74154,6122,117961,118300,120026,118834,127160,118424,118836
715,15798,1331,117961,118225,118403,118747,130134,118453,118749
716,15714,57680,118256,118257,117945,280788,280788,292795,119082
717,4675,3043,117961,118413,118481,118321,117906,290919,118322
718,78023,107529,118953,118954,117884,117885,117913,117887,117888
719,74480,7553,117961,118225,118403,117905,240983,290919,117908
720,33642,50690,118269,118270,117878,117899,117899,19721,117900
721,72024,16125,117961,118052,120304,307024,311622,118331,118332
722,39262,18686,117961,118386,121883,118784,118785,290919,118786
723,25993,5330,117961,118052,122938,120097,174445,270488,120099
724,19399,58493,117918,117919,117941,117879,121445,19721,117880
725,25098,46503,120140,120141,121589,120952,120953,118453,120954
726,25098,1954,117961,117962,118501,120702,308462,118504,120704
727,40237,5196,117961,118052,118053,118207,127292,270488,118209
728,81350,5027,117961,118343,120126,119433,133686,118424,119435
729,974,7578,117961,118343,120722,118321,117906,290919,118322
730,19975,49823,117961,118300,127168,118321,117906,290919,118322
731,18235,8715,117961,118052,119986,118321,240983,290919,118322
732,74883,1541,117961,118225,123173,119093,123174,119095,119096
733,45104,124316,118887,118888,118889,118863,120991,118398,118865
734,73756,17058,117961,118300,120026,120006,136977,118424,120008
735,73756,2703,122880,122974,117945,117946,149568,292795,117948
736,43140,19642,117961,118413,118481,118321,117906,290919,118322
737,21915,47104,117890,117891,117878,117879,117879,19721,117880
738,33146,5238,119596,119597,118053,118207,174445,270488,118209
739,20293,58458,117926,118266,117884,117885,117913,117887,117888
740,30839,17218,117961,118300,118395,118890,125128,118398,118892
741,33146,46118,117961,118327,120171,118054,118054,117887,118055
742,19722,2307,117961,118300,119181,118784,120474,290919,118786
743,5729,5739,117961,118446,118684,118924,140784,118667,118926
744,5893,2199,4292,126095,118378,179731,179731,117887,117973
745,39332,36051,117961,118386,118635,118685,262400,308574,118687
746,75834,13871,117961,118300,118514,118321,117906,290919,118322
747,74627,17002,5110,117954,117895,117899,117897,19721,117900
748,18381,53338,117961,117962,122215,119949,130085,290919,119951
749,75834,4642,117961,118225,120551,118685,279443,308574,118687
750,17249,17058,117961,118300,120026,120006,136977,118424,120008
751,35376,17640,117961,118052,121668,118259,234813,290919,118261
752,79299,10494,117961,118225,120535,118890,311441,118398,118892
753,80431,8168,117961,118386,119954,118318,168365,118205,118319
754,36014,2270,117961,118413,277693,118451,130134,118453,118454
755,74870,15501,117961,117969,19666,118396,133290,118398,118399
756,33642,50581,118114,118115,117941,118568,281735,19721,118570
757,3853,17270,117961,118300,128830,118826,150790,118424,118828
758,25231,1652,117961,118327,118507,179731,135309,117887,117973
759,80647,17209,117961,118052,123144,118396,310598,118398,118399
760,43452,48938,118169,118170,119781,118043,224182,270488,118046
761,74302,53027,118602,118603,117920,119192,128322,119184,119194
762,32270,15608,117961,118343,118395,118396,269406,118398,118399
763,40762,5339,117961,118300,19772,123045,248000,120518,123047
764,35296,6199,117961,118225,120663,118321,117906,290919,118322
765,28315,3465,122880,122974,118042,118043,118043,270488,118046
766,79272,6082,117961,118327,118529,117905,117906,290919,117908
767,80905,16815,117961,117969,120823,120647,159097,118398,120649
768,42093,137983,118163,119075,119076,120789,126546,118424,120791
769,4675,71171,117961,118386,123844,118784,121926,290919,118786
770,32270,15902,117961,118052,120398,118834,136989,118424,118836
771,20364,2395,117961,118300,123055,118834,127160,118424,118836
772,20294,53250,117890,117891,117878,117879,117879,19721,117880
773,25322,93163,118163,118164,117878,117885,117879,117887,117888
774,73144,16125,117961,118052,120304,118459,156072,249618,118461
775,2997,770,117961,118300,118437,118451,130134,118453,118454
776,32642,46646,119280,119281,117945,126684,193644,292795,126685
777,39332,205,117961,118386,118746,118784,147114,290919,118786
778,36348,7133,117961,118327,118320,118321,240983,290919,118322
779,40867,17451,117961,118052,126137,133718,225564,124136,133719
780,27750,58466,118602,118603,117920,118568,118568,19721,118570
781,31183,57680,118256,118257,117945,118274,118806,292795,118276
782,23194,7020,122880,122974,121716,120611,136293,249618,120613
783,278393,52105,118595,118596,81476,118422,170384,118424,118425
784,15714,51793,117961,119256,119257,117946,118806,292795,117948
785,20897,3883,117961,118343,119195,119997,278014,118131,119998
786,75834,3881,117961,118343,118514,118321,117906,290919,118322
787,17308,4588,117961,118225,118403,118321,117906,290919,118322
788,45904,22307,117902,118041,118556,280788,280788,292795,119082
789,6671,4642,117961,118225,120551,118685,279443,308574,118687
790,27188,4589,117961,118327,120383,117905,290919,290919,117908
791,39262,28163,118315,118316,120361,118259,117906,290919,118261
792,35528,5649,117961,118446,118684,124305,124306,118762,124307
793,30999,17930,117961,118446,119969,118811,120605,19793,118813
794,34817,8008,117887,118178,118320,117905,240983,290919,117908
795,39883,15422,117961,118052,118867,120097,154656,270488,120099
796,38719,50213,118079,118080,117878,117879,117913,19721,117880
797,41594,32242,117961,118327,253965,118777,310608,308574,118779
798,25993,16971,117961,118343,119993,120516,310589,120518,120519
799,28315,3558,117902,118041,118042,118043,118044,270488,118046
800,3853,7079,117961,118343,118514,118685,197103,308574,118687
801,1020,743,117961,118343,120722,118321,117906,290919,118322
802,36267,23989,117961,118446,118701,118702,146532,118704,118705
803,26915,1398,117961,118300,120722,118321,117906,290919,118322
804,28315,3437,118573,118574,118042,118043,135536,270488,118046
805,80208,3722,117961,118300,120059,119849,124718,118638,119851
806,44797,20374,117902,117903,120171,120990,152438,118398,120992
807,39264,16900,118256,119428,118623,117946,286106,292795,117948
808,14570,18307,118106,118107,117920,119323,129197,19793,119325
809,79092,5174,117961,118343,127491,126516,217580,118612,126518
810,4650,19623,117961,118225,118403,117905,117906,290919,117908
811,32236,70646,117961,118327,118933,120690,120691,290919,120692
812,17791,17244,117961,118052,120398,118784,127126,290919,118786
813,42093,4886,117961,118343,118979,118422,155142,118424,118425
814,43431,19726,118290,118291,119136,134095,273109,118474,118475
815,43876,56604,118079,118080,117878,117879,118177,19721,117880
816,33054,4375,117961,118343,120347,118422,300136,118424,118425
817,40867,24973,91261,118026,118229,273308,118029,249618,118232
818,32270,2543,117961,118300,121405,118685,126297,308574,118687
819,35498,18040,117961,118300,118783,118321,117906,290919,118322
820,26981,7398,117961,118225,119924,118321,117906,290919,118322
821,23194,21045,117961,118300,120312,118368,141452,117887,118486
822,17814,12543,117961,118300,119019,125751,119771,118870,125753
823,17308,5730,117961,118446,118833,120578,120579,118762,120580
824,31299,3108,117961,118225,124449,120313,230838,118424,120315
825,20364,4904,119170,119171,121747,118834,127405,118424,118836
826,43395,2456,118752,118753,120995,117946,118806,292795,117948
827,79092,8435,117961,118225,124449,122129,150283,121916,122131
828,673,2781,117961,118300,118783,128230,302830,4673,128231
829,972,15902,117961,118052,120398,118834,136989,118424,118836
830,26436,50642,117893,117894,117895,117896,117897,117887,117898
831,42085,4219,117961,118300,120312,120313,157234,118424,120315
832,4675,122272,117961,118225,122273,122274,244154,3130,122275
833,77659,82358,117983,117984,117878,117885,118020,117887,117888
834,4685,13848,119920,119921,119922,118685,119923,308574,118687
835,41758,46608,118315,118463,122636,133111,133112,118870,133113
836,26816,5518,117961,118343,118514,119962,168365,118205,119964
837,38392,58703,117929,117940,117920,117885,117913,117887,117888
838,3853,6751,117961,117969,6725,127782,149781,290919,127783
839,33642,58458,117926,118266,117941,118568,281735,19721,118570
840,27785,4528,118752,119070,120054,119587,232820,118704,119589
841,20364,3963,117961,118300,125872,120344,311360,118424,120346
842,38704,84558,117893,117894,117895,117896,117897,117887,117898
843,42093,5113,117961,118300,119890,120497,258776,118424,120499
844,20271,90027,117916,118150,118599,179731,131017,117887,117973
845,74001,27872,118090,118091,117912,117885,117913,117887,117888
846,74549,4567,117961,118300,118514,118278,118260,290919,118279
847,36463,7796,118573,118574,118623,118995,129731,292795,118997
848,45903,3883,117961,118343,119987,118536,132799,308574,118539
849,33147,27104,117961,118327,118507,118890,138290,118398,118892
850,20364,4965,120864,121013,124133,124134,225335,124136,124137
851,17308,69507,126918,126919,118042,118043,146409,270488,118046
852,75717,2270,117961,118413,277693,118958,118959,118960,118961
853,80574,55667,117902,118041,117945,280788,130913,292795,119082
854,75216,51733,119280,119281,117945,126684,193644,292795,126685
855,39353,85475,117961,118300,120410,118321,117906,290919,118322
856,34983,15554,117961,118386,123144,118890,125128,118398,118892
857,42093,3267,117961,118052,120356,118054,118054,117887,118055
858,79092,9597,117961,118446,120317,129561,134531,3130,129563
859,79299,8606,117902,118041,118575,119949,131270,290919,119951
860,20364,4031,117961,118300,120026,118422,239205,118424,118425
861,42085,17243,117961,118300,120026,120344,311360,118424,120346
862,79092,15450,117916,117917,117941,117879,117886,19721,117880
863,39262,2983,117961,118343,118700,118321,117906,290919,118322
864,25287,101472,117961,118343,119142,118318,168365,118205,118319
865,20270,66771,117916,118011,117920,117879,117886,19721,117880
866,32642,1945,118256,118257,118450,128093,219357,119184,128095
867,42093,20601,118095,118096,118008,117885,118097,117887,117888
868,80758,21033,117961,118300,123749,166592,166593,118638,166594
869,6712,21824,117961,118446,118684,117905,117906,290919,117908
870,37567,8121,91261,118026,118746,117905,117906,290919,117908
871,14936,85475,117961,118300,120410,118321,117906,290919,118322
872,36822,65140,117980,117981,117884,117879,117886,19721,117880
873,2235,44917,117902,117903,118450,119192,269613,119184,119194
874,78565,5108,117961,118300,118395,118396,233714,118398,118399
875,23980,61016,119596,119597,119703,118912,174408,118424,118914
876,78360,22431,117961,118413,126229,118685,279443,308574,118687
877,972,2864,118887,118888,119031,118980,311577,118295,118982
878,391,102646,117926,118124,117884,117879,117886,19721,117880
879,79092,275544,117876,117877,117878,117879,117879,19721,117880
880,43386,7491,117961,118300,119181,118321,117906,290919,118322
881,6977,7314,117961,118300,121951,118321,117906,290919,118322
882,42093,7443,117961,118446,119961,118278,119962,290919,118279
883,79021,54303,117961,118327,118492,119949,125738,290919,119951
884,89850,28590,117961,118327,120685,118523,310608,118331,118525
885,32642,46610,117902,118041,118556,280788,280788,292795,119082
886,23976,124625,118725,118726,119076,118422,128102,118424,118425
887,20293,56606,118079,118080,117878,117885,118177,117887,117888
888,41576,5524,117961,118343,118514,117905,117906,290919,117908
889,33054,4928,117961,118300,118421,120344,222039,118424,120346
890,4675,1527,117961,118327,127470,117905,117906,290919,117908
891,4675,3225,117961,118327,123757,117905,117906,290919,117908
892,77178,2631,117961,118327,120624,307024,311622,118331,118332
893,41371,656,118090,118091,117912,117879,117886,19721,117880
894,25993,4147,117961,118300,118631,118422,300136,118424,118425
895,64721,53226,117983,117984,117878,118568,292195,19721,118570
896,16767,3526,117961,118225,124130,119093,120324,119095,119096
897,84625,16922,117961,117962,118501,118784,124402,290919,118786
898,4675,26009,117961,118052,119986,118685,120316,308574,118687
899,32398,6124,117961,118343,6104,117905,117906,290919,117908
900,40684,1012,117961,118225,119924,117905,117906,290919,117908
901,76884,85475,117961,118300,120410,118321,240983,290919,118322
902,79092,4488,117961,118413,126229,118259,117906,290919,118261
903,31200,3788,117961,118343,120722,118784,117906,290919,118786
904,38372,851,117961,117962,122215,117905,117906,290919,117908
905,34498,17196,120864,121013,124266,118422,300136,118424,118425
906,79969,8121,91261,118026,118746,117905,117906,290919,117908
907,75078,83216,91261,118026,123656,118278,151426,290919,118279
908,4675,51138,117961,118413,119968,117905,117906,290919,117908
909,25266,5021,117961,118300,118458,118293,118302,118295,118296
910,18418,1912,119134,119135,118042,117896,287998,117887,117898
911,19722,2942,117961,118343,119195,117905,117906,290919,117908
912,25322,123367,117932,117933,117878,118568,167210,19721,118570
913,15672,7339,117961,118300,118360,124194,130884,118363,124196
914,28581,7364,117902,117903,119181,117905,118036,290919,117908
915,31247,782,117961,118413,127522,118321,240983,290919,118322
916,73561,2818,119062,119091,6104,118747,130134,118453,118749
917,39518,7807,117961,118327,118518,120097,124862,270488,120099
918,5390,814,118887,118888,123719,118321,117906,290919,118322
919,26430,49632,118212,118580,117895,117885,117913,117887,117888
920,31441,13864,117961,118446,123858,119849,282370,118638,119851
921,80937,2294,117902,117903,118783,120773,123107,118960,120774
922,34579,770,117961,118300,120722,118451,130134,118453,118454
923,20897,8138,117961,118052,118378,135740,119771,119772,135742
924,32642,2519,118169,118170,118623,280788,193644,292795,119082
925,38719,117081,118079,118080,117878,117879,118177,19721,117880
926,32270,5225,117961,118343,118458,120006,311622,118424,120008
927,6977,6454,117961,118343,118856,118321,150358,290919,118322
928,79121,15390,117961,118300,120026,118054,118054,117887,118055
929,43504,3242,117961,118343,118514,117905,117906,290919,117908
930,72024,1755,117961,117962,119223,125793,137422,118643,125795
931,79092,50043,117961,118327,118929,124810,120612,249618,124812
932,41758,28163,118315,118316,120361,118321,264516,290919,118322
933,15805,8121,91261,118026,118746,117905,117906,290919,117908
934,43646,21844,117961,117969,126574,120647,160007,118398,120649
935,28943,6216,117961,118052,118328,124886,306399,118643,124888
936,15716,15610,118256,118257,117945,259173,119168,292795,118943
937,42085,17264,117961,118300,118825,118523,163100,118331,118525
938,80746,58865,117961,118446,119064,118702,142652,118704,118705
939,59023,15459,118169,118170,118575,117946,125297,292795,117948
940,23096,3313,118752,119070,118042,118043,151099,270488,118046
941,16008,46254,117961,118327,126310,124886,306399,118643,124888
942,20294,14302,117916,117917,118599,179731,118625,117887,117973
943,75078,13876,117961,118386,118404,118841,240982,118643,118843
944,43720,851,117961,117962,122215,117905,117906,290919,117908
945,42208,33265,117961,118327,118529,118368,141452,117887,118486
946,1020,71385,118315,118463,118522,118259,117906,290919,118261
947,45412,55627,117980,118076,131868,128093,163160,119184,128095
948,31183,15631,118256,119428,118623,126684,193644,292795,126685
949,75078,4478,117961,118386,118692,118321,117906,290919,118322
950,920,770,117961,118300,120722,118747,130134,118453,118749
951,27727,16850,117961,118225,119238,119093,120324,119095,119096
952,89172,19760,117961,117962,118352,118321,117906,290919,118322
953,17226,5015,117961,118300,118395,118890,311441,118398,118892
954,16003,2355,117961,117962,118501,118502,118503,118504,118505
955,1969,44917,117961,117962,118450,118451,130134,118453,118454
956,45144,56227,118602,118603,118008,117879,117897,19721,117880
957,16443,17618,117961,118052,126137,133718,121386,124136,133719
958,34924,26320,117961,118327,118391,118321,117906,290919,118322
959,6977,19717,117961,117962,118352,118321,117906,290919,118322
960,36422,58648,118120,118121,124051,117879,145545,19721,117880
961,15714,15530,118573,118574,117945,280788,127423,292795,119082
962,79092,1080,117961,118327,118378,118451,151171,118453,118454
963,80826,5396,117961,118343,120270,120773,118959,118960,120774
964,34950,69337,120140,120141,118492,118274,220988,292795,118276
965,3130,16125,117961,118052,120417,122274,244798,3130,122275
966,14955,20447,117961,118327,120283,121527,133249,118398,121529
967,32270,15902,117961,118052,120398,118422,136989,118424,118425
968,20299,19051,117929,117930,117884,117885,117913,117887,117888
969,75212,54684,117961,117962,118910,118777,279443,308574,118779
970,14912,6982,117961,118300,118783,117905,117906,290919,117908
971,38809,18686,117961,118386,121883,118784,118785,290919,118786
972,6156,5730,117961,118446,120026,120578,137493,118762,120580
973,3853,17727,118169,118170,118171,118172,118173,249618,118175
974,36014,2296,117961,118413,127522,118451,256937,118453,118454
975,79092,7369,117961,118386,118896,118321,117906,290919,118322
976,39883,3868,117961,118386,120096,118784,117906,290919,118786
977,15715,15381,119280,119281,117945,280788,130913,292795,119082
978,42668,16065,117961,118225,120551,118777,279443,308574,118779
979,6960,51138,117961,118413,119968,118321,117906,290919,118322
980,18072,58881,118256,118257,117945,117946,118806,292795,117948
981,42362,46254,117961,118327,126310,118641,306399,118643,118644
982,30932,4474,117961,118446,119064,118321,118448,290919,118322
983,4675,1816,117961,118413,122007,120690,136365,290919,120692
984,15668,2583,118752,118753,117945,118274,128130,292795,118276
985,45192,6284,118212,118213,120551,117905,134159,290919,117908
986,91176,7016,117961,118300,119181,118321,117906,290919,118322
987,4675,7525,117961,118225,120551,118321,118406,290919,118322
988,73580,3242,117961,118343,118514,117905,117906,290919,117908
989,45856,5568,121785,121786,118492,118207,174445,270488,118209
990,78175,4589,117961,118327,120383,117905,240983,290919,117908
991,32270,5228,119596,119597,168533,120789,301124,118424,120791
992,74310,14889,117961,118300,120722,118321,117906,290919,118322
993,75443,2395,117961,118300,123055,120006,129545,118424,120008
994,31823,5089,117961,118300,118514,120516,123107,120518,120519
995,41758,28163,118315,118316,120361,118259,117906,290919,118261
996,17308,19623,117961,118225,118403,118784,117906,290919,118786
997,20897,17920,117961,117962,118673,118811,286597,19793,118813
998,27124,26320,117961,118327,118391,118321,117906,290919,118322
999,32270,53280,118290,118291,118727,118834,202884,118424,118836
1000,23096,16971,117961,118343,119993,125793,125794,118643,125795
1001,17308,3266,117961,118225,120323,120591,120592,119095,120593
1002,41685,17465,91261,118026,118202,118203,118204,118205,118206
1003,34579,1443,117961,118343,120722,118784,117906,290919,118786
1004,312129,18190,117961,118386,120361,117905,117906,290919,117908
1005,19989,1600,117961,118327,118507,118054,120514,117887,118055
1006,19312,14560,117951,117952,117920,117879,117897,19721,117880
1007,1529,15415,117961,118225,123173,118054,118054,117887,118055
1008,6725,6822,117961,117969,6725,126264,198845,6725,126266
1009,78745,15824,117961,118225,120323,120591,127477,119095,120593
1010,77295,28890,117961,118327,118529,122060,224977,290919,122062
1011,79092,22504,117961,118300,123055,120344,128788,118424,120346
1012,15030,5423,117961,118327,118391,123648,123107,120518,123650
1013,42085,59765,117961,118386,121961,118912,309291,118424,118914
1014,34817,59347,117961,118327,118320,118321,117906,290919,118322
1015,79178,52898,118212,118580,119362,121015,262187,119006,121017
1016,4675,820,117961,118300,123719,118784,117906,290919,118786
1017,45300,4945,117961,118300,118360,118129,122064,118131,118132
1018,15716,1723,117961,119256,119257,280788,280788,292795,119082
1019,78240,2594,117961,118300,123472,118321,117906,290919,118322
1020,45143,5238,119596,119597,118053,118207,174445,270488,118209
1021,42085,15887,117961,118052,120356,126516,300136,118612,126518
1022,1020,195311,119301,119302,119303,118318,168365,118205,118319
1023,36463,7716,118573,118574,118623,118995,286106,292795,118997
1024,73742,2409,117961,117962,117904,118368,118368,117887,118486
1025,23966,51124,117961,118300,118631,118422,161852,118424,118425
1026,35788,16527,91261,118026,118202,118321,117906,290919,118322
1027,38391,36010,117893,117894,117895,117896,117897,117887,117898
1028,80251,2594,117961,118300,120410,117905,117906,290919,117908
1029,6725,6771,117961,117969,6725,120527,298066,6725,120529
1030,42085,52735,117961,118052,120356,122067,127906,118424,122069
1031,34057,1350,117961,118052,120096,117905,117906,290919,117908
1032,75078,24916,91261,118026,118027,273308,120072,249618,118232
1033,15678,8370,117961,118300,121176,120560,304465,118643,120562
1034,14570,13201,117951,117952,117941,118568,125168,19721,118570
1035,972,4837,117961,118300,120026,119433,133686,118424,119435
1036,17308,2582,117961,118343,121710,307024,133833,118331,118332
1037,78422,8715,117961,118052,119986,118321,240983,290919,118322
1038,6488,3692,117961,118413,126229,118784,117906,290919,118786
1039,16199,87908,117961,118413,120370,118321,117906,290919,118322
1040,969,3281,117961,118225,119238,122849,120324,119095,122850
1041,6977,7021,117961,118300,118783,118321,117906,290919,118322
1042,25865,15824,117961,118225,120323,120591,120324,119095,120593
1043,43110,2612,117961,118386,123901,117905,117906,290919,117908
1044,81316,21023,117961,118052,118992,307024,311622,118331,118332
1045,87843,6482,117961,118343,118992,118321,117906,290919,118322
1046,35381,59347,117961,118327,118320,118321,118448,290919,118322
1047,23921,5152,117961,118300,118597,118054,119601,117887,118055
1048,75078,75709,118315,118463,118522,118321,117906,290919,118322
1049,37737,60055,118079,118080,117878,117879,118177,19721,117880
1050,75078,7660,117961,118386,121961,117905,117906,290919,117908
1051,80320,2395,117961,118300,123055,118728,301534,118295,118730
1052,42093,55119,119062,119091,123125,134095,300136,118474,118475
1053,27082,49961,117961,118225,124380,117905,117906,290919,117908
1054,37410,58925,118212,119763,128350,128351,144111,118347,128353
1055,19310,47858,5110,117954,117878,117885,117955,117887,117888
1056,42805,9959,118742,118743,117920,118568,127564,19721,118570
1057,76626,2938,117961,118413,122007,118321,117906,290919,118322
1058,37622,74884,126918,126919,118042,118563,176749,270488,118565
1059,42031,99960,118315,118463,118522,123651,121927,118467,123652
1060,76446,8234,117961,118300,118783,118321,117906,290919,118322
1061,20284,50323,117980,117981,117941,117885,117913,117887,117888
1062,31825,37504,117961,118300,120410,122645,131276,119221,122647
1063,31652,46473,122532,122533,117945,280788,280788,292795,119082
1064,5112,4763,117961,118300,118395,118396,269406,118398,118399
1065,75078,126057,118315,118463,122636,118465,126058,118467,118468
1066,112631,16928,117961,118446,120317,117905,117906,290919,117908
1067,78855,41759,118315,118463,119214,118321,150358,290919,118322
1068,80669,7369,117961,118386,118896,118321,117906,290919,118322
1069,35528,3705,118290,118291,118631,118293,118294,118295,118296
1070,3853,3242,117961,118343,118514,118321,240983,290919,118322
1071,6692,72209,117961,118225,124948,118451,130134,118453,118454
1072,25274,4936,117961,118343,118292,119433,133686,118424,119435
1073,43017,27878,117916,118150,117884,118568,124376,19721,118570
1074,42093,2837,118887,118888,118631,118422,300136,118424,118425
1075,80202,2296,117961,118413,277693,123737,127475,118960,123738
1076,43650,52194,117961,118052,126137,133718,121386,124136,133719
1077,42093,14857,117961,118300,121176,118784,117906,290919,118786
1078,15672,7448,117961,118300,118360,117905,117906,290919,117908
1079,75834,3889,117961,118386,121668,118685,279443,308574,118687
1080,13878,100990,117929,117930,117912,117879,117886,19721,117880
1081,4675,54684,117961,117962,118910,118685,128848,308574,118687
1082,25993,25293,117961,118386,123072,121414,130802,118704,121416
1083,75834,16687,119134,119135,120054,118702,303995,118704,118705
1084,31441,22494,117961,118343,119598,119928,134544,118331,119929
1085,79296,74943,118256,118257,117945,280788,125666,292795,119082
1086,31761,50015,117961,118343,119598,118422,300136,118424,118425
1087,42508,6982,117961,118300,118360,117905,117906,290919,117908
1088,31200,6225,117961,118343,118437,117905,117906,290919,117908
1089,34080,45965,117961,118386,120677,118523,294485,118331,118525
1090,73798,1550,117961,118225,123173,118054,119601,117887,118055
1091,20351,6220,117961,118327,121645,118777,279443,308574,118779
1092,4675,50952,117961,118327,118929,118685,279443,308574,118687
1093,75876,51740,118752,119070,118754,118805,130913,118474,118807
1094,39939,7675,117961,118225,120535,120647,311441,118398,120649
1095,4675,7220,117961,118225,120551,117905,186454,290919,117908
1096,19945,50040,117961,118327,118391,117905,117906,290919,117908
1097,34211,4738,117961,118300,118458,120006,311622,118424,120008
1098,972,52072,119596,119597,119598,135809,135810,118331,135811
1099,73876,7807,117961,118327,118518,120097,146705,270488,120099
1100,36480,78444,118555,118178,121023,259173,121024,292795,118943
1101,38707,50267,118742,118743,117920,118568,124610,19721,118570
1102,15369,51748,117961,118343,119796,118530,278014,118131,118532
1103,27407,4886,117961,118343,118979,118422,155142,118424,118425
1104,35914,6982,117961,118300,118783,118321,117906,290919,118322
1105,80464,2343,119691,119692,118635,122967,311441,119695,122969
1106,15720,7076,117961,118225,120323,119093,136840,119095,119096
1107,39863,7133,117961,118327,118320,117905,117906,290919,117908
1108,75834,7506,117961,118446,120317,117905,117906,290919,117908
1109,45652,9237,117961,118225,120551,120690,127922,290919,120692
1110,39262,5330,117961,118052,118867,118685,279443,308574,118687
1111,4650,49961,117961,118225,118403,117905,117906,290919,117908
1112,25993,3526,117961,118225,124130,119093,120324,119095,119096
1113,79296,7445,117961,118343,122299,179731,118054,117887,117973
1114,7541,2229,117961,118300,118450,119192,132731,119184,119194
1115,20312,53027,118602,118603,117920,119192,128322,119184,119194
1116,41594,7822,117961,118327,118492,132692,174445,270488,132694
1117,37981,27898,118106,118107,117941,117879,122853,19721,117880
1118,391,54419,117926,118266,117884,117879,117886,19721,117880
1119,30999,17930,117961,118446,128742,118811,120605,19793,118813
1120,15064,17654,117961,118052,118229,118054,118054,117887,118055
1121,79092,3889,117961,118386,121668,117905,240983,290919,117908
1122,1937,2017,117961,118052,121645,118054,118054,117887,118055
1123,36429,43588,117961,119256,119257,118995,122492,292795,118997
1124,25287,4500,117961,118052,118881,117905,117906,290919,117908
1125,37785,311203,118212,118213,121716,121372,221283,119184,121374
1126,15716,58910,117902,118041,117945,280788,280788,292795,119082
1127,15365,49772,91261,118026,118746,118747,126309,118453,118749
1128,919,1397,117961,118300,120722,117905,240983,290919,117908
1129,17249,15542,117961,118300,118395,118396,300044,118398,118399
1130,33248,4936,117961,118343,118292,120497,133686,118424,120499
1131,33147,116406,117961,117962,120677,122067,297566,118424,122069
1132,20292,56010,117926,118124,117884,117879,117886,19721,117880
1133,34498,4897,118887,118888,120026,120344,298784,118424,120346
1134,18418,4057,117961,118343,119598,118834,133686,118424,118836
1135,1020,50613,117916,118150,118810,118568,159905,19721,118570
1136,73196,4515,117961,118225,119136,118636,310589,118638,118639
1137,76561,2649,117961,118413,120526,117905,117906,290919,117908
1138,79121,61016,119596,119597,119703,118912,174408,118424,118914
1139,14570,2908,117961,118343,118979,118834,133686,118424,118836
1140,73485,84891,120342,120343,118631,119346,117906,4673,119348
1141,39630,6257,117961,118343,120722,118321,117906,290919,118322
1142,20293,96444,117926,118124,117884,117885,117913,117887,117888
1143,24884,4263,121785,121786,119142,117905,117906,290919,117908
1144,27323,16850,117961,118225,122298,119093,162960,119095,119096
1145,971,6235,117961,118343,118437,124194,249872,118363,124196
1146,75901,4258,117961,118343,119598,118422,300136,118424,118425
1147,42085,4110,119596,119597,118292,118728,282017,118295,118730
1148,43876,56602,118079,118080,117878,117879,141959,19721,117880
1149,30868,57212,117980,117981,118246,179731,118247,117887,117973
1150,20364,7858,91261,118026,119362,119363,307210,118667,119365
1151,80210,2294,117902,117903,118783,117905,118036,290919,117908
1152,34832,6216,117961,118327,118328,118841,123378,118643,118843
1153,22682,4871,117961,118300,125872,120006,159698,118424,120008
1154,79092,18011,117961,117969,118560,118674,131356,19793,118676
1155,38706,4375,117961,118343,120347,118422,300136,118424,118425
1156,79121,49454,117961,118300,147589,118054,118054,117887,118055
1157,45624,23347,117961,118052,119408,118685,279443,308574,118687
1158,29304,46565,117989,117990,117912,117885,117913,117887,117888
1159,2997,744,117961,118300,120722,118321,117906,290919,118322
1160,29304,58696,117975,117976,117941,117879,117886,19721,117880
1161,23181,12191,117876,117877,117878,179731,118157,117887,117973
1162,38468,27463,118582,120216,117895,117896,117913,117887,117898
1163,6960,86387,117961,118327,4674,118321,117906,290919,118322
1164,3853,25724,118290,118291,119136,120056,155541,118474,120058
1165,80710,141,117961,118225,122273,117905,240983,290919,117908
1166,41576,3944,117961,118343,118514,117905,240983,290919,117908
1167,75901,2260,117961,118343,119598,120497,223125,118424,120499
1168,27082,85631,117961,118225,137996,119351,137997,3130,119353
1169,278393,121925,117961,118327,118933,118784,118785,290919,118786
1170,80701,3838,117961,118225,119924,117905,117906,290919,117908
1171,26437,8410,118212,118580,117895,117885,117913,117887,117888
1172,1969,1065,117961,118327,121589,118641,118842,118643,118644
1173,44914,2270,117961,118413,120666,120773,118959,118960,120774
1174,31760,4952,117961,118343,120126,123615,133686,118424,123617
1175,80784,4272,117961,118343,120666,123045,123107,120518,123047
1176,53101,87,117961,118446,118447,118321,118448,290919,118322
1177,40997,1539,117961,118225,121716,118685,279443,308574,118687
1178,20487,2983,117961,118343,118700,118321,118448,290919,118322
1179,1020,4659,117961,118225,120663,117905,290919,290919,117908
1180,14570,57819,117980,117981,118810,119323,167397,19793,119325
1181,32634,71317,117961,118300,124816,130857,130218,308574,130858
1182,75078,17578,117961,117962,120677,120812,126079,118638,120814
1183,18418,82613,117961,118300,119984,118890,311441,118398,118892
1184,78855,79876,117961,118386,118404,120115,130884,119695,120117
1185,31411,52426,118887,118888,124656,118912,309291,118424,118914
1186,27623,28590,117961,118327,120685,117905,240983,290919,117908
1187,80646,13799,117961,118052,120356,120357,310997,118424,120359
1188,32642,58702,118256,118257,117945,126684,280788,292795,126685
1189,732,770,117961,118300,120722,118451,130134,118453,118454
1190,42093,8229,117961,118300,28618,119351,149246,3130,119353
1191,16985,5053,117961,118300,121108,120344,267189,118424,120346
1192,27323,54635,117961,118225,119238,119093,150341,119095,119096
1193,74343,15888,118595,118596,81476,120344,233010,118424,120346
1194,18418,3763,117961,118300,120059,120812,310589,118638,120814
1195,17308,17603,118541,118542,117945,128903,126800,292795,128905
1196,42972,29762,117961,118052,119243,118054,120716,117887,118055
1197,36919,15887,117961,118052,120356,120357,310997,118424,120359
1198,3853,17212,117961,118446,126352,152308,152309,118612,152310
1199,4675,14789,117961,118327,127470,118321,117906,290919,118322
1200,80528,5030,117961,118343,120126,119433,133686,118424,119435
1201,917,15785,117961,118343,118395,120647,120647,118398,120649
1202,15720,15395,118256,118257,119796,123670,212510,121916,123672
1203,38468,13193,118349,118350,117895,118194,118195,117887,118196
1204,1969,1088,117961,118327,119830,117905,117906,290919,117908
1205,5893,7987,117961,118327,120383,118321,149826,290919,118322
1206,43629,27293,120864,121013,128516,118636,302318,118638,118639
1207,25287,25293,117961,118386,118317,118523,306404,118331,118525
1208,5695,820,117961,118300,123719,117905,172635,290919,117908
1209,97515,7807,117961,118327,118518,118043,118756,270488,118046
1210,3264,60790,117961,118052,118867,307024,311622,118331,118332
1211,13878,53251,117983,117984,117878,117879,292195,19721,117880
1212,7543,2407,117961,118446,120317,118321,245058,290919,118322
1213,20364,806,117961,118300,123719,117905,117906,290919,117908
1214,34583,7578,117961,118343,118437,117905,117906,290919,117908
1215,5112,5127,117961,118300,118597,118834,146010,118424,118836
1216,96928,14800,117961,117962,118352,118784,117906,290919,118786
1217,79363,70264,117961,118343,118437,118523,306404,118331,118525
1218,17308,15904,117961,118052,121949,118636,121809,118638,118639
1219,18418,21033,117961,118300,123749,118636,161129,118638,118639
1220,80199,6196,117961,118225,120663,118784,118785,290919,118786
1221,75834,17669,117961,118446,118514,118321,290919,290919,118322
1222,278393,3763,117961,118300,120059,120812,310589,118638,120814
1223,25993,8785,117961,117962,117904,118636,310589,118638,118639
1224,79954,27214,117961,118386,118733,118523,310608,118331,118525
1225,5371,866,117961,118413,120526,118259,132668,290919,118261
1226,15703,2109,117876,117877,120694,124886,205741,118643,124888
1227,29100,3281,117961,118225,120323,119093,120324,119095,119096
1228,75901,53094,122532,122533,117945,280788,280788,292795,119082
1229,80205,7069,117961,118386,123844,117905,240983,290919,117908
1230,80782,4272,117961,118343,120666,123045,123107,120518,123047
1231,76415,4659,117961,118225,120663,117905,290919,290919,117908
1232,27356,7369,117961,118386,118896,118259,117906,290919,118261
1233,4675,1325,117961,117962,118910,117905,117906,290919,117908
1234,80905,15626,117961,118386,129128,120516,307024,120518,120519
1235,35376,5511,117961,118386,120361,117905,117906,290919,117908
1236,41385,46646,119280,119281,118623,126684,130913,292795,126685
1237,75901,820,117961,118300,123719,118784,117906,290919,118786
1238,44722,16850,117961,118225,122298,120591,127477,119095,120593
1239,16116,1396,117961,118300,120059,134655,134656,118424,134657
1240,40069,4871,117961,118300,120144,118054,118054,117887,118055
1241,28073,13827,117961,118343,118514,118777,279443,308574,118779
1242,27082,6199,117961,118225,120663,118321,117906,290919,118322
1243,75834,49655,117961,118446,122550,122551,117906,118762,122552
1244,972,4993,117961,118343,118979,118826,134537,118424,118828
1245,80780,15608,117961,118343,118395,118890,125128,118398,118892
1246,18072,51138,117961,118413,119968,118777,279443,308574,118779
1247,80555,2947,118212,118213,123201,117905,123202,290919,117908
1248,17308,5030,117961,118343,120126,120497,223125,118424,120499
1249,20289,50435,118120,118121,117941,117879,117886,19721,117880
1250,3853,61016,119596,119597,119703,118912,174408,118424,118914
1251,278393,5697,117961,118386,118692,118321,240983,290919,118322
1252,5334,1398,117961,118300,120722,118784,130735,290919,118786
1253,80646,20394,117961,118052,119954,122129,305057,121916,122131
1254,45904,55132,118169,118170,118042,118563,158413,270488,118565
1255,26985,132529,117902,117903,132530,117905,117906,290919,117908
1256,33248,52105,118595,118596,81476,118422,170384,118424,118425
1257,76860,25558,118990,118991,118992,307024,311622,118331,118332
1258,33054,8229,117961,118300,28618,119351,149246,3130,119353
1259,36050,56744,117961,118386,118635,118636,310589,118638,118639
1260,4675,49577,117961,118327,118933,118321,153318,290919,118322
1261,42508,3239,117961,118300,118597,123178,159048,3130,123180
1262,20299,19858,117929,117940,117941,117879,117886,19721,117880
1263,37942,78024,118181,118182,118221,117885,117886,117887,117888
1264,35525,17002,5110,117954,117895,118568,281735,19721,118570
1265,27082,6157,117961,118446,118684,118685,279443,308574,118687
1266,41758,28481,118315,118316,140453,129229,187845,119788,129231
1267,4675,7370,117961,118413,118481,127782,230830,290919,127783
1268,25098,118962,120140,120141,4674,118321,213944,290919,118322
1269,25993,5244,117961,118343,119598,118980,133686,118295,118982
1270,17249,4715,117961,118300,125872,118422,249904,118424,118425
1271,14570,20508,118219,118220,117941,127700,125168,19721,127702
1272,6977,5140,117961,118343,121710,118784,126514,290919,118786
1273,39007,918,117961,118300,118458,118980,187517,118295,118982
1274,76446,4511,117961,118300,119181,118321,240983,290919,118322
1275,80723,16971,117961,118343,119993,120516,310589,120518,120519
1276,45300,15888,118595,118596,81476,179731,233390,117887,117973
1277,35940,16850,117961,118225,119092,120591,120592,119095,120593
1278,34810,22948,117961,118225,118403,118321,117906,290919,118322
1279,75834,33266,117961,118300,123719,117905,240983,290919,117908
1280,39863,54248,117961,118327,120559,118641,306399,118643,118644
1281,79121,49566,118595,118596,119993,117905,117906,290919,117908
1282,19722,4189,117961,118343,119987,117905,117906,290919,117908
1283,31858,19857,117929,117940,117941,118568,281735,19721,118570
1284,23096,17640,117961,118052,118706,118318,140982,118205,118319
1285,28149,17640,117961,118052,118881,119962,168365,118205,119964
1286,74302,2068,117980,117981,131868,118568,174308,19721,118570
1287,39262,18073,118256,118257,118623,117946,119722,292795,117948
1288,43876,90820,118079,118080,117878,117879,266986,19721,117880
1289,15716,32732,118573,118574,117945,117946,144259,292795,117948
1290,39325,17561,91261,118026,118202,118278,151426,290919,118279
1291,45192,17713,117961,118225,120663,117905,117906,290919,117908
1292,37018,31261,118582,118583,117945,280788,136634,292795,119082
1293,74508,8121,91261,118026,118746,117905,117906,290919,117908
1294,1969,49987,117959,117960,117920,118568,133542,19721,118570
1295,44474,5524,117961,118343,118514,117905,117906,290919,117908
1296,41594,50040,117961,118327,118391,118321,117906,290919,118322
1297,34583,669,117961,118343,120722,117905,117906,290919,117908
1298,15369,3884,118573,118574,118575,118172,152755,249618,118175
1299,36296,6199,117961,118225,120663,118321,117906,290919,118322
1300,22956,71189,117961,118386,121883,118318,168365,118205,118319
1301,971,53081,117961,118343,119598,119433,133686,118424,119435
1302,36575,49063,118555,118178,117945,118995,310973,292795,118997
1303,34577,44022,117961,117962,122215,120172,130085,290919,120173
1304,971,6257,117961,118343,120722,118784,117906,290919,118786
1305,29058,806,117961,118300,123719,118321,117906,290919,118322
1306,706,52037,117961,117962,117904,118368,123030,117887,118486
1307,75078,28475,118315,118463,122636,119172,126160,118467,119174
1308,78849,5196,117961,118052,118053,118636,167617,118638,118639
1309,43147,2930,117961,118343,118700,118784,153945,290919,118786
1310,31823,4352,117961,118300,19772,120516,120517,120518,120519
1311,16472,2286,117902,117903,120551,120773,118959,118960,120774
1312,33248,8229,117961,118300,121305,117905,117906,290919,117908
1313,20351,2088,118006,118007,117920,117879,117897,19721,117880
1314,26391,783,117961,118413,127522,128230,4673,4673,128231
1315,22682,5043,117961,118300,118458,120006,310997,118424,120008
1316,6977,4413,117961,118343,118821,117905,117906,290919,117908
1317,22318,4023,117961,118446,119064,118784,117906,290919,118786
1318,34924,84772,117961,118327,121694,118054,235292,117887,118055
1319,75834,7398,117961,118225,118616,117905,117906,290919,117908
1320,39518,26321,117961,118327,118320,124886,306399,118643,124888
1321,42972,108868,119062,119091,120297,117905,117906,290919,117908
1322,4675,8686,117961,118327,119830,118054,118054,117887,118055
1323,4675,7021,117961,118300,118783,118784,287626,290919,118786
1324,3853,49823,117961,118300,127168,117905,117906,290919,117908
1325,25270,49385,117961,118343,119598,126869,283548,118295,126870
1326,34950,7807,117961,118327,118518,118207,190710,270488,118209
1327,203,4589,117961,118327,120383,117905,240983,290919,117908
1328,19722,770,117961,118300,119181,179731,133969,117887,117973
1329,27082,16822,117961,118300,118535,118536,118537,308574,118539
1330,18278,26320,117961,118327,118391,117905,240983,290919,117908
1331,39939,23255,117961,118225,119136,120056,255657,118474,120058
1332,36575,17727,118169,118170,118171,118172,118173,249618,118175
1333,74735,50589,118079,118080,117878,117879,121386,19721,117880
1334,33996,58849,117961,118327,118492,118451,125738,118453,118454
1335,45634,17614,117902,118041,118042,118563,118563,270488,118565
1336,106140,32457,117961,118327,118320,118321,117906,290919,118322
1337,33149,125466,117902,117903,120171,120990,152438,118398,120992
1338,3130,3239,117961,118300,118597,123178,159048,3130,123180
1339,39264,55638,127616,119256,118623,118995,286106,292795,118997
1340,75078,28150,118315,118463,118404,126820,207934,118638,126822
1341,38468,9273,117951,117952,118008,117885,117886,117887,117888
1342,43906,49283,117961,118300,119181,117905,117906,290919,117908
1343,25885,14842,138798,138799,120539,118321,117906,290919,118322
1344,36348,7133,117961,118327,118320,118321,117906,290919,118322
1345,33248,59429,118595,118596,81476,120344,130834,118424,120346
1346,7543,22948,117961,118225,118403,117905,117906,290919,117908
1347,33248,4308,117961,118343,118833,118054,137362,117887,118055
1348,27010,4012,117961,118300,118597,118054,118054,117887,118055
1349,15778,15566,117961,118300,118395,118054,118054,117887,118055
1350,3853,193,117961,118413,121639,118321,118448,290919,118322
1351,75787,72134,117887,118178,117945,117946,118950,292795,117948
1352,25322,52916,117890,118102,117878,118568,120877,19721,118570
1353,35395,7067,117961,118225,118403,117905,117906,290919,117908
1354,79197,1466,117961,118300,123749,118636,123751,118638,118639
1355,34475,49468,118887,118888,118395,118890,154299,118398,118892
1356,33247,743,117961,118343,120722,118321,117906,290919,118322
1357,34924,85343,117961,118327,118933,118784,117906,290919,118786
1358,25831,55161,118752,119070,118754,280788,280788,292795,119082
1359,45790,23871,118752,119070,117945,119899,127369,19793,119900
1360,43340,210,117961,118386,118746,118321,240983,290919,118322
1361,42085,5659,117961,118300,124725,118321,117906,290919,118322
1362,6977,4567,117961,118300,118514,118054,287351,117887,118055
1363,44914,783,117961,118413,277693,128230,302830,4673,128231
1364,23884,116406,117961,117962,120677,122067,297566,118424,122069
1365,40590,311355,117961,118343,118292,118826,236735,118424,118828
1366,33054,2270,117961,118413,277693,118685,279443,308574,118687
1367,20097,1755,117961,117962,119223,150752,137949,118643,150754
1368,23994,5409,117961,118343,119993,118321,240983,290919,118322
1369,14914,49655,117961,118446,122550,117905,117906,290919,117908
1370,33642,4121,118003,118004,117878,117879,117879,19721,117880
1371,4677,5507,117961,118413,120370,117905,117906,290919,117908
1372,312028,91335,118084,118085,117884,118568,281735,19721,118570
1373,13878,6874,117978,119216,117941,117879,121946,19721,117880
1374,7678,17007,117902,118041,117945,280788,280788,292795,119082
1375,4675,7014,117961,118446,119961,118259,125889,290919,118261
1376,29021,3944,117961,118343,118514,118784,118785,290919,118786
1377,20294,58967,118000,118001,117884,117885,117913,117887,117888
1378,73815,28485,118315,118463,118522,143183,143184,119788,143185
1379,23921,25687,117961,118343,118660,118924,119212,118667,118926
1380,35376,17640,117961,118052,118706,118318,168365,118205,118319
1381,39354,85475,117961,118300,123472,117905,117906,290919,117908
1382,1023,54296,117961,118327,120318,118321,118321,290919,118322
1383,75052,7411,117961,118386,118746,118451,152307,118453,118454
1384,3661,1958,118550,118551,118378,118054,122180,117887,118055
1385,76563,17550,117961,118446,118684,118321,117906,290919,118322
1386,28472,28163,118315,118316,120361,118784,162214,290919,118786
1387,13878,50641,117926,118124,117941,117879,117886,19721,117880
1388,25231,1600,117961,118327,118507,118890,311441,118398,118892
1389,33151,52735,117961,118052,120356,120357,310997,118424,120359
1390,79121,4175,117961,118343,118292,119433,133686,118424,119435
1391,78565,23103,118290,118291,119136,119137,122050,118474,119139
1392,25788,54308,126974,126975,118518,118043,118756,270488,118046
1393,23729,7122,117961,118225,118403,117905,117906,290919,117908
1394,7543,7445,117961,118343,122299,179731,118054,117887,117973
1395,112338,4972,117961,118052,118395,120647,311441,118398,120649
1396,39628,3645,117961,118300,118631,124576,124577,118424,124578
1397,43906,8074,117961,118300,119181,117905,240983,290919,117908
1398,1020,3768,117961,118327,118862,118890,125128,118398,118892
1399,136,4565,117961,118386,121961,118784,117906,290919,118786
1400,27829,56193,117961,118300,120410,118784,117906,290919,118786
1401,84071,24926,91261,118026,118229,273308,120072,249618,118232
1402,18418,23118,117961,118343,118833,118834,309123,118424,118836
1403,18418,4765,117961,118300,119890,118054,118054,117887,118055
1404,838,13441,117961,118300,119181,118207,205690,270488,118209
1405,971,770,117961,118343,119181,118451,130134,118453,118454
1406,39262,71189,117961,118386,121883,118318,168365,118205,118319
1407,73581,44917,117961,117962,118450,118451,130134,118453,118454
1408,41146,3883,117961,118343,119987,118784,118785,290919,118786
1409,32087,59012,117893,117894,117895,117879,117897,19721,117880
1410,38719,55364,117926,117927,117884,117885,117913,117887,117888
1411,917,5659,117961,118300,124725,118321,117906,290919,118322
1412,14936,85475,117961,118300,120410,118784,117906,290919,118786
1413,31200,6256,119134,119135,118437,117896,199346,117887,117898
1414,75078,21135,117961,118343,123494,118784,121926,290919,118786
1415,5045,4729,117961,118300,125821,118980,301534,118295,118982
1416,80195,2890,120864,120865,118437,118636,279443,118638,118639
1417,45634,87919,117902,118041,118042,118043,118044,270488,118046
1418,74754,13799,117961,118052,120356,120357,310997,118424,120359
1419,81350,15964,117961,118446,118684,118361,127527,118363,118364
1420,6960,49626,117961,118327,129972,117905,117906,290919,117908
1421,40867,7389,117961,118386,118746,118451,130134,118453,118454
1422,41325,18236,117961,118052,120304,307024,129630,118331,118332
1423,43876,56679,118079,118080,117878,117885,118177,117887,117888
1424,33987,49598,117961,118327,119995,118641,306399,118643,118644
1425,3853,81794,117961,118052,119972,118685,148772,308574,118687
1426,34433,13871,117961,118300,118514,118321,117906,290919,118322
1427,27124,2074,118441,118442,118378,118054,122554,117887,118055
1428,25287,71189,117961,118386,121883,133306,168365,118205,133308
1429,38717,50222,118079,118080,117878,117879,118177,19721,117880
1430,1109,7022,119062,119091,118535,118321,117906,290919,118322
1431,5173,3889,117961,118386,121668,118685,279443,308574,118687
1432,1020,8592,119062,119091,118514,117905,117906,290919,117908
1433,99523,54618,117961,118052,118992,118321,117906,290919,118322
1434,20897,13577,117961,117962,118673,118811,286597,19793,118813
1435,32270,15412,117961,118343,119993,119849,310589,118638,119851
1436,36686,2109,117876,117877,120694,124886,205741,118643,124888
1437,25703,16121,117961,118225,119824,121122,129713,118612,121124
1438,73110,1216,117902,117903,118507,121015,166118,119006,121017
1439,75834,4909,117961,118300,118458,118834,223125,118424,118836
1440,13878,10061,118269,118270,117878,117879,117879,19721,117880
1441,79363,15464,119280,119281,117945,117946,150197,292795,117948
1442,6690,7553,117961,118225,118403,117905,117906,290919,117908
1443,17249,15902,117961,118052,120398,118422,136989,118424,118425
1444,45815,125466,117902,117903,120171,118863,154602,118398,118865
1445,77246,22494,117961,118343,119598,119928,134544,118331,119929
1446,4675,72347,117961,118413,120370,118784,240983,290919,118786
1447,5389,19622,117961,118225,118403,118321,117906,290919,118322
1448,39332,8150,117961,118386,118387,118054,118054,117887,118055
1449,80492,6890,117961,118446,118684,117905,117906,290919,117908
1450,4675,4566,119062,130600,118992,117905,117906,290919,117908
1451,36429,55638,119280,119281,118623,117946,119359,292795,117948
1452,75078,81506,118315,118463,118522,118685,122058,308574,118687
1453,4675,1080,117961,118052,118378,118451,151171,118453,118454
1454,25885,2229,117961,118386,118450,119192,119193,119184,119194
1455,34637,1443,117961,118343,120722,117905,117906,290919,117908
1456,13878,56774,117978,117979,117884,118568,125259,19721,118570
1457,33054,16673,119691,119692,120356,120069,280134,119695,120071
1458,28083,1605,117961,118327,128935,118396,235280,118398,118399
1459,917,4712,117961,118343,118395,123067,233714,118398,123068
1460,45856,5568,121785,121786,118492,118747,130707,118453,118749
1461,3853,5122,117961,118300,118631,118422,153195,118424,118425
1462,20299,65460,118079,118080,117878,117879,118177,19721,117880
1463,27082,52735,117961,118052,120356,122067,127906,118424,122069
1464,15022,2612,117961,118386,123901,117905,117906,290919,117908
1465,33151,51342,117961,118343,118609,120097,174445,270488,120099
1466,39615,2931,117961,118343,118700,118784,117906,290919,118786
1467,7543,53190,117961,118300,19772,118784,118785,290919,118786
1468,4675,81794,117961,118052,119972,122551,159682,118762,122552
1469,31825,16838,117961,118413,120370,307024,310608,118331,118332
1470,20733,79474,117916,118150,117920,120132,154083,120134,120135
1471,42093,5053,117961,118300,121108,120344,267189,118424,120346
1472,42031,82459,117961,118386,118522,118321,117906,290919,118322
1473,15714,5569,119280,119281,117945,117946,118806,292795,117948
1474,4675,16569,117961,118327,120559,122269,141096,118643,122271
1475,4675,49961,117961,118225,118403,118321,240983,290919,118322
1476,39355,85475,117961,118300,120410,117905,117906,290919,117908
1477,73196,4932,117961,118225,119824,123737,147851,118960,123738
1478,6977,3023,117961,118343,122012,126184,128532,118762,126186
1479,17183,16815,117961,117969,120823,123067,269406,118398,123068
1480,2642,873,117961,118413,120526,118685,279443,308574,118687
1481,17226,4712,117961,118343,118395,123067,269406,118398,123068
1482,37737,31056,117893,117894,117895,117899,264384,19721,117900
1483,36480,2174,118256,118257,118450,121372,268307,119184,121374
1484,37651,122016,118219,118220,117912,117879,117879,19721,117880
1485,37734,62513,117975,117976,117941,117885,117913,117887,117888
1486,79092,3623,117961,118343,121747,307024,306404,118331,118332
1487,34687,52036,117961,118300,124725,118321,240983,290919,118322
1488,78106,53506,117916,118150,117941,118568,139079,19721,118570
1489,3853,4701,117961,118300,123472,118054,132425,117887,118055
1490,13878,50538,118953,118954,117920,118568,131694,19721,118570
1491,4675,16838,117961,118413,120370,120690,136365,290919,120692
1492,78327,79402,117983,117984,117878,117879,119057,19721,117880
1493,80212,6278,117961,118343,120722,118321,117906,290919,118322
1494,74580,19760,117961,117962,118352,117905,240983,290919,117908
1495,32306,770,117961,118300,119181,118451,130134,118453,118454
1496,103444,6021,117961,118413,122007,124886,123881,118643,124888
1497,32270,52194,117961,118052,126137,126138,126139,124136,126140
1498,23842,4528,117961,118225,120054,118636,310589,118638,118639
1499,36152,13201,117951,117952,117941,118568,125168,19721,118570
1500,23459,4375,117961,118343,120347,120344,311701,118424,120346
1501,27122,15918,117961,118327,118320,118685,120316,308574,118687
1502,80631,2710,118290,118291,120823,118890,189881,118398,118892
1503,6977,84718,117961,118225,121716,120611,221283,249618,120613
1504,23194,74866,118212,118213,118437,118636,311482,118638,118639
1505,998,17713,117961,118225,120663,124194,127527,118363,124196
1506,138,6199,117961,118225,120663,118321,117906,290919,118322
1507,77246,17759,117961,118413,122007,118685,120316,308574,118687
1508,34542,4576,117961,118327,118391,118321,117906,290919,118322
1509,26955,18220,117961,118052,118867,117905,117906,290919,117908
1510,42085,4139,117961,118300,123055,120344,188011,118424,120346
1511,41115,56744,117961,118386,118635,118636,310589,118638,118639
1512,3853,51301,118290,118291,121108,118293,118294,118295,118296
1513,28340,50379,118126,118237,117895,117896,117913,117887,117898
1514,38719,12197,118290,118291,120171,118890,261801,118398,118892
1515,20897,1549,118084,118085,117920,120632,226503,118131,120634
1516,28294,6222,117961,118052,120096,118784,121873,290919,118786
1517,18913,46832,117989,117990,118810,119899,129197,19793,119900
1518,34950,8674,117961,118327,120318,118321,117906,290919,118322
1519,80804,3770,117961,118343,118395,123067,269406,118398,123068
1520,1020,8520,117961,118386,119954,118259,287351,290919,118261
1521,45974,798,118752,119070,119121,280788,280788,292795,119082
1522,15369,20105,117961,117969,120823,129909,181275,118453,129911
1523,78563,4424,117961,118343,120291,118293,118302,118295,118296
1524,980,3267,117961,118052,121949,120097,174445,270488,120099
1525,45784,141,117961,118225,122273,117905,240983,290919,117908
1526,33054,131441,117961,118343,119598,119433,133686,118424,119435
1527,6977,5464,117916,119623,118403,118321,117906,290919,118322
1528,20277,81989,117980,117981,117941,117879,117886,19721,117880
1529,38279,48476,117926,118124,117884,117879,117886,19721,117880
1530,42093,51119,117961,118343,122012,117905,117906,290919,117908
1531,45784,4659,117961,118225,120663,118784,147114,290919,118786
1532,3719,23225,117961,118300,119984,120647,311441,118398,120649
1533,80564,6235,117961,118343,118437,124194,249872,118363,124196
1534,80445,3883,117961,118343,119987,118536,132799,308574,118539
1535,4675,15918,117961,118327,118320,118784,147114,290919,118786
1536,74982,1530,117961,118300,119984,118890,311441,118398,118892
1537,5371,7014,117961,118446,119961,118259,118260,290919,118261
1538,15740,15918,117961,118327,118320,120690,136365,290919,120692
1539,40456,724,117961,118300,119181,118321,117906,290919,118322
1540,17308,5244,117961,118343,119598,117905,117906,290919,117908
1541,27714,16569,117961,118327,120559,120988,304465,118643,120989
1542,41334,28253,118315,118463,123089,118259,148669,290919,118261
1543,16613,7012,117961,118225,120050,118777,279443,308574,118779
1544,927,13441,117961,118300,119181,118207,205690,270488,118209
1545,4675,7434,117961,118300,118514,118259,287351,290919,118261
1546,34924,27616,117961,118327,120299,137969,155743,118612,137970
1547,76862,15120,117961,118327,118529,118054,120514,117887,118055
1548,27356,51178,117961,118386,121961,307024,310608,118331,118332
1549,45089,1978,117961,118327,120559,122269,141096,118643,122271
1550,31232,14867,117890,118102,117878,117885,118069,117887,117888
1551,28855,14810,117961,118413,120370,117905,117906,290919,117908
1552,73815,92887,118315,118463,118522,129229,129659,119788,129231
1553,36237,3120,117961,118300,120312,118792,120314,118424,118794
1554,79623,17451,117961,118052,126137,126138,252926,124136,126140
1555,6689,16121,117961,118225,119824,121122,129713,118612,121124
1556,33983,5524,117961,118343,118514,118321,290919,290919,118322
1557,73441,5244,117961,118343,119598,118321,117906,290919,118322
1558,7678,6822,117961,117969,6725,126264,198845,6725,126266
1559,15710,82613,117961,118300,119984,118890,311441,118398,118892
1560,37793,52916,117890,118102,117878,117899,117899,19721,117900
1561,6977,2947,118212,118213,123201,117905,123202,290919,117908
1562,6960,5360,117961,118446,118447,118784,117906,290919,118786
1563,20897,23343,117961,118052,120304,118530,278014,118131,118532
1564,18418,2694,118887,118888,118458,120344,217919,118424,120346
1565,73110,52972,118212,118213,118507,118863,157370,118398,118865
1566,4675,49696,117961,118052,122938,118321,117906,290919,118322
1567,23921,3287,118752,119070,118042,118043,118043,270488,118046
1568,5410,58916,117961,118327,118391,117905,117906,290919,117908
1569,45019,26320,117961,118327,118391,118321,117906,290919,118322
1570,6725,6733,117961,117969,6725,119997,278014,118131,119998
1571,34138,6982,117961,118300,118783,118784,213944,290919,118786
1572,5344,17788,117961,118446,119961,132671,118260,290919,132673
1573,20287,72734,118079,118080,117878,117879,118177,19721,117880
1574,35381,32457,117961,118327,118320,118641,123881,118643,118644
1575,14666,96704,117910,117911,117884,117879,117886,19721,117880
1576,15064,770,117961,118300,118437,118054,118054,117887,118055
1577,44944,24924,91261,118026,119507,118636,311824,118638,118639
1578,25240,58916,117961,118327,118391,117905,117906,290919,117908
1579,4675,6047,117961,118413,120370,118321,240983,290919,118322
1580,42093,7212,117961,118300,124725,118784,117906,290919,118786
1581,4675,89738,117961,117962,118409,119928,310608,118331,119929
1582,18418,23280,117961,117969,6725,126264,136466,6725,126266
1583,75876,15570,117961,118343,118575,119849,129519,118638,119851
1584,16202,6879,117902,118041,119238,119093,119239,119095,119096
1585,27124,8147,117961,118327,145424,117905,117906,290919,117908
1586,26913,2270,117961,118413,120666,120773,118959,118960,120774
1587,6977,14829,117961,118052,119986,117905,117906,290919,117908
1588,39879,57539,122532,122533,118623,280788,122534,292795,119082
1589,44641,49440,117961,118300,118631,118422,142573,118424,118425
1590,43277,1605,117961,118327,128935,118396,235280,118398,118399
1591,4675,4151,118990,118991,118992,128230,302830,4673,128231
1592,4675,3242,117961,118343,118514,118321,240983,290919,118322
1593,20293,22356,117926,117927,117920,118568,122142,19721,118570
1594,21811,71189,117961,118386,121883,118318,168365,118205,118319
1595,33147,4084,117961,118052,118992,118321,240983,290919,118322
1596,78919,101472,117961,118343,119142,118318,168365,118205,118319
1597,14725,7029,117961,117962,120677,120357,149187,118424,120359
1598,34748,124899,117961,118327,120171,118890,149216,118398,118892
1599,18072,18073,118256,119428,118623,118995,286106,292795,118997
1600,42093,13873,117961,118300,118825,121469,310997,118424,121471
1601,42085,13201,117951,117952,117941,117899,117899,19721,117900
1602,35498,7615,117961,118300,120059,118777,132558,308574,118779
1603,80714,7398,117961,118225,119924,118321,117906,290919,118322
1604,38708,6444,118114,118115,117884,117885,117913,117887,117888
1605,16218,8607,117961,118225,118403,118747,130134,118453,118749
1606,20364,17250,117961,118300,125872,118826,236735,118424,118828
1607,7678,5560,118256,118257,117945,259173,280788,292795,118943
1608,31661,54618,117961,118052,118821,118321,117906,290919,118322
1609,18072,58711,117961,119256,120943,118995,118806,292795,118997
1610,20897,3639,117961,118300,118631,120418,154665,249618,120419
1611,33111,1541,117961,118225,123173,119093,123174,119095,119096
1612,36267,57715,117961,118446,118701,118702,303450,118704,118705
1613,6977,3097,117961,118300,120312,118792,222652,118424,118794
1614,80830,4932,117961,118225,119824,123737,147851,118960,123738
1615,79964,17550,117961,118446,118684,117905,117906,290919,117908
1616,58928,7253,117961,118225,118403,118321,117906,290919,118322
1617,19722,54618,117961,118052,118821,118321,117906,290919,118322
1618,35499,13419,117961,118300,120059,120812,305057,118638,120814
1619,74508,56201,91261,118026,118746,119962,168365,118205,119964
1620,4675,1443,117961,118343,120722,118321,117906,290919,118322
1621,74241,49646,119691,119692,118635,120903,118406,119695,120904
1622,38860,70480,119280,119281,117945,117946,119235,292795,117948
1623,76860,6114,117961,118343,6104,118278,118260,290919,118279
1624,34924,15645,117961,118052,122392,128903,160695,292795,128905
1625,25740,136238,117961,118343,121747,119928,310608,118331,119929
1626,79092,1540,117961,118343,123125,122022,270994,119221,122024
1627,6977,17728,117961,118446,119986,118318,168365,118205,118319
1628,27750,5603,117890,118102,117878,117899,258880,19721,117900
1629,25561,2649,117961,118413,120526,117905,117906,290919,117908
1630,80804,17199,117961,117969,118970,118890,152357,118398,118892
1631,30845,3770,117961,118343,118395,118890,125128,118398,118892
1632,37427,51398,117961,118300,118458,118054,118054,117887,118055
1633,13878,91335,118084,118085,117884,118568,281735,19721,118570
1634,74310,52736,119596,119597,118911,120789,171744,118424,120791
1635,278393,57797,119596,119597,169899,119928,306404,118331,119929
1636,4675,51007,117961,118413,120526,118321,117906,290919,118322
1637,4675,4341,117961,118300,118957,118784,213944,290919,118786
1638,38268,48801,117926,118266,117941,117885,117913,117887,117888
1639,80476,4576,117961,118327,118391,117905,117906,290919,117908
1640,969,2683,117887,118178,119796,121915,225598,121916,121917
1641,44812,19831,117902,117903,119181,120952,122352,118453,120954
1642,5353,8242,117961,117962,119223,124886,306399,118643,124888
1643,15672,1895,117902,117903,118783,120952,122352,118453,120954
1644,34924,8430,117961,118225,118403,118321,227996,290919,118322
1645,38972,57680,118256,118257,117945,259173,280788,292795,118943
1646,23096,74884,126918,126919,118042,118043,118043,270488,118046
1647,36285,5312,117961,118052,120539,307024,198530,118331,118332
1648,35451,6979,117961,117962,119223,127723,305057,118643,127725
1649,16034,15474,118169,118170,121023,118172,130464,249618,118175
1650,28149,28253,118315,118463,123089,118321,130219,290919,118322
1651,7678,126887,122532,122533,117945,118274,117946,292795,118276
1652,16985,1030,117961,118343,120722,118361,118362,118363,118364
1653,79092,8785,117961,117962,117904,122129,170471,121916,122131
1654,79121,200077,118725,118726,119076,118834,140820,118424,118836
1655,74302,2069,121518,121519,117878,119192,186208,119184,119194
1656,73118,27104,117961,118327,118507,118054,120716,117887,118055
1657,18688,54321,117890,117891,117878,117879,117879,19721,117880
1658,391,12260,117926,118124,117884,117885,117913,117887,117888
1659,14570,14633,118106,118107,117884,118568,281735,19721,118570
1660,15672,7164,117902,117903,118783,117905,118036,290919,117908
1661,25238,4551,117961,118343,118833,118422,300136,118424,118425
1662,16202,94005,117902,118041,120323,122849,138522,119095,122850
1663,40069,5730,117961,118446,118631,120578,120579,118762,120580
1664,1041,46254,117961,118327,126310,124886,123881,118643,124888
1665,17226,2594,117961,118300,123472,118784,117906,290919,118786
1666,32270,82613,117961,118300,119984,118890,311441,118398,118892
1667,41642,4566,119062,119091,118992,117905,117906,290919,117908
1668,78563,52105,118595,118596,81476,118422,149098,118424,118425
1669,35529,22507,117961,118300,120059,118636,135814,118638,118639
1670,79092,2582,117961,118343,121710,307024,133833,118331,118332
1671,14354,2078,118114,118115,117920,118568,125937,19721,118570
1672,33054,13799,117961,118052,120356,120357,310997,118424,120359
1673,1115,6995,117961,117962,118352,118321,117906,290919,118322
1674,75047,83216,91261,118026,118317,118278,118260,290919,118279
1675,18072,22854,117902,118041,131461,119778,174194,19721,119779
1676,79934,6235,117961,118343,118437,307024,311622,118331,118332
1677,36020,118906,117951,118907,117878,119077,117886,118372,119079
1678,6977,7411,117961,118386,118746,118451,130134,118453,118454
1679,43302,17640,117961,118386,118881,119962,168365,118205,119964
1680,76299,46788,117929,117940,117920,118568,163031,19721,118570
1681,39939,3536,118163,118164,119136,119137,260582,118474,119139
1682,78241,6222,117961,118052,120096,117905,117906,290919,117908
1683,20364,46185,118887,118888,118889,118890,311441,118398,118892
1684,33323,52224,117902,118041,118042,118043,118044,270488,118046
1685,81350,2872,118887,118888,124656,126869,146868,118295,126870
1686,79021,27,117961,118413,240766,117905,172635,290919,117908
1687,1465,21033,117961,118300,123749,166592,166593,118638,166594
1688,78518,52007,117961,117962,118910,179731,118368,117887,117973
1689,16826,1958,118550,118551,118378,118054,118443,117887,118055
1690,6977,2991,117961,118343,118700,118321,117906,290919,118322
1691,15938,217,117961,118413,120370,117905,117906,290919,117908
1692,45481,3116,117961,118300,147589,118826,236735,118424,118828
1693,77659,51165,117983,117984,117878,118568,120877,19721,118570
1694,16988,6252,117961,118300,120312,124419,157234,118424,124421
1695,20364,51145,118595,118596,81476,118422,149098,118424,118425
1696,14845,124925,117961,118225,122273,118784,147114,290919,118786
1697,74310,6235,117961,118343,118437,124194,249872,118363,124196
1698,76416,13801,119062,119091,123125,119928,310608,118331,119929
1699,33230,59421,117961,118327,118507,118863,122008,118398,118865
1700,17226,4200,117961,118343,118660,119433,133686,118424,119435
1701,72024,14829,117961,118052,119986,118321,117906,290919,118322
1702,80151,6232,117961,118343,118437,120516,185973,120518,120519
1703,80551,3944,117961,118343,118514,118321,117906,290919,118322
1704,153,174,117961,118413,121639,118321,117906,290919,118322
1705,75649,6216,117961,118052,118328,124886,306399,118643,124888
1706,20897,2197,117961,118327,274241,150074,119771,119772,150076
1707,3853,4308,117961,118343,118833,118834,309123,118424,118836
1708,36500,51121,117893,117894,118575,280788,155276,292795,119082
1709,23356,1755,117961,117962,119223,125793,305057,118643,125795
1710,4675,7610,117961,118327,120383,117905,117906,290919,117908
1711,18605,19986,117961,118225,118403,120773,136187,118960,120774
1712,23990,55119,119062,119091,123125,134095,300136,118474,118475
1713,80483,46526,117961,118300,119984,118396,269406,118398,118399
1714,38470,275544,117876,117877,117878,117879,117879,19721,117880
1715,4675,7001,117961,118327,118933,121594,127596,4673,121596
1716,75078,57692,118595,118596,120677,126078,297560,118424,126080
1717,25812,2078,118114,118115,117920,118568,125937,19721,118570
1718,80195,8698,120864,120865,119824,117905,117906,290919,117908
1719,75078,28223,118315,118463,118522,118321,117906,290919,118322
1720,34924,28590,117961,118327,120685,118784,240983,290919,118786
1721,16018,1550,117961,118225,123173,118054,120514,117887,118055
1722,19484,122016,118219,118220,117912,118568,125168,19721,118570
1723,75834,234958,118290,118291,120026,307024,197961,118331,118332
1724,25993,5730,117961,118446,120026,120578,120579,118762,120580
1725,23990,18224,117961,117969,118970,118890,125128,118398,118892
1726,15818,6220,117961,118327,121645,120690,120691,290919,120692
1727,42093,820,117961,118300,123719,117905,172635,290919,117908
1728,80861,7520,91261,118026,124725,117905,117906,290919,117908
1729,81478,5504,117961,118300,118514,118321,240983,290919,118322
1730,29122,14842,138798,138799,120539,118321,117906,290919,118322
1731,43257,7369,117961,118386,118896,118321,117906,290919,118322
1732,32634,744,117961,118300,120722,118321,117906,290919,118322
1733,16443,6726,117961,117969,6725,122290,248267,6725,122292
1734,45904,2680,120864,120865,120694,118636,310476,118638,118639
1735,971,1412,117902,117903,120722,118451,130134,118453,118454
1736,17849,17856,117961,118327,118673,119976,301141,19793,119978
1737,38704,14716,118114,118115,118846,179731,207499,117887,117973
1738,75834,51301,118290,118291,121108,118293,118294,118295,118296
1739,38723,7647,117961,118300,119181,117905,117906,290919,117908
1740,2341,196,117961,118413,121639,129909,130134,118453,129911
1741,29304,82284,118953,118954,117884,117885,117913,117887,117888
1742,25993,25629,117961,118343,120291,120006,129545,118424,120008
1743,77993,8121,91261,118026,118746,117905,117906,290919,117908
1744,74909,5511,117961,118386,120361,118321,117906,290919,118322
1745,79092,33,117961,118413,118501,144353,144354,118504,144355
1746,74961,8204,117961,118052,118867,118054,305057,117887,118055
1747,6977,6047,117961,118413,120370,118777,279443,308574,118779
1748,25703,20183,117961,118225,120054,119587,274735,118704,119589
1749,1151,124316,118887,118888,118889,118863,307233,118398,118865
1750,80770,4642,117961,118225,120551,118321,240983,290919,118322
1751,79092,27898,118106,118107,117941,117879,117886,19721,117880
1752,79342,4803,117961,118225,124449,122022,124996,119221,122024
1753,19945,7539,117961,118343,119987,117905,117906,290919,117908
1754,74717,5245,117961,118300,125821,118834,251171,118424,118836
1755,6921,30527,117961,118225,124449,119849,193662,118638,119851
1756,26360,48956,117961,118052,120356,118054,118054,117887,118055
1757,15064,25935,117961,118343,121977,179731,128635,117887,117973
1758,74995,49696,117961,118052,122938,117905,117906,290919,117908
1759,19998,15415,117961,118225,123173,118054,119601,117887,118055
1760,42668,4108,118887,118888,119136,120056,122909,118474,120058
1761,39262,46704,91261,118026,118202,117905,117906,290919,117908
1762,38726,14695,118602,118603,118008,118568,125168,19721,118570
1763,80802,1334,117961,117962,118910,119949,230830,290919,119951
1764,1003,7525,117961,118225,120551,118784,121873,290919,118786
1765,42488,48492,117961,118225,118403,118321,240983,290919,118322
1766,76862,17305,117961,118327,118529,118054,118054,117887,118055
1767,75078,18680,91261,118026,118746,118321,117906,290919,118322
1768,28294,4743,119062,130600,120663,117905,117906,290919,117908
1769,44976,72133,117887,118178,117945,259173,139246,292795,118943
1770,37260,53240,117876,117877,117878,117879,167135,19721,117880
1771,79092,52314,117961,118300,118301,119928,219829,118331,119929
1772,45019,8106,117961,118327,120559,120560,304465,118643,120562
1773,25959,13411,118023,118024,118810,122952,305581,19793,122954
1774,3853,5339,117961,118300,19772,123045,248000,120518,123047
1775,26313,5048,117961,118300,118458,120006,129545,118424,120008
1776,80473,7243,117961,118343,118609,120357,120065,118424,120359
1777,16443,16850,117961,118225,122298,119093,162960,119095,119096
1778,16116,19829,117961,118386,118896,120773,310589,118960,120774
1779,80212,1325,117961,117969,118910,118054,118054,117887,118055
1780,25561,51007,117961,118413,120526,118321,118448,290919,118322
1781,32270,15683,117961,118300,118957,118777,279443,308574,118779
1782,15714,15555,118256,118257,117945,118274,149344,292795,118276
1783,76551,4299,117876,117877,117878,118568,179860,19721,118570
1784,38723,14889,117961,118300,118437,118321,117906,290919,118322
1785,38480,31058,118126,118237,117895,117896,117913,117887,117898
1786,1281,54684,117961,117962,118910,118777,279443,308574,118779
1787,14354,14289,118602,118603,117941,118568,125168,19721,118570
1788,18072,5570,117961,119256,119257,117946,118806,292795,117948
1789,41115,5177,117961,118386,125016,120357,126416,118424,120359
1790,75078,99960,118315,118463,118522,118465,175082,118467,118468
1791,25240,25,117961,117962,122224,118321,117906,290919,118322
1792,74236,2225,117961,117962,118501,120702,126111,118504,120704
1793,79092,4110,119596,119597,118292,118728,282017,118295,118730
1794,79168,13881,118602,118603,117941,117885,119621,117887,117888
1795,37639,26101,118120,118121,117884,117885,117913,117887,117888
1796,6977,8026,117961,118386,123656,119962,147416,118205,119964
1797,27356,3967,117961,118052,118706,118321,117906,290919,118322
1798,79623,6736,117961,117969,6725,122290,150800,6725,122292
1799,75834,5323,117961,118343,119598,307024,132719,118331,118332
1800,15720,193,117961,118413,121639,118321,117906,290919,118322
1801,80234,77941,119062,119091,119362,117905,311485,290919,117908
1802,39262,50806,117961,118446,119961,118054,118054,117887,118055
1803,3264,1483,117961,117962,118840,118641,306399,118643,118644
1804,80446,3332,117961,118343,121747,117905,117906,290919,117908
1805,40202,16642,117961,118300,81476,118321,117906,290919,118322
1806,34958,2017,117961,118327,121645,118321,117906,290919,118322
1807,75078,28475,118315,118463,122636,118465,132657,118467,118468
1808,18418,4200,117961,118343,118660,119433,133686,118424,119435
1809,45444,1605,117961,118327,128935,118396,235280,118398,118399
1810,32032,49626,117961,118327,129972,118321,117906,290919,118322
1811,16008,8164,117961,118327,120685,118641,123881,118643,118644
1812,35068,6035,117890,117891,117878,118568,292195,19721,118570
1813,6921,5313,117961,118386,120356,120357,201020,118424,120359
1814,34056,70062,117961,118386,118746,117905,117906,290919,117908
1815,79328,17733,117961,118300,119984,118396,269406,118398,118399
1816,25416,19857,117929,117940,117941,117879,117886,19721,117880
1817,75047,3967,117961,118052,118706,117905,117906,290919,117908
1818,42532,3281,117961,118225,120323,119093,120324,119095,119096
1819,39264,15618,118256,118257,117945,280788,280788,292795,119082
1820,40804,7445,117961,118343,122299,118054,121350,117887,118055
1821,5393,2610,117961,118327,121979,118321,149217,290919,118322
1822,39232,669,117961,118343,118437,117905,117906,290919,117908
1823,75834,78094,118212,119763,119362,119065,144144,118667,119067
1824,34924,3697,117961,118327,118933,118747,130134,118453,118749
1825,75078,18686,117961,118386,121883,117905,172635,290919,117908
1826,43170,71171,117961,118386,123844,117905,117906,290919,117908
1827,35451,44012,117961,117962,119223,123670,139296,121916,123672
1828,74754,53049,117961,118052,121949,120812,138898,118638,120814
1829,79092,5323,117961,118343,119598,118459,255097,249618,118461
1830,81340,17930,117961,118446,118810,118811,120605,19793,118813
1831,18418,25293,117961,118386,123072,121414,130802,118704,121416
1832,25993,5186,118887,118888,124656,118912,309291,118424,118914
1833,4673,44038,117902,117903,118910,119346,302830,4673,119348
1834,15369,15371,118169,118170,117945,280788,155276,292795,119082
1835,72024,13794,117961,118052,120417,120575,153414,249618,120577
1836,27124,20583,117961,118327,274241,150074,166580,119772,150076
1837,917,3120,117961,118300,120312,118054,137017,117887,118055
1838,19962,4511,117961,118300,119181,117905,290919,290919,117908
1839,34924,8338,117961,118327,123631,118777,308574,308574,118779
1840,45412,61247,117910,118855,131868,119192,139264,119184,119194
1841,33054,3963,117961,118300,125872,120344,311360,118424,120346
1842,20271,50186,117916,118011,117941,117885,117913,117887,117888
1843,23921,5053,117961,118300,121108,120344,267189,118424,120346
1844,27317,51124,117961,118300,118631,118422,126423,118424,118425
1845,29058,115255,5110,117954,117895,118194,118195,117887,118196
1846,38852,4975,119596,119597,121169,118293,118294,118295,118296
1847,28586,6021,117961,118413,122007,118321,118448,290919,118322
1848,74969,15513,117961,118052,123144,118890,125128,118398,118892
1849,41643,7595,118990,118991,118992,123737,276340,118960,123738
1850,23969,52140,118887,118888,124656,126869,236007,118295,126870
1851,278393,15412,117961,118343,119993,119849,310589,118638,119851
1852,3853,4110,119596,119597,118292,118728,282017,118295,118730
1853,35046,19760,117961,117962,118352,118321,117906,290919,118322
1854,39262,18686,117961,118386,121883,118321,117906,290919,118322
1855,18418,2220,117961,118300,125872,120344,303717,118424,120346
1856,79328,17128,117961,118300,119984,118396,300044,118398,118399
1857,80807,17218,117961,118300,118395,118396,300044,118398,118399
1858,20222,55643,118256,118257,117945,118995,119235,292795,118997
1859,25570,4370,117961,118343,118514,117905,117906,290919,117908
1860,16018,1398,117961,118300,118437,117905,117906,290919,117908
1861,73495,57758,117961,118343,149210,118702,120065,118704,118705
1862,4675,5730,117961,118446,118458,124305,120579,118762,124307
1863,116246,7408,117961,117962,118352,118321,117906,290919,118322
1864,36480,2679,122880,122974,117945,280788,135815,292795,119082
1865,34958,59347,117961,118327,118320,118321,117906,290919,118322
1866,45444,1728,117961,118327,118507,118890,138290,118398,118892
1867,39511,21254,117932,117933,117878,118568,167210,19721,118570
1868,76465,17218,117961,118300,118395,118396,300044,118398,118399
1869,6696,71401,91261,118026,118063,128422,128423,118453,128424
1870,73945,6071,117961,118413,122007,118321,118448,290919,118322
1871,75834,49484,117961,118300,119890,118054,119601,117887,118055
1872,25561,2649,117961,118413,120526,118747,132731,118453,118749
1873,18418,20508,118219,118220,117941,117879,119983,19721,117880
1874,80498,50781,91261,118026,139759,118321,117906,290919,118322
1875,37709,48683,117989,117990,117920,117879,117886,19721,117880
1876,3853,6116,117961,118343,120666,120006,255097,118424,120008
1877,75078,13545,117961,118386,125016,125798,183899,125407,125800
1878,79969,59765,117961,118386,118317,118523,294485,118331,118525
1879,16443,3281,117961,118225,119238,122849,120324,119095,122850
1880,28586,23262,118595,118596,81476,118834,140185,118424,118836
1881,78563,17227,117961,118343,118979,118826,158101,118424,118828
1882,278393,12394,119134,119135,125821,118422,300136,118424,118425
1883,74555,58916,117961,118327,118391,120172,230830,290919,120173
1884,31492,19832,117961,118386,123757,118321,117906,290919,118322
1885,16767,16850,117961,118225,119092,119093,120324,119095,119096
1886,25305,15422,117961,118052,118867,130479,185784,119784,130481
1887,75439,23115,118200,118201,117884,118568,117886,19721,118570
1888,39332,7369,117961,118386,118896,117905,117906,290919,117908
1889,79092,1475,119062,119091,118450,121372,148801,119184,121374
1890,27124,3688,120883,120884,118378,119192,300603,119184,119194
1891,15716,7770,118752,119070,117945,280788,280788,292795,119082
1892,34498,5169,119596,119597,118597,118980,153123,118295,118982
1893,28074,17414,118752,119070,118042,118563,118563,270488,118565
1894,15720,7076,117961,118225,120041,119093,120324,119095,119096
1895,75078,7074,117961,118052,119408,118536,118537,308574,118539
1896,75834,3113,117961,118343,118911,118834,133686,118424,118836
1897,278393,8435,117961,118225,124449,122129,150283,121916,122131
1898,37410,14811,117961,118343,118344,120812,120812,118638,120814
1899,25740,55556,117961,118052,118979,118278,117906,290919,118279
1900,37639,27897,118106,118107,117884,117885,117913,117887,117888
1901,27124,95479,126974,126975,118492,132692,226262,270488,132694
1902,73815,28241,119170,119171,140453,129229,228788,119788,129231
1903,78167,14829,117961,118446,119986,117905,117906,290919,117908
1904,36992,8399,117961,118413,120370,122645,137960,119221,122647
1905,967,16573,117961,118343,122299,149351,149352,149353,149354
1906,1937,1080,117961,118052,118378,118451,151171,118453,118454
1907,27356,8520,117961,118386,119954,118318,168365,118205,118319
1908,33054,4341,117961,118300,118957,118784,240983,290919,118786
1909,35792,16971,117961,118343,119993,125793,125794,118643,125795
1910,6977,2518,117961,118300,19772,132096,266851,119095,132098
1911,27407,4993,117961,118300,118979,118912,309291,118424,118914
1912,43650,52194,117961,118052,126137,126138,126139,124136,126140
1913,18072,17393,117961,118225,119781,118207,164476,270488,118209
1914,40438,17558,91261,118026,118706,118318,168365,118205,118319
1915,16191,8008,117887,118178,118320,117905,240983,290919,117908
1916,25958,15948,117935,117936,118810,119899,310825,19793,119900
1917,79617,16698,118595,118596,118597,118834,282017,118424,118836
1918,3853,51342,117961,118343,118660,118636,269415,118638,118639
1919,6977,8283,117961,118327,118933,118321,117906,290919,118322
1920,14354,22547,117890,118102,117878,127700,203113,19721,127702
1921,15715,16900,118256,118257,118623,126684,193644,292795,126685
1922,85563,25557,117961,118300,121951,117905,117906,290919,117908
1923,18418,124625,118725,118726,119076,118422,300136,118424,118425
1924,18255,6278,117961,118343,120722,118321,117906,290919,118322
1925,39447,7424,5110,117954,122672,118777,306530,308574,118779
1926,40069,5137,118212,118213,123614,120497,229576,118424,120499
1927,2925,2930,117961,118343,118700,118784,153945,290919,118786
1928,40630,52105,118595,118596,81476,118834,140185,118424,118836
1929,74965,5269,119596,119597,120356,122067,205243,118424,122069
1930,79092,51172,118000,118001,120551,118321,118448,290919,118322
1931,23982,20376,117902,117903,120171,120990,137612,118398,120992
1932,20897,2995,117961,118300,119019,120628,278014,118131,120629
1933,80251,4701,117961,118300,123472,118054,132425,117887,118055
1934,391,27891,117926,118266,117920,124313,124314,120134,124315
1935,5173,52394,117961,118300,118458,119928,310608,118331,119929
1936,20739,93720,118219,118220,117920,118568,178861,19721,118570
1937,17249,8709,117961,118300,128830,118054,118054,117887,118055
1938,6977,7398,117961,118225,118616,117905,240983,290919,117908
1939,44812,6278,117961,118343,120722,117905,240983,290919,117908
1940,972,4322,117961,118343,118833,118834,309123,118424,118836
1941,33054,4110,119596,119597,118292,118728,282017,118295,118730
1942,23921,4887,117961,118343,120126,120497,223125,118424,120499
1943,77387,70062,117961,118386,118387,117905,117906,290919,117908
1944,80852,7067,117961,118225,118403,117905,117906,290919,117908
1945,38124,27881,117929,117940,117941,118568,281735,19721,118570
1946,33243,1030,117961,118343,120722,124435,127527,118363,124436
1947,15938,3692,117961,118413,120370,118777,279443,308574,118779
1948,42085,11987,118006,118007,118008,117879,117897,19721,117880
1949,312039,52426,118887,118888,124656,118912,309291,118424,118914
1950,1041,1065,117961,118327,121589,118641,118842,118643,118644
1951,13878,53251,117983,117984,117878,118568,292195,19721,118570
1952,13878,18236,117961,118052,120304,122297,301475,118331,118899
1953,14914,49384,117961,118343,118609,118728,301534,118295,118730
1954,20701,49655,117961,118446,122550,122551,117906,118762,122552
1955,38706,22458,117961,117962,120677,307024,306404,118331,118332
1956,7678,50089,117961,118343,118514,118784,117906,290919,118786
1957,38659,17614,117902,118041,118042,118043,118044,270488,118046
1958,17308,15895,117961,118052,120677,122067,300136,118424,122069
1959,28149,64713,120140,120141,118733,118734,255008,118736,118737
1960,278393,140260,118163,119075,119076,118834,311236,118424,118836
1961,391,17839,118216,118587,117884,117885,117913,117887,117888
1962,972,53280,118290,118291,118727,118834,202884,118424,118836
1963,35012,7370,117961,118413,118481,118321,118785,290919,118322
1964,4675,17834,117902,117903,124725,123045,305057,120518,123047
1965,4675,7510,117961,118446,118684,118777,279443,308574,118779
1966,20294,17992,117916,118011,118810,118054,120238,117887,118055
1967,74995,1325,117961,117962,118910,118321,117906,290919,118322
1968,43876,112106,118079,118080,117878,130637,302452,119695,130638
1969,41576,51773,117961,118446,118684,118321,117906,290919,118322
1970,20803,46503,120140,120141,121589,120952,120953,118453,120954
1971,33240,54618,117961,118052,118992,118784,118785,290919,118786
1972,4675,7377,117961,118225,119924,118777,119925,308574,118779
1973,39138,17561,91261,118026,118202,118259,118260,290919,118261
1974,4675,2649,117961,118413,120526,118747,132731,118453,118749
1975,35955,26320,117961,118327,118391,118321,118448,290919,118322
1976,28074,23097,117961,118225,119136,118685,122081,308574,118687
1977,43194,50854,117961,118225,120054,118054,118443,117887,118055
1978,25744,3745,117961,118300,118360,118361,118362,118363,118364
1979,19484,61859,118219,118220,118221,118568,268194,19721,118570
1980,19998,154585,118212,118213,120551,118321,240983,290919,118322
1981,4675,89285,118658,125100,118856,118321,137263,290919,118322
1982,34924,3236,117961,118327,129972,117905,117906,290919,117908
1983,74310,6235,117961,118343,118437,118523,311622,118331,118525
1984,41758,28253,118315,118463,123089,117905,130219,290919,117908
1985,20364,15886,117961,118052,120356,122067,237245,118424,122069
1986,80799,6993,117961,118343,118514,118321,290919,290919,118322
1987,74754,7284,91261,118026,118202,118321,117906,290919,118322
1988,42875,4417,117961,118413,119968,118641,306399,118643,118644
1989,25993,4874,117961,118343,121747,122645,269808,119221,122647
1990,25993,4322,117961,118343,118833,118834,309123,118424,118836
1991,74236,1483,117961,117962,118840,118641,306399,118643,118644
1992,31760,49425,117961,118343,119598,118834,133686,118424,118836
1993,80207,7220,117961,118225,120551,117905,186454,290919,117908
1994,37981,48248,118106,118107,117941,117879,117886,19721,117880
1995,38710,26172,118084,118085,117941,117885,117913,117887,117888
1996,45444,2409,117961,117962,117904,119949,123170,290919,119951
1997,15720,94005,117902,118041,119238,119093,138522,119095,119096
1998,73806,7074,117961,118052,122938,118784,216282,290919,118786
1999,32306,18449,117961,118300,119181,118465,159686,118467,118468
2000,28149,5697,117961,118386,118692,118321,240983,290919,118322
2001,35376,3889,117961,118386,121668,118321,117906,290919,118322
2002,40426,2610,117961,118327,121979,117905,240983,290919,117908
2003,673,770,117961,118300,119181,121594,302830,4673,121596
2004,6977,2068,117980,118076,131868,128093,276422,119184,128095
2005,15720,4663,117961,118225,122298,120591,132696,119095,120593
2006,38708,14715,117910,117911,117941,117885,117913,117887,117888
2007,15714,20242,119280,119281,117945,118995,136748,292795,118997
2008,42977,4566,119062,130600,118992,117905,117906,290919,117908
2009,32642,4361,118573,118574,117945,118995,169886,292795,118997
2010,43416,85343,117961,118327,118933,117905,117906,290919,117908
2011,87083,4932,117961,118225,119824,121915,137949,121916,121917
2012,35788,27104,117961,118327,118507,120647,304633,118398,120649
2013,80566,6257,117961,118343,118437,117905,117906,290919,117908
2014,16071,770,117961,118300,120722,118747,130134,118453,118749
2015,80497,4933,117961,118343,118458,120006,219966,118424,120008
2016,25328,17223,117961,118225,120535,123067,233714,118398,123068
2017,3124,22835,117961,117969,19666,118396,236551,118398,118399
2018,39879,17059,117902,118041,117945,259173,191237,292795,118943
2019,35502,2395,117961,118300,123055,118728,301534,118295,118730
2020,6692,72209,117961,118225,124948,118747,235735,118453,118749
2021,39392,17209,117961,118052,123144,118396,310598,118398,118399
2022,80696,4341,117961,118300,118957,118321,117906,290919,118322
2023,75649,70066,91261,118026,118202,118321,117906,290919,118322
2024,74310,6277,117961,118343,120722,118321,290919,290919,118322
2025,80772,16314,117961,118446,120317,118321,117906,290919,118322
2026,37115,25772,118006,118007,117941,117879,117897,19721,117880
2027,25993,1605,117961,118327,128935,149337,205238,118398,149339
2028,1020,92920,117961,118052,120417,122514,265577,118474,122516
2029,28562,4622,118212,118580,117878,133111,125539,118870,133113
2030,13878,20604,118095,118096,118008,117899,117899,19721,117900
2031,78175,4698,117961,117962,118352,117905,117906,290919,117908
2032,33111,4834,117961,118225,124449,118396,233714,118398,118399
2033,77246,7344,117961,118225,120663,123045,123046,120518,123047
2034,41441,34064,117961,118386,118746,117905,117906,290919,117908
2035,17249,17184,117961,118343,118395,120647,126250,118398,120649
2036,32141,44002,117961,117962,118791,118702,249507,118704,118705
2037,72195,52356,117902,117903,119824,117905,117906,290919,117908
2038,78092,19760,117961,117962,118352,117905,117906,290919,117908
2039,15023,18210,91261,118026,120671,273308,118029,249618,118232
2040,16985,743,117961,118343,120722,118321,117906,290919,118322
2041,75901,1930,122880,122974,119781,120097,155316,270488,120099
2042,15672,18046,117961,118300,118783,117905,240983,290919,117908
2043,81364,59394,91261,118026,118317,118321,117906,290919,118322
2044,98464,53208,118602,118603,118810,119323,135298,19793,119325
2045,80212,1409,117961,118300,120722,118784,290919,290919,118786
2046,17278,2344,118212,118213,120823,120647,311441,118398,120649
2047,37651,79834,118090,118091,117884,117879,117886,19721,117880
2048,39630,7578,117961,118343,118437,117905,117906,290919,117908
2049,2642,873,117961,118413,120526,118321,118448,290919,118322
2050,20279,59517,117916,118011,117884,117885,117913,117887,117888
2051,4675,52356,117902,117903,119824,118321,117906,290919,118322
2052,27416,27568,117975,117976,117920,118568,310732,19721,118570
2053,19722,7648,117961,118300,119181,118321,240983,290919,118322
2054,23096,55132,118169,118170,118042,118563,158413,270488,118565
2055,33642,56781,117926,118266,117941,118568,195390,19721,118570
2056,32642,46645,119280,119281,118623,118995,286106,292795,118997
2057,33147,16098,117961,118327,120171,118890,182227,118398,118892
2058,78271,7424,5110,117954,122672,133111,306530,118870,133113
2059,45790,4669,117961,118327,118391,117905,117906,290919,117908
2060,77178,50952,117961,118327,118929,118685,279443,308574,118687
2061,19312,14560,117951,117952,118008,117879,117897,19721,117880
2062,25279,4837,117961,118300,120026,119433,133686,118424,119435
2063,73144,4931,118290,118291,119488,118293,119489,118295,118296
2064,18058,51757,117961,119256,119257,280788,121024,292795,119082
2065,19722,7560,117961,118300,119181,117905,290919,290919,117908
2066,15064,52007,117961,117962,118910,179731,118368,117887,117973
2067,20349,2163,117935,117936,120694,118636,130218,118638,118639
2068,32270,4871,117961,118300,120144,118054,118054,117887,118055
2069,73876,7822,117961,118327,118492,132692,174445,270488,132694
2070,42954,17196,120864,121013,124266,118422,300136,118424,118425
2071,73536,3211,117961,118446,120368,122274,159048,3130,122275
2072,4675,14810,117961,118413,120370,118321,117906,290919,118322
2073,76551,6038,117876,117877,117878,118568,139169,19721,118570
2074,19998,1553,117961,118225,123173,118054,120716,117887,118055
2075,14570,23666,118084,118085,117920,117879,117886,19721,117880
2076,1020,3966,117961,118343,122012,118321,117906,290919,118322
2077,17777,7504,117961,118300,118783,118321,117906,290919,118322
2078,31661,25558,117961,118052,118992,118685,120316,308574,118687
2079,36731,95215,118006,118007,118008,117879,122240,19721,117880
2080,4675,8516,117961,118386,118733,169634,235935,118736,169635
2081,22611,17783,117961,118413,118414,117905,117906,290919,117908
2082,4650,7253,117961,118225,118403,118321,117906,290919,118322
2083,4675,2641,117961,118327,118391,118784,121556,290919,118786
2084,78175,14638,117961,118052,118992,118321,290919,290919,118322
2085,27287,27103,117902,117903,120171,118863,183958,118398,118865
2086,7543,7075,119062,119091,143531,117905,118036,290919,117908
2087,23990,125466,117902,117903,120171,120990,262257,118398,120992
2088,34950,7133,117961,118327,118320,118784,118785,290919,118786
2089,15730,1398,117961,118300,120722,118321,117906,290919,118322
2090,76562,16371,117961,118446,118684,118321,117906,290919,118322
2091,391,58692,117926,118124,117941,117885,117913,117887,117888
2092,79343,15435,117961,118343,122299,119949,131270,290919,119951
2093,34780,2594,117961,118300,123472,118259,118260,290919,118261
2094,32270,15413,117961,118300,164199,159116,164668,136398,159118
2095,74643,7935,117961,118052,120539,117905,117906,290919,117908
2096,3853,4261,118212,118213,126955,118321,173628,290919,118322
2097,19722,49823,117961,118300,127168,118321,117906,290919,118322
2098,18072,124033,124034,124035,117945,280788,126042,292795,119082
2099,1287,2014,117961,117962,118791,118368,129597,117887,118486
2100,32270,88561,117961,118343,119218,120348,196416,118295,120350
2101,75507,2541,117961,118343,118856,117905,117906,290919,117908
2102,75787,51740,118752,118753,119121,280788,130913,292795,119082
2103,20351,1970,118212,159716,118378,118451,159717,118453,118454
2104,25561,873,117961,118413,120526,118784,152747,290919,118786
2105,18418,52098,119062,119091,118957,117905,117906,290919,117908
2106,36966,51740,118752,119070,118754,118805,130913,118474,118807
2107,27124,5899,117961,118327,120318,118841,152788,118643,118843
2108,19975,49823,117961,118300,127168,117905,117906,290919,117908
2109,71931,76601,117961,118052,120417,118702,125047,118704,118705
2110,28315,74884,126918,126919,118042,118563,176749,270488,118565
2111,14912,15383,117961,118343,127168,118396,300044,118398,118399
2112,33001,2612,117961,118386,123901,117905,117906,290919,117908
2113,30952,5060,117961,117962,118791,122022,131419,119221,122024
2114,79092,5001,117961,118300,123055,120006,128578,118424,120008
2115,4675,4642,117961,118327,120551,118321,117906,290919,118322
2116,1003,4496,117961,118225,120551,117905,117906,290919,117908
2117,80873,51172,117961,118225,120551,120690,120691,290919,120692
2118,15672,123154,117902,117903,118783,118321,117906,290919,118322
2119,39429,994,117961,118300,120312,120516,123107,120518,120519
2120,75078,6071,117961,118413,122007,118321,117906,290919,118322
2121,39330,8091,117961,118386,118522,118321,117906,290919,118322
2122,77203,15627,117961,119256,119257,117946,118806,292795,117948
2123,42093,3085,117961,118300,125821,118834,251171,118424,118836
2124,73815,28475,118315,118463,122636,119172,147163,118467,119174
2125,37138,131441,117961,118343,118292,118422,300136,118424,118425
2126,45652,239,117961,118225,118403,118321,117906,290919,118322
2127,19484,30799,118219,118220,118221,117885,117886,117887,117888
2128,45314,49024,132839,145248,118378,121372,300603,119184,121374
2129,83887,101792,117961,118386,120677,123670,305057,121916,123672
2130,25885,2229,117961,118340,118450,119192,132442,119184,119194
2131,26411,10038,5110,117954,117895,117885,117955,117887,117888
2132,77300,7766,118256,118257,118623,118995,136748,292795,118997
2133,861,7454,117961,118413,122007,118784,121873,290919,118786
2134,32456,54248,117961,118327,120559,120618,304465,118643,120619
2135,31976,53319,118084,118085,118810,120033,120034,19793,120035
2136,34950,8487,117961,118327,118320,117905,117906,290919,117908
2137,80584,78444,118555,118178,121023,259173,121024,292795,118943
2138,34954,25262,117961,118327,118320,122297,301475,118331,118899
2139,40777,27484,118185,31010,117920,118568,129510,19721,118570
2140,27348,70130,118595,118596,81476,118826,158101,118424,118828
2141,37018,35675,118582,118583,117945,117946,117946,292795,117948
2142,76556,17327,117961,118446,118684,117905,117906,290919,117908
2143,4675,19645,117961,118413,118481,117905,240983,290919,117908
2144,79092,5604,117961,118343,119598,118636,235245,118638,118639
2145,80668,19839,117961,118300,123201,118321,117906,290919,118322
2146,79006,1350,117961,118052,122938,118321,117906,290919,118322
2147,4675,14731,117961,118446,118447,118784,121926,290919,118786
2148,42085,57797,119596,119597,169899,119928,306404,118331,119929
2149,969,3486,118752,119070,118042,118563,171750,270488,118565
2150,4675,16557,117961,118327,120318,117905,117906,290919,117908
2151,7543,44022,117961,117962,122215,118321,160543,290919,118322
2152,5173,79111,117961,118343,120291,118293,118302,118295,118296
2153,81070,29762,117961,118052,119243,118054,124320,117887,118055
2154,43305,16642,117961,118300,81476,118321,117906,290919,118322
2155,15714,57718,117961,119256,120943,118995,118806,292795,118997
2156,45981,8607,117961,118225,118403,118321,117906,290919,118322
2157,36789,29758,118120,118121,117884,117885,117913,117887,117888
2158,40391,70297,117961,118327,118744,118259,120721,290919,118261
2159,42362,1065,117961,118327,120559,118641,132791,118643,118644
2160,45603,5016,117961,118343,121710,120789,250337,118424,120791
2161,44944,5238,119596,119597,118053,118207,174445,270488,118209
2162,42093,769,117961,118343,120722,118636,277718,118638,118639
2163,77214,6982,117961,118300,118783,118784,213944,290919,118786
2164,4675,8487,117961,118327,118320,118321,117906,290919,118322
2165,16162,7424,5110,117954,122672,130857,125539,308574,130858
2166,43714,70062,117961,118386,118746,118321,117906,290919,118322
2167,74995,14829,117961,118052,119986,117905,117906,290919,117908
2168,917,22507,117961,118300,120059,118636,135814,118638,118639
2169,7543,4584,117961,118300,120297,118321,117906,290919,118322
2170,38704,9847,117876,117877,117878,117879,117879,19721,117880
2171,42189,74831,117961,118327,118391,118784,121556,290919,118786
2172,108224,23347,117961,118052,119408,118685,279443,308574,118687
2173,27292,23136,117961,118052,119742,118321,117906,290919,118322
2174,34582,1409,117961,118300,120722,118784,117906,290919,118786
2175,20294,53584,117916,117917,117884,118568,281735,19721,118570
2176,18418,2892,118887,118888,118458,126078,309123,118424,126080
2177,32270,6216,117961,118327,118328,130857,161026,308574,130858
2178,78872,14883,117959,117960,117920,118568,310732,19721,118570
2179,17278,52105,118595,118596,81476,120344,233010,118424,120346
2180,27727,122272,117961,118225,122273,120516,189220,120518,120519
2181,75834,190,117961,118413,121639,118321,117906,290919,118322
2182,25270,4953,117961,118343,123476,120006,294485,118424,120008
2183,20364,820,117961,118300,123719,118777,279443,308574,118779
2184,4685,100,120140,120141,142145,117905,156948,290919,117908
2185,74001,71952,117932,117933,117878,117885,117886,117887,117888
2186,27082,14758,117961,118225,120054,119587,132654,118704,119589
2187,4675,1412,117902,117903,119181,118451,130134,118453,118454
2188,34764,18686,117961,118386,128823,118321,117906,290919,118322
2189,5676,1475,117902,117903,118450,121372,148801,119184,121374
2190,972,4865,117961,118343,121710,118422,300136,118424,118425
2191,42085,2220,117961,118300,125872,120344,303717,118424,120346
2192,75639,41804,118315,118463,119214,127657,127658,124487,127659
2193,33241,56801,120864,120865,19666,120632,278014,118131,120634
2194,278393,5201,117961,118343,118979,307024,159672,118331,118332
2195,79272,19952,117961,118327,118529,118054,118054,117887,118055
2196,6977,2983,117961,118343,118700,117905,240983,290919,117908
2197,77203,58711,117961,119256,119257,280788,280788,292795,119082
2198,27800,28613,118212,118213,120356,126516,137302,118612,126518
2199,42006,4370,117961,118343,118514,118321,117906,290919,118322
2200,7678,2518,117961,118300,19772,132096,266851,119095,132098
2201,20897,5767,117961,118343,118344,119849,161024,118638,119851
2202,27124,1088,117961,118327,119830,117905,117906,290919,117908
2203,42085,3230,117961,118386,121961,120348,249620,118295,120350
2204,110281,5604,117961,118343,119598,118958,159709,118960,118961
2205,79121,4375,117961,118343,120347,118826,257115,118424,118828
2206,45974,55161,118752,119070,118754,280788,280788,292795,119082
2207,15022,23347,117961,118386,120671,118777,279443,308574,118779
2208,35376,8343,119301,119302,119303,118321,117906,290919,118322
2209,32270,70130,118595,118596,81476,118826,158101,118424,118828
2210,25098,1043,120140,120141,121589,124886,123881,118643,124888
2211,1581,124899,117961,118327,120171,120647,249497,118398,120649
2212,73798,4875,120864,121013,121014,120789,171744,118424,120791
2213,20299,25430,117929,117930,117884,117879,117886,19721,117880
2214,23990,5396,117961,118343,119993,120773,118959,118960,120774
2215,20292,27916,117926,117927,117941,118568,281735,19721,118570
2216,29024,131441,117961,118343,118292,118422,300136,118424,118425
2217,35407,770,117961,118300,120722,118451,130134,118453,118454
2218,25241,21036,117961,118327,121694,118777,146567,308574,118779
2219,19945,5423,117961,118327,118391,123648,123107,120518,123650
2220,36783,11506,118114,118115,117920,118568,217938,19721,118570
2221,45519,5022,118887,118888,118631,118912,309291,118424,118914
2222,80221,5717,117961,118343,124725,118321,117906,290919,118322
2223,28294,48956,117961,119256,120356,118028,118368,117887,118030
2224,77659,65834,117983,117984,117878,117879,117913,19721,117880
2225,4675,5507,117961,118413,120370,117905,117906,290919,117908
2226,43622,7388,117961,118225,119924,118318,168365,118205,118319
2227,73104,1600,117961,118327,118507,118890,311441,118398,118892
2228,17226,7893,117961,118343,118979,118834,133686,118424,118836
2229,6960,6225,117961,118343,118437,117905,117906,290919,117908
2230,34924,6124,117961,118343,6104,118321,117906,290919,118322
2231,73493,57758,117961,118343,149210,118702,120065,118704,118705
2232,17308,139593,117902,118041,119781,130479,168305,119784,130481
2233,7543,17728,117961,118052,119986,118318,168365,118205,118319
2234,29304,58557,117980,117981,117941,117885,117913,117887,117888
2235,3853,5524,117961,118343,118514,118321,290919,290919,118322
2236,80208,21863,117961,118386,123144,123067,233714,118398,123068
2237,302049,15779,117961,118300,118535,117905,117906,290919,117908
2238,17249,4972,117961,118052,118395,120647,311441,118398,120649
2239,19843,3936,117943,117944,117945,280788,126042,292795,119082
2240,33146,4341,117961,118300,118957,118321,117906,290919,118322
2241,27124,2017,117961,118052,121645,118054,118054,117887,118055
2242,25266,4738,117961,118300,118458,120006,311622,118424,120008
2243,974,6257,117961,118343,120722,117905,240983,290919,117908
2244,43714,34064,117961,118386,118746,117905,117906,290919,117908
2245,30570,3152,117961,118386,121961,119351,126359,3130,119353
2246,73503,5293,118290,118291,118660,120344,274278,118424,120346
2247,79092,1840,117961,118343,118514,118321,240983,290919,118322
2248,27356,25289,117961,118386,120361,132692,133764,270488,132694
2249,34950,91342,117961,118327,118933,118523,310608,118331,118525
2250,7543,71189,117961,118386,128823,118259,125206,290919,118261
2251,75078,23154,118315,118316,118317,307024,311622,118331,118332
2252,79092,4932,117961,118225,119824,121915,137949,121916,121917
2253,43503,72209,117961,118225,124948,118054,124424,117887,118055
2254,16191,7644,117961,118225,120383,120690,120690,290919,120692
2255,39883,19834,117961,118052,120096,120097,174445,270488,120099
2256,38719,119058,118079,118080,117878,117885,118177,117887,117888
2257,79092,6736,117961,117969,6725,122290,268766,6725,122292
2258,75216,55643,118256,118257,117945,118995,118806,292795,118997
2259,28586,5158,118290,118291,118597,118980,153123,118295,118982
2260,19723,2113,117951,117952,117920,118568,118568,19721,118570
2261,38391,8280,118212,118580,117895,117896,117897,117887,117898
2262,72201,7822,117961,118327,118492,132692,166382,270488,132694
2263,15884,5313,117961,118052,120356,122067,141493,118424,122069
2264,23990,20376,117902,117903,120171,119004,125467,119006,119007
2265,19751,3868,117961,118386,122938,118784,117906,290919,118786
2266,20293,666,117926,118124,117941,117885,117913,117887,117888
2267,60039,117445,119062,119091,118535,117905,117906,290919,117908
2268,33054,46511,117961,118300,118597,118054,120514,117887,118055
2269,32270,15682,117961,118300,118957,118321,117906,290919,118322
2270,79299,46376,118573,118574,117945,259173,121024,292795,118943
2271,75834,141,117961,118225,122273,118321,117906,290919,118322
2272,14845,7253,117961,118225,118403,118321,117906,290919,118322
2273,39883,15422,117961,118052,118867,120097,174445,270488,120099
2274,26391,24974,91261,118026,118027,121143,267952,249618,121145
2275,81482,14855,117961,118300,123719,118451,130134,118453,118454
2276,78833,249456,117961,117969,118970,118890,201289,118398,118892
2277,74302,1480,118290,118291,118450,146951,130411,117887,146952
2278,27727,4663,117961,118225,122298,120591,132696,119095,120593
2279,3853,8784,117961,118300,119890,118422,147040,118424,118425
2280,38468,17144,117980,117981,117884,117885,117913,117887,117888
2281,37260,4118,117876,117877,117878,117879,117879,19721,117880
2282,75245,20439,117890,118102,117878,117879,117879,19721,117880
2283,28490,53131,117935,117936,117878,118568,260027,19721,118570
2284,75870,4088,117961,118300,118458,118293,118302,118295,118296
2285,40069,52734,118290,118291,118660,118293,118294,118295,118296
2286,74874,56602,118079,118080,117878,117879,304519,19721,117880
2287,23096,16541,117961,118225,120551,117905,117906,290919,117908
2288,32270,5143,117961,118343,123125,119849,244844,118638,119851
2289,44731,4434,117961,118052,120671,118321,118448,290919,118322
2290,42085,4466,117961,118300,118360,118054,118054,117887,118055
2291,20364,2260,117961,118343,119598,118834,133686,118424,118836
2292,7678,15575,117902,118041,118623,280788,280788,292795,119082
2293,33248,5039,117961,118343,123125,118777,279443,308574,118779
2294,26391,2541,117961,118343,118856,118321,117906,290919,118322
2295,3853,13827,117961,118343,118514,118777,308574,308574,118779
2296,17226,4909,117961,118300,118458,120344,311701,118424,120346
2297,6977,69637,119062,119091,120410,118278,120411,290919,118279
2298,33054,5114,117961,118300,119890,120344,303717,118424,120346
2299,33054,5313,117961,118052,120356,122067,141493,118424,122069
2300,95755,6993,117961,118343,118514,118321,290919,290919,118322
2301,39883,70066,91261,118026,118202,118321,117906,290919,118322
2302,18418,4716,118290,118291,120026,120344,165069,118424,120346
2303,77659,53226,117983,117984,117878,117879,117879,19721,117880
2304,4675,1806,117961,118413,122007,118321,117906,290919,118322
2305,6977,7220,117961,118225,120551,117905,186454,290919,117908
2306,7543,1249,117961,117962,118910,117905,117906,290919,117908
2307,74432,7459,5110,117954,122672,118685,223708,308574,118687
2308,73212,15412,117961,118343,127705,119849,147059,118638,119851
2309,31441,5043,117961,118300,118458,120006,310997,118424,120008
2310,971,743,117961,118343,120722,118784,117906,290919,118786
2311,74016,18236,117961,118052,120304,307024,129630,118331,118332
2312,20801,14952,117961,117962,119223,118259,125889,290919,118261
2313,23885,8715,117961,118052,119986,118321,240983,290919,118322
2314,38704,55995,117916,118150,118599,118054,244447,117887,118055
2315,6156,5730,117961,118446,120026,120578,120579,118762,120580
2316,79121,15902,117961,118052,120398,118834,136989,118424,118836
2317,81350,4038,119134,119135,118911,118293,118302,118295,118296
2318,34924,13844,117961,118327,119995,120690,120691,290919,120692
2319,75078,59765,117961,118386,121961,124152,304629,118424,124154
2320,36900,5903,117929,117940,119569,119323,123932,19793,119325
2321,75834,84891,120342,120343,118631,118321,125684,290919,118322
2322,75834,4638,117961,118343,119987,117905,117906,290919,117908
2323,79092,2113,117951,117952,117920,118568,117897,19721,118570
2324,5173,7524,117961,118300,118437,118777,279443,308574,118779
2325,22682,70274,119062,119091,118042,118563,118563,270488,118565
2326,45349,2113,117951,117952,117878,119192,128322,119184,119194
2327,2809,117445,119062,119091,118535,117905,117906,290919,117908
2328,28149,70692,118315,118316,118202,118784,117906,290919,118786
2329,38083,12745,117978,117979,117912,118568,281735,19721,118570
2330,38470,20690,117876,117877,117878,117879,117879,19721,117880
2331,19945,14791,117961,118343,119598,118321,117906,290919,118322
2332,18688,13295,117876,117877,117878,117899,278712,19721,117900
2333,81522,40006,118315,118463,123089,119172,132732,118467,119174
2334,43452,13376,117902,118041,118042,118043,118044,270488,118046
2335,29665,52687,117961,117962,118910,119346,4673,4673,119348
2336,79092,17688,117961,118413,118481,118636,310589,118638,118639
2337,15064,15993,117961,117969,121617,118054,118054,117887,118055
2338,20284,50323,117980,117981,117941,118568,281735,19721,118570
2339,34871,17640,117961,118052,118706,118318,120689,118205,118319
2340,44987,34612,117961,118327,118320,118321,117906,290919,118322
2341,27699,15682,117961,118300,118957,117905,240983,290919,117908
2342,81276,6482,117961,118343,118821,118321,117906,290919,118322
2343,1020,3236,117961,118327,129972,117905,117906,290919,117908
2344,19949,19956,117961,118327,274241,118777,133772,308574,118779
2345,75834,9597,117961,118446,120317,129561,134531,3130,129563
2346,15938,44917,117961,117962,118450,119192,119192,119184,119194
2347,80180,20394,117961,118052,118706,120773,305057,118960,120774
2348,41023,25813,117961,118300,119181,118321,117906,290919,118322
2349,38972,15555,118256,118257,117945,118274,118806,292795,118276
2350,23152,3234,119280,119281,118623,118995,136748,292795,118997
2351,23921,51295,119062,119091,119362,119849,310589,118638,119851
2352,42031,28253,118315,118463,123089,118321,124498,290919,118322
2353,37008,49353,117961,117962,118910,118321,117906,290919,118322
2354,39932,52434,118212,118213,123472,118321,117906,290919,118322
2355,20364,5047,117961,118300,127284,118826,236735,118424,118828
2356,79092,17091,117961,118225,118403,132671,121873,290919,132673
2357,80381,2270,117961,118413,120666,120773,118959,118960,120774
2358,15938,7398,117961,118225,119924,118321,240983,290919,118322
2359,79092,10494,117961,118225,120535,118890,311441,118398,118892
2360,32270,140260,118163,119075,119076,118834,311236,118424,118836
2361,34431,4566,119062,119091,118992,118028,130134,117887,118030
2362,38704,46515,11146,118491,117884,117885,117913,117887,117888
2363,105472,196,117961,118413,121639,121594,131163,4673,121596
2364,20364,52898,118212,118580,119362,119065,159733,118667,119067
2365,44722,3270,117961,118225,122870,118563,123784,270488,118565
2366,17308,16971,117961,118343,119993,125793,125794,118643,125795
2367,1041,1065,117961,118327,126310,118641,306399,118643,118644
2368,5112,21303,117961,118300,119890,120348,249620,118295,120350
2369,43876,50213,118079,118080,117878,117885,118177,117887,117888
2370,36267,57714,118595,118596,118447,307024,311622,118331,118332
2371,81476,310998,118595,118596,81476,120344,138524,118424,120346
2372,7678,51007,117961,118413,120526,118321,117906,290919,118322
2373,42056,7287,117961,117962,119223,118278,118260,290919,118279
2374,75078,119350,117961,118386,118522,119351,119352,3130,119353
2375,23096,4108,118887,118888,119136,119137,122564,118474,119139
2376,16004,26320,117961,118327,118391,118321,117906,290919,118322
2377,80165,1412,117902,117903,119181,118451,130134,118453,118454
2378,14858,3722,117961,118300,120059,121469,159141,118424,121471
2379,35499,46514,117961,118300,120059,119849,310589,118638,119851
2380,15710,7445,117961,118343,122299,179731,118054,117887,117973
2381,6977,8430,117961,118225,118403,118321,117906,290919,118322
2382,75078,123310,117961,118386,118317,118784,117906,290919,118786
2383,79168,14695,118602,118603,118008,117885,118097,117887,117888
2384,74310,6235,117961,118343,118437,307024,311622,118331,118332
2385,34954,58916,117961,118327,118391,120172,230830,290919,120173
2386,20299,310646,117918,117919,118483,117879,121445,19721,117880
2387,42189,5432,117961,118327,118391,118321,117906,290919,118322
2388,38704,59517,117916,118011,117884,117885,117913,117887,117888
2389,43017,19888,117916,118011,117920,117879,117886,19721,117880
2390,74995,55669,117902,118041,118623,118274,118806,292795,118276
2391,79226,18039,117961,118446,123462,120033,308745,19793,120035
2392,31441,7520,117961,118343,124725,118784,117906,290919,118786
2393,16078,79105,119062,119063,124211,120516,123107,120518,120519
2394,27785,6999,117961,118343,121747,118321,117906,290919,118322
2395,20274,3954,117961,118343,120291,118422,300136,118424,118425
2396,117221,743,117961,118343,120722,118784,117906,290919,118786
2397,27356,8168,117961,118386,119954,119962,168365,118205,119964
2398,75336,17561,91261,118026,118202,118278,151426,290919,118279
2399,25993,3918,117961,118343,118660,118912,309291,118424,118914
2400,33161,6999,117961,118343,121747,118321,117906,290919,118322
2401,4675,51761,117961,118413,120370,117905,117906,290919,117908
2402,13878,50690,118269,118270,117878,117899,117899,19721,117900
2403,28787,5192,119596,119597,118825,118293,118294,118295,118296
2404,21457,1806,117961,118413,122007,118321,240983,290919,118322
2405,38119,17687,118219,118220,117941,117879,119983,19721,117880
2406,32642,5580,117902,118041,118556,280788,280788,292795,119082
2407,37557,81307,131853,131854,128350,128351,140648,118347,128353
2408,80937,16830,117961,118327,119830,120773,118959,118960,120774
2409,917,18454,117961,118343,119598,125171,257115,118424,125173
2410,20268,46788,117929,117940,117920,118568,163031,19721,118570
2411,33054,7893,117961,118343,118979,120497,133686,118424,120499
2412,79092,22853,117961,118386,118896,119849,182753,118638,119851
2413,76554,14731,117961,118446,118447,118784,213944,290919,118786
2414,75078,56723,118315,118316,118317,118318,118318,118205,118319
2415,971,53367,119134,119135,118437,122927,164572,118131,122929
2416,25993,20421,117890,118102,117878,117899,123862,19721,117900
2417,22682,5115,117961,118300,118631,119587,176829,118704,119589
2418,23096,17393,117961,118225,119781,118207,164476,270488,118209
2419,45790,32457,117961,118327,118320,117905,240983,290919,117908
2420,27082,17713,117961,118225,122273,117905,117906,290919,117908
2421,39177,17002,5110,117954,117895,117899,117897,19721,117900
2422,73547,10494,117961,118225,120535,118890,311441,118398,118892
2423,45215,58457,117926,118266,117920,118568,131190,19721,118570
2424,17249,13873,117961,118300,118825,121469,310997,118424,121471
2425,20351,1480,117887,118178,117945,119192,129506,119184,119194
2426,34748,16098,117961,118327,120171,118890,182227,118398,118892
2427,23921,48960,122880,122974,118042,118043,118043,270488,118046
2428,25993,5196,117961,118052,121949,118636,197472,118638,118639
2429,32270,5504,117961,118300,131274,307024,311622,118331,118332
2430,13878,59000,118181,118182,117941,117899,117897,19721,117900
2431,76459,54618,117961,118052,118821,118321,117906,290919,118322
2432,74001,79825,118090,118091,117941,117879,117886,19721,117880
2433,73581,16907,117961,117962,134848,124775,134849,122032,124777
2434,32270,7615,117961,118300,120059,118777,132558,308574,118779
2435,6977,820,117961,118300,123719,118321,240983,290919,118322
2436,39939,43916,117961,118225,119136,119137,120057,118474,119139
2437,25285,27,117961,118413,120370,118685,279443,308574,118687
2438,3264,72287,126918,126919,118042,118043,118043,270488,118046
2439,4675,71365,118990,118991,118992,119351,156064,3130,119353
2440,18339,55941,117961,118327,122109,117905,117906,290919,117908
2441,13878,58493,117918,117919,117941,117879,121445,19721,117880
2442,4649,4659,117961,118225,120663,118321,117906,290919,118322
2443,25993,5288,119596,119597,149666,120357,149667,118424,120359
2444,17226,17733,117961,118300,119984,118396,269406,118398,118399
2445,101783,1311,117961,117962,117904,128230,302830,4673,128231
2446,75472,5201,117961,118343,118979,307024,159672,118331,118332
2447,14570,15982,117961,118413,123003,118685,120316,308574,118687
2448,45337,18686,117961,118386,128823,117905,290919,290919,117908
2449,74728,96354,118990,118991,118992,118784,165715,290919,118786
2450,77161,7339,117961,118300,118360,119849,233946,118638,119851
2451,34327,5396,117961,118343,119993,117905,117906,290919,117908
2452,28294,6482,117961,118052,118992,117905,117906,290919,117908
2453,14570,50511,118006,118007,118008,117879,122240,19721,117880
2454,42093,23118,117961,118343,118833,118834,309123,118424,118836
2455,41269,18686,117961,118386,121883,118321,117906,290919,118322
2456,75078,13781,117961,118386,121961,120516,123107,120518,120519
2457,20299,19140,117929,117930,119569,179731,119425,117887,117973
2458,80539,217,117961,118413,120370,117905,150358,290919,117908
2459,18897,46546,117978,117979,117912,117879,117886,19721,117880
2460,41825,11148,118269,118270,117878,117885,117913,117887,117888
2461,20364,7520,117961,118343,124725,117905,240983,290919,117908
2462,23921,5201,117961,118343,118979,307024,159672,118331,118332
2463,25993,7411,117961,118386,118746,118747,130134,118453,118749
2464,18072,3884,118573,118574,118575,118172,152755,249618,118175
2465,7541,46224,117961,118327,118378,120952,120953,118453,120954
2466,25231,59421,117961,118327,118507,118396,133290,118398,118399
2467,27786,2582,117961,118343,121710,307024,133833,118331,118332
2468,971,1402,118290,118291,118437,120313,137017,118424,120315
2469,33642,50340,118090,118091,117941,118568,131694,19721,118570
2470,27124,70243,183723,119256,118492,118451,125738,118453,118454
2471,18058,2683,122880,122974,119796,122129,296249,121916,122131
2472,3853,4549,117961,118225,120050,117905,117906,290919,117908
2473,278393,15902,117961,118052,120398,118422,136989,118424,118425
2474,74466,7398,117961,118225,119924,118321,240983,290919,118322
2475,75834,2908,117961,118343,118979,118834,133686,118424,118836
2476,39149,16698,117961,118300,118597,118980,301534,118295,118982
2477,45349,770,117961,118300,120722,118451,130134,118453,118454
2478,73110,1216,117902,117903,118507,122989,169121,119006,122991
2479,4675,2318,117961,118327,118933,118784,117906,290919,118786
2480,1969,8164,117961,118327,120685,118641,123881,118643,118644
2481,79092,91412,117975,117976,142540,118568,142541,19721,118570
2482,45005,2296,117961,118413,277693,118451,130134,118453,118454
2483,43280,7426,117961,118225,119238,122849,120324,119095,122850
2484,75649,50781,91261,118026,139759,118321,117906,290919,118322
2485,74310,131441,117961,118343,118292,118422,300136,118424,118425
2486,17183,21303,117961,118300,119890,307024,152866,118331,118332
2487,20226,53010,118752,119070,118042,118563,118563,270488,118565
2488,75078,15626,118315,118316,129128,119849,126747,118638,119851
2489,35376,8059,117961,118386,118692,118318,120689,118205,118319
2490,15022,56201,91261,118026,118746,118318,168365,118205,118319
2491,17791,3966,117961,118343,122012,118321,290878,290919,118322
2492,16241,2034,117961,118052,118328,299559,118204,118205,163732
2493,38391,14456,117890,117891,117878,117879,117913,19721,117880
2494,86156,7455,117961,118343,118833,118784,290919,290919,118786
2495,20284,62541,117980,117981,118246,179731,118017,117887,117973
2496,391,32074,117926,118124,119569,179731,119035,117887,117973
2497,88458,50634,118163,118164,117878,117879,117879,19721,117880
2498,32299,18046,117961,118300,118783,118321,117906,290919,118322
2499,15716,15540,118573,118574,117945,280788,127423,292795,119082
2500,25753,2685,122880,122974,117945,117946,149467,292795,117948
2501,15030,17713,117961,118225,120663,118321,117906,290919,118322
2502,28294,15887,117961,118052,120677,120357,310997,118424,120359
2503,79131,7520,117961,118343,124725,118321,117906,290919,118322
2504,6215,6216,117961,118327,118328,130857,161026,308574,130858
2505,28149,4202,117961,118052,118706,118523,306404,118331,118525
2506,25305,53049,117961,118052,118229,118054,120514,117887,118055
2507,31825,15568,117961,118446,124170,118890,311441,118398,118892
2508,25993,18220,117961,118052,118867,118321,117906,290919,118322
2509,57880,4698,117961,117962,118352,118321,117906,290919,118322
2510,79121,5169,119596,119597,118597,118980,153123,118295,118982
2511,4675,4417,117961,118413,119968,130857,232825,308574,130858
2512,20274,46476,117902,117903,120171,117905,117906,290919,117908
2513,78176,1140,117961,117962,118352,117905,240983,290919,117908
2514,40669,15781,117961,118300,118395,118890,125128,118398,118892
2515,79327,17214,117961,118225,120535,123067,169986,118398,123068
2516,33146,1719,117961,118327,118507,118890,138290,118398,118892
2517,25812,25813,117961,118300,119181,118841,118842,118643,118843
2518,75078,23347,117961,118052,120671,118777,279443,308574,118779
2519,45300,4886,117961,118343,118979,118422,155142,118424,118425
2520,45974,2456,118752,118753,118754,280788,280788,292795,119082
2521,20226,54268,118752,119070,118754,280788,280788,292795,119082
2522,44781,7710,117902,118041,117945,118274,118806,292795,118276
2523,1937,2129,119134,119135,118450,119192,150595,119184,119194
2524,13878,1550,117961,118225,123173,118054,119601,117887,118055
2525,27317,3645,117961,118300,118631,124576,124577,118424,124578
2526,74431,28519,121518,121519,117895,118568,212837,19721,118570
2527,23151,3868,117961,118052,120096,118321,117906,290919,118322
2528,980,3119,117961,118300,120312,119849,310589,118638,119851
2529,33642,56776,117916,117917,117941,118568,128163,19721,118570
2530,17308,5739,117961,118446,118684,127108,127109,118667,127110
2531,15369,15459,118169,118170,135245,259173,143905,292795,118943
2532,28568,22361,119402,119403,117878,127389,127390,19721,127391
2533,39396,70062,117961,118386,118746,118321,117906,290919,118322
2534,4675,2631,117961,118327,120624,120690,130887,290919,120692
2535,25993,4993,117961,118343,118979,118912,309291,118424,118914
2536,17249,4218,117961,118300,118301,124152,300136,118424,124154
2537,25569,6114,117961,118343,6104,118259,118260,290919,118261
2538,18277,16922,117961,117962,118501,117905,256437,290919,117908
2539,23921,5017,117961,118343,119598,121915,185973,121916,121917
2540,37328,124316,118887,118888,118889,118863,307233,118398,118865
2541,15064,44012,117961,117962,119223,118054,118054,117887,118055
2542,18254,770,117961,118300,119181,128230,302830,4673,128231
2543,33248,5043,117961,118300,118458,118523,129545,118331,118525
2544,302049,794,118752,119070,117945,280788,152940,292795,119082
2545,75649,7560,117961,118343,119181,118321,117906,290919,118322
2546,80195,2296,117961,118413,277693,120773,118959,118960,120774
2547,17278,4815,118290,118291,118301,118293,118294,118295,118296
2548,15716,69370,118256,118257,117945,259173,118806,292795,118943
2549,35376,27214,117961,118386,118692,118321,117906,290919,118322
2550,278393,5151,117961,118300,118597,118054,118054,117887,118055
2551,80535,189,117961,118413,121639,118321,117906,290919,118322
2552,34832,2210,117961,118052,118378,119192,300603,119184,119194
2553,79168,23391,118602,118603,117941,118568,118568,19721,118570
2554,35498,3116,117961,118300,147589,118826,236735,118424,118828
2555,967,46526,117961,118300,119984,118396,269406,118398,118399
2556,36731,95215,118006,118007,118008,118568,292195,19721,118570
2557,35068,7346,117961,118343,123125,118777,279443,308574,118779
2558,30583,7796,118573,118574,118623,118995,286106,292795,118997
2559,18072,7703,117943,117944,117945,280788,126042,292795,119082
2560,41594,5690,117961,118413,120370,118784,117906,290919,118786
2561,15723,3526,117961,118225,120323,119093,120324,119095,119096
2562,4675,20361,117961,117962,118352,117905,240983,290919,117908
2563,32270,5039,117961,118343,123125,118777,279443,308574,118779
2564,38751,58916,117961,118327,118391,117905,117906,290919,117908
2565,73815,215806,118315,118316,123656,118321,242891,290919,118322
2566,39262,16125,117961,118052,120417,122274,244798,3130,122275
2567,36674,14633,118106,118107,117884,117879,121445,19721,117880
2568,28360,95479,117961,118327,118492,132692,226262,270488,132694
2569,45378,5197,117961,118343,127491,307024,294485,118331,118332
2570,43873,2014,117961,117962,117904,120773,127525,118960,120774
2571,81350,3860,117961,118446,120317,118321,117906,290919,118322
2572,44722,4663,117961,118225,120041,120591,132696,119095,120593
2573,6977,7339,117961,118300,118360,118361,118362,118363,118364
2574,42347,52356,117902,117903,119824,118321,117906,290919,118322
2575,42093,91868,117961,118343,123454,118321,117906,290919,118322
2576,20897,25318,117961,118052,119408,118530,278014,118131,118532
2577,3130,79603,117961,118386,125884,118054,118054,117887,118055
2578,974,1398,117961,118300,120722,118321,118448,290919,118322
2579,74001,46519,118090,118091,119424,179731,132991,117887,117973
2580,23966,3770,117961,118343,118395,120647,311441,118398,120649
2581,41758,28267,118315,118463,118464,119172,162182,118467,119174
2582,33206,783,117961,118413,277693,128230,302830,4673,128231
2583,35376,70169,117961,118386,118635,131997,131998,131999,132000
2584,4675,53261,117961,118225,120054,118702,303450,118704,118705
2585,19998,23125,118752,119070,119136,119137,181720,118474,119139
2586,18072,3281,117961,118225,119238,122849,120324,119095,122850
2587,75078,13850,117961,118386,121961,128764,118611,118612,128765
2588,17308,5156,118290,118291,119890,118293,118294,118295,118296
2589,6977,49574,117961,118052,118391,120773,118959,118960,120774
2590,80863,1903,117961,118343,118514,118321,117906,290919,118322
2591,25274,5244,117961,118343,119598,118980,133686,118295,118982
2592,27348,6267,120864,121013,124266,120344,170431,118424,120346
2593,20897,13784,117961,118327,125144,118530,278014,118131,118532
2594,37260,53251,117983,117984,117878,117879,117897,19721,117880
2595,74310,5228,119596,119597,168533,120789,301124,118424,120791
2596,6725,6748,117961,117969,6725,125687,278014,6725,125689
2597,78730,17930,117961,118446,119969,118811,120605,19793,118813
2598,33054,4343,117961,118343,118660,307024,132719,118331,118332
2599,73107,7389,117961,118386,118746,118451,130134,118453,118454
2600,25993,2260,117961,118343,119598,118834,133686,118424,118836
2601,3853,3881,117961,118343,118514,118321,117906,290919,118322
2602,35188,16602,117961,118340,118341,119849,157665,118638,119851
2603,19945,7344,117961,118225,120663,123648,147738,120518,123650
2604,30845,4972,117961,118052,118395,120647,311441,118398,120649
2605,79850,4004,117961,118343,118856,118321,117906,290919,118322
2606,42914,61247,117910,117911,131868,119192,139264,119184,119194
2607,15715,17930,117961,117969,118810,118811,120605,19793,118813
2608,37943,25761,118006,118007,118008,117885,117886,117887,117888
2609,15680,52098,119062,119091,118957,117905,117906,290919,117908
2610,38481,50509,118079,118080,117878,117879,118177,19721,117880
2611,41385,55805,117961,118343,118856,118685,122058,308574,118687
2612,5764,57757,117961,118343,142038,118321,117906,290919,118322
2613,34924,767,117961,118343,120722,117905,117906,290919,117908
2614,44914,2286,117902,117903,277693,117905,117906,290919,117908
2615,41569,52735,117961,118052,120356,122067,127906,118424,122069
2616,13878,5557,118169,118170,135245,259173,248160,292795,118943
2617,27323,16855,117961,118225,120041,119093,120042,119095,119096
2618,75834,17616,117961,118225,120054,118702,122081,118704,118705
2619,17308,252252,117902,117903,118437,122129,305057,121916,122131
2620,79342,3120,117961,118300,120312,118054,137017,117887,118055
2621,100038,5717,117961,118300,124725,118321,117906,290919,118322
2622,35066,5496,91261,118026,118202,117905,117906,290919,117908
2623,45481,4931,118290,118291,120026,118422,243787,118424,118425
2624,75078,24916,91261,118026,118027,119004,281655,119006,119007
2625,81044,6257,117961,118343,120722,117905,240983,290919,117908
2626,45828,61247,117910,117911,117920,119192,119193,119184,119194
2627,40069,89738,117961,117962,118409,307024,310608,118331,118332
2628,75639,75640,118315,118463,119214,118321,117906,290919,118322
2629,74976,59386,118315,118316,123656,118321,117906,290919,118322
2630,86127,783,117961,118413,120584,128230,302830,4673,128231
2631,6921,4375,117961,118343,120347,118422,300136,118424,118425
2632,37807,39119,117910,118855,119791,179731,119035,117887,117973
2633,74978,56591,118079,118080,117878,117879,118177,19721,117880
2634,31852,14289,118602,118603,117941,118568,125168,19721,118570
2635,6725,6843,117961,117969,6725,120527,204057,6725,120529
2636,31232,20432,117890,117891,117878,117879,117879,19721,117880
2637,73815,94615,118315,118463,118522,136701,162182,124487,136702
2638,20273,56006,117890,117891,117878,117885,118069,117887,117888
2639,29304,17116,117980,118076,117920,123191,123191,19721,123192
2640,80667,18686,117961,118386,128823,118321,117906,290919,118322
2641,15369,4736,117961,118300,118301,307024,204593,118331,118332
2642,39518,70243,117961,118327,118492,118451,125738,118453,118454
2643,45990,32884,118573,118574,117945,117946,129731,292795,117948
2644,33248,61062,117961,118446,120368,119849,219966,118638,119851
2645,74212,8068,117961,118386,121668,117905,117906,290919,117908
2646,23965,4950,117961,118343,119598,120006,310997,118424,120008
2647,80765,3692,117961,118413,126229,118321,117906,290919,118322
2648,34950,2946,117961,118300,119796,118685,120316,308574,118687
2649,18418,15682,117961,118300,118957,118321,117906,290919,118322
2
Download .txt
gitextract_2aa2etyw/

├── .gitignore
├── BSMan/
│   ├── __init__.py
│   ├── ensemble.py
│   └── logistic.py
├── MIT-LICENSE
├── README.md
├── cache/
│   ├── .gitignore
│   └── models/
│       ├── diagnostics/
│       │   └── cv_preds/
│       │       └── .gitignore
│       └── main/
│           └── cv_preds/
│               └── .gitignore
├── classifier.py
├── combine/
│   └── combine.py
├── data/
│   ├── test.csv
│   └── train.csv
├── external/
│   ├── __init__.py
│   ├── ben.py
│   └── greedy.py
├── helpers/
│   ├── __init__.py
│   ├── data.py
│   ├── diagnostics.py
│   ├── feature_extraction.py
│   ├── ml.py
│   └── utils.py
├── plots/
│   └── .gitignore
├── saved_params.json
└── submissions/
    └── .gitignore
Download .txt
SYMBOL INDEX (55 symbols across 11 files)

FILE: BSMan/ensemble.py
  function save_results (line 21) | def save_results(predictions, filename):

FILE: BSMan/logistic.py
  function group_data (line 24) | def group_data(data, degree=3, hash=hash):
  function OneHotEncoder (line 41) | def OneHotEncoder(data, keymap=None):
  function create_test_submission (line 69) | def create_test_submission(filename, prediction):
  function cv_loop (line 81) | def cv_loop(X, y, model, N):

FILE: classifier.py
  function main (line 34) | def main(CONFIG):

FILE: combine/combine.py
  function inverse_transform (line 18) | def inverse_transform(X):
  function print_param (line 24) | def print_param(obj, params, prefix=''):

FILE: external/ben.py
  function create_features (line 19) | def create_features():

FILE: external/greedy.py
  function group_data (line 22) | def group_data(data, degree=3, hash=hash):
  function OneHotEncoder (line 30) | def OneHotEncoder(data, keymap=None):
  function cv_loop (line 59) | def cv_loop(X, y, model, N):
  function create_features (line 73) | def create_features(train='data/train.csv', test='data/test.csv'):

FILE: helpers/data.py
  function load_data (line 16) | def load_data(filename, return_labels=True):
  function load_from_cache (line 30) | def load_from_cache(filename, use_cache=True):
  function save_results (line 44) | def save_results(predictions, filename):
  function save_dataset (line 53) | def save_dataset(filename, X, X_test, features=None, features_test=None):
  function get_dataset (line 71) | def get_dataset(feature_set='basic', train=None, cv=None):

FILE: helpers/diagnostics.py
  function plot_roc (line 12) | def plot_roc(fpr, tpr):
  function learning_curve (line 24) | def learning_curve(classifier, y, train, cv, n=15):

FILE: helpers/feature_extraction.py
  function sparsify (line 37) | def sparsify(X, X_test):
  function create_datasets (line 44) | def create_datasets(X, X_test, y, datasets=[], use_cache=True):
  function create_effects (line 164) | def create_effects(X_train, X_test, y):
  function create_features (line 198) | def create_features(X_train, X_test, feature_set=0):
  function pre_process (line 333) | def pre_process(features_train, features_test,
  function get_pivottable (line 402) | def get_pivottable(X_train, X_test, use='all'):
  function create_tuples (line 448) | def create_tuples(X):
  function create_triples (line 457) | def create_triples(X):
  function consolidate (line 467) | def consolidate(X_train, X_test):
  class OneHotEncoder (line 495) | class OneHotEncoder():
    method __init__ (line 500) | def __init__(self):
    method fit (line 503) | def fit(self, X):
    method transform (line 509) | def transform(self, X):

FILE: helpers/ml.py
  class AUCRegressor (line 77) | class AUCRegressor(object):
    method __init__ (line 78) | def __init__(self):
    method _auc_loss (line 81) | def _auc_loss(self, coef, X, y):
    method fit (line 85) | def fit(self, X, y):
    method predict (line 91) | def predict(self, X):
    method score (line 94) | def score(self, X, y):
  class MLR (line 99) | class MLR(object):
    method __init__ (line 100) | def __init__(self):
    method fit (line 103) | def fit(self, X, y):
    method predict (line 107) | def predict(self, X):
    method score (line 111) | def score(self, X, y):
  class StackedClassifier (line 116) | class StackedClassifier(object):
    method __init__ (line 138) | def __init__(self, models, generalizer=None, model_selection=True,
    method _combine_preds (line 149) | def _combine_preds(self, X_train, X_cv, y, train=None, predict=None,
    method _find_best_subset (line 176) | def _find_best_subset(self, y, predictions_list):
    method _get_model_preds (line 213) | def _get_model_preds(self, model, X_train, X_predict, y_train, cache_f...
    method _get_model_cv_preds (line 234) | def _get_model_cv_preds(self, model, X_train, y_train, cache_file):
    method fit_predict (line 262) | def fit_predict(self, y, train=None, predict=None, show_steps=True):
  function compute_subset_auc (line 344) | def compute_subset_auc(indices, pred_set, y):
  function find_params (line 352) | def find_params(model, feature_set, y, subsample=None, grid_search=False):

FILE: helpers/utils.py
  function stringify (line 11) | def stringify(model, feature_set):
  function compute_auc (line 19) | def compute_auc(y, y_pred):
Condensed preview — 25 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (6,109K chars).
[
  {
    "path": ".gitignore",
    "chars": 325,
    "preview": "*.py[cod]\n*.pkl\n*.log\n.DS_Store\n\n# C extensions\n*.so\n\n# Packages\n*.egg\n*.egg-info\ndist\nbuild\neggs\nparts\nbin\nvar\nsdist\nde"
  },
  {
    "path": "BSMan/__init__.py",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "BSMan/ensemble.py",
    "chars": 5483,
    "preview": "\"\"\" Amazon Access Challenge Starter Code\n\nThis was built using the code of Paul Duan <email@paulduan.com> as a starting\n"
  },
  {
    "path": "BSMan/logistic.py",
    "chars": 9364,
    "preview": "\"\"\"\nThis program is based on code submitted by Miroslaw Horbal to the Kaggle \nforums, which was itself based on an earli"
  },
  {
    "path": "MIT-LICENSE",
    "chars": 1094,
    "preview": "The MIT License (MIT)\n\nCopyright (c) 2013 Paul Duan, Benjamin Solecki\n\nPermission is hereby granted, free of charge, to "
  },
  {
    "path": "README.md",
    "chars": 2057,
    "preview": "Amazon Employee Access Challenge\n================================\n\nThis code was written by Paul Duan (<email@paulduan.c"
  },
  {
    "path": "cache/.gitignore",
    "chars": 6,
    "preview": "*.pkl\n"
  },
  {
    "path": "cache/models/diagnostics/cv_preds/.gitignore",
    "chars": 51,
    "preview": "# Ignore everything except this file\n*\n!.gitignore\n"
  },
  {
    "path": "cache/models/main/cv_preds/.gitignore",
    "chars": 51,
    "preview": "# Ignore everything except this file\n*\n!.gitignore\n"
  },
  {
    "path": "classifier.py",
    "chars": 5555,
    "preview": "#!/usr/bin/env python\n\n\"\"\"Amazon Access Challenge\n\nThis is my part of the code that produced the winning solution to the"
  },
  {
    "path": "combine/combine.py",
    "chars": 2916,
    "preview": "\"\"\"combine.py\n\nThis is an ad-hoc script we used to find how to merge our submissions.\nFor this to work, the prediction v"
  },
  {
    "path": "data/test.csv",
    "chars": 3888184,
    "preview": "id,RESOURCE,MGR_ID,ROLE_ROLLUP_1,ROLE_ROLLUP_2,ROLE_DEPTNAME,ROLE_TITLE,ROLE_FAMILY_DESC,ROLE_FAMILY,ROLE_CODE\n1,78766,7"
  },
  {
    "path": "data/train.csv",
    "chars": 2037893,
    "preview": "ACTION,RESOURCE,MGR_ID,ROLE_ROLLUP_1,ROLE_ROLLUP_2,ROLE_DEPTNAME,ROLE_TITLE,ROLE_FAMILY_DESC,ROLE_FAMILY,ROLE_CODE\n1,393"
  },
  {
    "path": "external/__init__.py",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "external/ben.py",
    "chars": 2613,
    "preview": "\"\"\" Amazon Access Challenge Starter Code\n\nThis was built using the code of Paul Duan <email@paulduan.com> as a starting\n"
  },
  {
    "path": "external/greedy.py",
    "chars": 5002,
    "preview": "\"\"\" Greedy feature selection\nThis file is a slightly modified version of Miroslaw's code.\nIt generates a dataset contain"
  },
  {
    "path": "helpers/__init__.py",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "helpers/data.py",
    "chars": 3081,
    "preview": "\"\"\"ml.py\n\nUseful I/O functions.\n\nAuthor: Paul Duan <email@paulduan.com>\n\"\"\"\n\nimport logging\nimport numpy as np\nfrom scip"
  },
  {
    "path": "helpers/diagnostics.py",
    "chars": 1562,
    "preview": "\"\"\"diagnostics.py\n\nSome methods to plot diagnostics.\n\nAuthor: Paul Duan <email@paulduan.com>\n\"\"\"\n\nimport matplotlib.pypl"
  },
  {
    "path": "helpers/feature_extraction.py",
    "chars": 19459,
    "preview": "\"\"\"feature_extraction.py\n\nCreate the requested datasets.\n\nAuthor: Paul Duan <email@paulduan.com>\n\"\"\"\n\nfrom __future__ im"
  },
  {
    "path": "helpers/ml.py",
    "chars": 15122,
    "preview": "\"\"\"ml.py\n\nThis is the file that does the heavy lifting.\nIt contains the ML algorithms themselves:\n    - AUCRegressor: a "
  },
  {
    "path": "helpers/utils.py",
    "chars": 536,
    "preview": "\"\"\"utils.py\n\nSome useful functions.\nAuthor: Paul Duan <email@paulduan.com>\n\"\"\"\n\nfrom re import sub\nfrom sklearn.metrics "
  },
  {
    "path": "plots/.gitignore",
    "chars": 44,
    "preview": "# Ignore all except this file\n*\n!.gitignore\n"
  },
  {
    "path": "saved_params.json",
    "chars": 11808,
    "preview": "{\n    \"ETC:basic_b\": {\n        \"bootstrap\": true,\n        \"max_depth\": null,\n        \"max_features\": \"sqrt\",\n        \"mi"
  },
  {
    "path": "submissions/.gitignore",
    "chars": 49,
    "preview": "# Ignore all files except this one\n*\n!.gitignore\n"
  }
]

About this extraction

This page contains the full source code of the pyduan/amazonaccess GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 25 files (5.7 MB), approximately 1.5M tokens, and a symbol index with 55 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!