0
0
1
2
2
2
2
2
3
4
4
5
6
7
7
8
8
9
9
10
11
12
12
13
14
15
16
17
18
18
19
20
21
21
22
22
22
24
26
26
30
33
38
42
46
49
51
56
57
60
65
68
72
77
82
87
90
93
96
103
112
121
133
135
147
159
164
179
193
207
225
225
225
226
226
226
226
226
226
226
226
226
226
226
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
228
229
230
230
230
230
231
232
233
234
235
236
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
238
238
239
239
240
241
242
242
242
242
242
242
243
244
245
245
245
245
246
247
248
249
249
250
250
251
252
252
252
252
252
252
252
253
254
255
256
256
256
256
257
258
258
259
260
261
262
262
263
264
264
264
265
266
266
267
268
268
268
268
268
268
268
268
269
269
270
270
271
272
272
272
273
274
274
274
274
274
275
276
276
276
277
277
278
279
280
280
280
280
280
280
280
280
280
280
280
280
280
280
280
280
280
280
280
280
280
280
280
280
281
282
283
284
285
286
287
287
287
287
287
287
287
287
288
289
290
290
290
290
291
292
293
294
295
296
297
298
299
300
301
302
303
303
304
305
306
307
308
308
308
309
310
310
311
312
312
313
314
314
314
315
316
316
317
318
318
318
318
318
318
318
318
318
318
318
318
318
318
319
319
320
320
320
320
321
322
322
322
322
323
324
324
328
328
328
328
328
330
331
332
334
337
339
340
341
343
343
343
343
343
343
343
344
348
351
355
359
364
367
371
376
376
378
380
383
384
386
390
391
396
401
401
402
403
405
409
413
418
422
427
432
434
437
442
447
452
457
462
465
470
475
479
481
483
488
492
496
501
502
507
512
515
519
522
526
529
532
537
538
543
548
549
549
551
551
551
555
556
558
559
562
565
572
578
582
594
594
597
608
618
626
626
631
634
643
656
656
665
677
691
705
715
727
742
754
769
784
799
814
829
841
844
854
867
881
889
907
919
944
974
993
1024
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1047
1048
1048
1048
1048
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1049
1050
1051
1051
1052
1052
1053
1054
1055
1055
1055
1055
1055
1055
1055
1055
1055
1055
1055
1055
1055
1055
1055
1055
1055
1055
1056
1056
1056
1056
1056
1057
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1058
1059
1060
1061
1061
1061
1061
1061
1061
1061
1061
1061
1061
1061
1062
1062
1063
1063
1063
1064
1064
1064
1065
1065
1065
1065
1065
1066
1066
1066
1066
1066
1066
1067
1068
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1083
1083
1084
1085
1086
1087
1088
1089
1090
1090
1091
1091
1091
1092
1092
1092
1092
1092
1092
1092
1093
1093
1093
1093
1093
1094
1095
1096
1097
1097
1097
1097
1098
1099
1100
1100
1100
1100
1100
1100
1100
1100
1100
1100
1100
1100
1100
1100
1100
1100
1100
1101
1102
1103
1104
1105
1106
1106
1107
1107
1107
1108
1109
1110
1111
1112
1113
1113
1114
1115
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1133
1133
1133
1133
1134
1135
1135
1135
1135
1135
1136
1136
1137
1137
1138
1139
1139
1140
1141
1142
1142
1142
1143
1144
1145
1146
1147
1148
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1168
1169
1170
1171
1172
1173
1174
1174
1174
1175
1176
1177
1178
1178
1179
1180
1181
1182
1183
1184
1184
1185
1185
1186
1187
1187
1187
1187
1187
1187
1188
1188
1188
1188
1189
1190
1190
1191
1192
1193
1194
1195
1196
1196
1197
1198
1199
1200
1201
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1202
1203
1204
1204
1204
1205
1206
1206
1206
1209
1209
1209
1209
1209
1209
1209
1211
1215
1215
1216
1216
1220
1224
1224
1228
1228
1231
1235
1235
1239
1243
1243
1247
1250
1254
1259
1264
1269
1269
1269
1273
1273
1275
1276
1278
1280
1282
1283
1283
1283
1283
1286
1291
1291
1294
1298
1303
1308
1312
1317
1322
1327
1332
1336
1341
1346
1351
1356
1357
1361
1366
1371
1374
1377
1378
1378
1380
1382
1387
1392
1397
1402
1404
1409
1414
1416
1421
1425
1430
1435
1440
1445
1448
1453
1458
1463
1466
1466
1466
1466
1466
1466
1471
1476
1476
1476
1476
1479
1481
1481
1481
1484
1484
1484
1484
1489
1489
1494
1494
1494
1497
1509
1523
1538
1551
1566
1581
1593
1605
1616
1628
1639
1654
1668
1683
1698
1713
1728
1740
1754
1754
1754
1754
1754
1754
1754
1754
1754
1754
1754
1754
1754
1754
1754
1755
1756
1756
1756
1756
1756
1757
1757
1757
1757
1757
1757
1757
1757
1758
1759
1759
1759
1760
1761
1762
1762
1762
1763
1764
1764
1764
1764
1765
1765
1766
1766
1766
1766
1766
1767
1768
1768
1768
1768
1768
1769
1769
1770
1770
1770
1771
1771
1772
1772
1772
1772
1772
1772
1772
1772
1772
1772
1772
1772
1772
1772
1772
1773
1774
1775
1775
1775
1776
1777
1777
1777
1777
1778
1779
1779
1779
1779
1780
1781
1781
1781
1781
1781
1781
1782
1783
1784
1784
1784
1784
1785
1786
1786
1786
1786
1786
1786
1786
1787
1787
1788
1788
1788
1789
1789
1789
1789
1789
1789
1789
1789
1789
1790
1791
1792
1792
1792
1792
1793
1794
1794
1794
1795
1795
1795
1796
1796
1796
1797
1797
1797
1798
1798
1802
1802
1806
1810
1810
1814
1819
1823
1827
1831
1836
1841
1846
1846
1851
1856
1861
1866
1871
1876
1877
1878
1879
1880
1881
1882
1883
