Advent of Code solutions
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

init and 2025 day 1

Rain 3d1166c7

+4984
+1
.envrc
··· 1 + use flake . --impure
+1
2025/days/1/.gitignore
··· 1 + /target
+7
2025/days/1/Cargo.lock
··· 1 + # This file is automatically @generated by Cargo. 2 + # It is not intended for manual editing. 3 + version = 4 4 + 5 + [[package]] 6 + name = "day1" 7 + version = "0.1.0"
+6
2025/days/1/Cargo.toml
··· 1 + [package] 2 + name = "day1" 3 + version = "0.1.0" 4 + edition = "2024" 5 + 6 + [dependencies]
+4531
2025/days/1/input.txt
··· 1 + R8 2 + R28 3 + R43 4 + L29 5 + L3 6 + R29 7 + L24 8 + L12 9 + R22 10 + R5 11 + L5 12 + R43 13 + L8 14 + R30 15 + L32 16 + L40 17 + L14 18 + R39 19 + R3 20 + L23 21 + L9 22 + L33 23 + L1 24 + R21 25 + R36 26 + L5 27 + R44 28 + L1 29 + L8 30 + L4 31 + R24 32 + R31 33 + R3 34 + R38 35 + R10 36 + L34 37 + L20 38 + R6 39 + L14 40 + L31 41 + R50 42 + L43 43 + R16 44 + R18 45 + L8 46 + L8 47 + R21 48 + L24 49 + L37 50 + R39 51 + R78 52 + L79 53 + L6 54 + R20 55 + L78 56 + R7 57 + L12 58 + L17 59 + L3 60 + L97 61 + L17 62 + R65 63 + R2 64 + L56 65 + L1 66 + L93 67 + L61 68 + L39 69 + L65 70 + L53 71 + L82 72 + R33 73 + L33 74 + R41 75 + L41 76 + R2 77 + R98 78 + L63 79 + R55 80 + L15 81 + R55 82 + R68 83 + R13 84 + R13 85 + L77 86 + R65 87 + L14 88 + L40 89 + R83 90 + R57 91 + L81 92 + L67 93 + L52 94 + R86 95 + L86 96 + L49 97 + L51 98 + R14 99 + R60 100 + R26 101 + L7 102 + R91 103 + R91 104 + R78 105 + L1 106 + L52 107 + R46 108 + R54 109 + L26 110 + R19 111 + R15 112 + L339 113 + L65 114 + R96 115 + L49 116 + R69 117 + R51 118 + R29 119 + L456 120 + L357 121 + R135 122 + R78 123 + L86 124 + R72 125 + L86 126 + L70 127 + R63 128 + R7 129 + R92 130 + R8 131 + L87 132 + R19 133 + L21 134 + L74 135 + R85 136 + R65 137 + R19 138 + L11 139 + L95 140 + L654 141 + L38 142 + R39 143 + L94 144 + R47 145 + L92 146 + R92 147 + R20 148 + L53 149 + L67 150 + R6 151 + R94 152 + L24 153 + R63 154 + R261 155 + R291 156 + L97 157 + R10 158 + R27 159 + R69 160 + R817 161 + L81 162 + R5 163 + L73 164 + L94 165 + L98 166 + L733 167 + R96 168 + L63 169 + L806 170 + R40 171 + R39 172 + L70 173 + L66 174 + L47 175 + R9 176 + R44 177 + L19 178 + R370 179 + L470 180 + R68 181 + L87 182 + R90 183 + R72 184 + L328 185 + R24 186 + R64 187 + L183 188 + L46 189 + L90 190 + L84 191 + R87 192 + R64 193 + L45 194 + R94 195 + L81 196 + R13 197 + L32 198 + L6 199 + L594 200 + R56 201 + R72 202 + R111 203 + R57 204 + R4 205 + L69 206 + R98 207 + L52 208 + R295 209 + R128 210 + R57 211 + R843 212 + L860 213 + L40 214 + R90 215 + L6 216 + R19 217 + R440 218 + L43 219 + R33 220 + R99 221 + L32 222 + L167 223 + L13 224 + L20 225 + R4 226 + L49 227 + L48 228 + R83 229 + L90 230 + R75 231 + R97 232 + R28 233 + R345 234 + L90 235 + L21 236 + L34 237 + L93 238 + L7 239 + R661 240 + L18 241 + L43 242 + R91 243 + R57 244 + L52 245 + R4 246 + R292 247 + L92 248 + R488 249 + L46 250 + L476 251 + R90 252 + L8 253 + L48 254 + L17 255 + L370 256 + L22 257 + L93 258 + R2 259 + L661 260 + L39 261 + L12 262 + R12 263 + R50 264 + R9 265 + L48 266 + L593 267 + R9 268 + L70 269 + R43 270 + L63 271 + L15 272 + L27 273 + L96 274 + L706 275 + L93 276 + R67 277 + R695 278 + R38 279 + R9 280 + L54 281 + R8 282 + R44 283 + L207 284 + R413 285 + L25 286 + R12 287 + L52 288 + L452 289 + L10 290 + L86 291 + L35 292 + L574 293 + L91 294 + R48 295 + R339 296 + L872 297 + R85 298 + L54 299 + L67 300 + L62 301 + R68 302 + L85 303 + R43 304 + R953 305 + R41 306 + L36 307 + L489 308 + L12 309 + L76 310 + R77 311 + R99 312 + R73 313 + L97 314 + L176 315 + L195 316 + R98 317 + R68 318 + R76 319 + L39 320 + R438 321 + L7 322 + L51 323 + R492 324 + R220 325 + L388 326 + R759 327 + R29 328 + L181 329 + R161 330 + L80 331 + R48 332 + L348 333 + R17 334 + R9 335 + R74 336 + R21 337 + R19 338 + L155 339 + L85 340 + R50 341 + R59 342 + R91 343 + R710 344 + L40 345 + L70 346 + R272 347 + L72 348 + L28 349 + L72 350 + R804 351 + R96 352 + R14 353 + L14 354 + L95 355 + R92 356 + L9 357 + L74 358 + L14 359 + L56 360 + R25 361 + R50 362 + R55 363 + L27 364 + R17 365 + L64 366 + L43 367 + R16 368 + L873 369 + R82 370 + R1 371 + R65 372 + R52 373 + R68 374 + R73 375 + L80 376 + L99 377 + L62 378 + R53 379 + L47 380 + L6 381 + L66 382 + L641 383 + R7 384 + L45 385 + R69 386 + L96 387 + L138 388 + L12 389 + L18 390 + L81 391 + L75 392 + L504 393 + R38 394 + L26 395 + R12 396 + L573 397 + L68 398 + R11 399 + L94 400 + R58 401 + R42 402 + R621 403 + L81 404 + R660 405 + L38 406 + R30 407 + L10 408 + R70 409 + R86 410 + R77 411 + R39 412 + L8 413 + R754 414 + R2 415 + L18 416 + L393 417 + R9 418 + L73 419 + L8 420 + R76 421 + L89 422 + L50 423 + L56 424 + L19 425 + R19 426 + L97 427 + L53 428 + L11 429 + L39 430 + R15 431 + L63 432 + L87 433 + R63 434 + R44 435 + R23 436 + L95 437 + L395 438 + R95 439 + L66 440 + L71 441 + R986 442 + R51 443 + R5 444 + R95 445 + L98 446 + R15 447 + L217 448 + R95 449 + L70 450 + L986 451 + R86 452 + R714 453 + L441 454 + R943 455 + R59 456 + L359 457 + R537 458 + R76 459 + R346 460 + R27 461 + R51 462 + R69 463 + R21 464 + L22 465 + L52 466 + L10 467 + R98 468 + L82 469 + L47 470 + L53 471 + L58 472 + R84 473 + R57 474 + L1 475 + L82 476 + L53 477 + R453 478 + L35 479 + R35 480 + L88 481 + L991 482 + L21 483 + R46 484 + R1 485 + R53 486 + L90 487 + L66 488 + R84 489 + R76 490 + L759 491 + R312 492 + L57 493 + R8 494 + L18 495 + R54 496 + R94 497 + L138 498 + R65 499 + R885 500 + L15 501 + L835 502 + L16 503 + L13 504 + R29 505 + L78 506 + L704 507 + R515 508 + L113 509 + L170 510 + R50 511 + R685 512 + R233 513 + L32 514 + R4 515 + R94 516 + R97 517 + R919 518 + R49 519 + R983 520 + R68 521 + R3 522 + L84 523 + R23 524 + R58 525 + R70 526 + L96 527 + R17 528 + R37 529 + R849 530 + R65 531 + L70 532 + L72 533 + R441 534 + R926 535 + R312 536 + R83 537 + L62 538 + L30 539 + R85 540 + L549 541 + R94 542 + R94 543 + R67 544 + L861 545 + L21 546 + L79 547 + L95 548 + L53 549 + R48 550 + L316 551 + L34 552 + L999 553 + L97 554 + R36 555 + L790 556 + L84 557 + L99 558 + L317 559 + R27 560 + L74 561 + L54 562 + L15 563 + R79 564 + L54 565 + R691 566 + R53 567 + R74 568 + R53 569 + L2 570 + L57 571 + R79 572 + R22 573 + R78 574 + L31 575 + L69 576 + R8 577 + L23 578 + R15 579 + L1 580 + R71 581 + R39 582 + R14 583 + R88 584 + R89 585 + L66 586 + R46 587 + L3 588 + L73 589 + R169 590 + R59 591 + R68 592 + L610 593 + L83 594 + R92 595 + R1 596 + R547 597 + R53 598 + L80 599 + R795 600 + L32 601 + R51 602 + L91 603 + L13 604 + R34 605 + R36 606 + L51 607 + L97 608 + L91 609 + R39 610 + L46 611 + L28 612 + R6 613 + R68 614 + R32 615 + L33 616 + L699 617 + L21 618 + R21 619 + R71 620 + R26 621 + R303 622 + R9 623 + R99 624 + R21 625 + R71 626 + L25 627 + R80 628 + R217 629 + L64 630 + L60 631 + L33 632 + R485 633 + L42 634 + R83 635 + R66 636 + L46 637 + L64 638 + R702 639 + R40 640 + L60 641 + R87 642 + R34 643 + L67 644 + R795 645 + L583 646 + R755 647 + R66 648 + R37 649 + L67 650 + L11 651 + L25 652 + L590 653 + L55 654 + L55 655 + R962 656 + L62 657 + L77 658 + L94 659 + R571 660 + L43 661 + L257 662 + L72 663 + L28 664 + L10 665 + L42 666 + R6 667 + R660 668 + R86 669 + L387 670 + L830 671 + L83 672 + R45 673 + R54 674 + L99 675 + L44 676 + R44 677 + R99 678 + R1 679 + L85 680 + R332 681 + R82 682 + R309 683 + L62 684 + L56 685 + R53 686 + L73 687 + L9 688 + L560 689 + R822 690 + R67 691 + R81 692 + R29 693 + R470 694 + R49 695 + R54 696 + R41 697 + R32 698 + R8 699 + L17 700 + R38 701 + L89 702 + R27 703 + R54 704 + R42 705 + L87 706 + R59 707 + L11 708 + R55 709 + R21 710 + R72 711 + L61 712 + L94 713 + L35 714 + L29 715 + L652 716 + L163 717 + L6 718 + R95 719 + R376 720 + R21 721 + R89 722 + L89 723 + R66 724 + R260 725 + L52 726 + L74 727 + L69 728 + R351 729 + L49 730 + R867 731 + L37 732 + R37 733 + R68 734 + L68 735 + L87 736 + L77 737 + L36 738 + R61 739 + L24 740 + L52 741 + R15 742 + R86 743 + L86 744 + L7 745 + L67 746 + R96 747 + R91 748 + L13 749 + L35 750 + L53 751 + R14 752 + L77 753 + L32 754 + R83 755 + L84 756 + L60 757 + R34 758 + R36 759 + R87 760 + R58 761 + L85 762 + L957 763 + L794 764 + R77 765 + L512 766 + L9 767 + L91 768 + R42 769 + R86 770 + L28 771 + L997 772 + L3 773 + L702 774 + R90 775 + R58 776 + L8 777 + L77 778 + L9 779 + R548 780 + L772 781 + R2 782 + L38 783 + R31 784 + R216 785 + L40 786 + L491 787 + R82 788 + L604 789 + L80 790 + L49 791 + R89 792 + R498 793 + L44 794 + L31 795 + L463 796 + L96 797 + L17 798 + R66 799 + L59 800 + R30 801 + L30 802 + L281 803 + R970 804 + L15 805 + R2 806 + R41 807 + L62 808 + L73 809 + R20 810 + L633 811 + R31 812 + L458 813 + R57 814 + L47 815 + L52 816 + L97 817 + R58 818 + L22 819 + L90 820 + R51 821 + R22 822 + R22 823 + R806 824 + L487 825 + L363 826 + L14 827 + L77 828 + R8 829 + L17 830 + L75 831 + R75 832 + R44 833 + R836 834 + L839 835 + L41 836 + L14 837 + L42 838 + R86 839 + R68 840 + L65 841 + R67 842 + L4 843 + R4 844 + R45 845 + R31 846 + R740 847 + L16 848 + R24 849 + R34 850 + R16 851 + R56 852 + R34 853 + L50 854 + R96 855 + L10 856 + R971 857 + R81 858 + L52 859 + R241 860 + R59 861 + L1 862 + L660 863 + L39 864 + L83 865 + R83 866 + L68 867 + L32 868 + L58 869 + R73 870 + L548 871 + L10 872 + L656 873 + R57 874 + R91 875 + R494 876 + R57 877 + L866 878 + L15 879 + R81 880 + L16 881 + L84 882 + L17 883 + L60 884 + R77 885 + R68 886 + L29 887 + L39 888 + L6 889 + L794 890 + L21 891 + L374 892 + L780 893 + L25 894 + L7 895 + L60 896 + R75 897 + L8 898 + L16 899 + L75 900 + L53 901 + R44 902 + L98 903 + L11 904 + R33 905 + R76 906 + L79 907 + L57 908 + L7 909 + L57 910 + R75 911 + L61 912 + L244 913 + L299 914 + L91 915 + R20 916 + R17 917 + R78 918 + L904 919 + L91 920 + L84 921 + L83 922 + L33 923 + R70 924 + R30 925 + R67 926 + L67 927 + R19 928 + R81 929 + L69 930 + L33 931 + R5 932 + R44 933 + L81 934 + R973 935 + R38 936 + R36 937 + L57 938 + R146 939 + L30 940 + L54 941 + R40 942 + L63 943 + R780 944 + R72 945 + R53 946 + L967 947 + R71 948 + R64 949 + R32 950 + L87 951 + R30 952 + R57 953 + L96 954 + R81 955 + L285 956 + R8 957 + R889 958 + L67 959 + L399 960 + L31 961 + L55 962 + R58 963 + R78 964 + L7 965 + L21 966 + R930 967 + R17 968 + R222 969 + L68 970 + L54 971 + R88 972 + R96 973 + L36 974 + L48 975 + L840 976 + R97 977 + R71 978 + R70 979 + L80 980 + L68 981 + L664 982 + R56 983 + L78 984 + L464 985 + R785 986 + L94 987 + R9 988 + L8 989 + R4 990 + L96 991 + L543 992 + R3 993 + L60 994 + R6 995 + L6 996 + L45 997 + R978 998 + L529 999 + R96 1000 + L79 1001 + R18 1002 + L39 1003 + R89 1004 + L69 1005 + L868 1006 + R48 1007 + L73 1008 + R92 1009 + R81 1010 + R24 1011 + R69 1012 + R7 1013 + R15 1014 + L32 1015 + L83 1016 + L203 1017 + L77 1018 + L20 1019 + R88 1020 + L52 1021 + R201 1022 + L90 1023 + L26 1024 + R17 1025 + R62 1026 + L983 1027 + L17 1028 + R583 1029 + R19 1030 + R47 1031 + L49 1032 + R1 1033 + R69 1034 + L670 1035 + R36 1036 + R65 1037 + R20 1038 + R47 1039 + L813 1040 + R21 1041 + R10 1042 + L575 1043 + L47 1044 + L2 1045 + R15 1046 + R61 1047 + R253 1048 + R37 1049 + L677 1050 + L51 1051 + R20 1052 + L20 1053 + R29 1054 + R83 1055 + L89 1056 + R824 1057 + R99 1058 + R99 1059 + R83 1060 + L16 1061 + L316 1062 + R318 1063 + R86 1064 + R375 1065 + L75 1066 + L72 1067 + L328 1068 + R21 1069 + R23 1070 + R83 1071 + L64 1072 + R237 1073 + R71 1074 + R429 1075 + L70 1076 + R11 1077 + R33 1078 + L74 1079 + L77 1080 + L23 1081 + R31 1082 + L31 1083 + R78 1084 + L985 1085 + L293 1086 + L67 1087 + R273 1088 + R89 1089 + L29 1090 + L30 1091 + R36 1092 + R176 1093 + R92 1094 + R15 1095 + R80 1096 + R21 1097 + R96 1098 + R48 1099 + R427 1100 + L37 1101 + R90 1102 + R720 1103 + L631 1104 + L669 1105 + L88 1106 + L812 1107 + L59 1108 + L96 1109 + R55 1110 + R671 1111 + R33 1112 + L4 1113 + L992 1114 + R92 1115 + R52 1116 + L52 1117 + R60 1118 + R49 1119 + L94 1120 + L259 1121 + R79 1122 + R50 1123 + L985 1124 + L31 1125 + L645 1126 + L32 1127 + R8 1128 + R56 1129 + R44 1130 + R56 1131 + L409 1132 + R53 1133 + R810 1134 + R90 1135 + L67 1136 + R32 1137 + R935 1138 + R41 1139 + R80 1140 + R15 1141 + R54 1142 + L48 1143 + L69 1144 + R68 1145 + R59 1146 + R71 1147 + R87 1148 + R42 1149 + R63 1150 + L49 1151 + R86 1152 + R51 1153 + R49 1154 + L32 1155 + L60 1156 + R92 1157 + R36 1158 + R64 1159 + L19 1160 + R24 1161 + R52 1162 + R43 1163 + L75 1164 + R75 1165 + R53 1166 + R14 1167 + R33 1168 + L8 1169 + L71 1170 + R79 1171 + L93 1172 + R93 1173 + R24 1174 + R76 1175 + L55 1176 + L18 1177 + R73 1178 + R72 1179 + L72 1180 + R594 1181 + L41 1182 + L52 1183 + R99 1184 + R83 1185 + L25 1186 + L69 1187 + R31 1188 + L20 1189 + R91 1190 + R9 1191 + L61 1192 + L339 1193 + R63 1194 + L41 1195 + R78 1196 + L85 1197 + L34 1198 + R25 1199 + L65 1200 + R59 1201 + R15 1202 + R12 1203 + L29 1204 + R55 1205 + L76 1206 + L63 1207 + R59 1208 + L45 1209 + L28 1210 + R1 1211 + L992 1212 + L84 1213 + L23 1214 + R45 1215 + R99 1216 + L91 1217 + R345 1218 + L17 1219 + L83 1220 + L18 1221 + L60 1222 + R51 1223 + R27 1224 + R69 1225 + L20 1226 + R51 1227 + R547 1228 + L47 1229 + R889 1230 + R63 1231 + L817 1232 + R81 1233 + L33 1234 + L883 1235 + L46 1236 + R95 1237 + L9 1238 + L40 1239 + L467 1240 + R367 1241 + R7 1242 + L407 1243 + R13 1244 + R87 1245 + L83 1246 + L17 1247 + R771 1248 + R16 1249 + R181 1250 + R32 1251 + L63 1252 + R88 1253 + L25 1254 + R23 1255 + R41 1256 + L64 1257 + R40 1258 + R79 1259 + L63 1260 + L68 1261 + R12 1262 + R47 1263 + L47 1264 + R20 1265 + L20 1266 + L54 1267 + L46 1268 + L40 1269 + R44 1270 + R96 1271 + L26 1272 + R26 1273 + R16 1274 + R14 1275 + L33 1276 + R93 1277 + L34 1278 + R76 1279 + L782 1280 + L50 1281 + R29 1282 + R57 1283 + R8 1284 + L94 1285 + R576 1286 + R317 1287 + L93 1288 + R12 1289 + R81 1290 + R95 1291 + R12 1292 + L23 1293 + L77 1294 + R86 1295 + R433 1296 + R381 1297 + R170 1298 + L70 1299 + L950 1300 + L93 1301 + L253 1302 + L404 1303 + R75 1304 + R26 1305 + R99 1306 + L14 1307 + R14 1308 + L73 1309 + L267 1310 + L560 1311 + L37 1312 + L3 1313 + L860 1314 + L11 1315 + L56 1316 + L26 1317 + R32 1318 + R86 1319 + L708 1320 + R59 1321 + R44 1322 + L20 1323 + L41 1324 + R52 1325 + L173 1326 + R20 1327 + R48 1328 + R22 1329 + R23 1330 + R49 1331 + R94 1332 + L94 1333 + L93 1334 + L28 1335 + R736 1336 + R85 1337 + R2 1338 + R6 1339 + R92 1340 + L36 1341 + R39 1342 + L83 1343 + R83 1344 + L3 1345 + R11 1346 + R189 1347 + R209 1348 + R63 1349 + R6 1350 + L69 1351 + R49 1352 + R51 1353 + R49 1354 + R42 1355 + R4 1356 + L4 1357 + L88 1358 + R88 1359 + L24 1360 + L576 1361 + L65 1362 + R660 1363 + L3 1364 + L31 1365 + R939 1366 + R74 1367 + R945 1368 + R38 1369 + L157 1370 + L50 1371 + R50 1372 + R11 1373 + R44 1374 + L55 1375 + L15 1376 + L885 1377 + L12 1378 + L466 1379 + L22 1380 + R34 1381 + L20 1382 + L43 1383 + R54 1384 + L8 1385 + L62 1386 + L9 1387 + R5 1388 + R49 1389 + L64 1390 + R64 1391 + R98 1392 + L17 1393 + L69 1394 + L712 1395 + L52 1396 + R96 1397 + R74 1398 + L418 1399 + R23 1400 + L517 1401 + R65 1402 + R729 1403 + L9 1404 + R69 1405 + L32 1406 + R85 1407 + L15 1408 + R2 1409 + L80 1410 + L20 1411 + R89 1412 + R86 1413 + L1 1414 + R826 1415 + L863 1416 + L37 1417 + L68 1418 + R85 1419 + R62 1420 + R77 1421 + R167 1422 + L10 1423 + L59 1424 + R57 1425 + R89 1426 + R48 1427 + R12 1428 + R42 1429 + R98 1430 + R46 1431 + R54 1432 + L796 1433 + L704 1434 + L78 1435 + L58 1436 + R67 1437 + L91 1438 + L40 1439 + R7 1440 + L54 1441 + L87 1442 + R59 1443 + R91 1444 + L616 1445 + L641 1446 + R941 1447 + L51 1448 + L65 1449 + L87 1450 + R3 1451 + L430 1452 + R80 1453 + R99 1454 + R79 1455 + L828 1456 + L3 1457 + R37 1458 + R1 1459 + R53 1460 + L42 1461 + R954 1462 + R949 1463 + R251 1464 + R259 1465 + R65 1466 + R633 1467 + L96 1468 + R8 1469 + L82 1470 + L87 1471 + L70 1472 + L20 1473 + R123 1474 + R91 1475 + R21 1476 + L45 1477 + R435 1478 + R58 1479 + R152 1480 + R68 1481 + L7 1482 + R694 1483 + R80 1484 + L67 1485 + R21 1486 + L34 1487 + L8 1488 + L74 1489 + L817 1490 + R28 1491 + L629 1492 + R70 1493 + L57 1494 + L41 1495 + L718 1496 + R53 1497 + L445 1498 + L62 1499 + L69 1500 + R66 1501 + L71 1502 + L86 1503 + R36 1504 + L896 1505 + R536 1506 + L35 1507 + L73 1508 + R48 1509 + R44 1510 + L796 1511 + L14 1512 + R10 1513 + L92 1514 + R330 1515 + L58 1516 + R20 1517 + L25 1518 + R37 1519 + R10 1520 + R78 1521 + L30 1522 + R141 1523 + R22 1524 + L33 1525 + R74 1526 + L93 1527 + R909 1528 + L630 1529 + R53 1530 + R67 1531 + L80 1532 + R96 1533 + R4 1534 + L709 1535 + R86 1536 + R15 1537 + L2 1538 + R610 1539 + R652 1540 + R40 1541 + R8 1542 + L16 1543 + L684 1544 + R8 1545 + R484 1546 + R57 1547 + R29 1548 + L421 1549 + R582 1550 + R61 1551 + R225 1552 + R58 1553 + R17 1554 + L44 1555 + L93 1556 + L62 1557 + R366 1558 + R33 1559 + R96 1560 + R5 1561 + R69 1562 + L186 1563 + R81 1564 + R35 1565 + R63 1566 + L63 1567 + R247 1568 + L21 1569 + L26 1570 + L35 1571 + R35 1572 + R588 1573 + R12 1574 + L94 1575 + R255 1576 + R916 1577 + R141 1578 + R92 1579 + L61 1580 + R51 1581 + R223 1582 + R464 1583 + R12 1584 + L79 1585 + R80 1586 + L8 1587 + L50 1588 + L842 1589 + R461 1590 + L52 1591 + L91 1592 + R2 1593 + R80 1594 + L540 1595 + L60 1596 + R875 1597 + R43 1598 + L91 1599 + L527 1600 + L220 1601 + R20 1602 + R341 1603 + L441 1604 + L99 1605 + L46 1606 + L55 1607 + R59 1608 + L121 1609 + R50 1610 + R79 1611 + L167 1612 + L75 1613 + L425 1614 + L5 1615 + R5 1616 + L48 1617 + R74 1618 + R674 1619 + L61 1620 + L39 1621 + R308 1622 + L508 1623 + R95 1624 + R360 1625 + R96 1626 + L81 1627 + R38 1628 + R792 1629 + L15 1630 + L85 1631 + R28 1632 + L28 1633 + R20 1634 + R980 1635 + R42 1636 + L242 1637 + R92 1638 + L71 1639 + L21 1640 + R9 1641 + L51 1642 + R96 1643 + L54 1644 + R515 1645 + L15 1646 + L43 1647 + L57 1648 + L91 1649 + L98 1650 + R889 1651 + R73 1652 + L70 1653 + R97 1654 + L52 1655 + L87 1656 + L61 1657 + L47 1658 + R47 1659 + L53 1660 + L398 1661 + R655 1662 + R896 1663 + R51 1664 + L96 1665 + L75 1666 + R57 1667 + R753 1668 + R4 1669 + R6 1670 + R67 1671 + R33 1672 + L73 1673 + R21 1674 + L427 1675 + L18 1676 + R97 1677 + L32 1678 + R32 1679 + L69 1680 + R8 1681 + L62 1682 + L77 1683 + R96 1684 + L67 1685 + L5 1686 + L33 1687 + L91 1688 + R776 1689 + L876 1690 + L152 1691 + L48 1692 + R45 1693 + R540 1694 + L41 1695 + L44 1696 + L674 1697 + L19 1698 + R93 1699 + R44 1700 + R32 1701 + L76 1702 + L23 1703 + R83 1704 + L80 1705 + R20 1706 + L68 1707 + R68 1708 + R65 1709 + L29 1710 + L536 1711 + R72 1712 + L3 1713 + L498 1714 + R471 1715 + R36 1716 + R9 1717 + L87 1718 + L99 1719 + R99 1720 + L70 1721 + R182 1722 + R84 1723 + R934 1724 + L30 1725 + L3 1726 + R3 1727 + L32 1728 + R455 1729 + L47 1730 + R5 1731 + L992 1732 + L89 1733 + L29 1734 + R20 1735 + R809 1736 + L73 1737 + L27 1738 + L71 1739 + L67 1740 + R45 1741 + L7 1742 + L24 1743 + L842 1744 + L34 1745 + R79 1746 + L756 1747 + L10 1748 + R3 1749 + R1 1750 + R7 1751 + R272 1752 + R4 1753 + L580 1754 + R76 1755 + R420 1756 + R84 1757 + L97 1758 + L3 1759 + R83 1760 + R17 1761 + R64 1762 + L64 1763 + R55 1764 + R378 1765 + R74 1766 + L36 1767 + R57 1768 + L84 1769 + L84 1770 + R85 1771 + R86 1772 + R14 1773 + R55 1774 + R476 1775 + L76 1776 + L22 1777 + R22 1778 + R17 1779 + L49 1780 + R32 1781 + L6 1782 + R60 1783 + L54 1784 + L24 1785 + L377 1786 + L12 1787 + L87 1788 + R77 1789 + L77 1790 + R12 1791 + L160 1792 + R46 1793 + L70 1794 + R72 1795 + R40 1796 + L82 1797 + L58 1798 + L29 1799 + R29 1800 + R63 1801 + R21 1802 + L884 1803 + R713 1804 + R89 1805 + R998 1806 + R17 1807 + L17 1808 + L47 1809 + L53 1810 + R42 1811 + R58 1812 + L60 1813 + R60 1814 + R79 1815 + L279 1816 + R88 1817 + R33 1818 + R549 1819 + L58 1820 + R188 1821 + R835 1822 + R82 1823 + L70 1824 + L247 1825 + R74 1826 + L771 1827 + R97 1828 + R61 1829 + R39 1830 + R38 1831 + R350 1832 + L44 1833 + L15 1834 + R335 1835 + R536 1836 + L25 1837 + L160 1838 + R85 1839 + R103 1840 + R97 1841 + R79 1842 + R21 1843 + L4 1844 + R7 1845 + L93 1846 + R8 1847 + L95 1848 + R77 1849 + L953 1850 + R39 1851 + L87 1852 + L17 1853 + R31 1854 + R37 1855 + R50 1856 + L12 1857 + L688 1858 + R21 1859 + R6 1860 + L27 1861 + L361 1862 + L39 1863 + L38 1864 + R46 1865 + R48 1866 + R44 1867 + L75 1868 + L25 1869 + R22 1870 + L84 1871 + L28 1872 + R176 1873 + L72 1874 + L393 1875 + L49 1876 + R404 1877 + L76 1878 + R15 1879 + L15 1880 + L854 1881 + L76 1882 + R5 1883 + R25 1884 + L7 1885 + L1 1886 + L50 1887 + L92 1888 + R350 1889 + L68 1890 + L32 1891 + L618 1892 + R98 1893 + L56 1894 + R724 1895 + R9 1896 + R98 1897 + R45 1898 + L90 1899 + L794 1900 + R53 1901 + L269 1902 + L6 1903 + R84 1904 + R828 1905 + L91 1906 + L76 1907 + L39 1908 + R10 1909 + R14 1910 + L15 1911 + R44 1912 + R547 1913 + R67 1914 + L2 1915 + R839 1916 + L804 1917 + R17 1918 + L25 1919 + R38 1920 + R36 1921 + L53 1922 + R284 1923 + R577 1924 + R26 1925 + L80 1926 + L843 1927 + R23 1928 + L1 1929 + R306 1930 + L5 1931 + R98 1932 + R33 1933 + R69 1934 + L41 1935 + R55 1936 + R16 1937 + L278 1938 + R648 1939 + R30 1940 + R14 1941 + L13 1942 + R69 1943 + R80 1944 + L397 1945 + L91 1946 + L492 1947 + L795 1948 + L60 1949 + R27 1950 + R62 1951 + L34 1952 + R350 1953 + L50 1954 + L10 1955 + L130 1956 + R68 1957 + L28 1958 + R424 1959 + L424 1960 + L92 1961 + R492 1962 + L98 1963 + R98 1964 + L97 1965 + R11 1966 + R47 1967 + R13 1968 + R217 1969 + R9 1970 + R17 1971 + R683 1972 + R37 1973 + L37 1974 + R69 1975 + L69 1976 + L99 1977 + R65 1978 + R41 1979 + L83 1980 + R87 1981 + R31 1982 + R58 1983 + R949 1984 + R10 1985 + R38 1986 + R487 1987 + L54 1988 + L30 1989 + L17 1990 + L34 1991 + L49 1992 + L704 1993 + L27 1994 + L39 1995 + R96 1996 + R8 1997 + L270 1998 + R90 1999 + L74 2000 + R5 2001 + L11 2002 + R966 2003 + R4 2004 + L55 2005 + R68 2006 + L80 2007 + L11 2008 + R634 2009 + R990 2010 + L90 2011 + L27 2012 + L572 2013 + R3 2014 + R53 2015 + R90 2016 + R453 2017 + L72 2018 + R23 2019 + R49 2020 + L29 2021 + L88 2022 + R17 2023 + L9 2024 + L91 2025 + L849 2026 + L51 2027 + L363 2028 + R31 2029 + R81 2030 + L49 2031 + L28 2032 + R69 2033 + L41 2034 + L92 2035 + L4 2036 + L8 2037 + R85 2038 + L348 2039 + L33 2040 + R19 2041 + R81 2042 + L71 2043 + R71 2044 + R567 2045 + R93 2046 + L58 2047 + L582 2048 + L420 2049 + L96 2050 + L62 2051 + R58 2052 + R14 2053 + R4 2054 + L17 2055 + L95 2056 + L6 2057 + L69 2058 + R18 2059 + R51 2060 + L155 2061 + L58 2062 + R24 2063 + L3 2064 + R92 2065 + R74 2066 + R13 2067 + L2 2068 + R546 2069 + L64 2070 + R933 2071 + L74 2072 + L31 2073 + L95 2074 + R70 2075 + L21 2076 + R85 2077 + L66 2078 + R80 2079 + R52 2080 + R44 2081 + R47 2082 + R85 2083 + L35 2084 + R76 2085 + L17 2086 + R562 2087 + R30 2088 + R8 2089 + R30 2090 + R70 2091 + R74 2092 + L18 2093 + R744 2094 + R265 2095 + L85 2096 + R270 2097 + L92 2098 + L458 2099 + L67 2100 + R21 2101 + L54 2102 + L12 2103 + L88 2104 + R5 2105 + R644 2106 + L7 2107 + R50 2108 + R16 2109 + R92 2110 + R34 2111 + L88 2112 + L46 2113 + L54 2114 + L46 2115 + L84 2116 + R84 2117 + L92 2118 + L708 2119 + L10 2120 + R110 2121 + L43 2122 + L57 2123 + L99 2124 + L1 2125 + R73 2126 + L86 2127 + R13 2128 + L35 2129 + L33 2130 + R68 2131 + R4 2132 + R96 2133 + L29 2134 + R898 2135 + L76 2136 + R39 2137 + R96 2138 + R71 2139 + L99 2140 + L586 2141 + R150 2142 + R36 2143 + R26 2144 + R52 2145 + L13 2146 + R845 2147 + L10 2148 + L4 2149 + R17 2150 + L13 2151 + L91 2152 + L509 2153 + R39 2154 + R61 2155 + L98 2156 + R91 2157 + L30 2158 + L63 2159 + R73 2160 + L34 2161 + L31 2162 + L8 2163 + R47 2164 + R253 2165 + R57 2166 + L54 2167 + R756 2168 + R53 2169 + R587 2170 + R99 2171 + L630 2172 + R63 2173 + R66 2174 + R45 2175 + L42 2176 + R61 2177 + L92 2178 + R82 2179 + L33 2180 + L10 2181 + L69 2182 + L91 2183 + R352 2184 + R687 2185 + R11 2186 + L11 2187 + L87 2188 + R73 2189 + R27 2190 + R101 2191 + L11 2192 + L90 2193 + L40 2194 + R267 2195 + R870 2196 + L97 2197 + L82 2198 + L88 2199 + L56 2200 + R26 2201 + R52 2202 + R95 2203 + L47 2204 + R90 2205 + R810 2206 + L28 2207 + L972 2208 + R12 2209 + L87 2210 + R82 2211 + R516 2212 + R86 2213 + R91 2214 + L21 2215 + L79 2216 + L387 2217 + L837 2218 + L99 2219 + L5 2220 + L72 2221 + L28 2222 + L972 2223 + L92 2224 + R92 2225 + R83 2226 + R17 2227 + L88 2228 + R88 2229 + R39 2230 + R77 2231 + L72 2232 + R556 2233 + R129 2234 + L140 2235 + R71 2236 + R66 2237 + L23 2238 + L3 2239 + L83 2240 + L77 2241 + L92 2242 + R46 2243 + L94 2244 + R94 2245 + L94 2246 + R861 2247 + L34 2248 + R40 2249 + R25 2250 + R708 2251 + L35 2252 + R80 2253 + L13 2254 + L350 2255 + L82 2256 + L5 2257 + L20 2258 + L22 2259 + L18 2260 + R29 2261 + L59 2262 + R869 2263 + R75 2264 + R17 2265 + R77 2266 + R7 2267 + L78 2268 + L11 2269 + L629 2270 + R68 2271 + L68 2272 + R40 2273 + L13 2274 + R732 2275 + R9 2276 + L73 2277 + R4 2278 + L17 2279 + R23 2280 + L56 2281 + L81 2282 + L121 2283 + L468 2284 + R338 2285 + R51 2286 + L506 2287 + L94 2288 + L77 2289 + L528 2290 + L95 2291 + L43 2292 + L14 2293 + L16 2294 + L27 2295 + L418 2296 + R85 2297 + L211 2298 + L44 2299 + L612 2300 + L6 2301 + R224 2302 + R38 2303 + L83 2304 + L58 2305 + L716 2306 + R1 2307 + R3 2308 + L87 2309 + R97 2310 + L225 2311 + R585 2312 + L73 2313 + L23 2314 + R23 2315 + L564 2316 + L836 2317 + R56 2318 + L12 2319 + L44 2320 + R310 2321 + L33 2322 + R246 2323 + L87 2324 + R64 2325 + L674 2326 + R276 2327 + R98 2328 + R84 2329 + L42 2330 + L237 2331 + L41 2332 + R983 2333 + R15 2334 + R38 2335 + L73 2336 + R73 2337 + L11 2338 + R18 2339 + R93 2340 + L30 2341 + L70 2342 + R82 2343 + R16 2344 + R602 2345 + L12 2346 + R61 2347 + L49 2348 + L257 2349 + R57 2350 + L39 2351 + R39 2352 + L8 2353 + R42 2354 + L34 2355 + L62 2356 + L696 2357 + L714 2358 + L70 2359 + R142 2360 + R981 2361 + R58 2362 + R61 2363 + R638 2364 + R28 2365 + L42 2366 + R76 2367 + R87 2368 + R13 2369 + L88 2370 + L162 2371 + L439 2372 + L11 2373 + R25 2374 + L99 2375 + R3 2376 + R72 2377 + R74 2378 + R303 2379 + R22 2380 + R14 2381 + L614 2382 + R40 2383 + R860 2384 + R24 2385 + R332 2386 + L14 2387 + R58 2388 + L57 2389 + R43 2390 + R14 2391 + R69 2392 + R17 2393 + L86 2394 + L88 2395 + L415 2396 + L74 2397 + L23 2398 + R48 2399 + L53 2400 + R2 2401 + L92 2402 + R40 2403 + L445 2404 + L22 2405 + L28 2406 + R33 2407 + R69 2408 + R748 2409 + L994 2410 + L6 2411 + L76 2412 + R89 2413 + R348 2414 + R39 2415 + R84 2416 + L36 2417 + L194 2418 + R46 2419 + L450 2420 + L60 2421 + R10 2422 + L99 2423 + R71 2424 + L43 2425 + L872 2426 + R970 2427 + L15 2428 + L58 2429 + L333 2430 + L63 2431 + L58 2432 + R2 2433 + L85 2434 + L17 2435 + R66 2436 + L91 2437 + L77 2438 + R302 2439 + R25 2440 + L71 2441 + R83 2442 + R99 2443 + L36 2444 + R86 2445 + L86 2446 + L15 2447 + R15 2448 + R27 2449 + R53 2450 + L86 2451 + R694 2452 + L77 2453 + L19 2454 + L44 2455 + R362 2456 + L75 2457 + L35 2458 + L66 2459 + R10 2460 + L44 2461 + L383 2462 + L17 2463 + R922 2464 + R788 2465 + R58 2466 + L548 2467 + L15 2468 + R8 2469 + L56 2470 + L957 2471 + R69 2472 + R78 2473 + R17 2474 + L64 2475 + L39 2476 + L61 2477 + L987 2478 + L74 2479 + L142 2480 + L813 2481 + R21 2482 + R21 2483 + R79 2484 + L5 2485 + L62 2486 + R97 2487 + L7 2488 + R81 2489 + R191 2490 + L461 2491 + L24 2492 + L6 2493 + R5 2494 + R86 2495 + R372 2496 + L18 2497 + L54 2498 + R66 2499 + R366 2500 + R8 2501 + L63 2502 + L877 2503 + L50 2504 + L50 2505 + R22 2506 + R5 2507 + R71 2508 + R108 2509 + R594 2510 + L30 2511 + L926 2512 + L44 2513 + R27 2514 + L71 2515 + L78 2516 + R22 2517 + L82 2518 + R82 2519 + R22 2520 + L22 2521 + L38 2522 + L62 2523 + L92 2524 + L8 2525 + L84 2526 + R82 2527 + R619 2528 + L40 2529 + L18 2530 + L10 2531 + R51 2532 + L16 2533 + L35 2534 + L67 2535 + R46 2536 + L28 2537 + R195 2538 + R519 2539 + R86 2540 + R24 2541 + L24 2542 + R932 2543 + R72 2544 + L4 2545 + R70 2546 + R13 2547 + R97 2548 + R92 2549 + R105 2550 + R23 2551 + R94 2552 + R14 2553 + R10 2554 + L18 2555 + R234 2556 + R17 2557 + L51 2558 + R923 2559 + R64 2560 + L87 2561 + L837 2562 + L63 2563 + L19 2564 + L83 2565 + L98 2566 + R905 2567 + L9 2568 + R304 2569 + R509 2570 + L73 2571 + L36 2572 + L24 2573 + R74 2574 + R50 2575 + L280 2576 + L79 2577 + R25 2578 + L66 2579 + R72 2580 + R13 2581 + R15 2582 + R853 2583 + R29 2584 + R40 2585 + L822 2586 + L97 2587 + R64 2588 + R86 2589 + L99 2590 + L98 2591 + L59 2592 + R303 2593 + R51 2594 + L44 2595 + L7 2596 + R87 2597 + R37 2598 + L70 2599 + R20 2600 + R26 2601 + L804 2602 + R4 2603 + R88 2604 + L88 2605 + L749 2606 + R68 2607 + R40 2608 + R49 2609 + L8 2610 + R208 2611 + R25 2612 + R57 2613 + R64 2614 + R38 2615 + L85 2616 + R166 2617 + L73 2618 + R3 2619 + L80 2620 + R77 2621 + L90 2622 + R48 2623 + R17 2624 + L41 2625 + R39 2626 + L73 2627 + R72 2628 + R2 2629 + R24 2630 + L698 2631 + R62 2632 + L16 2633 + L63 2634 + L36 2635 + L81 2636 + L47 2637 + L319 2638 + R18 2639 + R59 2640 + R31 2641 + R92 2642 + R60 2643 + R443 2644 + R97 2645 + L96 2646 + R42 2647 + L46 2648 + R37 2649 + R47 2650 + L474 2651 + R90 2652 + R43 2653 + R28 2654 + R5 2655 + L76 2656 + L2 2657 + L24 2658 + R55 2659 + R51 2660 + L807 2661 + R97 2662 + R30 2663 + R47 2664 + L47 2665 + L16 2666 + L2 2667 + R63 2668 + L43 2669 + L2 2670 + R709 2671 + R91 2672 + L3 2673 + R10 2674 + R63 2675 + L70 2676 + L80 2677 + L42 2678 + R91 2679 + L27 2680 + L768 2681 + L956 2682 + L29 2683 + R911 2684 + R107 2685 + R352 2686 + L59 2687 + R959 2688 + R41 2689 + R256 2690 + L556 2691 + R50 2692 + L25 2693 + L316 2694 + R61 2695 + R30 2696 + R21 2697 + L846 2698 + R25 2699 + R692 2700 + R963 2701 + R38 2702 + L459 2703 + L34 2704 + R39 2705 + R96 2706 + R65 2707 + L22 2708 + R22 2709 + L235 2710 + R35 2711 + R425 2712 + L25 2713 + R76 2714 + L576 2715 + R464 2716 + L78 2717 + L85 2718 + L30 2719 + L63 2720 + R97 2721 + L74 2722 + L31 2723 + L60 2724 + L58 2725 + L24 2726 + R19 2727 + L74 2728 + R56 2729 + L459 2730 + L222 2731 + L21 2732 + R99 2733 + R39 2734 + R505 2735 + R90 2736 + R31 2737 + R24 2738 + R68 2739 + L13 2740 + R99 2741 + L80 2742 + L94 2743 + R40 2744 + L7 2745 + R42 2746 + L8 2747 + L692 2748 + R58 2749 + R42 2750 + R994 2751 + R2 2752 + R81 2753 + L77 2754 + R66 2755 + R98 2756 + R36 2757 + L66 2758 + L172 2759 + L683 2760 + L79 2761 + R90 2762 + R35 2763 + L42 2764 + L26 2765 + R43 2766 + L18 2767 + L62 2768 + R80 2769 + L28 2770 + R86 2771 + R40 2772 + L59 2773 + L39 2774 + R39 2775 + R61 2776 + L30 2777 + R23 2778 + R19 2779 + L12 2780 + R92 2781 + R462 2782 + L68 2783 + R114 2784 + R54 2785 + R46 2786 + R31 2787 + L87 2788 + L30 2789 + R992 2790 + L6 2791 + R71 2792 + R429 2793 + L377 2794 + L13 2795 + R99 2796 + L9 2797 + L239 2798 + L87 2799 + R44 2800 + L18 2801 + L91 2802 + R66 2803 + R73 2804 + L48 2805 + L988 2806 + R88 2807 + R28 2808 + L28 2809 + R86 2810 + R190 2811 + L76 2812 + R23 2813 + L423 2814 + R16 2815 + L16 2816 + R83 2817 + L78 2818 + R95 2819 + L5 2820 + R31 2821 + L38 2822 + R412 2823 + L44 2824 + L56 2825 + L581 2826 + R63 2827 + R7 2828 + L70 2829 + R81 2830 + R578 2831 + L64 2832 + L11 2833 + R28 2834 + R73 2835 + R96 2836 + L1 2837 + R875 2838 + R28 2839 + R59 2840 + L13 2841 + R52 2842 + L18 2843 + R15 2844 + L23 2845 + L477 2846 + L97 2847 + L471 2848 + L28 2849 + R99 2850 + L52 2851 + L48 2852 + R987 2853 + R51 2854 + L38 2855 + L82 2856 + L18 2857 + L66 2858 + L480 2859 + R63 2860 + L19 2861 + L98 2862 + L35 2863 + R3 2864 + L68 2865 + R5 2866 + R2 2867 + R53 2868 + L712 2869 + L48 2870 + L19 2871 + R29 2872 + R73 2873 + L83 2874 + L32 2875 + R32 2876 + L51 2877 + L89 2878 + L5 2879 + L11 2880 + L52 2881 + L92 2882 + L18 2883 + L182 2884 + L59 2885 + R59 2886 + R81 2887 + R60 2888 + L41 2889 + L671 2890 + L72 2891 + R43 2892 + L42 2893 + L91 2894 + R34 2895 + R99 2896 + R35 2897 + L35 2898 + L22 2899 + L8 2900 + L28 2901 + R58 2902 + R61 2903 + R22 2904 + R936 2905 + L10 2906 + L80 2907 + L29 2908 + R67 2909 + L38 2910 + R497 2911 + L50 2912 + R66 2913 + R39 2914 + L90 2915 + R9 2916 + L90 2917 + L70 2918 + R25 2919 + L65 2920 + L87 2921 + R47 2922 + L70 2923 + L41 2924 + L77 2925 + L72 2926 + L36 2927 + L64 2928 + R83 2929 + L12 2930 + L65 2931 + R94 2932 + R725 2933 + R75 2934 + R21 2935 + L490 2936 + R69 2937 + R54 2938 + L454 2939 + L331 2940 + L69 2941 + R834 2942 + R66 2943 + R335 2944 + R65 2945 + L18 2946 + R705 2947 + R32 2948 + R81 2949 + R821 2950 + L21 2951 + L637 2952 + R183 2953 + L83 2954 + R37 2955 + R22 2956 + R78 2957 + R18 2958 + L18 2959 + R3 2960 + R43 2961 + R514 2962 + L655 2963 + R95 2964 + R31 2965 + L531 2966 + L16 2967 + L211 2968 + R21 2969 + R5 2970 + R46 2971 + L28 2972 + R77 2973 + R6 2974 + R54 2975 + L70 2976 + L69 2977 + L38 2978 + L13 2979 + L4 2980 + R16 2981 + L31 2982 + L263 2983 + L14 2984 + L63 2985 + R95 2986 + L659 2987 + L5 2988 + R195 2989 + L31 2990 + L34 2991 + R551 2992 + R923 2993 + L240 2994 + R53 2995 + R347 2996 + R73 2997 + L57 2998 + L16 2999 + R90 3000 + R10 3001 + L453 3002 + R53 3003 + R7 3004 + L77 3005 + R79 3006 + R91 3007 + R13 3008 + R487 3009 + R81 3010 + L77 3011 + R1 3012 + R95 3013 + L66 3014 + R295 3015 + L29 3016 + R84 3017 + L84 3018 + L689 3019 + R36 3020 + L68 3021 + R91 3022 + L99 3023 + L71 3024 + R49 3025 + R50 3026 + R82 3027 + L781 3028 + L269 3029 + L53 3030 + L136 3031 + L704 3032 + R83 3033 + L47 3034 + R797 3035 + L71 3036 + R46 3037 + L28 3038 + L42 3039 + L88 3040 + L288 3041 + L64 3042 + R79 3043 + L605 3044 + L635 3045 + R44 3046 + L58 3047 + R448 3048 + R58 3049 + L967 3050 + L472 3051 + R25 3052 + R48 3053 + L718 3054 + R23 3055 + R145 3056 + R260 3057 + L39 3058 + R628 3059 + R53 3060 + L28 3061 + R47 3062 + R88 3063 + R54 3064 + R86 3065 + R16 3066 + L16 3067 + L11 3068 + R48 3069 + R63 3070 + L21 3071 + L64 3072 + L793 3073 + R80 3074 + R63 3075 + R335 3076 + L81 3077 + L503 3078 + R84 3079 + L11 3080 + R14 3081 + L89 3082 + R748 3083 + L6 3084 + L45 3085 + R89 3086 + R45 3087 + L64 3088 + R52 3089 + L33 3090 + R179 3091 + R555 3092 + L34 3093 + R19 3094 + R678 3095 + R3 3096 + L30 3097 + L70 3098 + L346 3099 + R63 3100 + L30 3101 + L35 3102 + R46 3103 + L98 3104 + R30 3105 + L62 3106 + R10 3107 + L10 3108 + R17 3109 + R753 3110 + R30 3111 + R32 3112 + L666 3113 + L946 3114 + L58 3115 + R883 3116 + R77 3117 + L67 3118 + R877 3119 + R47 3120 + L104 3121 + R1 3122 + R32 3123 + R47 3124 + L15 3125 + L8 3126 + L70 3127 + R80 3128 + L56 3129 + L52 3130 + L89 3131 + L13 3132 + R33 3133 + L38 3134 + R78 3135 + R8 3136 + R50 3137 + R979 3138 + L905 3139 + R22 3140 + R473 3141 + L5 3142 + R605 3143 + L3 3144 + L619 3145 + R97 3146 + L48 3147 + L674 3148 + L16 3149 + R63 3150 + L2 3151 + R2 3152 + R98 3153 + L1 3154 + R33 3155 + L91 3156 + L49 3157 + L97 3158 + L19 3159 + L90 3160 + R42 3161 + R74 3162 + L55 3163 + L89 3164 + L59 3165 + L926 3166 + R50 3167 + L99 3168 + L65 3169 + R543 3170 + R93 3171 + R607 3172 + L52 3173 + L515 3174 + R67 3175 + L13 3176 + L787 3177 + R34 3178 + R60 3179 + R25 3180 + R81 3181 + L51 3182 + L49 3183 + L54 3184 + L18 3185 + R83 3186 + R289 3187 + R43 3188 + L43 3189 + R6 3190 + L33 3191 + R60 3192 + R91 3193 + R76 3194 + R430 3195 + L30 3196 + R154 3197 + R485 3198 + L106 3199 + L974 3200 + L73 3201 + R14 3202 + R95 3203 + R73 3204 + R92 3205 + R540 3206 + L15 3207 + L75 3208 + L89 3209 + R197 3210 + L12 3211 + R894 3212 + L25 3213 + R25 3214 + L76 3215 + L10 3216 + L14 3217 + R23 3218 + L10 3219 + R87 3220 + L92 3221 + R41 3222 + L49 3223 + R923 3224 + L50 3225 + R68 3226 + L40 3227 + L1 3228 + R37 3229 + L96 3230 + R55 3231 + R133 3232 + L29 3233 + R30 3234 + R70 3235 + R28 3236 + L23 3237 + L322 3238 + R715 3239 + L32 3240 + R34 3241 + L40 3242 + R40 3243 + L89 3244 + R18 3245 + L29 3246 + R9 3247 + L16 3248 + R2 3249 + R38 3250 + L38 3251 + R30 3252 + L195 3253 + R70 3254 + L930 3255 + R16 3256 + R48 3257 + R819 3258 + R47 3259 + R54 3260 + R360 3261 + L37 3262 + R65 3263 + R11 3264 + R92 3265 + R45 3266 + L34 3267 + L57 3268 + L24 3269 + R25 3270 + R4 3271 + L71 3272 + L30 3273 + L33 3274 + R47 3275 + L17 3276 + R33 3277 + L802 3278 + L43 3279 + L84 3280 + L4 3281 + R1 3282 + L72 3283 + R44 3284 + R99 3285 + R28 3286 + L87 3287 + R787 3288 + L919 3289 + L4 3290 + L77 3291 + L11 3292 + L89 3293 + L42 3294 + R42 3295 + L30 3296 + L69 3297 + R74 3298 + L609 3299 + R529 3300 + R323 3301 + R82 3302 + L23 3303 + R465 3304 + L42 3305 + R59 3306 + R41 3307 + R5 3308 + R75 3309 + L295 3310 + L11 3311 + L69 3312 + R278 3313 + L527 3314 + R14 3315 + L545 3316 + R75 3317 + R20 3318 + R86 3319 + L6 3320 + L32 3321 + R73 3322 + L258 3323 + R17 3324 + R65 3325 + R63 3326 + R72 3327 + R25 3328 + L48 3329 + R23 3330 + L895 3331 + L24 3332 + R19 3333 + L66 3334 + L28 3335 + R94 3336 + L60 3337 + R60 3338 + L56 3339 + R56 3340 + L393 3341 + R93 3342 + R60 3343 + L91 3344 + R31 3345 + L84 3346 + R413 3347 + L229 3348 + R70 3349 + R30 3350 + R79 3351 + R21 3352 + L95 3353 + R95 3354 + R86 3355 + R97 3356 + L83 3357 + R6 3358 + R186 3359 + L92 3360 + R17 3361 + L13 3362 + R96 3363 + L88 3364 + R288 3365 + R76 3366 + R28 3367 + R20 3368 + R976 3369 + L39 3370 + L638 3371 + L96 3372 + L2 3373 + L58 3374 + L54 3375 + R987 3376 + R74 3377 + L74 3378 + L75 3379 + L55 3380 + L12 3381 + R42 3382 + R14 3383 + L58 3384 + L56 3385 + R62 3386 + L30 3387 + R568 3388 + L27 3389 + L4 3390 + L25 3391 + R29 3392 + R177 3393 + R389 3394 + L65 3395 + R83 3396 + R934 3397 + L41 3398 + L50 3399 + L5 3400 + L74 3401 + R6 3402 + L43 3403 + L373 3404 + R89 3405 + R49 3406 + R51 3407 + L52 3408 + R20 3409 + R32 3410 + R57 3411 + L53 3412 + L204 3413 + L72 3414 + L7 3415 + L49 3416 + R97 3417 + R69 3418 + L187 3419 + R91 3420 + R51 3421 + R16 3422 + L9 3423 + L633 3424 + R626 3425 + L518 3426 + R14 3427 + R11 3428 + R87 3429 + R16 3430 + L3 3431 + L48 3432 + R21 3433 + R39 3434 + R45 3435 + R43 3436 + R60 3437 + L60 3438 + R99 3439 + R1 3440 + L32 3441 + L668 3442 + R9 3443 + L57 3444 + L43 3445 + R53 3446 + R38 3447 + R940 3448 + L77 3449 + R85 3450 + R6 3451 + R4 3452 + L89 3453 + R131 3454 + R24 3455 + L24 3456 + R52 3457 + L75 3458 + L77 3459 + R68 3460 + R32 3461 + R25 3462 + R92 3463 + R52 3464 + R333 3465 + R198 3466 + R13 3467 + L62 3468 + R49 3469 + L92 3470 + R54 3471 + L62 3472 + R85 3473 + L72 3474 + R43 3475 + R244 3476 + L12 3477 + R9 3478 + R46 3479 + R75 3480 + L18 3481 + L1 3482 + R84 3483 + R67 3484 + R150 3485 + L91 3486 + L96 3487 + L13 3488 + R826 3489 + R74 3490 + L95 3491 + L74 3492 + L60 3493 + L71 3494 + R980 3495 + L722 3496 + R23 3497 + R72 3498 + R75 3499 + R27 3500 + L82 3501 + R30 3502 + L43 3503 + L64 3504 + R219 3505 + R66 3506 + L81 3507 + L113 3508 + R53 3509 + L79 3510 + L61 3511 + L71 3512 + R71 3513 + L45 3514 + R504 3515 + L47 3516 + L493 3517 + L87 3518 + R36 3519 + L68 3520 + L39 3521 + L21 3522 + L75 3523 + R35 3524 + L57 3525 + R19 3526 + L962 3527 + R39 3528 + L39 3529 + R88 3530 + R12 3531 + R72 3532 + R61 3533 + L33 3534 + L171 3535 + L60 3536 + R63 3537 + L921 3538 + L27 3539 + L97 3540 + L73 3541 + L14 3542 + R71 3543 + R29 3544 + L94 3545 + L98 3546 + L16 3547 + L19 3548 + L73 3549 + L83 3550 + R83 3551 + R240 3552 + R69 3553 + L648 3554 + R50 3555 + L11 3556 + R835 3557 + R25 3558 + L360 3559 + R74 3560 + R21 3561 + R578 3562 + R27 3563 + L54 3564 + L46 3565 + L66 3566 + R941 3567 + R25 3568 + L35 3569 + R76 3570 + L41 3571 + R38 3572 + L38 3573 + R739 3574 + R418 3575 + L16 3576 + R91 3577 + R68 3578 + R15 3579 + L515 3580 + L14 3581 + L57 3582 + R64 3583 + L93 3584 + L40 3585 + R60 3586 + R80 3587 + R51 3588 + R81 3589 + L23 3590 + L89 3591 + L20 3592 + R71 3593 + R29 3594 + L59 3595 + R64 3596 + L393 3597 + L112 3598 + L87 3599 + L52 3600 + R753 3601 + L39 3602 + R703 3603 + R11 3604 + L89 3605 + R82 3606 + R18 3607 + L56 3608 + L87 3609 + L41 3610 + R1 3611 + R283 3612 + R42 3613 + R558 3614 + R86 3615 + R14 3616 + L50 3617 + L49 3618 + L1 3619 + R11 3620 + R389 3621 + L244 3622 + L268 3623 + R52 3624 + L78 3625 + L20 3626 + L83 3627 + L30 3628 + L169 3629 + R83 3630 + R57 3631 + L223 3632 + L83 3633 + L59 3634 + L83 3635 + L152 3636 + R906 3637 + L73 3638 + L54 3639 + R766 3640 + R95 3641 + L22 3642 + R12 3643 + L42 3644 + R12 3645 + R588 3646 + L88 3647 + L59 3648 + R44 3649 + R84 3650 + L69 3651 + R48 3652 + R98 3653 + R42 3654 + L37 3655 + R72 3656 + L623 3657 + R33 3658 + L44 3659 + L89 3660 + R83 3661 + L58 3662 + R75 3663 + R38 3664 + L59 3665 + L79 3666 + L446 3667 + R723 3668 + R23 3669 + L10 3670 + R99 3671 + L22 3672 + R53 3673 + L43 3674 + L77 3675 + L40 3676 + R80 3677 + L28 3678 + L987 3679 + R71 3680 + L389 3681 + L7 3682 + R92 3683 + R41 3684 + R99 3685 + R71 3686 + R40 3687 + R184 3688 + R918 3689 + R85 3690 + L30 3691 + L56 3692 + R123 3693 + L22 3694 + R22 3695 + L767 3696 + L89 3697 + L11 3698 + R627 3699 + L24 3700 + L82 3701 + R71 3702 + L48 3703 + R87 3704 + L20 3705 + L48 3706 + L31 3707 + R68 3708 + L9 3709 + R139 3710 + L46 3711 + L95 3712 + R78 3713 + R33 3714 + R39 3715 + L985 3716 + L54 3717 + L52 3718 + R52 3719 + L681 3720 + R57 3721 + R98 3722 + L47 3723 + R659 3724 + L77 3725 + L50 3726 + L1 3727 + R40 3728 + R2 3729 + L14 3730 + L30 3731 + R98 3732 + L31 3733 + L23 3734 + L44 3735 + R44 3736 + R40 3737 + L40 3738 + R226 3739 + R5 3740 + R569 3741 + R26 3742 + R74 3743 + L82 3744 + R82 3745 + L61 3746 + L73 3747 + L78 3748 + L2 3749 + L86 3750 + R522 3751 + R18 3752 + L48 3753 + L92 3754 + L7 3755 + L14 3756 + R121 3757 + R24 3758 + L29 3759 + L63 3760 + R63 3761 + L1 3762 + L39 3763 + L67 3764 + R79 3765 + L67 3766 + L39 3767 + L67 3768 + R921 3769 + R41 3770 + L456 3771 + L964 3772 + R57 3773 + L85 3774 + L94 3775 + R1 3776 + R68 3777 + L52 3778 + L31 3779 + R66 3780 + L66 3781 + L53 3782 + L747 3783 + R43 3784 + R57 3785 + R838 3786 + R98 3787 + R35 3788 + R9 3789 + L80 3790 + L67 3791 + L70 3792 + R426 3793 + R497 3794 + R55 3795 + R59 3796 + L86 3797 + R15 3798 + L939 3799 + R10 3800 + L493 3801 + L7 3802 + L16 3803 + L40 3804 + L199 3805 + L45 3806 + R84 3807 + R16 3808 + L102 3809 + L38 3810 + R140 3811 + L771 3812 + L47 3813 + R19 3814 + R99 3815 + R27 3816 + L40 3817 + L86 3818 + L39 3819 + R2 3820 + L64 3821 + L572 3822 + L21 3823 + L63 3824 + R3 3825 + R30 3826 + R547 3827 + R630 3828 + L54 3829 + R45 3830 + L45 3831 + L35 3832 + R35 3833 + R93 3834 + R2 3835 + R62 3836 + R13 3837 + L95 3838 + R25 3839 + R29 3840 + R95 3841 + L99 3842 + R98 3843 + L213 3844 + L76 3845 + R95 3846 + L77 3847 + L52 3848 + L8 3849 + L64 3850 + R72 3851 + L16 3852 + R16 3853 + L591 3854 + L9 3855 + L66 3856 + L34 3857 + R4 3858 + R50 3859 + R994 3860 + R44 3861 + R36 3862 + L28 3863 + L33 3864 + L47 3865 + L20 3866 + R10 3867 + L6 3868 + L37 3869 + L89 3870 + L78 3871 + L643 3872 + R67 3873 + R76 3874 + L930 3875 + R643 3876 + L13 3877 + L37 3878 + L63 3879 + R51 3880 + R88 3881 + R33 3882 + L54 3883 + L18 3884 + R31 3885 + R69 3886 + L718 3887 + L46 3888 + R279 3889 + R29 3890 + R53 3891 + L92 3892 + L5 3893 + R780 3894 + R520 3895 + L5 3896 + R56 3897 + R12 3898 + L63 3899 + L533 3900 + R730 3901 + R3 3902 + L960 3903 + L262 3904 + R872 3905 + R71 3906 + R40 3907 + R96 3908 + L23 3909 + L864 3910 + R7 3911 + R12 3912 + L85 3913 + L54 3914 + R99 3915 + L49 3916 + L13 3917 + L87 3918 + R55 3919 + R1 3920 + L875 3921 + L981 3922 + L45 3923 + L14 3924 + L71 3925 + R30 3926 + L53 3927 + L47 3928 + L6 3929 + L94 3930 + L339 3931 + L4 3932 + L86 3933 + R417 3934 + L388 3935 + R37 3936 + L37 3937 + R99 3938 + R51 3939 + L533 3940 + L951 3941 + R34 3942 + L18 3943 + R87 3944 + L69 3945 + R77 3946 + L77 3947 + L70 3948 + R70 3949 + L17 3950 + R517 3951 + R15 3952 + L10 3953 + R495 3954 + R884 3955 + R48 3956 + R75 3957 + L7 3958 + L791 3959 + R43 3960 + L76 3961 + L43 3962 + L33 3963 + R123 3964 + R77 3965 + L20 3966 + L52 3967 + L749 3968 + R78 3969 + R43 3970 + L66 3971 + L27 3972 + R93 3973 + L2 3974 + R2 3975 + R308 3976 + R899 3977 + L207 3978 + R89 3979 + R99 3980 + L216 3981 + R828 3982 + L350 3983 + R50 3984 + R10 3985 + R90 3986 + R97 3987 + R802 3988 + L608 3989 + R36 3990 + L59 3991 + L54 3992 + R86 3993 + R71 3994 + R869 3995 + L40 3996 + R45 3997 + L45 3998 + R11 3999 + R40 4000 + L197 4001 + R94 4002 + R46 4003 + R6 4004 + L65 4005 + L35 4006 + L82 4007 + R82 4008 + R839 4009 + L70 4010 + L544 4011 + R769 4012 + L87 4013 + R52 4014 + R41 4015 + R75 4016 + L22 4017 + L53 4018 + L68 4019 + L32 4020 + R846 4021 + L38 4022 + L99 4023 + L21 4024 + R33 4025 + L18 4026 + L3 4027 + L33 4028 + L67 4029 + R42 4030 + R733 4031 + L775 4032 + R9 4033 + L9 4034 + L96 4035 + R69 4036 + L323 4037 + L41 4038 + R479 4039 + L41 4040 + L15 4041 + R8 4042 + L675 4043 + R70 4044 + L77 4045 + L46 4046 + R33 4047 + L45 4048 + R498 4049 + L73 4050 + L14 4051 + L79 4052 + L31 4053 + L560 4054 + R59 4055 + L51 4056 + R41 4057 + R48 4058 + L718 4059 + R80 4060 + R23 4061 + R80 4062 + R67 4063 + R797 4064 + L4 4065 + L63 4066 + L64 4067 + L705 4068 + R55 4069 + L65 4070 + R85 4071 + R357 4072 + R1 4073 + R8 4074 + R62 4075 + L34 4076 + R77 4077 + R305 4078 + R18 4079 + R62 4080 + L72 4081 + L75 4082 + R85 4083 + L73 4084 + R88 4085 + L55 4086 + L388 4087 + R23 4088 + L32 4089 + R37 4090 + L51 4091 + L6 4092 + L843 4093 + L74 4094 + R25 4095 + R43 4096 + L94 4097 + R68 4098 + L539 4099 + R71 4100 + L92 4101 + R92 4102 + R80 4103 + L60 4104 + R880 4105 + R88 4106 + R26 4107 + R81 4108 + L95 4109 + L67 4110 + L73 4111 + R40 4112 + R2 4113 + R523 4114 + L37 4115 + L688 4116 + L99 4117 + L80 4118 + L21 4119 + L723 4120 + R195 4121 + L5 4122 + R7 4123 + R26 4124 + L281 4125 + L69 4126 + R94 4127 + R180 4128 + R76 4129 + L588 4130 + L512 4131 + R46 4132 + R54 4133 + R8 4134 + R586 4135 + R2 4136 + L96 4137 + L36 4138 + R91 4139 + R23 4140 + L83 4141 + L17 4142 + R22 4143 + R730 4144 + L93 4145 + L91 4146 + R34 4147 + L566 4148 + L14 4149 + L87 4150 + L17 4151 + L719 4152 + R23 4153 + L76 4154 + L24 4155 + L24 4156 + L76 4157 + R97 4158 + R33 4159 + L30 4160 + R68 4161 + R32 4162 + L15 4163 + L34 4164 + R49 4165 + L1 4166 + L90 4167 + R91 4168 + R15 4169 + R25 4170 + R60 4171 + R79 4172 + R31 4173 + L63 4174 + L54 4175 + R31 4176 + R861 4177 + R14 4178 + L99 4179 + R28 4180 + R80 4181 + R27 4182 + R82 4183 + R83 4184 + L23 4185 + L562 4186 + L29 4187 + R46 4188 + R80 4189 + R88 4190 + L27 4191 + L57 4192 + R81 4193 + R32 4194 + R228 4195 + R93 4196 + L77 4197 + L50 4198 + L23 4199 + R40 4200 + R79 4201 + L19 4202 + R30 4203 + L30 4204 + R60 4205 + R60 4206 + R505 4207 + L26 4208 + R90 4209 + L17 4210 + R28 4211 + R66 4212 + L66 4213 + L644 4214 + L239 4215 + L833 4216 + R17 4217 + R99 4218 + R90 4219 + L48 4220 + L72 4221 + R942 4222 + R93 4223 + L48 4224 + L429 4225 + R72 4226 + R54 4227 + R53 4228 + R93 4229 + L29 4230 + R29 4231 + L90 4232 + R9 4233 + R85 4234 + L4 4235 + L20 4236 + R20 4237 + L624 4238 + L76 4239 + R273 4240 + L195 4241 + L63 4242 + L15 4243 + L85 4244 + L5 4245 + R11 4246 + L85 4247 + R81 4248 + R55 4249 + L30 4250 + R93 4251 + L62 4252 + L96 4253 + R49 4254 + L63 4255 + R66 4256 + L73 4257 + L334 4258 + L22 4259 + R8 4260 + L8 4261 + L28 4262 + R91 4263 + R30 4264 + R7 4265 + L12 4266 + R68 4267 + R544 4268 + R56 4269 + L795 4270 + L61 4271 + L236 4272 + L64 4273 + L75 4274 + R62 4275 + L787 4276 + L81 4277 + L275 4278 + R784 4279 + L70 4280 + L58 4281 + L27 4282 + L64 4283 + R991 4284 + L42 4285 + R42 4286 + R1 4287 + L52 4288 + L49 4289 + L74 4290 + R74 4291 + L557 4292 + R57 4293 + L44 4294 + R44 4295 + L748 4296 + R748 4297 + L75 4298 + L5 4299 + L75 4300 + L45 4301 + L870 4302 + L9 4303 + R40 4304 + L274 4305 + L287 4306 + L312 4307 + L888 4308 + L53 4309 + R53 4310 + R425 4311 + R139 4312 + R79 4313 + L53 4314 + L84 4315 + L562 4316 + L18 4317 + L26 4318 + L98 4319 + L17 4320 + L85 4321 + R15 4322 + L15 4323 + L46 4324 + R46 4325 + R79 4326 + R74 4327 + L21 4328 + L34 4329 + L98 4330 + L169 4331 + L12 4332 + L42 4333 + L477 4334 + R4 4335 + R61 4336 + R58 4337 + R77 4338 + L54 4339 + R54 4340 + R577 4341 + L39 4342 + R61 4343 + L23 4344 + R28 4345 + R996 4346 + L41 4347 + L19 4348 + R47 4349 + L355 4350 + L32 4351 + R89 4352 + R98 4353 + R13 4354 + R55 4355 + R33 4356 + L88 4357 + L79 4358 + R79 4359 + R8 4360 + L8 4361 + R26 4362 + R74 4363 + R52 4364 + L85 4365 + L44 4366 + L23 4367 + L927 4368 + R27 4369 + R81 4370 + L944 4371 + R42 4372 + R58 4373 + L37 4374 + R65 4375 + L19 4376 + R79 4377 + L51 4378 + R19 4379 + R820 4380 + R487 4381 + L39 4382 + R14 4383 + L75 4384 + R60 4385 + R91 4386 + R549 4387 + L75 4388 + L28 4389 + R3 4390 + L58 4391 + R49 4392 + L48 4393 + R16 4394 + L77 4395 + L82 4396 + L79 4397 + L21 4398 + L88 4399 + L33 4400 + L79 4401 + R31 4402 + R69 4403 + R92 4404 + L92 4405 + R45 4406 + R55 4407 + R86 4408 + L791 4409 + R5 4410 + L639 4411 + L48 4412 + R63 4413 + L32 4414 + R56 4415 + L81 4416 + R32 4417 + L531 4418 + L155 4419 + L86 4420 + R46 4421 + R39 4422 + L764 4423 + R93 4424 + L34 4425 + L89 4426 + R30 4427 + R32 4428 + R468 4429 + R296 4430 + R4 4431 + L54 4432 + R97 4433 + R31 4434 + L12 4435 + R38 4436 + L3 4437 + L85 4438 + L12 4439 + L21 4440 + L79 4441 + L25 4442 + R82 4443 + L93 4444 + R53 4445 + R83 4446 + R93 4447 + L52 4448 + L4 4449 + R63 4450 + L86 4451 + R83 4452 + L88 4453 + R68 4454 + R1 4455 + R22 4456 + L80 4457 + R86 4458 + R7 4459 + R78 4460 + L53 4461 + R62 4462 + R96 4463 + R11 4464 + R38 4465 + R81 4466 + R61 4467 + R52 4468 + L85 4469 + L54 4470 + R71 4471 + L71 4472 + R61 4473 + R69 4474 + L57 4475 + L26 4476 + L33 4477 + L14 4478 + R73 4479 + L62 4480 + R44 4481 + R31 4482 + R41 4483 + R2 4484 + R18 4485 + L29 4486 + L7 4487 + L31 4488 + L26 4489 + L37 4490 + L4 4491 + L41 4492 + R25 4493 + L22 4494 + L26 4495 + R44 4496 + L30 4497 + R14 4498 + R2 4499 + L13 4500 + L19 4501 + L27 4502 + L23 4503 + L5 4504 + R11 4505 + R2 4506 + R45 4507 + R42 4508 + R49 4509 + R22 4510 + L47 4511 + R12 4512 + R5 4513 + L49 4514 + L33 4515 + R42 4516 + L4 4517 + R48 4518 + R48 4519 + R7 4520 + L12 4521 + L27 4522 + R46 4523 + R39 4524 + R50 4525 + L23 4526 + L36 4527 + R22 4528 + L25 4529 + L39 4530 + R36 4531 + R26
+135
2025/days/1/src/main.rs
··· 1 + #[derive(Debug, Clone)] 2 + enum Turn { 3 + Left, 4 + Right, 5 + } 6 + 7 + fn parse(rotation: &str) -> (Turn, usize) { 8 + let (turn_str, num_str) = rotation.split_at(1); 9 + 10 + let turn = match turn_str { 11 + "L" => Turn::Left, 12 + "R" => Turn::Right, 13 + _ => panic!("unexpected turn value"), 14 + }; 15 + 16 + let num_clicks = num_str.parse::<usize>().expect("not an integer"); 17 + 18 + (turn, num_clicks) 19 + } 20 + 21 + fn turn(starting_point: u8, direction: Turn, mut num_clicks: usize) -> (u8, usize) { 22 + let full_rotations = (num_clicks / 100) as usize; 23 + num_clicks = num_clicks - full_rotations * 100; 24 + 25 + // each rotation full rotation is garunteed to hit 0 once 26 + let mut zeros_hit = full_rotations; 27 + 28 + let endpoint = match direction { 29 + Turn::Left => { 30 + if (starting_point as usize) < num_clicks { 31 + // we're already on zero and we won't hit zero again, so don't count it 32 + if starting_point != 0 { 33 + zeros_hit += 1; 34 + } 35 + 36 + 100 - (num_clicks as u8 - starting_point) 37 + } else { 38 + // we do hit zero in this one specific case on this branch 39 + if starting_point == num_clicks as u8 { 40 + zeros_hit += 1 41 + } 42 + 43 + starting_point - num_clicks as u8 44 + } 45 + } 46 + Turn::Right => { 47 + if starting_point as usize + num_clicks > 99 { 48 + zeros_hit += 1; 49 + (starting_point + num_clicks as u8) - 100 50 + } else { 51 + starting_point + num_clicks as u8 52 + } 53 + } 54 + }; 55 + 56 + (endpoint, zeros_hit) 57 + } 58 + 59 + fn part1(turns: Vec<(Turn, usize)>) -> usize { 60 + let mut counter = 0; 61 + let mut starting_point = 50; 62 + 63 + for (direction, num_clicks) in turns { 64 + let (result, _) = turn(starting_point, direction, num_clicks); 65 + starting_point = result; 66 + 67 + if result == 0 { 68 + counter += 1; 69 + } 70 + } 71 + 72 + counter 73 + } 74 + 75 + fn part2(turns: Vec<(Turn, usize)>) -> usize { 76 + let mut counter = 0; 77 + let mut starting_point = 50; 78 + 79 + for (direction, num_clicks) in turns { 80 + let (result, times_passed_zero) = turn(starting_point, direction, num_clicks); 81 + counter += times_passed_zero; 82 + starting_point = result; 83 + } 84 + 85 + counter 86 + } 87 + 88 + fn main() { 89 + let file_contents = std::fs::read_to_string("input.txt").expect("unable to read file"); 90 + let mut turns: Vec<(Turn, usize)> = Vec::new(); 91 + for line in file_contents.lines() { 92 + turns.push(parse(line)); 93 + } 94 + 95 + println!("Part 1 Result: {}", part1(turns.clone())); 96 + println!("Part 2 Result: {}", part2(turns)); 97 + } 98 + 99 + mod tests { 100 + #[test] 101 + fn test_part1() { 102 + let turns = vec![ 103 + (super::Turn::Left, 68), 104 + (super::Turn::Left, 30), 105 + (super::Turn::Right, 48), 106 + (super::Turn::Left, 5), 107 + (super::Turn::Right, 60), 108 + (super::Turn::Left, 55), 109 + (super::Turn::Left, 1), 110 + (super::Turn::Left, 99), 111 + (super::Turn::Right, 14), 112 + (super::Turn::Left, 82), 113 + ]; 114 + 115 + assert_eq!(super::part1(turns), 3); 116 + } 117 + 118 + #[test] 119 + fn test_part2() { 120 + let turns = vec![ 121 + (super::Turn::Left, 68), 122 + (super::Turn::Left, 30), 123 + (super::Turn::Right, 48), 124 + (super::Turn::Left, 5), 125 + (super::Turn::Right, 60), 126 + (super::Turn::Left, 55), 127 + (super::Turn::Left, 1), 128 + (super::Turn::Left, 99), 129 + (super::Turn::Right, 14), 130 + (super::Turn::Left, 82), 131 + ]; 132 + 133 + assert_eq!(super::part2(turns), 6); 134 + } 135 + }
+248
flake.lock
··· 1 + { 2 + "nodes": { 3 + "cachix": { 4 + "inputs": { 5 + "devenv": [ 6 + "devenv" 7 + ], 8 + "flake-compat": [ 9 + "devenv", 10 + "flake-compat" 11 + ], 12 + "git-hooks": [ 13 + "devenv", 14 + "git-hooks" 15 + ], 16 + "nixpkgs": [ 17 + "devenv", 18 + "nixpkgs" 19 + ] 20 + }, 21 + "locked": { 22 + "lastModified": 1760971495, 23 + "narHash": "sha256-IwnNtbNVrlZIHh7h4Wz6VP0Furxg9Hh0ycighvL5cZc=", 24 + "owner": "cachix", 25 + "repo": "cachix", 26 + "rev": "c5bfd933d1033672f51a863c47303fc0e093c2d2", 27 + "type": "github" 28 + }, 29 + "original": { 30 + "owner": "cachix", 31 + "ref": "latest", 32 + "repo": "cachix", 33 + "type": "github" 34 + } 35 + }, 36 + "devenv": { 37 + "inputs": { 38 + "cachix": "cachix", 39 + "flake-compat": "flake-compat", 40 + "flake-parts": "flake-parts", 41 + "git-hooks": "git-hooks", 42 + "nix": "nix", 43 + "nixpkgs": [ 44 + "nixpkgs" 45 + ] 46 + }, 47 + "locked": { 48 + "lastModified": 1764449550, 49 + "narHash": "sha256-7ReZCvkQYKHX6gaQaNioROrpk6rPmIBwlRwWZKlfGvs=", 50 + "owner": "cachix", 51 + "repo": "devenv", 52 + "rev": "dfb58ac03bed07b93f629df55034bc50394d3971", 53 + "type": "github" 54 + }, 55 + "original": { 56 + "owner": "cachix", 57 + "repo": "devenv", 58 + "type": "github" 59 + } 60 + }, 61 + "flake-compat": { 62 + "flake": false, 63 + "locked": { 64 + "lastModified": 1761588595, 65 + "narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=", 66 + "owner": "edolstra", 67 + "repo": "flake-compat", 68 + "rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5", 69 + "type": "github" 70 + }, 71 + "original": { 72 + "owner": "edolstra", 73 + "repo": "flake-compat", 74 + "type": "github" 75 + } 76 + }, 77 + "flake-parts": { 78 + "inputs": { 79 + "nixpkgs-lib": [ 80 + "devenv", 81 + "nixpkgs" 82 + ] 83 + }, 84 + "locked": { 85 + "lastModified": 1760948891, 86 + "narHash": "sha256-TmWcdiUUaWk8J4lpjzu4gCGxWY6/Ok7mOK4fIFfBuU4=", 87 + "owner": "hercules-ci", 88 + "repo": "flake-parts", 89 + "rev": "864599284fc7c0ba6357ed89ed5e2cd5040f0c04", 90 + "type": "github" 91 + }, 92 + "original": { 93 + "owner": "hercules-ci", 94 + "repo": "flake-parts", 95 + "type": "github" 96 + } 97 + }, 98 + "git-hooks": { 99 + "inputs": { 100 + "flake-compat": [ 101 + "devenv", 102 + "flake-compat" 103 + ], 104 + "gitignore": "gitignore", 105 + "nixpkgs": [ 106 + "devenv", 107 + "nixpkgs" 108 + ] 109 + }, 110 + "locked": { 111 + "lastModified": 1760663237, 112 + "narHash": "sha256-BflA6U4AM1bzuRMR8QqzPXqh8sWVCNDzOdsxXEguJIc=", 113 + "owner": "cachix", 114 + "repo": "git-hooks.nix", 115 + "rev": "ca5b894d3e3e151ffc1db040b6ce4dcc75d31c37", 116 + "type": "github" 117 + }, 118 + "original": { 119 + "owner": "cachix", 120 + "repo": "git-hooks.nix", 121 + "type": "github" 122 + } 123 + }, 124 + "gitignore": { 125 + "inputs": { 126 + "nixpkgs": [ 127 + "devenv", 128 + "git-hooks", 129 + "nixpkgs" 130 + ] 131 + }, 132 + "locked": { 133 + "lastModified": 1709087332, 134 + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", 135 + "owner": "hercules-ci", 136 + "repo": "gitignore.nix", 137 + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", 138 + "type": "github" 139 + }, 140 + "original": { 141 + "owner": "hercules-ci", 142 + "repo": "gitignore.nix", 143 + "type": "github" 144 + } 145 + }, 146 + "nix": { 147 + "inputs": { 148 + "flake-compat": [ 149 + "devenv", 150 + "flake-compat" 151 + ], 152 + "flake-parts": [ 153 + "devenv", 154 + "flake-parts" 155 + ], 156 + "git-hooks-nix": [ 157 + "devenv", 158 + "git-hooks" 159 + ], 160 + "nixpkgs": [ 161 + "devenv", 162 + "nixpkgs" 163 + ], 164 + "nixpkgs-23-11": [ 165 + "devenv" 166 + ], 167 + "nixpkgs-regression": [ 168 + "devenv" 169 + ] 170 + }, 171 + "locked": { 172 + "lastModified": 1761648602, 173 + "narHash": "sha256-H97KSB/luq/aGobKRuHahOvT1r7C03BgB6D5HBZsbN8=", 174 + "owner": "cachix", 175 + "repo": "nix", 176 + "rev": "3e5644da6830ef65f0a2f7ec22830c46285bfff6", 177 + "type": "github" 178 + }, 179 + "original": { 180 + "owner": "cachix", 181 + "ref": "devenv-2.30.6", 182 + "repo": "nix", 183 + "type": "github" 184 + } 185 + }, 186 + "nixpkgs": { 187 + "locked": { 188 + "lastModified": 1761313199, 189 + "narHash": "sha256-wCIACXbNtXAlwvQUo1Ed++loFALPjYUA3dpcUJiXO44=", 190 + "owner": "cachix", 191 + "repo": "devenv-nixpkgs", 192 + "rev": "d1c30452ebecfc55185ae6d1c983c09da0c274ff", 193 + "type": "github" 194 + }, 195 + "original": { 196 + "owner": "cachix", 197 + "ref": "rolling", 198 + "repo": "devenv-nixpkgs", 199 + "type": "github" 200 + } 201 + }, 202 + "root": { 203 + "inputs": { 204 + "devenv": "devenv", 205 + "nixpkgs": "nixpkgs", 206 + "rust-overlay": "rust-overlay", 207 + "systems": "systems" 208 + } 209 + }, 210 + "rust-overlay": { 211 + "inputs": { 212 + "nixpkgs": [ 213 + "nixpkgs" 214 + ] 215 + }, 216 + "locked": { 217 + "lastModified": 1764557621, 218 + "narHash": "sha256-kX5PoY8hQZ80+amMQgOO9t8Tc1JZ70gYRnzaVD4AA+o=", 219 + "owner": "oxalica", 220 + "repo": "rust-overlay", 221 + "rev": "93316876c2229460a5d6f5f052766cc4cef538ce", 222 + "type": "github" 223 + }, 224 + "original": { 225 + "owner": "oxalica", 226 + "repo": "rust-overlay", 227 + "type": "github" 228 + } 229 + }, 230 + "systems": { 231 + "locked": { 232 + "lastModified": 1681028828, 233 + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", 234 + "owner": "nix-systems", 235 + "repo": "default", 236 + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", 237 + "type": "github" 238 + }, 239 + "original": { 240 + "owner": "nix-systems", 241 + "repo": "default", 242 + "type": "github" 243 + } 244 + } 245 + }, 246 + "root": "root", 247 + "version": 7 248 + }
+55
flake.nix
··· 1 + { 2 + inputs = { 3 + nixpkgs.url = "github:cachix/devenv-nixpkgs/rolling"; 4 + systems.url = "github:nix-systems/default"; 5 + devenv.url = "github:cachix/devenv"; 6 + devenv.inputs.nixpkgs.follows = "nixpkgs"; 7 + rust-overlay.url = "github:oxalica/rust-overlay"; 8 + rust-overlay.inputs = { nixpkgs.follows = "nixpkgs"; }; 9 + }; 10 + 11 + nixConfig = { 12 + extra-trusted-public-keys = "devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw="; 13 + extra-substituters = "https://devenv.cachix.org"; 14 + }; 15 + 16 + outputs = { 17 + self, 18 + nixpkgs, 19 + devenv, 20 + systems, 21 + ... 22 + } @ inputs: let 23 + forEachSystem = nixpkgs.lib.genAttrs (import systems); 24 + in { 25 + packages = forEachSystem (system: { 26 + devenv-up = self.devShells.${system}.default.config.procfileScript; 27 + }); 28 + 29 + devShells = 30 + forEachSystem 31 + (system: let 32 + pkgs = nixpkgs.legacyPackages.${system}; 33 + in { 34 + default = devenv.lib.mkShell { 35 + inherit inputs pkgs; 36 + modules = [ 37 + { 38 + packages = with pkgs; [openssl pkg-config sqlx-cli taplo]; 39 + 40 + languages.rust = { 41 + enable = true; 42 + channel = "nightly"; 43 + components = ["rustc" "cargo" "clippy" "rustfmt" "rust-analyzer"]; 44 + }; 45 + 46 + pre-commit.hooks = { 47 + rustfmt.enable = true; 48 + clippy.enable = true; 49 + }; 50 + } 51 + ]; 52 + }; 53 + }); 54 + }; 55 + }