advent-of-code

advent of code attempts
git clone git://bvnf.space/advent-of-code.git
Log | Files | Refs

data (9691B)


      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
     39
     40
     41
     42
     43
     44
     45
     46
     47
     48
     49
     50
     51
     52
     53
     54
     55
     56
     57
     58
     59
     60
     61
     62
     63
     64
     65
     66
     67
     68
     69
     70
     71
     72
     73
     74
     75
     76
     77
     78
     79
     80
     81
     82
     83
     84
     85
     86
     87
     88
     89
     90
     91
     92
     93
     94
     95
     96
     97
     98
     99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
    285
    286
    287
    288
    289
    290
    291
    292
    293
    294
    295
    296
    297
    298
    299
    300
    301
    302
    303
    304
    305
    306
    307
    308
    309
    310
    311
    312
    313
    314
    315
    316
    317
    318
    319
    320
    321
    322
    323
    324
    325
    326
    327
    328
    329
    330
    331
    332
    333
    334
    335
    336
    337
    338
    339
    340
    341
    342
    343
    344
    345
    346
    347
    348
    349
    350
    351
    352
    353
    354
    355
    356
    357
    358
    359
    360
    361
    362
    363
    364
    365
    366
    367
    368
    369
    370
    371
    372
    373
    374
    375
    376
    377
    378
    379
    380
    381
    382
    383
    384
    385
    386
    387
    388
    389
    390
    391
    392
    393
    394
    395
    396
    397
    398
    399
    400
    401
    402
    403
    404
    405
    406
    407
    408
    409
    410
    411
    412
    413
    414
    415
    416
    417
    418
    419
    420
    421
    422
    423
    424
    425
    426
    427
    428
    429
    430
    431
    432
    433
    434
    435
    436
    437
    438
    439
    440
    441
    442
    443
    444
    445
    446
    447
    448
    449
    450
    451
    452
    453
    454
    455
    456
    457
    458
    459
    460
    461
    462
    463
    464
    465
    466
    467
    468
    469
    470
    471
    472
    473
    474
    475
    476
    477
    478
    479
    480
    481
    482
    483
    484
    485
    486
    487
    488
    489
    490
    491
    492
    493
    494
    495
    496
    497
    498
    499
    500
    501
    502
    503
    504
    505
    506
    507
    508
    509
    510
    511
    512
    513
    514
    515
    516
    517
    518
    519
    520
    521
    522
    523
    524
    525
    526
    527
    528
    529
    530
    531
    532
    533
    534
    535
    536
    537
    538
    539
    540
    541
    542
    543
    544
    545
    546
    547
    548
    549
    550
    551
    552
    553
    554
    555
    556
    557
    558
    559
    560
    561
    562
    563
    564
    565
    566
    567
    568
    569
    570
    571
    572
    573
    574
    575
    576
    577
    578
    579
    580
    581
    582
    583
    584
    585
    586
    587
    588
    589
    590
    591
    592
    593
    594
    595
    596
    597
    598
    599
    600
    601
    602
    603
    604
    605
    606
    607
    608
    609
    610
    611
    612
    613
    614
    615
    616
    617
    618
    619
    620
    621
    622
    623
    624
    625
    626
    627
    628
    629
    630
    631
    632
    633
    634
    635
    636
    637
    638
    639
    640
    641
    642
    643
    644
    645
    646
    647
    648
    649
    650
    651
    652
    653
    654
    655
    656
    657
    658
    659
    660
    661
    662
    663
    664
    665
    666
    667
    668
    669
    670
    671
    672
    673
    674
    675
    676
    677
    678
    679
    680
    681
    682
    683
    684
    685
    686
    687
    688
    689
    690
    691
    692
    693
    694
    695
    696
    697
    698
    699
    700
    701
    702
    703
    704
    705
    706
    707
    708
    709
    710
    711
    712
    713
    714
    715
    716
    717
    718
    719
    720
    721
    722
    723
    724
    725
    726
    727
    728
    729
    730
    731
    732
    733
    734
    735
    736
    737
    738
    739
    740
    741
    742
    743
    744
    745
    746
    747
    748
    749
    750
    751
    752
    753
    754
    755
    756
    757
    758
    759
    760
    761
    762
    763
    764
    765
    766
    767
    768
    769
    770
    771
    772
    773
    774
    775
    776
    777
    778
    779
    780
    781
    782
    783
    784
    785
    786
    787
    788
    789
    790
    791
    792
    793
    794
    795
    796
    797
    798
    799
    800
    801
    802
    803
    804
    805
    806
    807
    808
    809
    810
    811
    812
    813
    814
    815
    816
    817
    818
    819
    820
    821
    822
    823
    824
    825
    826
    827
    828
    829
    830
    831
    832
    833
    834
    835
    836
    837
    838
    839
    840
    841
    842
    843
    844
    845
    846
    847
    848
    849
    850
    851
    852
    853
    854
    855
    856
    857
    858
    859
    860
    861
    862
    863
    864
    865
    866
    867
    868
    869
    870
    871
    872
    873
    874
    875
    876
    877
    878
    879
    880
    881
    882
    883
    884
    885
    886
    887
    888
    889
    890
    891
    892
    893
    894
    895
    896
    897
    898
    899
    900
    901
    902
    903
    904
    905
    906
    907
    908
    909
    910
    911
    912
    913
    914
    915
    916
    917
    918
    919
    920
    921
    922
    923
    924
    925
    926
    927
    928
    929
    930
    931
    932
    933
    934
    935
    936
    937
    938
    939
    940
    941
    942
    943
    944
    945
    946
    947
    948
    949
    950
    951
    952
    953
    954
    955
    956
    957
    958
    959
    960
    961
    962
    963
    964
    965
    966
    967
    968
    969
    970
    971
    972
    973
    974
    975
    976
    977
    978
    979
    980
    981
    982
    983
    984
    985
    986
    987
    988
    989
    990
    991
    992
    993
    994
    995
    996
    997
    998
    999
   1000
   1001
   1002
   1003
   1004
   1005
   1006
   1007
   1008
   1009
   1010
   1011
   1012
   1013
   1014
   1015
   1016
   1017
   1018
   1019
   1020
   1021
   1022
   1023
   1024
   1025
   1026
   1027
   1028
   1029
   1030
   1031
   1032
   1033
   1034
   1035
   1036
   1037
   1038
   1039
   1040
   1041
   1042
   1043
   1044
   1045
   1046
   1047
   1048
   1049
   1050
   1051
   1052
   1053
   1054
   1055
   1056
   1057
   1058
   1059
   1060
   1061
   1062
   1063
   1064
   1065
   1066
   1067
   1068
   1069
   1070
   1071
   1072
   1073
   1074
   1075
   1076
   1077
   1078
   1079
   1080
   1081
   1082
   1083
   1084
   1085
   1086
   1087
   1088
   1089
   1090
   1091
   1092
   1093
   1094
   1095
   1096
   1097
   1098
   1099
   1100
   1101
   1102
   1103
   1104
   1105
   1106
   1107
   1108
   1109
   1110
   1111
   1112
   1113
   1114
   1115
   1116
   1117
   1118
   1119
   1120
   1121
   1122
   1123
   1124
   1125
   1126
   1127
   1128
   1129
   1130
   1131
   1132
   1133
   1134
   1135
   1136
   1137
   1138
   1139
   1140
   1141
   1142
   1143
   1144
   1145
   1146
   1147
   1148
   1149
   1150
   1151
   1152
   1153
   1154
   1155
   1156
   1157
   1158
   1159
   1160
   1161
   1162
   1163
   1164
   1165
   1166
   1167
   1168
   1169
   1170
   1171
   1172
   1173
   1174
   1175
   1176
   1177
   1178
   1179
   1180
   1181
   1182
   1183
   1184
   1185
   1186
   1187
   1188
   1189
   1190
   1191
   1192
   1193
   1194
   1195
   1196
   1197
   1198
   1199
   1200
   1201
   1202
   1203
   1204
   1205
   1206
   1207
   1208
   1209
   1210
   1211
   1212
   1213
   1214
   1215
   1216
   1217
   1218
   1219
   1220
   1221
   1222
   1223
   1224
   1225
   1226
   1227
   1228
   1229
   1230
   1231
   1232
   1233
   1234
   1235
   1236
   1237
   1238
   1239
   1240
   1241
   1242
   1243
   1244
   1245
   1246
   1247
   1248
   1249
   1250
   1251
   1252
   1253
   1254
   1255
   1256
   1257
   1258
   1259
   1260
   1261
   1262
   1263
   1264
   1265
   1266
   1267
   1268
   1269
   1270
   1271
   1272
   1273
   1274
   1275
   1276
   1277
   1278
   1279
   1280
   1281
   1282
   1283
   1284
   1285
   1286
   1287
   1288
   1289
   1290
   1291
   1292
   1293
   1294
   1295
   1296
   1297
   1298
   1299
   1300
   1301
   1302
   1303
   1304
   1305
   1306
   1307
   1308
   1309
   1310
   1311
   1312
   1313
   1314
   1315
   1316
   1317
   1318
   1319
   1320
   1321
   1322
   1323
   1324
   1325
   1326
   1327
   1328
   1329
   1330
   1331
   1332
   1333
   1334
   1335
   1336
   1337
   1338
   1339
   1340
   1341
   1342
   1343
   1344
   1345
   1346
   1347
   1348
   1349
   1350
   1351
   1352
   1353
   1354
   1355
   1356
   1357
   1358
   1359
   1360
   1361
   1362
   1363
   1364
   1365
   1366
   1367
   1368
   1369
   1370
   1371
   1372
   1373
   1374
   1375
   1376
   1377
   1378
   1379
   1380
   1381
   1382
   1383
   1384
   1385
   1386
   1387
   1388
   1389
   1390
   1391
   1392
   1393
   1394
   1395
   1396
   1397
   1398
   1399
   1400
   1401
   1402
   1403
   1404
   1405
   1406
   1407
   1408
   1409
   1410
   1411
   1412
   1413
   1414
   1415
   1416
   1417
   1418
   1419
   1420
   1421
   1422
   1423
   1424
   1425
   1426
   1427
   1428
   1429
   1430
   1431
   1432
   1433
   1434
   1435
   1436
   1437
   1438
   1439
   1440
   1441
   1442
   1443
   1444
   1445
   1446
   1447
   1448
   1449
   1450
   1451
   1452
   1453
   1454
   1455
   1456
   1457
   1458
   1459
   1460
   1461
   1462
   1463
   1464
   1465
   1466
   1467
   1468
   1469
   1470
   1471
   1472
   1473
   1474
   1475
   1476
   1477
   1478
   1479
   1480
   1481
   1482
   1483
   1484
   1485
   1486
   1487
   1488
   1489
   1490
   1491
   1492
   1493
   1494
   1495
   1496
   1497
   1498
   1499
   1500
   1501
   1502
   1503
   1504
   1505
   1506
   1507
   1508
   1509
   1510
   1511
   1512
   1513
   1514
   1515
   1516
   1517
   1518
   1519
   1520
   1521
   1522
   1523
   1524
   1525
   1526
   1527
   1528
   1529
   1530
   1531
   1532
   1533
   1534
   1535
   1536
   1537
   1538
   1539
   1540
   1541
   1542
   1543
   1544
   1545
   1546
   1547
   1548
   1549
   1550
   1551
   1552
   1553
   1554
   1555
   1556
   1557
   1558
   1559
   1560
   1561
   1562
   1563
   1564
   1565
   1566
   1567
   1568
   1569
   1570
   1571
   1572
   1573
   1574
   1575
   1576
   1577
   1578
   1579
   1580
   1581
   1582
   1583
   1584
   1585
   1586
   1587
   1588
   1589
   1590
   1591
   1592
   1593
   1594
   1595
   1596
   1597
   1598
   1599
   1600
   1601
   1602
   1603
   1604
   1605
   1606
   1607
   1608
   1609
   1610
   1611
   1612
   1613
   1614
   1615
   1616
   1617
   1618
   1619
   1620
   1621
   1622
   1623
   1624
   1625
   1626
   1627
   1628
   1629
   1630
   1631
   1632
   1633
   1634
   1635
   1636
   1637
   1638
   1639
   1640
   1641
   1642
   1643
   1644
   1645
   1646
   1647
   1648
   1649
   1650
   1651
   1652
   1653
   1654
   1655
   1656
   1657
   1658
   1659
   1660
   1661
   1662
   1663
   1664
   1665
   1666
   1667
   1668
   1669
   1670
   1671
   1672
   1673
   1674
   1675
   1676
   1677
   1678
   1679
   1680
   1681
   1682
   1683
   1684
   1685
   1686
   1687
   1688
   1689
   1690
   1691
   1692
   1693
   1694
   1695
   1696
   1697
   1698
   1699
   1700
   1701
   1702
   1703
   1704
   1705
   1706
   1707
   1708
   1709
   1710
   1711
   1712
   1713
   1714
   1715
   1716
   1717
   1718
   1719
   1720
   1721
   1722
   1723
   1724
   1725
   1726
   1727
   1728
   1729
   1730
   1731
   1732
   1733
   1734
   1735
   1736
   1737
   1738
   1739
   1740
   1741
   1742
   1743
   1744
   1745
   1746
   1747
   1748
   1749
   1750
   1751
   1752
   1753
   1754
   1755
   1756
   1757
   1758
   1759
   1760
   1761
   1762
   1763
   1764
   1765
   1766
   1767
   1768
   1769
   1770
   1771
   1772
   1773
   1774
   1775
   1776
   1777
   1778
   1779
   1780
   1781
   1782
   1783
   1784
   1785
   1786
   1787
   1788
   1789
   1790
   1791
   1792
   1793
   1794
   1795
   1796
   1797
   1798
   1799
   1800
   1801
   1802
   1803
   1804
   1805
   1806
   1807
   1808
   1809
   1810
   1811
   1812
   1813
   1814
   1815
   1816
   1817
   1818
   1819
   1820
   1821
   1822
   1823
   1824
   1825
   1826
   1827
   1828
   1829
   1830
   1831
   1832
   1833
   1834
   1835
   1836
   1837
   1838
   1839
   1840
   1841
   1842
   1843
   1844
   1845
   1846
   1847
   1848
   1849
   1850
   1851
   1852
   1853
   1854
   1855
   1856
   1857
   1858
   1859
   1860
   1861
   1862
   1863
   1864
   1865
   1866
   1867
   1868
   1869
   1870
   1871
   1872
   1873
   1874
   1875
   1876
   1877
   1878
   1879
   1880
   1881
   1882
   1883
   1884
   1885
   1886
   1887
   1888
   1889
   1890
   1891
   1892
   1893
   1894
   1895
   1896
   1897
   1898
   1899
   1900
   1901
   1902
   1903
   1904
   1905
   1906
   1907
   1908
   1909
   1910
   1911
   1912
   1913
   1914
   1915
   1916
   1917
   1918
   1919
   1920
   1921
   1922
   1923
   1924
   1925
   1926
   1927
   1928
   1929
   1930
   1931
   1932
   1933
   1934
   1935
   1936
   1937
   1938
   1939
   1940
   1941
   1942
   1943
   1944
   1945
   1946
   1947
   1948
   1949
   1950
   1951
   1952
   1953
   1954
   1955
   1956
   1957
   1958
   1959
   1960
   1961
   1962
   1963
   1964
   1965
   1966
   1967
   1968
   1969
   1970
   1971
   1972
   1973
   1974
   1975
   1976
   1977
   1978
   1979
   1980
   1981
   1982
   1983
   1984
   1985
   1986
   1987
   1988
   1989
   1990
   1991
   1992
   1993
   1994
   1995
   1996
   1997
   1998
   1999
   2000
