Commit 3f8e4d07 authored by Mihiranga G.L.V - IT18500790's avatar Mihiranga G.L.V - IT18500790

Merge branch 'IT18148282' into 'master'

It18148282

See merge request !18
parents a51052bb c7b76198
{
"cells": [],
"metadata": {},
"nbformat": 4,
"nbformat_minor": 5
}
......@@ -3,7 +3,11 @@
{
"cell_type": "code",
"execution_count": 1,
<<<<<<< HEAD
"id": "dbfb4db7",
=======
"id": "b2b62b44",
>>>>>>> master
"metadata": {},
"outputs": [],
"source": [
......@@ -21,7 +25,11 @@
{
"cell_type": "code",
"execution_count": 2,
<<<<<<< HEAD
"id": "7720bae4",
=======
"id": "11016a95",
>>>>>>> master
"metadata": {},
"outputs": [],
"source": [
......@@ -32,17 +40,29 @@
{
"cell_type": "code",
"execution_count": 3,
<<<<<<< HEAD
"id": "94cca285",
"metadata": {},
"outputs": [],
"source": [
"data = pd.read_csv(\"tourism_data.csv\")"
=======
"id": "cec68912",
"metadata": {},
"outputs": [],
"source": [
"data = pd.read_csv(\"Railway_Passenger_Final.csv\")"
>>>>>>> master
]
},
{
"cell_type": "code",
"execution_count": 4,
<<<<<<< HEAD
"id": "0f87ca58",
=======
"id": "0870d81a",
>>>>>>> master
"metadata": {},
"outputs": [
{
......@@ -66,6 +86,13 @@
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
<<<<<<< HEAD
" <th>age</th>\n",
" <th>gender</th>\n",
" <th>religion</th>\n",
" <th>occupation</th>\n",
" <th>category</th>\n",
=======
" <th>Age</th>\n",
" <th>Country</th>\n",
" <th>Disability</th>\n",
......@@ -73,11 +100,51 @@
" <th>GenderNo</th>\n",
" <th>LineNo</th>\n",
" <th>SeatLine</th>\n",
>>>>>>> master
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
<<<<<<< HEAD
" <td>47</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>7</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>14</td>\n",
" <td>1</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>25</td>\n",
" <td>1</td>\n",
" <td>3</td>\n",
" <td>5</td>\n",
" <td>14</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>45</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>5</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>38</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
=======
" <td>38</td>\n",
" <td>169</td>\n",
" <td>0</td>\n",
......@@ -125,6 +192,7 @@
" <td>1</td>\n",
" <td>1</td>\n",
" <td>4</td>\n",
>>>>>>> master
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
......@@ -133,6 +201,69 @@
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
<<<<<<< HEAD
" </tr>\n",
" <tr>\n",
" <th>6180</th>\n",
" <td>32</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>7</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6181</th>\n",
" <td>56</td>\n",
" <td>2</td>\n",
" <td>4</td>\n",
" <td>2</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6182</th>\n",
" <td>38</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>10</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6183</th>\n",
" <td>16</td>\n",
" <td>2</td>\n",
" <td>4</td>\n",
" <td>10</td>\n",
" <td>11</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6184</th>\n",
" <td>33</td>\n",
" <td>2</td>\n",
" <td>3</td>\n",
" <td>2</td>\n",
" <td>8</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>6185 rows × 5 columns</p>\n",
"</div>"
],
"text/plain": [
" age gender religion occupation category\n",
"0 47 1 1 7 10\n",
"1 14 1 2 2 8\n",
"2 25 1 3 5 14\n",
"3 45 1 1 5 2\n",
"4 38 2 2 2 2\n",
"... ... ... ... ... ...\n",
"6180 32 2 1 7 1\n",
"6181 56 2 4 2 3\n",
"6182 38 2 2 10 2\n",
"6183 16 2 4 10 11\n",
"6184 33 2 3 2 8\n",
"\n",
"[6185 rows x 5 columns]"
=======
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
......@@ -206,6 +337,7 @@
"7391 38 77 0 1 1 5 9\n",
"\n",
"[7392 rows x 7 columns]"
>>>>>>> master
]
},
"execution_count": 4,
......@@ -220,7 +352,11 @@
{
"cell_type": "code",
"execution_count": 5,
<<<<<<< HEAD
"id": "ffbea9de",
=======
"id": "dc782f98",
>>>>>>> master
"metadata": {},
"outputs": [
{
......@@ -244,6 +380,13 @@
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
<<<<<<< HEAD
" <th>age</th>\n",
" <th>gender</th>\n",
" <th>religion</th>\n",
" <th>occupation</th>\n",
" <th>category</th>\n",
=======
" <th>Age</th>\n",
" <th>Country</th>\n",
" <th>Disability</th>\n",
......@@ -251,6 +394,7 @@
" <th>GenderNo</th>\n",
" <th>LineNo</th>\n",
" <th>SeatLine</th>\n",
>>>>>>> master
" </tr>\n",
" </thead>\n",
" <tbody>\n",
......@@ -260,7 +404,11 @@
],
"text/plain": [
"Empty DataFrame\n",
<<<<<<< HEAD
"Columns: [age, gender, religion, occupation, category]\n",
=======
"Columns: [Age, Country, Disability, Class, GenderNo, LineNo, SeatLine]\n",
>>>>>>> master
"Index: []"
]
},
......@@ -276,23 +424,49 @@
{
"cell_type": "code",
"execution_count": 6,
<<<<<<< HEAD
"id": "d64554fa",
"metadata": {},
"outputs": [],
"source": [
"Y = data.category.copy()\n",
"X = data.drop(['category'], axis=1)"
=======
"id": "b7d860da",
"metadata": {},
"outputs": [],
"source": [
"Y = data.SeatLine.copy()\n",
"X = data.drop(['SeatLine'], axis=1)"
>>>>>>> master
]
},
{
"cell_type": "code",
"execution_count": 7,
<<<<<<< HEAD
"id": "8d35ebb9",
=======
"id": "b85ff8d6",
>>>>>>> master
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
<<<<<<< HEAD
"8 1950\n",
"2 1520\n",
"3 1222\n",
"7 543\n",
"10 268\n",
"1 215\n",
"17 191\n",
"11 179\n",
"15 61\n",
"14 36\n",
"Name: category, dtype: int64"
=======
"4 1928\n",
"7 1842\n",
"5 1015\n",
......@@ -304,6 +478,7 @@
"10 64\n",
"1 63\n",
"Name: SeatLine, dtype: int64"
>>>>>>> master
]
},
"execution_count": 7,
......@@ -312,13 +487,21 @@
}
],
"source": [
<<<<<<< HEAD
"data['category'].value_counts()"
=======
"data['SeatLine'].value_counts()"
>>>>>>> master
]
},
{
"cell_type": "code",
"execution_count": 8,
<<<<<<< HEAD
"id": "07b6c39e",
=======
"id": "d498a8ce",
>>>>>>> master
"metadata": {},
"outputs": [],
"source": [
......@@ -330,55 +513,178 @@
{
"cell_type": "code",
"execution_count": 9,
<<<<<<< HEAD
"id": "fb704672",
=======
"id": "c041cb4c",
>>>>>>> master
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
<<<<<<< HEAD
"-0.015417157287237906\n",
"0.1256787471680016\n",
"0.2782683265891767\n",
"0.04253698580839882\n"
=======
"-0.0035806135588234236\n",
"-0.009099476534655794\n",
"0.01109999125101634\n",
"0.7410300176783485\n"
>>>>>>> master
]
}
],
"source": [
<<<<<<< HEAD
"print(pearson(X.age, Y))\n",
"print(pearson(X.gender, Y))\n",
"print(pearson(X.religion, Y))\n",
"print(pearson(X.occupation, Y))"
=======
"print(pearson(X.Age, Y))\n",
"print(pearson(X.Country, Y))\n",
"print(pearson(X.Disability, Y))\n",
"print(pearson(X.GenderNo, Y))"
>>>>>>> master
]
},
{
"cell_type": "code",
"execution_count": 10,
<<<<<<< HEAD
"id": "cfc4ab66",
=======
"id": "094a84fa",
>>>>>>> master
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
<<<<<<< HEAD
"-0.8607428249918162\n",
"0.23192576665366443\n",
"1.1703138513764377\n",
"0.5227656371411455\n"
=======
"-0.09118144742552847\n",
"-0.627520395988806\n",
"0.0036254166615416767\n",
"0.6412361822996381\n"
>>>>>>> master
]
}
],
"source": [
<<<<<<< HEAD
"print(np.cov(X.age, Y)[0,1])\n",
"print(np.cov(X.gender, Y)[0,1])\n",
"print(np.cov(X.religion, Y)[0,1])\n",
"print(np.cov(X.occupation, Y)[0,1])"
=======
"print(np.cov(X.Age, Y)[0,1])\n",
"print(np.cov(X.Country, Y)[0,1])\n",
"print(np.cov(X.Disability, Y)[0,1])\n",
"print(np.cov(X.GenderNo, Y)[0,1])"
>>>>>>> master
]
},
{
"cell_type": "code",
"execution_count": 11,
<<<<<<< HEAD
"id": "f8f191a0",
"metadata": {},
"outputs": [],
"source": [
"finalFeaturedDataset = data[['age', 'gender','religion','occupation']]"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "328a936d",
"metadata": {},
"outputs": [],
"source": [
"from sklearn.preprocessing import MinMaxScaler\n",
"scaler = MinMaxScaler(feature_range=(0,1)) \n",
"\n",
"#assign scaler to column:\n",
"data = pd.DataFrame(scaler.fit_transform(finalFeaturedDataset), columns=finalFeaturedDataset.columns)"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "f20e0cb9",
"metadata": {},
"outputs": [],
"source": [
"X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.20, random_state=123)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "44fb3d60",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"LogisticRegression()"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model = LogisticRegression()\n",
"model.fit(X_train, Y_train)"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "49abddb8",
"metadata": {},
"outputs": [],
"source": [
"Y_pred = pd.Series(model.predict(X_test))"
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "386de5bd",
"metadata": {},
"outputs": [],
"source": [
"Y_test = Y_test.reset_index(drop=True)\n",
"Z = pd.concat([Y_test, Y_pred], axis = 1)\n",
"Z.columns = ['True', 'Prediction']\n",
"\n",
"acc_log = metrics.accuracy_score(Y_test, Y_pred)\n",
"pre_log = metrics.precision_score(Y_test,Y_pred, average='macro')\n",
"recall_log = metrics.recall_score(Y_test,Y_pred, average='macro')\n",
"f1_log = metrics.f1_score(Y_test,Y_pred, average='macro')"
]
},
{
"cell_type": "code",
"execution_count": 17,
"id": "4b6e1d29",
=======
"id": "c001994a",
>>>>>>> master
"metadata": {},
"outputs": [
{
......@@ -402,6 +708,10 @@
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
<<<<<<< HEAD
" <th>True</th>\n",
" <th>Prediction</th>\n",
=======
" <th>Age</th>\n",
" <th>Country</th>\n",
" <th>Disability</th>\n",
......@@ -409,11 +719,30 @@
" <th>GenderNo</th>\n",
" <th>LineNo</th>\n",
" <th>SeatLine</th>\n",
>>>>>>> master
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
<<<<<<< HEAD
" <td>2</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>8</td>\n",
" <td>8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>17</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>8</td>\n",
=======
" <td>38</td>\n",
" <td>169</td>\n",
" <td>0</td>\n",
......@@ -450,10 +779,15 @@
" <td>2</td>\n",
" <td>2</td>\n",
" <td>6</td>\n",
>>>>>>> master
" <td>8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
<<<<<<< HEAD
" <td>8</td>\n",
" <td>8</td>\n",
=======
" <td>33</td>\n",
" <td>165</td>\n",
" <td>0</td>\n",
......@@ -461,12 +795,24 @@
" <td>1</td>\n",
" <td>1</td>\n",
" <td>4</td>\n",
>>>>>>> master
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
<<<<<<< HEAD
" True Prediction\n",
"0 2 2\n",
"1 8 8\n",
"2 17 2\n",
"3 8 8\n",
"4 8 8"
]
},
"execution_count": 17,
=======
" Age Country Disability Class GenderNo LineNo SeatLine\n",
"0 38 169 0 1 1 3 6\n",
"1 33 165 0 2 1 1 4\n",
......@@ -476,26 +822,98 @@
]
},
"execution_count": 11,
>>>>>>> master
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
<<<<<<< HEAD
"Z.head()"
=======
"data.head()"
>>>>>>> master
]
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 18,
"id": "bda6a5e1",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Accuracy: 0.5731608730800324\n",
"Precision: 0.2352443901583099\n",
"Recall: 0.24387526038887497\n",
"f1-score: 0.22617241797446583\n"
]
}
],
"source": [
"print(\"Accuracy:\", metrics.accuracy_score(Y_test, Y_pred))\n",
"print(\"Precision:\", metrics.precision_score(Y_test, Y_pred,average='macro'))\n",
"print(\"Recall:\", metrics.recall_score(Y_test, Y_pred,average='macro'))\n",
"print(\"f1-score:\", metrics.f1_score(Y_test,Y_pred, average='macro'))"
=======
"execution_count": 12,
"id": "0de26781",
"metadata": {},
"outputs": [],
"source": [
"finalFeaturedDataset = data[['Age', 'Country','Disability','Class','GenderNo']]"
>>>>>>> master
]
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 19,
"id": "be13a615",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(0.5, 15.0, 'Predicted')"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"cnf_matrix = metrics.confusion_matrix(Y_test, Y_pred)\n",
"\n",
"labels = [0, 1]\n",
"fig, ax = plt.subplots()\n",
"tick_marks = np.arange(len(labels))\n",
"plt.xticks(tick_marks, labels)\n",
"plt.yticks(tick_marks, labels)\n",
"\n",
"# create heatmap\n",
"sns.heatmap(pd.DataFrame(cnf_matrix), annot = True, cmap = \"YlGnBu\", fmt=\"g\")\n",
"ax.xaxis.set_label_position(\"top\")\n",
"plt.title('Confusion Matrix', Y =1.25)\n",
"plt.ylabel(\"True\")\n",
"plt.xlabel(\"Predicted\")"
=======
"execution_count": 13,
"id": "0042371f",
"metadata": {},
......@@ -506,20 +924,34 @@
"\n",
"#assign scaler to column:\n",
"data = pd.DataFrame(scaler.fit_transform(finalFeaturedDataset), columns=finalFeaturedDataset.columns)"
>>>>>>> master
]
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 20,
"id": "ed01fa6f",
"metadata": {},
"outputs": [],
"source": [
"from sklearn.neighbors import KNeighborsClassifier"
=======
"execution_count": 14,
"id": "c5b4937c",
"metadata": {},
"outputs": [],
"source": [
"X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.20, random_state=123)"
>>>>>>> master
]
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 21,
"id": "822fb9b1",
=======
"execution_count": 15,
"id": "bb0a6886",
"metadata": {},
......@@ -532,12 +964,17 @@
"cell_type": "code",
"execution_count": 16,
"id": "da921c77",
>>>>>>> master
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
<<<<<<< HEAD
"model_id": "4a6fcf761de440d78979252c1f9a7a72",
=======
"model_id": "1dad2d9530bd43c7b6abdadac29fdfa4",
>>>>>>> master
"version_major": 2,
"version_minor": 0
},
......@@ -550,6 +987,20 @@
}
],
"source": [
<<<<<<< HEAD
"#X_train, X_test, Y_train, Y_test\n",
"\n",
"knn = KNeighborsClassifier(n_neighbors = 2)\n",
"for i in tqdm(range(10)):\n",
" knn.fit(X_train, Y_train) \n",
"Y_pred = knn.predict(X_test)\n",
"\n",
"\n",
"acc_knn = metrics.accuracy_score(Y_test, Y_pred)\n",
"pre_knn = metrics.precision_score(Y_test,Y_pred, average='macro')\n",
"recall_knn = metrics.recall_score(Y_test,Y_pred, average='macro')\n",
"f1_knn = metrics.f1_score(Y_test,Y_pred, average='macro')"
=======
"#X_train, X_test, Y_train, Y_test,Y_pred\n",
"\n",
"linear_svc = LinearSVC()\n",
......@@ -562,22 +1013,35 @@
"pre_linear_svc = metrics.precision_score(Y_test,Y_pred, average='macro')\n",
"recall_linear_svc = metrics.recall_score(Y_test,Y_pred, average='macro')\n",
"f1_linear_svc = metrics.f1_score(Y_test,Y_pred, average='macro')"
>>>>>>> master
]
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 22,
"id": "daf393ac",
=======
"execution_count": 17,
"id": "a79ef29a",
>>>>>>> master
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
<<<<<<< HEAD
"Accuracy: 0.936944219886823\n",
"Precision: 0.8534802072990271\n",
"Recall: 0.7931385150746588\n",
"f1-score: 0.806970013298535\n"
=======
"Accuracy: 0.2738336713995943\n",
"Precision: 0.35832646520146516\n",
"Recall: 0.11236006475404055\n",
"f1-score: 0.06488542557685116\n"
>>>>>>> master
]
}
],
......@@ -590,24 +1054,42 @@
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 23,
"id": "ff0c54e2",
"metadata": {},
"outputs": [],
"source": [
"from sklearn.svm import SVC, LinearSVC"
=======
"execution_count": 18,
"id": "ee385170",
"metadata": {},
"outputs": [],
"source": [
"from sklearn.neighbors import KNeighborsClassifier"
>>>>>>> master
]
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 24,
"id": "a34c2ba3",
=======
"execution_count": 19,
"id": "a1bb8f06",
>>>>>>> master
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
<<<<<<< HEAD
"model_id": "653323ebdc8e4ac2b2992dfd5d4ce751",
=======
"model_id": "0df9475381644df594ce15d28dfe72a5",
>>>>>>> master
"version_major": 2,
"version_minor": 0
},
......@@ -620,6 +1102,20 @@
}
],
"source": [
<<<<<<< HEAD
"#X_train, X_test, Y_train, Y_test,Y_pred\n",
"\n",
"linear_svc = LinearSVC()\n",
"for i in tqdm(range(10)):\n",
" linear_svc.fit(X_train, Y_train)\n",
"\n",
"Y_pred = linear_svc.predict(X_test)\n",
"\n",
"acc_linear_svc = metrics.accuracy_score(Y_test, Y_pred)\n",
"pre_linear_svc = metrics.precision_score(Y_test,Y_pred, average='macro')\n",
"recall_linear_svc = metrics.recall_score(Y_test,Y_pred, average='macro')\n",
"f1_linear_svc = metrics.f1_score(Y_test,Y_pred, average='macro')"
=======
"#X_train, X_test, Y_train, Y_test\n",
"\n",
"knn = KNeighborsClassifier(n_neighbors = 2)\n",
......@@ -632,22 +1128,35 @@
"pre_knn = metrics.precision_score(Y_test,Y_pred, average='macro')\n",
"recall_knn = metrics.recall_score(Y_test,Y_pred, average='macro')\n",
"f1_knn = metrics.f1_score(Y_test,Y_pred, average='macro')"
>>>>>>> master
]
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 25,
"id": "e932ec49",
=======
"execution_count": 20,
"id": "f25572c9",
>>>>>>> master
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
<<<<<<< HEAD
"Accuracy: 0.2813257881972514\n",
"Precision: 0.30509964042074134\n",
"Recall: 0.20745529380352226\n",
"f1-score: 0.19044744068158276\n"
=======
"Accuracy: 0.9350912778904665\n",
"Precision: 0.8078615566477673\n",
"Recall: 0.717261850491169\n",
"f1-score: 0.7114544346026009\n"
>>>>>>> master
]
}
],
......@@ -660,8 +1169,13 @@
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 26,
"id": "e233f35f",
=======
"execution_count": 21,
"id": "ac6748e8",
>>>>>>> master
"metadata": {},
"outputs": [],
"source": [
......@@ -670,14 +1184,23 @@
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 27,
"id": "763970fd",
=======
"execution_count": 22,
"id": "2f48f36e",
>>>>>>> master
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
<<<<<<< HEAD
"model_id": "0f39b7bdd5f44969970ff5707ab5be78",
=======
"model_id": "d2d315141cb1411ebf65727eae04efc9",
>>>>>>> master
"version_major": 2,
"version_minor": 0
},
......@@ -690,7 +1213,11 @@
}
],
"source": [
<<<<<<< HEAD
"rf = RandomForestClassifier(n_estimators=100, criterion='entropy', max_depth=3)\n",
=======
"rf = RandomForestClassifier()\n",
>>>>>>> master
"for i in tqdm(range(10)):\n",
" rf.fit(X_train,Y_train)\n",
"Y_pred = rf.predict(X_test)\n",
......@@ -703,20 +1230,33 @@
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 28,
"id": "9c4914e1",
"metadata": {},
=======
"execution_count": 23,
"id": "fc1ebd91",
"metadata": {
"scrolled": true
},
>>>>>>> master
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
<<<<<<< HEAD
"Accuracy: 0.7954729183508489\n",
"Precision: 0.6222367026251793\n",
"Recall: 0.5203828612617796\n",
"f1-score: 0.5273813692882126\n"
=======
"Accuracy: 0.9445571331981069\n",
"Precision: 0.7413751655908479\n",
"Recall: 0.7385777558448817\n",
"f1-score: 0.7368101892594321\n"
>>>>>>> master
]
}
],
......@@ -729,6 +1269,91 @@
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 29,
"id": "7a7fbf14",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Model</th>\n",
" <th>Precission</th>\n",
" <th>Recall</th>\n",
" <th>F1-Score</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Accuracy</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0.936944</th>\n",
" <td>KNN</td>\n",
" <td>0.853480</td>\n",
" <td>0.793139</td>\n",
" <td>0.806970</td>\n",
" </tr>\n",
" <tr>\n",
" <th>0.795473</th>\n",
" <td>Random Forest</td>\n",
" <td>0.622237</td>\n",
" <td>0.520383</td>\n",
" <td>0.527381</td>\n",
" </tr>\n",
" <tr>\n",
" <th>0.573161</th>\n",
" <td>Logistic Regression</td>\n",
" <td>0.235244</td>\n",
" <td>0.243875</td>\n",
" <td>0.226172</td>\n",
" </tr>\n",
" <tr>\n",
" <th>0.281326</th>\n",
" <td>Support Vector Machines</td>\n",
" <td>0.305100</td>\n",
" <td>0.207455</td>\n",
" <td>0.190447</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Model Precission Recall F1-Score\n",
"Accuracy \n",
"0.936944 KNN 0.853480 0.793139 0.806970\n",
"0.795473 Random Forest 0.622237 0.520383 0.527381\n",
"0.573161 Logistic Regression 0.235244 0.243875 0.226172\n",
"0.281326 Support Vector Machines 0.305100 0.207455 0.190447"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
=======
"execution_count": 24,
"id": "e7086868",
"metadata": {},
......@@ -743,15 +1368,29 @@
"\u001b[1;32m<ipython-input-24-d117186c3a1d>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m\u001b[0m\n\u001b[0;32m 1\u001b[0m results = pd.DataFrame({\n\u001b[0;32m 2\u001b[0m \u001b[1;34m'Model'\u001b[0m\u001b[1;33m:\u001b[0m \u001b[1;33m[\u001b[0m\u001b[1;34m'Support Vector Machines'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'KNN'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'Logistic Regression'\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;34m'Random Forest'\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[1;34m'Accuracy'\u001b[0m\u001b[1;33m:\u001b[0m \u001b[1;33m[\u001b[0m\u001b[0macc_linear_svc\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0macc_knn\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0macc_log\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0macc_rf\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[1;34m'Precission'\u001b[0m\u001b[1;33m:\u001b[0m \u001b[1;33m[\u001b[0m\u001b[0mpre_linear_svc\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mpre_knn\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mpre_log\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mpre_rf\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;34m'Recall'\u001b[0m\u001b[1;33m:\u001b[0m \u001b[1;33m[\u001b[0m\u001b[0mrecall_linear_svc\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mrecall_knn\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mrecall_log\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mrecall_rf\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
"\u001b[1;31mNameError\u001b[0m: name 'acc_log' is not defined"
]
>>>>>>> master
}
],
"source": [
"results = pd.DataFrame({\n",
<<<<<<< HEAD
" 'Model': ['Support Vector Machines', 'KNN', 'Logistic Regression', \n",
" 'Random Forest'],\n",
" 'Accuracy': [acc_linear_svc, acc_knn, acc_log, \n",
" acc_rf],\n",
" 'Precission': [pre_linear_svc, pre_knn, pre_log, \n",
" pre_rf],\n",
" 'Recall': [recall_linear_svc, recall_knn, recall_log, \n",
" recall_rf],\n",
" 'F1-Score': [f1_linear_svc, f1_knn, f1_log, \n",
" f1_rf]})\n",
=======
" 'Model': ['Support Vector Machines', 'KNN', 'Random Forest'],\n",
" 'Accuracy': [acc_linear_svc, acc_knn, acc_rf],\n",
" 'Precission': [pre_linear_svc, pre_knn, pre_log, pre_rf],\n",
" 'Recall': [recall_linear_svc, recall_knn, recall_log, recall_rf],\n",
" 'F1-Score': [f1_linear_svc, f1_knn, f1_log, f1_rf]})\n",
>>>>>>> master
"\n",
"result_df = results.sort_values(by='Accuracy', ascending=False)\n",
"result_df = result_df.set_index('Accuracy')\n",
......@@ -760,42 +1399,105 @@
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 30,
"id": "1ba7e790",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"results= pd.DataFrame({'Model': ['S V M', 'KNN', 'Logistic R','Random Forest'], 'Score': [acc_linear_svc, acc_knn, acc_log, \n",
" acc_rf ]})\n",
=======
"execution_count": null,
"id": "edd5c2db",
"metadata": {},
"outputs": [],
"source": [
"results= pd.DataFrame({'Model': ['S V M', 'KNN', 'Logistic R','Random Forest'], 'Score': [acc_linear_svc, acc_knn, acc_log, acc_rf ]})\n",
>>>>>>> master
"\n",
"ax = results.plot.bar(x='Model', y='Score', rot=90)"
]
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 31,
"id": "d8c1c659",
=======
"execution_count": null,
"id": "f3148b25",
>>>>>>> master
"metadata": {},
"outputs": [],
"source": [
"#Save the Decision Tree strained modelusing pickle\n",
"import pickle\n",
<<<<<<< HEAD
"with open('ab_classifier_knn', 'wb') as picklefile:\n",
" pickle.dump(knn,picklefile)"
=======
"with open('ab_classifier_Random_forest', 'wb') as picklefile:\n",
" pickle.dump(rf,picklefile)"
>>>>>>> master
]
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 32,
"id": "442070c2",
"metadata": {},
"outputs": [],
"source": [
"with open('ab_classifier_knn', 'rb') as training_model:\n",
=======
"execution_count": null,
"id": "698412e2",
"metadata": {},
"outputs": [],
"source": [
"with open('ab_classifier_Random_forest', 'rb') as training_model:\n",
>>>>>>> master
" model6 = pickle.load(training_model)"
]
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 33,
"id": "e84a9645",
"metadata": {},
"outputs": [],
"source": [
"def start():\n",
" my_predictors = []\n",
" parameters=['age', 'gender','religion','occupation']\n",
" \n",
" print('Input Passenger Information:')\n",
" age = input(\"Traveller age: \") \n",
" my_predictors.append(age)\n",
" gender = input(\"Traveller Gender: \")\n",
" my_predictors.append(gender)\n",
" religion = input(\"Traveller Religion: \") \n",
" my_predictors.append(religion)\n",
" occupation = input(\"Traveller Occupation: \") \n",
" my_predictors.append(occupation)\n",
" \n",
=======
"execution_count": null,
"id": "f5964b95",
"metadata": {},
......@@ -819,6 +1521,7 @@
" my_predictors.append(classNo)\n",
" gender = input(\"Passenger Gender: >>> \")\n",
" my_predictors.append(gender)\n",
>>>>>>> master
" \n",
" my_data = dict(zip(parameters, my_predictors))\n",
" my_df = pd.DataFrame(my_data, index=[0])\n",
......@@ -829,23 +1532,56 @@
" my_y_pred = model6.predict(my_df)\n",
" print('\\n')\n",
" print('Result:')\n",
<<<<<<< HEAD
" print(my_y_pred)"
=======
" print(my_y_pred);"
>>>>>>> master
]
},
{
"cell_type": "code",
<<<<<<< HEAD
"execution_count": 35,
"id": "4db7031f",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Input Passenger Information:\n",
"Traveller age: 47\n",
"Traveller Gender: 1\n",
"Traveller Religion: 1\n",
"Traveller Occupation: 7\n",
"\n",
"\n",
"Result:\n",
"[10]\n"
]
}
],
"source": [
"start()"
=======
"execution_count": null,
"id": "b1b355f4",
"metadata": {},
"outputs": [],
"source": [
"start_questionnaire()"
>>>>>>> master
]
},
{
"cell_type": "code",
"execution_count": null,
<<<<<<< HEAD
"id": "cdfb1e55",
=======
"id": "e622dcf5",
>>>>>>> master
"metadata": {},
"outputs": [],
"source": []
......
Age,Count,Country,Disability,GenderNo,ReligionNo,OccupationNo,WithNo,CategoryNo,LineNo
28,3,144,0,2,2,7,3,6,6
28,3,10,0,2,5,4,2,1,1
36,8,31,0,2,2,8,3,6,6
64,7,127,0,1,1,11,3,6,6
41,9,9,0,2,1,3,3,4,3
36,5,31,0,1,5,1,2,3,2
46,8,126,0,1,5,8,2,3,2
58,1,186,0,2,1,1,3,6,6
31,3,85,0,2,1,4,2,1,1
58,4,31,0,1,2,10,3,6,6
21,1,77,0,1,1,1,1,1,5
46,9,126,0,1,3,8,3,6,6
31,2,186,0,2,4,6,3,2,2
31,1,169,0,2,2,1,1,1,5
58,5,77,0,2,1,4,3,5,5
41,3,31,0,1,3,1,3,6,6
20,9,9,0,2,1,1,2,1,1
21,8,108,0,2,2,5,2,1,1
28,10,126,0,1,2,1,2,1,1
20,5,170,0,1,5,13,2,1,1
41,1,83,0,1,2,13,1,4,1
64,1,77,0,1,1,10,1,1,5
28,7,61,0,1,2,1,3,6,6
21,10,61,0,1,5,1,2,3,2
41,1,108,0,2,1,2,1,4,1
64,4,9,0,2,1,1,3,6,6
67,4,61,0,1,4,13,2,6,4
36,1,85,0,2,1,1,3,4,3
41,4,36,0,2,1,2,3,4,3
41,10,77,0,1,1,13,3,5,5
36,7,77,0,2,1,1,3,5,5
21,2,186,0,1,5,7,4,5,2
64,3,169,0,1,5,1,2,3,2
58,2,36,0,2,4,9,4,4,5
28,4,144,0,2,2,1,3,6,6
41,7,36,0,1,1,4,3,6,6
31,4,85,0,1,1,4,2,1,1
46,1,77,0,1,1,6,1,1,5
55,9,31,0,1,1,9,3,6,6
31,1,31,0,1,1,5,1,4,1
21,5,83,0,2,1,10,3,6,6
46,2,65,0,2,3,13,4,5,2
36,7,36,0,1,4,13,2,3,2
41,5,126,0,2,1,7,3,6,6
36,3,186,0,2,1,7,3,6,6
46,1,83,0,1,2,11,1,4,1
36,6,126,0,1,1,12,3,6,6
46,1,77,0,1,1,6,1,1,5
67,2,187,0,1,1,4,3,6,6
67,6,9,0,2,1,13,3,4,3
28,1,186,0,2,1,13,1,4,1
58,1,61,0,1,3,13,1,1,5
36,2,9,0,1,4,1,4,4,5
64,9,126,0,2,5,7,2,3,2
64,8,36,0,2,1,7,3,6,6
20,10,83,0,2,2,4,3,6,6
41,4,61,0,2,3,1,2,6,4
46,6,10,0,1,1,13,3,4,3
41,10,126,0,1,2,13,3,6,6
21,5,126,0,1,1,3,2,1,1
46,1,108,0,1,1,13,1,4,1
31,5,65,0,1,2,8,3,6,6
28,10,61,0,1,5,6,2,3,2
21,7,83,0,1,2,2,3,6,6
20,4,85,0,1,5,4,2,1,1
28,7,61,0,2,5,13,2,3,2
55,2,9,0,2,5,13,4,4,5
41,10,186,0,1,2,1,3,6,6
67,8,85,0,1,1,13,3,6,6
55,3,187,0,1,1,4,3,6,6
28,9,65,0,2,5,11,2,3,2
36,10,31,0,2,1,11,3,6,6
28,5,61,0,1,1,11,3,6,6
55,1,61,0,2,1,13,3,5,5
41,6,187,0,1,2,6,3,6,6
28,5,36,0,1,5,3,2,3,2
55,10,127,0,1,1,4,3,6,6
28,5,9,0,1,1,1,2,1,1
31,8,36,0,2,5,4,2,3,2
36,1,144,0,1,1,5,1,4,1
36,9,170,0,2,1,3,3,6,6
41,7,170,0,1,3,5,3,6,6
41,1,77,0,2,2,12,1,1,5
36,1,9,0,1,2,2,3,6,6
20,10,83,0,2,1,12,3,6,6
20,6,108,0,1,5,3,2,1,1
55,2,108,0,2,4,13,4,5,2
28,4,9,0,2,2,13,2,1,1
64,8,170,0,1,5,1,2,3,2
67,7,31,0,2,2,13,3,6,6
20,4,144,0,2,1,11,3,6,6
28,1,77,0,2,1,13,1,1,5
21,3,187,0,1,3,4,3,2,2
58,1,170,0,2,2,12,1,4,1
67,1,108,0,2,1,10,1,4,1
41,2,9,0,2,1,4,3,6,6
64,2,9,0,1,4,1,4,4,5
36,5,170,0,1,1,5,3,6,6
55,2,65,0,1,4,1,4,5,2
55,10,77,0,1,1,4,3,5,5
28,2,83,0,2,2,12,3,6,6
55,8,31,0,1,1,1,3,6,6
36,10,170,0,1,1,4,3,6,6
58,5,31,0,1,4,6,2,3,2
28,4,127,0,2,1,11,2,1,1
21,7,65,0,2,1,13,3,6,6
36,1,170,1,2,1,12,1,4,1
55,6,77,0,1,5,12,2,6,4
64,6,126,0,2,1,11,3,6,6
36,2,186,0,2,3,1,3,6,6
55,1,61,0,1,2,11,1,1,5
21,4,36,0,1,2,1,2,1,1
28,1,186,0,2,1,4,1,4,1
31,8,144,0,1,3,12,3,6,6
64,1,65,0,2,2,13,1,4,1
36,3,187,0,1,5,2,2,3,2
20,3,36,0,2,1,1,2,1,1
28,1,187,0,2,1,3,1,4,1
58,8,85,0,1,5,1,2,3,2
55,1,61,0,1,1,4,1,1,5
41,2,61,0,1,1,7,3,5,5
55,1,144,0,2,1,4,1,4,1
31,1,31,0,1,1,1,1,4,1
41,8,85,0,2,1,4,3,6,6
55,3,61,0,1,3,11,2,6,4
36,5,9,0,1,1,13,3,4,3
55,4,186,0,2,2,1,3,6,6
28,4,65,0,2,1,4,3,6,6
31,2,169,0,1,5,4,4,4,4
28,7,108,0,1,4,11,3,2,2
46,1,36,0,1,1,2,3,4,3
20,5,61,0,2,1,13,3,6,6
64,1,85,0,1,1,4,3,4,3
41,9,77,0,1,5,11,2,6,4
55,4,9,0,2,5,13,2,3,2
41,3,169,0,2,1,13,3,6,6
31,2,61,0,1,1,4,3,6,6
46,1,65,0,2,1,4,1,4,1
20,8,83,0,2,1,3,3,6,6
58,10,187,0,2,1,3,3,6,6
21,4,187,1,2,4,13,3,2,2
36,2,36,0,1,4,8,4,4,5
46,1,108,0,1,1,8,1,4,1
28,2,31,0,2,3,3,4,5,2
21,5,77,1,1,1,3,3,5,5
46,1,77,0,2,1,1,1,1,5
28,4,186,0,1,5,10,2,1,1
21,9,61,0,2,1,11,3,6,6
20,5,77,0,1,1,5,3,5,5
41,3,36,0,2,2,3,3,4,3
31,4,144,0,2,3,11,3,6,6
58,1,108,0,2,1,7,1,4,1
46,2,65,0,1,4,4,4,5,2
46,1,169,0,2,5,5,2,3,2
41,10,170,0,1,2,6,3,6,6
28,1,186,0,1,2,5,1,4,1
64,1,61,0,1,1,4,1,1,5
21,2,186,0,2,5,4,4,5,2
64,10,36,0,1,1,9,3,6,6
28,2,126,0,2,1,4,2,1,1
20,6,126,0,1,1,6,2,1,1
28,10,144,0,1,5,1,2,3,2
36,1,77,0,2,1,12,1,1,5
58,6,36,0,1,1,1,3,6,6
41,2,36,0,1,1,1,3,4,3
36,1,61,0,2,1,7,1,1,5
67,5,9,0,1,2,3,3,4,3
58,9,85,0,1,1,8,3,6,6
46,5,9,0,1,1,1,3,4,3
20,2,144,0,1,1,7,3,6,6
20,1,31,0,1,1,8,1,4,1
55,2,65,0,2,3,12,4,5,2
21,2,31,0,2,5,13,4,5,2
46,5,126,0,1,2,8,3,6,6
31,1,187,0,2,1,3,1,4,1
21,8,108,0,1,2,13,2,1,1
46,6,85,0,2,5,2,2,3,2
31,8,61,0,2,1,7,3,6,6
55,8,9,0,2,1,1,3,4,3
41,2,9,0,1,1,7,3,6,6
31,1,169,0,1,4,5,3,2,2
41,1,144,0,1,1,7,1,4,1
41,1,187,0,2,3,13,3,6,6
28,7,126,0,1,2,1,2,1,1
64,1,108,0,2,2,11,1,4,1
46,1,126,0,2,1,9,1,4,1
28,10,144,0,1,2,4,3,6,6
20,7,108,0,1,5,12,2,1,1
31,5,9,0,1,5,4,2,1,1
46,1,108,0,1,1,13,1,4,1
46,5,170,0,2,1,1,3,6,6
20,2,186,0,1,4,11,3,2,2
36,1,83,0,2,1,10,1,4,1
20,2,186,0,1,5,1,4,5,2
36,3,187,0,1,1,7,3,6,6
21,2,186,0,2,4,7,4,5,2
31,6,108,0,1,1,2,2,1,1
21,6,9,0,2,5,6,2,1,1
31,1,85,0,2,2,11,2,1,1
58,1,108,0,1,1,13,1,4,1
46,10,187,0,1,5,8,2,3,2
58,1,61,0,2,3,7,1,1,5
41,2,61,0,2,1,4,3,5,5
21,6,65,0,1,1,12,3,6,6
41,8,170,0,2,1,11,3,6,6
21,9,126,0,1,1,3,2,1,1
28,6,9,0,2,1,6,2,1,1
36,5,31,0,1,1,13,3,6,6
31,1,9,0,1,1,12,2,1,1
41,1,83,0,2,1,5,1,4,1
28,3,169,0,2,4,6,3,2,2
67,9,169,0,2,1,3,3,4,3
64,1,65,0,2,2,11,1,4,1
41,2,144,0,2,3,11,4,5,2
36,2,61,0,2,4,11,4,4,4
31,10,77,0,1,1,7,3,5,5
55,6,127,0,2,1,6,3,6,6
36,4,187,0,2,3,13,3,6,6
58,1,61,0,2,1,13,1,1,5
41,1,36,0,2,2,6,3,4,3
41,2,144,0,2,4,13,4,5,2
46,10,186,0,2,5,1,2,3,2
41,1,65,0,1,2,4,1,4,1
46,1,144,0,2,2,4,1,4,1
46,4,9,0,2,3,4,3,6,6
58,8,126,0,2,1,1,3,6,6
41,1,65,0,1,1,3,1,4,1
28,7,65,0,2,5,1,2,3,2
21,1,31,0,2,2,7,1,4,1
28,10,170,0,2,2,5,2,1,1
21,9,170,0,2,1,6,2,1,1
41,5,77,0,1,2,5,3,5,5
41,1,83,0,2,1,7,1,4,1
28,9,47,0,2,4,3,2,3,2
36,8,126,0,1,1,3,3,6,6
46,10,77,0,1,2,13,3,5,5
21,8,85,0,2,3,13,3,6,6
67,1,144,0,2,1,12,1,4,1
41,9,186,0,2,1,2,3,6,6
58,9,170,0,2,1,6,3,6,6
64,8,187,0,2,1,13,3,6,6
46,10,10,0,2,1,4,3,4,3
36,10,186,0,2,2,1,3,6,6
46,7,9,0,2,1,3,3,4,3
58,7,186,0,1,1,1,3,6,6
31,1,186,0,2,1,4,1,4,1
28,2,77,0,1,4,5,4,4,4
20,2,77,0,2,5,3,4,4,4
28,10,77,1,2,1,1,3,5,5
55,7,77,0,2,2,1,3,5,5
20,5,65,0,1,5,5,2,3,2
28,7,170,0,1,5,4,2,1,1
28,4,31,0,2,2,3,2,1,1
46,6,170,0,2,3,7,3,6,6
28,4,10,0,1,1,13,2,1,1
41,6,126,0,2,1,11,3,6,6
41,2,65,0,2,4,5,4,5,2
36,2,83,0,1,3,11,4,5,2
31,1,10,0,1,2,5,1,1,5
31,5,65,0,1,1,13,3,6,6
64,8,9,0,2,1,7,3,4,3
58,1,126,0,1,1,6,1,4,1
55,1,83,0,1,1,12,1,4,1
20,1,169,0,1,1,3,1,1,5
41,3,36,0,1,1,4,3,4,3
20,6,77,1,2,1,5,3,5,5
28,10,61,0,2,1,10,3,6,6
46,9,187,0,1,2,11,3,6,6
58,1,65,0,1,1,13,1,4,1
20,9,9,0,1,1,9,2,1,1
31,6,108,0,1,1,10,2,1,1
55,9,77,0,1,2,11,3,5,5
46,7,187,0,2,1,4,3,6,6
67,10,77,0,1,3,4,2,6,4
28,1,169,0,2,2,6,1,1,5
21,2,36,0,2,5,3,2,1,1
36,10,9,0,2,2,1,3,4,3
28,2,108,0,2,1,7,2,1,1
31,1,85,0,2,4,13,3,2,2
20,9,77,0,1,2,11,3,5,5
55,1,144,0,1,1,13,1,4,1
64,1,36,0,1,1,8,3,4,3
36,2,31,0,2,4,1,2,3,2
46,1,61,0,2,1,5,1,1,5
28,4,126,0,1,1,13,2,1,1
28,2,36,0,2,4,7,3,2,2
55,2,65,0,2,4,1,4,5,2
46,7,77,0,2,1,8,3,5,5
55,2,65,0,1,5,11,4,5,2
41,2,36,0,2,3,1,3,4,3
31,4,36,0,2,1,7,2,1,1
55,4,31,0,1,1,13,3,6,6
46,4,187,0,1,4,12,2,3,2
28,1,186,0,2,1,4,1,4,1
55,2,31,0,2,1,1,3,6,6
46,2,186,0,2,1,1,3,6,6
36,1,65,0,1,1,7,1,4,1
55,1,47,0,1,1,3,2,1,1
21,7,77,0,2,1,13,3,5,5
21,3,187,0,1,2,4,2,1,1
28,2,186,0,1,4,13,4,5,2
55,2,61,0,2,4,3,4,4,4
36,2,83,0,1,4,7,4,5,2
55,2,170,0,2,3,4,4,5,2
20,7,126,0,1,2,6,2,1,1
28,9,36,0,2,3,3,3,6,6
31,5,126,0,2,1,4,2,1,1
67,1,77,0,1,2,3,1,1,5
55,1,36,0,1,1,11,3,4,3
55,9,170,0,1,4,13,2,3,2
58,1,83,0,1,1,6,1,4,1
21,5,77,0,2,1,7,3,5,5
64,7,126,0,1,2,1,3,6,6
41,1,65,0,2,2,11,1,4,1
46,2,47,0,1,1,4,2,1,1
41,1,77,0,2,1,11,1,1,5
58,1,83,0,2,1,3,1,4,1
46,8,9,0,2,1,13,3,4,3
36,4,9,0,1,2,13,3,6,6
21,1,108,0,1,5,3,2,1,1
36,1,144,0,2,2,4,1,4,1
58,5,187,0,1,1,13,3,6,6
28,1,77,0,2,2,13,1,1,5
20,1,36,0,2,2,1,2,1,1
41,1,108,0,1,1,6,1,4,1
55,9,126,0,2,1,13,3,6,6
31,1,169,0,2,3,13,1,1,5
31,10,83,0,1,5,4,2,3,2
31,9,108,0,1,1,13,2,1,1
46,9,169,0,1,2,13,3,4,3
58,4,186,0,2,1,1,3,6,6
31,1,186,0,2,1,13,1,4,1
21,4,65,0,2,1,13,3,6,6
20,2,85,0,1,1,10,2,1,1
46,1,65,0,2,1,13,1,4,1
28,3,83,0,1,1,11,3,6,6
55,8,187,0,2,1,10,3,6,6
31,1,144,0,2,1,13,3,6,6
21,6,61,0,1,1,1,3,6,6
46,1,65,0,2,1,9,1,4,1
31,7,170,0,1,5,1,2,1,1
46,2,144,0,2,5,1,4,5,2
20,6,61,0,1,3,7,3,6,6
55,9,77,0,1,1,5,3,5,5
55,7,186,0,2,2,1,3,6,6
31,2,65,0,1,5,1,2,3,2
58,7,36,0,2,1,3,3,6,6
46,8,126,0,2,2,3,3,6,6
31,1,83,0,1,1,12,3,6,6
36,10,85,0,2,4,9,2,3,2
46,9,170,0,1,1,1,3,6,6
36,2,65,0,1,5,11,4,5,2
36,1,186,0,2,3,4,3,6,6
41,1,61,0,1,1,11,1,1,5
55,1,77,0,1,3,1,1,1,5
21,8,36,0,2,5,13,2,3,2
28,5,170,0,2,1,1,2,1,1
36,3,31,0,2,1,2,3,6,6
28,4,9,0,1,2,12,2,1,1
41,1,65,0,2,2,8,1,4,1
28,8,108,0,2,1,11,2,1,1
20,1,187,0,1,1,12,2,1,1
21,1,77,0,2,2,8,1,1,5
31,2,187,0,1,4,5,4,5,2
20,4,126,0,1,5,4,2,1,1
21,3,36,0,1,1,2,2,1,1
41,2,85,0,1,5,10,4,4,5
28,3,36,0,2,1,6,2,1,1
20,2,186,0,2,1,4,2,1,1
64,2,186,0,2,4,6,2,3,2
28,5,36,0,2,1,1,3,6,6
55,1,83,0,2,1,6,1,4,1
58,1,85,0,2,1,1,3,4,3
41,4,9,0,2,4,1,2,3,2
46,4,187,0,1,1,7,3,6,6
55,7,170,0,1,2,1,3,6,6
41,10,77,0,2,2,5,3,5,5
55,2,126,0,2,3,4,4,5,2
67,9,187,0,2,1,11,3,6,6
36,2,186,0,1,1,11,3,6,6
31,1,77,0,1,2,10,1,1,5
67,8,31,0,2,4,5,2,3,2
36,1,61,0,1,1,11,1,1,5
31,7,9,0,1,5,8,2,1,1
20,8,108,0,2,1,1,2,1,1
46,1,36,0,2,3,13,3,4,3
46,1,144,0,1,2,13,1,4,1
28,2,36,0,2,3,3,3,2,2
58,1,61,0,2,1,13,1,1,5
28,6,36,0,1,4,7,2,3,2
46,1,126,0,2,1,7,1,4,1
28,7,85,0,2,2,13,3,6,6
28,8,83,0,2,4,9,2,3,2
41,6,187,0,2,1,6,3,6,6
64,4,85,0,2,2,12,3,4,3
64,9,77,0,1,1,1,3,5,5
64,9,170,0,1,5,11,2,3,2
46,2,61,0,1,1,13,3,5,5
28,8,108,0,2,1,11,2,1,1
28,3,61,0,1,1,11,3,6,6
21,2,186,0,1,5,13,4,5,2
31,6,83,0,2,1,8,3,6,6
21,9,77,0,2,1,13,3,5,5
31,3,187,0,2,1,12,2,1,1
64,2,9,0,2,4,13,4,4,5
20,2,77,0,2,4,5,4,4,4
28,6,126,0,2,1,11,2,1,1
20,3,65,0,1,1,6,3,6,6
41,2,126,0,1,3,13,4,5,2
20,2,108,0,1,1,1,2,1,1
64,2,186,0,1,4,5,2,3,2
46,1,83,0,1,1,8,1,4,1
31,2,187,0,1,5,3,2,1,1
58,1,31,0,2,4,13,2,3,2
55,1,108,0,1,1,3,1,4,1
21,3,144,0,1,1,5,3,6,6
21,1,31,0,2,1,6,1,4,1
31,6,144,0,2,5,7,2,3,2
31,1,77,0,1,1,12,1,1,5
21,2,126,0,1,1,7,2,1,1
46,1,65,0,1,1,2,1,4,1
36,1,77,0,1,1,1,1,1,5
31,8,77,0,2,2,4,3,5,5
36,1,65,0,2,1,1,1,4,1
64,4,61,0,1,5,1,2,6,4
36,2,186,0,2,5,5,2,3,2
31,10,126,0,1,1,5,2,1,1
55,6,170,0,1,5,13,2,3,2
36,8,169,0,1,1,13,3,4,3
46,5,36,0,2,5,12,2,3,2
31,5,126,0,2,1,7,2,1,1
41,4,36,0,1,2,4,3,4,3
31,8,77,0,1,5,4,2,6,4
46,9,186,0,2,4,8,2,3,2
21,6,126,0,2,2,8,2,1,1
67,1,108,0,2,2,1,1,4,1
31,2,36,0,1,3,1,3,2,2
55,4,9,0,2,1,5,3,6,6
21,1,10,0,2,1,1,1,1,5
55,2,83,0,2,4,3,4,5,2
46,10,77,0,1,5,5,2,6,4
28,3,186,0,2,1,12,2,1,1
21,5,77,0,2,1,13,3,5,5
36,4,36,0,2,2,13,3,4,3
28,2,144,0,2,1,7,3,6,6
31,6,85,0,2,4,7,2,3,2
55,1,83,0,1,1,7,1,4,1
58,6,31,0,1,2,7,3,6,6
55,2,186,0,2,2,13,3,6,6
58,8,31,0,1,3,6,3,6,6
55,2,9,0,2,1,3,3,6,6
58,9,31,0,1,2,3,3,6,6
28,4,65,0,2,1,11,3,6,6
41,4,36,0,1,1,5,3,4,3
55,9,10,0,1,3,8,3,4,3
36,1,108,0,2,1,4,1,4,1
21,9,108,0,2,1,12,2,1,1
21,3,186,0,2,1,13,2,1,1
20,5,65,0,1,2,6,3,6,6
41,6,85,0,1,1,11,3,6,6
55,1,65,0,1,1,6,1,4,1
21,1,186,0,1,1,1,1,4,1
31,2,186,0,1,5,8,4,5,2
41,4,187,0,1,1,5,3,6,6
31,10,108,0,1,1,5,2,1,1
55,1,65,0,2,1,4,1,4,1
64,1,36,0,2,1,1,3,4,3
58,5,9,0,2,1,11,3,4,3
20,2,85,0,1,1,7,2,1,1
41,1,83,0,2,2,1,1,4,1
36,1,61,0,1,1,4,3,5,5
58,10,36,0,1,1,4,3,6,6
46,1,36,0,2,1,9,3,4,3
31,1,144,0,1,1,1,3,6,6
58,7,77,0,1,1,12,3,5,5
67,1,61,0,1,1,4,1,1,5
20,2,85,0,1,1,5,2,1,1
21,4,36,0,1,2,12,2,1,1
31,9,47,0,1,1,8,3,6,6
21,2,77,0,1,4,1,4,4,4
46,1,65,0,1,1,7,1,4,1
28,5,77,0,1,1,1,3,5,5
41,2,65,0,2,3,12,4,5,2
41,7,77,0,1,2,5,3,5,5
41,1,186,0,2,3,5,3,6,6
36,3,187,0,1,2,4,3,6,6
28,2,31,0,1,1,3,2,1,1
58,4,36,0,1,1,13,3,4,3
20,4,61,0,1,1,3,3,6,6
31,2,9,0,2,1,5,2,1,1
67,1,144,0,2,1,12,1,4,1
20,6,77,0,2,1,1,3,5,5
31,9,126,0,2,2,5,2,1,1
21,7,65,0,1,2,2,3,6,6
46,2,65,0,1,5,1,4,5,2
31,10,36,0,2,1,9,3,6,6
21,10,108,0,2,1,6,2,1,1
64,1,36,0,2,1,4,3,4,3
36,9,77,0,1,1,4,3,5,5
20,3,61,0,1,4,8,2,3,2
21,4,65,0,1,1,11,3,6,6
28,9,144,0,1,3,11,3,6,6
28,5,36,0,1,1,4,3,6,6
20,1,65,0,1,3,13,3,6,6
21,8,61,0,1,1,5,3,6,6
28,10,85,0,2,5,3,2,3,2
46,1,108,0,2,1,7,1,4,1
21,1,77,0,2,1,4,1,1,5
41,8,9,0,1,1,1,3,4,3
31,1,186,0,1,1,1,1,4,1
41,8,47,0,1,2,13,2,1,1
67,10,36,0,1,2,13,3,6,6
46,2,108,0,1,3,3,4,5,2
58,1,65,0,2,1,10,1,4,1
21,1,31,0,1,1,11,1,4,1
28,2,65,0,2,3,3,3,6,6
20,9,126,0,2,3,13,3,2,2
41,1,108,0,2,1,10,1,4,1
46,2,9,0,1,1,8,3,6,6
36,4,9,0,1,5,4,2,3,2
58,10,77,0,1,2,13,3,5,5
21,10,9,0,2,2,7,2,1,1
36,2,36,0,1,5,4,4,4,5
41,7,186,0,1,3,1,3,6,6
67,1,108,0,1,1,3,1,4,1
21,9,61,0,1,1,5,3,6,6
55,2,65,0,2,5,13,4,5,2
31,1,186,1,1,1,13,1,4,1
67,6,186,0,1,1,9,3,6,6
55,3,186,0,1,1,12,3,6,6
55,2,108,0,1,5,7,4,5,2
55,5,77,0,1,1,7,3,5,5
36,1,83,0,1,2,13,1,4,1
36,9,9,0,1,3,1,3,4,3
58,7,126,0,2,1,11,3,6,6
21,2,65,0,2,1,1,3,6,6
28,7,77,0,1,5,5,2,6,4
21,1,126,0,2,1,6,2,1,1
31,4,187,0,1,3,1,3,2,2
31,4,9,0,2,5,1,2,1,1
21,9,126,0,1,1,5,2,1,1
21,1,108,0,1,5,3,2,1,1
31,4,144,0,1,1,5,3,6,6
31,7,126,0,1,5,4,2,1,1
28,1,169,0,1,1,13,1,1,5
46,2,9,0,1,2,4,3,6,6
31,2,9,0,2,4,3,3,2,2
41,2,36,0,1,4,13,4,4,5
28,5,108,0,1,1,1,2,1,1
64,8,170,0,2,1,7,3,6,6
31,5,77,0,2,3,7,2,6,4
46,10,127,0,2,1,5,3,6,6
58,9,77,0,1,2,11,3,5,5
20,8,77,0,1,1,13,3,5,5
20,4,186,0,2,5,5,2,1,1
36,1,61,0,2,1,13,1,1,5
55,3,36,0,1,1,1,3,4,3
31,7,36,0,1,1,4,3,6,6
21,1,65,0,2,1,9,3,6,6
21,10,144,0,1,1,11,3,6,6
21,2,77,0,1,5,13,4,4,4
55,1,126,0,1,1,6,1,4,1
55,10,186,0,1,4,5,2,3,2
41,9,9,0,1,2,2,3,4,3
20,3,65,0,1,2,13,3,6,6
36,3,36,0,2,1,10,3,4,3
21,9,170,0,1,1,9,2,1,1
36,3,31,0,1,5,11,2,3,2
55,1,77,0,2,1,13,1,1,5
58,7,170,0,2,1,5,3,6,6
41,6,169,0,2,1,3,3,4,3
28,1,187,0,1,1,3,1,4,1
28,1,31,0,1,1,13,1,4,1
41,8,47,0,2,5,13,2,1,1
55,8,77,0,1,3,6,2,6,4
64,5,186,0,1,1,1,3,6,6
46,8,170,0,1,4,9,2,3,2
58,2,61,0,1,5,1,4,4,4
46,10,170,0,1,5,4,2,3,2
28,8,9,0,2,1,13,2,1,1
21,4,170,0,2,3,1,3,2,2
28,6,170,0,1,5,11,2,1,1
46,6,186,0,1,4,6,2,3,2
46,1,108,0,2,2,3,1,4,1
64,1,144,0,2,1,6,1,4,1
58,1,127,0,1,1,5,1,4,1
28,5,65,0,1,1,13,3,6,6
36,1,144,0,1,1,13,1,4,1
20,2,186,0,2,4,4,4,5,2
36,2,83,0,1,4,2,4,5,2
31,3,187,0,1,1,13,2,1,1
41,1,47,0,1,4,1,3,2,2
31,2,186,0,2,5,13,2,1,1
58,6,77,0,1,1,7,3,5,5
55,1,77,0,2,1,7,1,1,5
46,1,187,0,1,1,9,3,6,6
31,1,61,0,1,1,13,3,6,6
28,4,126,0,1,1,4,2,1,1
41,7,9,0,2,1,1,3,4,3
28,3,61,0,1,1,10,3,6,6
46,2,169,0,2,1,1,3,6,6
28,3,169,0,2,1,5,2,1,1
28,9,36,0,2,1,1,3,6,6
64,9,186,0,2,5,7,2,3,2
67,1,61,0,2,3,7,1,1,5
36,4,61,0,1,1,11,3,5,5
55,2,170,0,2,4,5,4,5,2
21,5,36,0,2,1,13,3,6,6
20,6,108,0,1,1,13,2,1,1
31,3,65,0,2,1,13,3,6,6
55,1,77,0,2,2,11,1,1,5
55,6,77,0,2,3,4,2,6,4
31,9,77,0,1,5,9,2,6,4
20,4,186,0,1,2,12,2,1,1
36,7,77,0,2,2,1,3,5,5
31,1,31,0,2,1,1,1,4,1
55,2,144,0,1,3,5,4,5,2
20,7,170,0,2,2,1,2,1,1
31,5,170,0,1,4,13,3,2,2
31,1,169,0,1,1,7,1,1,5
28,4,47,0,2,2,11,2,1,1
36,4,9,0,1,1,6,3,6,6
46,9,126,0,2,4,4,2,3,2
21,8,36,0,2,1,11,3,6,6
21,1,187,0,1,1,11,1,4,1
46,1,65,0,2,2,6,1,4,1
31,7,9,0,2,3,11,3,2,2
31,8,9,0,1,1,4,2,1,1
21,2,77,0,1,4,4,4,4,4
41,2,126,0,2,3,4,4,5,2
28,3,31,0,2,1,8,2,1,1
21,4,9,0,1,1,13,2,1,1
31,7,126,0,1,3,6,3,2,2
31,10,77,0,1,5,4,2,6,4
21,4,65,0,2,1,7,3,6,6
21,10,144,0,2,5,8,2,3,2
64,1,170,0,2,2,3,1,4,1
64,2,65,0,2,4,13,4,5,2
28,1,77,0,1,2,11,1,1,5
28,8,77,0,1,2,3,3,5,5
41,1,31,0,1,1,4,3,6,6
55,8,9,0,2,1,8,3,4,3
58,1,170,0,2,1,11,1,4,1
58,1,65,0,1,2,1,1,4,1
41,1,9,0,2,2,13,3,6,6
64,6,85,0,2,3,4,3,6,6
28,1,77,0,1,1,13,1,1,5
41,2,65,0,2,5,8,4,5,2
36,8,85,0,1,1,4,3,6,6
64,1,83,0,2,2,11,1,4,1
64,1,187,0,2,5,9,2,3,2
31,1,77,0,1,1,5,1,1,5
36,4,85,0,1,3,13,3,4,3
67,1,77,0,2,1,1,1,1,5
28,4,186,0,2,5,11,2,1,1
41,1,83,0,1,2,1,1,4,1
55,7,170,1,1,3,13,3,6,6
20,1,186,0,1,1,1,1,4,1
55,1,83,1,1,1,1,1,4,1
58,9,85,0,1,5,13,2,3,2
21,1,187,0,2,2,4,1,4,1
55,4,85,0,2,2,1,3,4,3
36,2,108,0,2,5,9,4,5,2
46,7,170,0,2,1,7,3,6,6
31,6,144,0,2,5,4,2,3,2
55,2,186,0,1,1,3,3,6,6
28,1,77,0,1,1,3,1,1,5
36,8,126,0,1,4,1,2,3,2
41,2,108,0,2,5,7,4,5,2
55,2,61,0,2,4,7,4,4,4
46,1,186,0,1,5,11,2,3,2
58,2,65,0,2,5,13,4,5,2
36,1,61,0,2,1,3,1,1,5
36,7,36,0,1,1,11,3,6,6
31,1,36,0,2,1,13,2,1,1
31,1,31,0,1,1,13,1,4,1
58,2,65,0,2,5,3,4,5,2
58,2,36,0,1,4,13,4,4,5
31,3,61,0,1,4,11,2,3,2
21,2,169,0,2,5,10,4,4,4
46,7,47,0,2,5,13,2,1,1
21,1,85,0,2,5,11,2,1,1
20,8,77,0,2,5,11,2,6,4
31,4,170,0,1,1,6,2,1,1
67,6,31,0,2,5,7,2,3,2
41,7,31,0,2,1,9,3,6,6
28,4,65,0,1,1,4,3,6,6
36,1,61,0,1,2,4,1,1,5
58,2,108,0,2,4,6,4,5,2
55,2,65,0,1,4,6,4,5,2
31,1,9,0,1,5,12,2,1,1
41,4,186,0,1,2,6,3,6,6
46,1,61,0,2,1,3,1,1,5
64,2,65,0,2,5,7,4,5,2
28,1,31,0,1,1,5,2,1,1
21,8,170,0,2,1,1,2,1,1
20,1,186,0,2,1,7,1,4,1
36,1,77,0,2,1,1,1,1,5
55,7,170,0,2,1,9,3,6,6
55,1,170,0,2,1,1,1,4,1
28,3,65,0,1,5,13,2,3,2
31,3,9,0,1,2,4,2,1,1
28,1,77,0,1,2,12,1,1,5
46,2,77,0,2,5,3,4,4,4
41,9,187,0,1,1,3,3,6,6
46,1,77,1,2,1,13,1,1,5
58,1,127,0,1,1,12,1,4,1
41,1,144,0,2,1,4,1,4,1
21,7,36,0,2,1,12,3,6,6
55,4,10,0,2,1,12,3,6,6
64,4,186,0,2,1,3,3,6,6
31,9,170,0,1,1,5,2,1,1
41,6,31,0,1,5,9,2,3,2
46,1,61,0,2,1,13,1,1,5
64,7,186,0,1,1,4,3,6,6
28,1,77,0,1,1,5,1,1,5
21,1,187,0,1,2,1,1,4,1
36,1,77,0,2,1,7,1,1,5
21,7,61,0,2,4,7,2,3,2
20,2,169,0,1,4,6,4,4,4
28,6,36,0,2,1,13,3,6,6
31,4,186,0,2,3,8,3,2,2
20,5,85,0,2,1,4,3,6,6
55,3,10,0,1,1,6,3,6,6
46,5,186,0,1,1,1,3,6,6
28,8,126,0,1,1,4,2,1,1
31,1,170,0,1,2,1,2,1,1
58,8,31,0,1,1,1,3,6,6
41,6,9,0,2,2,13,3,4,3
58,10,77,0,2,2,12,3,5,5
46,2,65,0,2,5,3,4,5,2
21,2,187,0,1,4,1,3,2,2
41,2,186,0,2,1,13,3,6,6
20,9,77,0,2,1,3,3,5,5
21,1,186,0,2,1,1,1,4,1
36,2,83,0,2,3,4,4,5,2
64,6,186,0,2,1,13,3,6,6
41,9,36,0,2,1,8,3,6,6
21,6,9,0,2,1,5,2,1,1
41,2,108,0,2,3,1,4,5,2
20,9,170,0,2,1,12,2,1,1
36,5,77,1,2,1,11,3,5,5
46,1,108,0,1,2,1,1,4,1
55,6,127,0,2,5,8,2,3,2
55,9,31,0,2,5,4,2,3,2
55,3,36,0,2,2,7,3,4,3
21,10,36,0,1,1,3,3,6,6
28,6,83,0,1,1,1,3,6,6
46,2,108,0,2,5,5,4,5,2
36,1,108,0,2,1,4,1,4,1
21,3,170,0,1,2,4,2,1,1
64,6,85,0,1,2,4,3,6,6
41,3,47,0,2,1,4,2,1,1
20,1,36,0,1,1,3,2,1,1
31,4,108,0,2,5,10,2,1,1
36,5,36,0,1,4,13,2,3,2
20,1,77,0,2,1,3,1,1,5
41,2,186,0,1,1,13,3,6,6
31,3,31,0,2,1,13,2,1,1
28,5,108,0,2,2,6,2,1,1
58,1,170,0,2,1,13,1,4,1
58,1,144,0,1,1,1,1,4,1
58,8,85,0,1,1,6,3,6,6
36,1,187,0,2,1,11,3,6,6
28,7,65,0,2,1,12,3,6,6
31,5,85,0,2,1,5,3,6,6
31,1,186,0,1,1,6,1,4,1
31,1,187,0,2,1,1,1,4,1
41,2,65,0,1,3,8,4,5,2
28,1,77,0,1,1,4,1,1,5
20,7,65,0,1,1,5,3,6,6
46,10,85,0,2,5,10,2,3,2
55,4,31,0,1,2,8,3,6,6
31,7,9,0,2,2,3,2,1,1
21,6,36,0,2,5,1,2,3,2
64,3,186,0,1,5,7,2,3,2
20,2,36,0,2,4,13,3,2,2
46,2,9,0,2,1,1,3,6,6
28,7,108,0,2,5,6,2,1,1
55,8,77,0,1,5,9,2,6,4
58,2,170,0,1,5,3,4,5,2
46,2,169,0,1,5,6,4,4,5
20,5,9,0,2,1,13,2,1,1
20,9,83,0,1,4,5,2,3,2
21,9,77,0,1,1,12,3,5,5
46,5,36,0,1,1,7,3,6,6
58,7,36,0,1,5,10,2,3,2
46,2,65,0,1,4,11,4,5,2
28,10,61,0,1,1,4,3,6,6
36,6,31,0,2,1,3,3,6,6
55,2,9,0,1,1,3,3,6,6
21,2,186,0,1,3,1,4,5,2
31,1,169,0,2,5,1,2,1,1
46,1,65,0,1,2,2,1,4,1
36,2,144,0,2,3,1,4,5,2
31,5,108,0,1,1,11,2,1,1
46,5,77,0,2,5,3,2,6,4
41,2,186,0,1,2,4,3,6,6
31,3,36,0,2,4,5,3,2,2
55,2,144,0,1,5,10,4,5,2
31,6,36,0,1,1,6,3,6,6
55,2,36,0,1,3,1,3,4,3
46,1,144,0,2,1,13,1,4,1
64,1,170,0,2,1,1,1,4,1
41,3,187,0,2,1,13,3,6,6
41,8,186,0,2,1,5,3,6,6
58,5,187,0,2,1,2,3,6,6
21,6,108,0,2,1,1,2,1,1
31,1,10,0,2,1,7,2,1,1
31,6,83,0,2,1,3,3,6,6
21,3,47,0,1,3,6,3,2,2
20,1,85,0,1,1,12,2,1,1
21,9,36,0,2,1,11,3,6,6
46,2,169,0,2,2,3,3,6,6
41,1,85,0,1,1,5,3,4,3
28,7,108,0,1,1,5,2,1,1
21,5,9,0,2,1,5,2,1,1
36,6,85,0,1,1,13,3,6,6
21,8,108,0,1,3,6,3,2,2
20,10,61,0,2,2,6,3,6,6
21,8,77,0,2,2,4,3,5,5
31,7,77,0,1,1,3,3,5,5
41,6,77,0,1,1,13,3,5,5
36,7,186,0,2,3,4,3,6,6
46,4,9,0,1,3,1,3,6,6
55,1,65,0,1,1,6,1,4,1
58,6,126,0,1,1,4,3,6,6
20,6,77,0,1,1,1,3,5,5
28,4,187,0,1,1,13,2,1,1
36,10,186,0,2,2,13,3,6,6
31,6,126,0,1,1,3,2,1,1
21,9,170,0,1,5,13,2,1,1
21,2,65,0,2,5,13,2,3,2
31,2,186,0,1,1,6,2,1,1
20,6,85,0,1,2,11,3,6,6
67,2,144,0,1,4,4,4,5,2
41,2,65,0,2,4,13,4,5,2
64,2,65,0,2,4,1,4,5,2
28,6,83,0,2,1,13,3,6,6
28,3,127,0,1,1,13,2,1,1
46,9,85,0,2,5,6,2,3,2
36,2,9,0,2,5,6,4,4,5
64,5,31,0,1,5,13,2,3,2
36,8,170,0,2,4,1,2,3,2
46,2,65,0,2,4,8,4,5,2
55,5,77,0,2,1,7,3,5,5
41,10,170,0,1,1,6,3,6,6
28,4,61,0,2,1,10,3,6,6
21,1,186,0,2,1,7,1,4,1
55,2,170,0,1,4,2,4,5,2
41,1,9,0,2,2,13,3,6,6
67,1,144,0,1,1,6,1,4,1
46,1,61,0,1,2,11,1,1,5
20,8,61,0,1,1,4,3,6,6
41,5,31,0,2,3,7,3,6,6
28,2,186,0,2,4,2,4,5,2
41,5,36,0,1,1,5,3,6,6
20,3,36,0,1,2,12,2,1,1
31,2,170,0,2,2,12,2,1,1
31,10,65,0,1,1,1,3,6,6
31,1,36,0,2,1,1,2,1,1
21,9,77,0,1,5,8,2,6,4
46,2,9,0,2,1,4,3,6,6
21,4,186,0,2,1,10,2,1,1
31,2,61,0,2,1,4,3,6,6
55,8,169,0,2,1,13,3,4,3
36,9,127,0,1,4,7,2,3,2
31,1,144,0,1,1,7,3,6,6
55,2,65,0,1,4,10,4,5,2
31,10,170,0,1,2,1,2,1,1
36,7,126,0,1,3,1,3,6,6
67,3,187,0,1,1,5,3,6,6
28,6,9,0,2,3,13,3,2,2
41,6,170,0,1,1,7,3,6,6
58,1,65,0,1,1,13,1,4,1
36,3,9,0,1,1,5,3,6,6
36,8,31,0,1,5,4,2,3,2
20,3,170,0,1,5,6,2,1,1
31,9,36,0,2,1,7,3,6,6
58,2,9,0,1,1,13,3,6,6
31,2,108,0,1,1,3,2,1,1
21,9,85,0,2,1,5,3,6,6
36,2,47,0,1,3,6,3,2,2
41,1,9,0,2,5,1,2,3,2
58,2,144,0,1,3,11,4,5,2
41,5,9,0,2,3,6,3,4,3
41,2,170,0,1,3,4,4,5,2
64,9,47,0,2,5,12,2,1,1
67,2,77,0,1,5,6,4,4,4
58,10,186,0,1,5,13,2,3,2
31,7,77,0,2,1,4,3,5,5
21,9,126,0,2,1,5,2,1,1
55,1,61,0,1,5,6,2,6,4
36,2,186,0,1,5,3,2,3,2
55,5,170,0,2,1,12,3,6,6
58,8,187,0,1,1,11,3,6,6
31,1,31,0,1,1,10,1,4,1
55,1,77,0,1,1,8,1,1,5
41,1,61,0,2,1,10,1,1,5
20,5,126,0,1,3,13,3,2,2
31,10,61,0,1,4,3,2,3,2
46,2,31,0,2,1,7,3,6,6
36,5,186,0,2,1,3,3,6,6
28,9,170,0,1,1,9,2,1,1
31,7,65,0,1,5,13,2,3,2
28,5,77,0,1,2,13,3,5,5
55,2,9,0,2,4,10,4,4,5
64,2,31,0,2,1,2,3,6,6
31,1,77,0,2,1,13,1,1,5
21,10,108,0,1,1,5,2,1,1
46,9,9,0,1,1,1,3,4,3
31,9,144,0,1,2,3,3,6,6
36,1,126,0,2,2,11,1,4,1
64,1,144,0,1,2,4,1,4,1
36,2,9,0,1,4,13,4,4,5
21,1,77,1,1,2,5,1,1,5
28,2,61,0,1,1,5,3,6,6
21,6,77,0,1,2,7,3,5,5
31,9,170,0,2,4,11,3,2,2
20,1,65,0,1,1,8,3,6,6
31,3,170,0,2,1,1,2,1,1
41,1,65,0,2,1,6,1,4,1
28,4,65,0,2,2,3,3,6,6
46,1,170,0,2,1,11,1,4,1
31,6,47,0,2,1,1,3,6,6
55,2,36,0,2,3,7,3,4,3
31,4,36,0,1,1,13,2,1,1
55,2,61,0,1,4,8,2,6,4
64,1,144,0,1,1,13,1,4,1
21,3,31,0,2,5,4,2,1,1
20,10,47,0,1,2,11,3,6,6
41,4,36,0,2,3,13,3,4,3
28,1,31,0,1,3,11,3,2,2
20,10,126,0,1,1,9,2,1,1
64,5,186,0,2,4,7,2,3,2
46,1,144,0,2,1,12,1,4,1
21,8,65,0,1,1,13,3,6,6
20,3,108,0,1,1,5,2,1,1
55,2,65,0,2,4,11,4,5,2
67,7,31,0,2,5,4,2,3,2
46,1,108,0,2,1,6,1,4,1
64,7,10,0,1,1,2,3,4,3
41,2,144,0,1,4,6,4,5,2
46,6,9,0,1,1,8,3,4,3
58,4,61,0,1,4,7,2,6,4
64,2,108,0,2,5,13,4,5,2
67,7,36,0,2,1,11,3,6,6
31,2,170,0,2,1,5,2,1,1
46,2,31,0,1,2,1,3,6,6
36,10,9,0,2,1,4,3,4,3
41,7,187,0,1,1,7,3,6,6
36,6,77,0,1,2,6,3,5,5
46,5,126,0,2,1,12,3,6,6
41,3,36,0,2,2,4,3,4,3
58,7,9,0,2,3,5,3,4,3
46,2,169,0,1,3,13,3,6,6
64,2,10,0,1,5,13,4,4,5
55,3,36,0,1,1,3,3,4,3
20,1,77,0,2,1,12,1,1,5
41,7,170,0,2,5,7,2,3,2
46,2,77,0,2,5,1,4,4,4
31,7,61,0,2,4,13,2,3,2
31,3,170,0,2,1,1,2,1,1
20,8,9,0,1,3,1,3,2,2
21,1,9,0,1,3,13,3,2,2
36,1,77,0,1,1,3,1,1,5
41,1,77,0,2,1,13,1,1,5
64,1,144,0,1,1,7,1,4,1
58,2,186,0,1,2,1,3,6,6
36,2,83,0,2,4,11,4,5,2
20,10,126,0,1,2,7,2,1,1
21,10,65,0,2,1,13,3,6,6
46,1,85,0,2,2,12,3,4,3
64,2,65,0,2,5,7,4,5,2
55,1,170,0,1,1,6,1,4,1
20,3,31,0,1,5,10,2,1,1
55,4,85,0,1,1,13,3,4,3
20,2,31,0,2,5,4,2,1,1
58,2,187,0,1,1,3,3,6,6
46,2,65,0,1,3,5,4,5,2
28,8,36,0,1,1,13,3,6,6
21,10,36,0,1,4,12,2,3,2
64,1,108,0,1,1,11,1,4,1
31,3,65,0,2,2,11,3,6,6
58,5,77,0,1,1,4,3,5,5
21,3,65,0,1,1,1,3,6,6
28,10,77,0,2,4,3,2,6,4
31,1,187,0,2,1,1,1,4,1
67,7,186,0,1,5,4,2,3,2
55,4,31,0,2,2,7,3,6,6
20,1,169,0,2,1,13,1,1,5
31,9,65,1,1,2,1,3,6,6
36,1,83,0,2,1,7,1,4,1
28,7,9,0,1,1,3,2,1,1
46,6,31,0,1,1,6,3,6,6
55,3,47,0,1,5,12,2,1,1
36,2,170,0,1,4,13,4,5,2
31,9,36,0,2,1,11,3,6,6
46,6,187,0,2,1,4,3,6,6
20,4,169,0,2,1,12,2,1,1
31,10,170,0,2,2,13,2,1,1
31,7,36,0,1,5,3,2,3,2
55,1,108,0,2,1,13,1,4,1
36,3,85,0,1,1,8,3,4,3
31,1,77,0,1,2,13,1,1,5
31,1,187,0,1,1,4,2,1,1
36,9,85,0,1,1,13,3,6,6
46,3,187,0,1,1,4,3,6,6
55,10,36,0,2,1,6,3,6,6
36,8,77,0,1,1,1,3,5,5
46,6,187,0,1,5,4,2,3,2
28,9,144,0,2,5,2,2,3,2
31,2,36,0,2,4,1,3,2,2
28,2,186,0,2,3,6,4,5,2
64,8,186,0,1,5,4,2,3,2
31,2,186,0,1,1,5,2,1,1
36,9,31,0,1,1,11,3,6,6
20,2,36,0,1,1,1,2,1,1
31,4,36,0,2,5,1,2,1,1
31,4,61,0,2,4,1,2,3,2
55,7,126,0,2,4,11,2,3,2
46,2,169,0,2,5,3,4,4,5
31,6,9,0,2,1,1,2,1,1
55,1,61,0,2,1,1,1,1,5
36,6,186,0,2,1,12,3,6,6
46,7,126,0,2,1,6,3,6,6
31,3,170,1,1,2,8,2,1,1
21,5,47,0,2,2,3,3,6,6
41,1,186,0,1,1,12,3,6,6
46,8,187,0,2,3,9,3,6,6
58,6,9,0,2,1,13,3,4,3
64,9,186,0,2,1,1,3,6,6
58,8,9,0,1,3,6,3,4,3
41,3,61,0,1,1,4,3,5,5
36,1,65,0,1,2,1,1,4,1
46,1,83,0,2,1,1,1,4,1
20,4,36,0,2,3,13,3,2,2
46,1,170,0,1,1,11,1,4,1
41,3,186,0,1,1,3,3,6,6
21,5,65,0,1,2,10,3,6,6
20,2,187,0,1,4,12,4,5,2
21,4,9,0,2,1,13,2,1,1
64,1,65,0,1,1,5,1,4,1
31,4,186,0,1,5,13,2,1,1
41,6,9,0,1,1,7,3,4,3
41,3,61,0,1,5,11,2,6,4
21,4,61,0,2,1,6,3,6,6
28,2,108,0,1,1,1,2,1,1
28,9,170,0,2,4,12,3,2,2
36,1,61,0,2,1,9,3,5,5
28,4,36,0,2,1,1,2,1,1
41,1,170,0,1,1,1,1,4,1
41,2,9,0,1,1,1,3,6,6
31,1,31,0,2,1,6,1,4,1
46,1,77,0,1,2,6,1,1,5
21,7,65,0,1,4,3,2,3,2
28,8,9,0,2,5,5,2,1,1
20,8,65,0,1,1,6,3,6,6
21,1,108,0,2,2,4,2,1,1
31,4,108,0,2,1,7,2,1,1
21,1,9,0,1,5,1,2,1,1
21,9,77,0,2,1,1,3,5,5
28,2,108,0,2,5,3,2,1,1
28,2,170,0,1,1,4,2,1,1
31,2,144,0,1,1,4,3,6,6
41,1,83,0,2,1,5,1,4,1
58,2,144,0,1,3,8,4,5,2
46,2,9,0,2,5,1,4,4,5
55,2,9,0,2,5,4,4,4,5
31,8,36,0,2,4,7,2,3,2
21,2,108,0,1,3,1,3,2,2
46,6,36,0,2,3,6,3,6,6
64,1,108,0,1,2,13,1,4,1
31,1,169,0,1,1,3,1,1,5
55,7,31,0,1,2,1,3,6,6
41,9,186,0,2,2,3,3,6,6
64,4,186,0,2,1,1,3,6,6
55,1,108,0,1,2,1,1,4,1
28,2,187,0,1,3,1,4,5,2
36,4,36,0,1,1,1,3,4,3
21,5,83,0,1,1,7,3,6,6
28,1,186,0,2,1,6,2,1,1
21,5,144,0,2,1,4,3,6,6
46,4,187,1,2,1,11,3,6,6
55,6,186,0,1,1,12,3,6,6
28,1,31,0,2,1,4,1,4,1
64,4,186,0,1,1,1,3,6,6
58,5,9,0,1,1,3,3,4,3
28,4,186,0,2,1,8,2,1,1
36,2,65,0,1,4,7,4,5,2
28,5,65,0,1,1,1,3,6,6
21,5,47,0,2,2,4,3,6,6
31,1,186,0,2,1,10,1,4,1
64,2,36,0,2,1,4,3,4,3
21,8,83,0,2,5,6,2,3,2
21,1,186,1,2,2,3,1,4,1
55,2,36,0,1,1,13,3,4,3
21,2,85,0,2,1,1,2,1,1
31,10,83,0,2,3,10,3,6,6
55,6,31,0,1,5,4,2,3,2
20,4,36,0,1,4,1,3,2,2
46,1,170,0,2,1,1,1,4,1
36,2,36,0,1,3,2,3,4,3
67,2,108,0,2,4,1,4,5,2
41,1,186,0,2,5,2,2,3,2
67,1,77,0,1,1,1,1,1,5
46,1,77,0,2,2,1,1,1,5
41,1,144,0,1,1,13,1,4,1
58,1,77,0,2,3,5,1,1,5
21,5,61,0,1,1,3,3,6,6
46,1,144,0,2,1,4,1,4,1
64,1,144,0,2,1,7,1,4,1
28,3,9,0,2,1,8,2,1,1
21,6,170,0,1,2,1,2,1,1
31,8,77,0,1,2,13,3,5,5
36,9,127,0,2,1,8,3,6,6
41,1,108,0,1,1,1,1,4,1
28,4,108,0,2,1,1,2,1,1
64,2,108,0,1,3,10,4,5,2
28,5,77,0,2,5,8,2,6,4
31,4,170,0,1,2,13,2,1,1
20,2,36,0,1,2,13,2,1,1
67,8,186,0,1,2,4,3,6,6
58,1,83,0,2,1,13,1,4,1
36,6,77,0,2,3,1,2,6,4
21,1,144,0,1,5,5,2,3,2
46,5,127,0,2,4,8,2,3,2
55,8,170,0,2,1,13,3,6,6
36,9,36,0,2,1,13,3,6,6
21,4,65,0,1,2,11,3,6,6
46,9,9,0,1,1,13,3,4,3
31,1,186,0,1,3,6,3,2,2
46,1,65,0,2,1,13,1,4,1
41,10,186,0,1,1,8,3,6,6
55,2,77,0,2,4,1,4,4,4
28,8,126,0,1,2,12,2,1,1
28,1,108,0,2,1,6,2,1,1
46,2,83,0,1,4,7,4,5,2
31,2,61,0,1,2,7,3,6,6
55,1,144,0,2,1,5,1,4,1
20,1,83,0,2,1,5,3,6,6
58,2,65,0,2,3,1,4,5,2
36,2,83,0,1,4,13,4,5,2
41,3,36,0,2,1,11,3,4,3
64,10,36,0,1,1,8,3,6,6
67,1,65,0,1,2,1,1,4,1
46,1,170,0,2,2,3,1,4,1
41,6,9,0,2,3,13,3,4,3
41,2,108,0,2,3,3,4,5,2
21,7,61,0,1,1,5,3,6,6
20,1,36,0,2,3,1,3,2,2
28,2,126,0,2,5,5,2,1,1
55,4,169,0,1,1,6,3,6,6
28,1,31,0,2,2,13,1,4,1
20,6,126,0,1,5,4,2,1,1
55,1,144,0,2,2,5,1,4,1
46,2,144,0,1,5,13,4,5,2
46,2,170,0,2,5,13,4,5,2
31,5,170,0,1,1,5,2,1,1
55,1,61,0,1,2,13,1,1,5
28,10,65,0,2,1,10,3,6,6
21,2,9,0,2,1,8,2,1,1
20,5,77,0,1,5,1,2,6,4
55,1,108,0,1,1,3,1,4,1
36,2,85,0,1,1,12,3,4,3
28,10,77,0,2,1,5,3,5,5
58,2,126,0,2,4,3,4,5,2
20,4,186,0,2,2,13,2,1,1
46,1,61,0,1,5,12,2,6,4
21,10,36,0,2,1,4,3,6,6
55,2,169,0,2,4,11,2,3,2
64,2,85,0,1,5,4,4,4,5
31,1,186,0,1,1,1,1,4,1
31,5,36,0,2,1,4,3,6,6
28,1,108,0,2,1,5,2,1,1
28,2,187,0,2,1,13,2,1,1
41,1,61,0,2,1,1,1,1,5
58,10,31,0,1,1,11,3,6,6
36,3,186,0,1,1,3,3,6,6
55,6,77,0,1,1,12,3,5,5
64,1,83,0,2,1,1,1,4,1
46,10,47,0,1,3,8,3,2,2
20,1,169,0,1,1,7,1,1,5
20,4,9,0,1,5,2,2,1,1
28,10,144,0,1,1,5,3,6,6
28,10,61,0,2,1,7,3,6,6
67,2,144,0,2,3,12,4,5,2
31,4,144,0,2,1,7,3,6,6
21,9,36,0,1,1,8,3,6,6
41,10,186,0,2,5,13,2,3,2
21,4,108,0,1,1,7,2,1,1
46,1,77,0,2,2,13,1,1,5
31,9,65,0,2,4,6,2,3,2
31,6,170,0,2,5,5,2,1,1
31,1,170,0,2,1,1,2,1,1
36,2,83,0,2,5,2,4,5,2
28,10,9,0,1,1,8,2,1,1
58,1,83,0,1,1,7,1,4,1
36,2,9,1,1,5,4,4,4,5
36,1,108,0,1,1,5,1,4,1
20,8,36,0,1,1,8,3,6,6
31,8,126,0,1,1,13,2,1,1
64,2,169,1,1,5,7,4,4,5
55,2,9,0,1,5,6,4,4,5
46,1,61,0,2,1,13,1,1,5
21,4,144,0,2,2,6,3,6,6
31,7,36,0,2,1,1,3,6,6
31,8,77,0,2,4,13,2,6,4
46,1,144,0,2,1,1,1,4,1
46,3,31,0,1,5,4,2,3,2
36,5,187,0,2,4,7,2,3,2
41,2,83,0,2,4,13,4,5,2
55,4,186,0,2,1,6,3,6,6
55,1,77,0,1,2,13,1,1,5
55,6,187,0,1,1,4,3,6,6
36,5,77,0,2,1,13,3,5,5
46,1,61,0,1,2,2,1,1,5
58,2,144,0,2,5,1,4,5,2
36,2,77,0,2,4,3,4,4,4
31,4,31,0,2,1,1,2,1,1
21,1,31,0,1,1,1,1,4,1
36,1,108,0,2,1,10,1,4,1
31,3,170,0,2,1,5,2,1,1
64,9,170,0,2,1,13,3,6,6
64,2,83,0,1,3,3,4,5,2
31,7,9,0,1,2,5,2,1,1
64,2,61,0,1,5,9,4,4,4
36,10,36,0,2,5,8,2,3,2
67,10,85,0,2,2,3,3,6,6
36,8,36,0,1,1,1,3,6,6
55,1,83,0,2,2,13,1,4,1
41,2,36,0,1,1,13,3,4,3
64,1,170,0,2,1,13,1,4,1
55,1,65,0,1,1,13,1,4,1
36,2,186,0,1,3,1,3,6,6
28,3,186,0,2,5,4,2,1,1
20,6,9,0,1,2,1,2,1,1
36,9,77,0,1,2,4,3,5,5
36,1,61,0,1,1,8,1,1,5
31,10,108,0,2,5,9,2,1,1
58,1,65,0,1,1,4,1,4,1
67,1,10,0,1,1,12,3,6,6
31,5,77,0,1,1,10,3,5,5
36,2,47,0,2,1,7,2,1,1
64,1,144,0,2,1,4,1,4,1
28,5,83,0,1,1,7,3,6,6
31,3,126,0,2,5,10,2,1,1
46,1,108,0,1,1,12,1,4,1
20,7,83,0,2,1,3,3,6,6
36,1,170,0,2,1,13,1,4,1
46,7,170,0,1,2,5,3,6,6
36,8,186,0,1,1,3,3,6,6
58,1,170,0,2,1,11,1,4,1
67,2,108,0,1,4,6,4,5,2
58,5,9,0,1,1,5,3,4,3
20,8,47,0,1,1,1,3,6,6
36,10,187,0,2,1,4,3,6,6
31,2,186,0,1,2,13,2,1,1
31,1,31,0,1,1,8,1,4,1
64,9,10,0,2,1,13,3,4,3
58,2,9,0,1,1,11,3,6,6
21,4,144,0,2,4,12,2,3,2
21,2,108,0,1,2,4,2,1,1
28,1,187,0,2,1,11,1,4,1
21,9,126,0,1,1,8,2,1,1
36,1,36,0,2,3,11,3,4,3
55,6,170,0,1,1,5,3,6,6
28,9,61,0,1,1,7,3,6,6
64,1,170,0,2,1,13,1,4,1
46,5,31,0,1,2,1,3,6,6
31,1,126,0,1,1,4,2,1,1
41,2,170,0,1,4,3,4,5,2
28,8,77,0,2,1,4,3,5,5
36,8,31,0,1,1,11,3,6,6
55,9,36,0,2,2,13,3,6,6
55,6,77,0,1,1,4,3,5,5
46,2,65,0,1,3,13,4,5,2
58,4,186,0,1,1,4,3,6,6
58,10,126,0,1,1,5,3,6,6
55,4,61,0,2,2,2,3,5,5
36,8,170,0,2,5,4,2,3,2
46,6,9,0,2,1,13,3,4,3
31,1,186,0,2,1,9,1,4,1
28,8,170,0,2,1,3,2,1,1
67,6,36,0,1,2,4,3,6,6
21,2,186,0,1,3,7,4,5,2
67,1,65,0,1,1,3,1,4,1
28,10,85,0,2,2,1,3,6,6
31,6,61,0,1,1,13,3,6,6
36,2,144,0,1,5,13,4,5,2
21,8,65,0,1,1,13,3,6,6
21,2,77,0,2,5,4,4,4,4
46,5,77,0,1,3,12,2,6,4
31,5,83,0,2,1,10,3,6,6
58,10,127,0,1,1,13,3,6,6
46,9,126,0,1,1,12,3,6,6
64,1,65,0,2,1,11,1,4,1
36,1,126,0,2,1,5,1,4,1
31,5,83,0,2,2,11,3,6,6
21,8,9,0,2,4,8,3,2,2
31,1,77,0,2,1,4,1,1,5
41,1,83,0,1,1,11,1,4,1
55,2,36,0,1,4,7,4,4,5
21,10,83,0,2,2,13,3,6,6
64,4,9,0,1,1,4,3,6,6
46,1,108,0,1,1,4,1,4,1
31,2,144,0,1,1,3,3,6,6
21,6,170,0,1,1,3,2,1,1
46,2,85,0,1,3,13,3,4,3
58,10,77,0,1,5,11,2,6,4
55,8,31,0,2,4,5,2,3,2
31,4,127,0,2,1,10,2,1,1
31,1,77,0,2,1,13,1,1,5
20,8,170,0,1,1,1,2,1,1
36,5,169,0,1,2,1,3,4,3
28,1,31,0,1,1,5,2,1,1
31,6,9,0,1,1,13,2,1,1
36,7,31,0,1,1,11,3,6,6
36,1,144,0,2,1,13,1,4,1
46,8,186,0,2,5,5,2,3,2
55,4,186,0,1,4,13,2,3,2
21,1,144,0,1,1,11,3,6,6
41,4,186,0,2,1,5,3,6,6
36,6,9,0,1,2,13,3,4,3
21,5,170,0,2,1,4,2,1,1
20,6,77,0,2,1,7,3,5,5
36,1,61,0,2,1,13,1,1,5
36,1,65,0,2,2,5,1,4,1
31,10,170,0,2,1,8,2,1,1
46,7,77,0,1,1,1,3,5,5
58,4,186,0,2,1,1,3,6,6
36,5,126,0,1,4,4,2,3,2
28,1,186,0,2,1,5,1,4,1
20,3,61,0,1,5,1,2,3,2
36,2,65,0,2,3,13,4,5,2
64,1,108,0,1,1,13,1,4,1
36,10,126,0,2,1,6,3,6,6
67,2,108,0,2,3,1,4,5,2
20,2,77,0,1,5,11,4,4,4
36,1,77,0,1,1,11,1,1,5
28,1,31,0,1,1,2,1,4,1
41,4,31,0,1,1,11,3,6,6
31,6,127,0,2,1,4,2,1,1
28,10,65,0,1,1,5,3,6,6
46,3,186,0,1,1,8,3,6,6
28,2,61,0,1,3,13,3,6,6
41,6,186,0,2,1,5,3,6,6
64,8,187,0,1,4,7,2,3,2
36,7,36,0,1,4,6,2,3,2
67,7,36,0,2,2,11,3,6,6
41,2,108,0,1,5,1,4,5,2
31,1,186,0,2,1,13,1,4,1
46,3,187,0,2,5,11,2,3,2
36,2,47,0,1,2,5,2,1,1
41,4,36,0,1,1,7,3,4,3
21,2,31,0,2,5,13,4,5,2
28,1,31,0,1,2,1,2,1,1
41,1,144,0,1,2,7,1,4,1
21,2,36,0,1,4,7,3,2,2
31,2,187,0,1,5,1,4,5,2
31,8,9,0,1,1,3,2,1,1
31,1,31,0,1,2,8,1,4,1
46,8,47,0,1,5,1,2,1,1
28,10,9,0,2,1,13,2,1,1
41,2,169,0,2,4,13,4,4,5
21,2,36,0,1,1,11,2,1,1
20,1,186,0,2,1,3,1,4,1
46,2,36,0,2,2,4,3,4,3
20,6,170,0,2,1,1,2,1,1
55,3,187,0,1,1,4,3,6,6
28,9,65,0,2,5,11,2,3,2
36,10,31,0,2,1,11,3,6,6
28,5,61,0,1,1,11,3,6,6
55,1,61,0,2,1,13,3,5,5
41,6,187,0,1,2,6,3,6,6
28,5,36,0,1,5,3,2,3,2
55,10,127,0,1,1,4,3,6,6
28,5,9,0,1,1,1,2,1,1
31,8,36,0,2,5,4,2,3,2
36,1,144,0,1,1,5,1,4,1
36,9,170,0,2,1,3,3,6,6
41,7,170,0,1,3,5,3,6,6
41,1,77,0,2,2,12,1,1,5
36,1,9,0,1,2,2,3,6,6
20,10,83,0,2,1,12,3,6,6
20,6,108,0,1,5,3,2,1,1
55,2,108,0,2,4,13,4,5,2
28,4,9,0,2,2,13,2,1,1
64,8,170,0,1,5,1,2,3,2
67,7,31,0,2,2,13,3,6,6
20,4,144,0,2,1,11,3,6,6
28,1,77,0,2,1,13,1,1,5
21,3,187,0,1,3,4,3,2,2
58,1,170,0,2,2,12,1,4,1
67,1,108,0,2,1,10,1,4,1
41,2,9,0,2,1,4,3,6,6
64,2,9,0,1,4,1,4,4,5
36,5,170,0,1,1,5,3,6,6
55,2,65,0,1,4,1,4,5,2
55,10,77,0,1,1,4,3,5,5
28,2,83,0,2,2,12,3,6,6
55,8,31,0,1,1,1,3,6,6
36,10,170,0,1,1,4,3,6,6
58,5,31,0,1,4,6,2,3,2
28,4,127,0,2,1,11,2,1,1
21,7,65,0,2,1,13,3,6,6
36,1,170,1,2,1,12,1,4,1
55,6,77,0,1,5,12,2,6,4
64,6,126,0,2,1,11,3,6,6
36,2,186,0,2,3,1,3,6,6
55,1,61,0,1,2,11,1,1,5
21,4,36,0,1,2,1,2,1,1
28,1,186,0,2,1,4,1,4,1
31,8,144,0,1,3,12,3,6,6
64,1,65,0,2,2,13,1,4,1
36,3,187,0,1,5,2,2,3,2
20,3,36,0,2,1,1,2,1,1
28,1,187,0,2,1,3,1,4,1
58,8,85,0,1,5,1,2,3,2
55,1,61,0,1,1,4,1,1,5
41,2,61,0,1,1,7,3,5,5
55,1,144,0,2,1,4,1,4,1
31,1,31,0,1,1,1,1,4,1
41,8,85,0,2,1,4,3,6,6
55,3,61,0,1,3,11,2,6,4
36,5,9,0,1,1,13,3,4,3
55,4,186,0,2,2,1,3,6,6
28,4,65,0,2,1,4,3,6,6
31,2,169,0,1,5,4,4,4,4
28,7,108,0,1,4,11,3,2,2
46,1,36,0,1,1,2,3,4,3
20,5,61,0,2,1,13,3,6,6
64,1,85,0,1,1,4,3,4,3
41,9,77,0,1,5,11,2,6,4
55,4,9,0,2,5,13,2,3,2
41,3,169,0,2,1,13,3,6,6
31,2,61,0,1,1,4,3,6,6
46,1,65,0,2,1,4,1,4,1
20,8,83,0,2,1,3,3,6,6
58,10,187,0,2,1,3,3,6,6
21,4,187,1,2,4,13,3,2,2
36,2,36,0,1,4,8,4,4,5
46,1,108,0,1,1,8,1,4,1
28,2,31,0,2,3,3,4,5,2
21,5,77,1,1,1,3,3,5,5
46,1,77,0,2,1,1,1,1,5
28,4,186,0,1,5,10,2,1,1
21,9,61,0,2,1,11,3,6,6
20,5,77,0,1,1,5,3,5,5
41,3,36,0,2,2,3,3,4,3
31,4,144,0,2,3,11,3,6,6
58,1,108,0,2,1,7,1,4,1
46,2,65,0,1,4,4,4,5,2
46,1,169,0,2,5,5,2,3,2
41,10,170,0,1,2,6,3,6,6
28,1,186,0,1,2,5,1,4,1
64,1,61,0,1,1,4,1,1,5
21,2,186,0,2,5,4,4,5,2
64,10,36,0,1,1,9,3,6,6
28,2,126,0,2,1,4,2,1,1
20,6,126,0,1,1,6,2,1,1
28,10,144,0,1,5,1,2,3,2
36,1,77,0,2,1,12,1,1,5
58,6,36,0,1,1,1,3,6,6
41,2,36,0,1,1,1,3,4,3
36,1,61,0,2,1,7,1,1,5
67,5,9,0,1,2,3,3,4,3
58,9,85,0,1,1,8,3,6,6
46,5,9,0,1,1,1,3,4,3
20,2,144,0,1,1,7,3,6,6
20,1,31,0,1,1,8,1,4,1
55,2,65,0,2,3,12,4,5,2
21,2,31,0,2,5,13,4,5,2
46,5,126,0,1,2,8,3,6,6
31,1,187,0,2,1,3,1,4,1
21,8,108,0,1,2,13,2,1,1
46,6,85,0,2,5,2,2,3,2
31,8,61,0,2,1,7,3,6,6
55,8,9,0,2,1,1,3,4,3
41,2,9,0,1,1,7,3,6,6
31,1,169,0,1,4,5,3,2,2
41,1,144,0,1,1,7,1,4,1
41,1,187,0,2,3,13,3,6,6
28,7,126,0,1,2,1,2,1,1
64,1,108,0,2,2,11,1,4,1
46,1,126,0,2,1,9,1,4,1
28,10,144,0,1,2,4,3,6,6
20,7,108,0,1,5,12,2,1,1
31,5,9,0,1,5,4,2,1,1
46,1,108,0,1,1,13,1,4,1
46,5,170,0,2,1,1,3,6,6
20,2,186,0,1,4,11,3,2,2
36,1,83,0,2,1,10,1,4,1
20,2,186,0,1,5,1,4,5,2
36,3,187,0,1,1,7,3,6,6
21,2,186,0,2,4,7,4,5,2
31,6,108,0,1,1,2,2,1,1
21,6,9,0,2,5,6,2,1,1
31,1,85,0,2,2,11,2,1,1
58,1,108,0,1,1,13,1,4,1
46,10,187,0,1,5,8,2,3,2
58,1,61,0,2,3,7,1,1,5
41,2,61,0,2,1,4,3,5,5
21,6,65,0,1,1,12,3,6,6
41,8,170,0,2,1,11,3,6,6
21,9,126,0,1,1,3,2,1,1
28,6,9,0,2,1,6,2,1,1
36,5,31,0,1,1,13,3,6,6
31,1,9,0,1,1,12,2,1,1
41,1,83,0,2,1,5,1,4,1
28,3,169,0,2,4,6,3,2,2
67,9,169,0,2,1,3,3,4,3
64,1,65,0,2,2,11,1,4,1
41,2,144,0,2,3,11,4,5,2
36,2,61,0,2,4,11,4,4,4
31,10,77,0,1,1,7,3,5,5
55,6,127,0,2,1,6,3,6,6
36,4,187,0,2,3,13,3,6,6
58,1,61,0,2,1,13,1,1,5
41,1,36,0,2,2,6,3,4,3
41,2,144,0,2,4,13,4,5,2
46,10,186,0,2,5,1,2,3,2
41,1,65,0,1,2,4,1,4,1
46,1,144,0,2,2,4,1,4,1
46,4,9,0,2,3,4,3,6,6
58,8,126,0,2,1,1,3,6,6
41,1,65,0,1,1,3,1,4,1
28,7,65,0,2,5,1,2,3,2
21,1,31,0,2,2,7,1,4,1
28,10,170,0,2,2,5,2,1,1
21,9,170,0,2,1,6,2,1,1
41,5,77,0,1,2,5,3,5,5
41,1,83,0,2,1,7,1,4,1
28,9,47,0,2,4,3,2,3,2
36,8,126,0,1,1,3,3,6,6
46,10,77,0,1,2,13,3,5,5
21,8,85,0,2,3,13,3,6,6
67,1,144,0,2,1,12,1,4,1
41,9,186,0,2,1,2,3,6,6
58,9,170,0,2,1,6,3,6,6
64,8,187,0,2,1,13,3,6,6
46,10,10,0,2,1,4,3,4,3
36,10,186,0,2,2,1,3,6,6
46,7,9,0,2,1,3,3,4,3
58,7,186,0,1,1,1,3,6,6
31,1,186,0,2,1,4,1,4,1
28,2,77,0,1,4,5,4,4,4
20,2,77,0,2,5,3,4,4,4
28,10,77,1,2,1,1,3,5,5
55,7,77,0,2,2,1,3,5,5
20,5,65,0,1,5,5,2,3,2
28,7,170,0,1,5,4,2,1,1
28,4,31,0,2,2,3,2,1,1
46,6,170,0,2,3,7,3,6,6
28,4,10,0,1,1,13,2,1,1
41,6,126,0,2,1,11,3,6,6
41,2,65,0,2,4,5,4,5,2
36,2,83,0,1,3,11,4,5,2
31,1,10,0,1,2,5,1,1,5
31,5,65,0,1,1,13,3,6,6
64,8,9,0,2,1,7,3,4,3
58,1,126,0,1,1,6,1,4,1
55,1,83,0,1,1,12,1,4,1
20,1,169,0,1,1,3,1,1,5
41,3,36,0,1,1,4,3,4,3
20,6,77,1,2,1,5,3,5,5
28,10,61,0,2,1,10,3,6,6
46,9,187,0,1,2,11,3,6,6
58,1,65,0,1,1,13,1,4,1
20,9,9,0,1,1,9,2,1,1
31,6,108,0,1,1,10,2,1,1
55,9,77,0,1,2,11,3,5,5
46,7,187,0,2,1,4,3,6,6
67,10,77,0,1,3,4,2,6,4
28,1,169,0,2,2,6,1,1,5
21,2,36,0,2,5,3,2,1,1
36,10,9,0,2,2,1,3,4,3
28,2,108,0,2,1,7,2,1,1
31,1,85,0,2,4,13,3,2,2
20,9,77,0,1,2,11,3,5,5
55,1,144,0,1,1,13,1,4,1
64,1,36,0,1,1,8,3,4,3
36,2,31,0,2,4,1,2,3,2
46,1,61,0,2,1,5,1,1,5
28,4,126,0,1,1,13,2,1,1
28,2,36,0,2,4,7,3,2,2
55,2,65,0,2,4,1,4,5,2
46,7,77,0,2,1,8,3,5,5
55,2,65,0,1,5,11,4,5,2
41,2,36,0,2,3,1,3,4,3
31,4,36,0,2,1,7,2,1,1
55,4,31,0,1,1,13,3,6,6
46,4,187,0,1,4,12,2,3,2
28,1,186,0,2,1,4,1,4,1
55,2,31,0,2,1,1,3,6,6
46,2,186,0,2,1,1,3,6,6
36,1,65,0,1,1,7,1,4,1
55,1,47,0,1,1,3,2,1,1
21,7,77,0,2,1,13,3,5,5
21,3,187,0,1,2,4,2,1,1
28,2,186,0,1,4,13,4,5,2
55,2,61,0,2,4,3,4,4,4
36,2,83,0,1,4,7,4,5,2
55,2,170,0,2,3,4,4,5,2
20,7,126,0,1,2,6,2,1,1
28,9,36,0,2,3,3,3,6,6
31,5,126,0,2,1,4,2,1,1
67,1,77,0,1,2,3,1,1,5
55,1,36,0,1,1,11,3,4,3
55,9,170,0,1,4,13,2,3,2
58,1,83,0,1,1,6,1,4,1
21,5,77,0,2,1,7,3,5,5
64,7,126,0,1,2,1,3,6,6
41,1,65,0,2,2,11,1,4,1
46,2,47,0,1,1,4,2,1,1
41,1,77,0,2,1,11,1,1,5
58,1,83,0,2,1,3,1,4,1
46,8,9,0,2,1,13,3,4,3
36,4,9,0,1,2,13,3,6,6
21,1,108,0,1,5,3,2,1,1
36,1,144,0,2,2,4,1,4,1
58,5,187,0,1,1,13,3,6,6
28,1,77,0,2,2,13,1,1,5
20,1,36,0,2,2,1,2,1,1
41,1,108,0,1,1,6,1,4,1
55,9,126,0,2,1,13,3,6,6
31,1,169,0,2,3,13,1,1,5
31,10,83,0,1,5,4,2,3,2
31,9,108,0,1,1,13,2,1,1
46,9,169,0,1,2,13,3,4,3
58,4,186,0,2,1,1,3,6,6
31,1,186,0,2,1,13,1,4,1
21,4,65,0,2,1,13,3,6,6
20,2,85,0,1,1,10,2,1,1
46,1,65,0,2,1,13,1,4,1
28,3,83,0,1,1,11,3,6,6
55,8,187,0,2,1,10,3,6,6
31,1,144,0,2,1,13,3,6,6
21,6,61,0,1,1,1,3,6,6
46,1,65,0,2,1,9,1,4,1
31,7,170,0,1,5,1,2,1,1
46,2,144,0,2,5,1,4,5,2
20,6,61,0,1,3,7,3,6,6
55,9,77,0,1,1,5,3,5,5
55,7,186,0,2,2,1,3,6,6
31,2,65,0,1,5,1,2,3,2
58,7,36,0,2,1,3,3,6,6
46,8,126,0,2,2,3,3,6,6
31,1,83,0,1,1,12,3,6,6
36,10,85,0,2,4,9,2,3,2
46,9,170,0,1,1,1,3,6,6
36,2,65,0,1,5,11,4,5,2
36,1,186,0,2,3,4,3,6,6
41,1,61,0,1,1,11,1,1,5
55,1,77,0,1,3,1,1,1,5
21,8,36,0,2,5,13,2,3,2
28,5,170,0,2,1,1,2,1,1
36,3,31,0,2,1,2,3,6,6
28,4,9,0,1,2,12,2,1,1
41,1,65,0,2,2,8,1,4,1
28,8,108,0,2,1,11,2,1,1
20,1,187,0,1,1,12,2,1,1
21,1,77,0,2,2,8,1,1,5
31,2,187,0,1,4,5,4,5,2
20,4,126,0,1,5,4,2,1,1
21,3,36,0,1,1,2,2,1,1
41,2,85,0,1,5,10,4,4,5
28,3,36,0,2,1,6,2,1,1
20,2,186,0,2,1,4,2,1,1
64,2,186,0,2,4,6,2,3,2
28,5,36,0,2,1,1,3,6,6
55,1,83,0,2,1,6,1,4,1
58,1,85,0,2,1,1,3,4,3
41,4,9,0,2,4,1,2,3,2
46,4,187,0,1,1,7,3,6,6
55,7,170,0,1,2,1,3,6,6
41,10,77,0,2,2,5,3,5,5
55,2,126,0,2,3,4,4,5,2
67,9,187,0,2,1,11,3,6,6
36,2,186,0,1,1,11,3,6,6
31,1,77,0,1,2,10,1,1,5
67,8,31,0,2,4,5,2,3,2
36,1,61,0,1,1,11,1,1,5
31,7,9,0,1,5,8,2,1,1
20,8,108,0,2,1,1,2,1,1
46,1,36,0,2,3,13,3,4,3
46,1,144,0,1,2,13,1,4,1
28,2,36,0,2,3,3,3,2,2
58,1,61,0,2,1,13,1,1,5
28,6,36,0,1,4,7,2,3,2
46,1,126,0,2,1,7,1,4,1
28,7,85,0,2,2,13,3,6,6
28,8,83,0,2,4,9,2,3,2
41,6,187,0,2,1,6,3,6,6
64,4,85,0,2,2,12,3,4,3
64,9,77,0,1,1,1,3,5,5
64,9,170,0,1,5,11,2,3,2
46,2,61,0,1,1,13,3,5,5
28,8,108,0,2,1,11,2,1,1
28,3,61,0,1,1,11,3,6,6
21,2,186,0,1,5,13,4,5,2
31,6,83,0,2,1,8,3,6,6
21,9,77,0,2,1,13,3,5,5
31,3,187,0,2,1,12,2,1,1
64,2,9,0,2,4,13,4,4,5
20,2,77,0,2,4,5,4,4,4
28,6,126,0,2,1,11,2,1,1
20,3,65,0,1,1,6,3,6,6
41,2,126,0,1,3,13,4,5,2
20,2,108,0,1,1,1,2,1,1
64,2,186,0,1,4,5,2,3,2
46,1,83,0,1,1,8,1,4,1
31,2,187,0,1,5,3,2,1,1
58,1,31,0,2,4,13,2,3,2
55,1,108,0,1,1,3,1,4,1
21,3,144,0,1,1,5,3,6,6
21,1,31,0,2,1,6,1,4,1
31,6,144,0,2,5,7,2,3,2
31,1,77,0,1,1,12,1,1,5
21,2,126,0,1,1,7,2,1,1
46,1,65,0,1,1,2,1,4,1
36,1,77,0,1,1,1,1,1,5
31,8,77,0,2,2,4,3,5,5
36,1,65,0,2,1,1,1,4,1
64,4,61,0,1,5,1,2,6,4
36,2,186,0,2,5,5,2,3,2
31,10,126,0,1,1,5,2,1,1
55,6,170,0,1,5,13,2,3,2
36,8,169,0,1,1,13,3,4,3
46,5,36,0,2,5,12,2,3,2
31,5,126,0,2,1,7,2,1,1
41,4,36,0,1,2,4,3,4,3
31,8,77,0,1,5,4,2,6,4
46,9,186,0,2,4,8,2,3,2
21,6,126,0,2,2,8,2,1,1
67,1,108,0,2,2,1,1,4,1
31,2,36,0,1,3,1,3,2,2
55,4,9,0,2,1,5,3,6,6
21,1,10,0,2,1,1,1,1,5
55,2,83,0,2,4,3,4,5,2
46,10,77,0,1,5,5,2,6,4
28,3,186,0,2,1,12,2,1,1
21,5,77,0,2,1,13,3,5,5
36,4,36,0,2,2,13,3,4,3
28,2,144,0,2,1,7,3,6,6
31,6,85,0,2,4,7,2,3,2
55,1,83,0,1,1,7,1,4,1
58,6,31,0,1,2,7,3,6,6
55,2,186,0,2,2,13,3,6,6
58,8,31,0,1,3,6,3,6,6
55,2,9,0,2,1,3,3,6,6
58,9,31,0,1,2,3,3,6,6
28,4,65,0,2,1,11,3,6,6
41,4,36,0,1,1,5,3,4,3
55,9,10,0,1,3,8,3,4,3
36,1,108,0,2,1,4,1,4,1
21,9,108,0,2,1,12,2,1,1
21,3,186,0,2,1,13,2,1,1
20,5,65,0,1,2,6,3,6,6
41,6,85,0,1,1,11,3,6,6
55,1,65,0,1,1,6,1,4,1
21,1,186,0,1,1,1,1,4,1
31,2,186,0,1,5,8,4,5,2
41,4,187,0,1,1,5,3,6,6
31,10,108,0,1,1,5,2,1,1
55,1,65,0,2,1,4,1,4,1
64,1,36,0,2,1,1,3,4,3
58,5,9,0,2,1,11,3,4,3
20,2,85,0,1,1,7,2,1,1
41,1,83,0,2,2,1,1,4,1
36,1,61,0,1,1,4,3,5,5
58,10,36,0,1,1,4,3,6,6
46,1,36,0,2,1,9,3,4,3
31,1,144,0,1,1,1,3,6,6
58,7,77,0,1,1,12,3,5,5
67,1,61,0,1,1,4,1,1,5
20,2,85,0,1,1,5,2,1,1
21,4,36,0,1,2,12,2,1,1
31,9,47,0,1,1,8,3,6,6
21,2,77,0,1,4,1,4,4,4
46,1,65,0,1,1,7,1,4,1
28,5,77,0,1,1,1,3,5,5
41,2,65,0,2,3,12,4,5,2
41,7,77,0,1,2,5,3,5,5
41,1,186,0,2,3,5,3,6,6
36,3,187,0,1,2,4,3,6,6
28,2,31,0,1,1,3,2,1,1
58,4,36,0,1,1,13,3,4,3
20,4,61,0,1,1,3,3,6,6
31,2,9,0,2,1,5,2,1,1
67,1,144,0,2,1,12,1,4,1
20,6,77,0,2,1,1,3,5,5
31,9,126,0,2,2,5,2,1,1
21,7,65,0,1,2,2,3,6,6
46,2,65,0,1,5,1,4,5,2
31,10,36,0,2,1,9,3,6,6
21,10,108,0,2,1,6,2,1,1
64,1,36,0,2,1,4,3,4,3
36,9,77,0,1,1,4,3,5,5
58,1,61,0,2,1,7,1,1,5
31,3,9,0,1,1,1,2,1,1
31,9,144,0,2,2,3,3,6,6
64,6,187,0,2,4,3,2,3,2
31,3,61,0,1,2,6,3,6,6
20,2,108,0,1,1,13,2,1,1
28,8,77,0,2,1,7,3,5,5
31,4,36,0,2,1,4,2,1,1
58,6,186,0,2,3,1,3,6,6
41,1,9,0,1,1,4,3,6,6
20,7,85,0,2,3,13,3,6,6
21,1,65,0,1,1,13,3,6,6
67,6,187,0,2,2,9,3,6,6
41,3,31,0,2,1,6,3,6,6
31,3,126,0,2,3,12,3,2,2
55,5,9,0,1,1,13,3,4,3
31,1,187,0,2,2,13,1,4,1
36,1,83,0,1,1,13,1,4,1
36,10,36,0,1,1,1,3,6,6
31,2,170,0,2,1,1,2,1,1
21,4,61,0,2,5,4,2,3,2
41,1,61,0,2,1,11,1,1,5
41,1,65,0,1,1,13,1,4,1
28,3,108,0,2,3,12,3,2,2
31,1,77,0,2,2,7,1,1,5
41,9,127,0,1,3,1,3,6,6
58,8,47,0,2,2,9,2,1,1
28,10,126,0,1,1,13,2,1,1
20,9,65,0,1,1,1,3,6,6
21,1,187,0,2,1,1,1,4,1
46,2,186,0,1,1,5,3,6,6
55,2,65,0,1,5,1,4,5,2
21,9,144,0,2,1,11,3,6,6
36,1,83,0,1,1,3,1,4,1
36,4,47,0,2,1,12,2,1,1
55,5,9,0,2,1,3,3,4,3
41,4,9,0,2,1,13,3,6,6
21,3,65,0,1,4,12,2,3,2
36,8,9,0,2,2,7,3,4,3
20,1,9,0,1,1,7,2,1,1
31,9,85,0,2,5,10,2,3,2
21,4,65,0,1,1,13,3,6,6
28,6,9,0,1,1,2,2,1,1
55,1,170,0,1,1,12,1,4,1
58,1,36,0,2,1,11,3,4,3
28,2,65,0,2,1,3,3,6,6
31,7,65,0,2,5,5,2,3,2
28,9,77,0,1,4,13,2,6,4
31,2,65,0,2,1,4,3,6,6
31,3,61,0,2,4,3,2,3,2
58,7,47,0,2,1,13,2,1,1
36,2,10,0,2,4,13,4,4,5
46,5,187,0,1,1,13,3,6,6
64,6,85,0,2,2,12,3,6,6
41,1,108,0,2,1,4,1,4,1
55,3,169,0,2,5,13,2,3,2
21,1,108,0,2,2,5,2,1,1
64,2,77,0,2,4,1,4,4,4
36,3,85,0,1,1,7,3,4,3
28,2,10,0,2,4,1,3,2,2
31,10,170,0,1,1,4,2,1,1
64,8,36,0,1,4,11,2,3,2
20,1,187,0,1,1,13,1,4,1
31,4,31,0,2,2,4,2,1,1
21,9,65,0,1,2,1,3,6,6
28,8,77,0,1,1,4,3,5,5
46,6,85,0,1,1,3,3,6,6
36,10,186,0,2,5,11,2,3,2
55,10,186,0,1,1,1,3,6,6
58,5,36,0,1,4,4,2,3,2
36,2,65,0,1,5,11,4,5,2
41,2,169,0,1,5,13,4,4,5
21,6,85,0,1,2,8,3,6,6
36,1,65,0,2,1,1,1,4,1
46,7,9,0,1,1,12,3,4,3
31,10,61,0,1,1,3,3,6,6
64,1,126,0,1,1,13,1,4,1
41,1,144,0,2,1,1,1,4,1
20,7,9,0,1,2,11,2,1,1
36,1,186,0,1,1,13,3,6,6
46,1,144,0,2,1,12,1,4,1
64,1,61,0,1,2,4,1,1,5
28,1,186,0,2,1,9,1,4,1
58,3,186,0,2,2,6,3,6,6
55,6,186,0,1,3,3,3,6,6
67,2,108,0,1,3,1,4,5,2
55,2,61,0,1,5,12,4,4,4
58,6,187,0,1,5,5,2,3,2
20,1,36,0,1,4,5,3,2,2
28,5,144,0,1,5,1,2,3,2
28,1,186,0,1,1,12,1,4,1
31,1,186,0,1,2,11,2,1,1
31,9,36,0,1,1,13,3,6,6
28,1,169,0,2,1,6,1,1,5
46,2,65,0,2,3,10,4,5,2
28,4,31,0,1,2,1,2,1,1
46,1,77,0,2,1,13,1,1,5
46,3,9,0,2,4,3,2,3,2
31,10,144,0,2,1,2,3,6,6
55,1,170,0,2,1,1,1,4,1
20,9,77,0,2,1,3,3,5,5
20,1,36,0,2,2,1,2,1,1
41,2,187,0,1,1,5,3,6,6
31,2,83,0,2,1,1,3,6,6
58,1,61,0,2,3,7,1,1,5
58,1,65,0,1,1,12,1,4,1
58,5,47,0,1,1,13,2,1,1
28,5,85,0,2,4,5,2,3,2
20,10,77,0,2,1,7,3,5,5
41,9,77,0,2,2,6,3,5,5
21,1,186,0,1,1,13,2,1,1
58,1,65,0,2,2,13,1,4,1
55,2,85,0,1,4,13,4,4,5
67,3,187,0,1,1,13,3,6,6
46,8,47,0,2,4,9,3,2,2
64,8,186,0,2,2,3,3,6,6
36,7,9,0,1,1,3,3,4,3
41,4,169,0,2,4,1,2,3,2
21,7,77,0,2,1,1,3,5,5
28,5,65,0,1,5,13,2,3,2
31,10,9,0,1,1,10,2,1,1
58,5,126,0,1,4,8,2,3,2
46,1,186,0,1,5,13,2,3,2
41,10,77,0,1,2,2,3,5,5
46,5,47,0,1,2,13,2,1,1
31,7,126,0,2,1,1,2,1,1
46,2,36,0,2,5,1,4,4,5
55,3,36,0,1,3,1,3,4,3
58,3,85,0,1,2,1,3,4,3
41,10,187,0,1,2,13,3,6,6
28,8,61,0,2,1,4,3,6,6
31,3,169,0,2,1,11,2,1,1
20,2,186,0,2,3,1,3,2,2
21,6,170,0,1,5,13,2,1,1
41,8,85,0,2,1,6,3,6,6
46,4,85,0,1,1,4,3,4,3
36,1,9,0,2,2,7,3,6,6
28,2,186,0,1,3,13,4,5,2
46,2,186,0,1,1,4,3,6,6
55,6,186,0,2,1,13,3,6,6
21,1,9,0,1,1,12,2,1,1
46,10,36,0,2,2,3,3,6,6
55,8,31,0,1,4,1,2,3,2
28,4,126,0,1,5,13,2,1,1
64,2,187,0,1,1,4,3,6,6
58,5,85,0,2,1,13,3,6,6
46,1,170,0,1,2,1,1,4,1
41,9,77,0,1,1,7,3,5,5
46,1,144,0,1,1,4,1,4,1
36,1,77,0,2,3,11,1,1,5
28,1,169,0,2,2,2,1,1,5
36,2,31,0,1,2,13,3,6,6
21,6,47,0,1,2,11,3,6,6
58,6,47,0,2,1,7,2,1,1
55,5,186,0,1,3,7,3,6,6
36,10,36,0,2,4,11,2,3,2
58,10,36,0,2,1,13,3,6,6
21,2,65,0,1,2,1,3,6,6
41,4,9,0,2,3,8,3,6,6
58,1,61,0,2,2,4,3,5,5
31,9,36,0,2,1,12,3,6,6
36,2,144,0,1,5,8,4,5,2
28,3,187,0,1,1,10,2,1,1
20,1,187,0,1,1,6,1,4,1
28,1,77,0,1,2,7,1,1,5
36,1,186,0,2,1,13,3,6,6
58,7,77,0,1,1,13,3,5,5
28,1,31,0,2,2,2,1,4,1
28,4,170,0,1,1,13,2,1,1
55,2,144,0,1,5,12,4,5,2
20,6,144,0,2,4,4,2,3,2
55,7,169,0,2,1,13,3,4,3
55,4,10,0,2,1,7,3,6,6
58,3,186,0,1,3,6,3,6,6
58,6,186,0,2,1,3,3,6,6
36,6,77,0,2,1,5,3,5,5
31,3,36,0,1,5,7,2,1,1
58,2,77,0,1,5,5,4,4,4
20,1,77,0,2,1,4,1,1,5
55,8,186,0,2,1,6,3,6,6
41,1,77,0,2,1,1,1,1,5
41,1,61,0,1,1,5,3,5,5
28,9,170,0,1,1,10,2,1,1
55,2,169,0,2,5,1,4,4,5
21,9,47,0,1,1,13,3,6,6
28,1,126,0,1,2,13,2,1,1
28,1,65,0,1,3,4,3,6,6
58,2,144,0,1,3,7,4,5,2
67,2,144,0,1,5,1,4,5,2
28,7,77,0,1,1,7,3,5,5
28,2,186,0,1,5,1,4,5,2
36,4,61,0,2,5,1,2,6,4
36,7,36,0,1,1,4,3,6,6
64,8,36,0,1,1,4,3,6,6
58,2,108,0,2,4,5,4,5,2
36,2,77,0,1,4,13,4,4,4
20,6,9,0,1,5,4,2,1,1
36,8,77,0,2,1,4,3,5,5
46,1,77,0,2,1,11,1,1,5
20,10,36,0,2,1,1,3,6,6
58,4,36,0,1,1,11,3,4,3
46,6,187,0,2,1,4,3,6,6
20,4,169,0,2,1,12,2,1,1
31,10,170,0,2,2,13,2,1,1
31,7,36,0,1,5,3,2,3,2
55,1,108,0,2,1,13,1,4,1
36,3,85,0,1,1,8,3,4,3
31,1,77,0,1,2,13,1,1,5
31,1,187,0,1,1,4,2,1,1
36,9,85,0,1,1,13,3,6,6
46,3,187,0,1,1,4,3,6,6
55,10,36,0,2,1,6,3,6,6
36,8,77,0,1,1,1,3,5,5
46,6,187,0,1,5,4,2,3,2
28,9,144,0,2,5,2,2,3,2
31,2,36,0,2,4,1,3,2,2
28,2,186,0,2,3,6,4,5,2
64,8,186,0,1,5,4,2,3,2
31,2,186,0,1,1,5,2,1,1
36,9,31,0,1,1,11,3,6,6
20,2,36,0,1,1,1,2,1,1
31,4,36,0,2,5,1,2,1,1
31,4,61,0,2,4,1,2,3,2
55,7,126,0,2,4,11,2,3,2
46,2,169,0,2,5,3,4,4,5
31,6,9,0,2,1,1,2,1,1
55,1,61,0,2,1,1,1,1,5
36,6,186,0,2,1,12,3,6,6
46,7,126,0,2,1,6,3,6,6
31,3,170,1,1,2,8,2,1,1
21,5,47,0,2,2,3,3,6,6
41,1,186,0,1,1,12,3,6,6
46,8,187,0,2,3,9,3,6,6
58,6,9,0,2,1,13,3,4,3
64,9,186,0,2,1,1,3,6,6
58,8,9,0,1,3,6,3,4,3
41,3,61,0,1,1,4,3,5,5
36,1,65,0,1,2,1,1,4,1
46,1,83,0,2,1,1,1,4,1
20,4,36,0,2,3,13,3,2,2
46,1,170,0,1,1,11,1,4,1
41,3,186,0,1,1,3,3,6,6
21,5,65,0,1,2,10,3,6,6
20,2,187,0,1,4,12,4,5,2
21,4,9,0,2,1,13,2,1,1
64,1,65,0,1,1,5,1,4,1
31,4,186,0,1,5,13,2,1,1
41,6,9,0,1,1,7,3,4,3
41,3,61,0,1,5,11,2,6,4
21,4,61,0,2,1,6,3,6,6
28,2,108,0,1,1,1,2,1,1
28,9,170,0,2,4,12,3,2,2
36,1,61,0,2,1,9,3,5,5
28,4,36,0,2,1,1,2,1,1
41,1,170,0,1,1,1,1,4,1
41,2,9,0,1,1,1,3,6,6
31,1,31,0,2,1,6,1,4,1
46,1,77,0,1,2,6,1,1,5
21,7,65,0,1,4,3,2,3,2
28,8,9,0,2,5,5,2,1,1
20,8,65,0,1,1,6,3,6,6
21,1,108,0,2,2,4,2,1,1
31,4,108,0,2,1,7,2,1,1
21,1,9,0,1,5,1,2,1,1
21,9,77,0,2,1,1,3,5,5
28,2,108,0,2,5,3,2,1,1
28,2,170,0,1,1,4,2,1,1
31,2,144,0,1,1,4,3,6,6
41,1,83,0,2,1,5,1,4,1
58,2,144,0,1,3,8,4,5,2
46,2,9,0,2,5,1,4,4,5
55,2,9,0,2,5,4,4,4,5
31,8,36,0,2,4,7,2,3,2
21,2,108,0,1,3,1,3,2,2
46,6,36,0,2,3,6,3,6,6
64,1,108,0,1,2,13,1,4,1
31,1,169,0,1,1,3,1,1,5
55,7,31,0,1,2,1,3,6,6
41,9,186,0,2,2,3,3,6,6
64,4,186,0,2,1,1,3,6,6
55,1,108,0,1,2,1,1,4,1
28,2,187,0,1,3,1,4,5,2
36,4,36,0,1,1,1,3,4,3
21,5,83,0,1,1,7,3,6,6
28,1,186,0,2,1,6,2,1,1
21,5,144,0,2,1,4,3,6,6
46,4,187,1,2,1,11,3,6,6
55,6,186,0,1,1,12,3,6,6
28,1,31,0,2,1,4,1,4,1
64,4,186,0,1,1,1,3,6,6
58,5,9,0,1,1,3,3,4,3
28,4,186,0,2,1,8,2,1,1
36,2,65,0,1,4,7,4,5,2
28,5,65,0,1,1,1,3,6,6
21,5,47,0,2,2,4,3,6,6
31,1,186,0,2,1,10,1,4,1
64,2,36,0,2,1,4,3,4,3
21,8,83,0,2,5,6,2,3,2
21,1,186,1,2,2,3,1,4,1
55,2,36,0,1,1,13,3,4,3
21,2,85,0,2,1,1,2,1,1
31,10,83,0,2,3,10,3,6,6
55,6,31,0,1,5,4,2,3,2
20,4,36,0,1,4,1,3,2,2
46,1,170,0,2,1,1,1,4,1
36,2,36,0,1,3,2,3,4,3
67,2,108,0,2,4,1,4,5,2
41,1,186,0,2,5,2,2,3,2
67,1,77,0,1,1,1,1,1,5
46,1,77,0,2,2,1,1,1,5
41,1,144,0,1,1,13,1,4,1
58,1,77,0,2,3,5,1,1,5
21,5,61,0,1,1,3,3,6,6
46,1,144,0,2,1,4,1,4,1
64,1,144,0,2,1,7,1,4,1
28,3,9,0,2,1,8,2,1,1
21,6,170,0,1,2,1,2,1,1
31,8,77,0,1,2,13,3,5,5
36,9,127,0,2,1,8,3,6,6
41,1,108,0,1,1,1,1,4,1
28,4,108,0,2,1,1,2,1,1
64,2,108,0,1,3,10,4,5,2
28,5,77,0,2,5,8,2,6,4
31,4,170,0,1,2,13,2,1,1
20,2,36,0,1,2,13,2,1,1
67,8,186,0,1,2,4,3,6,6
58,1,83,0,2,1,13,1,4,1
36,6,77,0,2,3,1,2,6,4
21,1,144,0,1,5,5,2,3,2
46,5,127,0,2,4,8,2,3,2
55,8,170,0,2,1,13,3,6,6
36,9,36,0,2,1,13,3,6,6
21,4,65,0,1,2,11,3,6,6
46,9,9,0,1,1,13,3,4,3
31,1,186,0,1,3,6,3,2,2
46,1,65,0,2,1,13,1,4,1
41,10,186,0,1,1,8,3,6,6
55,2,77,0,2,4,1,4,4,4
28,8,126,0,1,2,12,2,1,1
28,1,108,0,2,1,6,2,1,1
46,2,83,0,1,4,7,4,5,2
31,2,61,0,1,2,7,3,6,6
55,1,144,0,2,1,5,1,4,1
20,1,83,0,2,1,5,3,6,6
58,2,65,0,2,3,1,4,5,2
36,2,83,0,1,4,13,4,5,2
41,3,36,0,2,1,11,3,4,3
64,10,36,0,1,1,8,3,6,6
67,1,65,0,1,2,1,1,4,1
46,1,170,0,2,2,3,1,4,1
41,6,9,0,2,3,13,3,4,3
41,2,108,0,2,3,3,4,5,2
21,7,61,0,1,1,5,3,6,6
20,1,36,0,2,3,1,3,2,2
28,2,126,0,2,5,5,2,1,1
55,4,169,0,1,1,6,3,6,6
28,1,31,0,2,2,13,1,4,1
20,6,126,0,1,5,4,2,1,1
55,1,144,0,2,2,5,1,4,1
46,2,144,0,1,5,13,4,5,2
46,2,170,0,2,5,13,4,5,2
31,5,170,0,1,1,5,2,1,1
55,1,61,0,1,2,13,1,1,5
28,10,65,0,2,1,10,3,6,6
21,2,9,0,2,1,8,2,1,1
20,5,77,0,1,5,1,2,6,4
55,1,108,0,1,1,3,1,4,1
36,2,85,0,1,1,12,3,4,3
28,10,77,0,2,1,5,3,5,5
58,2,126,0,2,4,3,4,5,2
20,4,186,0,2,2,13,2,1,1
46,1,61,0,1,5,12,2,6,4
21,10,36,0,2,1,4,3,6,6
55,2,169,0,2,4,11,2,3,2
64,2,85,0,1,5,4,4,4,5
31,1,186,0,1,1,1,1,4,1
31,5,36,0,2,1,4,3,6,6
28,1,108,0,2,1,5,2,1,1
28,2,187,0,2,1,13,2,1,1
41,1,61,0,2,1,1,1,1,5
58,10,31,0,1,1,11,3,6,6
36,3,186,0,1,1,3,3,6,6
55,6,77,0,1,1,12,3,5,5
64,1,83,0,2,1,1,1,4,1
46,10,47,0,1,3,8,3,2,2
20,1,169,0,1,1,7,1,1,5
20,4,9,0,1,5,2,2,1,1
28,10,144,0,1,1,5,3,6,6
28,10,61,0,2,1,7,3,6,6
67,2,144,0,2,3,12,4,5,2
31,4,144,0,2,1,7,3,6,6
21,9,36,0,1,1,8,3,6,6
41,10,186,0,2,5,13,2,3,2
21,4,108,0,1,1,7,2,1,1
46,1,77,0,2,2,13,1,1,5
31,9,65,0,2,4,6,2,3,2
31,6,170,0,2,5,5,2,1,1
31,1,170,0,2,1,1,2,1,1
36,2,83,0,2,5,2,4,5,2
28,10,9,0,1,1,8,2,1,1
58,1,83,0,1,1,7,1,4,1
36,2,9,1,1,5,4,4,4,5
36,1,108,0,1,1,5,1,4,1
20,8,36,0,1,1,8,3,6,6
31,8,126,0,1,1,13,2,1,1
64,2,169,1,1,5,7,4,4,5
55,2,9,0,1,5,6,4,4,5
46,1,61,0,2,1,13,1,1,5
21,4,144,0,2,2,6,3,6,6
31,7,36,0,2,1,1,3,6,6
31,8,77,0,2,4,13,2,6,4
46,1,144,0,2,1,1,1,4,1
46,3,31,0,1,5,4,2,3,2
36,5,187,0,2,4,7,2,3,2
41,2,83,0,2,4,13,4,5,2
55,4,186,0,2,1,6,3,6,6
55,1,77,0,1,2,13,1,1,5
55,6,187,0,1,1,4,3,6,6
36,5,77,0,2,1,13,3,5,5
46,1,61,0,1,2,2,1,1,5
58,2,144,0,2,5,1,4,5,2
36,2,77,0,2,4,3,4,4,4
31,4,31,0,2,1,1,2,1,1
21,1,31,0,1,1,1,1,4,1
36,1,108,0,2,1,10,1,4,1
31,3,170,0,2,1,5,2,1,1
64,9,170,0,2,1,13,3,6,6
64,2,83,0,1,3,3,4,5,2
31,7,9,0,1,2,5,2,1,1
64,2,61,0,1,5,9,4,4,4
36,10,36,0,2,5,8,2,3,2
67,10,85,0,2,2,3,3,6,6
36,8,36,0,1,1,1,3,6,6
55,1,83,0,2,2,13,1,4,1
41,2,36,0,1,1,13,3,4,3
64,1,170,0,2,1,13,1,4,1
55,1,65,0,1,1,13,1,4,1
36,2,186,0,1,3,1,3,6,6
28,3,186,0,2,5,4,2,1,1
20,6,9,0,1,2,1,2,1,1
36,9,77,0,1,2,4,3,5,5
36,1,61,0,1,1,8,1,1,5
31,10,108,0,2,5,9,2,1,1
58,1,65,0,1,1,4,1,4,1
67,1,10,0,1,1,12,3,6,6
31,5,77,0,1,1,10,3,5,5
36,2,47,0,2,1,7,2,1,1
64,1,144,0,2,1,4,1,4,1
28,5,83,0,1,1,7,3,6,6
31,3,126,0,2,5,10,2,1,1
46,1,108,0,1,1,12,1,4,1
20,7,83,0,2,1,3,3,6,6
36,1,170,0,2,1,13,1,4,1
46,7,170,0,1,2,5,3,6,6
36,8,186,0,1,1,3,3,6,6
58,1,170,0,2,1,11,1,4,1
67,2,108,0,1,4,6,4,5,2
58,5,9,0,1,1,5,3,4,3
20,8,47,0,1,1,1,3,6,6
36,10,187,0,2,1,4,3,6,6
31,2,186,0,1,2,13,2,1,1
31,1,31,0,1,1,8,1,4,1
64,9,10,0,2,1,13,3,4,3
58,2,9,0,1,1,11,3,6,6
21,4,144,0,2,4,12,2,3,2
21,2,108,0,1,2,4,2,1,1
28,1,187,0,2,1,11,1,4,1
21,9,126,0,1,1,8,2,1,1
36,1,36,0,2,3,11,3,4,3
55,6,170,0,1,1,5,3,6,6
28,9,61,0,1,1,7,3,6,6
64,1,170,0,2,1,13,1,4,1
46,5,31,0,1,2,1,3,6,6
31,1,126,0,1,1,4,2,1,1
41,2,170,0,1,4,3,4,5,2
28,8,77,0,2,1,4,3,5,5
36,8,31,0,1,1,11,3,6,6
55,9,36,0,2,2,13,3,6,6
55,6,77,0,1,1,4,3,5,5
46,2,65,0,1,3,13,4,5,2
58,4,186,0,1,1,4,3,6,6
58,10,126,0,1,1,5,3,6,6
55,4,61,0,2,2,2,3,5,5
36,8,170,0,2,5,4,2,3,2
46,6,9,0,2,1,13,3,4,3
31,1,186,0,2,1,9,1,4,1
28,8,170,0,2,1,3,2,1,1
67,6,36,0,1,2,4,3,6,6
21,2,186,0,1,3,7,4,5,2
67,1,65,0,1,1,3,1,4,1
28,10,85,0,2,2,1,3,6,6
31,6,61,0,1,1,13,3,6,6
36,2,144,0,1,5,13,4,5,2
21,8,65,0,1,1,13,3,6,6
21,2,77,0,2,5,4,4,4,4
46,5,77,0,1,3,12,2,6,4
31,5,83,0,2,1,10,3,6,6
58,10,127,0,1,1,13,3,6,6
46,9,126,0,1,1,12,3,6,6
64,1,65,0,2,1,11,1,4,1
36,1,126,0,2,1,5,1,4,1
31,5,83,0,2,2,11,3,6,6
21,8,9,0,2,4,8,3,2,2
31,1,77,0,2,1,4,1,1,5
41,1,83,0,1,1,11,1,4,1
55,2,36,0,1,4,7,4,4,5
21,10,83,0,2,2,13,3,6,6
64,4,9,0,1,1,4,3,6,6
46,1,108,0,1,1,4,1,4,1
31,2,144,0,1,1,3,3,6,6
21,6,170,0,1,1,3,2,1,1
46,2,85,0,1,3,13,3,4,3
58,10,77,0,1,5,11,2,6,4
55,8,31,0,2,4,5,2,3,2
31,4,127,0,2,1,10,2,1,1
31,1,77,0,2,1,13,1,1,5
20,8,170,0,1,1,1,2,1,1
36,5,169,0,1,2,1,3,4,3
28,1,31,0,1,1,5,2,1,1
31,6,9,0,1,1,13,2,1,1
36,7,31,0,1,1,11,3,6,6
36,1,144,0,2,1,13,1,4,1
46,8,186,0,2,5,5,2,3,2
55,4,186,0,1,4,13,2,3,2
21,1,144,0,1,1,11,3,6,6
41,4,186,0,2,1,5,3,6,6
36,6,9,0,1,2,13,3,4,3
21,5,170,0,2,1,4,2,1,1
20,6,77,0,2,1,7,3,5,5
36,1,61,0,2,1,13,1,1,5
36,1,65,0,2,2,5,1,4,1
31,10,170,0,2,1,8,2,1,1
46,7,77,0,1,1,1,3,5,5
58,4,186,0,2,1,1,3,6,6
36,5,126,0,1,4,4,2,3,2
28,1,186,0,2,1,5,1,4,1
20,3,61,0,1,5,1,2,3,2
36,2,65,0,2,3,13,4,5,2
64,1,108,0,1,1,13,1,4,1
36,10,126,0,2,1,6,3,6,6
67,2,108,0,2,3,1,4,5,2
20,2,77,0,1,5,11,4,4,4
36,1,77,0,1,1,11,1,1,5
28,1,31,0,1,1,2,1,4,1
41,4,31,0,1,1,11,3,6,6
31,6,127,0,2,1,4,2,1,1
28,10,65,0,1,1,5,3,6,6
46,3,186,0,1,1,8,3,6,6
28,2,61,0,1,3,13,3,6,6
41,6,186,0,2,1,5,3,6,6
64,8,187,0,1,4,7,2,3,2
36,7,36,0,1,4,6,2,3,2
67,7,36,0,2,2,11,3,6,6
41,2,108,0,1,5,1,4,5,2
31,1,186,0,2,1,13,1,4,1
46,3,187,0,2,5,11,2,3,2
36,2,47,0,1,2,5,2,1,1
41,4,36,0,1,1,7,3,4,3
21,2,31,0,2,5,13,4,5,2
28,1,31,0,1,2,1,2,1,1
41,1,144,0,1,2,7,1,4,1
21,2,36,0,1,4,7,3,2,2
31,2,187,0,1,5,1,4,5,2
31,8,9,0,1,1,3,2,1,1
31,1,31,0,1,2,8,1,4,1
46,8,47,0,1,5,1,2,1,1
28,10,9,0,2,1,13,2,1,1
41,2,169,0,2,4,13,4,4,5
21,2,36,0,1,1,11,2,1,1
20,1,186,0,2,1,3,1,4,1
46,2,36,0,2,2,4,3,4,3
20,6,170,0,2,1,1,2,1,1
41,1,170,0,1,1,5,1,4,1
58,4,9,0,2,4,11,2,3,2
46,1,170,0,1,2,7,1,4,1
58,2,77,0,1,4,7,4,4,4
46,4,31,0,2,4,13,2,3,2
20,5,77,0,2,1,1,3,5,5
21,4,36,0,2,2,1,2,1,1
28,6,170,1,2,1,3,2,1,1
67,5,170,0,1,4,11,2,3,2
28,7,85,0,2,1,11,3,6,6
64,2,65,0,2,4,13,4,5,2
46,6,187,0,1,5,3,2,3,2
21,9,36,0,1,1,13,3,6,6
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment