#!/bin/bash

cmd="$1"
shift
args="$@"

pass=0

run_test(){
	num=$1
	expected=$2
	got=$("$cmd" "$args")
	if cmp -s <(echo $got) <(echo $expected); then
		echo "Test #$num: $(printf '\e[1;32mPASS\e[0m')"
		pass=$((pass + 1))
	else
		echo "Test #$num: $(printf '\e[1;31mFAIL\e[0m') Expected: <$expected>, got: <$got>"
	fi
}


run_test 1 "10 10" <<EOD
2 2 2 2 2
2 2 2 2 2
2 2 2 2 2
2 2 2 2 2
2 2 2 2 2
EOD

run_test 2 "10 16" <<EOD
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
EOD

run_test 3 "10283 10886" <<EOD
978 970 824 152 763 436 276 753 321 173 902 643 626
255 760 104 543 656 54 613 204 869 264 325 999 676
543 994 371 907 28 580 670 592 260 400 597 692 128
653 522 426 725 121 956 517 420 347 405 155 996 280
818 845 509 109 706 500 154 87 893 282 383 414 145
322 973 35 996 361 507 851 529 402 92 779 145 143
369 482 257 196 589 216 912 749 762 825 84 151 694
97 539 42 760 240 44 311 976 634 544 386 352 45
649 146 751 417 754 730 965 563 132 672 830 698 693
167 503 397 560 148 951 845 668 411 312 487 642 852
735 834 168 735 939 872 845 545 568 767 998 346 72
354 186 131 966 868 212 62 548 878 809 579 74 397
435 507 378 239 834 265 775 903 996 131 396 397 734
EOD

run_test 4 "105 196" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14
EOD

run_test 5 "11534 12151" <<EOD
959 854 148 599 737 399 215 76 598 659 538 445 445 275
580 304 858 26 589 662 542 437 338 168 330 933 734 572
170 358 56 735 569 134 254 209 400 279 72 181 860 321
838 849 841 794 389 990 195 599 139 106 807 736 192 522
517 981 270 804 665 643 907 240 604 803 876 312 22 372
904 580 954 409 802 221 600 489 327 537 544 745 377 571
220 950 929 834 942 732 693 420 9 269 516 218 414 598
245 39 918 78 968 824 695 560 152 399 935 971 923 28
655 734 260 921 266 336 21 654 874 43 370 290 679 485
571 686 893 585 808 3 245 289 619 467 777 554 877 661
799 530 900 971 810 666 765 276 10 595 952 79 578 591
165 875 709 679 145 210 989 467 506 350 164 921 783 366
115 794 144 713 460 360 856 345 144 399 481 14 721 296
677 298 634 729 425 654 125 745 758 99 410 667 672 332
EOD

run_test 6 "120 225" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
EOD

run_test 7 "12 12" <<EOD
2 2 2 2 2 2
2 2 2 2 2 2
2 2 2 2 2 2
2 2 2 2 2 2
2 2 2 2 2 2
2 2 2 2 2 2
EOD

run_test 8 "12673 12786" <<EOD
759 968 108 441 74 3 435 853 443 516 155 728 989 209 342 410
971 938 507 415 11 476 606 721 410 221 664 191 808 714 284 139
848 787 97 995 846 330 308 463 901 164 411 862 753 834 881 731
558 390 826 388 525 333 1 284 362 387 32 854 339 244 46 729
233 16 880 203 112 348 565 641 630 45 515 847 65 745 969 576
340 934 634 418 889 896 615 516 786 814 633 459 299 455 124 657
119 682 630 738 954 679 619 211 826 185 759 481 818 154 219 618
419 456 514 406 611 629 841 337 401 365 418 299 715 107 343 175
922 859 729 383 116 231 622 662 315 423 593 704 137 135 698 632
595 16 40 844 941 719 46 490 842 293 337 589 261 321 496 719
843 584 559 960 426 836 502 189 834 853 91 188 36 137 201 267
668 787 704 700 68 500 235 203 813 239 542 824 895 34 401 995
928 874 862 553 576 738 207 759 514 851 10 89 628 858 454 705
93 70 921 475 617 796 652 343 350 357 148 187 295 679 295 801
452 97 261 163 276 648 692 931 580 945 187 217 491 146 576 955
786 838 732 825 113 927 378 132 223 519 204 220 591 21 465 835
EOD

run_test 9 "13130 12084" <<EOD
25 550 807 890 883 400 161 216 452 240 620 218 736 821 732
310 199 132 490 694 791 208 717 436 496 130 242 371 36 46
303 793 689 524 320 595 592 591 132 321 135 461 847 394 110
208 919 305 13 448 901 279 178 978 542 818 833 372 395 754
158 791 181 406 937 827 529 212 501 138 719 608 1000 169 560
330 361 324 326 289 211 938 358 588 145 25 615 711 982 503
762 220 197 378 163 345 280 441 458 283 679 707 804 876 730
294 279 9 419 213 457 510 47 107 543 221 433 593 262 912
212 819 230 999 376 499 412 622 6 216 50 920 866 43 610
505 134 483 859 852 747 607 293 770 47 253 174 91 836 943
912 688 180 547 71 861 477 806 500 232 882 657 3 203 163
537 645 4 497 39 88 951 735 410 165 606 526 461 953 124
325 322 787 64 304 363 741 320 972 750 28 329 983 628 970
91 604 91 608 510 609 171 594 798 856 962 953 770 382 465
336 17 854 377 907 561 870 940 900 800 797 326 32 747 12
EOD

run_test 10 "1348 1348" <<EOD
390 486
862 172
EOD

run_test 11 "136 256" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
EOD

run_test 12 "14 14" <<EOD
2 2 2 2 2 2 2
2 2 2 2 2 2 2
2 2 2 2 2 2 2
2 2 2 2 2 2 2
2 2 2 2 2 2 2
2 2 2 2 2 2 2
2 2 2 2 2 2 2
EOD

run_test 13 "14201 13830" <<EOD
557 209 637 532 597 292 429 445 379 991 895 672 610 435 853 204 781
193 402 458 948 471 689 525 719 130 940 757 444 473 341 560 481 352
661 282 510 45 359 494 409 287 446 122 32 707 522 789 667 1000 439
398 620 8 888 87 520 112 813 468 352 673 1 907 651 336 192 259
775 572 695 737 835 908 50 661 25 567 494 13 608 152 91 445 34
943 941 474 465 574 762 398 232 891 142 737 286 539 472 697 515 264
14 96 306 703 564 712 959 227 62 954 619 801 860 201 582 557 874
709 395 718 795 201 810 298 505 944 766 313 376 486 96 797 498 345
139 996 140 331 379 230 516 238 512 809 779 432 32 942 155 729 666
764 302 797 470 813 286 8 199 621 946 646 852 576 859 822 303 515
63 587 418 543 330 166 203 557 689 2 519 73 912 825 159 647 821
332 496 701 876 326 710 132 133 758 284 871 387 937 951 958 129 517
880 568 312 124 434 136 595 913 125 285 490 126 709 122 487 205 756
527 327 602 640 737 878 287 411 572 883 333 171 753 51 562 944 396
945 591 335 697 898 360 107 963 201 425 643 7 50 163 384 182 181
424 631 528 878 143 691 26 714 863 254 263 743 372 235 928 183 314
177 896 871 60 629 967 496 677 537 453 645 405 523 720 949 989 573
EOD

run_test 14 "14984 15370" <<EOD
627 931 417 518 803 901 310 984 36 107 845 221 830 191 715 824 736 987
489 312 122 796 665 32 202 607 239 382 310 341 534 314 754 800 608 998
766 797 375 996 561 76 593 861 652 456 707 262 930 581 787 734 461 678
452 832 267 386 317 196 663 929 675 696 573 531 467 31 584 718 58 940
612 494 751 46 203 804 381 746 900 977 452 729 554 800 854 77 348 777
731 381 480 179 334 633 401 898 288 121 990 677 679 213 523 848 123 967
927 406 629 463 6 572 296 686 477 946 142 773 677 391 683 808 987 678
460 433 160 119 645 306 516 260 756 224 299 240 207 707 678 887 151 942
148 268 376 909 884 648 156 455 756 516 444 599 995 872 226 846 388 690
808 808 761 324 947 746 816 73 388 238 740 436 96 791 240 741 660 719
302 552 550 513 963 191 550 1 816 158 229 428 14 362 320 989 80 343
182 824 321 630 93 811 261 919 716 320 421 654 359 254 212 507 544 836
140 295 845 571 775 947 931 659 844 961 224 379 117 107 711 898 560 836
399 672 459 739 252 45 475 230 581 162 799 976 216 508 818 484 849 785
499 611 50 375 700 435 968 301 695 338 204 314 944 462 695 376 109 873
378 402 44 801 97 545 367 770 861 869 745 717 561 633 259 926 399 949
786 24 973 24 772 952 350 138 26 267 219 337 281 840 399 946 107 448
742 699 515 506 9 931 575 99 556 979 777 572 55 18 63 746 590 85
EOD

run_test 15 "15 25" <<EOD
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
EOD

run_test 16 "153 289" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
EOD

run_test 17 "155 146" <<EOD
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 3 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1
2 1 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 4 1 3 1 1 8 2 2 1 1 1 1 1 2 1 1 1
1 1 1 1 4 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 5 1 1 1 1 1 1 2 5 1 1 1 1 2 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 120
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
EOD

run_test 18 "15763 16000" <<EOD
900 354 630 93 451 959 519 100 552 525 588 906 319 616 526 812 185 701 435
281 16 42 450 673 396 372 361 455 212 201 274 536 250 314 46 754 818 650
248 556 987 909 380 51 511 651 660 162 46 244 834 363 311 309 70 859 904
957 697 79 599 65 888 351 251 53 656 5 570 773 995 536 453 880 295 107
663 400 162 745 713 199 410 969 368 912 225 941 245 188 850 861 953 170 957
923 21 29 800 459 996 656 593 274 250 298 910 432 15 963 196 505 795 952
367 401 656 920 984 340 829 715 761 383 923 134 583 284 923 373 87 635 601
704 750 57 606 136 719 70 3 793 927 282 993 346 66 1 804 557 267 102
46 460 630 281 896 211 351 116 716 626 509 643 877 562 905 91 203 310 795
520 201 914 338 37 789 479 391 577 68 583 481 367 106 985 589 141 75 469
162 396 785 603 355 377 284 285 406 431 442 975 799 494 762 748 902 132 122
594 493 417 820 775 49 133 146 143 537 892 973 764 17 734 149 399 735 598
560 962 753 504 73 960 135 93 784 987 605 359 84 457 19 482 976 745 577
11 555 222 231 141 748 514 459 679 959 65 346 364 13 304 573 161 841 990
345 861 640 956 350 160 538 178 809 516 745 536 758 404 823 725 43 338 731
612 756 560 502 457 135 719 642 242 347 780 885 858 641 987 401 716 371 600
873 72 604 571 706 943 934 424 308 942 541 289 261 235 431 229 234 785 360
184 821 631 518 297 832 29 631 887 895 772 4 107 354 444 466 659 9 186
855 559 523 711 412 701 701 58 519 651 428 412 754 616 357 187 779 243 555
EOD

run_test 19 "16 16" <<EOD
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
EOD

run_test 20 "16339 16016" <<EOD
307 739 677 312 47 529 536 938 435 935 818 769 773 221 48 931 801 661 110 219
818 596 774 510 981 460 483 18 388 750 167 665 223 105 703 448 178 248 477 183
877 763 267 124 702 882 656 192 706 686 557 527 669 25 737 711 965 167 332 587
47 518 550 685 768 154 547 669 519 601 753 553 185 928 343 56 330 651 809 99
805 292 313 703 194 641 997 199 368 992 483 12 917 890 136 359 213 583 356 549
336 988 674 106 933 5 343 741 683 682 382 314 359 233 783 756 206 847 491 128
158 348 301 527 118 742 637 295 793 984 843 747 295 261 764 818 618 207 770 190
299 256 517 687 610 170 654 684 108 381 153 366 92 229 391 989 687 147 989 192
368 48 949 699 839 635 19 98 470 965 138 1000 77 302 829 902 831 615 917 948
88 954 188 412 832 477 656 67 870 775 132 471 218 579 822 252 308 819 848 976
151 556 214 143 244 154 289 790 400 490 158 72 230 41 104 415 860 537 868 363
980 953 228 695 834 667 782 499 481 578 595 13 768 942 798 533 740 46 169 678
188 866 667 381 618 60 241 178 475 407 392 771 951 485 997 199 328 520 309 577
373 791 310 823 896 145 305 289 244 572 676 815 369 190 175 114 286 848 77 775
426 605 24 74 187 824 63 283 946 600 205 220 737 593 306 398 557 845 486 474
755 953 934 904 732 577 403 761 311 883 913 481 443 534 151 769 767 236 636 72
83 23 343 645 367 456 79 776 885 777 557 442 363 604 20 474 671 121 343 611
422 302 973 63 687 725 778 203 443 538 632 321 209 414 392 733 610 290 537 276
499 627 877 534 327 472 118 840 514 677 99 647 894 26 650 781 51 281 958 643
679 876 334 348 146 236 233 949 213 288 865 381 584 67 113 795 425 439 737 216
EOD

run_test 21 "17037 17680" <<EOD
608 939 689 766 440 985 428 183 765 611 683 330 333 894 598 623 294 530 388 91 239
169 627 227 813 718 63 827 914 856 356 612 544 743 36 740 187 568 909 162 808 51
185 602 605 536 49 690 470 490 502 896 51 647 978 439 312 463 953 722 922 602 270
910 255 71 786 590 859 858 436 726 621 227 283 188 985 26 622 278 670 374 358 425
354 460 561 898 765 598 428 725 616 187 240 207 782 276 347 534 750 459 832 612 54
776 275 825 364 790 455 287 841 676 52 549 245 845 556 795 511 888 826 262 430 711
111 435 988 76 407 709 679 88 528 212 542 746 371 578 186 737 534 976 143 142 885
940 136 691 963 937 720 553 24 862 633 570 182 344 666 841 838 288 383 746 608 753
148 841 8 499 475 978 610 775 355 850 119 289 827 171 300 297 114 471 989 126 65
667 579 973 565 28 913 345 899 246 593 397 534 133 793 295 684 464 462 743 943 250
508 784 452 894 517 495 542 541 175 913 757 482 688 482 262 35 935 448 66 266 876
109 258 722 755 694 379 5 614 651 9 247 184 816 159 796 522 672 511 418 803 358
72 680 641 52 445 311 34 649 530 15 677 678 374 399 526 730 139 824 117 538 928
524 905 511 299 873 323 467 514 263 938 649 463 519 38 578 82 703 250 68 972 965
122 994 570 506 442 761 270 792 533 688 301 266 430 549 776 131 754 572 989 567 135
267 78 29 215 856 362 948 648 437 574 49 567 964 403 911 941 793 431 563 197 723
731 250 348 198 89 489 803 952 950 679 79 405 831 856 916 541 291 587 399 322 145
97 114 252 700 467 147 865 190 961 141 427 371 413 536 828 682 18 767 873 146 697
487 896 971 162 133 547 996 400 503 845 164 875 579 634 137 96 499 622 343 938 762
990 538 653 35 419 320 89 860 274 821 526 177 448 610 219 282 538 334 600 870 791
459 297 263 496 835 902 692 587 520 145 530 208 935 498 358 318 128 715 228 907 541
EOD

run_test 22 "171 324" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
EOD