119
121
129
128
130
134
138
143
113
114
129
103
90
98
91
96
101
90
73
66
74
82
80
91
92
93
96
101
102
115
122
114
119
120
108
104
109
135
123
133
134
133
138
144
151
158
159
162
166
146
137
124
153
150
153
162
169
167
169
168
162
165
138
112
111
121
122
123
130
127
135
138
136
138
141
139
144
169
174
180
183
207
210
227
224
235
239
228
232
231
238
250
260
262
264
267
276
277
283
284
285
283
280
260
259
261
260
263
270
275
278
281
282
287
286
285
286
290
298
299
291
294
295
305
310
313
287
271
272
274
276
275
290
307
305
307
312
314
313
315
323
319
332
333
334
335
352
353
358
359
362
352
377
374
383
391
395
397
391
399
400
402
406
413
414
417
412
421
422
420
421
418
383
387
388
395
397
398
401
403
415
416
419
447
449
451
467
468
479
484
487
494
519
546
566
570
582
586
587
611
613
647
641
640
663
670
671
681
682
683
685
688
664
676
677
678
702
703
724
734
739
742
768
771
774
784
792
787
764
773
783
790
787
788
798
797
796
802
810
837
839
840
841
842
845
852
853
856
855
858
862
868
869
868
852
851
852
856
857
869
883
884
886
893
896
904
905
939
938
945
953
962
957
956
959
961
962
963
954
960
961
965
966
967
958
959
957
960
967
968
971
972
983
994
991
1007
1022
1034
1043
1038
1039
1028
1034
1036
1037
1039
1049
1028
1049
1050
1052
1053
1054
1059
1060
1066
1078
1075
1083
1084
1077
1075
1105
1108
1111
1113
1114
1127
1124
1127
1131
1138
1128
1123
1109
1108
1112
1116
1117
1139
1145
1152
1133
1134
1133
1147
1148
1143
1142
1157
1163
1164
1160
1162
1167
1152
1157
1180
1182
1187
1188
1190
1201
1196
1199
1192
1203
1207
1212
1213
1230
1231
1233
1237
1239
1245
1241
1239
1246
1249
1247
1251
1271
1269
1273
1281
1282
1286
1287
1288
1290
1292
1294
1291
1289
1298
1300
1301
1289
1286
1284
1288
1290
1293
1297
1299
1294
1298
1301
1288
1294
1305
1291
1312
1310
1309
1310
1307
1309
1310
1312
1313
1317
1316
1301
1304
1337
1342
1341
1346
1347
1352
1353
1340
1345
1362
1354
1364
1367
1370
1366
1368
1369
1370
1371
1372
1368
1380
1384
1386
1406
1407
1413
1414
1417
1418
1396
1395
1401
1398
1408
1415
1403
1402
1394
1380
1388
1391
1398
1396
1399
1397
1402
1410
1436
1438
1443
1449
1450
1470
1451
1448
1439
1440
1437
1439
1445
1447
1448
1449
1456
1460
1466
1495
1497
1506
1530
1519
1521
1523
1522
1509
1526
1537
1539
1540
1542
1540
1538
1543
1546
1522
1523
1540
1536
1548
1550
1554
1559
1575
1576
1556
1567
1566
1583
1575
1579
1578
1561
1564
1562
1560
1577
1591
1592
1612
1603
1607
1600
1613
1620
1621
1620
1625
1624
1623
1642
1647
1651
1655
1657
1662
1669
1692
1683
1690
1684
1686
1689
1683
1711
1709
1712
1714
1715
1710
1711
1702
1703
1719
1720
1722
1734
1748
1749
1752
1754
1760
1758
1760
1763
1780
1788
1791
1802
1795
1793
1795
1798
1801
1788
1815
1816
1825
1850
1858
1859
1858
1859
1860
1862
1864
1868
1865
1866
1867
1869
1876
1875
1872
1877
1897
1911
1909
1912
1911
1913
1914
1915
1913
1910
1912
1903
1906
1909
1912
1915
1914
1921
1940
1938
1940
1941
1954
1955
1959
1980
1999
2000
2007
2014
2038
2036
2042
2045
2053
2065
2066
2087
2079
2099
2091
2092
2095
2094
2096
2108
2113
2126
2148
2164
2168
2173
2177
2185
2189
2181
2182
2172
2171
2170
2177
2178
2180
2193
2194
2200
2181
2169
2178
2179
2193
2195
2198
2222
2225
2214
2213
2214
2196
2224
2240
2245
2244
2273
2274
2276
2277
2266
2261
2262
2259
2262
2263
2271
2272
2273
2277
2276
2256
2255
2251
2253
2240
2246
2256
2257
2298
2299
2294
2295
2300
2299
2312
2308
2318
2320
2324
2321
2336
2352
2351
2358
2360
2337
2343
2356
2354
2344
2340
2348
2343
2349
2350
2362
2363
2381
2380
2382
2383
2385
2395
2372
2368
2363
2362
2363
2364
2372
2391
2382
2360
2362
2363
2389
2393
2401
2400
2410
2404
2403
2402
2416
2424
2420
2415
2440
2454
2457
2456
2446
2448
2453
2460
2463
2472
2473
2474
2475
2474
2471
2472
2481
2503
2475
2477
2485
2491
2506
2507
2504
2506
2518
2508
2507
2521
2524
2511
2533
2545
2555
2563
2564
2567
2558
2561
2588
2568
2566
2575
2590
2588
2589
2598
2590
2601
2607
2606
2616
2624
2615
2621
2628
2627
2634
2650
2667
2671
2686
2687
2692
2712
2716
2717
2715
2717
2718
2720
2721
2738
2733
2730
2734
2742
2747
2748
2755
2767
2761
2778
2772
2773
2780
2783
2784
2779
2790
2782
2787
2786
2793
2797
2806
2807
2809
2808
2809
2810
2811
2807
2808
2804
2815
2848
2850
2867
2849
2872
2873
2874
2883
2885
2894
2895
2914
2917
2910
2895
2896
2899
2877
2883
2880
2890
2918
2921
2923
2928
2926
2925
2932
2919
2921
2928
2929
2935
2936
2918
2921
2935
2937
2946
2948
2936
2934
2949
2944
2940
2941
2945
2985
2986
2987
2990
3001
3008
3010
3021
3023
3022
3025
3029
3030
3033
3012
3020
3008
3011
3006
2999
2998
3007
3008
3009
3010
3012
3018
3025
3050
3049
3063
3068
3064
3070
3071
3069
3076
3082
3095
3103
3105
3107
3108
3113
3110
3111
3102
3103
3107
3140
3164
3162
3163
3166
3168
3164
3163
3173
3190
3195
3196
3202
3204
3218
3228
3227
3247
3249
3251
3260
3247
3258
3265
3266
3290
3306
3298
3301
3302
3303
3289
3302
3298
3299
3302
3300
3289
3288
3285
3286
3320
3329
3338
3328
3324
3334
3329
3333
3334
3336
3338
3341
3324
3331
3329
3330
3347
3373
3380
3383
3382
3385
3372
3379
3369
3370
3381
3390
3391
3392
3393
3402
3414
3435
3459
3454
3456
3453
3460
3472
3473
3472
3473
3482
3483
3486
3495
3521
3534
3535
3536
3539
3573
3568
3575
3571
3573
3588
3575
3576
3578
3579
3577
3582
3603
3606
3607
3609
3622
3629
3648
3656
3655
3658
3657
3644
3643
3610
3605
3606
3607
3609
3607
3580
3571
3570
3573
3580
3581
3563
3566
3575
3567
3566
3568
3570
3572
3590
3584
3578
3572
3571
3576
3571
3578
3545
3534
3543
3549
3551
3556
3557
3571
3576
3565
3563
3562
3568
3569
3571
3572
3573
3574
3576
3577
3584
3564
3577
3583
3584
3593
3599
3610
3613
3622
3635
3639
3646
3643
3606
3599
3602
3604
3617
3618
3626
3647
3635
3655
3657
3658
3657
3656
3655
3648
3650
3651
3655
3659
3661
3671
3665
3668
3674
3671
3667
3668
3665
3667
3665
3667
3669
3668
3677
3683
3684
3689
3709
3717
3711
3710
3713
3721
3736
3734
3736
3740
3746
3754
3753
3754
3768
3796
3780
3762
3765
3767
3773
3800
3806
3823
3827
3828
3841
3848
3850
3853
3855
3845
3847
3854
3864
3849
3857
3841
3850
3851
3856
3854
3861
3858
3861
3871
3878
3887
3881
3882
3883
3885
3882
3885
3900
3905
3903
3906
3910
3940
3925
3926
3950
3951
3952
3954
3965
3962
3963
3957
3944
3953
3957
3964
3965
3973
3983
3989
3991
4010
4009
3997
3999
4006
4008
4009
4010
4006
4018
4020
4028
4003
4004
4013
4018
4024
4037
4039
4036
4041
4040
4036
4038
4039
4040
4044
4045
4075
4092
4088
4086
4083
4086
4087
4096
4088
4089
4080
4085
4088
4087
4090
4088
4094
4107
4106
4107
4115
4121
4136
4153
4161
4163
4170
4173
4169
4172
4174
4180
4166
4183
4188
4198
4207
4220
4221
4225
4242
4224
4228
4226
4227
4225
4233
4242
4252
4249
4250
4215
4216
4217
4236
4245
4246
4248
4249
4250
4251
4254
4252
4254
4257
4268
4272
4273
4278
4282
4290
4298
4303
4307
4285
4286
4290
4289
4283
4285
4286
4313
4322
4327
4329
4330
4333
4335
4334
4309
4314
4316
4320
4335
4339
4348
4347
4362
4358
4361
4350
4349
4356
4358
4359
4370
4383
4387
4378
4383
4380
4379
4395
4387
4394
4381
4385
4386
4390
4389
4394
4396
4410
4412
4407
4408
4416
4417
4421
4428
4423
4420
4422
4421
4425
4426
4423
4437
4438
4440
4441
4446
4451
4456
4451
4455
4470
4493
4494
4486
4489
4500
4501
4485
4496
4499
4505
4507
4500
4516
4518
4535
4532
4544
4541
4562
4564
4550
4551
4553
4584
4588
4598
4599
4608
4623
4621
4628
4650
4655
4657
4658
4653
4658
4670
4685
4686
4714
4708
4709
4710
4718
4720
4719
4738
4730
4719
4722
4736
4737
4739
4750
4751
4754
4755
4758
4759
4764
4767
4774
4770
4768
4773
4760
4763
4762
4764
4765
4767
4778
4777
4795
4792
4793
4796
4797
4800
4779
4782
4794
4795
4785
4786
4788
4789
4798
4800
4802
4803
4814
4831
4830
4849
4852
4854
4860
4861
4860
4862
4860
4834
4835
4858
4859
4863
4864
4873
4874
4875
4880
4881
4882
4902
4899
4900
4904
4903
4900
4916
4917
4921
4924
4910
4917
4918
4919
4920
4910
4913
4932
4941
4959
4976
4978
5000
4999
4982
4973
4977
5002
5000
5001
5000
5003
5004
5005
5015
5004
4994
4992
4982
4991
4993
4996
4994
5000
5004
5013
5038
5054
5062
5051
5054
5044
5020
5008
5030
5033
5007
5004
5005
5012
5022
5032
5035
5040
5042
5059
5058
5088
5096
5099
5107
5126
5137
5134
5148
5151
5150
5152
5158
5163
5167
5166
5150
5149
5132
5136
5149
5150
5157
5145
5165
5163
5171
5168
5177
5174
5142
5145
5160
5180
5202
5222
5226
5239
5240
5261
5262
5263
5274
5276
5277
5285
5286
5284
5296
5324
5303
5313
5314
5324
5339
5340
5343
5344
5343
5344
5356
5345
5344
5345
5343
5350
5353
5355
5358
5359
5363
5364
5368
5370
5397
5398
5393
5394
5395
5401
5408
5417
5418
5419
5422
5424
5430
5433
5435
5439
5447
5449
5448
5466
5457
5461
5473
5477
5478
5480
5481
5480
5498
5511
5536
5543
5544
5556
5557
5594
5601
5582
5583
5584
5593
5611
5614
5613
5626
5624
5614
5610
5611
5605
5608
5609
5611
5632
5637
5639
5667
5682
5685
5686
5687
5688
5690
5670
5673
5674
5680
5673
5674
5694
5704
5698
5702
5703
5696
5697
5695
5728
5733
5735
5739
5727
5728
5732
5733
5732
5741
5754
5755
5757
5733
5734
5735
5737
5738
5750
5773
5775
5787
5800
5818
5819
5820
5826
5830
5831
5833
5841
5832
5835
5839
5840
5835
5836
5841
5838
5841
5837
5843
5842
5837
5843
5845
5846
5884
5888
5891
5893
5924
5934
5939
5940
5907
5888
5889
5892
5893
5884
5898
5900
5901
5884
5893
5894
5895
5909
5911
5915
5918
5922
5931
5935
5939
5934
5944
5943
5965
5967
5970
5971
5941
5942
5943
5942
5943
5946
5945
5923
5918
5921
5931
5940
5915
5931
5930
5937
5909
5908
5911
5909
5912
5911
5912
5910
5921
5929
5931
5929
5925
5907
5909
5910
5913
5910
5908
5921
5927
5943
5941
5971
5972
5977
5979
5984
6002
6007
6009
6010
6011
6026
6034
6027
6026
6035
6033
6032
6033
6034
6040
6042
6045
6044
6052
6053
6043
6036
6024
6026
6033
6034
6037
6040
6048
6069
6072
6076
6074
6081
6080
6078
6089
6092
6090
6091
6096
6107
6109
6108
6113
6138
6120
6122
6112
6122
6119
6129
6123
6124
6135
6136
6157
6159
6161
6162
6161
6179
6180
6187
6188
6189
6193
6196
6195
6192
6195
6197
6196
6197
6199
6200
6198
6214
6216
6217
6218
6217
6236
6239
6209
6214
6208
6210
6212
6217