From: Brett Parker Date: Wed, 8 Dec 2021 23:24:24 +0000 (+0000) Subject: Make all scripts able to take a file name, merge parts 1 and 2 of lanternfish in... X-Git-Url: https://git.sommitrealweird.co.uk/advent-of-code-2021.git/commitdiff_plain/9211cd2ef3bbf35f1328c86c5c6290005c014cb3?ds=inline Make all scripts able to take a file name, merge parts 1 and 2 of lanternfish in to the quicker version of the script, test scripts against the input I get from twitter as well as the input from google --- diff --git a/day01/count.sh b/day01/count.sh index 990433d..86a89b1 100755 --- a/day01/count.sh +++ b/day01/count.sh @@ -9,7 +9,9 @@ cur_window=1 declare -a windows -for num in $( 965,175 +735,73 -> 316,73 +981,566 -> 981,11 +631,588 -> 631,910 +919,964 -> 70,115 +122,463 -> 261,602 +502,248 -> 774,248 +636,797 -> 797,958 +444,815 -> 444,554 +734,97 -> 734,210 +871,692 -> 368,692 +842,261 -> 606,261 +332,43 -> 206,43 +371,220 -> 18,573 +594,782 -> 127,782 +952,953 -> 72,73 +13,143 -> 755,885 +827,741 -> 827,168 +65,84 -> 839,858 +299,598 -> 299,588 +478,76 -> 607,76 +656,748 -> 61,153 +566,447 -> 857,447 +497,19 -> 310,206 +354,721 -> 538,721 +124,17 -> 124,339 +105,595 -> 843,595 +686,902 -> 919,669 +683,183 -> 776,183 +415,45 -> 415,942 +16,852 -> 843,25 +945,954 -> 23,32 +935,174 -> 485,624 +712,297 -> 792,297 +495,90 -> 497,90 +836,259 -> 836,988 +12,59 -> 916,963 +72,648 -> 72,185 +625,400 -> 507,282 +809,206 -> 809,538 +472,909 -> 472,213 +847,162 -> 189,162 +178,233 -> 178,777 +404,276 -> 404,516 +943,178 -> 400,721 +882,429 -> 882,920 +12,976 -> 900,88 +33,53 -> 958,53 +104,37 -> 609,542 +207,736 -> 800,143 +331,454 -> 331,715 +956,52 -> 26,982 +189,544 -> 189,368 +194,258 -> 451,258 +75,383 -> 75,642 +770,861 -> 915,716 +300,330 -> 300,683 +649,175 -> 344,175 +948,25 -> 42,931 +245,313 -> 748,816 +677,126 -> 677,204 +507,948 -> 507,88 +343,229 -> 343,677 +946,933 -> 472,459 +830,403 -> 830,660 +626,651 -> 626,213 +828,932 -> 828,487 +792,101 -> 216,101 +870,111 -> 50,931 +770,464 -> 290,944 +264,700 -> 941,23 +894,846 -> 630,846 +19,40 -> 957,978 +911,425 -> 393,425 +26,594 -> 26,475 +754,287 -> 754,302 +105,483 -> 807,483 +25,902 -> 684,243 +300,164 -> 532,396 +79,346 -> 79,423 +649,234 -> 649,331 +113,115 -> 962,964 +251,50 -> 531,330 +908,177 -> 908,817 +905,106 -> 905,570 +958,55 -> 41,972 +985,984 -> 62,61 +794,802 -> 328,802 +984,273 -> 370,887 +271,758 -> 237,792 +443,534 -> 835,926 +367,762 -> 367,521 +527,737 -> 717,737 +89,921 -> 89,299 +521,279 -> 108,279 +810,344 -> 760,394 +292,944 -> 292,941 +265,471 -> 265,949 +923,378 -> 415,886 +125,656 -> 434,656 +51,460 -> 51,542 +297,178 -> 297,587 +432,122 -> 241,122 +916,855 -> 451,390 +48,838 -> 636,838 +802,659 -> 784,641 +316,961 -> 417,961 +342,675 -> 568,675 +345,60 -> 352,60 +495,595 -> 284,806 +111,975 -> 815,271 +315,239 -> 315,333 +14,16 -> 930,932 +380,373 -> 380,346 +212,141 -> 212,691 +415,555 -> 651,319 +497,565 -> 96,164 +902,451 -> 735,451 +118,751 -> 521,751 +923,680 -> 613,370 +641,897 -> 233,489 +804,447 -> 259,447 +556,751 -> 968,751 +409,638 -> 409,65 +512,50 -> 432,130 +28,25 -> 988,985 +563,888 -> 563,502 +912,691 -> 950,691 +592,934 -> 592,433 +465,886 -> 408,886 +928,547 -> 671,290 +486,953 -> 496,943 +942,943 -> 42,43 +672,759 -> 266,759 +587,195 -> 763,371 +95,354 -> 687,946 +890,280 -> 734,124 +945,906 -> 945,168 +306,952 -> 306,257 +143,160 -> 810,827 +988,407 -> 167,407 +274,472 -> 817,472 +252,113 -> 430,291 +294,767 -> 176,767 +456,142 -> 423,142 +908,107 -> 176,839 +255,278 -> 447,86 +100,44 -> 969,913 +899,184 -> 899,986 +872,877 -> 47,52 +122,786 -> 228,786 +132,777 -> 312,777 +242,86 -> 36,86 +726,671 -> 690,635 +386,859 -> 790,455 +468,62 -> 636,62 +920,869 -> 920,790 +610,66 -> 633,43 +428,962 -> 428,717 +935,881 -> 278,224 +314,204 -> 458,204 +906,515 -> 712,515 +332,223 -> 744,223 +707,802 -> 842,802 +775,36 -> 946,207 +906,206 -> 142,970 +534,312 -> 534,622 +26,687 -> 26,417 +758,258 -> 688,188 +830,591 -> 830,286 +856,182 -> 924,182 +78,755 -> 78,880 +157,726 -> 157,904 +316,30 -> 752,30 +958,977 -> 10,29 +831,813 -> 284,813 +472,843 -> 989,326 +133,99 -> 133,537 +161,540 -> 846,540 +176,739 -> 78,739 +28,33 -> 969,974 +65,160 -> 879,974 +355,943 -> 355,685 +893,512 -> 225,512 +789,565 -> 789,81 +253,832 -> 943,832 +372,716 -> 372,605 +781,293 -> 702,293 +469,497 -> 469,149 +692,499 -> 933,258 +477,548 -> 477,849 +131,894 -> 131,483 +934,765 -> 13,765 +830,55 -> 436,449 +615,496 -> 531,412 +78,634 -> 78,115 +205,586 -> 205,661 +871,742 -> 871,590 +218,223 -> 218,741 +56,897 -> 872,81 +30,886 -> 728,188 +369,877 -> 369,963 +202,55 -> 930,783 +251,131 -> 251,749 +498,313 -> 498,126 +688,876 -> 188,876 +147,968 -> 607,508 +400,693 -> 235,693 +206,853 -> 206,211 +401,158 -> 187,158 +35,957 -> 973,19 +517,822 -> 517,282 +836,492 -> 433,895 +751,114 -> 100,114 +80,359 -> 710,359 +302,871 -> 812,871 +853,159 -> 853,548 +351,663 -> 451,763 +895,260 -> 307,848 +369,455 -> 812,455 +936,594 -> 393,51 +55,696 -> 972,696 +422,804 -> 192,804 +110,893 -> 120,883 +747,645 -> 747,181 +636,344 -> 636,88 +15,949 -> 543,421 +985,948 -> 51,14 +164,435 -> 164,27 +30,966 -> 965,31 +600,472 -> 985,472 +119,161 -> 91,161 +180,521 -> 180,802 +98,70 -> 449,70 +157,190 -> 613,190 +816,501 -> 338,23 +387,219 -> 387,75 +115,579 -> 115,734 +26,153 -> 26,450 +733,783 -> 462,783 +19,893 -> 759,893 +646,726 -> 286,726 +631,139 -> 631,664 +490,668 -> 490,231 +282,958 -> 282,816 +338,55 -> 898,55 +891,420 -> 443,420 +222,917 -> 222,759 +302,430 -> 465,430 +946,49 -> 946,753 +101,971 -> 879,193 +329,122 -> 888,122 +524,714 -> 154,344 +89,769 -> 552,306 +749,680 -> 749,536 +161,510 -> 161,317 +143,608 -> 543,608 +677,526 -> 658,526 +348,956 -> 512,956 +851,973 -> 358,480 +850,247 -> 56,247 +284,274 -> 381,274 +855,944 -> 101,190 +338,102 -> 467,102 +225,875 -> 225,303 +120,944 -> 945,119 +485,386 -> 305,386 +321,866 -> 627,866 +44,207 -> 44,244 +514,763 -> 514,578 +617,930 -> 617,371 +963,838 -> 451,326 +813,904 -> 174,265 +901,983 -> 512,594 +979,929 -> 527,477 +533,383 -> 59,857 +871,724 -> 828,767 +174,133 -> 174,75 +686,911 -> 15,911 +361,406 -> 440,327 +759,284 -> 275,284 +231,431 -> 203,431 +759,673 -> 839,673 +914,897 -> 914,937 +598,643 -> 598,722 +697,297 -> 697,55 +735,918 -> 735,81 +375,538 -> 375,403 +868,86 -> 170,784 +390,142 -> 390,553 +569,564 -> 569,800 +514,276 -> 717,73 +756,768 -> 182,768 +349,428 -> 349,364 +370,386 -> 370,621 +191,224 -> 191,447 +672,983 -> 209,983 +281,854 -> 872,854 +898,959 -> 898,207 +961,597 -> 561,197 +965,837 -> 338,210 +120,675 -> 914,675 +401,661 -> 401,167 +706,536 -> 706,598 +856,337 -> 283,910 +980,535 -> 156,535 +941,888 -> 179,126 +585,47 -> 933,395 +481,435 -> 481,818 +989,978 -> 45,34 +693,332 -> 693,528 +863,605 -> 507,961 +586,429 -> 252,429 +37,61 -> 962,986 +952,26 -> 16,962 +926,492 -> 863,492 +661,110 -> 279,110 +524,879 -> 176,879 +298,424 -> 858,984 +498,627 -> 498,963 +468,608 -> 256,820 +61,491 -> 472,491 +38,922 -> 938,22 +361,938 -> 361,46 +567,981 -> 567,973 +399,575 -> 902,72 +618,740 -> 818,540 +79,115 -> 929,965 +612,972 -> 612,698 +217,626 -> 474,369 +961,593 -> 961,70 +287,450 -> 287,676 +703,45 -> 871,45 +756,778 -> 410,778 +960,970 -> 42,52 +254,513 -> 554,813 +620,339 -> 601,320 +650,344 -> 650,33 +597,349 -> 597,491 +761,106 -> 891,236 +323,846 -> 883,846 +678,190 -> 134,190 +400,848 -> 400,271 +198,68 -> 463,68 +522,805 -> 522,445 +979,134 -> 719,134 +584,493 -> 584,471 +635,10 -> 635,768 +867,795 -> 31,795 +157,824 -> 939,42 +354,381 -> 653,381 +45,628 -> 45,860 +959,870 -> 808,719 +587,810 -> 291,810 +248,34 -> 83,199 +656,505 -> 656,388 +966,90 -> 966,934 +957,834 -> 267,144 +690,367 -> 447,367 +153,948 -> 153,510 +467,260 -> 467,332 +69,43 -> 931,905 +913,92 -> 913,827 +226,504 -> 226,615 +21,737 -> 21,819 +391,289 -> 391,341 +566,639 -> 723,639 +160,824 -> 167,824 +77,69 -> 379,371 +756,864 -> 756,960 +315,569 -> 927,569 +964,864 -> 964,167 +136,277 -> 136,184 +524,450 -> 898,450 +971,903 -> 222,903 +962,958 -> 70,66 +525,570 -> 45,90 +164,352 -> 164,433 +703,61 -> 668,61 +289,136 -> 768,136 +50,65 -> 861,876 +676,199 -> 676,411 +294,370 -> 56,132 +299,840 -> 620,840 +845,776 -> 845,66 +61,18 -> 909,866 +738,670 -> 738,438 +974,618 -> 974,169 +669,800 -> 607,800 +935,427 -> 537,427 +441,898 -> 441,462 +490,768 -> 490,239 +275,788 -> 947,116 +650,412 -> 493,255 +382,89 -> 950,89 +865,194 -> 865,266 +977,677 -> 459,677 +128,18 -> 985,875 +199,646 -> 199,611 +666,149 -> 666,504 +129,539 -> 129,266 +332,364 -> 332,211 +619,132 -> 619,580 +426,69 -> 426,236 +123,334 -> 22,334 +792,57 -> 449,57 +33,976 -> 987,22 +221,614 -> 809,614 +245,379 -> 280,379 +895,238 -> 895,500 +957,423 -> 119,423 +917,50 -> 346,621 +183,263 -> 708,263 +452,174 -> 452,216 +404,681 -> 287,798 +931,54 -> 474,54 +815,264 -> 151,928 +736,507 -> 295,66 +200,160 -> 901,861 +709,975 -> 100,366 +126,468 -> 393,201 +822,627 -> 287,92 +101,285 -> 176,285 +250,581 -> 250,799 +257,446 -> 257,927 +436,423 -> 640,219 +468,229 -> 987,748 +394,245 -> 501,245 +37,931 -> 684,931 +123,54 -> 123,453 +75,364 -> 758,364 +256,62 -> 143,62 +933,299 -> 933,410 +313,887 -> 313,34 +453,833 -> 457,833 +614,87 -> 614,816 +48,113 -> 48,646 +977,571 -> 977,967 +982,989 -> 32,39 +773,749 -> 239,215 +983,989 -> 218,224 +885,606 -> 169,606 +63,53 -> 63,29 +96,870 -> 820,870 +544,895 -> 389,740 +61,246 -> 296,246 +812,82 -> 53,841 +749,399 -> 749,935 +882,168 -> 274,168 +566,673 -> 499,606 +572,558 -> 806,792 +923,79 -> 923,844 +875,416 -> 875,112 +393,18 -> 393,149 +389,844 -> 147,844 +207,157 -> 207,949 +467,644 -> 728,644 +36,29 -> 587,29 +448,370 -> 448,247 +43,283 -> 43,122 +709,837 -> 709,265 +294,273 -> 98,273 +625,869 -> 26,270 +156,26 -> 145,26 +393,544 -> 393,456 +708,536 -> 64,536 +324,519 -> 324,950 +138,788 -> 533,788 +117,818 -> 254,681 +953,766 -> 306,119 +669,325 -> 669,940 +421,416 -> 715,416 +886,101 -> 886,371 +786,656 -> 786,169 +123,641 -> 622,142 +658,504 -> 985,177 +440,505 -> 74,139 +300,616 -> 300,473 +265,729 -> 983,11 +501,396 -> 274,396 +877,123 -> 113,887 +544,78 -> 544,604 +287,944 -> 287,391 +766,854 -> 97,185 +959,49 -> 127,881 +715,727 -> 715,647 +339,557 -> 339,610 +19,133 -> 87,133 +872,94 -> 932,94 +966,935 -> 95,64 +137,942 -> 918,161 +162,718 -> 598,282 +256,18 -> 256,47 +597,658 -> 314,941 +817,685 -> 137,685 +20,14 -> 988,982 +970,916 -> 100,46 +672,152 -> 672,842 +468,825 -> 468,911 +673,731 -> 267,325 diff --git a/day06/input-twitter.txt b/day06/input-twitter.txt new file mode 100644 index 0000000..ac8320d --- /dev/null +++ b/day06/input-twitter.txt @@ -0,0 +1 @@ +2,5,5,3,2,2,5,1,4,5,2,1,5,5,1,2,3,3,4,1,4,1,4,4,2,1,5,5,3,5,4,3,4,1,5,4,1,5,5,5,4,3,1,2,1,5,1,4,4,1,4,1,3,1,1,1,3,1,1,2,1,3,1,1,1,2,3,5,5,3,2,3,3,2,2,1,3,1,3,1,5,5,1,2,3,2,1,1,2,1,2,1,2,2,1,3,5,4,3,3,2,2,3,1,4,2,2,1,3,4,5,4,2,5,4,1,2,1,3,5,3,3,5,4,1,1,5,2,4,4,1,2,2,5,5,3,1,2,4,3,3,1,4,2,5,1,5,1,2,1,1,1,1,3,5,5,1,5,5,1,2,2,1,2,1,2,1,2,1,4,5,1,2,4,3,3,3,1,5,3,2,2,1,4,2,4,2,3,2,5,1,5,1,1,1,3,1,1,3,5,4,2,5,3,2,2,1,4,5,1,3,2,5,1,2,1,4,1,5,5,1,2,2,1,2,4,5,3,3,1,4,4,3,1,4,2,4,4,3,4,1,4,5,3,1,4,2,2,3,4,4,4,1,4,3,1,3,4,5,1,5,4,4,4,5,5,5,2,1,3,4,3,2,5,3,1,3,2,2,3,1,4,5,3,5,5,3,2,3,1,2,5,2,1,3,1,1,1,5,1 diff --git a/day06/lanternfish.sh b/day06/lanternfish.sh index 3050832..c81682c 100755 --- a/day06/lanternfish.sh +++ b/day06/lanternfish.sh @@ -7,6 +7,9 @@ declare -a fish filename="${1:-example.txt}" +iter_1=80 +iter_2=256 + exec 3<"$filename" OLDIFS="$IFS" @@ -14,16 +17,34 @@ IFS="," read -u 3 -a fish IFS="$OLDIFS" -for (( d=1; d<=80; d++ )); do - start_fish_count=${#fish[@]} - for (( i=0; i<$start_fish_count; i++ )); do - if [ ${fish[$i]} -eq 0 ]; then - fish+=(8) - fish[$i]=6 - else - ((fish[$i]-=1)) || fish[$i]=0 - fi +buckets=(0 0 0 0 0 0 0 0 0) + +get_count() { + local count=0 + + for (( i=0; i<=8; i++ )); do + ((count+=${buckets[$i]})) done + + echo "$count" +} + +for f in "${fish[@]}"; do + ((buckets[$f]+=1)) +done + +for (( d=1; d<=$iter_2; d++ )); do + orig_zeros=${buckets[0]} + for (( i=1; i<=8; i++ )); do + temp=${buckets[$i]} + ((buckets[$((i-1))]+=$temp)) || true + buckets[$i]=0 + done + ((buckets[8]+=$orig_zeros)) || true + ((buckets[6]+=$orig_zeros)) || true + ((buckets[0]-=$orig_zeros)) || buckets[0]=0 + + [ $d -eq $iter_1 ] && echo "After $iter_1 days there are $(get_count) fish" done -echo "After 80 days there are ${#fish[@]} fish" +echo "After $iter_2 days there are $(get_count) fish" diff --git a/day06/lanternfish2.sh b/day06/lanternfish2.sh deleted file mode 100755 index 924ac46..0000000 --- a/day06/lanternfish2.sh +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash - -set -u -set -e - -declare -a fish - -filename="${1:-example.txt}" - -exec 3<"$filename" - -OLDIFS="$IFS" -IFS="," -read -u 3 -a fish -IFS="$OLDIFS" - -buckets=(0 0 0 0 0 0 0 0 0) - -for f in "${fish[@]}"; do - ((buckets[$f]+=1)) -done - -for (( d=1; d<=256; d++ )); do - orig_zeros=${buckets[0]} - for (( i=1; i<=8; i++ )); do - temp=${buckets[$i]} - ((buckets[$((i-1))]+=$temp)) || true - buckets[$i]=0 - done - ((buckets[8]+=$orig_zeros)) || true - ((buckets[6]+=$orig_zeros)) || true - ((buckets[0]-=$orig_zeros)) || buckets[0]=0 -done - -count=0 -for (( i=0; i<=8; i++ )); do - ((count+=${buckets[$i]})) -done - -echo "After 256 days there are $count fish" diff --git a/day07/input-twitter.txt b/day07/input-twitter.txt new file mode 100644 index 0000000..5f760b0 --- /dev/null +++ b/day07/input-twitter.txt @@ -0,0 +1 @@ +1101,1,29,67,1102,0,1,65,1008,65,35,66,1005,66,28,1,67,65,20,4,0,1001,65,1,65,1106,0,8,99,35,67,101,99,105,32,110,39,101,115,116,32,112,97,115,32,117,110,101,32,105,110,116,99,111,100,101,32,112,114,111,103,114,97,109,10,334,7,6,1172,110,184,1322,1248,516,0,259,331,1291,51,753,878,27,664,859,391,41,43,317,884,529,168,502,1236,908,1203,676,349,117,268,364,668,256,216,435,296,568,298,600,53,775,3,782,387,305,1648,254,1477,488,234,349,1410,55,456,202,394,29,578,400,188,1172,306,375,320,561,167,1078,643,279,339,12,1004,290,26,49,359,139,218,129,139,742,239,290,471,1899,1446,1046,657,895,90,196,467,1105,723,269,638,72,363,199,704,769,658,124,1001,1160,1150,806,154,407,238,155,499,1170,779,156,1041,728,124,349,397,916,24,1079,1275,222,1852,180,24,126,475,228,464,5,133,130,1119,108,895,396,1285,670,52,107,714,58,1143,714,144,1193,1754,157,802,1,1000,1001,1116,823,256,746,16,281,341,1363,233,26,46,474,91,1035,422,681,6,316,1564,31,162,194,116,904,1223,192,1552,74,1282,398,776,343,187,45,193,1311,111,161,27,660,1283,124,215,331,158,35,65,852,290,1199,285,555,630,309,375,8,301,32,706,74,722,303,474,857,12,211,54,391,171,66,1373,931,1272,294,619,470,75,195,40,386,98,127,332,183,741,1502,383,714,148,213,1053,130,491,66,1010,820,48,867,1462,901,866,1110,171,1095,147,206,1220,1242,839,1187,90,918,399,262,821,52,159,3,750,1464,1772,128,43,888,225,488,1257,281,597,321,281,1240,821,205,384,66,331,23,241,327,348,122,218,867,114,246,19,698,59,1218,28,61,238,135,773,64,54,401,297,1148,465,159,1339,45,650,702,861,0,340,5,129,80,171,55,135,1021,1420,22,330,199,0,288,1318,725,147,233,586,1530,268,512,19,94,497,389,530,1852,102,1175,38,1053,551,971,65,1254,32,409,756,531,2,758,678,351,9,788,590,176,1367,389,495,1608,489,75,341,198,68,27,3,109,635,457,381,571,978,16,359,1474,668,80,133,1337,608,1087,96,690,9,375,1012,1016,173,71,1482,64,1334,231,439,670,1092,1327,1637,1971,174,174,367,594,827,1497,296,128,13,348,780,1682,202,1060,191,1602,83,1437,91,519,601,242,179,70,158,84,220,869,1363,1119,648,185,162,961,281,479,621,13,1303,208,1117,373,141,995,584,82,994,1032,899,654,762,606,532,1108,277,89,515,422,696,275,1693,93,864,146,56,352,182,439,6,331,39,83,23,1880,724,87,59,129,889,9,1598,57,215,876,25,837,323,403,1229,761,34,1014,7,65,3,238,588,327,1307,1069,1272,166,162,1613,92,169,16,19,272,613,1069,861,452,1070,330,667,660,49,1178,183,600,1038,290,857,1505,1029,146,504,284,175,73,485,909,615,251,176,843,394,934,1056,71,290,199,258,67,4,404,912,10,1564,807,865,6,550,1022,506,988,195,480,13,981,18,220,156,341,491,220,326,480,1251,235,200,1398,179,196,187,316,1299,997,504,104,189,419,347,458,172,48,744,88,56,183,233,337,1107,475,337,54,753,49,33,612,301,157,73,261,1122,304,352,264,265,879,13,96,1153,262,40,653,196,326,1523,394,79,297,10,1326,21,411,789,553,4,712,123,392,286,671,141,28,168,544,9,537,490,396,1210,1800,354,228,35,1217,784,223,551,290,386,106,152,309,2,777,558,813,380,184,187,629,841,233,1027,823,1104,205,1528,981,197,674,517,1537,512,175,1117,730,397,803,1380,216,611,142,85,680,35,22,598,1530,44,236,265,358,1227,1189,1831,886,107,314,325,219,724,619,862,0,146,1358,172,94,53,225,648,152,583,666,927,99,394,150,113,959,528,1233,65,1408,181,114,38,550,282,742,936,1278,748,178,344,180,375,1003,97,623,98,309,248,277,902,466,1298,878,804,2,697,509,809,847,133,1215,573,1497,255,99,58,605,841,849,22,120,409,339,937,1333,943,823,1146,435,454,264,26,25,848,225,139,208,1125,12,242,241,2,382,258,579,5,1194,402,1069,874,1302,191,307,313,643,1080,505,1032,1099,267,160,821,520,55,30,362,77,270,648,177,805,977,464,872,326,1176,102,47,1254,92,217,399,184,283,770,282,1488,456,691,508,243,856,112,294,948,938,27,91,262,549,165,985,21,968,380,143,118,365,1562,318,610,1167,112,750,279,212,710,331,1022,1143,1566,17,357,672,1391,877,1051,105,21,219,1392,78,857,223,676,350,117,82,703,460,1332,129,235,25,133,195,474,791,223,170,1482,139,63,967,286,73,343,230,551,1035,44,1428,1589,542,592,7 diff --git a/day08/input-twitter.txt b/day08/input-twitter.txt new file mode 100644 index 0000000..da96389 --- /dev/null +++ b/day08/input-twitter.txt @@ -0,0 +1,200 @@ +fbead dcabe bcega gfbecd ecd dgac cd bedcag agebcfd fcagbe | ced cgbefad gbcaef cd +bdef fbgeadc gabfc fadegb adefg abe be decagf dacgbe begfa | dbfe gaecdf fbgae agfbe +gad cgdfab ag edacgb agbfedc facdb dcebaf adfbg agfc gbdef | dga gacfebd adbgcf adgbce +cebadf gadcf egabfd ecabdfg gfcbd dacef geac ag afg fgdaec | aegc gdeabfc fgedac eacg +ceafb gcbfea eacgdf cegb eag bgfda eg fdaegcb ebagf adebcf | eg adgfb ge ceabf +gcdfeab bfdcga gdacf fe fae bdefga eafdgc fecd efagc aecgb | dcef fea cgfda gbcae +gbdce cfdbg efbd gbaedcf dge gfcead bcgae de bgacdf befdcg | gde fcbadg egdafc dbaefcg +adgecf agecdb dfcag cea dafgebc egbfc fdea ea agbfdc caefg | gcdfae aefcbdg fdgebac eac +dgcea acfged eagfc abdec dcg gd efcgdb adfebcg bceagf adfg | dfag dgebcaf dfbcage dgc +aedgbf dgfabec aefb edbgf gabdc ea gedfbc cgdefa dea baedg | ae ea eadbgfc fdabge +afgbde agbef df fda caegfb efdb fgdbeca fcdgab agedf cgead | fad df fd bedgcfa +bacdge gdecbaf bdfcge fabec dc dec cfbed gedbf dcgf agbefd | bcedf fgbed bcafe cfbedag +gbcafd bcd db begdc gedcfb bgdfeac cgdef dbfe gceab adecgf | dbc bd ebgdc bgcfda +ebafgd dcafeb ag gfadb aegb agd edbaf adcefg gcdabfe gdfcb | bgafd ga ga ag +gcbfda acd facdb aecbgf gafcb ad agbfced bacdge efdcb agdf | gbdeacf ad bgedca dcbagfe +gfae dae ea ecabfd edbgc aegdc cgfdae fcadgb facbedg gdfca | dfeagbc cdeabf dea ea +egafb ec dcegafb fcdag bcef cae cdgbae egbcfa abfdeg eafcg | bfacedg ace eca afgdc +bfgadc fabgd fcgb gecadf adceb gc cgd dabcg gadfcbe eadfbg | gbcf cebda cgd cg +abfdg dgabe cgbead efdb abfgced gefbda daf cfadeg cbgaf df | gfadb egbda bgdea bcadgef +aebcf agdbf adgbfce agbfec egcf acg bgacde cgbaf dfeabc cg | aefdbgc gc efadbc gc +bacdfe baefc edacb abcdg bafdge cgfbdea de cfebga cfde bde | ecfd bde cfbea fagebc +cefd cf afbegcd gfdcab adegfc baegf dgcea fcg cgebad gfeca | gdeafc fc decbgaf gedca +dgcae eadgbc eafdgcb ad badg deabcf gefdbc ade bdceg fcega | ade acedfgb acegfdb becfda +bfadecg cfadge bcgfd bceagf deabfg edg edca ecafg cfedg ed | cead deacfg ged gbfaedc +egafd dfbgcae bdf bfade dgbcfe bagf beacd fgbdae cefgda fb | fb gabf bfd cefagd +afedbcg eadcgf gebdcf agdfb ceagf baecfg de gaefd cead egd | bdeagfc ecda agbfd dgafce +bcde bc fgdceb bfc faecdbg adgfb cdfgb fbegca dgafce fdegc | cdgfbe fcgde cfb fcedg +bgacd cbf fceda fb gacbdf cadfb bdagce fegcbad beacfg fbgd | ecafbgd bfdg gcbdefa eacdbg +dgbec afecgdb fbgce dbgcaf becdfa bagcf efb ecfabg geaf fe | fegacbd ef fcbge abgfc +cedfg cgfaedb fgcdea gacdf gcae begdaf cdbaf fbcdeg ag gad | gcfebd cadfeg adfcb afcbd +edgcfba cdafb agd cbegfa dfagc acefg cgdbae dg dgceaf egfd | fgecba gad aebgcfd agfcd +afecdg bce gdeca cfdgbe bgca cfabegd daecb bfeda gabcde bc | bgca bec gabc bc +fgbdc gad ad eabdcgf gdfeac ebdfag baegfc gadfb ebad begaf | ebda dfabg adg bdae +bgec dbfga degfc eb deabfc fcdage bfe gfbced gfedb gfdcabe | bcge begc efb bcgdef +efbga bfeacg dg dfg afdce eafbgd adbg fdbcgae fcdebg eafdg | dbag fdg fgd gbad +cdabe agcbdef fgaed dbcgea fbce bfacdg fb faebd dbf fadcbe | bcgfda bf fb fb +cdafbe cbdagf fcgade fbage fbdae fdbca ed efd adfgceb bcde | ed adcbf bgdcfea ecbd +fgab gfacbd gfdcb fgdecb eagbdcf bdacg ag gad edgcfa eacdb | gcfdba fgdace cdegbfa agbdc +egcaf gdecbf beacg cfba dgfeabc abfgec baegd bc ecfagd ecb | bcaf cbaf gdecbf ebc +agfce cgedfb gbdfe daf da febgda cgfaedb adgb dgefa ecabdf | bdfceg dgab adf gadb +begadf deg aecfgb aebgd aebfg ceadgfb fead ed dbcga egdcbf | ged fcgeab gdaeb de +ad debcf deabgc acegbfd daef febcda cgebdf bcafd cda bfcga | acfgb cbdaeg gecadb acd +fadbeg bagdcf bcda fceag cfd bdgfa dabgefc cd bdcgfe afgcd | acbefdg dc gfcea bcda +fcbge bg cgdeaf bdegcf beg bfeca gbdc agdefcb gcdef bgefda | egb bgdfaec bg feacbdg +gcfabed dae geaf afdgc dfbcag cgadef dcebg defbac edagc ae | cdgae ae eadfcb egaf +ceabf fabcge cgfe gecabdf dgafcb bagcf edfagb ef cdeab feb | acbgf fabecg bfe badefg +adg bdfaeg bacd gcebd cgadbe da caedg egfca bfgdace fdbecg | dcab cgeda agd ad +cbdafge ecbg fabec caefgb cb abefd fcdega bac adbcfg efcga | cb gcbe bac dbgeafc +gfcbad fbc cf ebgaf acdbe decbfa dcbeag cdfe efgbdac fbaec | aebcgdf bfc dcaebfg edfbacg +dgcf bfaedg bdf cdagbef cbead df cebfg gdcfeb fbdce gabecf | fd begcf df df +bc egcb efabdc cfb gefdba cbfgade gbdef fdcga gfbcd gbdecf | cfagd ecbdaf cbf dbfcae +bc cbe cfega gbecaf fdcega dbefa cbgdfea efacb cdbega gfbc | dgceabf ebc bce fcgb +cf gfcdea fdage gfc dgcfe debcg fcbdag gefdba afec cgfdbae | deagbf eacdgf dgcbefa dfgec +cdgfbae bc ecabd cfabdg dfageb cfeda debga abc begdac egbc | bc cb acb adegbc +fd caegfd fed acfegdb bcfed cbadfe abfd bcaedg egcfb eabcd | dcabegf cbgdfea bfda cadbe +dbgac ebd faebdg afbcdg efcbg aedc dbgeca dcafgeb gcedb ed | aced edgbc ebd ed +fea dfbga bcedf fgadbce ea aebg bgfaed gdafec dbefa bdgcaf | abdef gdcafb dgbaf ebfad +eac afdecb dbegca acdfb dbacfge ea bcfea ebgfc fade fadcgb | fcbad ebcfa edcgba dacbf +agfdbc adcbg fdgc cdfeagb bgd eadbc edfagb dg abcfg bfaecg | cdfg dg gbeacfd bdg +fdbag gafcbe agfdcb bfc cdgf bdagef cfbda bdeac bcfedag cf | bdeca adfegb cbfad cf +agfdce ecd cbeadg ce bdagc ecagfbd bcegd abce bfedg gcbfda | cde cdbgaef ceadfg eabc +cgbda bceag bcgfde gdb dcabf dg badefgc gdae adbcge cabgfe | adcgb egdbca dgbfaec gdb +baefc gecfb bfadc dabcge cdbfage aeb ea bgafce ebdgfc efag | bfgdaec gcdebfa dbecgf dagcbe +bgdcfe cafdg cad acegf fgcadb fdcbg faedbc da gbecfda dabg | acd faecg afcdg fdbgc +gedbcf gef cfaedbg egbc ge gfcaed dcbfea fgbad dgbfe fecbd | eg gfe gcbe bcge +fca cbfge faceg fbeadg gdefa ac adcfbeg ceda cdbgaf dgaefc | gfabcd afc degabf fac +dacfb edbag ce abdfgc dcfe ebcda gecfab befacgd feadbc aec | cea dabcegf cea badfcg +edabgcf eadcgf dbgecf dgeca dcbaf adcfg fgd gf faeg decbga | bfcdeg dgfca edcafbg dcafbeg +abegcf bedaf fc ebadgc cbf fbcagd baecg befac defgacb cgef | ecbaf fbcdage cf bfc +acg bafgdc afegb bfacd bgeacfd fgdc cg aecdbf gdaebc cbafg | afdcb cbfgda acg abdfc +ca ace afcb afebcg ecfbg dabeg gfacde gbace cfgabde cdbfge | acbf cfegb gebad bacf +dgfcba fabcd cgbfae dbaegcf eadcf dagbc edbcag gbfd fb bfc | ebagdc fb edfgabc gadcb +gdaec dfgb dcgbefa bde ebadg cbfage cabfed efagb db bdgafe | bd abegf dbe deb +caebfg bf bgead dgecab bdaf bgdafe fbe dfgbeac bfged fgedc | cbgeda efdbg edacgbf feb +begca fbaedgc adbfgc adbecg bcaefg af afb cdbfe feag beafc | fadgcbe af bgdfcea af +dceab be gcbdaf ebc abfe bdfac cdbafe cagdfbe gbfced dgcae | acfgbed eb afbe eabf +fegdbc acfdb afgce badecf badg ebgafdc gd cgadf gdf dcabfg | agcfd fbdac gfd egbafdc +beagd fbcg gbecfad gc bacge adbefc aecfb acgdfe gfbcea egc | gc efacbgd agdeb cfbg +adcebf fgebadc ga ega bdga edafb egadf bcgeaf dcefg afdbge | abdg dbag edcfg fbegadc +fe efd egfbdac dcagf cgaebd cbfe gdceb dfegc efagbd fdegcb | ef gdaceb befcgd gdcfbe +badf bfg dafgebc gdabe edfbg bgfeac bf bdagef dbaegc fecgd | gacfbe bdagef cgaebd adfb +efdabg bedac fb cgedab cefgdab fcdga adfcb cbfe dfb ecfabd | bfd bfec debafc acbfd +cbdag fa bdfacg dgfac defbag cbaf gecbda agf dbegafc fgcde | gdcef cdbag gaf gcfde +cfagd fbagcde cb efdabc dgaefb cfbe adgbec bdc acfbd edfba | befc cfbe efbc bcd +bdcgfe acdbeg ac caed gdfba dagbc abc gbfcea ecbdg gbcdaef | aced dgbce cab gafdb +bgfd fecdgab eadcf acbged gd acfgdb cafegb cdgfa cgd cfgba | fdgb gecadb gd gdc +dbcfa gcebda becg dgeac dbe egadcf gdefab fgaecbd eb acdeb | bed cgbe ebd efbgdca +ebfd cgfdea fbdagec afbce bfdeac geacb fb dfabgc fbc dacef | fcb abcdef cfb fb +gceab bgef gbdca abdecf efacg ecbagf ebc cgdeaf eb gdfbcea | ebc fdcbgea eb fcedbag +cdfeg de edg dbcgaf defbcg cbfgd gfcdabe bdef gdebca efagc | bfacegd fdceagb fbed gcebfad +fecbdg fcagebd adbgfc ceba gecad dgfea egdcba dac gcedb ca | cdabgf edfacgb acbgde febacdg +gefacd febcga fdg gcfdb ebcgf cgdba gdcefb fd bfedgac bedf | bdagfce gfd bfdcge geacdfb +bacgfd ec cgbafe adbgfec acfbe fbeda eac ecgdba acbfg fceg | dcgaeb fcdgabe aec afdbe +egcd dfeca efagd fdcgae egf ecbdagf eabdfc fecabg dfagb ge | feacd eg gcde feg +begaf dcfegb dbcge gadcbef fc cdabfe fgdc decbga cfb becgf | bfc fc cdebg cgfd +cfbdgea fdg efbdc fgdecb gd gbeaf agdfcb cedg adfebc gfdbe | cfdbe afgcdb dfcebga dgec +fdebgc egba dcaebfg abfgcd ba bda gdceb cefda degcba edcba | dba bdafegc decba bad +cgeb bdgcfa dfgcb efcdg ge abfged efdac eabdcfg ecdfgb gef | cedfg eg fcade eg +eabdcg gceb ec ecfadg baecd daebcgf afdeb badgc bafdcg ace | bcdgeaf ec cebadfg ce +ebdf cagfeb efcda ecbdag ecdbfa aebdc cgdfa eaf caefgbd ef | eaf dcbea acgdbe dfcbega +gdbfa gfaeb cafbgd adb cedbgaf faecdg edfbca bd dcgb gcadf | db bcdg dgfba dbgc +fbcdga cea gbcaef decgb gcdfa eafd afcdge adgec ea dbceagf | eac egbcdfa ae dfea +beagcd egcbd gbae eagcdf gdcefb cbade fabgdce ae fbcda ace | bage cae ace ageb +bacgf bdgac dcebfg eacgbd fdgbcea gfdbea dc aced bdc dbega | bcd cd bagde bafcg +gfabdc be gcedba fecabgd edcaf egbf fcabg cgbaef abcef bea | acegdfb fdbcga eb becaf +dgfbec bdecga dfgca fd aedcgfb adgec adef fcd fgcab fcegda | cbfgeda cdf df fdae +cgfbe faceg bacegf dfgbe aefcdg abdcef cb gdbefac bfc gbca | cdgefab bc cbfead cgaefd +gefdcab ebcg fcb bfdce afedb fedgc bedfcg dcafgb degfca cb | bc bc dbfecga cb +efagc cagfde fb bfe begfa gbead badcgfe bgfeac fbca fdgbec | eacfbg efb feb bf +gebdca af afb afbed bcafgd fabgde fbedc afge dgbae eacdbfg | agdfebc af abegcdf baf +egbad cfedbg gb dbg cfdaeg bdeaf dgabefc cdbega cgdea cabg | efdab fedab gb gcba +adfcb defca cabg gdefab afbdg bdgfec gbcedaf dbc gdacbf bc | dfeac bdc cbd gabc +db ebcda ebgfac fcdea becga ebgadcf bdc cfedbg agdb bdgeca | fecda bd agbd db +bagcef begdafc fbga fceab afcged ecagf deacgb acb ba bcefd | cfbedga abc deabgfc bca +cbf gdbcae abdgc fb dagbcf gabf cdfea cabdf dabegfc fbgcde | cbf fb dgabce fbc +dfbgec fcbeg fbeag afdecb fcdbga cegd dfbcg efc ce adebgcf | egdc acegbdf agfbcd cbgfe +abgce gdec ce faebg agcbd bfcadg acefdbg defcab egcdab cea | gdfabc ce agefdbc ec +acedg gbc geab ebdfc bg cbedg dacebg gdcaef fabgecd dagbcf | cgb bg adecg acged +cfebad fbgda edg ceag agebd aedgcfb eg ecbfdg cgabde cebda | cbafegd gdacebf cega eg +eacdf ea eadb cfgde cabfde bdfgac gacebf afe fbcda gcbafde | bagcfe fae adfcbg cadbf +abd fgcaebd dbfgc gdeac fbedag ceba bcgad deacgb ab adcfge | dba bcea ab cfagbed +afg bgfce af dcfa acbdge bacfg agbfde dgcfab dgbac defagcb | dfgcab cfgbad afg dceagb +gdacbf ebgacf edbagc ae agcbf aefg acfbe fgbcead bcefd cea | eca adgfcb eca eafg +fcbae bea bcdaf cadfbg fbgec ae eafd dacfeb bagcdef cbagde | fecbg cgedbaf gdcfba bae +baefg daebgc bdgeacf gaecb efb feca abfecg fadgb edcbgf fe | bfgdeca gcbea acedgbf ef +cd fdaecbg cdbga befacg fbdag decb dca gfcead dacebg gebac | edbc feabcg gcefdba adc +agdebf daeg eadbfc gef dgbfec eg dbeaf afgeb fedbcga gcbfa | eg eg edgfbc efabd +facd cabfgd fab geadbfc af gcbad egcdab becfg beafgd acfbg | fa acdfbge gdcaebf dbacg +bcgfda gbeaf cfgba fae bace cfabge cfdgae gedbf ea dgcfbae | ae ea fcagb eafdcbg +dbe gdcb ecafd edcgfba acedb gebdfa bagdce fegcba bd gbace | bd feacbdg bd gedbfa +cabgde fagecb efb adfbg acebdf fecd afbdcge cdbae bedfa fe | cfabge fe dfabg bfdea +bacg dafcg cdgfaeb fbcgda baefdg gda dabcef gfced cfadb ag | bgac dcfge egcbdfa dabfcge +bdc gdac ecdagbf geacfb defcbg fabde cafbg bcfad cd cadbgf | acbdgfe fegcabd dafbc dcgbefa +cedbf ebdgcf degc dcfgbae aebfg dfg bedgf gd aebcfd dbgfca | dbfcage cdebf dg dg +edcfb ad cgad adgbfc agcfb agfebc bdacf cafgedb daf dgaebf | afcdgeb fda fda bfagecd +agcbfde gadbcf bdfcge defgc dc afdge dcg gabfec ecbd bfgec | gcedf bcfeadg cdeb eafdg +afdebg efa afbdc ecag egcfd debgcf ea fgebadc fdeagc defca | aef afdbceg ea dgeafc +cgdfb fg ecdbf fbeacd bgdaef bcadg ecfgdab dgbfce gfec gfd | gf gf gfce febdc +bgcde fedgc cgf gabcfd gdbefc defga fcbe cdabegf fc acbdge | bcfe efbc fc efdcgb +cagb ab gdaecf cgeabd edabg fcdabe edbfcga bfedg cgdea eab | gadce gdefb abgc fedcba +ecdafg feg bcgfad egbfa afbgc ecgfdab gaefcb eg afdeb becg | ge bgfdca eg fegadc +fe adefg egdac cbagdef dcfeag adecfb dbfag edbgca gfce efd | fe efgc cabegd fe +geab fgbaec gce adefc gcafdb agcef abgcf cdgebaf gcedbf ge | gabe cfega fbdceg eg +eac dgefca cfgdba gdfeabc eadf gcfbe adfcg gcfae gacbed ae | agcdfeb ecbfg gedabc ae +ec cdagb cegdab dagbcf cbaed ebgc ecd abedf fadcge cebdafg | ecd gacfdb becg ec +abfge ce cgfdae cbed fecab fbdca egfacbd efc acgdbf cebdaf | dgface efc ec ec +gbc gcdbf gb eabdfc egfb agdcf egbcda gcdfeab dgefcb fcedb | bgef gecbfd gb bgfdce +ecgab gecabf cb gfbc abc afgeb daecg fcedab fcagbde efdbag | bdecagf gbfea ebgcaf cb +ecdgb ab adgb dbecga fgbcde cadgfbe aeb eacgbf cabed eacdf | abdg cbedg gdabce cdbeg +bgc dgeb bg fcbge befcgd ebcdfa cbfgda efcag cebfd fagbcde | gdeb fcgadeb bfecd cdagbef +edbcfga cedbga bagfd eabc dgbfce eb gceadf egb agdec gbade | cfgead gefdcab bdcgae cbae +bafcge edfg abegd deabcfg dfbagc abcde dg bdg gbdaef febga | bdg fdeg dg cafbdg +cgfdba gec gdeafbc cfgead ce fbegd cdae facdg afcbeg edfcg | cbgfea cfgadeb gdabfce egcdaf +cbfgad bceagd dbf cdbfae ebdcf cdegfab cbaed gcedf bf aefb | aefb dcfbage bedfcga fb +cgd bcdafe dacbegf adecb dbfeg bacg gedbc gc fcegad agbdce | cdg fbdge ecdgb eadgfbc +gfdabe cfbga ceab eaf gefcab gcaef ea efcdg dgafcb abfdegc | ea cafbdeg fgcab acgfe +dfg gdfbe gf ceagdf aefdb fcbg begdc cgbdef cabged becgafd | fdbgce eadbf cgedb fbcg +fdeba ecdfa badgef ebagf abegdc dgfb bd febgca agfedbc abd | bd bfega bedgca cbaegf +bafcdg cegb acfbg feagd fdacbge be bfegac abe bdcaef afebg | be bfecdga defcgba be +bafgdc dbfag gfecdb cbf cf bfadge acgfb cgfdbae bgeca cadf | cf bfgcde gdaefbc cfb +gcdbaf cgbedaf ad ebfagc daef dbafec caedb bgcde bfeca abd | ebdagcf dfea fcaedb cbfgad +ceagfd eadfb fdeag dcgfe gea ag dagcbe fcegbd fbdaceg fcga | gfca fcga dcgefb gfcaebd +cdfbge dcafe df fcd badce gdaf agcfe ecagbdf eafbcg fgcdea | gdfa fcd eabfcg fd +ad bgdfae eagfd fedcg dagb gdeabcf dea bgcefa abgef fdbaec | afbge eacfbdg bgecfa fabge +adfbceg edcgf gcabd egfcbd ecbf cebgd cefdga be deb fedgab | fecgd gcdef ecfdbga daecfg +gdfeac afedc agdbcfe ae begcfa edfbc bfcgda dgea efa cafdg | abdcfge edag edfbc cfdga +cbdeg geafbc fd gfacdb fgdce fecgad feda dfg aedbcfg gcafe | fdecg fade fade cadefbg +af bcfeg gbcfda cgabfe ecgfa abef cgdae beagdfc gaf gebcfd | gdfecb afegbdc gfa gaf +bgafcd becfag cbdeag bagdc eb bdegc adbe cdfebag gbe egfcd | edbgac adgbc bge cefgba +dfcebg cgdaef ga fcbgd dgabfc debaf acgb agfbd defbacg gad | bagc bdeaf bfgdc abcg +ebgfac agfdceb cdbga dafc cfabg dc gebda dcfbeg dbc gafcbd | gfbdca fdac gdfabec bagfcde +egbac efabgc efagcdb abedg ead da dbac bedcga cegdaf gdfeb | dabcfeg gcfeda adbc ade +acgbfe eafdg dbea bfgea dgbcaf cedbagf dfgabe cdgfe gda da | gfebdac agd dgaef dga +edbgf ced bcdeaf cdgeaf bcfgade fbcad eabc cdgfba ec febdc | dcbef faedgc edc begfd +ca bedcaf cbaedgf edabf cab dfbca bdfgc cfea daegcb gbafde | ac cdfabe bcgdf gdfceab +bdef gecbfd gbdcf cbaegf cgbda dfc gdefacb fcaegd fd gebcf | cfd dcf df fegdcab +bf adfgce dcbea cfb gfdaceb cedfbg cfedb fcedg acdgbf gefb | fb bgfe gebf dacbegf +defc edfba eadbg feb fbagcde ef dafcb gbfdca egcfab aecfdb | ecdf ef fcbgae fced +acdbe aegb cdabfge ebdcg fcabd ea gebdca bfcgde gcefda aed | ea ebcgd dbcegfa dea +dbcfe bfcda cabfedg aefc cdfabg bgedc ebdfac edf fe efdbga | efca face fe cefa +egdab bgfd gdeabcf eadbc abg bg bacefg fgade cadgef afbgde | bfcaegd dbafge abedg geabd +ebc egbfdc degc ebcagf gbcfd acbdfg ec fcdeb abdcgef abfde | egdc gcdfb bcgdf ce +dbfaecg bd bcegdf cfabg dcba abfdg fbeagc fdb cbdfga efgad | bgaefc efadg gbcafe bfd +gacef dcaegb egadc efcbadg eaf caefdg defc fe afgebd agcbf | cedag dfce cedfgba aef +gafcbed gdcef bcefad daecf adc daefb cbaf egacdb bgadef ac | dbceafg ebfcad bdacfe dca +ecbfa fae afgbc cdeafg dcfeb efgcab ae beag gbadecf acfbdg | bagfdc ae feabc edcgfa +egfac gebaf ac cfab gca gcdef cagedb bfecag fagdbe gacfebd | gcbaedf geacbdf gafcebd cgefba +fbdgec efbcag acbedgf bac befcg adfbec fgca ca bagce gebad | egcbf ca cfgabde abc +edafg cabe fcaed ce faegdcb dcefgb fec fdagcb cbdaf cbfaed | acbdef cef ce eacbfdg +efbcgd ebdgc egacf gebadc gba dabe fagcbde gbcae ab gfcbad | aebd aedb bead cdbfgae +becag cbdf cebda fgdbea bdgafce ecfda abd adefcb acgdef bd | adbfegc eadgbfc dcegafb bfdc +gfcadb fega acbeg fgcab ebcda ebcdfg ge ebcfga gabfdec ebg | beg fgedbac eagf eagdfcb +gecf cbf cbfga egfbac cbgaefd dgcbae fc aebcg befdca bfadg | cbf bgfca fbc fcb +cedfg adbgef cb bcd cgebd dageb cbegad ceab bgfaecd cabfdg | gbced bc dgefc bc +egba bdcfg fbe acegf ebcfg eacbfg eb fdebac dgeacf dcgbaef | efgacd bef ebcgf fbe +agfcbd bafcedg dce bgdfce efbac dgfe begdca de gdfcb dbefc | ced ebgcafd ed bgdaec +decfa cgbdae bdfce dgcbe bdfg bgdefc fbe bf bfgcae ebcgdaf | fb gabcef efcdb gdcebf +fbecga efcbg bafgd ac dcgeab eacf bafcg gfdbace gbcefd acb | bfecga efgbdac fbegc faec +ab ecbagdf fbagec cfedb eagbdc acb agdb ecgda acedb gacfde | acdbfeg dgab abc dgbfcea +gfdbc begdcf bfedg acgfed cd fcd febgda cfgab cadbgef ebdc | ebcd gdefab ebdc ebafdcg