run_test 23 "17611 18304" <<EOD
229 24 638 699 131 24 918 814 962 288 744 69 972 531 241 390 539 584 418 397 273 755
676 997 969 514 113 862 965 410 620 373 963 250 230 273 625 797 704 878 775 774 559 857
787 140 964 967 117 928 589 131 810 511 268 475 349 642 731 618 912 57 850 552 669 372
106 722 302 968 765 742 881 540 623 500 197 819 210 829 550 146 745 37 822 489 563 453
982 756 925 984 67 87 967 718 925 7 188 415 34 242 666 149 163 847 251 270 888 769
279 530 432 902 68 767 313 813 731 181 809 654 740 547 44 782 676 795 574 905 576 190
631 796 796 309 481 596 874 975 238 294 565 214 477 396 552 166 19 201 406 112 277 8
607 380 502 120 106 382 172 457 697 984 194 90 899 637 106 760 286 717 939 756 943 516
90 527 70 648 231 510 776 374 499 464 913 624 189 416 807 362 490 493 803 782 597 581
21 388 498 915 60 260 915 689 174 521 65 91 291 976 50 459 152 662 682 323 486 730
177 275 449 690 953 925 228 447 954 162 919 509 507 682 151 316 451 516 460 810 291 393
559 98 126 832 312 32 342 142 101 274 96 291 212 223 467 370 308 990 462 727 568 904
173 782 469 368 308 836 212 166 864 676 439 784 716 351 565 122 614 197 105 812 61 645
414 216 471 928 849 81 209 471 349 564 825 656 926 345 363 944 724 506 930 935 411 421
852 428 507 117 806 186 376 266 623 756 844 528 368 254 898 380 988 132 958 394 327 876
959 61 425 220 760 671 473 600 882 126 235 994 365 44 422 733 275 23 95 84 942 70
813 399 977 110 47 345 519 799 978 18 94 977 469 446 692 586 427 706 793 23 874 718
294 375 889 854 959 256 857 935 299 244 934 890 249 27 244 650 624 129 82 83 149 217
900 388 575 976 41 690 596 390 291 920 196 95 106 602 221 193 386 263 943 44 720 850
44 579 198 666 343 777 82 665 942 792 570 77 475 502 280 984 215 168 339 909 954 15
695 154 922 642 430 432 743 819 141 105 497 51 345 997 779 375 347 820 308 626 978 405
526 29 127 720 914 403 49 776 705 811 896 29 885 44 745 701 348 651 922 124 652 465
EOD

run_test 24 "18 18" <<EOD
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2
EOD

run_test 25 "18714 18989" <<EOD
580 425 157 283 205 841 821 520 602 328 37 291 629 893 516 711 518 341 771 365 401 687 155
316 112 735 631 647 472 657 704 855 753 62 449 703 563 631 198 209 956 185 210 568 992 594
415 852 186 637 134 582 353 287 64 894 270 842 172 470 210 174 49 945 625 183 538 567 445
813 148 887 143 563 410 217 477 587 324 518 320 779 462 835 524 123 502 467 998 555 434 722
460 728 999 782 137 265 944 810 57 848 408 373 489 247 439 791 877 848 417 683 518 654 150
432 713 214 422 502 681 72 570 890 380 427 428 416 564 629 80 212 644 515 462 473 372 89
346 277 684 711 590 151 139 751 205 807 578 568 69 924 844 443 129 986 279 518 994 63 820
24 228 249 768 205 40 3 193 678 60 624 868 145 818 971 482 420 752 629 223 622 838 997
560 157 369 201 386 477 194 854 95 284 458 661 484 342 383 934 712 202 615 900 508 446 56
699 625 159 504 860 767 366 840 199 187 232 689 612 837 839 618 716 485 206 529 585 688 158
487 141 37 819 917 22 8 938 489 115 101 670 577 227 973 334 88 730 444 260 474 253 653
771 97 874 584 899 416 303 917 472 12 467 672 363 823 948 450 819 192 249 743 575 511 168
262 391 744 152 118 800 141 429 684 235 489 267 722 44 438 109 523 187 199 630 658 110 555
610 511 141 281 625 68 226 510 79 260 930 612 193 156 265 185 117 331 584 784 438 875 557
226 407 382 83 727 557 376 882 510 153 836 134 641 978 520 517 361 459 726 411 7 793 432
245 954 259 2 82 299 75 327 118 736 954 915 875 244 986 500 954 703 379 421 460 358 22
624 207 598 815 223 325 712 465 551 434 975 137 129 468 555 295 583 435 826 718 399 687 64
645 274 376 960 773 708 629 373 973 888 933 635 795 485 485 852 2 407 271 404 481 900 107
857 32 399 409 796 986 634 640 624 938 144 953 542 848 366 940 757 922 62 3 250 197 833
760 810 98 584 825 312 128 284 583 745 167 519 928 374 300 834 388 339 248 310 698 651 532
944 5 636 467 514 482 420 898 857 661 199 639 599 698 402 809 328 496 655 562 209 375 330
439 567 458 89 674 664 2 888 136 109 279 155 580 189 846 615 802 163 848 311 859 729 735
701 136 986 531 921 815 44 90 323 570 676 198 901 57 393 747 234 855 774 64 531 320 544
EOD

run_test 26 "190 361" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
EOD

run_test 27 "19864 21033" <<EOD
425 498 744 196 798 62 451 30 991 879 812 802 384 248 461 380 899 742 711 320 445 228 739 113 188
773 490 571 780 972 212 284 780 399 880 985 666 620 235 955 725 952 364 307 46 615 988 897 694 705
336 864 210 762 190 197 759 632 8 26 572 880 251 20 668 529 23 985 368 476 714 279 507 756 596
493 865 432 68 574 786 593 878 75 636 348 75 18 210 684 226 35 612 210 383 845 702 345 639 518
592 3 530 218 991 57 358 454 167 697 333 327 564 435 241 980 3 176 384 321 454 6 776 685 250
680 667 298 373 751 792 520 794 551 983 783 64 660 85 580 991 621 851 514 352 899 471 178 970 404
843 527 962 319 64 587 228 846 969 311 390 60 82 416 906 813 534 14 453 458 917 343 91 804 330
833 155 263 333 351 209 490 328 969 908 265 559 475 487 396 556 218 692 774 190 931 539 435 608 539
366 457 726 513 488 500 436 158 989 231 432 966 513 618 102 901 732 113 509 641 254 59 528 57 902
699 652 317 615 400 294 720 655 795 986 753 764 816 482 409 830 402 486 257 965 591 706 74 672 289
199 427 927 968 286 307 930 670 611 790 849 120 543 590 937 712 311 719 633 350 138 917 632 100 812
853 574 272 93 311 994 579 645 326 202 868 794 687 509 680 823 95 206 692 561 710 859 897 320 253
280 987 442 323 152 283 795 827 157 434 734 659 578 301 797 270 475 218 388 69 919 625 210 954 528
43 711 941 540 102 994 677 952 840 31 7 138 323 175 920 74 967 531 76 946 165 518 906 896 291
236 642 510 251 335 656 778 489 796 109 572 854 288 55 440 58 707 738 270 790 133 152 44 469 995
953 95 135 8 363 526 806 45 250 867 353 168 701 506 376 230 649 528 66 348 220 680 476 637 889
459 780 637 106 158 84 599 41 256 382 561 644 481 433 584 767 810 38 189 87 890 6 233 894 561
484 625 978 121 776 274 620 499 119 905 746 170 940 92 783 755 127 446 124 815 587 169 96 482 582
411 642 287 550 999 453 548 743 545 675 460 621 920 481 109 942 145 363 528 838 597 871 947 406 333
764 561 109 79 975 316 530 496 540 365 632 333 949 120 453 199 427 395 418 324 134 207 965 15 874
442 807 568 645 985 541 695 881 217 236 893 439 664 570 359 930 125 381 116 477 609 196 243 76 639
171 476 530 83 199 557 596 94 206 534 510 963 852 555 825 938 453 733 884 560 761 763 825 59 394
10 827 849 538 265 246 564 492 6 815 66 166 799 18 680 297 345 459 37 850 968 274 827 292 540
157 464 359 516 879 408 651 472 689 190 730 748 556 941 289 946 471 846 740 760 772 654 715 205 264
416 305 789 209 427 737 1 557 999 109 782 206 976 127 408 415 694 111 829 950 549 789 518 748 904
EOD

run_test 28 "20 20" <<EOD
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
EOD

run_test 29 "20239 20109" <<EOD
823 621 483 881 853 400 361 64 472 710 832 757 954 689 134 82 74 93 20 956 585 905 992 946
558 409 417 614 456 85 666 205 382 593 163 911 439 934 191 690 963 506 204 488 69 301 440 58
101 774 701 972 511 364 959 919 629 537 324 445 984 747 609 387 45 627 375 361 526 224 644 140
902 331 994 79 701 504 877 258 970 359 514 683 385 695 695 18 634 245 282 902 611 747 706 216
898 818 444 442 926 80 533 878 131 561 70 180 371 881 219 125 661 66 475 626 234 927 2 350
933 358 727 282 942 743 530 155 625 779 181 883 61 435 333 890 827 636 552 825 625 515 648 754
26 157 241 545 272 81 982 972 817 94 510 569 353 251 936 388 32 916 555 593 700 337 65 226
734 585 800 599 375 177 726 418 710 973 257 786 502 985 884 545 797 209 66 967 926 765 538 576
701 164 794 710 960 56 55 690 92 16 812 687 282 384 598 640 369 92 859 380 995 151 887 47
32 11 796 491 271 99 300 970 48 224 898 211 384 16 458 655 919 567 694 486 174 197 264 413
612 427 598 835 907 159 581 550 278 747 678 950 260 564 419 993 717 843 640 58 486 388 257 354
634 204 462 428 457 401 874 836 748 383 880 845 502 466 63 890 643 348 933 638 338 509 396 355
149 702 770 331 557 206 928 224 171 245 201 704 697 154 94 877 874 842 203 877 685 575 492 251
780 751 415 138 455 619 16 126 808 107 280 756 632 543 279 542 456 656 675 257 265 360 193 490
255 57 764 496 307 520 670 575 210 520 552 807 791 790 769 552 230 76 896 591 874 339 246 331
564 661 421 30 900 235 986 420 558 926 884 399 855 520 819 288 437 706 546 112 992 472 751 666
887 124 28 190 465 602 617 917 811 434 933 646 100 641 675 976 534 133 250 866 907 371 697 710
257 609 154 169 793 134 340 92 910 755 143 777 207 797 956 956 309 968 588 422 587 174 189 797
31 571 579 859 223 886 760 517 428 318 933 857 449 448 124 678 95 842 736 345 499 899 769 737
178 294 557 940 783 275 124 84 420 358 138 222 556 481 870 25 996 626 349 889 865 99 508 862
844 911 328 746 438 844 299 132 803 842 682 929 330 821 735 153 195 850 437 92 310 902 123 614
973 712 350 873 550 880 873 79 787 696 96 872 948 379 646 576 60 7 420 714 799 941 696 175
892 196 695 16 663 416 552 943 789 714 774 727 495 426 582 923 970 604 143 634 725 863 206 817
204 861 33 304 482 410 816 33 17 175 981 355 185 858 416 371 145 154 84 234 605 920 82 634
EOD

run_test 30 "210 400" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
EOD

run_test 31 "21 21" <<EOD
2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
EOD

run_test 32 "21 22" <<EOD
2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
EOD

run_test 33 "2134 2128" <<EOD
881 461 792
382 277 406
147 645 930
EOD

run_test 34 "21 36" <<EOD
1 2 3 4 5 6
1 2 3 4 5 6
1 2 3 4 5 6
1 2 3 4 5 6
1 2 3 4 5 6
1 2 3 4 5 6
EOD

run_test 35 "2147483647 2147483647" <<EOD
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2147483608
EOD

run_test 36 "21514 20607" <<EOD
497 428 87 533 768 503 749 155 253 464 103 862 263 263 454 730 191 558 832 507 741 496 720 333 345 79
544 887 255 715 627 787 42 305 930 309 914 25 231 607 33 51 724 664 305 553 432 849 376 220 359 232
687 241 164 2 709 755 188 690 959 863 900 538 838 317 821 958 333 145 817 166 328 226 474 690 773 57
28 793 647 696 511 35 357 396 101 801 142 928 601 160 837 541 648 171 152 187 826 989 732 474 516 231
404 193 904 461 768 474 230 653 727 396 44 264 353 865 181 443 216 21 816 405 545 657 330 787 579 304
539 587 231 39 61 174 181 280 632 165 492 641 34 668 699 948 433 442 498 384 819 287 6 384 774 712
658 111 687 747 864 117 882 464 936 644 423 689 336 870 84 73 234 17 951 576 988 148 707 597 225 888
290 195 486 252 581 847 266 349 516 70 594 885 301 375 759 570 733 56 526 744 107 628 301 746 54 990
433 198 725 510 405 91 523 976 828 687 979 685 63 576 424 987 355 14 480 349 716 577 818 418 416 651
71 481 782 663 895 740 198 592 414 68 625 6 666 504 363 325 548 72 592 49 993 950 321 121 273 287
267 705 274 857 381 307 95 754 20 42 195 166 793 239 487 472 163 356 362 349 349 977 987 391 30 746
826 368 658 121 161 662 390 609 473 494 318 558 687 319 912 912 484 322 131 382 280 354 563 521 788 965
759 924 938 291 719 883 827 636 481 728 96 899 882 534 776 185 766 994 155 605 669 44 438 438 493 665
261 648 466 473 805 138 334 196 903 466 671 182 775 435 731 52 838 185 816 586 441 598 607 96 588 569
367 184 296 716 487 501 799 54 623 180 170 8 923 959 566 686 631 311 514 584 219 720 874 618 206 254
623 908 225 664 42 371 886 237 771 150 900 187 980 171 384 721 813 552 882 830 263 857 20 755 967 297
582 4 351 647 310 679 511 234 879 892 829 959 138 800 123 687 189 416 787 444 331 344 201 499 908 322
737 376 991 766 888 471 697 746 789 882 887 124 841 222 677 747 293 493 892 854 415 82 708 577 669 605
968 523 966 239 804 852 740 988 943 135 243 113 4 359 262 393 12 241 800 65 576 566 768 585 52 709
607 55 908 655 669 415 97 284 503 174 780 551 79 35 385 853 279 542 505 180 489 534 592 22 71 467
777 604 30 403 756 382 187 95 245 686 81 288 467 828 17 721 856 88 613 462 163 766 681 723 287 226
81 873 220 74 463 886 585 202 639 494 255 101 419 399 364 984 790 700 773 991 75 677 164 768 678 504
409 609 305 11 924 307 117 531 301 315 875 172 223 195 704 265 189 523 467 756 670 215 99 179 976 982
951 296 151 404 710 453 397 959 477 976 898 628 570 948 985 888 98 50 109 619 477 578 288 810 489 641
301 923 834 195 511 127 35 943 356 821 381 898 605 423 776 264 718 728 368 561 954 520 772 783 117 49
70 358 505 373 9 341 916 70 152 474 126 283 466 772 593 628 592 164 508 200 445 687 844 213 860 560
EOD

run_test 37 "22 22" <<EOD
2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 38 "2 2" <<EOD
1 1
1 1
EOD

run_test 39 "23004 22708" <<EOD
443 928 687 782 151 52 78 462 57 678 438 983 812 40 983 536 271 302 139 436 262 597 969 327 928 608 276
918 605 383 514 293 514 449 899 989 383 371 324 75 205 4 715 916 190 609 353 468 218 909 416 543 74 425
298 846 960 361 855 544 776 161 858 675 165 146 470 364 142 995 154 901 978 65 231 258 883 54 138 319 256
808 700 696 967 972 219 89 151 53 30 23 516 781 299 45 147 41 751 44 140 989 326 224 756 516 565 10
194 40 964 906 224 536 288 968 461 162 708 194 928 381 213 90 966 132 385 198 767 187 112 842 303 95 180
267 483 477 940 452 407 209 896 111 89 124 799 980 493 331 584 985 334 558 116 759 776 237 259 625 131 367
243 8 929 122 604 129 357 21 486 985 222 256 787 719 486 103 1 843 333 405 706 436 603 127 509 745 979
421 492 247 219 316 321 40 967 888 182 967 520 671 624 472 846 599 764 78 772 397 273 674 236 416 293 726
662 807 405 803 613 860 151 936 530 240 767 907 935 747 753 599 921 35 323 663 782 234 591 5 364 432 974
583 149 818 12 803 24 596 379 160 483 380 354 661 521 688 943 607 833 857 143 25 645 674 753 202 94 631
944 428 217 401 439 182 886 568 788 712 228 965 884 340 369 594 117 542 681 663 142 95 292 985 172 507 289
950 939 475 66 811 710 393 652 951 944 82 941 173 775 953 901 231 379 868 974 804 656 51 558 212 522 431
489 850 137 232 230 933 893 937 630 313 647 418 256 491 688 419 651 35 601 508 888 190 194 62 607 305 534
486 295 888 917 854 290 279 905 802 815 713 853 9 280 839 323 588 585 961 613 483 116 237 401 523 612 14
543 299 657 75 625 926 399 408 643 743 396 793 129 977 586 887 605 939 183 592 229 50 868 606 478 646 692
51 371 58 487 394 243 276 736 606 146 740 88 928 611 872 197 581 192 792 833 637 897 230 633 463 341 20
785 494 432 51 598 979 234 348 38 585 256 3 551 853 241 981 742 865 851 256 982 357 854 287 414 687 814
55 155 142 426 25 54 223 492 242 175 95 143 110 694 263 835 612 325 190 241 980 396 917 488 768 612 86
39 429 641 145 637 912 165 179 194 897 160 231 949 329 362 999 806 647 723 742 562 719 523 242 963 225 446
835 660 238 654 658 413 968 185 63 602 30 459 231 945 515 70 938 452 94 242 913 619 397 111 842 45 871
524 320 907 400 183 413 467 331 520 957 244 502 818 981 145 299 398 777 189 493 798 48 650 585 790 869 984
533 217 263 127 812 614 543 445 865 157 203 848 46 765 614 996 113 695 950 277 261 769 320 999 335 654 553
74 477 671 322 610 315 430 934 115 257 830 432 889 276 537 280 142 196 929 143 728 184 52 537 890 841 593
723 764 897 264 792 159 61 470 968 194 835 594 534 617 831 500 739 284 263 62 2 724 489 178 804 407 512
825 890 425 134 432 769 722 707 170 218 993 39 274 828 806 570 87 307 603 396 527 897 684 314 254 628 780
592 1000 275 720 461 386 647 236 580 543 60 403 825 812 910 662 282 746 245 989 234 196 155 403 871 201 12
985 929 206 111 881 805 990 131 707 895 499 533 654 627 592 226 27 27 904 779 584 617 236 403 569 9 639
EOD

