1
0
This commit is contained in:
2025-12-08 22:25:02 +01:00
parent fc5964d7c6
commit c8d015c260
4 changed files with 210 additions and 0 deletions

View File

@@ -0,0 +1,171 @@
package de.advent_of_code_2025.day6;
import de.advent_of_code_2025.util.InputMangler;
import de.advent_of_code_2025.util.InputReader;
import java.util.ArrayList;
import java.util.List;
public class Main {
private static final record Column(List<Long> numbers, String operand) {
long doMath() {
long retVal = 0;
switch (operand) {
case "+":
for (Long l : numbers) {
retVal += l;
}
break;
case "*":
retVal = 1;
for (Long l : numbers) {
retVal = retVal * l;
}
break;
default:
throw new IllegalStateException();
}
return retVal;
}
}
private static final record ColumnWidth(int start, int end) {};
public static void main(String[] args) throws Throwable {
final List<String> lines = InputReader.read(args);
final List<List<String>> stringColumns = InputMangler.mangleByColumn(lines);
final List<Column> columns = setupColumns(stringColumns);
long grandTotal = 0;
// Part 1
for(Column c : columns) {
grandTotal += c.doMath();
}
System.out.println(grandTotal);
// Part 2
final List<ColumnWidth> columnWidths = setupColumnWidths(lines.getLast());
final List<Column> columnsReal = setupColumnsTheRealWay(lines, columnWidths);
long grandTotalReal = 0;
for(Column c : columnsReal) {
grandTotalReal += c.doMath();
}
System.out.println(grandTotalReal);
}
private static final List<Column> setupColumnsTheRealWay(List<String> lines, List<ColumnWidth> columnWidths) {
final List<Column> columns = new ArrayList<>();
for(ColumnWidth columnWidth : columnWidths) {
final String op = lines.getLast().substring(columnWidth.start(), columnWidth.start() + 1).trim();
List<Long> numbers = new ArrayList<>();
int columnWidthValue = columnWidth.end() - columnWidth.start() - 1;
boolean lastColumn = columnWidths.getLast() == columnWidth;
if(lastColumn) {
int maxLength = - 1;
for(String line : lines) {
int length = line.substring(columnWidth.start()).length();
if(maxLength == -1) {
maxLength = length;
}
else {
maxLength = Math.max(maxLength, length);
}
}
for(int j = maxLength - 1; j >=0; j--) {
final StringBuilder sb = new StringBuilder();
for(int i = 0; i < lines.size() - 1; i++) {
final String line = lines.get(i);
try {
final char c = line.substring(columnWidth.start()).charAt(j);
if (c != ' ') {
sb.append(c);
}
}
catch(StringIndexOutOfBoundsException e) {
// do nothing for
}
}
numbers.add(Long.parseLong(sb.toString()));
}
}
else {
for (int j = columnWidthValue; j >= 0; j--) {
final StringBuilder sb = new StringBuilder();
for (int i = 0; i < lines.size() - 1; i++) {
final String line = lines.get(i);
final char c = line.substring(columnWidth.start(), columnWidth.end()).charAt(j);
if (c != ' ') {
sb.append(c);
}
}
numbers.add(Long.parseLong(sb.toString()));
}
}
columns.add(new Column(numbers, op));
}
return columns;
}
private static final List<ColumnWidth> setupColumnWidths(String operandLine) {
final List<ColumnWidth> columnWidths = new ArrayList<>();
int currentColumnStart = -1;
int previousColumnStart = -1;
int previousColumnEnd = -1;
for(int i = 0; i < operandLine.length(); i++) {
if(operandLine.charAt(i) == '*' || operandLine.charAt(i) == '+') {
if(i != 0) {
columnWidths.add(new ColumnWidth(currentColumnStart, i - 1));
}
currentColumnStart = i;
}
}
columnWidths.add(new ColumnWidth(currentColumnStart, 999999999));
return columnWidths;
}
private static final List<Column> setupColumns(List<List<String>> stringColumns) {
final List<Column> columns = new ArrayList<>();
for(List<String> stringColumn : stringColumns) {
final List<Long> numbers = new ArrayList<>();
final String op = stringColumn.getLast();
for(int i = 0; i < stringColumn.size() - 1; i++) {
numbers.add(Long.parseLong(stringColumn.get(i)));
}
columns.add(new Column(numbers, op));
}
return columns;
}
}

