Guest User

Untitled

a guest
Dec 16th, 2017
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 36.15 KB | None | 0 0
  1. INPUT = """0 <-> 454, 528, 621, 1023, 1199
  2. 1 <-> 1335, 1563, 1627, 1679
  3. 2 <-> 353, 689
  4. 3 <-> 3, 1171
  5. 4 <-> 1247
  6. 5 <-> 758, 928, 1260
  7. 6 <-> 1010
  8. 7 <-> 570
  9. 8 <-> 710, 1610
  10. 9 <-> 9
  11. 10 <-> 10, 1822
  12. 11 <-> 473
  13. 12 <-> 255, 1355, 1999
  14. 13 <-> 13, 1026
  15. 14 <-> 113
  16. 15 <-> 1954
  17. 16 <-> 679, 918
  18. 17 <-> 1101, 1637
  19. 18 <-> 574, 1037
  20. 19 <-> 481
  21. 20 <-> 22, 815, 963, 1031
  22. 21 <-> 1427
  23. 22 <-> 20, 316, 802
  24. 23 <-> 1328, 1447, 1708
  25. 24 <-> 446, 1677
  26. 25 <-> 25, 217
  27. 26 <-> 184, 1138
  28. 27 <-> 142
  29. 28 <-> 1340
  30. 29 <-> 954, 1174
  31. 30 <-> 1185
  32. 31 <-> 112, 1111
  33. 32 <-> 1851
  34. 33 <-> 662
  35. 34 <-> 848
  36. 35 <-> 315, 1983
  37. 36 <-> 239
  38. 37 <-> 422, 871, 1903
  39. 38 <-> 1450, 1497
  40. 39 <-> 923, 1652
  41. 40 <-> 201, 434
  42. 41 <-> 1878
  43. 42 <-> 192, 1233
  44. 43 <-> 1457
  45. 44 <-> 499, 961
  46. 45 <-> 1056
  47. 46 <-> 302
  48. 47 <-> 100, 1921
  49. 48 <-> 1532
  50. 49 <-> 728, 1028, 1201, 1301
  51. 50 <-> 1662
  52. 51 <-> 1186, 1773
  53. 52 <-> 228, 1168, 1873
  54. 53 <-> 413, 1111
  55. 54 <-> 956
  56. 55 <-> 477
  57. 56 <-> 98
  58. 57 <-> 1849, 1960
  59. 58 <-> 440
  60. 59 <-> 1115, 1389
  61. 60 <-> 358, 499, 1392, 1582
  62. 61 <-> 1704
  63. 62 <-> 425
  64. 63 <-> 1562, 1593
  65. 64 <-> 916
  66. 65 <-> 1842, 1951
  67. 66 <-> 1991
  68. 67 <-> 1026
  69. 68 <-> 711
  70. 69 <-> 854
  71. 70 <-> 114, 1591
  72. 71 <-> 1423
  73. 72 <-> 1403
  74. 73 <-> 170
  75. 74 <-> 508, 831
  76. 75 <-> 231, 1070, 1384, 1615
  77. 76 <-> 751
  78. 77 <-> 1190, 1421
  79. 78 <-> 78, 1593
  80. 79 <-> 221, 742, 1165
  81. 80 <-> 1517
  82. 81 <-> 1154
  83. 82 <-> 310, 1027, 1358
  84. 83 <-> 83, 1554
  85. 84 <-> 743, 1208
  86. 85 <-> 504, 1723
  87. 86 <-> 1630
  88. 87 <-> 919
  89. 88 <-> 794
  90. 89 <-> 1334
  91. 90 <-> 1997
  92. 91 <-> 494
  93. 92 <-> 1210
  94. 93 <-> 1619
  95. 94 <-> 324, 1183, 1876
  96. 95 <-> 300
  97. 96 <-> 127, 1849
  98. 97 <-> 733
  99. 98 <-> 56, 534
  100. 99 <-> 1028
  101. 100 <-> 47, 402
  102. 101 <-> 1053
  103. 102 <-> 201, 498, 1016
  104. 103 <-> 103, 1412
  105. 104 <-> 105
  106. 105 <-> 104, 608, 681
  107. 106 <-> 106, 1605
  108. 107 <-> 468, 1798
  109. 108 <-> 1810
  110. 109 <-> 789, 1300
  111. 110 <-> 348, 550
  112. 111 <-> 111
  113. 112 <-> 31
  114. 113 <-> 14, 136
  115. 114 <-> 70, 132, 183, 847
  116. 115 <-> 1086, 1409
  117. 116 <-> 1220
  118. 117 <-> 1047, 1886
  119. 118 <-> 729
  120. 119 <-> 119
  121. 120 <-> 198
  122. 121 <-> 1020, 1547
  123. 122 <-> 891, 1241
  124. 123 <-> 842, 866
  125. 124 <-> 124, 1676
  126. 125 <-> 1959
  127. 126 <-> 895
  128. 127 <-> 96
  129. 128 <-> 664, 1170
  130. 129 <-> 392, 1222
  131. 130 <-> 1483, 1744
  132. 131 <-> 1696
  133. 132 <-> 114
  134. 133 <-> 192
  135. 134 <-> 134
  136. 135 <-> 1696
  137. 136 <-> 113, 803, 1064
  138. 137 <-> 1738
  139. 138 <-> 1486
  140. 139 <-> 1811
  141. 140 <-> 663, 1355, 1832
  142. 141 <-> 226, 803
  143. 142 <-> 27, 417
  144. 143 <-> 486, 1441
  145. 144 <-> 768, 850
  146. 145 <-> 180, 669, 1935
  147. 146 <-> 1242
  148. 147 <-> 345, 1782
  149. 148 <-> 1295, 1710
  150. 149 <-> 1349
  151. 150 <-> 697
  152. 151 <-> 834
  153. 152 <-> 152, 365
  154. 153 <-> 654, 720
  155. 154 <-> 1396, 1538
  156. 155 <-> 804, 1891
  157. 156 <-> 653, 1679
  158. 157 <-> 302, 1108
  159. 158 <-> 415, 680, 1668
  160. 159 <-> 979, 1116, 1449
  161. 160 <-> 463, 1627, 1769
  162. 161 <-> 161, 232, 446, 874
  163. 162 <-> 162, 527
  164. 163 <-> 1760
  165. 164 <-> 259, 750
  166. 165 <-> 211, 945, 1022, 1069, 1071
  167. 166 <-> 293
  168. 167 <-> 178, 522
  169. 168 <-> 301, 408, 622
  170. 169 <-> 466, 1485, 1848
  171. 170 <-> 73, 1028, 1761
  172. 171 <-> 525, 755, 1219
  173. 172 <-> 313, 476, 1383
  174. 173 <-> 1629
  175. 174 <-> 1795, 1977
  176. 175 <-> 553, 1001
  177. 176 <-> 1330
  178. 177 <-> 375, 1013
  179. 178 <-> 167
  180. 179 <-> 1091, 1295
  181. 180 <-> 145, 979, 1151
  182. 181 <-> 803, 1107
  183. 182 <-> 805, 872, 1366, 1894
  184. 183 <-> 114, 685, 1252, 1508
  185. 184 <-> 26
  186. 185 <-> 402
  187. 186 <-> 1748
  188. 187 <-> 744, 971
  189. 188 <-> 504
  190. 189 <-> 814
  191. 190 <-> 948
  192. 191 <-> 506, 714
  193. 192 <-> 42, 133, 854, 1152, 1250
  194. 193 <-> 193
  195. 194 <-> 1960
  196. 195 <-> 382, 1551
  197. 196 <-> 1759
  198. 197 <-> 197
  199. 198 <-> 120, 1070
  200. 199 <-> 659, 1161
  201. 200 <-> 875, 1572, 1819
  202. 201 <-> 40, 102, 898, 1307
  203. 202 <-> 436
  204. 203 <-> 418, 771
  205. 204 <-> 1114, 1224
  206. 205 <-> 1011, 1979
  207. 206 <-> 206, 882
  208. 207 <-> 238
  209. 208 <-> 1681
  210. 209 <-> 1406
  211. 210 <-> 1376
  212. 211 <-> 165, 1153, 1916
  213. 212 <-> 677
  214. 213 <-> 915
  215. 214 <-> 1280
  216. 215 <-> 533
  217. 216 <-> 626, 731
  218. 217 <-> 25, 325
  219. 218 <-> 1338
  220. 219 <-> 596, 779
  221. 220 <-> 339
  222. 221 <-> 79, 620
  223. 222 <-> 775, 1144
  224. 223 <-> 439
  225. 224 <-> 1825
  226. 225 <-> 225
  227. 226 <-> 141, 311
  228. 227 <-> 1335
  229. 228 <-> 52, 1861
  230. 229 <-> 578, 727, 1085
  231. 230 <-> 1036
  232. 231 <-> 75, 766, 1386
  233. 232 <-> 161
  234. 233 <-> 953
  235. 234 <-> 891
  236. 235 <-> 1067
  237. 236 <-> 419
  238. 237 <-> 237
  239. 238 <-> 207, 1687
  240. 239 <-> 36, 1357
  241. 240 <-> 1602
  242. 241 <-> 241, 511, 960
  243. 242 <-> 888, 1498, 1556
  244. 243 <-> 1243, 1418, 1717
  245. 244 <-> 364, 753
  246. 245 <-> 643, 807
  247. 246 <-> 1653
  248. 247 <-> 1446, 1902
  249. 248 <-> 1164, 1743
  250. 249 <-> 645, 669
  251. 250 <-> 556
  252. 251 <-> 390, 1973
  253. 252 <-> 956
  254. 253 <-> 1149, 1574
  255. 254 <-> 560, 1454, 1826
  256. 255 <-> 12, 1214
  257. 256 <-> 314, 820, 1087
  258. 257 <-> 700, 1540, 1986
  259. 258 <-> 258
  260. 259 <-> 164
  261. 260 <-> 1274
  262. 261 <-> 1385
  263. 262 <-> 765
  264. 263 <-> 1231, 1509
  265. 264 <-> 586
  266. 265 <-> 586, 748, 1186
  267. 266 <-> 1046, 1418
  268. 267 <-> 877, 1572
  269. 268 <-> 1370, 1688, 1980
  270. 269 <-> 782, 1610
  271. 270 <-> 789, 1052, 1102
  272. 271 <-> 1787
  273. 272 <-> 1076
  274. 273 <-> 303, 1549
  275. 274 <-> 353
  276. 275 <-> 360
  277. 276 <-> 717
  278. 277 <-> 1955
  279. 278 <-> 876, 890, 1311, 1920
  280. 279 <-> 279, 515
  281. 280 <-> 292, 1067, 1345
  282. 281 <-> 1525, 1728
  283. 282 <-> 1211
  284. 283 <-> 1053
  285. 284 <-> 312, 1647
  286. 285 <-> 1534
  287. 286 <-> 1738
  288. 287 <-> 517, 1402
  289. 288 <-> 514
  290. 289 <-> 462, 915, 1401
  291. 290 <-> 700, 1428, 1834
  292. 291 <-> 1115, 1473
  293. 292 <-> 280, 1185
  294. 293 <-> 166, 564
  295. 294 <-> 320, 1906
  296. 295 <-> 850, 1276
  297. 296 <-> 1843
  298. 297 <-> 544
  299. 298 <-> 1208, 1399
  300. 299 <-> 577
  301. 300 <-> 95, 421, 794
  302. 301 <-> 168, 933
  303. 302 <-> 46, 157, 1844
  304. 303 <-> 273
  305. 304 <-> 496
  306. 305 <-> 1493
  307. 306 <-> 736, 1316, 1622
  308. 307 <-> 1495
  309. 308 <-> 1286, 1357
  310. 309 <-> 309, 1764
  311. 310 <-> 82
  312. 311 <-> 226
  313. 312 <-> 284, 514, 845, 1476
  314. 313 <-> 172, 361, 1663
  315. 314 <-> 256, 809
  316. 315 <-> 35, 1043
  317. 316 <-> 22
  318. 317 <-> 1418, 1643
  319. 318 <-> 404, 1032, 1452, 1534
  320. 319 <-> 841
  321. 320 <-> 294, 949
  322. 321 <-> 699, 925, 1274, 1700
  323. 322 <-> 458, 1124, 1549
  324. 323 <-> 323
  325. 324 <-> 94, 1425, 1655
  326. 325 <-> 217
  327. 326 <-> 843, 1994
  328. 327 <-> 327, 1556, 1952
  329. 328 <-> 405, 1081
  330. 329 <-> 329, 388
  331. 330 <-> 369, 1084, 1846
  332. 331 <-> 1700
  333. 332 <-> 1772, 1973
  334. 333 <-> 695, 1639
  335. 334 <-> 703, 932
  336. 335 <-> 335
  337. 336 <-> 668, 1005
  338. 337 <-> 702, 743
  339. 338 <-> 517
  340. 339 <-> 220, 339, 716, 773, 1132, 1924
  341. 340 <-> 362, 1841
  342. 341 <-> 885, 1034, 1325
  343. 342 <-> 360, 1446
  344. 343 <-> 343
  345. 344 <-> 1017
  346. 345 <-> 147, 1458
  347. 346 <-> 1089
  348. 347 <-> 925, 1774
  349. 348 <-> 110, 1282, 1884
  350. 349 <-> 551
  351. 350 <-> 1630
  352. 351 <-> 714
  353. 352 <-> 619, 1926
  354. 353 <-> 2, 274, 1824
  355. 354 <-> 1459, 1854
  356. 355 <-> 355
  357. 356 <-> 399, 1251, 1600
  358. 357 <-> 466, 1818, 1825
  359. 358 <-> 60, 358
  360. 359 <-> 570
  361. 360 <-> 275, 342, 1768
  362. 361 <-> 313, 361, 1303
  363. 362 <-> 340, 580, 747, 1433
  364. 363 <-> 1678
  365. 364 <-> 244, 494
  366. 365 <-> 152
  367. 366 <-> 874
  368. 367 <-> 367, 735, 1139
  369. 368 <-> 459
  370. 369 <-> 330
  371. 370 <-> 881
  372. 371 <-> 1133, 1213, 1438
  373. 372 <-> 1290, 1963
  374. 373 <-> 846, 1829
  375. 374 <-> 780, 996
  376. 375 <-> 177, 1126, 1223
  377. 376 <-> 474, 1467
  378. 377 <-> 1485, 1544
  379. 378 <-> 1105, 1815, 1895
  380. 379 <-> 507, 1936
  381. 380 <-> 529, 806, 1654
  382. 381 <-> 1306, 1606
  383. 382 <-> 195, 676, 736, 1268
  384. 383 <-> 383, 624, 1379
  385. 384 <-> 384, 856
  386. 385 <-> 1463
  387. 386 <-> 495, 629, 1578
  388. 387 <-> 836, 1670
  389. 388 <-> 329
  390. 389 <-> 488, 1477, 1866
  391. 390 <-> 251
  392. 391 <-> 391
  393. 392 <-> 129, 828, 1877
  394. 393 <-> 1436
  395. 394 <-> 1495
  396. 395 <-> 776, 879
  397. 396 <-> 793, 1298
  398. 397 <-> 523, 1192, 1693, 1712
  399. 398 <-> 398
  400. 399 <-> 356, 399, 1499
  401. 400 <-> 400, 1104
  402. 401 <-> 1039
  403. 402 <-> 100, 185, 1600
  404. 403 <-> 706, 1550
  405. 404 <-> 318, 1374, 1697
  406. 405 <-> 328, 1511
  407. 406 <-> 602, 905
  408. 407 <-> 407, 1910
  409. 408 <-> 168, 1120, 1584
  410. 409 <-> 1945
  411. 410 <-> 1763
  412. 411 <-> 1915
  413. 412 <-> 448, 1486
  414. 413 <-> 53, 681
  415. 414 <-> 414
  416. 415 <-> 158
  417. 416 <-> 848, 1051
  418. 417 <-> 142, 1717
  419. 418 <-> 203, 1226, 1537
  420. 419 <-> 236, 1144
  421. 420 <-> 1027, 1793
  422. 421 <-> 300, 671, 705
  423. 422 <-> 37
  424. 423 <-> 1013, 1607
  425. 424 <-> 424, 437, 1332
  426. 425 <-> 62, 774
  427. 426 <-> 426, 1359
  428. 427 <-> 1373
  429. 428 <-> 718
  430. 429 <-> 429, 1940
  431. 430 <-> 1410
  432. 431 <-> 554, 1941
  433. 432 <-> 1845
  434. 433 <-> 718, 1630
  435. 434 <-> 40, 1780
  436. 435 <-> 650
  437. 436 <-> 202, 1467, 1853
  438. 437 <-> 424
  439. 438 <-> 680, 1018, 1538
  440. 439 <-> 223, 1042, 1397
  441. 440 <-> 58, 1860
  442. 441 <-> 1138
  443. 442 <-> 640, 723, 1322
  444. 443 <-> 492, 958, 1736
  445. 444 <-> 444
  446. 445 <-> 533, 1530
  447. 446 <-> 24, 161, 1735, 1892, 1898
  448. 447 <-> 1998
  449. 448 <-> 412, 1266
  450. 449 <-> 972, 1397
  451. 450 <-> 732, 1147
  452. 451 <-> 1339, 1435, 1729
  453. 452 <-> 520
  454. 453 <-> 1810
  455. 454 <-> 0
  456. 455 <-> 1677
  457. 456 <-> 1915
  458. 457 <-> 1024, 1790
  459. 458 <-> 322
  460. 459 <-> 368, 1181
  461. 460 <-> 460
  462. 461 <-> 1181
  463. 462 <-> 289, 557, 1804
  464. 463 <-> 160
  465. 464 <-> 822, 1330
  466. 465 <-> 658
  467. 466 <-> 169, 357, 1248
  468. 467 <-> 467, 1278
  469. 468 <-> 107
  470. 469 <-> 1480
  471. 470 <-> 1503
  472. 471 <-> 1376, 1717
  473. 472 <-> 1835
  474. 473 <-> 11, 597
  475. 474 <-> 376, 687, 1478, 1730
  476. 475 <-> 701, 866
  477. 476 <-> 172
  478. 477 <-> 55, 1985
  479. 478 <-> 478
  480. 479 <-> 843, 1333, 1555
  481. 480 <-> 609, 712
  482. 481 <-> 19, 591, 1141
  483. 482 <-> 1698, 1883
  484. 483 <-> 664
  485. 484 <-> 1367, 1965
  486. 485 <-> 534, 1276
  487. 486 <-> 143, 1380, 1757
  488. 487 <-> 487
  489. 488 <-> 389
  490. 489 <-> 572
  491. 490 <-> 1053, 1465
  492. 491 <-> 840, 1074
  493. 492 <-> 443, 1728
  494. 493 <-> 631
  495. 494 <-> 91, 364
  496. 495 <-> 386, 1273, 1726, 1838
  497. 496 <-> 304, 772
  498. 497 <-> 572
  499. 498 <-> 102
  500. 499 <-> 44, 60
  501. 500 <-> 1078
  502. 501 <-> 642
  503. 502 <-> 561, 587, 686, 816, 1905
  504. 503 <-> 956, 1614
  505. 504 <-> 85, 188, 518, 790, 1891
  506. 505 <-> 1444
  507. 506 <-> 191
  508. 507 <-> 379, 1892
  509. 508 <-> 74, 1522
  510. 509 <-> 1429, 1863
  511. 510 <-> 510
  512. 511 <-> 241, 1797
  513. 512 <-> 1487
  514. 513 <-> 1280, 1997
  515. 514 <-> 288, 312, 1699
  516. 515 <-> 279, 1532
  517. 516 <-> 516, 1714
  518. 517 <-> 287, 338, 1364
  519. 518 <-> 504, 1852
  520. 519 <-> 762
  521. 520 <-> 452, 666, 1139
  522. 521 <-> 862, 1492
  523. 522 <-> 167, 616, 1644, 1956
  524. 523 <-> 397, 568
  525. 524 <-> 1038, 1896
  526. 525 <-> 171, 1239, 1847
  527. 526 <-> 1272, 1907
  528. 527 <-> 162, 1966
  529. 528 <-> 0, 1623
  530. 529 <-> 380
  531. 530 <-> 1479
  532. 531 <-> 1529
  533. 532 <-> 1085, 1939
  534. 533 <-> 215, 445, 1422, 1597
  535. 534 <-> 98, 485, 1337, 1960
  536. 535 <-> 880
  537. 536 <-> 1518
  538. 537 <-> 1009, 1274
  539. 538 <-> 1535, 1620
  540. 539 <-> 1971
  541. 540 <-> 540
  542. 541 <-> 565
  543. 542 <-> 1679
  544. 543 <-> 1374
  545. 544 <-> 297, 740
  546. 545 <-> 1461
  547. 546 <-> 546
  548. 547 <-> 547, 1019
  549. 548 <-> 1436
  550. 549 <-> 1589, 1980
  551. 550 <-> 110, 573
  552. 551 <-> 349, 1555
  553. 552 <-> 1725
  554. 553 <-> 175, 553, 1410
  555. 554 <-> 431, 776, 897
  556. 555 <-> 1859
  557. 556 <-> 250, 875
  558. 557 <-> 462, 998, 1124
  559. 558 <-> 1409
  560. 559 <-> 912
  561. 560 <-> 254
  562. 561 <-> 502, 561
  563. 562 <-> 1679
  564. 563 <-> 1299
  565. 564 <-> 293, 1259
  566. 565 <-> 541, 1312, 1441, 1913
  567. 566 <-> 1907
  568. 567 <-> 1159
  569. 568 <-> 523
  570. 569 <-> 1873
  571. 570 <-> 7, 359, 869
  572. 571 <-> 1752, 1779
  573. 572 <-> 489, 497, 811, 953
  574. 573 <-> 550
  575. 574 <-> 18, 1238
  576. 575 <-> 1771
  577. 576 <-> 1442, 1630
  578. 577 <-> 299, 1453
  579. 578 <-> 229, 1142, 1868
  580. 579 <-> 1878, 1977
  581. 580 <-> 362
  582. 581 <-> 1811
  583. 582 <-> 1675
  584. 583 <-> 765, 1632
  585. 584 <-> 983
  586. 585 <-> 1201
  587. 586 <-> 264, 265
  588. 587 <-> 502, 1680, 1968
  589. 588 <-> 616
  590. 589 <-> 1354, 1575
  591. 590 <-> 1106
  592. 591 <-> 481, 1179
  593. 592 <-> 1946
  594. 593 <-> 733, 1670
  595. 594 <-> 1129, 1271
  596. 595 <-> 1280
  597. 596 <-> 219, 1168
  598. 597 <-> 473, 876
  599. 598 <-> 1089
  600. 599 <-> 1334
  601. 600 <-> 1308
  602. 601 <-> 604, 870, 1817, 1946
  603. 602 <-> 406, 1369
  604. 603 <-> 1442
  605. 604 <-> 601
  606. 605 <-> 862
  607. 606 <-> 1355
  608. 607 <-> 1157
  609. 608 <-> 105
  610. 609 <-> 480, 756
  611. 610 <-> 1040, 1657
  612. 611 <-> 987, 1259
  613. 612 <-> 612, 1672
  614. 613 <-> 613, 1631
  615. 614 <-> 1602, 1795
  616. 615 <-> 646, 894
  617. 616 <-> 522, 588, 850
  618. 617 <-> 617, 1254
  619. 618 <-> 1352
  620. 619 <-> 352, 1855
  621. 620 <-> 221, 620
  622. 621 <-> 0
  623. 622 <-> 168, 1373
  624. 623 <-> 700
  625. 624 <-> 383
  626. 625 <-> 1321, 1343
  627. 626 <-> 216
  628. 627 <-> 1034
  629. 628 <-> 1271
  630. 629 <-> 386, 1172, 1973
  631. 630 <-> 1544, 1954
  632. 631 <-> 493, 1334
  633. 632 <-> 1375, 1491
  634. 633 <-> 1456
  635. 634 <-> 1982
  636. 635 <-> 924, 1054, 1617
  637. 636 <-> 825
  638. 637 <-> 1653
  639. 638 <-> 1098, 1321, 1404, 1790
  640. 639 <-> 639
  641. 640 <-> 442, 640, 1507
  642. 641 <-> 1519
  643. 642 <-> 501, 1401
  644. 643 <-> 245
  645. 644 <-> 714, 1348
  646. 645 <-> 249, 1329
  647. 646 <-> 615, 1733
  648. 647 <-> 1912
  649. 648 <-> 1598
  650. 649 <-> 933
  651. 650 <-> 435, 1895
  652. 651 <-> 1537
  653. 652 <-> 652, 1240, 1879
  654. 653 <-> 156, 1920
  655. 654 <-> 153, 1749
  656. 655 <-> 1248
  657. 656 <-> 700, 919, 1118, 1969
  658. 657 <-> 657, 1851
  659. 658 <-> 465, 1474
  660. 659 <-> 199, 818, 920
  661. 660 <-> 660
  662. 661 <-> 745
  663. 662 <-> 33, 1115, 1978
  664. 663 <-> 140, 1726
  665. 664 <-> 128, 483, 1780
  666. 665 <-> 1520
  667. 666 <-> 520
  668. 667 <-> 806
  669. 668 <-> 336, 934
  670. 669 <-> 145, 249, 1846
  671. 670 <-> 819, 1526, 1802
  672. 671 <-> 421
  673. 672 <-> 1870
  674. 673 <-> 931, 1018, 1211
  675. 674 <-> 1627
  676. 675 <-> 675
  677. 676 <-> 382, 819
  678. 677 <-> 212, 1163
  679. 678 <-> 733
  680. 679 <-> 16, 1149, 1402, 1959
  681. 680 <-> 158, 438, 886
  682. 681 <-> 105, 413, 1385
  683. 682 <-> 1309
  684. 683 <-> 1539
  685. 684 <-> 1034, 1520, 1801, 1927
  686. 685 <-> 183
  687. 686 <-> 502
  688. 687 <-> 474
  689. 688 <-> 786
  690. 689 <-> 2, 1671
  691. 690 <-> 1673, 1946
  692. 691 <-> 1732
  693. 692 <-> 1853
  694. 693 <-> 1230
  695. 694 <-> 694, 1823
  696. 695 <-> 333
  697. 696 <-> 1214
  698. 697 <-> 150, 697
  699. 698 <-> 1181
  700. 699 <-> 321, 1292, 1480
  701. 700 <-> 257, 290, 623, 656
  702. 701 <-> 475, 1205
  703. 702 <-> 337, 1597
  704. 703 <-> 334
  705. 704 <-> 912, 989, 1613
  706. 705 <-> 421, 849, 1215, 1270
  707. 706 <-> 403, 1648
  708. 707 <-> 1396
  709. 708 <-> 1081, 1687
  710. 709 <-> 1237
  711. 710 <-> 8, 826, 926, 1685
  712. 711 <-> 68, 711
  713. 712 <-> 480
  714. 713 <-> 1438, 1461, 1824, 1996
  715. 714 <-> 191, 351, 644
  716. 715 <-> 1058, 1875
  717. 716 <-> 339
  718. 717 <-> 276, 983, 1582, 1888
  719. 718 <-> 428, 433, 1227, 1239
  720. 719 <-> 1339, 1341
  721. 720 <-> 153, 1101, 1411
  722. 721 <-> 754, 878, 1794
  723. 722 <-> 1255, 1862
  724. 723 <-> 442, 760, 896
  725. 724 <-> 1033
  726. 725 <-> 1115
  727. 726 <-> 825, 1562
  728. 727 <-> 229, 994
  729. 728 <-> 49, 752, 947, 1589
  730. 729 <-> 118, 759, 985, 1070, 1760
  731. 730 <-> 1072
  732. 731 <-> 216, 1755
  733. 732 <-> 450, 1264
  734. 733 <-> 97, 593, 678, 1259
  735. 734 <-> 1099, 1531, 1811
  736. 735 <-> 367, 1586
  737. 736 <-> 306, 382, 1625
  738. 737 <-> 1886
  739. 738 <-> 1991
  740. 739 <-> 1684, 1827
  741. 740 <-> 544, 1539, 1694, 1737
  742. 741 <-> 741
  743. 742 <-> 79
  744. 743 <-> 84, 337, 743
  745. 744 <-> 187, 1992
  746. 745 <-> 661, 1266, 1856
  747. 746 <-> 1674
  748. 747 <-> 362, 1383
  749. 748 <-> 265, 1429
  750. 749 <-> 1299
  751. 750 <-> 164, 1216, 1336, 1469, 1734
  752. 751 <-> 76, 1011
  753. 752 <-> 728
  754. 753 <-> 244, 803
  755. 754 <-> 721, 1890
  756. 755 <-> 171
  757. 756 <-> 609, 1470, 1934
  758. 757 <-> 1098, 1885
  759. 758 <-> 5
  760. 759 <-> 729, 1092, 1363
  761. 760 <-> 723, 946
  762. 761 <-> 1321, 1704
  763. 762 <-> 519, 1317, 1776
  764. 763 <-> 1693
  765. 764 <-> 1093
  766. 765 <-> 262, 583, 1250, 1545, 1642
  767. 766 <-> 231
  768. 767 <-> 835, 1395
  769. 768 <-> 144
  770. 769 <-> 984
  771. 770 <-> 1232
  772. 771 <-> 203
  773. 772 <-> 496, 1437
  774. 773 <-> 339
  775. 774 <-> 425, 774, 1015
  776. 775 <-> 222
  777. 776 <-> 395, 554
  778. 777 <-> 1278
  779. 778 <-> 778, 991, 1062
  780. 779 <-> 219, 1993
  781. 780 <-> 374
  782. 781 <-> 917, 1716, 1929, 1962
  783. 782 <-> 269
  784. 783 <-> 1381
  785. 784 <-> 1075, 1790, 1965
  786. 785 <-> 914, 1504
  787. 786 <-> 688, 1319, 1440, 1771, 1981
  788. 787 <-> 1161, 1750
  789. 788 <-> 1279, 1632
  790. 789 <-> 109, 270, 853, 865, 1806, 1840
  791. 790 <-> 504
  792. 791 <-> 791
  793. 792 <-> 1041
  794. 793 <-> 396, 1562, 1827
  795. 794 <-> 88, 300, 817
  796. 795 <-> 956
  797. 796 <-> 1323, 1816
  798. 797 <-> 921, 1331
  799. 798 <-> 1621
  800. 799 <-> 1871
  801. 800 <-> 800
  802. 801 <-> 1608, 1823
  803. 802 <-> 22, 1326
  804. 803 <-> 136, 141, 181, 753, 1082, 1374
  805. 804 <-> 155, 1252, 1487
  806. 805 <-> 182
  807. 806 <-> 380, 667, 1623
  808. 807 <-> 245, 844, 1564, 1567, 1724
  809. 808 <-> 1193
  810. 809 <-> 314, 1033, 1333
  811. 810 <-> 1643
  812. 811 <-> 572
  813. 812 <-> 812, 1681, 1799
  814. 813 <-> 1726
  815. 814 <-> 189, 1861, 1912
  816. 815 <-> 20, 939
  817. 816 <-> 502
  818. 817 <-> 794
  819. 818 <-> 659, 1488
  820. 819 <-> 670, 676
  821. 820 <-> 256
  822. 821 <-> 821
  823. 822 <-> 464, 997, 1338
  824. 823 <-> 823
  825. 824 <-> 1016
  826. 825 <-> 636, 726, 1988
  827. 826 <-> 710, 1060, 1576
  828. 827 <-> 1027, 1214
  829. 828 <-> 392
  830. 829 <-> 829
  831. 830 <-> 1504, 1532
  832. 831 <-> 74
  833. 832 <-> 1730
  834. 833 <-> 944, 1778, 1980
  835. 834 <-> 151, 862
  836. 835 <-> 767, 1755
  837. 836 <-> 387, 1202, 1256
  838. 837 <-> 871, 1233
  839. 838 <-> 1028, 1246
  840. 839 <-> 1158, 1468
  841. 840 <-> 491
  842. 841 <-> 319, 841
  843. 842 <-> 123, 1759
  844. 843 <-> 326, 479
  845. 844 <-> 807
  846. 845 <-> 312
  847. 846 <-> 373, 1541, 1550
  848. 847 <-> 114, 1533, 1614
  849. 848 <-> 34, 416, 1116, 1391
  850. 849 <-> 705, 870
  851. 850 <-> 144, 295, 616, 1466, 1746
  852. 851 <-> 1169, 1329
  853. 852 <-> 1796, 1912
  854. 853 <-> 789
  855. 854 <-> 69, 192
  856. 855 <-> 1089
  857. 856 <-> 384, 1007
  858. 857 <-> 1720
  859. 858 <-> 1338
  860. 859 <-> 1338, 1822
  861. 860 <-> 1028, 1334
  862. 861 <-> 1093, 1457, 1552
  863. 862 <-> 521, 605, 834, 1309, 1903
  864. 863 <-> 1232, 1960
  865. 864 <-> 1823
  866. 865 <-> 789, 1299
  867. 866 <-> 123, 475, 1543
  868. 867 <-> 945, 1573
  869. 868 <-> 1569
  870. 869 <-> 570, 1035
  871. 870 <-> 601, 849
  872. 871 <-> 37, 837, 1786
  873. 872 <-> 182, 979
  874. 873 <-> 1146, 1220
  875. 874 <-> 161, 366, 1439
  876. 875 <-> 200, 556
  877. 876 <-> 278, 597, 1148
  878. 877 <-> 267
  879. 878 <-> 721, 1678, 1709
  880. 879 <-> 395
  881. 880 <-> 535, 1459
  882. 881 <-> 370, 1481, 1643
  883. 882 <-> 206, 1374, 1970
  884. 883 <-> 1948
  885. 884 <-> 884
  886. 885 <-> 341, 1664
  887. 886 <-> 680, 1217, 1515
  888. 887 <-> 887
  889. 888 <-> 242
  890. 889 <-> 1972
  891. 890 <-> 278
  892. 891 <-> 122, 234, 962, 1762
  893. 892 <-> 1845
  894. 893 <-> 1692
  895. 894 <-> 615, 1365
  896. 895 <-> 126, 1948
  897. 896 <-> 723, 965, 1002
  898. 897 <-> 554, 897
  899. 898 <-> 201, 1767
  900. 899 <-> 1127, 1723, 1929
  901. 900 <-> 1100, 1956
  902. 901 <-> 1099, 1919
  903. 902 <-> 1428
  904. 903 <-> 1416
  905. 904 <-> 1062
  906. 905 <-> 406, 1991
  907. 906 <-> 1253
  908. 907 <-> 1616
  909. 908 <-> 1744
  910. 909 <-> 1261, 1824
  911. 910 <-> 1773
  912. 911 <-> 1340
  913. 912 <-> 559, 704, 1289, 1369
  914. 913 <-> 1420
  915. 914 <-> 785
  916. 915 <-> 213, 289
  917. 916 <-> 64, 1481
  918. 917 <-> 781
  919. 918 <-> 16, 1304
  920. 919 <-> 87, 656
  921. 920 <-> 659, 950
  922. 921 <-> 797, 1755
  923. 922 <-> 1274, 1635
  924. 923 <-> 39
  925. 924 <-> 635
  926. 925 <-> 321, 347
  927. 926 <-> 710, 926
  928. 927 <-> 1393, 1666
  929. 928 <-> 5, 1981
  930. 929 <-> 1570
  931. 930 <-> 1864
  932. 931 <-> 673, 1245
  933. 932 <-> 334, 1203, 1642
  934. 933 <-> 301, 649, 1164
  935. 934 <-> 668, 1047, 1540, 1887
  936. 935 <-> 1617
  937. 936 <-> 1187
  938. 937 <-> 937, 1353
  939. 938 <-> 949, 1913
  940. 939 <-> 815
  941. 940 <-> 1649
  942. 941 <-> 941
  943. 942 <-> 1125
  944. 943 <-> 943, 1404
  945. 944 <-> 833, 1112
  946. 945 <-> 165, 867, 964
  947. 946 <-> 760
  948. 947 <-> 728, 1596
  949. 948 <-> 190
  950. 949 <-> 320, 938, 1931
  951. 950 <-> 920, 1992
  952. 951 <-> 1590
  953. 952 <-> 1422
  954. 953 <-> 233, 572, 1127
  955. 954 <-> 29, 1074
  956. 955 <-> 1672
  957. 956 <-> 54, 252, 503, 795
  958. 957 <-> 995
  959. 958 <-> 443, 1275
  960. 959 <-> 966
  961. 960 <-> 241, 1297, 1641, 1839
  962. 961 <-> 44, 1050
  963. 962 <-> 891
  964. 963 <-> 20, 1144, 1875
  965. 964 <-> 945, 1623
  966. 965 <-> 896, 1768
  967. 966 <-> 959, 1394
  968. 967 <-> 1155
  969. 968 <-> 1154, 1609
  970. 969 <-> 1652, 1738
  971. 970 <-> 970
  972. 971 <-> 187
  973. 972 <-> 449, 1135, 1707
  974. 973 <-> 1029
  975. 974 <-> 1267
  976. 975 <-> 1587, 1928
  977. 976 <-> 1248
  978. 977 <-> 977, 1932
  979. 978 <-> 1906
  980. 979 <-> 159, 180, 872, 1218, 1560
  981. 980 <-> 1086, 1830
  982. 981 <-> 1426, 1689
  983. 982 <-> 1671
  984. 983 <-> 584, 717, 1408
  985. 984 <-> 769, 1121
  986. 985 <-> 729, 1344
  987. 986 <-> 1486
  988. 987 <-> 611
  989. 988 <-> 988, 1800
  990. 989 <-> 704
  991. 990 <-> 1398
  992. 991 <-> 778
  993. 992 <-> 992
  994. 993 <-> 1537
  995. 994 <-> 727
  996. 995 <-> 957, 1909
  997. 996 <-> 374, 1848
  998. 997 <-> 822, 1159
  999. 998 <-> 557, 1691
  1000. 999 <-> 1393
  1001. 1000 <-> 1083
  1002. 1001 <-> 175, 1528
  1003. 1002 <-> 896
  1004. 1003 <-> 1003
  1005. 1004 <-> 1828, 1846, 1859
  1006. 1005 <-> 336
  1007. 1006 <-> 1871
  1008. 1007 <-> 856, 1362
  1009. 1008 <-> 1256, 1514, 1835
  1010. 1009 <-> 537, 1646
  1011. 1010 <-> 6, 1232
  1012. 1011 <-> 205, 751, 1976
  1013. 1012 <-> 1964
  1014. 1013 <-> 177, 423
  1015. 1014 <-> 1123
  1016. 1015 <-> 774, 1944
  1017. 1016 <-> 102, 824, 1557, 1912
  1018. 1017 <-> 344, 1017, 1113, 1649
  1019. 1018 <-> 438, 673, 1962
  1020. 1019 <-> 547
  1021. 1020 <-> 121, 1020
  1022. 1021 <-> 1909
  1023. 1022 <-> 165
  1024. 1023 <-> 0, 1601
  1025. 1024 <-> 457
  1026. 1025 <-> 1372, 1699
  1027. 1026 <-> 13, 67
  1028. 1027 <-> 82, 420, 827, 1383, 1686
  1029. 1028 <-> 49, 99, 170, 838, 860, 1961
  1030. 1029 <-> 973, 1029
  1031. 1030 <-> 1174
  1032. 1031 <-> 20, 1496, 1766, 1951
  1033. 1032 <-> 318, 1108
  1034. 1033 <-> 724, 809, 1917
  1035. 1034 <-> 341, 627, 684, 1269
  1036. 1035 <-> 869, 1061
  1037. 1036 <-> 230, 1181, 1522
  1038. 1037 <-> 18, 1470
  1039. 1038 <-> 524, 1038, 1445, 1561
  1040. 1039 <-> 401, 1972
  1041. 1040 <-> 610
  1042. 1041 <-> 792, 1041, 1787
  1043. 1042 <-> 439, 1853
  1044. 1043 <-> 315
  1045. 1044 <-> 1549, 1570, 1957
  1046. 1045 <-> 1719
  1047. 1046 <-> 266
  1048. 1047 <-> 117, 934
  1049. 1048 <-> 1468
  1050. 1049 <-> 1078, 1568, 1755
  1051. 1050 <-> 961
  1052. 1051 <-> 416
  1053. 1052 <-> 270
  1054. 1053 <-> 101, 283, 490, 1490
  1055. 1054 <-> 635, 1231
  1056. 1055 <-> 1061, 1260
  1057. 1056 <-> 45, 1056
  1058. 1057 <-> 1945
  1059. 1058 <-> 715
  1060. 1059 <-> 1933
  1061. 1060 <-> 826
  1062. 1061 <-> 1035, 1055
  1063. 1062 <-> 778, 904
  1064. 1063 <-> 1496, 1502, 1666
  1065. 1064 <-> 136, 1943
  1066. 1065 <-> 1979
  1067. 1066 <-> 1171
  1068. 1067 <-> 235, 280, 1657
  1069. 1068 <-> 1068
  1070. 1069 <-> 165
  1071. 1070 <-> 75, 198, 729
  1072. 1071 <-> 165
  1073. 1072 <-> 730, 1224, 1456
  1074. 1073 <-> 1073
  1075. 1074 <-> 491, 954, 1979
  1076. 1075 <-> 784, 1739
  1077. 1076 <-> 272, 1617
  1078. 1077 <-> 1636
  1079. 1078 <-> 500, 1049, 1285
  1080. 1079 <-> 1770
  1081. 1080 <-> 1103, 1472
  1082. 1081 <-> 328, 708, 1803
  1083. 1082 <-> 803
  1084. 1083 <-> 1000, 1803
  1085. 1084 <-> 330
  1086. 1085 <-> 229, 532
  1087. 1086 <-> 115, 980, 1086
  1088. 1087 <-> 256, 1351, 1933
  1089. 1088 <-> 1088, 1872
  1090. 1089 <-> 346, 598, 855, 1840
  1091. 1090 <-> 1193
  1092. 1091 <-> 179
  1093. 1092 <-> 759
  1094. 1093 <-> 764, 861, 1406
  1095. 1094 <-> 1094
  1096. 1095 <-> 1128, 1398
  1097. 1096 <-> 1477
  1098. 1097 <-> 1673
  1099. 1098 <-> 638, 757, 1364
  1100. 1099 <-> 734, 901
  1101. 1100 <-> 900
  1102. 1101 <-> 17, 720
  1103. 1102 <-> 270
  1104. 1103 <-> 1080, 1103, 1394
  1105. 1104 <-> 400, 1720
  1106. 1105 <-> 378, 1515
  1107. 1106 <-> 590, 1782
  1108. 1107 <-> 181
  1109. 1108 <-> 157, 1032
  1110. 1109 <-> 1799
  1111. 1110 <-> 1251
  1112. 1111 <-> 31, 53, 1541
  1113. 1112 <-> 944
  1114. 1113 <-> 1017
  1115. 1114 <-> 204
  1116. 1115 <-> 59, 291, 662, 725, 1616, 1617
  1117. 1116 <-> 159, 848
  1118. 1117 <-> 1176
  1119. 1118 <-> 656
  1120. 1119 <-> 1461
  1121. 1120 <-> 408
  1122. 1121 <-> 984, 1436, 1518
  1123. 1122 <-> 1573, 1774
  1124. 1123 <-> 1014, 1606, 1678
  1125. 1124 <-> 322, 557
  1126. 1125 <-> 942, 1378, 1760
  1127. 1126 <-> 375, 1516, 1914
  1128. 1127 <-> 899, 953
  1129. 1128 <-> 1095, 1907
  1130. 1129 <-> 594, 1676
  1131. 1130 <-> 1774
  1132. 1131 <-> 1131, 1516
  1133. 1132 <-> 339, 1421
  1134. 1133 <-> 371
  1135. 1134 <-> 1227, 1669
  1136. 1135 <-> 972
  1137. 1136 <-> 1136, 1163
  1138. 1137 <-> 1654
  1139. 1138 <-> 26, 441, 1361, 1593
  1140. 1139 <-> 367, 520, 1140
  1141. 1140 <-> 1139
  1142. 1141 <-> 481, 1141
  1143. 1142 <-> 578
  1144. 1143 <-> 1980
  1145. 1144 <-> 222, 419, 963
  1146. 1145 <-> 1145
  1147. 1146 <-> 873, 1273
  1148. 1147 <-> 450, 1686
  1149. 1148 <-> 876, 1690
  1150. 1149 <-> 253, 679
  1151. 1150 <-> 1276
  1152. 1151 <-> 180
  1153. 1152 <-> 192, 1284
  1154. 1153 <-> 211, 1529
  1155. 1154 <-> 81, 968
  1156. 1155 <-> 967, 1205, 1954
  1157. 1156 <-> 1637
  1158. 1157 <-> 607, 1452
  1159. 1158 <-> 839
  1160. 1159 <-> 567, 997
  1161. 1160 <-> 1160, 1541
  1162. 1161 <-> 199, 787
  1163. 1162 <-> 1880
  1164. 1163 <-> 677, 1136
  1165. 1164 <-> 248, 933, 1667
  1166. 1165 <-> 79, 1313
  1167. 1166 <-> 1636
  1168. 1167 <-> 1810
  1169. 1168 <-> 52, 596, 1277
  1170. 1169 <-> 851
  1171. 1170 <-> 128, 1650
  1172. 1171 <-> 3, 1066
  1173. 1172 <-> 629
  1174. 1173 <-> 1537
  1175. 1174 <-> 29, 1030, 1175
  1176. 1175 <-> 1174
  1177. 1176 <-> 1117, 1385
  1178. 1177 <-> 1875
  1179. 1178 <-> 1887
  1180. 1179 <-> 591, 1191
  1181. 1180 <-> 1569, 1743
  1182. 1181 <-> 459, 461, 698, 1036
  1183. 1182 <-> 1652
  1184. 1183 <-> 94, 1724, 1734, 1974
  1185. 1184 <-> 1184
  1186. 1185 <-> 30, 292, 1308, 1625
  1187. 1186 <-> 51, 265, 1186, 1963, 1972
  1188. 1187 <-> 936, 1187
  1189. 1188 <-> 1494
  1190. 1189 <-> 1360, 1876
  1191. 1190 <-> 77
  1192. 1191 <-> 1179
  1193. 1192 <-> 397
  1194. 1193 <-> 808, 1090, 1619
  1195. 1194 <-> 1194
  1196. 1195 <-> 1195
  1197. 1196 <-> 1957
  1198. 1197 <-> 1263
  1199. 1198 <-> 1198
  1200. 1199 <-> 0
  1201. 1200 <-> 1200
  1202. 1201 <-> 49, 585, 1201, 1557, 1890
  1203. 1202 <-> 836
  1204. 1203 <-> 932
  1205. 1204 <-> 1911
  1206. 1205 <-> 701, 1155, 1350
  1207. 1206 <-> 1228, 1318, 1665
  1208. 1207 <-> 1373, 1741
  1209. 1208 <-> 84, 298
  1210. 1209 <-> 1485
  1211. 1210 <-> 92, 1626, 1775
  1212. 1211 <-> 282, 673
  1213. 1212 <-> 1807
  1214. 1213 <-> 371
  1215. 1214 <-> 255, 696, 827
  1216. 1215 <-> 705, 1378
  1217. 1216 <-> 750, 1538
  1218. 1217 <-> 886
  1219. 1218 <-> 979, 1523
  1220. 1219 <-> 171
  1221. 1220 <-> 116, 873
  1222. 1221 <-> 1553, 1827
  1223. 1222 <-> 129
  1224. 1223 <-> 375
  1225. 1224 <-> 204, 1072, 1660, 1757
  1226. 1225 <-> 1661, 1683, 1812
  1227. 1226 <-> 418
  1228. 1227 <-> 718, 1134
  1229. 1228 <-> 1206, 1490
  1230. 1229 <-> 1237
  1231. 1230 <-> 693, 1274, 1826
  1232. 1231 <-> 263, 1054, 1424
  1233. 1232 <-> 770, 863, 1010
  1234. 1233 <-> 42, 837
  1235. 1234 <-> 1342
  1236. 1235 <-> 1235
  1237. 1236 <-> 1805, 1881
  1238. 1237 <-> 709, 1229, 1390, 1589, 1590
  1239. 1238 <-> 574
  1240. 1239 <-> 525, 718
  1241. 1240 <-> 652
  1242. 1241 <-> 122
  1243. 1242 <-> 146, 1473
  1244. 1243 <-> 243
  1245. 1244 <-> 1244
  1246. 1245 <-> 931, 1282
  1247. 1246 <-> 838
  1248. 1247 <-> 4, 1662, 1679
  1249. 1248 <-> 466, 655, 976
  1250. 1249 <-> 1588
  1251. 1250 <-> 192, 765
  1252. 1251 <-> 356, 1110
  1253. 1252 <-> 183, 804
  1254. 1253 <-> 906, 1842
  1255. 1254 <-> 617
  1256. 1255 <-> 722, 1255
  1257. 1256 <-> 836, 1008
  1258. 1257 <-> 1437
  1259. 1258 <-> 1587
  1260. 1259 <-> 564, 611, 733
  1261. 1260 <-> 5, 1055
  1262. 1261 <-> 909
  1263. 1262 <-> 1912
  1264. 1263 <-> 1197, 1513
  1265. 1264 <-> 732, 1453
  1266. 1265 <-> 1864
  1267. 1266 <-> 448, 745, 1266
  1268. 1267 <-> 974, 1267, 1637, 1807
  1269. 1268 <-> 382
  1270. 1269 <-> 1034
  1271. 1270 <-> 705
  1272. 1271 <-> 594, 628
  1273. 1272 <-> 526
  1274. 1273 <-> 495, 1146
  1275. 1274 <-> 260, 321, 537, 922, 1230
  1276. 1275 <-> 958
  1277. 1276 <-> 295, 485, 1150
  1278. 1277 <-> 1168
  1279. 1278 <-> 467, 777
  1280. 1279 <-> 788
  1281. 1280 <-> 214, 513, 595, 1377, 1971
  1282. 1281 <-> 1658, 1812
  1283. 1282 <-> 348, 1245, 1978
  1284. 1283 <-> 1669
  1285. 1284 <-> 1152
  1286. 1285 <-> 1078, 1867
  1287. 1286 <-> 308, 1352
  1288. 1287 <-> 1560
  1289. 1288 <-> 1674, 1749
  1290. 1289 <-> 912
  1291. 1290 <-> 372, 1689
  1292. 1291 <-> 1495
  1293. 1292 <-> 699
  1294. 1293 <-> 1381, 1432, 1565, 1669
  1295. 1294 <-> 1926
  1296. 1295 <-> 148, 179, 1788, 1901
  1297. 1296 <-> 1296
  1298. 1297 <-> 960
  1299. 1298 <-> 396
  1300. 1299 <-> 563, 749, 865, 1733, 1882
  1301. 1300 <-> 109, 1423
  1302. 1301 <-> 49
  1303. 1302 <-> 1664
  1304. 1303 <-> 361
  1305. 1304 <-> 918, 1848
  1306. 1305 <-> 1376, 1659
  1307. 1306 <-> 381, 1482, 1638
  1308. 1307 <-> 201
  1309. 1308 <-> 600, 1185
  1310. 1309 <-> 682, 862
  1311. 1310 <-> 1310, 1857
  1312. 1311 <-> 278
  1313. 1312 <-> 565
  1314. 1313 <-> 1165
  1315. 1314 <-> 1357, 1816
  1316. 1315 <-> 1315
  1317. 1316 <-> 306, 1417
  1318. 1317 <-> 762, 1730
  1319. 1318 <-> 1206
  1320. 1319 <-> 786, 1489
  1321. 1320 <-> 1723
  1322. 1321 <-> 625, 638, 761
  1323. 1322 <-> 442
  1324. 1323 <-> 796, 1594, 1953
  1325. 1324 <-> 1755
  1326. 1325 <-> 341
  1327. 1326 <-> 802, 1864
  1328. 1327 <-> 1327
  1329. 1328 <-> 23, 1513
  1330. 1329 <-> 645, 851, 1682
  1331. 1330 <-> 176, 464
  1332. 1331 <-> 797, 1913
  1333. 1332 <-> 424
  1334. 1333 <-> 479, 809
  1335. 1334 <-> 89, 599, 631, 860, 1493
  1336. 1335 <-> 1, 227
  1337. 1336 <-> 750
  1338. 1337 <-> 534
  1339. 1338 <-> 218, 822, 858, 859
  1340. 1339 <-> 451, 719
  1341. 1340 <-> 28, 911, 1958
  1342. 1341 <-> 719
  1343. 1342 <-> 1234, 1417
  1344. 1343 <-> 625
  1345. 1344 <-> 985
  1346. 1345 <-> 280
  1347. 1346 <-> 1758
  1348. 1347 <-> 1347
  1349. 1348 <-> 644, 1907, 1927
  1350. 1349 <-> 149, 1882
  1351. 1350 <-> 1205, 1755
  1352. 1351 <-> 1087
  1353. 1352 <-> 618, 1286, 1837
  1354. 1353 <-> 937
  1355. 1354 <-> 589, 1909
  1356. 1355 <-> 12, 140, 606, 1646
  1357. 1356 <-> 1590
  1358. 1357 <-> 239, 308, 1314, 1990
  1359. 1358 <-> 82
  1360. 1359 <-> 426
  1361. 1360 <-> 1189
  1362. 1361 <-> 1138
  1363. 1362 <-> 1007
  1364. 1363 <-> 759
  1365. 1364 <-> 517, 1098
  1366. 1365 <-> 894
  1367. 1366 <-> 182, 1366
  1368. 1367 <-> 484
  1369. 1368 <-> 1765, 1963
  1370. 1369 <-> 602, 912
  1371. 1370 <-> 268
  1372. 1371 <-> 1877
  1373. 1372 <-> 1025
  1374. 1373 <-> 427, 622, 1207
  1375. 1374 <-> 404, 543, 803, 882
  1376. 1375 <-> 632, 1414
  1377. 1376 <-> 210, 471, 1305
  1378. 1377 <-> 1280
  1379. 1378 <-> 1125, 1215
  1380. 1379 <-> 383
  1381. 1380 <-> 486
  1382. 1381 <-> 783, 1293
  1383. 1382 <-> 1382
  1384. 1383 <-> 172, 747, 1027
  1385. 1384 <-> 75
  1386. 1385 <-> 261, 681, 1176, 1651
  1387. 1386 <-> 231
  1388. 1387 <-> 1387
  1389. 1388 <-> 1565
  1390. 1389 <-> 59
  1391. 1390 <-> 1237
  1392. 1391 <-> 848
  1393. 1392 <-> 60
  1394. 1393 <-> 927, 999
  1395. 1394 <-> 966, 1103
  1396. 1395 <-> 767
  1397. 1396 <-> 154, 707
  1398. 1397 <-> 439, 449, 1479, 1782
  1399. 1398 <-> 990, 1095, 1945
  1400. 1399 <-> 298
  1401. 1400 <-> 1907
  1402. 1401 <-> 289, 642
  1403. 1402 <-> 287, 679
  1404. 1403 <-> 72, 1624
  1405. 1404 <-> 638, 943
  1406. 1405 <-> 1572
  1407. 1406 <-> 209, 1093, 1707
  1408. 1407 <-> 1496, 1618
  1409. 1408 <-> 983
  1410. 1409 <-> 115, 558, 1805
  1411. 1410 <-> 430, 553
  1412. 1411 <-> 720
  1413. 1412 <-> 103
  1414. 1413 <-> 1733
  1415. 1414 <-> 1375, 1796
  1416. 1415 <-> 1601
  1417. 1416 <-> 903, 1718, 1971
  1418. 1417 <-> 1316, 1342, 1626
  1419. 1418 <-> 243, 266, 317, 1418, 1468, 1505
  1420. 1419 <-> 1419
  1421. 1420 <-> 913, 1836
  1422. 1421 <-> 77, 1132, 1502
  1423. 1422 <-> 533, 952
  1424. 1423 <-> 71, 1300, 1947
  1425. 1424 <-> 1231
  1426. 1425 <-> 324
  1427. 1426 <-> 981
  1428. 1427 <-> 21, 1575, 1696, 1798
  1429. 1428 <-> 290, 902, 1581
  1430. 1429 <-> 509, 748
  1431. 1430 <-> 1430
  1432. 1431 <-> 1967
  1433. 1432 <-> 1293
  1434. 1433 <-> 362, 1922
  1435. 1434 <-> 1486
  1436. 1435 <-> 451, 1779
  1437. 1436 <-> 393, 548, 1121, 1514
  1438. 1437 <-> 772, 1257, 1462, 1493
  1439. 1438 <-> 371, 713, 1557
  1440. 1439 <-> 874
  1441. 1440 <-> 786
  1442. 1441 <-> 143, 565, 1629
  1443. 1442 <-> 576, 603
  1444. 1443 <-> 1445
  1445. 1444 <-> 505, 1444, 1703
  1446. 1445 <-> 1038, 1443
  1447. 1446 <-> 247, 342
  1448. 1447 <-> 23
  1449. 1448 <-> 1935
  1450. 1449 <-> 159
  1451. 1450 <-> 38, 1450
  1452. 1451 <-> 1528, 1817
  1453. 1452 <-> 318, 1157, 1633
  1454. 1453 <-> 577, 1264
  1455. 1454 <-> 254
  1456. 1455 <-> 1487
  1457. 1456 <-> 633, 1072
  1458. 1457 <-> 43, 861
  1459. 1458 <-> 345, 1858
  1460. 1459 <-> 354, 880
  1461. 1460 <-> 1718
  1462. 1461 <-> 545, 713, 1119
  1463. 1462 <-> 1437
  1464. 1463 <-> 385, 1886, 1995
  1465. 1464 <-> 1862
  1466. 1465 <-> 490
  1467. 1466 <-> 850
  1468. 1467 <-> 376, 436, 1991
  1469. 1468 <-> 839, 1048, 1418, 1558, 1792
  1470. 1469 <-> 750
  1471. 1470 <-> 756, 1037
  1472. 1471 <-> 1878
  1473. 1472 <-> 1080, 1571
  1474. 1473 <-> 291, 1242
  1475. 1474 <-> 658, 1482
  1476. 1475 <-> 1930
  1477. 1476 <-> 312
  1478. 1477 <-> 389, 1096
  1479. 1478 <-> 474, 1588
  1480. 1479 <-> 530, 1397
  1481. 1480 <-> 469, 699
  1482. 1481 <-> 881, 916
  1483. 1482 <-> 1306, 1474
  1484. 1483 <-> 130
  1485. 1484 <-> 1558, 1877
  1486. 1485 <-> 169, 377, 1209, 1647
  1487. 1486 <-> 138, 412, 986, 1434
  1488. 1487 <-> 512, 804, 1455
  1489. 1488 <-> 818
  1490. 1489 <-> 1319, 1489
  1491. 1490 <-> 1053, 1228, 1490
  1492. 1491 <-> 632
  1493. 1492 <-> 521, 1566
  1494. 1493 <-> 305, 1334, 1437, 1620, 1732
  1495. 1494 <-> 1188, 1600
  1496. 1495 <-> 307, 394, 1291, 1495
  1497. 1496 <-> 1031, 1063, 1407
  1498. 1497 <-> 38
  1499. 1498 <-> 242
  1500. 1499 <-> 399
  1501. 1500 <-> 1998
  1502. 1501 <-> 1557
  1503. 1502 <-> 1063, 1421
  1504. 1503 <-> 470, 1503
  1505. 1504 <-> 785, 830
  1506. 1505 <-> 1418
  1507. 1506 <-> 1723, 1958
  1508. 1507 <-> 640
  1509. 1508 <-> 183
  1510. 1509 <-> 263
  1511. 1510 <-> 1642
  1512. 1511 <-> 405
  1513. 1512 <-> 1697
  1514. 1513 <-> 1263, 1328
  1515. 1514 <-> 1008, 1436
  1516. 1515 <-> 886, 1105
  1517. 1516 <-> 1126, 1131
  1518. 1517 <-> 80, 1850
  1519. 1518 <-> 536, 1121
  1520. 1519 <-> 641, 1809
  1521. 1520 <-> 665, 684
  1522. 1521 <-> 1521
  1523. 1522 <-> 508, 1036, 1593
  1524. 1523 <-> 1218
  1525. 1524 <-> 1747
  1526. 1525 <-> 281, 1525
  1527. 1526 <-> 670
  1528. 1527 <-> 1527
  1529. 1528 <-> 1001, 1451
  1530. 1529 <-> 531, 1153
  1531. 1530 <-> 445
  1532. 1531 <-> 734
  1533. 1532 <-> 48, 515, 830
  1534. 1533 <-> 847, 1549
  1535. 1534 <-> 285, 318
  1536. 1535 <-> 538
  1537. 1536 <-> 1742
  1538. 1537 <-> 418, 651, 993, 1173, 1999
  1539. 1538 <-> 154, 438, 1216, 1693
  1540. 1539 <-> 683, 740, 1539, 1982
  1541. 1540 <-> 257, 934
  1542. 1541 <-> 846, 1111, 1160, 1758
  1543. 1542 <-> 1612
  1544. 1543 <-> 866
  1545. 1544 <-> 377, 630
  1546. 1545 <-> 765
  1547. 1546 <-> 1907
  1548. 1547 <-> 121, 1938
  1549. 1548 <-> 1548
  1550. 1549 <-> 273, 322, 1044, 1533
  1551. 1550 <-> 403, 846
  1552. 1551 <-> 195, 1915
  1553. 1552 <-> 861, 1865
  1554. 1553 <-> 1221
  1555. 1554 <-> 83
  1556. 1555 <-> 479, 551
  1557. 1556 <-> 242, 327
  1558. 1557 <-> 1016, 1201, 1438, 1501
  1559. 1558 <-> 1468, 1484
  1560. 1559 <-> 1618
  1561. 1560 <-> 979, 1287
  1562. 1561 <-> 1038
  1563. 1562 <-> 63, 726, 793
  1564. 1563 <-> 1, 1563, 1634
  1565. 1564 <-> 807
  1566. 1565 <-> 1293, 1388
  1567. 1566 <-> 1492
  1568. 1567 <-> 807, 1594
  1569. 1568 <-> 1049
  1570. 1569 <-> 868, 1180
  1571. 1570 <-> 929, 1044, 1833
  1572. 1571 <-> 1472
  1573. 1572 <-> 200, 267, 1405
  1574. 1573 <-> 867, 1122
  1575. 1574 <-> 253
  1576. 1575 <-> 589, 1427, 1622, 1705
  1577. 1576 <-> 826
  1578. 1577 <-> 1780
  1579. 1578 <-> 386
  1580. 1579 <-> 1579
  1581. 1580 <-> 1699
  1582. 1581 <-> 1428
  1583. 1582 <-> 60, 717
  1584. 1583 <-> 1583
  1585. 1584 <-> 408
  1586. 1585 <-> 1585
  1587. 1586 <-> 735
  1588. 1587 <-> 975, 1258, 1587, 1619
  1589. 1588 <-> 1249, 1478
  1590. 1589 <-> 549, 728, 1237
  1591. 1590 <-> 951, 1237, 1356
  1592. 1591 <-> 70, 1639
  1593. 1592 <-> 1592, 1992
  1594. 1593 <-> 63, 78, 1138, 1522
  1595. 1594 <-> 1323, 1567
  1596. 1595 <-> 1966
  1597. 1596 <-> 947
  1598. 1597 <-> 533, 702
  1599. 1598 <-> 648, 1615
  1600. 1599 <-> 1622, 1694
  1601. 1600 <-> 356, 402, 1494
  1602. 1601 <-> 1023, 1415
  1603. 1602 <-> 240, 614, 1813, 1925
  1604. 1603 <-> 1645
  1605. 1604 <-> 1969
  1606. 1605 <-> 106
  1607. 1606 <-> 381, 1123
  1608. 1607 <-> 423
  1609. 1608 <-> 801
  1610. 1609 <-> 968, 1684
  1611. 1610 <-> 8, 269
  1612. 1611 <-> 1840
  1613. 1612 <-> 1542, 1933
  1614. 1613 <-> 704, 1725
  1615. 1614 <-> 503, 847
  1616. 1615 <-> 75, 1598
  1617. 1616 <-> 907, 1115
  1618. 1617 <-> 635, 935, 1076, 1115
  1619. 1618 <-> 1407, 1559
  1620. 1619 <-> 93, 1193, 1587
  1621. 1620 <-> 538, 1493
  1622. 1621 <-> 798, 1672, 1911
  1623. 1622 <-> 306, 1575, 1599
  1624. 1623 <-> 528, 806, 964
  1625. 1624 <-> 1403, 1989
  1626. 1625 <-> 736, 1185
  1627. 1626 <-> 1210, 1417
  1628. 1627 <-> 1, 160, 674
  1629. 1628 <-> 1844
  1630. 1629 <-> 173, 1441, 1930
  1631. 1630 <-> 86, 350, 433, 576
  1632. 1631 <-> 613
  1633. 1632 <-> 583, 788
  1634. 1633 <-> 1452
  1635. 1634 <-> 1563
  1636. 1635 <-> 922
  1637. 1636 <-> 1077, 1166, 1636
  1638. 1637 <-> 17, 1156, 1267
  1639. 1638 <-> 1306
  1640. 1639 <-> 333, 1591
  1641. 1640 <-> 1640
  1642. 1641 <-> 960
  1643. 1642 <-> 765, 932, 1510
  1644. 1643 <-> 317, 810, 881
  1645. 1644 <-> 522
  1646. 1645 <-> 1603, 1719
  1647. 1646 <-> 1009, 1355
  1648. 1647 <-> 284, 1485
  1649. 1648 <-> 706, 1785
  1650. 1649 <-> 940, 1017
  1651. 1650 <-> 1170
  1652. 1651 <-> 1385
  1653. 1652 <-> 39, 969, 1182, 1652
  1654. 1653 <-> 246, 637, 1919
  1655. 1654 <-> 380, 1137, 1923
  1656. 1655 <-> 324
  1657. 1656 <-> 1986
  1658. 1657 <-> 610, 1067
  1659. 1658 <-> 1281
  1660. 1659 <-> 1305
  1661. 1660 <-> 1224, 1869
  1662. 1661 <-> 1225
  1663. 1662 <-> 50, 1247
  1664. 1663 <-> 313
  1665. 1664 <-> 885, 1302, 1870
  1666. 1665 <-> 1206
  1667. 1666 <-> 927, 1063, 1903
  1668. 1667 <-> 1164
  1669. 1668 <-> 158, 1989
  1670. 1669 <-> 1134, 1283, 1293, 1669
  1671. 1670 <-> 387, 593, 1884
  1672. 1671 <-> 689, 982
  1673. 1672 <-> 612, 955, 1621
  1674. 1673 <-> 690, 1097
  1675. 1674 <-> 746, 1288
  1676. 1675 <-> 582, 1675
  1677. 1676 <-> 124, 1129
  1678. 1677 <-> 24, 455, 1979
  1679. 1678 <-> 363, 878, 1123
  1680. 1679 <-> 1, 156, 542, 562, 1247
  1681. 1680 <-> 587
  1682. 1681 <-> 208, 812
  1683. 1682 <-> 1329
  1684. 1683 <-> 1225
  1685. 1684 <-> 739, 1609
  1686. 1685 <-> 710
  1687. 1686 <-> 1027, 1147, 1939
  1688. 1687 <-> 238, 708, 1740
  1689. 1688 <-> 268
  1690. 1689 <-> 981, 1290, 1814
  1691. 1690 <-> 1148
  1692. 1691 <-> 998
  1693. 1692 <-> 893, 1862
  1694. 1693 <-> 397, 763, 1538
  1695. 1694 <-> 740, 1599
  1696. 1695 <-> 1695
  1697. 1696 <-> 131, 135, 1427
  1698. 1697 <-> 404, 1512
  1699. 1698 <-> 482, 1930
  1700. 1699 <-> 514, 1025, 1580
  1701. 1700 <-> 321, 331, 1945
  1702. 1701 <-> 1749
  1703. 1702 <-> 1702
  1704. 1703 <-> 1444
  1705. 1704 <-> 61, 761
  1706. 1705 <-> 1575
  1707. 1706 <-> 1706
  1708. 1707 <-> 972, 1406
  1709. 1708 <-> 23, 1791
  1710. 1709 <-> 878
  1711. 1710 <-> 148
  1712. 1711 <-> 1848
  1713. 1712 <-> 397
  1714. 1713 <-> 1899
  1715. 1714 <-> 516, 1860
  1716. 1715 <-> 1715
  1717. 1716 <-> 781
  1718. 1717 <-> 243, 417, 471
  1719. 1718 <-> 1416, 1460, 1785
  1720. 1719 <-> 1045, 1645, 1719
  1721. 1720 <-> 857, 1104
  1722. 1721 <-> 1971
  1723. 1722 <-> 1742, 1998
  1724. 1723 <-> 85, 899, 1320, 1506
  1725. 1724 <-> 807, 1183
  1726. 1725 <-> 552, 1613
  1727. 1726 <-> 495, 663, 813
  1728. 1727 <-> 1727
  1729. 1728 <-> 281, 492
  1730. 1729 <-> 451
  1731. 1730 <-> 474, 832, 1317
  1732. 1731 <-> 1858
  1733. 1732 <-> 691, 1493
  1734. 1733 <-> 646, 1299, 1413, 1733
  1735. 1734 <-> 750, 1183
  1736. 1735 <-> 446
  1737. 1736 <-> 443
  1738. 1737 <-> 740
  1739. 1738 <-> 137, 286, 969
  1740. 1739 <-> 1075
  1741. 1740 <-> 1687, 1942
  1742. 1741 <-> 1207
  1743. 1742 <-> 1536, 1722, 1742
  1744. 1743 <-> 248, 1180, 1743
  1745. 1744 <-> 130, 908, 1744
  1746. 1745 <-> 1745
  1747. 1746 <-> 850
  1748. 1747 <-> 1524, 1747
  1749. 1748 <-> 186, 1748
  1750. 1749 <-> 654, 1288, 1701, 1871
  1751. 1750 <-> 787
  1752. 1751 <-> 1751
  1753. 1752 <-> 571
  1754. 1753 <-> 1753
  1755. 1754 <-> 1754
  1756. 1755 <-> 731, 835, 921, 1049, 1324, 1350
  1757. 1756 <-> 1935
  1758. 1757 <-> 486, 1224
  1759. 1758 <-> 1346, 1541
  1760. 1759 <-> 196, 842
  1761. 1760 <-> 163, 729, 1125
  1762. 1761 <-> 170
  1763. 1762 <-> 891
  1764. 1763 <-> 410, 1763
  1765. 1764 <-> 309
  1766. 1765 <-> 1368
  1767. 1766 <-> 1031
  1768. 1767 <-> 898, 1955
  1769. 1768 <-> 360, 965
  1770. 1769 <-> 160
  1771. 1770 <-> 1079, 1868
  1772. 1771 <-> 575, 786
  1773. 1772 <-> 332
  1774. 1773 <-> 51, 910
  1775. 1774 <-> 347, 1122, 1130
  1776. 1775 <-> 1210
  1777. 1776 <-> 762, 1776
  1778. 1777 <-> 1948
  1779. 1778 <-> 833
  1780. 1779 <-> 571, 1435, 1779
  1781. 1780 <-> 434, 664, 1577
  1782. 1781 <-> 1958
  1783. 1782 <-> 147, 1106, 1397
  1784. 1783 <-> 1846
  1785. 1784 <-> 1784, 1866
  1786. 1785 <-> 1648, 1718, 1937
  1787. 1786 <-> 871
  1788. 1787 <-> 271, 1041
  1789. 1788 <-> 1295, 1962
  1790. 1789 <-> 1789
  1791. 1790 <-> 457, 638, 784
  1792. 1791 <-> 1708, 1791
  1793. 1792 <-> 1468
  1794. 1793 <-> 420
  1795. 1794 <-> 721
  1796. 1795 <-> 174, 614
  1797. 1796 <-> 852, 1414
  1798. 1797 <-> 511
  1799. 1798 <-> 107, 1427
  1800. 1799 <-> 812, 1109
  1801. 1800 <-> 988
  1802. 1801 <-> 684
  1803. 1802 <-> 670
  1804. 1803 <-> 1081, 1083
  1805. 1804 <-> 462
  1806. 1805 <-> 1236, 1409
  1807. 1806 <-> 789
  1808. 1807 <-> 1212, 1267
  1809. 1808 <-> 1841
  1810. 1809 <-> 1519, 1947
  1811. 1810 <-> 108, 453, 1167, 1943
  1812. 1811 <-> 139, 581, 734, 1955
  1813. 1812 <-> 1225, 1281, 1812
  1814. 1813 <-> 1602
  1815. 1814 <-> 1689
  1816. 1815 <-> 378
  1817. 1816 <-> 796, 1314
  1818. 1817 <-> 601, 1451
  1819. 1818 <-> 357
  1820. 1819 <-> 200, 1858
  1821. 1820 <-> 1834, 1904
  1822. 1821 <-> 1821
  1823. 1822 <-> 10, 859
  1824. 1823 <-> 694, 801, 864
  1825. 1824 <-> 353, 713, 909
  1826. 1825 <-> 224, 357
  1827. 1826 <-> 254, 1230
  1828. 1827 <-> 739, 793, 1221
  1829. 1828 <-> 1004, 1948
  1830. 1829 <-> 373
  1831. 1830 <-> 980
  1832. 1831 <-> 1831
  1833. 1832 <-> 140
  1834. 1833 <-> 1570
  1835. 1834 <-> 290, 1820
  1836. 1835 <-> 472, 1008
  1837. 1836 <-> 1420, 1963
  1838. 1837 <-> 1352
  1839. 1838 <-> 495
  1840. 1839 <-> 960
  1841. 1840 <-> 789, 1089, 1611
  1842. 1841 <-> 340, 1808
  1843. 1842 <-> 65, 1253
  1844. 1843 <-> 296
  1845. 1844 <-> 302, 1628
  1846. 1845 <-> 432, 892, 1971
  1847. 1846 <-> 330, 669, 1004, 1783
  1848. 1847 <-> 525
  1849. 1848 <-> 169, 996, 1304, 1711
  1850. 1849 <-> 57, 96
  1851. 1850 <-> 1517, 1972
  1852. 1851 <-> 32, 657
  1853. 1852 <-> 518
  1854. 1853 <-> 436, 692, 1042
  1855. 1854 <-> 354, 1854
  1856. 1855 <-> 619, 1855, 1893
  1857. 1856 <-> 745
  1858. 1857 <-> 1310
  1859. 1858 <-> 1458, 1731, 1819
  1860. 1859 <-> 555, 1004
  1861. 1860 <-> 440, 1714
  1862. 1861 <-> 228, 814
  1863. 1862 <-> 722, 1464, 1692
  1864. 1863 <-> 509
  1865. 1864 <-> 930, 1265, 1326
  1866. 1865 <-> 1552
  1867. 1866 <-> 389, 1784
  1868. 1867 <-> 1285, 1918
  1869. 1868 <-> 578, 1770, 1957
  1870. 1869 <-> 1660
  1871. 1870 <-> 672, 1664
  1872. 1871 <-> 799, 1006, 1749
  1873. 1872 <-> 1088
  1874. 1873 <-> 52, 569
  1875. 1874 <-> 1896
  1876. 1875 <-> 715, 963, 1177
  1877. 1876 <-> 94, 1189
  1878. 1877 <-> 392, 1371, 1484
  1879. 1878 <-> 41, 579, 1471
  1880. 1879 <-> 652
  1881. 1880 <-> 1162, 1880
  1882. 1881 <-> 1236
  1883. 1882 <-> 1299, 1349
  1884. 1883 <-> 482
  1885. 1884 <-> 348, 1670
  1886. 1885 <-> 757
  1887. 1886 <-> 117, 737, 1463
  1888. 1887 <-> 934, 1178
  1889. 1888 <-> 717
  1890. 1889 <-> 1899
  1891. 1890 <-> 754, 1201
  1892. 1891 <-> 155, 504
  1893. 1892 <-> 446, 507
  1894. 1893 <-> 1855
  1895. 1894 <-> 182
  1896. 1895 <-> 378, 650
  1897. 1896 <-> 524, 1874
  1898. 1897 <-> 1922
  1899. 1898 <-> 446
  1900. 1899 <-> 1713, 1889, 1899
  1901. 1900 <-> 1900
  1902. 1901 <-> 1295
  1903. 1902 <-> 247
  1904. 1903 <-> 37, 862, 1666
  1905. 1904 <-> 1820
  1906. 1905 <-> 502
  1907. 1906 <-> 294, 978
  1908. 1907 <-> 526, 566, 1128, 1348, 1400, 1546
  1909. 1908 <-> 1908
  1910. 1909 <-> 995, 1021, 1354
  1911. 1910 <-> 407
  1912. 1911 <-> 1204, 1621
  1913. 1912 <-> 647, 814, 852, 1016, 1262
  1914. 1913 <-> 565, 938, 1331
  1915. 1914 <-> 1126
  1916. 1915 <-> 411, 456, 1551
  1917. 1916 <-> 211
  1918. 1917 <-> 1033, 1946
  1919. 1918 <-> 1867
  1920. 1919 <-> 901, 1653
  1921. 1920 <-> 278, 653
  1922. 1921 <-> 47
  1923. 1922 <-> 1433, 1897
  1924. 1923 <-> 1654
  1925. 1924 <-> 339
  1926. 1925 <-> 1602, 1951
  1927. 1926 <-> 352, 1294
  1928. 1927 <-> 684, 1348
  1929. 1928 <-> 975
  1930. 1929 <-> 781, 899
  1931. 1930 <-> 1475, 1629, 1698
  1932. 1931 <-> 949
  1933. 1932 <-> 977
  1934. 1933 <-> 1059, 1087, 1612
  1935. 1934 <-> 756, 1934
  1936. 1935 <-> 145, 1448, 1756
  1937. 1936 <-> 379
  1938. 1937 <-> 1785
  1939. 1938 <-> 1547
  1940. 1939 <-> 532, 1686
  1941. 1940 <-> 429
  1942. 1941 <-> 431
  1943. 1942 <-> 1740, 1942
  1944. 1943 <-> 1064, 1810
  1945. 1944 <-> 1015
  1946. 1945 <-> 409, 1057, 1398, 1700
  1947. 1946 <-> 592, 601, 690, 1917
  1948. 1947 <-> 1423, 1809
  1949. 1948 <-> 883, 895, 1777, 1828
  1950. 1949 <-> 1949
  1951. 1950 <-> 1950
  1952. 1951 <-> 65, 1031, 1925
  1953. 1952 <-> 327
  1954. 1953 <-> 1323
  1955. 1954 <-> 15, 630, 1155
  1956. 1955 <-> 277, 1767, 1811
  1957. 1956 <-> 522, 900
  1958. 1957 <-> 1044, 1196, 1868
  1959. 1958 <-> 1340, 1506, 1781
  1960. 1959 <-> 125, 679
  1961. 1960 <-> 57, 194, 534, 863, 1960
  1962. 1961 <-> 1028
  1963. 1962 <-> 781, 1018, 1788
  1964. 1963 <-> 372, 1186, 1368, 1836
  1965. 1964 <-> 1012, 1964
  1966. 1965 <-> 484, 784
  1967. 1966 <-> 527, 1595
  1968. 1967 <-> 1431, 1967
  1969. 1968 <-> 587
  1970. 1969 <-> 656, 1604
  1971. 1970 <-> 882
  1972. 1971 <-> 539, 1280, 1416, 1721, 1845
  1973. 1972 <-> 889, 1039, 1186, 1850
  1974. 1973 <-> 251, 332, 629
  1975. 1974 <-> 1183
  1976. 1975 <-> 1975
  1977. 1976 <-> 1011
  1978. 1977 <-> 174, 579
  1979. 1978 <-> 662, 1282
  1980. 1979 <-> 205, 1065, 1074, 1677
  1981. 1980 <-> 268, 549, 833, 1143
  1982. 1981 <-> 786, 928
  1983. 1982 <-> 634, 1539
  1984. 1983 <-> 35, 1983
  1985. 1984 <-> 1984
  1986. 1985 <-> 477, 1985
  1987. 1986 <-> 257, 1656, 1986
  1988. 1987 <-> 1987
  1989. 1988 <-> 825
  1990. 1989 <-> 1624, 1668
  1991. 1990 <-> 1357
  1992. 1991 <-> 66, 738, 905, 1467
  1993. 1992 <-> 744, 950, 1592
  1994. 1993 <-> 779
  1995. 1994 <-> 326
  1996. 1995 <-> 1463
  1997. 1996 <-> 713
  1998. 1997 <-> 90, 513
  1999. 1998 <-> 447, 1500, 1722
  2000. 1999 <-> 12, 1537"""
  2001.  
  2002. TEST = """0 <-> 2
  2003. 1 <-> 1
  2004. 2 <-> 0, 3, 4
  2005. 3 <-> 2, 4
  2006. 4 <-> 2, 3, 6
  2007. 5 <-> 6
  2008. 6 <-> 4, 5"""
  2009.  
  2010. from collections import defaultdict
  2011.  
  2012.  
  2013. def part_one(input):
  2014. connections = {}
  2015. group_zero = set("0")
  2016. for line in input.splitlines():
  2017. print line
  2018. port, cons = line.split(" <-> ")
  2019. cons = set(cons.split(", "))
  2020. ports = cons | set([port,])
  2021. print ports
  2022. if ports & group_zero:
  2023. group_zero = group_zero | ports
  2024. connections[port] = cons
  2025.  
  2026. while True:
  2027. added = False
  2028. for port, cons in connections.items():
  2029. if port not in group_zero:
  2030. print "checking:", port, cons #, group_zero
  2031. ports = cons | set([port,])
  2032. print ports
  2033. if ports & group_zero:
  2034. group_zero = group_zero | ports
  2035. print " added"
  2036. added = True
  2037. if not added:
  2038. break
  2039.  
  2040. return len(group_zero)
  2041.  
  2042. print part_one(TEST)
  2043. print part_one(INPUT)
  2044.  
  2045.  
  2046. def part_two(input):
  2047. groups = []
  2048. def _add_group(ports, groups):
  2049. for group in groups:
  2050. if ports & group:
  2051. group |= ports
  2052. break
  2053. else:
  2054. groups.append(ports)
  2055.  
  2056. for line in input.splitlines():
  2057. print line
  2058. port, cons = line.split(" <-> ")
  2059. cons = set(cons.split(", "))
  2060. ports = cons | set([port,])
  2061. _add_group(ports, groups)
  2062.  
  2063.  
  2064. while True:
  2065. print "cycle"
  2066. coalesced = [groups[0],]
  2067. for ports in groups[1:]:
  2068. _add_group(ports, coalesced)
  2069. if coalesced == groups:
  2070. break
  2071. groups = coalesced
  2072.  
  2073. return len(groups)
  2074. print part_two(TEST)
  2075. print part_two(INPUT)
Add Comment
Please, Sign In to add comment