run_test 40 "231 441" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
EOD

run_test 41 "23168 23348" <<EOD
546 396 846 873 849 260 375 662 308 375 432 180 599 835 681 204 767 784 213 592 362 642 970 129 377 967 423 428
369 693 804 543 872 167 444 736 862 23 650 274 280 965 285 852 595 847 306 945 903 414 470 619 356 417 277 905
426 718 496 883 837 947 294 616 571 890 308 432 391 946 342 744 135 940 313 398 358 119 534 530 661 479 525 956
223 185 188 456 890 540 310 145 528 767 437 333 672 669 282 705 540 875 555 958 72 727 485 416 105 880 548 308
184 966 222 359 423 338 393 386 703 853 542 851 636 198 216 368 504 981 726 689 838 829 991 787 925 567 885 497
700 772 352 11 992 3 962 562 545 78 911 335 276 896 3 688 333 704 323 875 511 118 913 124 155 860 471 355
976 436 435 856 453 897 687 931 502 532 860 633 237 655 823 426 70 391 413 942 827 304 455 222 245 11 986 583
860 228 857 133 533 607 586 110 644 56 882 380 210 73 186 801 844 690 639 857 296 487 55 764 447 529 529 673
981 214 611 443 911 104 72 275 676 727 101 630 69 713 783 15 509 34 733 754 118 654 378 556 372 130 288 373
173 93 687 4 79 914 129 431 445 440 469 106 1 912 126 117 589 10 788 583 705 40 255 413 796 775 555 328
836 56 71 782 817 699 102 583 41 98 551 155 585 353 570 70 566 628 753 206 529 261 967 363 342 706 669 134
838 274 209 305 359 802 595 390 369 687 289 303 811 543 77 492 459 634 998 353 470 185 848 169 22 350 799 576
89 708 440 112 31 969 745 768 890 247 796 783 758 181 702 879 339 451 396 986 185 476 905 709 708 317 664 654
426 40 283 10 3 20 301 661 247 177 272 843 798 309 603 212 838 216 595 290 484 970 830 571 955 813 391 614
804 732 405 714 305 92 343 850 965 787 781 739 881 41 632 163 180 553 189 876 874 693 872 493 722 374 171 456
211 712 56 190 629 688 858 516 773 559 538 706 967 753 248 51 435 857 409 443 339 668 392 402 625 516 740 111
861 913 992 932 922 887 639 253 732 591 110 194 184 116 390 622 16 483 910 121 445 821 58 866 965 728 117 544
321 654 566 114 948 747 655 861 567 607 785 81 115 996 320 845 748 216 259 223 278 771 387 142 607 620 666 41
855 127 967 194 770 95 932 78 25 997 247 437 462 530 55 409 699 830 6 450 501 213 119 750 470 895 267 551
268 424 508 328 82 615 6 440 641 591 311 21 65 243 820 751 970 823 762 749 716 978 444 778 614 217 540 643
9 217 725 876 829 382 810 601 490 919 355 847 524 615 769 108 519 986 385 258 393 368 780 647 133 518 835 290
981 731 714 866 75 364 432 424 866 436 193 683 433 219 262 51 468 916 225 101 210 337 259 629 832 282 250 641
437 79 744 311 548 520 621 760 205 490 772 161 184 345 242 84 794 703 825 174 106 730 180 217 294 734 81 644
472 86 35 794 114 792 988 788 693 883 136 914 599 503 847 978 144 64 918 866 95 176 836 130 457 76 535 708
899 527 17 814 440 977 288 119 456 979 48 393 358 455 392 912 567 912 576 604 883 202 73 231 816 216 550 297
251 905 337 39 257 280 890 166 866 323 474 622 215 728 523 166 17 526 508 641 784 924 564 545 500 932 826 697
454 787 999 225 428 992 869 551 642 9 136 79 566 226 46 244 439 955 389 156 680 908 214 290 708 910 513 327
342 792 539 326 455 193 713 79 325 249 195 224 860 972 524 8 391 430 76 559 879 320 107 546 543 671 17 547
EOD

run_test 42 "24 24" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 43 "24 27" <<EOD
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 4
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
EOD

run_test 44 "24534 23750" <<EOD
573 709 518 518 479 542 209 851 470 811 625 373 514 967 920 191 761 165 296 709 384 207 900 279 835 955 449 23 686
994 783 785 176 166 507 616 732 677 745 318 763 674 538 580 806 703 45 912 400 916 785 378 375 309 164 367 809 240
683 525 93 187 166 477 29 840 198 349 461 305 460 84 421 978 947 710 669 320 473 133 910 538 624 770 210 405 410
868 3 140 807 492 994 220 226 577 509 62 552 966 506 697 451 95 457 701 958 397 363 454 698 490 767 551 616 556
563 396 268 624 431 330 347 321 498 968 90 201 753 371 202 608 769 508 627 214 87 529 313 509 447 14 506 549 443
318 726 444 605 671 14 113 795 929 536 176 351 130 598 489 612 758 644 992 253 91 721 260 924 403 469 34 83 760
177 418 825 798 879 181 243 647 596 83 357 89 814 841 973 452 863 958 932 824 897 690 370 514 296 352 597 466 520
203 203 980 30 35 752 118 351 553 252 417 247 965 162 562 636 165 277 881 288 472 540 512 103 259 863 487 49 312
502 527 584 777 127 394 881 378 59 779 89 855 102 311 706 515 578 933 529 808 879 132 75 716 179 48 663 692 878
772 173 265 70 39 51 725 834 470 838 768 682 259 106 499 793 433 371 230 806 588 682 930 959 241 434 371 452 869
599 79 731 190 500 288 606 824 785 63 260 981 682 108 95 761 127 620 26 577 924 746 678 434 886 290 90 244 306
830 606 681 274 965 872 760 38 492 759 819 894 969 649 309 970 825 907 574 836 199 114 814 346 876 946 853 402 297
304 210 198 363 518 956 457 580 708 717 237 336 723 635 862 207 684 955 98 369 465 61 384 517 408 108 716 792 335
399 20 19 358 741 188 549 622 531 451 693 853 391 118 190 338 501 476 479 953 139 193 991 756 34 833 244 827 682
955 411 241 665 245 310 697 218 978 983 448 313 586 153 504 405 517 74 944 195 179 908 632 237 840 197 207 30 264
325 908 945 723 940 576 41 453 188 146 809 494 121 523 494 32 640 554 40 488 352 517 759 300 633 503 48 780 5
825 49 104 668 954 653 75 503 591 646 577 464 952 330 929 136 701 59 385 138 205 201 644 167 543 913 809 149 646
91 438 529 262 449 363 98 705 826 167 871 420 530 50 908 463 25 400 188 831 165 932 445 664 642 800 625 406 937
126 42 845 926 858 500 209 49 202 504 967 831 431 876 893 515 718 676 151 736 704 519 513 621 319 481 160 993 866
620 649 738 693 768 701 125 26 495 672 550 700 415 823 896 221 1 734 57 552 149 924 125 475 670 234 608 529 224
608 377 341 216 183 583 855 230 139 663 175 768 489 224 4 601 37 289 696 618 401 319 747 104 441 717 696 525 264
23 535 94 596 802 887 296 210 484 232 240 42 992 862 72 882 784 661 701 122 874 634 945 912 912 824 290 631 238
775 467 888 331 966 116 129 82 173 687 337 709 392 553 57 457 577 409 457 676 222 657 57 996 403 390 390 590 183
684 979 598 665 973 710 766 353 711 27 747 943 801 612 974 364 414 483 82 888 456 336 415 833 955 16 118 411 893
928 576 726 539 900 489 709 739 44 419 844 292 104 866 383 710 733 422 46 83 632 990 908 309 703 727 349 564 765
710 958 592 355 461 783 451 21 405 901 124 265 625 370 65 239 597 352 470 33 124 223 594 73 328 261 939 669 418
836 173 141 146 975 334 462 252 937 644 84 933 690 328 522 922 819 7 620 844 71 107 376 879 532 642 488 364 519
28 200 844 783 603 569 729 984 120 651 37 603 987 660 709 387 101 435 895 73 151 510 255 319 825 348 730 798 262
615 333 847 98 734 910 444 240 150 87 759 793 939 699 356 584 241 84 447 668 492 431 208 593 292 369 518 946 526
EOD

run_test 45 "25343 25433" <<EOD
958 255 840 932 722 506 319 190 506 253 751 265 148 951 348 136 280 212 811 899 735 585 264 284 131 771 184 126 254 806
365 392 499 714 193 832 920 862 218 194 38 395 736 832 697 403 345 481 860 458 13 157 707 47 791 374 991 557 802 951
322 193 937 700 888 359 767 434 758 517 216 418 994 618 861 341 850 433 587 728 426 703 266 797 794 209 685 452 923 819
841 364 61 268 873 845 458 36 944 338 636 912 723 344 242 595 164 90 187 451 525 559 970 74 525 620 928 141 907 680
674 316 511 940 676 853 357 727 746 16 883 814 490 250 93 515 980 923 555 199 46 596 265 473 295 283 395 988 743 254
918 318 129 264 664 321 401 784 669 390 238 437 345 171 568 711 69 721 981 10 640 6 586 708 635 79 51 38 645 393
458 370 984 493 99 566 685 227 586 773 115 197 254 166 962 609 251 95 906 585 215 675 7 733 615 913 733 422 630 586
270 363 139 276 932 869 453 853 73 3 26 843 136 209 896 443 752 420 747 26 829 957 133 61 179 784 364 252 879 186
833 264 598 1000 503 752 58 979 235 94 156 399 23 904 559 372 539 798 838 172 161 314 675 604 758 314 231 79 98 149
506 202 975 887 170 762 246 136 707 145 386 774 186 654 870 430 935 230 503 807 245 566 414 707 25 520 589 994 243 190
522 980 882 87 588 955 424 136 735 797 127 404 92 694 787 388 128 22 734 328 380 1 577 291 904 940 788 268 862 650
173 252 893 518 623 407 893 100 66 916 7 799 496 706 680 842 475 721 921 638 393 568 261 916 811 521 403 591 183 649
167 156 275 85 624 876 511 575 71 381 496 29 957 818 322 581 506 871 611 63 466 68 348 225 258 606 992 978 707 103
4 302 917 417 750 851 525 411 82 805 331 901 651 541 142 364 612 443 594 230 15 533 980 121 184 100 809 50 828 19
885 534 868 968 377 194 113 540 68 472 57 95 789 807 733 565 417 807 83 895 995 549 384 478 88 471 322 797 234 651
42 475 584 64 921 797 34 684 164 949 251 73 376 123 174 920 744 174 389 619 683 2 968 934 25 336 151 390 880 906
872 317 306 418 430 582 512 726 886 936 532 734 644 135 644 922 174 261 305 168 728 149 408 616 968 40 508 650 40 585
647 644 804 258 77 935 768 958 694 592 409 19 288 453 87 950 359 833 291 103 163 890 86 712 179 724 909 690 450 390
75 863 686 302 290 889 931 386 59 709 155 216 568 713 760 710 861 956 530 19 682 675 360 938 422 757 559 92 80 353
27 78 509 304 517 547 333 987 164 199 20 973 775 583 948 948 323 373 953 470 863 953 161 432 709 401 503 748 880 533
331 839 307 706 682 78 708 264 196 214 377 875 793 331 1000 710 900 778 991 475 435 186 140 610 491 74 917 78 595 117
44 586 108 631 869 181 666 70 901 870 241 59 177 739 93 989 161 830 432 1000 501 726 758 405 99 145 700 697 216 608
162 630 670 80 171 792 768 162 463 819 44 831 877 121 234 376 10 401 518 502 914 87 646 596 616 318 828 703 533 724
482 969 854 293 709 611 390 97 569 302 222 999 367 614 956 671 850 638 171 723 135 299 180 714 695 75 985 74 464 853
965 65 630 739 338 76 977 585 412 624 987 913 833 216 281 916 720 32 640 946 469 190 532 810 590 183 789 140 599 635
626 316 634 716 338 157 369 628 276 881 694 266 227 548 737 223 466 965 434 779 355 954 435 519 385 775 534 820 150 155
287 837 986 777 999 671 280 118 879 124 547 92 756 759 252 204 964 984 74 368 718 825 707 820 280 673 882 115 332 563
624 550 479 122 595 857 280 450 550 67 943 349 86 311 233 263 198 676 267 181 812 550 747 783 438 462 131 166 498 326
789 165 787 316 501 998 614 635 165 396 924 514 435 8 425 370 740 396 588 18 476 207 849 151 752 74 803 696 685 133
726 115 953 224 278 779 563 770 811 235 649 563 511 871 257 298 116 739 359 69 723 736 578 480 851 583 317 636 565 427
EOD

run_test 46 "253 484" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
EOD