View File

@@ -34,4 +34,34 @@ public class InputMangler {
return Arrays.asList(input.split(mangleString)); return Arrays.asList(input.split(mangleString));
} }
public static final List<List<String>> mangleByColumn(List<String> lines) {
final List<List<String>> tmpLists = lines.stream().map(l -> {
final String[] split = l.split(" ");
final List<String> retVal = new ArrayList<>();
for(String s : split) {
if(!s.isBlank()) {
retVal.add(s);
}
}
return retVal;
}).toList();
final List<List<String>> retVal = new ArrayList<>();
final int length = tmpLists.getFirst().size();
for (int i = 0; i < length; i++) {
final List<String> column = new ArrayList<>();
for(List<String> line : tmpLists) {
column.add(line.get(i));
}
retVal.add(column);
}
return retVal;
}
} }

View File

@@ -0,0 +1,5 @@
593 3311 96 337 82 427 52 5 311 28 3 95 663 343 661 31 2265 968 78 9485 8 732 5 3321 885 744 11 45 94 31 431 795 44 26 757 164 3 13 78 59 15 73 97 57 937 97 88 59 95 9 875 6 362 25 11 955 52 9 8 3 14 551 176 997 43 8 489 7 6 9 93 85 291 84 869 662 5 35 78 42 411 444 2 36 6 264 5945 6 25 197 19 7 5 393 24 379 1 26 557 22 3696 93 38 37 343 43 95 6 845 3798 635 9 49 5 42 64 327 99 566 221 76 6977 58 92 98 1 566 88 5336 49 126 3 8 66 82 97 6 9 524 414 37 197 6 985 7 4 75 9339 6 9975 219 5 27 7 283 42 4 7 31 49 269 96 752 17 629 346 76 62 43 372 888 792 5 3 7 5 969 6 99 67 522 24 1 746 2 1467 75 17 57 8995 181 336 468 5 14 38 31 9913 22 38 727 28 331 12 37 267 594 12 21 27 2 7 94 821 9 414 43 346 38 21 838 468 9116 84 962 522 28 25 5 51 58 49 599 21 44 49 187 169 222 1 481 5456 85 1 4335 89 589 33 467 79 12 26 5 755 98 772 8 475 15 7 9 83 96 6 5636 974 4 66 15 94 99 334 3764 563 3934 1683 27 367 86 2 37 879 7 95 27 452 3 1 43 255 515 14 564 334 7 57 1238 33 3153 732 55 56 164 899 9419 1495 99 2 4 5 15 91 141 3 8 35 85 15 356 46 69 46 42 5 48 24 2 2 34 81 327 537 5137 3 15 89 18 71 32 16 2 2985 82 328 7 1 67 467 2245 75 96 641 69 4 867 2894 574 76 6 98 11 21 85 46 256 57 9 5 387 48 83 38 8993 52 2 3917 5 13 94 55 75 3 82 6 6915 11 8 4 3717 25 941 86 28 79 5 13 39 3 731 943 76 3 22 335 12 87 51 1 122 41 39 13 564 69 993 322 349 48 522 2 94 211 71 933 464 3 24 93 2239 36 233 45 658 81 31 828 4 39 42 53 58 3 23 27 42 65 549 452 56 71 437 5 44 69 6411 9 18 13 64 25 3173 844 4 88 83 13 283 2 29 28 41 214 21 1 28 165 779 5482 255 3779 368 411 18 6 5874 85 6179 7 7 45 727 1 95 8 5316 221 9 1 84 57 13 16 77 354 24 718 97 142 21 1 74 847 89 36 11 5 58 7625 41 241 8 7 45 637 97 81 936 8 74 168 145 19 31 2 6 175 771 928 1 7 8 49 63 8 1 42 64 57 121 19 35 613 67 48 86 588 27 72 54 7 21 45 7 6 39 139 212 779 7 645 4452 484 24 1 14 1999 874 593 6852 63 6 53 98 78 17 97 76 571 8 4 42 83 15 312 2 768 22 34 996 7282 6856 9 27 5 83 39 181 72 437 44 474 2 34 23 15 732 996 13 17 575 74 4474 96 278 8827 57 62 68 81 38 597 281 956 76 5215 412 83 58 2 89 66 8128 779 5667 82 679 42 1 9 43 431 35 35 3 96 54 755 885 7 31 7 76 33 3 158 382 35 35 98 5 327 61 4149 3568 2 7835 27 8 7 14 758 66 5235 194 59 68 99 42 1 363 79 22 516 9424 4495 7 524 7 977 919 462 22 48 95 158 9 3 74 1 522 5 65 99 92 421 9 733 2 399 14 13 91 32 37 347 41 54 7 23 32 555 62 54 64 43 5 8695 8 728 68 11 5413 762 96 95 49 6 131 4385 24 599 44 99 93 95 77 58 6531 3 94 69 41 8 46 3 348 12 359 3 955 21 445 32 51 44 9 2853 69 34 568 971 89 2 58 979 61 95 573 49 7659 61 77 44 351 72 816 7 89 6181 727 11 17 75 39 68 225 939 394 54 1 7 5166 6819 99 2 59 673 3 568 128 248 56 43 916 77 837 957 92 51 81 9262 411 7634 24 412 24 155 37 4 921 9 46 8733 52 7 816 4762 932 53 5265 892 12 1 46 55 814 19 4 17 825 81 4 8 93 92 3 69 52 69 9 17 844 4665 54 67 4 956 61 9 94 68 59 14 7 21 83 64 5 7 779 88 88 9 27 632 37 23 811 47 3156 85 54 66 33 6446 75 7 49 4 73 1483 34 39 53 82 8 81 77 84 8943 155 98 1864 6242 64 849 64 34 6 882 696 153 67 767 1 6 75 9549 52 9262 192 84 56 7 78 618 894 6 325 14 215 53 48 17 22 7 76 63 85 24 528 62 51 532 15 6 16 21 278 24 69 49 48 432 22 7 776 777 527 5 28 3 928 29 4 48 31 468 56 41 166 4 1876 122 755 6 372 8 9 6
939 9896 624 578 93 74 416 37 126 196 72 4 164 741 438 64 7686 928 85 847 1 288 34 7889 999 628 56 49 79 48 436 347 26 563 857 943 9 33 82 113 63 575 74 67 956 69 9 397 954 87 77 845 891 14 69 375 336 5 9 48 74 14 958 535 54 3 413 3 372 16 8 28 63 939 133 241 345 75 27 64 315 352 1 62 223 713 7665 96 59 127 37 282 3 698 97 467 54 76 544 82 7654 66 61 3 613 73 96 3765 863 4383 462 3 49 85 75 88 287 62 956 464 21 2435 85 357 37 1 14 35 6591 593 886 1 32 21 73 164 139 947 251 719 451 143 187 282 54 3 72 5297 2 3247 239 6 17 84 988 68 3 29 75 67 531 28 85 25 375 582 42 64 76 16 767 262 5 11 2 92 228 6 711 87 774 98 5 7765 3 4936 861 23 55 9821 282 378 285 4913 57 38 83 1717 69 98 517 56 792 28 61 836 872 24 17 18 62 42 86 778 4 846 34 315 24 42 535 418 542 371 184 333 76 65 7 94 492 7 256 54 87 769 542 584 745 43 5925 6925 72 64 7412 68 376 73 6246 19 96 9533 65 417 36 147 54 329 97 2 23 75 48 2 2764 883 5 99 42 65 44 12 3879 959 8733 483 94 298 37 72 54 875 69 183 461 681 75 15 15 79 555 75 836 223 295 36 667 24 947 17 71 34 723 98 6423 9374 33 64 1 2 51 22 442 72 77 38 74 89 461 45 52 71 45 69 9167 23 5 42 37 342 676 56 7544 65 92 72 17 87 55 14 44 9891 45 536 2 36 32 814 3636 637 79 611 45 75 683 8137 821 93 1 91 73 68 26 95 7641 34 4886 1 547 99 24 861 6955 73 16 3143 81 834 47 354 28 7 29 548 5298 485 5 63 4376 89 82 128 32 53 13 35 6146 68 662 724 31 57 44 933 19 514 78 52 763 41 88 36 45 79 981 75 74 334 674 9 9 832 57 959 889 7 72 39 5798 97 5416 28 556 63 717 922 65 75 48 35 5 6 17 74 29 15 574 155 97 23 641 8 32 73 9235 192 35 69 678 891 5754 953 6 28 43 9 975 592 84 73 86 419 3 98 53 713 966 2225 918 5473 636 724 13 358 998 47 1745 968 37 28 46 8 628 44 2218 423 84 26 28 54 31 327 13 628 98 219 69 183 89 66 37 552 9 136 96 5 21 2522 55 665 7 91 897 196 48 89 719 42 64 879 511 56 55 6 859 648 515 375 5 8 17 96 33 12 9 63 84 87 127 54 192 166 56 13 58 3333 356 88 26 8 36 83 795 59 76 778 913 794 5 591 7564 825 45 162 38 8995 554 675 2465 26 49 171 12 66 49 414 7113 1736 4 54 49 14 7264 815 2 178 94 97 957 3293 6952 35 75 56 153 657 65 512 399 74 531 794 86 696 14 449 693 14 669 416 55 6983 99 932 4938 72 92 719 9 92 98 6655 835 45 3912 336 61 11 41 63 14 5328 163 9152 34 344 68 471 7 76 779 71 13 54 28 953 383 517 8 24 69 36 21 6 781 632 32 24 56 341 26 81 5115 338 9 4866 44 3 98 46 798 94 337 428 946 82 44 135 46 825 53 47 851 3761 3913 83 343 9 682 366 685 95 293 71 74 47 476 6892 71 557 33 38 32 98 53 14 794 4 777 79 99 367 54 49 946 197 438 74 63 218 157 99 44 49 71 32 181 3 347 317 12 84 946 82 77 194 48 966 7175 34 112 87 11 81 18 58 47 7659 263 52 314 835 91 71 6 622 321 741 62 716 53 442 354 53 936 82 5297 227 225 745 291 227 9 72 69 58 73 557 434 1118 58 388 62 245 835 621 644 22 7798 97 775 74 98 55 4 665 668 23 33 96 682 5494 222 67 455 426 256 846 131 39 5336 2 872 111 51 681 363 39 47 676 9796 954 4336 61 74 7 296 38 53 461 65 19 9932 17 59 442 3912 565 53 2592 824 97 34 28 26 735 82 283 98 89 62 659 54 68 35 381 85 811 46 4 86 253 5242 47 33 7 922 61 1 61 67 34 29 79 33 48 56 11 87 937 86 57 63 33 189 97 276 717 24 191 696 97 3357 82 8624 13 41 394 14 29 9686 348 552 66 6255 75 59 45 58 87 259 13 7838 9153 75 979 32 346 23 521 369 2586 46 597 79 948 146 7796 823 3599 214 43 94 6 44 856 316 8 991 63 372 283 16 198 52 78 1379 82 368 858 551 238 665 732 23 41 36 14 644 74 64 76 235 98 72 84 641 74 173 4 863 8 425 54 99 68 33 866 82 19 825 2 1277 611 871 64 934 44 55 3
725 278 2564 666 77 9 598 29 179 389 58 8 859 756 97 63 6366 672 387 395 27 797 698 836 35 527 98 3 588 37 5 119 414 316 615 971 3 15 71 635 53 357 27 9723 176 8613 8 898 288 92 19 3612 899 54 56 785 253 25 152 452 76 96 548 76 6 8 278 39 422 41 7 54 12 879 8987 438 481 27 13 74 695 542 51 77 221 41 1577 69 97 722 3 4429 97 897 686 683 169 23 66 84 7194 33 76 7 6279 56 85 1229 411 641 991 15 65 66 37 41 178 27 32 462 92 4636 62 243 742 22 13 2982 9129 297 638 59 46 49 62 285 788 811 141 191 9126 123 371 627 538 58 32 2224 18 9221 85 9 57 31 82 19 72 957 11 86 195 284 16 7 598 758 488 52 78 67 166 579 72 37 71 18 537 14 8285 69 418 28 16 9781 58 9756 719 488 56 71 79 54 516 7544 335 437 61 7856 516 91 18 33 415 933 352 998 38 868 157 17 73 22 7 347 84 881 58 489 61 68 5141 39 434 833 114 289 5136 77 46 7 736 1 388 32 73 162 393 1 477 39 1843 4938 2 57 49 92 425 64 1244 98 43 7113 99 351 68 42 44 2 717 2 374 527 81 7 83 617 45 6 868 38 98 54 61 928 6337 65 1 391 66 81 6 158 389 9843 469 254 674 63 16 21 212 13 825 59 837 35 636 46 5 17 199 87 716 8 579 2554 76 422 92 89 39 8 157 798 73 74 9 67 13 61 534 42 45 48 9896 8 51 413 8114 4112 45 53 938 39 344 12 36 93 45 97 61 724 15 943 84 336 7612 147 361 889 88 841 84 61 86 773 644 38 74 76 89 74 762 23 9421 43 3583 34 231 84 25 629 4757 94 86 1616 74 9593 64 865 89 32 97 792 1733 629 69 488 4831 47 7 388 55 83 27 98 9777 88 638 828 5 46 74 296 523 973 1 384 354 96 14 98 79 94 13 4 4 452 256 3217 9 528 42 167 492 34 46 78 7978 82 6495 23 318 54 6118 4111 94 29 39 93 5 96 16 3 54 56 372 297 93 42 659 9 16 48 3655 6952 89 73 713 431 995 763 8 69 54 5 3 344 94 83 81 4 9 98 24 38 169 2535 525 9684 896 88 71 863 567 57 626 9244 34 33 67 49 339 92 843 198 952 783 61 48 618 2446 56 948 54 316 29 479 934 79 33 958 4 964 543 96 89 795 23 1 57 97 939 2 23 39 595 83 38 4 977 93 66 89 833 345 544 998 16 63 924 51 35 79 71 8 22 99 436 3 657 498 35 62 19 3978 353 36 628 71 94 47 945 71 153 812 324 381 7 911 91 17 969 311 429 429 8659 517 7677 61 716 318 94 92 22 155 7159 9869 76 45 73 61 5851 93 286 11 79 22 71 7491 577 72 9 25 572 371 97 7991 699 19 248 862 26 263 62 273 43 31 983 92 36 1189 99 516 5325 932 92 453 1 889 88 2417 152 45 5619 857 18 47 95 22 5 385 66 53 58 823 891 475 33 639 269 82 64 53 71 2122 26 972 91 31 26 17 55 79 378 887 64 31 88 747 4 8 5498 148 3 6438 66 82 36 57 124 81 335 755 398 21 11 242 819 874 85 57 3 5872 3752 671 78 33 412 937 118 53 663 83 75 23 154 4965 18 964 92 17 93 95 44 52 625 7 439 33 47 468 3695 63 469 781 924 92 42 3829 98 22 22 76 99 28 644 442 913 526 42 33 871 334 34 312 63 92 5244 42 212 12 95 97 484 47 38 3932 177 44 957 251 64 225 134 858 623 8281 21 344 13 799 556 87 324 62 1889 696 121 1 33 3875 57 35 71 36 893 877 1987 8 85 658 61 92 391 974 177 66 939 2 339 22 993 62 1 522 829 69 39 682 3625 559 728 888 897 171 394 749 523 17 1972 3 774 482 46 354 15 29 57 7562 6852 1 8673 37 4 3 5 75 95 67 56 4 565 8 263 399 563 46 54 23 27 1 64 36 32 834 3 812 33 12 37 597 18 8 2 787 39 723 79 5 73 951 929 76 388 361 377 17 356 59 71 73 37 63 68 82 1 879 364 827 67 8 28 46 156 66 363 14 85 148 813 99 7272 38 91 2665 828 884 17 76 671 149 438 14 2288 45 67 87 334 85 529 48 595 4929 75 71 93 311 31 118 977 2754 49 6 37 422 848 5715 653 4638 228 463 87 71 65 688 182 32 64 56 414 463 98 182 21 67 1545 8 465 144 755 619 924 815 21 51 36 75 6371 79 22 74 177 65 87 51 749 68 28 26 6812 1 81 88 481 94 834 461 25 87 413 14 8829 972 437 786 451 348 617 3
4 83 8916 56 81 8 996 35 458 733 86 2 415 28 24 3 5349 661 254 26 719 222 971 46 3 22 93 1 959 56 9 671 152 449 3 917 22 1 63 962 48 329 28 4926 283 5562 3 287 2162 415 4 6662 56 94 89 9 628 37 239 453 573 3 53 3 2 63 43 61 692 86 5 95 46 882 5534 21 445 54 2 6 627 68 57 48 635 46 1 63 2 424 3 3544 62 54 966 498 426 17 7 79 99 553 58 9 9198 1 51 1734 917 37 18 48 45 53 83 56 555 89 86 73 89 117 56 993 551 53 4 7628 294 323 916 56 81 24 82 629 797 838 466 61 1343 59 754 248 227 72 46 7 38 11 29 38 81 59 7 76 75 353 23 94 859 672 1 4 54 62 692 9 22 9 59 1 64 21 38 88 427 44 2763 56 115 75 62 7872 69 249 963 488 6 79 52 9 49 5216 384 297 65 4455 577 639 2 69 4 465 282 62 77 575 497 3 84 77 1 6 68 726 16 6 93 3 8694 96 413 822 751 3 1526 14 3712 7 546 6 433 79 16 213 494 3 358 34 7274 97 8 66 94 63 848 14 2954 62 3 1944 59 77 2 3 45 7 545 64 625 815 41 17 8 213 38 1 142 15 27 9 1 84 483 8 8 188 7 55 4 7 568 8912 878 89 956 99 9 89 723 67 895 5 379 82 42 36 9 89 887 79 6 1 91 185 11 7641 32 678 63 2 684 442 92 45 1 94 11 56 187 97 93 87 6385 9 96 414 8825 5928 6 4 36 71 949 13 72 272 77 26 98 949 48 547 285 514 2847 782 75 974 4 411 4 68 39 977 526 59 63 49 1 54 548 44 7829 62 7781 25 35 89 28 862 729 84 37 825 11 9445 21 726 46 716 27 896 594 868 72 218 5575 62 6 561 17 32 23 58 9378 84 484 536 7 83 5 894 842 656 3 747 623 58 42 66 72 46 6 3 7 271 113 6235 8 85 9 94 46 12 61 32 864 67 7463 83 443 44 1962 2188 999 93 75 6 6 64 8 8 39 21 616 45 62 85 7 76 62 86 82 4176 58 12 5179 259 74 15 81 6 2 7 1 748 78 5 5 7 9 88 92 32 22 118 112 11 4562 83 93 867 491 93 3 5411 77 4 1 8815 311 21 675 86 639 876 6 18 2289 4264 34 68 292 314 81 57 137 45 8 257 9 795 912 48 42 7 76 2 69 56 969 7 5 43 971 99 8 9 79 69 96 22 947 9 32 9 89 62 286 49 51 38 15 5 4 779 18 5 941 41 8 9 75 2588 634 49 974 864 8 53 768 59 971 61 779 93 25 4 54 8 463 661 478 78 1535 888 22 74 741 978 25 76 14 485 1558 5576 53 18 4 12 3654 89 299 1 75 1 8 6 88 94 6 52 2482 625 67 2769 851 28 269 796 13 834 47 76 9 15 152 25 75 236 47 8 654 879 22 735 3 241 78 4296 11 69 815 961 88 92 35 8 8 83 9 9 97 682 813 659 89 645 61 18 9 17 32 8982 4 188 68 18 23 65 2 49 577 954 99 9 79 354 6 7 9 47 69 524 36 773 48 74 226 18 654 129 674 1 5 792 154 999 66 85 1 748 6156 332 9 77 96 85 7 77 866 13 6 92 822 3775 81 23 553 66 5 9 69 47 821 38 135 83 8 567 8944 6 2 642 653 11 89 4756 6 16 98 4 6 51 76 857 676 335 72 52 227 138 75 866 67 3 2793 29 7465 74 51 33 671 17 28 1325 124 32 816 146 62 177 336 45 999 9193 61 447 59 773 317 57 625 11 966 454 379 4 41 2327 19 48 11 35 474 91 8411 5 39 399 94 4 244 752 431 9 86 9 276 57 412 37 9 282 743 91 21 472 3428 213 71 427 486 527 468 215 374 9 8689 4 9998 99 61 196 34 68 66 4745 875 7 57 6 4 8 2 73 31 2 63 4 364 4 142 7 97 9 127 7 1 1 93 71 11 991 1 727 56 39 75 575 44 2 7 152 2 381 8 86 6 562 635 43 233 774 34 56 218 84 8 22 19 454 5 114 8 555 953 85 39 6 84 24 214 34 776 54 9 1 497 17 5523 82 25 1967 733 744 142 63 692 453 957 46 6245 48 47 52 568 29 243 42 424 566 57 3 18 892 67 317 799 4243 79 7 18 147 463 35 219 36 935 872 9 972 37 398 26 52 7 35 53 626 47 729 36 97 7226 7 2271 218 15 676 916 571 96 66 93 19 9819 582 49 9 627 24 7 684 854 9 42 97 8731 18 7 86 364 8 675 449 6 97 857 46 1899 766 16 925 627 416 931 74
* + + + * + + + * + + * * + * * + + * + * * * + * + * * * * + * * * + * + + * * + + * + * + * * + + * + * * * * + * * + * + * + + * + * * * + * * * + + + * * * * * * + + + + * + + * + + * + + * * * * + + * * + * * + + + * + + * * + * * * * * + * * + + * + + + * * + * * + * * + + + + + * * * * + * + * * * + + * * + + + * + + + * * * * + * * * * + * + + + + * + * * + * + * * + + * * + + * * * + * * * + + + * * + + + * * + + * * + * * * * + * + * * + + * + * + * * * * + + + * + + + * + + * * + + * + + * * * * + * + * + + + * + + * * + + + * + * + + + * * + * + + + * + * * * * + * * * * * + * + * + + * * + + + + + * * + * + * * + * * * + * + * + + + + + + * + + + * * + + + * * + * * * * + * + * * + * + * + + * + * * + + * + + + * * * * * + * * + * + * * + * * + + + * + + + * * * + * + + + * + + * * * * + + + * + + * * + * * * * * + * + + + + * * * + + + + + + + + * * + * + * + * * * + * + + * + + * + + * * + * + + * * * + + + + + + + * * * + + + + + + * + + + * + + * * * + * * + + * * + * + + * * * * * * + + * * + * * * * + + + * * + * * + * * + + + + + * * + * * * + + * + * * * * * * * * + + * + + + + + * * * * * * * + + + * + * * * + + + * + + + * + + * * + + * * * * + * + * + * + + + * + * + + * + * * + * + + + * * * + + * + * * + * + + * + + + * * + + + * + * * + * + + + * * * + + + * + + + * * + + + + + * * * * + + + * * + + * + * * * + * + + * + * * * + * + * * + + * + * * * + * * * * + + + + * * * * * + * + * * * * + + * * + * * + + * * * * * + + * * * + + * * * + + + + + + + + * * * * + + + + * + * * * * + * * * + + + * * + * + * * + + + + * * + + + + * + + * + * + + * + * * + + * + * * * + + + * * + + * + * + * + * * * + * + + + * + * + + * * * * * * + * * * + + * + * * * * + * + + * + + * + + * + * + * * + * + * + * * + * + * * * + * * * + * * + + * * * + + + * + * * + * + + + + * * + * * + + * * * + + + * + + * * * * * + * + * * * * + + + + * + + + * * * * + + * * * + + + + * + * + + * * * + * * + + + * * + * + * + * + + * + * * * * + + + * * + + * + * * * *

View File

@@ -0,0 +1,4 @@
123 328 51 64 1
45 64 387 23 3
6 98 215 314 65
* + * + +