From 436e8ab9d558c73d022b4cfe5569c673c06d5509 Mon Sep 17 00:00:00 2001 From: Kees van Kempen Date: Sat, 28 Dec 2024 23:46:33 +0100 Subject: [PATCH] 2024(7): fetch assignment --- 2024/07/README.md | 40 +++ 2024/07/input | 850 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 890 insertions(+) create mode 100644 2024/07/README.md create mode 100755 2024/07/input diff --git a/2024/07/README.md b/2024/07/README.md new file mode 100644 index 0000000..07e6af0 --- /dev/null +++ b/2024/07/README.md @@ -0,0 +1,40 @@ +# Day 7: Bridge Repair + +[https://adventofcode.com/2024/day/7](https://adventofcode.com/2024/day/7) + +## Description + +### Part One + +The Historians take you to a familiar [rope bridge](https://adventofcode.com/2022/day/9) over a river in the middle of a jungle. The Chief isn't on this side of the bridge, though; maybe he's on the other side? + +When you go to cross the bridge, you notice a group of engineers trying to repair it. (Apparently, it breaks pretty frequently.) You won't be able to cross until it's fixed. + +You ask how long it'll take; the engineers tell you that it only needs final calibrations, but some young elephants were playing nearby and _stole all the operators_ from their calibration equations! They could finish the calibrations if only someone could determine which test values could possibly be produced by placing any combination of operators into their calibration equations (your puzzle input). + +For example: + + 190: 10 19 + 3267: 81 40 27 + 83: 17 5 + 156: 15 6 + 7290: 6 8 6 15 + 161011: 16 10 13 + 192: 17 8 14 + 21037: 9 7 18 13 + 292: 11 6 16 20 + + +Each line represents a single equation. The test value appears before the colon on each line; it is your job to determine whether the remaining numbers can be combined with operators to produce the test value. + +Operators are _always evaluated left-to-right_, _not_ according to precedence rules. Furthermore, numbers in the equations cannot be rearranged. Glancing into the jungle, you can see elephants holding two different types of operators: _add_ (`+`) and _multiply_ (`*`). + +Only three of the above equations can be made true by inserting operators: + +* `190: 10 19` has only one position that accepts an operator: between `10` and `19`. Choosing `+` would give `29`, but choosing `*` would give the test value (`10 * 19 = 190`). +* `3267: 81 40 27` has two positions for operators. Of the four possible configurations of the operators, _two_ cause the right side to match the test value: `81 + 40 * 27` and `81 * 40 + 27` both equal `3267` (when evaluated left-to-right)! +* `292: 11 6 16 20` can be solved in exactly one way: `11 + 6 * 16 + 20`. + +The engineers just need the _total calibration result_, which is the sum of the test values from just the equations that could possibly be true. In the above example, the sum of the test values for the three equations listed above is _`3749`_. + +Determine which equations could possibly be true. _What is their total calibration result?_ diff --git a/2024/07/input b/2024/07/input new file mode 100755 index 0000000..46ee1d0 --- /dev/null +++ b/2024/07/input @@ -0,0 +1,850 @@ +85811978: 67 804 531 9 49 3 80 +73466405: 753 703 1 6 4 25 48 7 5 +156346954: 9 8 9 5 7 1 59 6 39 3 637 +72954: 72 5 19 393 38 5 +425160: 369 2 8 36 1 2 5 14 49 4 +1651: 896 265 447 5 5 30 +77502824880: 9 574 9 6 8 8 7 2 26 8 5 3 +348742774219: 4 7 3 6 1 4 9 3 88 3 2 220 +3038019656: 5 98 62 19 655 +70811: 5 5 7 811 2 +243942628315: 107 5 43 5 506 283 13 +25585851908: 668 9 43 218 4 9 1 454 +10330057658: 25 68 733 41 7 8 66 74 +63053242: 934 75 68 844 4 9 +19783820067: 9 9 8 5 548 8 3 8 1 35 7 6 +365376083045: 9 7 16 7 4 8 81 173 6 6 +1100508127: 8 86 664 71 77 81 346 +1250674543: 9 2 6 164 257 1 5 4 23 6 +19692110403: 26 8 76 76 537 10 403 +7541130571011: 70 1 3 7 8 8 197 8 2 3 7 8 +1183060: 6 7 2 80 1 5 567 1 1 863 +25855819341: 20 332 7 39 69 733 61 +1699: 65 5 507 857 10 +41171445354: 27 7 4 7 5 3 8 151 17 3 +105845775: 42 10 18 4 5 4 3 72 7 5 +93594789: 935 87 6 911 875 +1223047: 80 3 6 34 4 3 8 84 14 6 1 +5564: 3 5 581 4 2 796 +17723: 59 296 245 14 +24988: 6 517 8 74 98 +3414996: 53 5 533 84 960 4 4 6 6 +9194891: 89 73 92 362 92 +13123937: 356 2 4 8 1 3 8 6 33 23 6 +11170: 10 99 3 78 96 +23818429663: 8 8 8 2 1 3 1 9 51 413 4 9 +91858839: 130 8 30 4 4 2 7 245 8 +1920728552: 3 877 1 350 73 +32884860232: 5 81 8 2 482 8 60 229 +15847412: 59 395 68 8 4 +11056: 8 46 6 3 +371746: 74 5 5 7 41 76 359 70 +451578617234: 45 1 578 61 72 32 +757050: 4 8 5 493 9 9 502 35 21 +68825: 2 6 2 2 19 944 9 8 2 34 9 +3700841826: 9 44 2 8 223 9 4 6 6 3 8 6 +4540553: 8 470 8 9 535 1 7 +12963: 9 2 24 1 3 +15627026: 4 21 2 618 3 7 42 632 1 +161526: 388 415 19 487 1 +13027831: 1 182 9 3 525 4 5 8 6 33 +406144725: 1 3 1 31 44 728 +1039641: 91 1 4 3 8 109 +313574978904: 37 6 234 297 242 12 +23627394: 2 7 9 4 6 1 185 260 6 1 9 +38034408064: 4 4 27 5 72 3 4 4 6 8 6 7 +67383603: 673 83 577 6 20 +2106195085: 21 6 5 1 4 5 39 5 1 6 5 5 +2023793864: 70 79 815 386 449 +361025280: 5 8 2 1 1 653 296 8 165 +1012804: 17 84 276 5 37 +525258: 97 47 7 2 8 7 2 452 9 +18219274: 11 38 7 16 74 +10517955: 7 2 85 7 9 32 19 60 1 5 2 +6574: 50 39 25 4 2 25 7 7 8 +2085108579: 68 4 2 9 42 65 39 4 93 6 +3083201: 79 3 2 78 175 83 +3177504169: 50 15 1 640 99 16 9 +7459614539: 5 9 6 6 74 1 48 7 3 4 6 11 +5244630: 56 428 43 252 4 2 +546876206: 897 7 702 556 861 +89772611: 4 61 2 319 1 4 1 7 6 3 86 +1427: 91 527 14 743 52 +6441982536: 70 3 20 4 3 1 7 3 27 1 88 +421203373165: 4 353 783 626 502 82 +1286551635392: 680 71 5 1 43 8 6 315 +13517391965: 5 79 527 443 67 +22669161: 72 381 904 45 8 +6139361: 1 8 89 163 1 985 7 45 8 +22883248083: 86 990 7 58 662 +100402: 89 8 5 4 41 3 57 7 5 10 +1789472: 5 4 5 624 4 77 2 9 681 8 +55944149582: 8 9 723 9 8 578 8 9 965 +353837: 997 44 355 8 23 30 +6025: 74 5 7 7 5 +2455969: 79 5 6 85 45 52 1 +819281643: 25 4 6 269 3 564 9 1 7 8 +6524: 529 9 5 708 56 913 81 +268605: 4 13 542 649 9 4 6 4 4 5 +218340: 9 55 4 8 2 2 5 9 379 2 6 +1049841: 28 3 304 87 36 621 +1289: 17 2 7 2 813 +4122: 2 38 50 3 866 5 4 257 9 +1276513: 5 1 5 207 5 7 373 861 7 +138362275846: 7 6 190 2 49 7 4 8 928 9 +67686: 29 28 5 7 81 942 +1427417255: 5 9 863 6 7 2 2 7 375 1 4 +1206080928: 6 32 8 98 1 32 4 8 5 3 6 +166735: 40 38 1 2 199 466 9 2 5 +13776226010: 8 5 776 225 906 103 +863328520: 9 9 80 110 294 131 8 +6398706450: 42 18 37 41 450 +189132: 25 2 7 1 30 +1156: 6 68 7 52 328 361 +54289451465: 78 83 9 1 8 3 1 468 6 6 7 +17641: 13 202 8 7 431 +1383645273: 15 8 8 66 4 4 18 1 7 83 +429159: 5 8 65 604 9 69 9 33 9 6 +2062053174: 59 56 868 68 6 719 +2166: 3 722 1 +45786048: 300 886 639 5 3 8 627 +60390422: 637 32 9 329 742 9 71 +558966: 3 28 5 3 34 5 5 +10682096382: 6 68 7 7 8 833 4 9 3 667 +1456125812: 309 589 14 720 8 53 +2107122: 3 834 6 7 5 265 4 5 42 +6613848: 4 34 47 23 776 +193407809599: 474 9 519 524 400 +161915: 5 5 448 4 2 8 1 63 7 8 7 8 +1635114600: 9 596 4 2 893 4 9 7 6 2 +81627: 20 547 4 48 8 652 9 7 +3340300: 754 5 886 25 55 +88485966144: 74 7 7 6 59 36 5 93 6 8 4 +7649280000: 3 818 5 4 800 8 9 5 4 8 +131533834: 13 123 6 5 914 3 92 +24857104: 507 7 5 874 925 17 4 2 +549356975: 27 467 840 2 2 9 94 32 +21209: 5 655 3 991 4 7 384 +479336748448: 47 9 33 67 4 2 6 448 +148: 6 4 52 12 2 +20979497: 999 70 3 8 41 5 +2220976: 319 15 97 92 7 58 8 +137031079: 518 273 51 48 19 1 +5321646: 804 2 3 1 66 +216457507: 29 45 25 294 7 +117360: 3 7 4 9 326 1 +519317832969: 36 561 2 6 6 9 966 4 1 9 +12187232: 258 248 8 7 34 43 8 2 1 +51879617766: 9 5 191 9 59 545 98 9 2 +5269740: 940 8 8 700 28 8 6 1 97 +259713955: 1 6 5 98 1 3 6 4 60 244 8 +4268160: 8 7 2 576 247 +11375: 1 322 929 903 120 5 +853851480725: 9 61 781 692 8 411 4 3 +576521: 575 19 80 53 2 +880: 64 7 7 73 89 +393292965601: 85 984 25 261 701 +7786: 356 5 328 9 887 +21379513275: 21 379 51 323 4 5 +3977000: 9 476 8 5 205 +3203556698: 91 53 5 7 6 6 98 +16788716: 393 9 16 1 261 8 927 +2125937: 5 2 4 7 82 7 2 32 6 200 3 +593127: 50 2 53 59 +5872870669: 6 49 31 247 6 7 82 +5504232: 9 61 6 8 234 +53722129: 7 8 1 7 9 3 5 7 9 4 24 35 +299883: 526 57 3 62 +12519835: 4 9 5 1 8 3 5 8 579 39 8 9 +261795: 163 22 73 1 3 13 +390766420: 5 91 49 97 8 620 641 +2790453: 74 7 739 660 5 13 3 +22250151: 87 586 3 3 993 33 +323547: 6 48 4 3 4 4 9 1 69 713 7 +1260002: 2 2 609 9 3 635 5 200 2 +732534: 3 244 5 3 1 +925754: 110 5 53 7 6 8 7 902 +1866511: 466 6 4 61 52 +275958984: 6 548 593 6 84 +124745: 64 55 9 964 375 980 +851895: 7 1 844 894 +75155934: 8 1 7 2 8 2 919 5 8 5 5 77 +6714: 1 3 3 6 6 987 6 +1033822127521: 6 791 7 9 203 3 5 8 9 1 4 +241594667: 364 9 73 9 7 571 1 2 9 +702933049: 5 731 36 453 9 91 +6464844512: 290 2 9 944 79 9 7 32 +435708507: 574 4 2 8 741 507 +484806: 2 100 7 1 679 +6108: 100 8 1 7 501 +761686: 9 4 8 9 687 +2744756: 6 2 3 80 953 98 5 7 1 6 +53848: 6 1 57 778 9 6 284 7 1 +404033: 39 1 600 85 619 96 3 5 +46852297: 7 426 808 9 3 2 6 996 3 +4973142: 19 48 7 779 6 +1754936: 494 67 1 1 59 1 4 9 53 +16831: 1 68 31 +267305104: 668 2 45 5 2 2 9 866 9 8 +283465744: 7 253 647 1 9 2 231 9 8 +9832443204627: 2 5 46 94 43 20 462 4 +323748810: 585 3 6 342 55 +5558452: 6 4 4 89 2 458 6 9 45 6 +676501: 5 67 475 311 500 +106349815575: 44 6 2 866 1 308 89 +25146741: 355 9 787 4 203 4 9 3 3 +149529675: 75 2 23 5 3 7 4 95 9 8 7 +5503: 5 4 72 1 32 +71193655: 23 310 378 936 55 +63312: 891 7 89 3 49 +48306199: 7 1 4 38 61 876 4 8 23 +353546: 53 722 456 76 70 +2123913: 9 840 365 2 134 9 4 +86294320: 7 82 3 9 64 9 87 6 667 +37836288: 76 2 984 8 8 1 7 6 782 +393689594: 7 873 72 7 5 94 +207868056676: 577 41 6 75 4 7 6 60 18 +142534286: 4 73 509 959 3 31 +20992095208: 76 683 7 3 8 9 2 921 9 1 +203109452: 8 1 5 7 7 76 1 8 6 5 636 7 +442929808: 9 8 3 603 6 75 8 7 3 1 4 8 +1726000601: 86 4 416 36 461 5 +16224: 1 77 4 52 1 +33949150: 5 53 1 4 25 46 53 +2754: 913 85 6 2 4 740 2 +1205296: 2 7 4 56 6 8 4 3 2 8 506 6 +6583032302352: 886 697 447 542 44 +83921: 19 353 2 406 84 68 9 +2183453079: 7 6 171 6 8 9 9 97 5 7 8 3 +42546: 74 574 29 40 +9731876021: 2 1 4 39 8 2 5 2 380 2 2 2 +9862002: 340 2 5 69 29 +613: 2 1 602 8 +4325: 3 2 2 9 1 2 86 9 4 79 466 +294466199041: 895 38 88 26 90 37 +1977: 9 7 5 5 9 6 2 +13925520: 9 24 30 7 307 +1733: 46 4 5 3 1 4 5 7 760 2 32 +1286430394150: 202 38 5 55 95 682 47 +25806: 96 8 14 33 +8617: 9 7 8 733 6 +96085613: 4 89 6 262 968 +39492364: 91 47 1 62 82 91 +673792: 6 736 88 50 51 +6364216459: 2 9 22 32 7 7 617 474 1 +353645210501: 1 8 42 9 2 584 5 691 89 +51615073921674: 666 775 73 921 677 +950835: 4 1 51 6 62 6 +1396871: 7 70 7 4 79 62 673 28 9 +4718376412: 471 837 63 57 12 46 +357405: 103 2 32 2 11 829 93 6 +49244571376230: 9 592 6 62 2 46 18 9 2 8 +133261: 1 33 9 4 790 83 8 450 +192720970560: 81 3 85 5 1 45 37 64 +38415125: 48 7 73 256 15 1 22 +4456: 6 666 191 162 107 +33021513375: 8 566 5 6 81 378 5 5 75 +63666294: 1 8 3 3 6 5 978 650 2 5 5 +3959016: 93 4 5 6 9 2 53 5 1 946 6 +1064679129: 48 17 961 38 679 131 +44875958: 5 1 9 228 7 2 8 7 59 59 +131547537: 3 583 411 61 3 +773821253: 356 315 8 69 54 +216004: 5 4 5 4 3 7 901 7 4 5 7 2 +478123: 47 79 4 18 3 +637579: 635 2 580 2 1 +879205: 83 4 914 6 5 +13160: 77 7 2 8 5 6 7 212 2 9 5 2 +863: 8 27 35 +59158: 6 52 9 6 472 +646568: 63 95 3 1 2 3 6 2 40 8 68 +2657189: 2 2 6 1 7 1 5 192 527 2 +51994: 51 1 5 662 9 3 +19067866: 299 5 411 7 83 3 4 +74979: 74 92 5 4 6 +2070899: 22 7 71 6 5 897 +66216: 4 37 4 9 70 289 924 6 4 +8779669: 3 5 77 966 7 +71243676: 653 6 429 2 252 +27484578: 5 5 9 1 877 5 7 286 4 2 +5934307908171: 2 9 6 7 4 6 1 58 163 3 5 5 +12082324: 10 12 82 3 24 +105123: 6 3 9 9 5 2 29 472 4 8 3 +243625343: 886 1 4 239 644 67 76 +36030506006: 1 2 4 8 807 2 3 5 3 9 4 53 +6789: 6 1 82 586 1 36 +4665756962: 16 164 7 8 6 6 3 982 1 +1965103: 272 8 7 29 7 +15742: 5 628 7 5 5 2 +76: 2 4 6 21 9 +567810: 4 36 8 123 811 +9457507: 4 85 975 2 5 +57303: 9 470 79 2 6 +10846: 2 3 1 6 986 +761661198: 1 761 660 997 198 +1285017: 64 2 46 3 23 7 73 2 76 +212676738560: 8 29 16 5 299 871 44 +353: 1 90 185 61 19 +163603080: 23 392 7 1 6 9 1 3 8 2 4 9 +20473710: 5 375 137 245 3 907 +774545: 774 49 4 3 12 +1827072178: 30 4 5 12 60 1 75 +5012796: 6 6 3 9 22 9 93 +14066: 3 39 29 10 6 16 4 7 3 5 2 +385110: 47 69 607 73 39 +229552567559: 5 22 85 52 567 542 20 +579200: 3 88 2 2 5 9 9 91 1 9 8 40 +252957204815: 1 2 4 7 6 1 965 8 4 815 +142988321: 9 8 899 54 9 303 797 6 +847: 108 3 277 457 2 +14798683458: 588 437 65 9 654 886 +270339746564: 21 1 120 29 27 2 8 8 5 +62208: 58 204 139 85 128 +50275: 901 40 79 6 49 1 +166181435223: 4 944 836 13 1 8 44 24 +11497347: 5 3 1 136 6 2 79 8 3 2 1 +148094144: 7 2 7 9 5 2 1 13 7 802 4 8 +6385854728: 96 76 9 34 718 657 +1195543: 7 1 6 94 43 8 +339: 224 27 70 7 3 1 7 +148990: 955 534 8 9 +10042476: 956 3 8 7 3 3 5 459 10 5 +81175: 270 5 30 22 5 1 +16110: 1 5 3 3 6 9 1 835 2 54 9 1 +1492: 7 3 48 388 96 +1647902966: 75 2 89 5 8 3 6 85 5 653 +1077129: 5 75 2 37 9 1 9 7 32 +791717850843: 91 25 33 6 70 626 84 1 +124106: 738 7 71 8 19 74 +661214545: 581 80 2 145 39 5 +7494240: 5 69 9 42 37 +584: 58 4 2 9 8 +2839549928: 8 185 8 5 201 4 867 83 +4714201511: 96 1 80 422 49 488 +20895480: 6 8 69 2 41 4 7 9 2 8 260 +17409: 3 9 5 4 11 +5375: 15 40 5 2 4 2 430 103 +1360680: 98 3 5 94 2 435 +340465: 4 80 58 18 9 104 +27582336542: 432 23 9 5 319 7 7 2 2 +263195361143: 979 4 5 9 8 6 84 6 3 141 +5199570: 306 944 2 9 9 5 1 1 2 2 +92181420: 5 15 4 215 654 6 871 6 +223771680: 34 90 831 22 4 +338291610: 618 78 401 6 7 116 +30270441: 61 5 1 762 99 +640512: 5 4 38 1 1 4 8 906 6 8 8 9 +163152: 7 1 5 609 179 4 +214172: 1 744 2 286 530 +36045224662301: 94 4 5 8 8 2 8 8 72 6 9 53 +4597833: 35 6 4 97 831 +19186328550: 7 316 2 175 8 9 59 549 +367: 20 11 8 3 77 39 +15385550: 8 20 6 58 237 9 4 2 4 1 4 +69409186: 4 88 6 961 737 +738: 2 97 5 43 5 +280817856: 99 94 16 41 46 +630: 1 41 1 3 5 +9754563: 6 32 508 7 4 7 1 55 97 +899828169870: 350 814 48 15 94 7 +7875: 261 42 26 +678910: 75 2 90 644 48 +614968025562: 6 7 7 72 2 5 6 4 760 581 +10195287: 6 466 270 5 16 8 1 78 +124118229940443: 569 951 305 9 39 714 +9835845: 23 417 2 42 616 4 +586869057: 586 861 7 73 55 +2123426350: 5 401 553 309 36 83 3 +640205634: 9 5 2 8 7 47 8 7 84 720 5 +1791790012015: 356 92 86 69 8 869 91 +1243: 348 45 5 5 6 1 37 797 +15214059720: 1 1 1 535 67 6 4 8 9 5 60 +3389454395: 338 9 383 2 3 708 1 8 8 +57128: 56 39 677 37 2 +380928038400: 2 588 29 895 160 78 +42955917: 43 8 13 71 9 84 +26606: 50 2 53 +783078248: 5 1 9 7 5 5 2 7 5 6 322 8 +109962: 58 2 27 591 9 +1634723012: 3 6 58 3 6 17 27 9 21 9 +6917: 686 4 5 6 5 4 +1164713: 3 4 175 255 41 65 108 +365681231891: 457 8 808 4 309 9 91 +462: 71 349 7 37 +5702436: 9 9 64 9 36 +147305: 40 396 527 9 2 +5729: 1 5 42 9 300 1 +251737: 3 7 2 592 2 729 +64670: 7 9 79 4 3 872 +288: 8 7 5 3 4 +4795197668: 9 6 6 7 5 7 8 399 3 657 8 +449358363770: 70 3 1 2 759 779 3 7 73 +91714338: 9 2 73 7 14 340 +41404: 25 1 36 1 4 44 +664268: 18 48 37 5 64 4 +66386: 10 82 56 448 82 +20179815040: 5 765 92 685 77 +101: 41 1 51 4 5 +52354713: 529 8 25 57 164 74 9 +84: 46 7 11 6 8 6 +26896320: 72 3 88 5 283 +465606: 21 277 3 8 8 +8067652: 97 102 66 30 3 9 36 16 +14743392: 6 5 959 4 2 442 9 60 76 +48314112: 4 6 172 362 2 7 4 6 56 4 +16351773506: 8 2 1 4 3 9 9 1 7 7 350 7 +351357: 351 35 7 +179770802: 851 8 7 2 6 23 8 5 55 8 +38016: 208 5 5 29 6 84 +610049514: 739 917 3 9 392 2 933 +8448231848844: 86 2 7 4 5 5 6 60 3 7 1 4 +1739905480: 21 962 2 618 1 2 790 +232573366: 95 9 4 8 8 607 2 6 2 6 7 4 +125469160: 246 34 61 5 4 3 +2269302817: 275 823 605 2 820 +911306021758: 229 2 74 41 54 35 995 +278555208731: 377 2 82 68 490 8 7 31 +12794881: 97 56 2 6 8 1 3 1 98 1 1 +14568057522: 77 534 81 36 9 729 6 +314281: 31 4 266 3 10 1 +159479: 6 3 3 1 9 70 9 31 5 1 72 +835239840: 43 502 8 60 24 +5018181: 8 778 3 3 9 352 7 2 6 7 8 +476736: 7 39 2 23 624 +2010624094: 4 922 270 80 7 24 9 4 +79354: 24 9 577 48 6 +6150395: 9 2 6 9 52 625 6 48 8 11 +1158420: 7 5 6 1 416 5 1 9 2 30 43 +872125: 85 89 13 2 8 68 5 992 +474526: 62 32 7 9 78 1 75 +69935: 3 3 6 4 6 4 3 50 8 97 80 +72403403: 1 63 430 5 1 389 373 +1174318: 3 728 63 5 +1013518: 74 5 855 9 10 3 5 58 +1539780720: 3 32 77 89 72 8 719 +17305: 5 56 8 4 7 +15812890: 8 796 944 91 8 267 82 +7686756000: 3 150 5 658 8 649 1 +2119017933990: 26 815 179 33 988 +16622074: 83 31 52 220 75 +31778151: 4 3 940 37 6 468 6 7 1 1 +1845053: 621 3 99 63 7 48 1 +869400928: 2 1 9 1 3 12 3 840 925 3 +92532167: 925 3 21 65 +351880890: 76 926 16 5 2 5 93 +7520: 75 2 10 +1892911238: 93 5 1 911 83 3 78 238 +51720: 957 9 9 96 6 2 23 55 4 +1422124751795: 4 163 59 401 579 5 +286891: 521 55 1 54 7 277 +6563450: 9 226 6 3 3 2 4 6 1 2 745 +153747006: 6 1 12 1 286 21 +1198507192: 16 749 592 479 92 +20: 4 3 8 +32452: 6 3 9 4 52 +54772353006: 5 2 81 1 4 614 7 858 7 +5192: 1 85 425 1 91 +1509401: 5 668 8 6 5 5 18 2 87 8 4 +15574: 41 24 90 73 +327630: 1 9 9 959 335 +12266801: 28 2 83 984 30 80 5 7 +1619: 270 5 269 +24219648: 6 7 673 7 52 9 36 +404273624: 928 80 75 40 4 34 7 17 +14795: 327 40 6 757 5 +88430129: 1 684 21 5 3 5 26 5 +85146944: 5 7 1 76 9 719 2 8 149 8 +189189814: 2 8 2 25 2 169 16 4 814 +2262954027: 6 58 59 63 8 41 63 81 +760750: 5 380 759 8 66 2 81 5 5 +49316374379717: 8 4 744 775 61 8 9 954 +78734: 960 82 6 1 9 +24077: 68 915 24 43 442 +5094565: 38 200 8 55 42 26 76 +40364: 83 485 26 7 76 +20577: 41 1 6 5 +305137: 30 44 1 46 591 +6695: 6 45 8 8 157 +323954895: 4 8 188 241 4 611 251 +528210151: 260 7 5 9 4 9 4 9 4 3 50 +830: 12 64 6 64 +585461540: 5 61 62 6 516 791 3 2 +46327058: 84 22 413 343 75 14 8 +588876: 3 500 79 4 372 +1201542120: 985 75 659 1 31 8 215 +6209892: 5 9 177 7 358 24 +46123294210: 48 259 53 8 203 70 +329311: 68 1 745 405 6 40 +28868207994: 719 78 609 90 3 82 69 +724053: 81 39 844 751 80 9 +495392: 4 6 4 20 7 5 387 8 +63748932: 732 40 83 538 82 26 +42840482: 32 77 8 9 69 38 3 7 +2037: 816 2 34 250 1 934 +4263: 4 56 7 958 3 +1696: 1 4 810 881 +10114912: 8 294 1 5 86 48 78 4 1 1 +53196: 5 2 956 197 43 +40406: 600 8 938 9 5 12 7 7 9 +749034565: 832 26 9 564 1 +986992182: 24 78 905 36 46 297 +76375175: 38 18 7 587 2 +355432: 38 334 2 7 4 +1736490: 2 3 168 648 7 +2975711: 8 208 3 1 29 583 3 47 +2992: 8 5 7 2 2 5 +579174167880: 1 18 1 63 890 173 506 +1587368146: 330 7 48 8 145 +1730: 96 2 1 47 9 6 410 +289645: 922 5 855 1 53 +56200: 4 585 94 6 804 1 7 17 +214319: 77 419 8 6 9 47 +5664962: 7 59 5 7 605 3 9 3 3 8 3 5 +56924967516: 3 7 8 1 75 1 710 6 1 5 1 4 +1566522: 969 3 70 2 22 522 +289885: 6 512 3 94 795 40 +597168924: 703 51 792 918 4 +2110: 210 6 4 +1043795: 2 59 30 5 3 40 6 1 7 2 3 +59896736: 643 9 6 459 19 82 643 +1642: 61 49 6 974 8 +2661: 5 33 8 36 20 6 +162: 18 67 6 9 5 57 +7360086: 36 4 876 2 70 419 3 9 +345683: 3 1 456 8 2 +16142248: 6 56 593 39 81 +2286258624: 387 20 9 876 624 +5290786333: 60 108 3 43 82 5 6 199 +14759998853: 5 2 7 2 5 61 6 3 6 944 8 6 +472830: 5 74 9 19 5 7 9 6 +115617684116240: 4 3 56 7 6 105 14 5 3 80 +6608548504016: 59 7 5 1 709 5 8 60 4 13 +418: 7 2 61 6 1 +37923: 49 86 9 +1657821801: 758 439 53 9 3 4 94 13 +321632: 984 5 671 78 10 184 +19721650: 14 380 4 243 87 5 +25188: 1 5 9 95 1 8 51 390 7 5 6 +101910714: 5 86 73 6 471 8 67 3 1 7 +146799763: 50 8 3 88 7 9 8 2 3 41 4 +265825: 3 111 62 9 900 7 35 +3264487479: 3 644 987 4 568 7 9 +2785502738780: 370 59 874 73 860 +206825: 9 213 151 2 2 +10193670990: 236 5 661 405 158 +4596244830: 56 58 89 5 636 2 4 5 +2480264: 3 701 67 59 6 +157607237293: 7 7 5 6 6 65 1 6 7 4 481 +179787: 40 2 1 7 58 44 +1005: 6 65 25 2 42 +2530: 2 792 606 333 6 +2934: 7 22 19 8 +955841537: 7 8 5 5 2 880 54 4 944 +21695350: 10 3 58 9 69 397 94 +245483: 3 73 4 1 16 820 5 1 9 8 +2101: 3 1 383 26 917 9 +12691402: 7 589 513 6 640 168 1 +2844777: 308 57 3 6 47 9 5 277 +21334090: 3 8 5 410 1 13 1 54 42 1 +1929440507: 286 2 1 9 1 52 2 6 4 6 2 8 +174840285: 830 53 198 6 28 7 +2759965: 593 852 955 2 5 2 1 +40857: 8 90 3 403 59 95 +318515: 3 18 5 1 5 +26954745513: 3 1 936 41 7 7 7 9 3 7 1 +8274424: 3 79 6 9 5 356 67 +36182848: 2 87 971 559 52 8 1 +130500: 17 57 71 5 20 9 +790413: 7 3 7 1 31 4 6 570 7 34 3 +27252469015270: 8 456 255 55 76 83 9 +20945015: 393 9 4 455 13 +5892932680: 589 293 231 37 10 +290: 9 31 2 9 1 +125127: 20 938 6 13 509 +2006905741: 24 8 6 70 207 70 57 41 +441: 6 3 2 1 21 +254521149: 191 41 37 5 325 +5049: 4 183 9 3 +326065: 3 62 900 241 24 +1172326: 979 485 59 9 8 3 5 576 +2212182: 52 2 1 3 4 1 1 21 +18024527585: 2 9 7 754 2 3 5 1 72 711 +24708501: 6 1 4 9 8 361 1 6 47 4 3 +1839131714: 18 5 6 1 9 7 99 85 786 5 +9963600: 6 55 395 812 5 1 3 7 80 +29716: 50 65 262 60 68 +2524: 4 98 854 15 2 3 +577945920: 198 62 4 74 636 +82009245639: 6 48 8 8 3 2 7 4 249 6 3 9 +27675018: 48 3 25 54 16 +56419: 7 604 3 91 259 189 97 +69734789: 7 586 17 7 89 +5956136010: 3 722 1 81 404 160 3 9 +55250776394: 620 865 809 4 11 +200671582: 732 20 6 812 61 2 163 +223448: 36 8 76 3 453 8 +27838805356: 1 385 6 9 3 9 6 2 2 9 356 +715402: 89 641 5 98 1 2 +2634948008: 8 55 5 55 1 7 6 9 1 916 8 +5820434881: 245 648 8 3 1 26 94 5 1 +254205: 75 7 9 61 11 844 8 45 1 +63736: 63 7 39 +1310731125616: 25 7 68 415 75 1 613 +24075816: 71 597 4 2 71 +46277: 94 4 871 3 37 27 +9262: 21 924 9 3 754 +21901: 7 4 6 79 60 +52978399346: 7 38 2 5 8 51 7 7 985 +8072570851: 31 2 175 447 2 5 762 +37112978: 28 252 9 9 4 8 6 8 4 8 9 6 +15705901: 290 84 9 6 6 6 142 +1043832: 10 49 976 8 835 +979: 1 782 77 119 +9750086: 8 6 91 8 93 3 695 8 1 3 3 +37542120: 86 19 4 187 478 +60120271: 5 2 4 6 86 924 8 4 3 79 9 +311952: 5 70 38 3 268 +101: 2 35 50 9 5 +146649878: 24 67 912 2 54 24 +6197663869: 37 9 66 8 3 89 808 9 61 +545162774: 4 20 649 3 8 5 3 3 2 409 +29980: 2 1 1 53 36 940 4 2 5 2 +440576: 2 4 5 5 8 603 5 5 645 7 6 +162777: 31 75 4 7 +2348518: 76 309 44 1 76 +11456079774: 4 5 9 6 2 5 7 5 1 796 8 8 +9115772239: 9 14 1 9 2 2 85 1 99 3 9 6 +733278: 62 5 1 3 8 334 8 7 7 221 +2916308: 9 9 9 7 5 6 1 255 551 3 5 +60665404646: 76 535 3 616 556 89 6 +61381980: 9 4 24 9 129 894 2 435 +110288432: 26 16 9 6 9 1 38 1 6 9 70 +537602: 60 896 2 +20568434: 5 7 8 4 2 5 684 32 +261: 8 32 5 1 +1008506682: 796 288 5 1 463 2 79 +1274074273: 21 3 3 321 7 3 2 21 72 +77464358: 3 694 8 9 128 92 356 2 +5374: 177 4 48 12 7 +218885459: 324 60 57 538 9 69 +216190: 30 9 24 230 78 829 3 +1473412475: 2 7 59 4 1 9 412 4 73 +1898425856568: 13 817 97 393 94 28 6 +86701: 2 5 26 3 2 36 3 3 841 +300416: 2 48 6 407 6 +2045562822: 2 975 6 870 686 +10148325632: 680 82 13 4 350 4 35 +196032: 30 65 6 4 31 +458973043: 77 32 3 5 97 2 93 +29052225: 3 867 6 63 75 +2672332896: 21 92 479 74 7 36 61 +3318834: 228 7 7 3 3 69 +44531721: 71 1 762 7 823 5 9 +557896: 55 53 25 96 +2673737: 29 8 5 440 63 18 +30641870: 2 84 95 2 1 423 2 821 3 +1890169: 258 99 74 55 6 +2762492345: 5 1 1 994 419 397 +759779: 843 7 9 45 2 +553589: 5 1 4 750 8 5 9 3 8 6 2 51 +3473: 96 9 38 8 23 +7449: 92 26 812 8 9 +14217381: 86 290 182 251 207 +11727256567: 60 3 5 9 8 111 46 804 5 +199921: 14 105 3 56 3 +155235138: 6 8 252 8 3 8 7 50 52 3 6 +1137432024: 79 42 742 9 5 4 77 2 4 6 +504148: 21 735 9 74 652 +286: 50 4 4 9 219 +753806: 3 362 694 40 82 +56782: 586 96 4 1 90 432 +40089934: 4 4 3 9 8 5 5 29 4 1 8 326 +12565273891432: 5 4 942 6 73 6 2 9 14 33 +69042001: 106 293 9 247 67 +406083: 40 47 8 27 3 +3355292850: 35 9 20 5 5 3 601 818 7 +92034233: 1 7 226 4 667 3 8 29 7 +65643968087: 50 59 391 640 307 88 +844148289: 10 204 796 393 9 +168440: 1 5 4 7 2 8 2 8 2 37 285 5 +2834901: 354 224 64 3 70 4 5 2 +24320: 234 3 4 45 9 4 8 +4084925472: 5 137 3 87 2 272 7 8 4 3 +2304000: 20 16 3 300 8 +225594728: 6 1 8 3 1 407 40 9 4 3 3 8 +180931828: 32 3 9 1 94 3 17 825 +1522077480: 3 46 9 79 2 988 132 21 +9197532578: 3 537 5 125 3 26 +12534395: 2 1 415 8 132 3 +22588720: 849 2 19 70 2 +2442469: 242 8 7 7 466 +4155786: 50 21 10 57 54 9 +38901712: 632 9 4 384 8 4 8 94 17 +972705122: 854 86 32 705 122 +1852: 9 5 53 8 16 992 37 701 +19971: 37 5 9 96 898 7 +751040: 361 65 5 4 8 +43754256: 91 6 742 1 2 54 +46686803684: 49 2 8 90 66 78 2 36 8 5 +38745: 8 22 4 55 25 +73080923: 9 131 4 8 1 92 1 6 +46452: 7 6 540 84 +245243286: 2 6 5 304 9 9 8 7 74 9 6 7 +72950435549: 16 78 848 7 69 999 8 +1845838425: 48 76 81 9 1 7 384 2 5 +22137748921: 7 62 1 2 56 7 18 95 7 36 +135323646443: 2 70 44 4 429 53 812 +8366410: 8 4 4 3 7 9 18 2 4 830 3 7 +543783324638: 4 8 85 204 9 2 8 7 7 7 8 2 +2189148: 2 1 86 2 6 6 503 2 8 3 8 4 +932931: 4 5 328 37 97 +1272135233: 1 4 424 224 6 7 76 4 1 +47982707864: 48 2 3 4 2 6 7 6 7 2 949 4 +66837648: 3 2 4 130 5 34 2 5 3 7 1 +828840618: 1 9 8 7 391 5 2 68 6 963 +146535: 12 1 346 406 781 +168523: 292 1 3 89 2 87 91 +384068088: 3 201 81 3 5 60 7 9 516 +2064482: 17 5 1 4 5 1 47 262 6 8 +138184729: 921 648 1 2 81 88 +88699710: 330 434 150 430 97 +540712586: 984 8 954 72 32 618 +607545047839: 94 2 321 7 69 7 901 9 +90923959: 2 4 9 1 1 1 106 4 5 3 961 +8854995: 67 59 294 695 3 +104370: 629 408 75 1 595 +557: 9 5 1 5 390 54 5 44 7 1 6 +2221: 9 8 13 3 8 +1234859316695: 814 5 5 1 2 758 689 6 +531525093: 9 1 118 9 6 5 7 4 75 93 +290920831632: 13 9 9 6 4 30 625 2 816 +13110638: 821 1 1 2 59 6 3 27 5 +79667895: 4 6 8 2 5 298 6 2 5 8 88 6 +1795250178: 1 6 21 4 8 3 2 5 2 171 6 +104356: 48 51 5 349 8 +1748681: 1 5 2 646 9 5 746 2 1 3 2 +183475: 5 4 172 99 178 8 91 84 +9191408561: 4 8 51 75 5 3 5 3 832 61 +9192634: 2 2 8 1 5 8 9 14 797 31 5 +106116: 92 7 45 4 717 +12046979: 2 776 25 55 43 317 +711513: 6 8 6 25 514 +900: 6 8 581 301 4 +110326281: 2 1 584 2 35 94 8 8 7 6 9 +808637: 101 621 7 160 +16320: 2 90 4 96 5 4 +104822111: 65 69 814 961 75 +80224395: 218 1 46 8 395 +1617924237: 1 650 866 2 769 98 +1142866564: 81 2 339 88 8 6 +1501: 7 22 1 3 49 4 9 948 +45370174: 926 900 3 314 79 +45732: 4 113 13 1 98 64 +2820112891: 412 29 69 76 233 9 +2011429: 4 52 38 945 469 +79892773: 77 2 4 1 2 1 1 1 9 2 287 9 +50433967: 5 942 532 341 67 +4982: 1 2 6 13 82 +215086283712: 6 90 691 883 8 459 8 +36785: 759 1 23 473 14 2 897 +2893909: 4 82 9 667 463 +550738: 40 3 7 3 3 23 6 65 9 253 +6300: 3 891 5 57 7 9 1 67 6 5 6 +1451597490: 3 64 8 8 625 410 189 +2901426: 706 9 972 4 3 6 4 33 +196252153501: 5 6 413 7 5 78 446 +344119185319: 403 56 993 755 320 +725781609884: 38 61 34 8 213 834 73 +1361257567489: 4 2 6 7 52 959 8 351 2 +8919: 6 41 53 48 97 6 4 42 6 +21681443: 675 2 3 2 93 3 59 880 +3037709879: 3 91 6 9 581 73 2 666 9 +61218: 359 182 69 32 28 158 +77778: 6 2 560 82 9 +500283554: 7 3 84 91 29 6 6 7 3 5 6 5 +531926758425: 3 308 67 6 896 4 2 2 +6495828: 9 277 2 75 7 +136428614954: 3 4 8 7 53 3 2 61 4 956 +48048: 2 329 3 8 48 +95137883: 1 78 873 37 179 706 +33265556: 552 80 6 974 6 7 89 +3873867959820: 732 84 42 947 88 9 6 2 +533390081: 9 2 3 42 3 7 8 2 4 524 8 1 +3458: 33 6 329 163 5 8 +45941: 14 3 9 9 42 +187955: 2 4 543 22 1 5 +797862: 1 6 836 3 6 53 +203093: 794 3 591 146 445 +4666188: 2 3 3 81 42 5 548 86 1 +1030148185: 3 7 35 79 3 14 1 8 5 +12017: 5 1 1 220 797 +26900808: 6 5 50 7 22 7 173 1 264 +633338: 1 625 8 3 38 +5507695: 9 5 7 372 5 47 +13653: 38 325 69 818 416 +120506: 39 6 3 3 57 38 4 2 413 7 +44944: 183 245 3 13 93 +3679200: 4 75 24 7 73 +62960: 3 411 5 50 3 3 82 7 7 5 +1407175064: 1 6 378 3 13 372 62 +277211: 5 59 3 928 667 +16361262: 18 179 1 90 68 1 4 +148213: 9 1 97 9 4 40 159 978 1 +720914920: 9 5 4 16 4 40 79 35 918 +361500218: 3 4 6 6 3 6 83 9 50 2 18 +693377805: 8 4 66 2 2 6 5 97 4 5 61 5 +161398: 4 77 524 6 +1484629: 3 8 795 4 85 84 254 2 9 +1991406384: 217 169 98 729 83 68 +180179: 542 42 308 40 267 +16525824: 458 92 900 1 8 48 +2147376: 6 899 84 392 +354372784: 1 631 9 40 3 6 65 4 1 4 8 +1687417: 59 715 4 9 8 +248168507529: 4 66 3 544 6 6 6 7 5 4 3 4 +35752608: 8 873 2 2 7 1 2 6 149 4 9 +1388807: 5 802 39 7 49 +350064030: 650 30 572 9 30 +94849: 78 2 964 90 891 +1395925: 16 78 49 40 7 3 2 5 +1281667617: 7 8 3 6 6 5 6 8 4 2 2 717 +692203: 1 21 6 581 81 3 1 96 5 +6596873: 16 41 3 6 875 +1238144: 884 350 6 68 62 4 +1087325672: 90 5 4 2 9 8 7 633 2 4 46 +54598136915: 7 4 36 4 6 8 509 3 691 4 +4745384064834: 3 408 925 7 48 6 209 4 +158427360: 1 12 9 1 3 65 7 8 124 +21867841: 5 7 2 7 6 1 2 99 6 720 1 +2583050059: 730 3 8 2 44 3 1 8 6 6 5 9 +5313920796: 3 5 3 27 5 736 4 4 1 38 5 +708010172: 6 2 91 2 1 442 7 14 756 +185554800: 5 154 3 5 690 332 +149785055561: 299 5 70 111 5 5 2 4 5 +1608: 65 8 373 369 346 +57675333: 9 63 8 75 334 +1070421660376: 885 490 6 110 1 374 +81802172: 3 6 20 495 7 9 2 99 51 8 +5602197: 70 8 2 194 1 +3037306: 86 793 8 81 4 897 379 +2279221: 9 6 6 1 935 9 6 728 2 21 +1246434: 108 721 8 2 526 20 +8463: 7 77 42 2 17 +60200984: 160 106 3 4 94 +1251185423: 8 4 7 59 61 2 1 776 271 +393960: 3 312 2 6 70 +20476740244: 614 529 736 2 36 629 +228760: 4 8 6 94 3 65 2 17 5 9 +171430: 56 964 3 536 2 +12467949501: 9 87 54 682 471 343 +1605916: 81 19 1 86 3 30 4 242 4 +11256636: 84 134 634 +700140: 1 606 36 4 8 14 78 784 +126108: 5 8 3 66 678 +37113: 4 6 131 28 5 392 36 +4608: 4 5 1 7 5 3 2 3 3 7 9 1 +29231164: 69 598 42 5 +1206197: 6 61 9 2 199 +282187: 4 89 77 23 9 82 8 2 9 +704969: 3 2 22 228 741 +7324774344303: 73 898 8 3 5 2 5 60 59 7