run_test 47 "26141 26560" <<EOD
297 976 905 797 654 941 147 629 196 139 931 256 81 994 335 55 350 980 141 764 371 18 772 388 618 742 718 560 397 672 196 481
820 477 119 908 874 867 914 32 878 959 746 881 244 34 881 745 549 323 446 913 962 324 738 280 205 517 180 913 224 587 233 524
943 450 436 604 876 427 181 484 66 109 886 413 273 891 145 584 861 973 11 75 227 283 519 497 740 840 704 357 688 2 809 292
727 222 939 794 598 277 870 123 142 962 848 853 438 325 7 314 373 596 52 251 576 158 298 661 931 940 865 36 723 824 797 65
301 595 686 51 953 351 986 585 104 889 933 265 436 666 59 415 833 390 985 92 951 559 716 569 925 279 864 659 412 834 400 318
165 783 553 843 640 957 362 23 610 467 147 688 226 33 225 265 881 451 203 334 840 705 115 743 880 118 126 675 488 328 173 271
489 616 100 653 114 217 776 877 28 962 483 484 412 29 344 893 54 599 778 962 631 67 478 461 669 811 964 522 831 688 536 282
294 877 199 610 933 572 152 665 675 327 306 879 223 631 331 851 775 234 621 889 550 212 640 422 139 640 985 303 253 254 47 341
427 202 191 536 830 734 960 483 448 114 287 305 762 600 239 39 481 113 748 597 68 648 733 83 238 778 472 294 588 849 413 422
281 965 453 21 440 796 22 41 275 139 441 437 925 335 661 539 402 946 823 140 507 450 273 780 469 109 298 53 263 667 895 599
702 866 25 797 148 218 599 685 92 708 323 930 207 296 158 904 117 933 893 642 26 273 915 831 693 673 553 332 498 970 779 609
244 842 736 60 310 864 392 185 348 138 49 800 128 344 573 174 952 395 936 330 775 253 573 429 951 195 105 475 666 267 187 122
930 714 686 365 561 98 594 254 541 709 295 889 224 116 703 349 101 379 381 104 34 449 835 991 270 307 109 116 759 918 519 81
951 927 871 415 658 209 613 854 801 682 789 67 959 685 205 836 493 756 375 287 887 83 89 481 880 695 96 254 989 479 495 624
190 214 938 298 246 289 691 892 766 528 304 352 660 769 33 585 102 274 623 3 544 233 195 869 839 390 535 964 114 359 865 322
188 166 877 745 748 908 590 204 66 483 521 360 780 737 821 112 663 511 153 716 856 492 81 957 20 70 459 856 754 728 779 408
663 983 165 495 892 288 837 195 684 420 938 62 713 836 89 103 569 424 301 603 207 150 466 696 86 920 726 679 449 735 450 338
705 114 697 798 572 327 220 376 674 958 32 437 554 20 245 184 981 357 287 331 428 176 201 514 517 469 410 972 562 159 746 950
970 601 358 599 139 292 531 243 205 926 929 250 118 30 142 67 676 543 698 93 448 120 911 529 914 184 281 104 917 249 814 515
213 83 468 954 663 647 45 689 826 44 127 502 248 951 396 488 327 344 297 20 462 653 502 850 690 829 686 956 11 428 327 956
113 414 37 36 563 189 405 30 498 9 267 404 994 409 281 963 789 794 777 573 952 794 54 560 582 618 264 834 961 90 678 399
718 171 390 834 915 360 926 139 940 268 523 453 386 98 856 282 549 723 167 218 652 754 5 319 360 478 455 945 925 571 69 408
331 869 687 824 20 448 49 429 869 638 634 685 272 602 174 484 763 983 286 238 923 461 747 964 167 71 474 437 906 982 215 369
199 115 122 518 411 32 262 101 675 739 350 14 121 320 48 759 304 971 183 942 286 831 485 871 122 723 658 949 974 612 523 888
424 265 486 157 480 657 73 731 721 185 564 185 111 733 844 847 24 716 134 935 799 273 84 369 630 252 396 689 375 314 128 64
216 463 591 857 834 891 280 648 898 452 222 102 268 301 760 389 880 812 925 259 478 589 89 151 182 118 527 229 261 385 357 408
57 500 969 649 143 987 14 133 436 487 37 348 52 982 101 330 492 7 809 563 389 870 586 628 375 441 676 716 365 52 387 514
96 815 45 768 333 111 247 894 799 793 823 992 552 741 100 200 18 198 737 254 577 794 19 188 915 342 275 702 312 298 769 385
100 524 253 238 937 333 997 382 761 916 765 597 48 594 76 634 341 476 699 167 316 133 938 302 796 858 854 992 837 545 582 501
24 438 893 29 489 863 263 685 201 355 494 662 29 422 140 321 266 642 362 836 599 602 70 967 587 951 442 80 480 6 545 216
334 265 573 610 702 48 145 479 214 15 967 961 640 276 273 374 718 534 726 196 184 747 903 423 369 926 442 539 422 184 206 195
811 279 328 765 849 531 619 218 497 883 623 585 636 110 328 311 678 68 362 946 281 350 32 587 363 151 242 777 606 607 58 30
EOD

run_test 48 "26 26" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 49 "26735 27008" <<EOD
810 772 150 362 949 509 526 188 916 508 700 302 125 318 788 259 598 132 861 354 822 260 915 462 247 742 403 699 289 842 612 890 826
593 776 864 960 967 363 170 543 175 31 773 651 731 463 45 364 983 179 475 747 704 209 550 857 689 115 208 106 827 899 74 897 810
476 533 543 924 300 632 770 691 812 648 230 143 811 517 279 359 336 307 664 138 143 123 384 227 8 271 852 156 64 716 277 957 877
841 255 931 502 440 684 547 706 56 892 562 320 715 878 599 929 748 492 593 411 759 667 354 149 317 917 29 781 615 627 97 372 274
267 971 262 349 857 896 624 117 432 88 231 823 907 293 393 254 227 317 225 685 547 118 174 902 782 186 524 655 767 92 429 796 190
47 448 908 337 581 892 596 969 294 327 580 123 326 410 624 637 527 388 311 872 688 727 149 797 361 567 671 373 970 350 341 659 436
633 861 845 486 917 647 426 630 716 253 791 594 779 457 777 900 18 240 704 119 924 503 320 300 111 977 14 221 223 1000 945 987 922
688 693 549 779 152 611 742 885 243 972 475 358 203 582 111 895 474 952 110 638 540 512 130 542 546 375 940 634 206 407 716 309 805
673 91 764 228 121 867 630 963 235 682 532 846 942 908 396 904 326 750 48 835 349 382 177 563 8 234 778 671 109 680 837 256 166
553 531 491 347 668 353 86 481 675 306 830 599 697 604 467 545 730 880 658 669 475 456 291 915 201 221 888 90 959 855 555 846 276
680 389 378 905 557 659 397 963 355 675 77 347 965 311 630 311 127 379 800 180 588 692 98 240 577 147 447 466 997 522 820 751 985
324 17 216 90 640 174 222 261 707 121 782 214 568 237 910 259 779 832 477 756 667 688 989 292 138 329 411 212 932 967 833 855 327
363 641 294 415 222 487 205 579 919 882 572 316 27 9 910 538 208 218 690 344 996 319 636 29 924 952 312 763 10 330 740 288 927
888 206 596 616 845 558 346 272 177 748 807 418 976 112 321 501 675 725 749 143 512 332 44 5 266 491 270 175 442 570 590 142 284
390 139 803 314 922 364 661 345 72 819 571 830 612 948 841 992 263 336 605 992 145 416 556 162 592 351 354 288 171 830 608 158 665
134 587 973 518 188 753 362 89 799 440 514 474 176 655 543 429 184 180 235 985 151 139 975 583 641 723 572 10 373 175 243 211 413
165 478 362 869 474 75 583 244 904 347 976 43 689 416 697 811 860 988 650 374 174 515 995 613 390 878 465 182 352 717 625 198 303
61 11 177 182 561 710 106 652 742 247 792 999 540 953 307 875 199 514 187 593 838 240 650 483 749 479 597 610 401 893 187 723 778
741 628 405 521 630 299 278 545 722 432 268 204 614 850 925 158 307 153 204 438 606 465 822 362 694 433 83 113 496 252 850 61 69
221 799 325 903 355 570 215 910 48 117 808 382 280 136 629 673 452 94 740 984 286 173 277 807 44 827 197 217 166 50 470 583 208
135 393 52 601 256 953 584 989 528 558 348 14 980 414 298 454 441 44 158 110 77 784 49 523 518 859 529 374 999 744 999 647 225
175 146 743 578 72 197 142 157 996 759 616 929 794 65 413 899 763 726 7 313 474 132 352 345 529 83 398 425 211 990 784 560 701
789 806 269 555 877 369 848 17 954 81 25 433 594 725 794 116 475 237 19 992 335 752 43 795 399 49 990 799 718 946 6 975 57
228 5 260 145 345 886 357 160 296 520 51 327 912 936 358 604 309 737 754 765 568 367 37 763 475 157 828 380 49 299 8 76 51
377 366 721 535 972 130 351 663 833 40 233 992 468 487 114 632 195 409 210 253 210 490 862 968 497 670 188 59 978 111 997 512 976
276 535 571 638 70 338 607 403 103 735 328 805 772 7 670 715 748 855 891 799 823 842 888 504 753 38 302 943 293 686 723 43 722
17 193 953 543 995 125 72 604 850 108 755 535 164 726 664 519 344 230 256 107 713 153 435 648 67 885 32 37 664 111 418 13 286
84 756 814 718 172 754 730 819 196 974 734 133 969 590 313 638 425 949 456 467 936 9 864 759 306 477 110 93 35 940 739 690 743
250 81 971 850 801 173 477 527 289 518 179 701 515 98 296 720 400 240 163 962 546 350 75 892 56 413 696 645 638 784 256 236 44
391 720 510 343 788 624 776 980 941 648 491 685 58 791 379 815 374 636 701 576 728 197 900 6 79 795 389 477 832 889 505 263 944
657 124 379 786 378 612 616 387 983 606 703 584 207 999 622 318 831 265 149 556 660 317 194 820 504 264 994 236 299 148 52 144 229
741 402 668 1000 29 996 25 85 189 746 592 198 422 872 796 768 160 2 625 356 707 285 341 930 560 282 114 618 381 89 836 555 560
356 467 598 954 318 803 269 124 472 471 571 603 623 83 392 198 469 140 146 427 788 522 457 61 738 441 747 882 407 704 101 910 38
EOD

run_test 50 "27060 25977" <<EOD
195 919 951 33 670 810 562 211 730 647 807 970 586 354 369 913 696 978 894 455 959 65 338 616 410 991 537 473 374 696 462
927 206 384 41 731 613 479 202 448 736 905 10 712 262 754 150 225 112 938 887 339 743 111 468 131 581 335 623 680 274 90
838 34 185 881 764 202 314 638 301 218 777 447 719 55 55 626 355 657 842 313 362 436 810 124 185 96 916 910 150 278 856
522 175 647 68 976 528 381 991 948 912 474 638 669 563 297 392 414 76 955 980 967 839 961 729 402 225 62 697 668 287 404
488 24 362 255 272 72 988 80 99 975 667 894 402 888 798 141 562 889 704 503 835 196 298 890 684 214 919 666 752 467 685
323 662 508 986 615 307 308 25 321 427 997 857 6 301 945 560 841 605 84 500 809 964 784 570 293 726 473 572 59 154 322
329 633 290 344 233 894 903 184 834 255 865 384 76 838 339 292 589 740 654 79 61 668 967 877 359 878 939 693 890 835 737
966 167 105 669 225 716 957 712 666 939 421 250 246 944 581 709 732 955 434 884 832 405 76 261 661 666 414 986 355 956 210
295 1000 519 899 218 971 170 115 577 632 28 988 141 641 418 722 933 779 170 208 739 456 951 905 561 92 844 8 560 303 972
358 711 729 127 250 728 46 363 738 562 841 858 252 805 418 936 621 243 944 481 207 186 749 472 839 49 614 339 126 128 163
555 274 661 671 278 412 514 168 995 888 416 432 646 898 599 699 101 144 157 223 765 616 822 766 172 963 257 288 202 114 707
238 611 400 286 584 592 134 140 524 108 75 950 594 791 754 103 574 241 350 514 195 970 905 398 940 453 895 499 315 155 226
967 881 181 179 822 247 613 15 108 967 4 633 116 691 666 228 975 419 861 684 48 852 600 513 268 707 2 346 132 697 636
826 369 882 108 70 414 613 933 856 962 227 243 548 192 338 789 708 275 225 921 81 455 472 179 116 282 669 912 115 246 267
884 411 331 179 264 234 583 597 815 362 486 5 723 822 609 52 322 931 918 294 72 907 776 556 372 898 704 993 788 746 702
818 611 695 344 832 218 14 74 555 126 678 411 559 595 450 750 358 508 230 347 982 198 952 195 977 635 776 807 367 531 591
809 70 661 669 395 28 479 778 835 309 857 364 169 394 497 217 961 922 149 347 486 558 399 721 621 659 501 367 197 442 207
708 25 536 870 341 899 927 56 723 879 730 396 39 125 834 784 801 480 418 815 885 219 185 106 251 671 941 49 736 528 112
581 393 102 149 340 634 525 156 319 35 867 427 468 756 163 360 596 787 876 700 888 779 628 322 490 840 431 619 671 959 878
320 196 768 150 4 938 976 495 151 277 324 100 781 18 792 717 350 89 311 345 262 860 828 224 802 766 780 660 500 203 906
486 361 157 547 232 700 606 159 423 620 292 726 424 565 680 847 305 698 123 81 531 360 615 617 460 368 544 348 239 158 317
996 948 371 838 740 624 471 561 18 745 930 889 725 970 135 405 660 123 919 476 962 377 123 376 127 747 541 88 864 156 259
921 266 304 297 779 54 727 940 224 834 137 106 336 601 471 890 647 326 964 885 225 320 682 355 619 825 995 711 994 84 384
698 862 486 9 623 422 674 357 351 934 183 695 643 825 272 787 776 656 857 894 762 900 272 34 602 584 949 679 954 59 16
947 141 450 440 245 850 592 848 469 974 969 613 952 42 626 40 531 347 38 220 56 137 190 623 798 590 453 408 40 473 995
403 293 918 237 555 193 386 28 937 184 808 388 921 793 288 321 992 977 544 419 332 917 840 961 810 951 828 642 655 398 185
809 996 979 567 321 34 806 71 847 145 320 101 36 248 750 269 830 511 270 461 432 496 55 663 487 454 958 427 604 366 745
374 540 999 1000 392 942 227 968 287 187 906 697 275 13 816 804 714 61 683 998 132 385 937 753 313 942 316 80 868 77 379
468 482 401 947 561 37 248 358 328 603 543 984 275 527 800 781 651 671 650 244 367 922 368 613 989 603 247 687 451 626 148
101 210 808 439 216 875 66 255 767 466 704 355 396 589 402 663 227 514 162 666 410 218 833 13 546 114 788 958 959 791 561
907 702 456 443 774 467 89 584 907 585 416 884 779 663 567 973 24 587 941 20 174 290 961 738 883 377 796 893 103 87 109
EOD

run_test 51 "276 529" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
EOD

run_test 52 "28 28" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 53 "28499 28405" <<EOD
638 67 406 199 814 842 200 357 232 236 815 770 328 937 200 723 421 913 949 690 128 773 834 10 537 217 878 56 387 718 768 370 661 566
986 16 987 1000 656 298 947 71 556 287 643 291 411 504 547 160 987 792 153 221 910 866 233 397 662 597 965 144 970 515 469 445 109 762
952 184 736 421 257 651 743 57 218 548 368 247 806 374 510 228 732 976 218 441 656 120 784 591 338 59 334 803 102 41 818 198 182 650
553 363 424 566 535 502 478 854 649 686 29 416 791 591 635 742 784 494 228 669 106 832 401 146 83 199 317 940 956 177 730 170 65 157
822 147 804 166 441 716 963 803 472 98 562 923 268 743 169 360 258 325 971 514 544 721 962 278 483 337 185 538 898 472 956 859 352 634
770 488 939 618 53 512 706 303 360 304 585 161 931 575 772 596 919 405 200 551 614 101 186 526 684 104 531 426 905 1000 142 704 571 634
974 682 422 641 272 460 808 241 361 659 694 322 406 611 767 303 554 552 660 801 21 670 303 413 935 950 981 281 398 361 162 882 590 297
602 90 175 279 133 740 743 373 740 527 833 362 698 921 659 603 447 591 44 771 614 304 380 9 707 323 479 528 843 1 498 813 733 110
10 677 129 275 419 920 58 648 930 776 581 573 252 61 623 796 914 571 838 820 684 298 711 166 573 811 262 216 531 740 29 20 630 589
911 982 475 172 173 125 713 966 375 604 429 134 72 419 906 48 87 928 975 913 426 713 967 963 703 609 659 843 118 190 748 561 944 664
150 641 321 742 399 714 108 718 923 108 737 440 740 843 311 483 653 102 46 717 163 199 16 512 469 565 466 871 849 185 856 869 190 409
270 265 727 345 529 262 806 708 790 859 227 264 869 817 532 635 538 646 515 228 501 951 626 810 274 834 248 238 870 738 252 868 250 332
573 46 757 308 573 785 912 455 409 157 286 206 696 650 339 214 648 211 354 963 908 319 640 918 72 695 14 568 839 52 608 359 14 538
244 487 879 231 73 731 316 46 543 469 524 68 139 599 899 657 91 42 515 288 424 254 406 840 236 878 771 344 617 357 549 928 192 158
406 853 336 418 138 624 647 863 777 171 394 4 557 415 669 183 962 567 845 726 115 990 81 39 995 195 960 972 430 186 921 597 877 981
194 47 321 674 904 892 641 562 478 235 447 232 322 357 675 434 396 983 84 466 44 417 773 298 423 943 664 676 434 591 251 797 128 576
222 623 862 288 663 953 86 554 513 846 593 763 874 604 297 996 791 938 514 411 938 777 275 24 251 961 228 966 129 887 984 650 105 747
136 53 573 108 320 131 381 490 904 927 705 661 70 61 380 438 801 314 283 717 638 445 349 839 37 703 726 120 426 626 862 943 658 128
469 244 424 683 619 384 31 448 874 348 319 591 892 168 587 691 87 671 368 388 109 691 705 734 72 618 406 261 65 279 66 763 3 943
592 136 15 119 696 900 687 190 572 1 520 447 811 558 534 736 540 191 575 270 19 778 540 690 612 1 979 770 384 596 283 556 588 949
576 452 676 968 976 469 702 919 120 705 214 625 807 848 728 330 739 875 188 733 924 815 596 326 507 695 921 917 807 977 718 965 859 862
982 82 60 572 216 107 569 100 659 836 476 987 194 131 43 54 857 409 368 856 25 762 856 351 462 281 548 786 113 144 987 250 766 945
867 646 270 167 659 82 165 825 157 760 850 520 502 790 875 753 120 309 597 4 838 220 226 710 111 936 560 783 988 515 850 227 222 249
265 397 784 690 751 287 691 201 606 97 501 942 780 758 912 361 24 678 653 763 108 648 420 561 57 724 522 382 837 642 911 624 299 253
526 478 969 430 559 311 313 637 614 130 209 170 156 802 872 628 492 172 574 459 142 618 978 224 634 27 765 309 364 965 186 877 643 528
232 434 392 595 119 343 450 472 34 290 352 887 568 720 511 210 150 740 51 841 111 909 501 746 796 532 546 4 273 650 945 333 527 629
571 438 236 898 53 231 9 671 585 688 872 748 460 46 799 155 815 447 827 803 417 324 934 647 799 588 798 446 199 384 346 20 361 939
150 74 975 253 687 821 832 441 325 814 874 49 73 501 206 119 835 498 506 725 213 248 504 589 100 466 433 563 472 201 342 852 388 521
896 725 180 563 761 7 972 976 999 121 774 750 515 298 241 81 549 849 515 636 727 903 570 387 154 221 388 269 970 125 473 22 662 552
605 481 939 273 738 500 754 237 249 384 816 350 951 135 323 391 652 494 338 752 794 994 156 794 409 540 619 703 6 875 649 752 88 964
693 760 142 277 111 15 883 491 654 187 571 805 271 254 946 579 473 979 684 911 758 612 326 146 864 198 882 51 231 375 736 64 262 988
442 564 250 376 383 324 870 304 340 969 223 605 270 366 758 428 402 670 68 178 206 82 434 996 413 913 133 832 260 279 451 508 543 283
812 383 329 98 597 361 41 455 272 357 924 260 929 517 294 804 974 67 996 84 782 361 130 254 963 470 191 38 45 62 519 716 63 987
554 375 99 304 73 708 137 752 810 77 73 154 985 617 539 457 305 385 512 459 502 452 253 76 135 128 170 4 411 211 839 208 198 942
EOD

run_test 54 "28 49" <<EOD
1 2 3 4 5 6 7
1 2 3 4 5 6 7
1 2 3 4 5 6 7
1 2 3 4 5 6 7
1 2 3 4 5 6 7
1 2 3 4 5 6 7
1 2 3 4 5 6 7
EOD

run_test 55 "28930 29825" <<EOD
963 919 706 671 994 289 947 31 551 53 182 810 485 575 500 588 757 134 204 604 486 103 123 24 169 946 538 134 342 600 238 865 956 43 654
620 752 635 392 224 513 471 901 200 894 326 643 596 505 823 455 706 5 595 457 860 797 682 502 48 751 814 690 951 816 317 854 443 921 880
837 122 742 980 92 15 203 923 130 844 304 943 630 519 146 533 861 362 586 794 824 70 134 345 473 699 782 950 385 578 472 200 675 625 986
333 964 25 503 442 658 874 553 659 744 809 184 171 806 283 456 493 857 128 57 768 989 398 508 393 234 253 539 552 373 104 268 6 534 813
569 836 859 145 136 950 518 475 601 665 515 611 145 102 122 979 344 548 568 218 345 566 518 111 208 406 336 1 287 640 542 179 638 994 715
620 634 713 992 108 251 514 798 843 878 624 108 437 430 394 761 720 438 316 469 3 319 749 937 730 614 517 189 961 124 337 974 152 388 503
346 631 557 460 968 831 769 675 234 585 299 900 571 893 880 822 741 322 526 712 302 886 776 262 495 734 326 838 720 541 650 957 49 928 48
131 164 979 349 638 235 644 515 352 432 714 946 296 82 303 596 653 627 677 201 461 855 295 965 234 506 931 956 693 935 342 852 644 846 750
658 763 974 888 477 658 371 424 830 782 789 30 757 418 946 998 331 373 728 588 276 870 14 115 133 304 689 822 418 91 863 303 451 333 646
834 680 739 200 543 90 432 465 184 446 476 175 538 748 937 12 480 917 258 474 788 749 859 755 173 970 549 7 740 920 487 580 425 773 112
319 592 173 185 499 845 405 831 670 658 130 151 75 481 79 383 386 193 859 858 85 821 984 27 574 541 425 726 265 959 896 750 766 636 619
420 307 733 760 630 384 919 189 98 44 819 475 527 661 537 101 387 567 915 28 498 608 146 611 958 420 680 566 711 762 380 386 440 863 660
77 654 434 229 475 167 632 887 984 756 67 899 66 729 859 510 184 851 609 121 813 162 122 802 211 705 354 479 337 664 433 36 664 2 461
447 954 339 441 861 866 722 163 855 892 522 614 837 853 253 197 536 831 742 847 915 533 632 18 771 814 154 550 320 324 32 235 64 269 412
556 846 410 748 255 91 999 267 911 690 91 517 626 84 468 898 205 923 155 546 915 323 321 671 48 713 172 843 532 861 287 550 569 441 697
352 126 84 487 757 917 266 721 329 680 298 528 467 853 427 828 313 910 724 498 234 525 740 701 543 920 156 736 51 403 541 948 186 387 116
772 121 436 399 629 649 602 993 991 750 185 706 991 106 33 975 641 846 944 464 827 387 383 945 837 761 531 671 926 140 351 343 80 737 655
707 877 511 95 849 633 532 749 951 359 214 166 630 18 429 901 103 242 924 290 386 739 491 562 869 119 931 67 851 400 842 626 254 451 327
98 130 751 95 831 296 638 433 587 624 595 901 653 498 240 248 102 157 448 270 969 387 950 227 731 702 466 898 551 517 588 912 179 692 332
771 352 147 93 995 748 307 905 939 274 219 279 570 612 152 741 470 807 182 359 712 181 525 365 130 830 740 882 70 36 684 722 962 166 469
897 955 64 454 522 663 482 12 953 512 424 896 287 400 777 119 106 998 333 620 591 827 782 964 165 9 425 836 903 591 497 317 404 143 256
786 407 354 661 697 231 170 572 853 706 935 454 483 293 918 579 725 630 546 879 71 173 101 290 514 238 646 109 363 16 108 492 144 145 991
712 753 337 637 390 422 256 929 258 230 555 943 544 986 12 772 688 858 265 186 614 306 64 148 459 585 61 209 838 599 443 310 338 302 206
827 389 993 157 458 815 244 844 60 959 295 103 123 352 244 420 634 880 959 378 406 689 189 179 806 361 47 92 659 788 246 605 242 780 186
384 695 702 808 371 370 463 5 190 165 483 938 858 594 179 809 431 379 925 800 139 200 815 352 97 769 153 185 273 713 690 861 344 166 860
726 932 73 589 8 944 684 1000 14 323 424 189 498 480 979 816 226 317 980 48 185 881 351 711 602 218 278 733 477 475 622 595 693 735 454
877 358 791 918 857 455 200 801 29 674 580 655 706 294 898 464 545 364 118 675 845 582 362 988 791 666 952 523 540 701 829 497 764 26 102
458 436 400 123 594 986 81 323 38 22 563 573 439 580 11 78 231 575 60 610 296 997 803 127 192 503 677 261 328 845 84 892 680 193 441
29 145 241 525 690 765 259 325 966 228 93 514 944 529 624 598 923 704 417 806 462 634 273 932 91 309 820 995 193 939 671 894 246 139 983
933 991 50 370 845 37 673 837 900 100 990 733 732 705 247 162 189 263 387 979 395 872 310 435 381 945 265 132 28 558 199 268 806 547 692
608 873 334 572 770 790 797 374 833 101 577 88 291 947 777 483 632 860 161 588 61 681 616 990 901 773 541 809 342 901 723 928 186 14 639
290 855 691 618 190 599 499 478 334 805 858 975 185 252 75 568 408 646 959 631 928 257 345 672 997 249 988 32 932 378 649 903 278 308 488
629 941 242 971 990 563 204 283 185 44 798 357 558 268 334 315 283 227 383 712 34 510 20 621 942 612 467 546 957 157 956 698 878 764 447
627 167 675 970 69 724 975 161 629 200 893 430 765 599 63 366 676 895 597 454 119 922 622 30 378 96 658 327 28 89 101 479 794 822 707
149 609 258 314 988 60 350 391 422 49 182 703 948 894 791 280 803 282 310 329 706 545 646 592 973 66 649 133 541 99 414 636 944 892 914
EOD

run_test 56 "29 28" <<EOD
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 4 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 3 2 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
EOD

run_test 57 "29 29" <<EOD
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 4 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 3 2 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
EOD

run_test 58 "2941 2598" <<EOD
507 282 139 15
167 425 664 735
720 66 551 372
946 647 976 260
EOD

run_test 59 "30005 29462" <<EOD
758 418 582 609 395 769 531 200 981 196 394 711 433 238 809 299 198 484 493 1 604 963 666 341 923 412 218 851 324 636 547 759 56 980 33 863
221 673 916 560 176 346 665 397 579 356 216 896 733 800 216 152 451 892 310 796 753 241 686 984 552 680 877 346 650 636 655 453 205 946 78 526
569 933 825 259 298 270 763 568 196 323 119 524 420 395 309 165 671 238 111 981 987 932 9 497 469 320 747 944 701 763 691 787 723 691 584 518
67 52 498 483 479 119 788 229 561 354 926 255 327 491 783 967 836 98 539 638 925 329 790 979 523 819 867 433 632 333 801 729 812 792 98 619
741 628 502 869 144 780 936 116 395 492 618 210 980 724 951 625 153 947 594 739 262 519 960 661 252 355 598 229 553 197 444 536 394 164 227 209
596 671 494 145 393 675 584 32 202 657 454 909 383 177 577 866 198 360 358 222 669 842 617 789 183 708 564 198 49 82 817 817 498 743 30 483
453 449 346 588 936 929 460 595 902 689 846 377 621 579 338 34 807 5 540 754 54 705 962 686 112 386 984 120 841 637 412 640 148 94 413 750
14 771 287 740 383 22 887 494 862 188 578 470 744 783 10 493 203 276 429 749 487 660 476 550 945 340 755 265 278 206 230 527 166 589 21 36
718 801 372 33 818 469 825 925 809 514 376 58 628 919 438 872 666 665 263 354 295 738 795 43 267 622 216 656 959 52 305 156 763 974 775 403
905 397 931 19 836 552 741 432 965 698 638 360 769 358 861 502 327 667 742 981 6 329 767 196 253 169 967 757 210 221 295 654 144 36 968 270
735 244 519 744 997 364 79 570 985 857 888 601 191 803 829 97 233 795 397 576 630 735 767 668 586 985 222 744 403 985 217 733 390 592 767 83
149 998 984 642 250 197 212 396 282 366 566 407 392 199 421 349 639 393 640 1000 477 851 158 13 142 336 167 1000 641 155 212 600 36 746 948 236
812 755 326 434 523 372 387 221 419 816 353 204 564 868 95 998 953 768 607 298 841 971 501 915 30 212 756 127 154 967 371 646 251 186 537 884
67 207 477 106 465 938 594 327 983 964 437 773 61 215 648 269 140 651 396 841 255 412 404 312 616 260 67 453 445 707 953 379 331 211 931 746
291 501 833 903 377 174 932 67 776 983 67 940 320 103 506 601 791 697 630 655 803 166 491 206 872 142 882 277 11 58 442 850 284 902 978 640
818 493 464 81 480 337 536 633 193 127 134 343 201 353 589 635 582 277 944 126 11 628 31 236 293 656 57 719 542 217 657 418 125 867 783 298
233 549 176 467 630 858 13 746 9 540 76 659 469 807 269 8 959 853 630 191 462 229 789 824 281 818 92 977 470 716 219 335 570 291 403 34
101 477 497 153 615 286 227 754 581 398 250 735 949 650 460 272 238 593 836 4 760 352 186 812 767 36 276 293 321 742 89 179 405 236 907 482
357 477 576 177 2 36 244 883 569 357 29 821 257 947 97 978 456 400 274 750 291 685 387 579 10 935 433 839 309 72 330 713 743 979 916 761
17 659 2 725 108 304 244 410 8 456 37 375 645 112 723 6 962 158 191 672 91 997 167 68 604 406 574 498 27 316 78 279 31 336 961 797
398 550 642 988 442 977 572 555 898 58 194 198 349 325 751 586 788 245 671 21 493 934 121 703 730 746 383 693 378 759 345 309 151 927 608 413
517 203 230 114 426 613 171 546 212 377 150 703 565 493 491 787 666 941 305 464 429 939 259 696 595 880 177 139 714 886 47 422 718 339 70 585
15 557 596 880 764 575 492 353 597 681 128 886 268 558 644 211 623 144 985 578 945 534 520 546 436 32 833 326 331 728 985 227 423 907 772 110
346 425 701 854 448 907 100 914 752 292 872 156 243 836 800 575 354 493 641 481 37 50 445 733 743 166 23 870 697 901 464 362 787 535 866 198
444 132 130 39 435 607 795 145 161 677 84 495 928 411 874 931 266 292 73 297 980 968 112 283 884 231 218 851 829 510 370 708 971 602 132 223
363 603 46 431 256 301 573 66 82 529 942 286 28 533 96 495 462 570 219 476 21 848 155 205 389 944 317 651 308 377 524 327 280 652 568 664
246 642 41 680 395 46 201 356 289 932 824 296 414 875 247 402 384 656 203 515 448 842 43 313 984 923 758 706 5 616 7 377 966 433 250 820
529 539 82 975 647 799 916 457 120 21 238 433 130 123 943 624 449 53 216 404 600 729 696 473 289 496 352 674 926 447 331 982 626 427 874 846
574 228 869 650 926 586 193 963 685 326 576 882 673 383 928 913 217 846 221 800 843 609 687 152 448 243 532 674 691 256 808 704 250 98 51 222
185 567 479 15 537 733 788 963 920 470 1 543 519 418 766 781 207 74 3 966 542 717 202 684 54 520 273 430 519 873 633 576 333 707 728 650
368 207 264 110 821 724 233 979 243 990 155 273 491 27 497 176 95 85 680 469 366 795 961 18 461 359 445 47 837 425 210 813 691 116 414 1
811 893 145 819 485 224 442 65 366 1000 940 492 377 458 481 249 27 260 285 573 247 246 649 463 279 186 142 818 780 342 583 375 614 497 365 202
941 862 985 142 353 896 653 462 420 954 671 380 944 962 786 431 832 841 755 565 244 683 540 299 82 625 286 24 417 565 879 880 93 279 308 166
276 143 220 351 594 188 44 326 516 763 874 818 557 152 543 773 743 801 958 259 322 686 61 729 611 629 45 855 76 791 287 666 654 621 156 690
621 404 971 57 639 215 784 320 751 468 467 265 23 106 138 293 321 50 844 590 83 492 741 966 143 190 251 725 476 209 165 937 997 854 153 339
830 902 620 108 903 741 978 144 162 780 832 970 653 995 345 604 777 567 608 130 664 6 915 450 965 59 844 543 303 531 269 169 954 800 463 420
EOD

run_test 60 "300 576" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
EOD

run_test 61 "30 30" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 62 "30502 30741" <<EOD
431 737 688 342 514 597 804 363 358 281 72 482 865 561 160 430 247 23 675 825 988 170 144 844 897 435 841 632 512 664 17 854 532 925 174 41 879
266 616 67 203 552 93 684 987 363 679 743 371 840 923 931 125 639 433 261 594 844 445 79 757 173 852 695 265 219 950 940 388 120 551 981 408 609
623 437 78 460 857 535 757 98 261 672 741 87 729 893 493 913 448 36 821 537 310 30 700 399 420 769 413 740 356 251 289 942 523 517 17 997 184
134 987 911 323 660 912 180 954 178 490 58 447 475 673 516 161 872 299 593 737 680 40 89 122 17 743 10 384 799 564 213 876 497 730 314 49 910
214 651 119 521 445 242 279 356 293 881 579 773 782 652 218 425 260 505 95 899 789 306 918 902 796 156 615 278 182 950 746 360 468 251 658 649 475
217 235 798 810 767 725 862 432 612 18 912 995 451 237 225 220 150 122 908 734 217 725 290 628 2 174 343 135 220 306 531 995 570 951 44 270 297
89 23 582 56 471 185 138 704 283 732 713 522 141 318 130 750 915 258 492 946 171 809 594 382 727 213 307 487 918 426 501 194 955 923 62 100 326
678 746 540 152 925 719 443 630 614 79 988 402 245 655 693 552 325 127 281 429 201 330 259 879 651 786 858 231 520 567 218 257 31 424 237 513 953
794 247 90 152 752 113 134 319 86 673 771 808 642 631 796 781 671 126 349 488 662 501 139 862 212 111 48 861 732 372 821 418 181 600 532 880 191
278 450 217 125 560 566 113 88 424 879 936 423 476 360 299 889 26 291 293 109 229 940 642 65 273 588 715 853 353 627 42 100 916 591 393 676 133
363 102 936 26 775 788 232 113 439 256 12 522 530 156 310 239 772 962 338 809 152 853 972 852 261 735 798 838 837 507 885 967 623 756 663 189 358
83 455 153 410 953 834 333 703 331 823 472 733 861 145 629 56 868 981 511 131 84 766 40 991 395 276 933 371 45 899 774 493 121 881 690 508 186
399 199 19 640 150 930 913 326 106 976 362 257 912 756 776 153 59 275 318 415 162 16 677 901 962 659 432 50 979 612 980 456 122 871 469 782 492
491 935 836 128 665 290 301 571 115 134 144 999 341 62 607 372 93 24 384 523 118 678 492 498 864 348 494 996 907 135 42 287 994 661 569 341 482
288 497 727 377 330 848 525 289 51 638 551 374 84 29 847 85 260 375 813 444 339 265 317 796 305 665 980 92 857 6 680 494 267 891 805 528 658
146 788 831 967 209 813 710 944 623 824 106 196 202 734 287 756 897 144 24 180 931 73 666 868 434 433 46 959 57 107 194 224 320 428 115 587 982
477 130 452 608 853 682 841 875 897 655 272 393 738 370 747 782 348 727 74 122 964 534 777 768 752 887 517 631 882 876 775 619 701 774 421 14 573
573 79 391 825 994 537 778 774 567 320 737 447 443 973 701 42 465 19 944 353 685 856 966 166 211 993 21 880 653 692 964 950 733 210 775 648 684
298 971 997 999 994 186 568 780 184 440 904 74 578 236 756 477 662 888 718 114 225 615 1 517 898 121 875 356 788 714 234 198 53 358 168 48 948
354 691 671 399 386 28 553 117 807 76 456 209 474 72 322 58 535 459 683 970 481 102 873 311 212 993 471 206 707 21 220 69 708 530 308 197 47
715 839 587 449 400 92 46 419 148 314 642 912 141 519 900 485 79 467 253 819 361 187 394 558 347 411 786 856 388 501 944 765 125 11 820 620 96
522 82 10 828 893 65 679 829 295 566 503 321 584 630 63 55 379 687 529 446 30 102 989 307 191 31 647 371 878 788 130 699 280 389 557 386 243
992 468 123 715 729 53 846 283 535 805 872 882 710 746 325 292 175 67 421 93 704 637 862 419 309 951 507 436 805 41 195 73 678 812 388 219 407
731 301 49 144 24 656 227 775 490 168 42 805 407 106 323 137 293 540 355 607 704 407 779 546 410 479 495 610 800 204 899 359 107 886 444 766 372
950 681 981 636 645 820 784 466 631 399 936 872 936 385 273 34 612 703 324 523 503 734 546 162 618 975 286 270 684 699 521 662 558 765 344 859 374
972 59 588 995 81 779 80 560 738 864 820 626 325 495 183 120 243 870 216 136 820 18 670 535 514 783 933 878 274 315 172 41 414 660 641 644 737
529 422 956 466 603 880 112 466 644 359 204 338 542 316 896 129 724 555 954 390 54 481 299 847 203 286 424 693 779 212 666 854 540 384 715 448 261
670 218 139 559 69 871 424 729 540 732 999 277 913 691 106 688 255 684 48 124 109 264 317 457 420 688 433 694 351 799 159 602 448 869 55 337 816
832 986 611 875 118 663 555 425 416 867 522 560 167 285 700 668 325 152 407 902 682 139 381 438 731 379 742 574 398 829 44 636 770 873 424 699 437
249 992 602 763 33 4 821 911 134 184 514 459 934 124 718 649 436 134 693 605 174 145 740 922 981 27 587 823 886 791 295 862 2 231 76 160 806
139 650 136 560 527 597 195 228 115 464 706 327 988 334 739 731 94 264 105 253 680 782 6 417 999 26 344 890 653 457 704 48 558 843 297 485 558
45 647 548 545 694 866 563 882 497 899 457 556 131 908 968 972 908 126 358 644 719 562 502 254 306 576 659 761 658 769 145 38 255 174 50 618 557
708 987 916 444 536 502 128 887 335 522 550 737 77 651 718 940 841 839 483 145 295 240 119 208 803 224 728 754 420 301 958 859 351 415 200 139 442
201 184 60 375 368 971 55 109 25 581 119 427 98 414 336 567 473 263 469 869 709 641 312 775 374 467 34 565 691 387 663 451 580 498 641 655 424
770 927 269 65 99 778 644 609 327 323 888 622 292 878 153 732 271 733 560 873 286 1 902 937 490 419 639 919 669 848 600 774 681 144 704 336 200
804 611 863 669 166 48 145 147 943 400 509 510 720 309 766 81 783 138 769 26 332 575 681 140 725 941 479 723 114 941 149 174 817 532 467 123 697
205 121 954 757 791 548 19 130 410 949 540 835 693 899 6 935 310 868 230 930 724 944 225 569 423 33 2 252 336 694 189 842 643 384 578 18 816
EOD

run_test 63 "30560 31576" <<EOD
269 542 27 662 11 316 993 939 888 421 43 143 240 507 664 237 194 974 261 896 385 335 758 546 768 795 717 761 698 193 310 321 989 120 41 327 203 269
714 629 233 630 535 613 960 109 96 187 525 605 450 410 318 123 431 935 785 482 894 216 600 232 242 695 112 722 155 120 467 338 35 926 261 632 663 755
800 146 587 660 699 530 236 93 744 900 4 867 690 107 542 722 375 498 30 1 389 841 501 238 955 976 721 188 571 524 150 686 460 676 135 640 895 235
518 70 996 149 951 212 718 289 431 360 796 313 551 764 603 662 367 960 645 349 705 723 810 49 523 220 751 319 407 14 973 903 827 140 980 961 6 241
890 289 520 667 546 361 393 258 974 386 83 798 309 175 995 547 531 795 260 948 627 731 462 400 882 417 388 893 487 411 784 643 657 127 70 356 829 38
178 450 656 265 247 365 236 610 706 798 908 281 610 186 701 58 614 159 828 121 786 129 974 500 772 563 602 441 141 183 106 640 718 493 618 811 292 362
485 97 165 272 712 590 986 206 801 599 942 600 513 911 528 709 253 49 476 157 493 684 764 795 469 523 693 268 564 118 569 891 766 253 675 732 956 514
418 385 514 567 762 4 500 542 671 195 112 9 240 569 335 136 870 801 334 370 803 190 898 718 643 684 31 51 834 261 237 797 754 739 632 92 643 927
922 760 296 928 853 498 156 555 879 1000 557 631 383 874 399 587 711 228 487 797 925 79 974 450 708 410 959 316 256 501 938 244 493 944 879 574 75 876
337 401 562 88 805 31 495 204 878 363 399 167 29 404 605 847 3 844 787 847 221 443 539 841 300 378 63 314 138 440 995 825 513 836 892 87 235 837
274 943 956 504 533 596 918 89 473 534 639 647 942 36 788 229 655 895 862 722 789 428 969 181 67 439 369 574 655 193 513 519 612 166 570 844 891 717
910 944 923 211 906 530 676 492 499 959 37 284 181 997 225 514 49 847 975 775 438 95 228 344 435 280 21 120 35 776 467 945 338 938 985 919 799 578
523 440 506 575 940 410 538 371 13 517 294 98 117 723 870 117 280 816 717 580 777 626 509 556 458 723 492 93 947 243 12 307 716 472 325 536 269 863
155 818 807 64 268 505 826 937 659 745 75 221 659 170 202 220 801 897 932 950 118 217 918 445 425 770 505 988 383 646 398 335 848 418 661 899 773 714
359 4 731 521 64 748 18 727 585 843 106 497 671 429 604 320 746 938 900 362 640 498 1 839 555 14 347 741 373 242 509 303 447 88 539 928 220 598
153 171 427 698 186 663 882 887 975 970 731 529 673 724 1000 411 75 861 3 892 967 51 402 277 354 344 334 803 50 584 891 676 100 148 785 730 936 942
313 338 957 668 39 377 11 845 570 786 304 37 14 678 926 328 632 103 769 150 345 842 329 80 837 392 80 55 429 525 939 271 476 133 548 666 936 299
13 26 267 510 774 549 499 14 570 213 751 773 517 683 961 786 597 471 10 877 832 647 297 957 416 45 847 34 561 881 131 260 392 334 91 744 884 836
68 781 581 824 822 868 304 657 8 257 310 691 537 77 656 59 467 366 729 311 94 730 702 466 453 690 83 492 381 184 593 218 902 762 404 229 297 8
826 430 654 760 38 591 724 871 345 54 605 333 867 725 16 574 742 339 79 115 371 133 786 813 276 825 664 93 789 776 674 428 763 460 541 299 657 335
693 111 743 583 346 29 887 48 317 868 202 329 20 65 151 182 638 694 645 841 485 213 928 632 83 570 381 177 571 408 185 717 917 408 647 969 373 788
787 757 926 228 508 797 891 460 756 610 278 582 822 848 655 816 851 480 184 112 501 777 649 711 478 910 683 486 412 612 418 182 809 850 907 888 916 257
705 131 741 623 814 772 900 989 586 337 63 101 558 168 785 262 288 10 109 216 750 598 114 406 48 144 192 96 774 973 941 767 901 594 775 54 371 878
964 877 811 490 325 347 423 312 55 251 398 547 562 897 779 701 508 107 18 336 575 670 580 805 216 613 397 296 201 965 393 732 892 411 47 232 406 261
273 768 983 737 90 942 698 227 411 44 988 200 86 669 37 36 303 294 298 6 275 713 950 128 111 90 859 666 656 152 851 547 296 248 834 250 353 839
580 639 107 989 202 353 308 2 879 725 696 856 108 753 935 400 987 561 818 856 627 1000 84 33 571 260 194 441 904 839 835 787 683 465 715 659 899 286
511 598 820 110 212 134 971 801 45 98 613 896 261 274 432 497 213 580 556 75 419 943 159 867 98 40 891 909 173 643 39 276 502 702 51 221 37 517
789 950 62 771 215 96 829 9 579 561 355 187 253 135 104 824 868 568 439 953 13 172 244 62 628 402 60 337 395 560 223 212 461 696 792 606 13 648
728 63 39 89 462 330 555 987 391 905 172 678 834 483 782 84 505 618 706 1 144 813 37 492 614 19 338 144 726 558 344 498 812 220 840 377 915 924
710 915 508 641 12 155 165 718 726 741 431 378 191 174 901 13 505 916 26 547 476 444 992 412 262 833 561 674 867 614 643 406 170 582 909 791 494 503
802 882 328 897 293 598 713 348 368 170 598 799 716 925 351 368 448 266 924 97 380 180 594 491 852 113 98 26 209 609 266 110 520 2 114 144 220 579
152 394 699 915 466 392 77 68 899 718 55 802 134 643 868 397 124 622 288 837 46 181 501 688 140 759 905 488 280 715 811 207 149 870 115 530 399 466
714 203 415 784 214 380 971 408 475 624 243 123 879 492 857 383 534 971 894 11 775 708 487 589 788 184 908 849 653 265 528 338 999 659 909 86 423 262
967 121 718 732 285 282 246 158 837 319 351 767 337 145 637 388 691 7 717 827 997 31 473 122 756 210 97 905 124 220 584 771 961 272 5 773 294 44
424 206 343 631 348 589 499 887 929 383 701 612 969 903 370 596 266 937 649 596 977 75 186 342 34 617 736 580 806 65 141 865 95 648 584 511 484 366
683 885 624 870 281 714 204 513 252 682 402 365 6 68 124 698 67 349 21 2 597 731 853 919 81 865 243 837 517 322 319 859 113 900 254 765 972 108
794 472 138 522 366 54 178 442 59 73 741 397 581 235 491 483 770 952 32 705 789 417 471 368 996 931 363 544 253 106 815 360 726 959 556 549 864 76
366 799 741 640 806 171 96 121 741 85 369 631 131 302 734 267 319 377 2 771 526 436 692 635 189 954 259 382 671 622 680 942 619 694 587 233 964 150
EOD

run_test 64 "32 32" <<EOD
1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
EOD

run_test 65 "325 625" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
EOD

run_test 66 "32726 32663" <<EOD
612 301 272 876 190 279 175 622 976 513 627 459 640 179 548 94 551 931 108 107 451 853 913 715 450 119 406 427 12 438 716 501 304 170 765 701 500 651 246
414 460 568 978 746 756 212 983 501 395 526 144 656 125 858 700 760 388 557 426 72 873 749 611 539 798 126 156 471 414 847 594 901 686 695 647 884 875 167
960 238 137 906 33 487 294 60 376 446 471 6 314 943 225 175 541 712 957 440 949 630 56 513 87 548 932 244 971 431 211 816 886 222 598 188 936 968 716
125 245 738 750 711 1000 409 534 652 676 511 154 936 927 435 219 330 183 625 820 485 555 51 89 946 235 655 121 92 346 37 240 574 997 833 196 211 881 346
513 678 15 281 568 460 278 276 890 451 3 268 6 311 149 231 570 195 650 805 476 346 289 442 306 640 272 581 940 95 240 8 449 837 113 142 471 274 483
629 668 960 765 670 90 79 31 929 426 766 263 2 562 77 871 167 389 573 976 929 188 698 337 796 212 995 819 170 199 7 761 296 712 21 137 516 581 620
353 228 609 344 155 174 832 238 447 372 967 946 753 898 299 555 441 971 624 970 458 95 260 862 730 419 6 967 290 541 941 355 586 770 221 749 320 845 543
163 964 974 549 447 204 253 254 864 998 158 580 166 893 611 162 258 968 748 615 737 169 865 949 906 432 612 361 984 677 551 235 597 429 462 7 485 546 813
659 477 165 143 970 132 962 776 463 975 609 963 781 573 230 806 994 100 26 644 16 592 893 271 187 447 924 984 737 431 605 678 713 156 90 138 572 27 895
818 945 657 150 386 375 714 771 663 367 623 468 908 459 903 797 67 584 895 956 524 209 978 39 32 370 931 251 626 483 92 235 968 205 209 699 360 443 508
896 473 677 262 617 115 964 698 219 810 359 23 555 678 72 372 609 967 618 118 16 445 463 145 180 275 389 501 703 251 204 438 625 76 999 483 847 947 361
925 69 672 713 442 267 461 538 558 897 834 600 733 742 325 493 452 10 532 83 342 726 464 996 968 606 922 398 479 679 589 525 663 606 694 50 344 733 22
879 719 738 832 605 870 652 472 696 300 584 548 474 316 865 19 199 605 677 745 836 346 63 60 879 308 309 937 127 49 276 149 719 989 654 364 605 895 859
126 316 135 226 99 895 132 115 210 798 587 495 445 667 989 187 533 657 679 954 297 562 715 346 647 25 435 829 486 663 502 415 304 747 552 429 702 121 965
165 747 194 100 140 540 554 831 482 731 803 121 707 927 942 563 565 601 790 579 74 460 304 630 548 296 173 191 699 116 560 485 413 692 514 207 104 462 576
806 93 195 953 98 684 542 795 488 363 184 987 828 913 542 891 705 444 564 553 844 368 363 132 367 172 318 709 16 413 736 460 103 26 984 487 880 508 206
947 6 502 686 829 516 129 732 572 872 801 810 763 540 910 732 439 730 63 587 926 366 834 780 75 628 725 884 803 929 56 12 198 238 618 547 343 682 535
617 238 440 746 837 215 604 973 920 194 294 546 757 817 921 281 581 173 723 611 201 791 245 930 644 817 790 613 526 923 364 390 757 196 446 349 487 620 997
566 472 656 805 691 509 384 300 196 277 958 37 375 621 71 334 826 993 511 103 21 425 991 447 998 830 905 790 561 372 572 794 961 176 157 140 546 987 555
422 260 518 595 337 569 886 990 770 686 862 620 357 976 518 977 141 482 209 807 861 605 595 739 824 705 164 76 199 464 932 788 840 439 90 843 504 831 655
879 112 841 135 104 700 752 216 819 444 200 17 659 337 180 694 817 666 780 771 632 405 811 791 307 754 74 781 918 887 675 474 310 827 331 695 21 470 491
39 73 490 346 632 1000 448 274 452 660 746 273 178 724 61 24 475 302 50 829 350 626 972 299 932 769 726 707 832 7 485 673 347 175 741 699 142 60 179
792 859 481 623 121 172 615 498 750 250 804 857 394 971 642 141 414 101 192 414 864 274 741 442 445 175 73 926 3 984 363 882 415 123 259 970 870 3 852
127 318 272 977 458 29 151 92 703 706 34 327 598 951 646 316 519 118 40 179 946 99 689 496 766 887 922 442 271 713 672 272 411 250 66 97 593 297 284
413 294 84 371 220 969 658 765 932 770 808 740 852 830 825 906 28 629 776 211 571 108 710 821 991 35 763 917 349 885 549 723 222 835 627 885 863 729 469
527 109 123 990 672 463 973 820 442 586 344 39 469 817 86 714 306 585 263 381 186 207 742 417 48 222 86 519 18 204 940 44 299 160 250 103 448 118 38
358 18 215 321 331 5 847 81 907 136 121 321 301 600 348 284 321 368 707 943 451 378 454 802 239 646 301 740 309 568 984 266 188 547 905 363 971 886 411
412 201 142 179 384 897 883 640 445 951 877 929 736 742 176 588 981 565 414 83 685 705 108 772 340 153 856 133 755 695 986 313 435 957 295 742 310 199 71
906 356 7 857 789 433 639 249 524 13 959 925 799 558 804 727 708 94 370 840 232 42 750 886 750 966 565 494 779 448 435 279 782 494 509 727 678 849 319
340 701 904 332 121 796 770 187 755 632 231 588 648 940 360 840 864 606 122 107 824 869 145 470 77 579 681 144 305 50 77 49 860 776 31 140 328 710 630
90 980 779 810 863 549 861 787 339 423 655 645 121 557 742 496 471 556 434 256 542 116 626 883 705 555 182 729 873 910 220 513 155 977 32 127 45 59 283
922 217 793 342 722 651 406 957 493 118 281 560 584 894 454 88 975 354 897 105 308 368 133 914 430 203 142 490 145 525 615 451 413 273 513 40 750 774 905
232 300 599 690 611 593 350 636 619 701 889 58 774 149 955 976 554 84 879 913 520 509 917 812 968 503 830 148 311 381 415 338 202 450 665 806 709 678 522
322 81 567 524 789 256 467 842 303 458 298 959 956 872 861 385 723 384 787 722 108 763 202 326 239 287 551 857 324 484 150 267 876 563 557 833 954 986 128
556 501 661 528 690 14 422 459 467 341 65 942 422 922 957 414 559 879 242 286 502 706 611 519 819 309 31 83 394 316 29 432 738 256 232 221 448 236 512
312 817 828 85 517 259 543 728 346 920 149 998 955 712 701 626 851 891 143 710 382 983 340 66 152 312 634 205 166 691 736 967 324 367 930 469 675 621 95
260 277 582 686 164 245 318 75 720 38 631 381 331 305 527 131 329 478 763 934 205 626 339 562 655 185 183 675 588 783 232 952 230 797 883 434 801 298 176
822 834 238 914 168 536 311 405 663 798 236 601 992 912 688 890 634 938 20 32 979 63 644 487 938 806 679 151 535 422 94 331 32 302 941 100 967 713 172
26 345 780 520 877 353 182 240 40 543 907 249 496 781 266 197 760 191 752 976 362 857 160 871 241 704 906 570 691 972 589 923 922 767 995 688 200 543 767
EOD

run_test 67 "32909 33872" <<EOD
135 756 566 640 608 628 173 599 551 766 105 182 910 216 737 810 170 185 910 280 174 448 613 550 69 955 984 328 729 787 579 998 217 425 617 221 796 218 552 243
68 106 355 804 586 790 680 708 186 958 825 503 291 264 594 688 144 17 572 654 645 846 871 765 187 108 965 485 599 517 15 953 633 667 212 68 93 809 964 279
276 277 143 771 962 77 708 954 831 930 77 779 646 899 599 223 236 591 617 479 826 195 109 669 943 873 871 624 52 526 595 335 54 294 379 368 704 100 804 111
400 11 654 670 440 236 307 735 68 989 832 503 193 485 453 82 169 474 829 89 206 84 903 305 335 743 726 353 520 231 520 137 787 506 79 815 541 439 229 707
567 137 557 63 695 93 143 569 841 298 200 230 271 716 906 317 109 350 335 698 511 954 215 838 470 695 716 687 406 639 541 730 245 122 522 70 527 840 611 243
600 157 512 223 32 290 866 72 601 763 707 192 104 532 197 613 922 719 594 1000 377 456 164 203 757 471 986 150 194 836 790 270 739 93 99 354 443 992 806 180
830 645 86 644 933 350 626 714 925 910 148 809 247 612 866 144 994 310 467 562 305 717 878 766 973 438 453 12 434 843 171 931 914 414 171 733 371 520 271 407
845 273 225 285 689 982 23 128 227 955 361 133 526 245 876 113 767 321 672 496 897 614 281 82 739 218 895 833 441 134 774 474 40 60 717 33 492 594 77 991
415 326 786 479 483 39 405 669 539 58 966 50 849 775 510 231 992 143 546 471 88 191 687 93 181 887 93 466 529 844 621 173 244 682 82 572 829 802 600 701
813 227 295 384 168 724 626 265 550 486 41 350 49 606 904 224 640 693 299 596 946 940 140 696 438 794 807 168 694 939 403 191 544 846 659 861 897 304 925 457
262 828 917 44 803 272 125 638 779 858 932 137 503 4 755 874 87 599 946 375 918 458 571 611 84 850 806 203 948 43 327 337 768 842 335 118 23 97 893 166
669 169 390 837 8 266 688 540 91 786 774 298 358 551 539 804 258 306 961 954 466 922 691 736 531 596 370 662 670 638 851 991 707 781 706 750 69 735 604 818
162 267 113 162 270 30 980 217 303 531 861 718 137 939 701 748 478 654 306 413 896 27 871 454 935 783 591 578 845 790 736 523 703 143 793 200 810 529 467 502
616 153 359 140 777 134 855 769 80 959 272 415 430 192 922 135 397 660 227 487 439 403 373 514 796 339 15 995 147 501 938 950 188 804 797 744 669 731 677 802
929 823 498 887 518 321 94 511 221 658 804 150 302 981 64 214 781 846 344 439 119 861 622 580 21 323 228 626 395 179 467 666 983 426 558 616 906 486 996 476
246 504 774 490 698 788 648 208 741 583 963 823 387 239 683 69 202 918 866 196 93 468 117 42 191 138 168 877 423 448 309 295 851 869 194 615 87 133 882 233
675 20 886 813 216 644 279 745 743 490 415 988 621 800 383 778 388 733 299 561 621 772 786 293 275 669 973 518 46 68 982 70 37 633 521 74 583 304 826 548
860 424 134 934 34 322 675 51 487 416 227 355 834 322 613 904 235 593 538 548 671 761 699 675 508 346 951 989 279 309 196 85 907 752 701 198 638 852 260 953
994 923 32 630 842 628 236 716 21 618 839 990 766 279 877 99 725 459 427 689 372 686 772 178 221 143 449 83 621 415 267 383 334 586 554 749 730 70 834 880
110 235 968 662 471 206 319 629 875 603 474 180 426 571 582 309 151 854 410 699 180 153 96 606 352 456 656 181 725 128 370 655 625 547 579 137 719 111 708 15
825 821 209 18 942 87 958 764 4 246 599 876 660 136 701 958 140 363 311 15 551 138 904 748 233 819 555 879 993 446 590 40 147 396 874 359 945 78 665 265
499 893 178 479 529 494 995 490 846 621 997 356 801 693 465 688 917 461 785 124 533 79 772 559 656 560 730 265 262 342 14 63 699 46 517 658 961 426 219 740
824 65 34 372 449 235 239 454 932 187 443 484 293 542 732 420 122 619 823 970 765 731 229 505 608 935 658 755 177 807 728 491 243 46 300 468 46 400 110 422
321 277 334 76 900 531 770 157 314 97 537 342 603 249 975 94 837 529 765 515 577 484 277 125 460 952 241 247 242 264 375 722 510 401 650 489 397 153 606 77
165 501 442 81 271 386 889 995 72 207 632 517 636 595 846 837 1000 209 617 948 290 523 916 51 723 815 832 202 599 487 697 684 924 688 350 76 43 197 855 74
64 247 176 35 633 858 86 915 556 814 490 188 537 658 788 642 586 391 358 456 555 687 396 585 511 948 593 949 246 771 794 803 355 543 884 43 348 881 418 865
729 918 647 785 998 509 147 267 900 709 490 652 839 399 520 378 852 591 525 685 266 138 670 786 21 687 834 995 774 746 295 705 974 494 728 638 40 611 588 2
801 326 49 537 281 142 964 957 24 507 192 757 356 733 599 591 248 862 765 311 675 153 493 155 414 786 679 346 671 883 338 241 3 524 885 940 89 133 506 879
724 878 971 268 554 538 349 241 896 137 390 179 846 278 327 648 834 895 124 495 464 619 286 142 169 951 755 833 849 659 503 115 356 887 588 798 183 225 601 877
437 438 451 535 493 160 395 726 197 237 107 195 10 11 416 105 593 829 100 604 784 517 393 237 635 276 823 960 691 530 466 609 294 247 59 26 169 752 650 10
556 29 637 613 553 309 105 346 471 483 206 354 126 998 93 921 46 215 901 218 337 436 35 668 772 498 901 763 953 391 937 841 180 91 48 755 881 780 684 326
171 478 489 209 324 112 483 296 154 138 980 954 851 432 673 121 995 969 841 55 408 343 393 81 546 365 174 36 951 339 41 266 531 575 48 859 947 827 345 660
15 605 609 815 411 983 991 749 418 927 761 912 939 629 918 828 85 408 663 959 938 448 346 816 98 714 424 277 385 815 174 168 625 182 41 804 734 579 670 563
375 426 619 24 579 129 327 903 657 220 774 539 165 386 723 568 260 794 717 698 560 714 364 603 754 593 288 758 589 115 95 507 739 100 585 512 830 322 237 970
387 521 620 165 41 635 4 240 460 473 545 940 862 973 3 661 63 16 271 986 842 570 315 542 125 268 801 65 801 211 738 938 557 748 312 40 94 199 562 119
590 49 299 116 571 156 645 766 97 924 450 815 52 252 129 818 207 79 40 774 835 939 439 249 736 608 383 115 662 964 568 864 454 153 397 793 271 199 972 970
623 35 968 878 762 924 886 306 620 495 833 16 159 789 284 651 610 50 381 964 773 530 105 134 357 586 362 900 855 336 547 8 107 71 151 800 972 562 488 812
722 78 496 167 131 552 705 666 869 747 183 222 819 9 198 94 930 835 521 176 563 987 452 284 948 826 910 89 638 485 680 49 562 569 242 695 35 938 3 805
882 696 32 108 153 325 190 99 873 58 871 137 41 313 250 735 627 212 220 306 643 616 28 385 68 135 660 250 767 504 59 992 833 717 294 867 956 344 131 624
636 812 217 580 614 543 9 249 320 508 69 823 719 697 163 266 669 647 41 19 666 940 332 370 999 879 305 325 19 384 780 283 82 596 670 832 400 448 771 525
EOD

run_test 68 "3 3" <<EOD
1 1 1
1 1 1
1 1 1
EOD

run_test 69 "34 34" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 70 "3 4" <<EOD
1 2
1 2
EOD

run_test 71 "351 676" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
EOD

run_test 72 "36 36" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 73 "36 64" <<EOD
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
EOD

run_test 74 "37 35" <<EOD
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2 1 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 4 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 4 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 5 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
EOD

run_test 75 "378 729" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
EOD

run_test 76 "38 38" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 77 "39 40" <<EOD
2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 1 2
2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 1 2
2 2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 1 2
2 2 2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 1 2
2 2 2 2 2 2 2 2 2 2 2 2 1 2 1 2 2 2 1 2
2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 1 2 2 1 2
2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 1 2 1 2
2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 1 2
2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 1 2
2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 1 2
2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 1 2
2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 1 2
2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 1 2
2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 1 2
2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 1 2
2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 1 2
2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 1 2
2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 1 2
2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 1 2
2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 1 2
EOD

run_test 78 "400 39" <<EOD
20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
EOD

run_test 79 "40 40" <<EOD
5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 6
EOD

run_test 80 "406 784" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
EOD

run_test 81 "41 41" <<EOD
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
EOD

run_test 82 "42 41" <<EOD
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
EOD

run_test 83 "42 42" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 84 "4311 4515" <<EOD
135 388 316 931 343
885 791 44 849 282
299 402 835 327 168
851 755 990 782 778
724 910 272 4 109
EOD

run_test 85 "435 841" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
EOD

run_test 86 "44 44" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 87 "4467 4680" <<EOD
90 239 24 186 58 24 145 292 52 159 62 251 143 168 146 265 147 76 225 186
132 8 287 143 109 85 292 268 180 88 86 150 220 144 98 106 212 21 280 168
70 153 107 76 60 168 251 29 228 82 65 35 131 93 294 82 252 180 78 273
31 176 112 264 73 211 32 298 70 41 53 127 95 58 116 278 200 211 83 240
133 263 41 98 24 52 20 127 149 17 154 32 242 8 137 194 41 143 3 148
137 252 258 187 30 237 239 74 277 17 182 41 98 138 140 67 136 15 241 22
192 204 150 54 187 21 184 87 221 222 238 58 209 235 103 180 6 153 69 86
113 246 150 133 134 113 234 105 168 70 58 27 201 281 256 232 103 204 1 9
54 152 152 55 79 124 132 162 35 259 62 282 245 155 209 246 55 18 219 74
86 79 219 151 164 211 156 227 279 171 78 101 153 61 33 260 94 95 55 11
281 73 71 208 9 76 81 47 73 10 178 86 285 227 222 274 232 1 191 167
267 204 183 164 182 260 130 185 123 248 153 259 263 209 93 14 9 12 143 88
131 110 154 269 292 291 116 225 139 59 29 93 203 187 43 77 189 207 26 48
246 196 223 124 157 218 123 76 134 208 265 220 158 103 37 158 50 214 171 190
145 204 47 65 220 60 57 76 166 16 125 102 285 96 142 234 186 31 112 74
169 40 92 230 93 108 235 101 151 184 27 275 36 136 203 42 150 159 204 97
162 48 209 119 84 164 235 62 261 102 272 20 102 98 22 105 113 116 272 113
125 256 224 282 289 149 66 150 193 100 85 28 126 16 211 122 131 272 146 228
172 173 139 50 212 7 174 237 114 98 229 34 187 91 271 206 123 227 129 235
98 85 169 161 18 244 193 86 186 199 274 140 269 44 240 252 117 175 70 282
EOD

run_test 88 "4 4" <<EOD
2 1
1 2
EOD

run_test 89 "45 81" <<EOD
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
EOD

run_test 90 "4 5" <<EOD
1 1 2
1 1 1
1 2 1
EOD

run_test 91 "46 46" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 92 "4650 4799" <<EOD
683 671 420 311 800 936
815 816 123 142 19 831
715 588 622 491 95 166
885 126 262 900 393 898
701 618 956 865 199 537
226 116 313 822 661 214
EOD

run_test 93 "465 900" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
EOD

run_test 94 "4801 4940" <<EOD
12 190 29 266 140 33 140 280 99 32 170 89 258 247 184 161 150 248 249 232
129 96 93 169 263 241 77 13 182 231 153 298 157 43 113 131 278 148 72 15
257 155 244 266 242 136 82 109 102 274 171 154 262 76 63 215 98 159 3 198
256 128 98 168 178 171 232 215 135 53 182 2 177 235 275 274 151 127 227 128
160 267 210 208 60 299 36 82 280 198 34 120 145 173 59 130 58 77 88 71
204 167 274 50 93 170 277 28 100 89 64 270 231 175 39 288 217 190 109 179
136 150 234 236 19 62 156 4 177 146 216 75 39 157 223 292 292 161 116 189
23 9 281 191 135 64 188 270 134 70 212 168 267 209 235 54 232 39 32 31
14 273 151 254 172 288 232 75 252 46 296 57 74 219 157 127 169 43 102 254
173 186 169 107 233 49 107 129 222 169 61 254 129 86 176 49 158 27 20 146
131 114 18 89 73 155 94 49 53 108 185 189 236 77 157 128 104 44 21 123
182 103 153 83 285 43 227 288 44 108 269 143 24 256 124 60 168 81 35 78
255 59 77 114 284 171 18 53 228 48 244 115 6 196 264 29 260 235 103 31
228 106 5 244 139 42 166 280 253 97 259 24 9 243 168 123 26 39 99 114
26 175 60 295 164 155 137 127 291 96 99 233 278 5 150 150 54 133 275 242
6 37 100 132 89 221 106 63 29 141 3 222 136 288 5 53 46 10 81 284
205 39 288 158 297 27 45 5 93 19 69 193 64 156 109 288 76 228 207 242
49 74 99 151 93 177 97 289 299 97 104 45 52 291 37 266 48 242 134 62
176 102 269 10 73 109 158 279 180 16 277 117 103 138 235 131 239 138 65 120
229 56 5 296 214 25 141 72 120 142 240 133 95 145 66 247 104 90 78 284
EOD

run_test 95 "4848 4743" <<EOD
76 217 31 281 82 78 56 83 231 47 90 9 290 150 267 8 45 11 32 96
103 282 255 160 181 218 54 36 258 229 103 270 155 59 1 247 166 141 167 143
104 252 86 209 133 277 145 129 45 227 167 26 73 118 281 93 262 171 101 164
24 21 124 3 244 120 154 232 150 20 141 203 143 189 292 151 197 47 28 203
73 225 290 31 62 77 197 38 77 207 285 295 41 3 119 83 128 83 264 13
124 213 278 26 87 264 182 184 125 131 196 216 144 197 92 99 30 94 241 167
222 117 155 243 35 145 163 140 70 209 23 114 82 15 80 159 246 265 244 98
195 14 212 246 11 70 152 143 211 20 54 35 142 98 90 8 58 36 290 242
102 43 114 216 108 83 134 129 118 232 152 64 150 143 272 209 205 208 232 264
292 20 229 51 156 288 272 283 224 73 102 211 275 2 296 153 200 295 138 228
235 23 26 278 168 289 185 298 126 181 103 149 103 26 249 82 113 64 61 120
111 150 205 46 131 240 89 148 147 120 10 209 71 5 30 269 293 250 182 166
104 273 158 43 270 252 108 249 53 214 40 136 235 19 118 85 118 280 148 227
201 37 151 6 172 193 79 99 296 279 89 162 181 195 16 137 292 162 76 179
133 140 95 233 80 173 274 52 187 244 152 14 103 255 265 67 123 152 171 77
173 9 252 74 125 177 255 40 3 280 93 256 205 268 95 61 242 217 225 299
219 27 212 53 128 76 60 226 229 249 15 140 290 298 6 124 188 22 108 203
218 234 50 206 151 195 109 134 161 204 125 205 227 172 158 146 97 200 246 50
118 29 110 54 266 253 266 206 263 270 173 221 109 23 82 284 277 7 201 232
267 225 66 26 125 109 212 119 141 159 27 288 76 59 85 189 124 296 240 197
EOD

run_test 96 "48 48" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 97 "4902 4924" <<EOD
40 30 42 222 74 265 93 209 115 274 139 177 7 274 12 15 103 36 236 91
294 97 35 272 167 126 18 262 292 48 8 296 85 93 245 4 4 240 276 153
52 8 163 270 242 224 142 72 99 240 199 26 224 198 96 242 295 70 56 247
247 130 216 68 266 142 93 214 30 8 12 163 59 84 40 287 233 65 30 242
283 245 164 53 148 282 73 186 296 3 9 233 184 30 205 221 92 96 5 101
132 228 43 91 228 37 266 140 159 109 10 230 40 114 264 3 266 164 219 283
70 207 218 28 299 78 279 30 179 118 196 138 61 229 110 55 203 73 124 112
16 232 28 187 292 78 194 70 65 203 255 227 176 21 32 225 11 15 92 151
58 237 261 41 213 171 170 111 4 209 99 194 40 108 267 137 179 31 35 221
184 209 264 275 163 268 261 40 198 185 45 188 280 273 54 79 270 286 273 121
208 83 66 156 104 62 188 68 53 194 46 279 280 170 266 148 272 285 178 245
210 130 213 118 165 210 213 66 54 189 166 193 57 213 14 101 143 109 172 101
80 193 287 4 140 65 208 111 8 206 107 285 109 29 211 78 170 247 290 193
148 123 15 164 28 153 222 67 156 165 6 163 114 77 165 17 143 209 278 100
3 102 58 148 82 181 84 29 2 236 231 195 118 278 252 257 179 123 276 287
143 141 254 142 200 243 171 32 164 195 235 260 269 191 190 46 65 166 82 146
69 194 65 220 234 110 45 135 125 208 138 20 233 291 256 162 148 216 247 138
10 53 164 107 2 270 226 227 88 206 193 13 41 130 218 249 76 35 207 91
199 36 207 256 58 215 28 277 234 29 198 148 219 244 136 16 30 258 219 264
183 118 48 218 15 125 279 103 73 8 86 113 9 157 239 273 146 208 50 86
EOD

run_test 98 "496 961" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
EOD

run_test 99 "4972 5122" <<EOD
34 205 192 268 163 245 156 104 286 82 125 153 99 277 97 223 160 152 250 76
143 249 148 109 261 298 162 138 107 59 15 175 284 216 191 218 74 249 193 290
70 133 208 179 103 249 223 214 98 212 291 20 202 9 224 84 57 84 8 164
83 18 297 228 67 250 169 182 87 179 150 210 259 260 6 11 42 268 6 12
76 247 40 195 67 295 273 275 292 107 161 289 242 29 207 52 136 280 112 153
81 42 128 219 62 81 61 241 4 214 43 89 78 295 89 136 277 103 161 72
277 193 190 279 18 161 268 230 54 254 174 61 156 153 231 35 120 121 134 285
235 32 272 78 65 73 211 246 240 72 74 34 119 41 176 187 151 149 202 200
112 130 188 49 40 281 232 225 65 55 16 157 268 175 137 245 220 112 214 245
249 23 290 281 180 141 241 116 277 44 183 271 218 233 174 105 144 223 39 83
141 286 182 186 56 216 65 244 203 230 267 39 234 257 250 90 140 206 169 198
41 116 248 22 171 45 239 36 2 32 102 296 74 132 105 263 141 105 226 264
77 297 212 47 76 145 38 261 282 84 265 237 55 140 43 25 39 160 15 12
277 30 242 171 129 270 264 102 152 286 249 36 280 205 122 43 204 201 245 27
8 277 53 218 67 164 242 234 90 81 225 280 90 214 286 48 55 41 218 106
180 235 109 295 135 230 257 150 18 299 120 137 215 288 5 1 276 25 105 264
29 30 13 72 62 268 245 66 218 75 288 163 282 139 146 72 168 57 84 137
207 92 217 91 260 88 65 102 210 286 71 31 236 254 78 150 223 38 234 166
284 191 231 243 11 257 155 76 142 232 132 219 241 267 57 236 113 222 112 273
204 144 155 232 4 258 227 29 62 295 149 131 122 217 152 17 161 273 80 4
EOD

run_test 100 "5032 4821" <<EOD
80 80 276 169 248 191 126 69 51 10 241 200 97 227 120 117 3 195 64 209
298 143 77 130 42 5 132 22 116 5 37 99 108 210 229 170 48 103 73 32
133 96 136 98 53 48 99 291 169 193 208 90 276 281 210 237 4 146 127 244
60 104 253 47 273 142 92 187 297 249 70 200 123 32 76 202 7 278 78 294
205 141 152 223 96 246 123 127 1 292 167 202 276 128 272 30 142 90 124 210
255 212 293 219 123 9 267 244 205 8 231 25 68 132 40 218 252 31 250 28
20 265 187 6 83 168 223 294 60 47 60 216 155 168 40 293 147 233 100 88
279 179 221 292 62 142 135 144 89 54 78 112 139 97 190 290 25 288 137 255
85 272 184 158 247 15 169 199 93 46 72 19 231 163 48 141 44 194 244 240
34 80 205 7 269 248 78 59 277 50 268 158 96 144 4 7 294 64 45 48
273 235 51 43 281 59 181 276 49 50 246 131 45 196 222 5 68 178 188 299
237 111 222 44 78 214 222 87 160 42 146 280 150 196 267 98 30 162 25 211
67 101 11 227 103 138 114 200 222 298 239 117 175 45 111 162 14 8 265 68
136 95 117 7 204 265 281 148 228 124 275 205 153 276 233 136 101 294 240 240
101 23 165 161 103 30 106 105 86 106 85 23 197 257 76 272 284 4 24 138
156 265 271 98 24 35 263 198 112 274 62 19 67 26 267 113 229 255 204 174
160 177 62 123 40 253 8 195 201 260 151 97 271 103 84 135 51 68 138 69
66 208 292 112 44 67 255 171 290 262 43 29 100 149 277 279 203 148 58 71
27 69 296 152 123 264 48 264 242 132 63 162 118 135 109 252 184 250 80 273
297 137 205 238 217 123 296 122 125 104 231 202 10 67 42 297 211 141 288 79
EOD

run_test 101 "50 50" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 102 "52 52" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 103 "528 1024" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
EOD

run_test 104 "53 35" <<EOD
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 3 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1
2 1 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 4 1 3 1 1 8 2 2 1 1 1 1 1 2 1 1 1
1 1 1 1 4 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 5 1 1 1 1 1 1 2 5 1 1 1 1 2 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
EOD

run_test 105 "54 54" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 106 "55 100" <<EOD
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
EOD

run_test 107 "561 1089" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
EOD

run_test 108 "56 56" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 109 "5747 5362" <<EOD
371 734 49 347 485 586 713
186 150 20 41 402 161 288
629 744 388 878 847 783 279
523 610 182 980 951 618 586
916 904 519 893 928 408 120
362 117 538 641 677 187 207
749 681 578 554 704 911 908
EOD

run_test 110 "58 58" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 111 "595 1156" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
EOD

run_test 112 "60 60" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 113 "62 62" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 114 "6272 6585" <<EOD
483 728 435 976 878 936 849 124
868 368 535 969 127 271 247 502
148 475 753 169 267 627 850 238
171 597 73 775 930 605 426 247
707 679 433 176 84 918 50 473
271 239 250 171 107 709 60 937
503 179 431 80 952 743 641 857
878 198 805 282 864 75 194 263
EOD

run_test 115 "630 1225" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
EOD

run_test 116 "63 51" <<EOD
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 5 5
1 1 1 1 1 1 1 5 1 1
1 1 1 1 1 1 5 1 1 1
1 1 1 1 1 5 1 2 1 1
1 3 1 1 5 1 2 1 1 1
6 1 1 5 1 1 7 1 1 1
1 7 5 1 6 6 1 7 1 1
1 1 1 1 1 1 1 1 7 1
1 1 1 1 1 1 1 1 1 7
EOD

run_test 117 "64 64" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 118 "66 121" <<EOD
1 2 3 4 5 6 7 8 9 10 11
1 2 3 4 5 6 7 8 9 10 11
1 2 3 4 5 6 7 8 9 10 11
1 2 3 4 5 6 7 8 9 10 11
1 2 3 4 5 6 7 8 9 10 11
1 2 3 4 5 6 7 8 9 10 11
1 2 3 4 5 6 7 8 9 10 11
1 2 3 4 5 6 7 8 9 10 11
1 2 3 4 5 6 7 8 9 10 11
1 2 3 4 5 6 7 8 9 10 11
1 2 3 4 5 6 7 8 9 10 11
EOD

run_test 119 "666 1296" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
EOD

run_test 120 "66 66" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 121 "6 6" <<EOD
2 2 2
2 2 2
2 2 2
EOD

run_test 122 "68 68" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 123 "6 9" <<EOD
1 2 3
1 2 3
1 2 3
EOD

run_test 124 "703 1369" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
EOD

run_test 125 "7049 7541" <<EOD
942 289 262 449 838 71 419 231 425
281 899 29 377 680 131 462 537 136
272 751 175 347 295 964 38 577 299
887 113 769 610 196 46 988 230 818
447 612 100 432 761 201 655 672 845
613 481 199 67 344 745 728 803 443
89 596 994 299 411 262 773 533 118
656 671 703 984 389 451 313 16 925
37 841 991 975 692 624 120 426 96
EOD

run_test 126 "70 70" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 127 "72 72" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 128 "741 1444" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
EOD

run_test 129 "74 74" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 130 "76 76" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 131 "780 1521" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
EOD

run_test 132 "78 144" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12
1 2 3 4 5 6 7 8 9 10 11 12
1 2 3 4 5 6 7 8 9 10 11 12
1 2 3 4 5 6 7 8 9 10 11 12
1 2 3 4 5 6 7 8 9 10 11 12
1 2 3 4 5 6 7 8 9 10 11 12
1 2 3 4 5 6 7 8 9 10 11 12
1 2 3 4 5 6 7 8 9 10 11 12
1 2 3 4 5 6 7 8 9 10 11 12
1 2 3 4 5 6 7 8 9 10 11 12
1 2 3 4 5 6 7 8 9 10 11 12
1 2 3 4 5 6 7 8 9 10 11 12
EOD

run_test 133 "78 78" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 134 "7961 8458" <<EOD
100 820 770 25 882 393 603 900 634 825
148 202 839 660 229 83 999 1 143 630
92 749 755 328 820 692 963 453 114 904
371 179 985 166 673 713 349 632 789 310
382 490 817 489 868 724 199 181 762 892
694 623 978 797 5 352 66 443 205 191
431 150 786 731 454 970 217 673 988 516
735 367 213 833 249 602 933 266 460 97
494 783 692 223 211 748 202 189 162 322
648 907 428 598 880 232 705 86 35 899
EOD

run_test 135 "80 80" <<EOD
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
EOD

run_test 136 "820 1600" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
EOD

run_test 137 "8 8" <<EOD
2 2 2 2
2 2 2 2
2 2 2 2
2 2 2 2
EOD

run_test 138 "9083 8952" <<EOD
507 526 193 246 158 327 411 145 549 403 419
800 983 108 698 648 459 563 520 707 768 28
512 667 869 829 940 615 954 17 898 847 232
561 590 968 590 446 65 884 338 58 641 760
903 849 924 320 900 232 774 142 567 329 132
480 15 527 378 329 388 796 191 533 506 573
569 422 519 731 59 13 498 637 369 710 388
753 765 21 905 620 715 723 243 756 281 903
430 111 954 64 68 737 497 542 868 109 255
330 280 502 802 170 173 761 644 930 960 422
92 262 763 358 424 768 82 469 290 750 293
EOD

run_test 139 "91 169" <<EOD
1 2 3 4 5 6 7 8 9 10 11 12 13
1 2 3 4 5 6 7 8 9 10 11 12 13
1 2 3 4 5 6 7 8 9 10 11 12 13
1 2 3 4 5 6 7 8 9 10 11 12 13
1 2 3 4 5 6 7 8 9 10 11 12 13
1 2 3 4 5 6 7 8 9 10 11 12 13
1 2 3 4 5 6 7 8 9 10 11 12 13
1 2 3 4 5 6 7 8 9 10 11 12 13
1 2 3 4 5 6 7 8 9 10 11 12 13
1 2 3 4 5 6 7 8 9 10 11 12 13
1 2 3 4 5 6 7 8 9 10 11 12 13
1 2 3 4 5 6 7 8 9 10 11 12 13
1 2 3 4 5 6 7 8 9 10 11 12 13
EOD

run_test 140 "9611 10204" <<EOD
666 993 408 777 996 946 762 140 828 843 280 499
435 741 404 819 545 550 482 112 351 943 8 20
692 301 710 313 730 460 399 819 505 37 614 510
394 394 178 816 883 791 133 580 812 764 328 618
21 949 537 919 808 639 943 724 985 389 85 695
236 450 410 368 444 461 994 399 127 894 426 152
373 667 230 560 811 429 208 929 974 93 292 782
923 481 12 867 95 891 526 5 309 483 580 433
382 766 136 351 770 929 491 128 524 386 546 141
409 383 914 557 181 157 721 144 158 629 445 963
450 128 304 237 369 421 844 890 88 797 179 45
293 857 159 45 602 165 258 538 936 871 458 713
EOD

run_test 141 "2000000001 2147483647" <<EOD
1 2000000000
1 147483647
EOD

echo "$pass/$num passed"
