Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Correct

37Size
This is the leading solution.
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test
Code Input and Output
1
Pass
 
%%
tic
v=[1 ];
vexp=[1 ];
vout=Sort_CH(v);
assert(isequal(vout,vexp))
v =
     1
2
Pass
 
%%
v=[2 1 ];
vexp=[2 1 ];
vout=Sort_CH(v);
assert(isequal(vout,vexp))
v =
     2     1
3
Pass
 
%%
v=[1 2 3 ];
vexp=[1 2 3 ];
vout=Sort_CH(v);
assert(isequal(vout,vexp))
v =
     1     2     3
4
Pass
 
%%
v=[1 2 3 4 5 ];
vexp=[1 4 3 2 5 ];
vout=Sort_CH(v);
assert(isequal(vout,vexp))
v =
     1     4     3     2     5
5
Pass
 
%%
v=[5 2 3 4 1 ];
vexp=[1 4 3 2 5 ];
vout=Sort_CH(v);
assert(isequal(vout,vexp))
v =
     1     4     3     2     5
6
Pass
 
%%
v=[994 994 -981 -975 -971 980 -971 976 -969 -969 968 968 958 -963 -957 948 -955 932 926 -935 924 -931 -923 -917 922 -917 -909 -899 916 914 -899 -877 -871 -871 -867 -847 912 -829 912 -825 -819 -817 910 -811 -805 -803 -801 904 -791 -783 -745 -731 902 -725 -725 -715 900 896 -707 896 -705 -705 -693 -691 882 -687 -685 -683 -671 -663 882 -663 880 880 -651 -651 -637 876 -637 -623 -613 -605 -601 -577 -577 862 -571 -565 856 848 -559 -559 -555 -553 844 -551 840 828 -547 -539 -527 812 -525 806 802 -505 -503 -497 -497 -495 798 -493 -491 -483 -481 798 770 770 -481 770 762 758 -477 -469 -463 -457 756 -455 -451 -441 -439 -431 -429 752 -427 -413 -409 742 -403 726 -391 722 -389 -385 718 -379 -365 -363 -359 712 702 -355 -351 682 -347 682 674 672 -343 672 -325 664 -319 -319 -315 -309 -297 -287 -285 -279 662 658 -277 658 656 650 -275 644 -259 -259 -259 630 -255 -251 -245 -231 -231 -225 -221 -219 -215 628 616 -213 612 -209 -209 598 -207 -203 -193 594 -191 -165 594 574 -163 -137 -129 -129 -119 -119 -119 -113 -111 572 564 560 -101 -99 -93 -91 546 -91 546 -91 542 -67 534 -63 528 -57 -55 -55 -49 -39 -37 522 -35 -31 520 -29 -25 -21 -17 -15 -11 -11 514 510 500 -9 494 -5 15 17 490 23 490 484 33 476 33 47 464 49 59 63 77 462 462 77 460 458 77 77 81 444 444 95 442 97 99 105 105 107 111 113 117 434 424 420 119 133 416 408 394 380 376 135 143 143 376 374 147 368 175 342 338 338 336 185 187 195 195 336 197 197 334 201 326 203 316 312 312 308 308 300 211 286 219 219 237 239 247 249 251 253 259 265 273 284 277 262 258 283 285 287 289 297 248 242 303 305 319 327 335 351 357 385 385 238 232 220 397 399 401 210 403 407 210 210 409 204 411 200 415 425 425 200 429 198 429 198 196 192 190 186 433 435 441 451 463 473 473 182 483 182 495 176 170 154 507 507 150 148 509 529 533 148 130 128 124 112 539 96 551 555 70 561 70 565 577 581 581 585 599 70 609 58 56 611 44 613 44 621 625 625 36 627 28 26 2 627 637 647 651 0 685 689 689 689 0 693 693 693 0 -10 -14 -40 -42 -44 697 -56 705 707 715 -56 -64 715 719 -66 -66 721 729 729 731 741 741 763 763 -74 767 775 811 815 819 827 833 -78 845 845 -80 -82 847 847 847 851 867 -84 869 869 869 871 -86 873 -98 -98 -104 875 875 879 887 911 935 -118 935 -120 949 951 965 973 975 979 -128 -132 -138 -140 -150 -154 -154 -164 -172 -174 -188 -196 -198 -200 -204 -208 -214 -216 -224 -228 -238 -242 -242 -250 -260 -260 -280 -286 -294 -296 -298 -302 -304 -308 -324 -330 -336 -336 -340 -342 -342 -344 -352 -352 -360 -360 -364 -364 -366 -368 -370 -378 -384 -384 -384 -392 -392 -396 -402 -402 -406 -410 -410 -416 -420 -420 -420 -432 -436 -440 -442 -458 -462 -470 -478 -482 -494 -500 -502 -504 -514 -520 -524 -530 -532 -534 -546 -548 -550 -550 -552 -558 -560 -566 -572 -572 -594 -598 -600 -602 -616 -626 -632 -638 -640 -650 -652 -664 -666 -676 -676 -684 -694 -700 -704 -710 -714 -720 -728 -728 -732 -738 -750 -758 -758 -776 -778 -782 -792 -794 -798 -798 -808 -810 -812 -814 -814 -818 -826 -836 -846 -856 -858 -858 -858 -860 -866 -866 -886 -892 -896 -900 -902 -906 -910 -910 -910 -924 -926 -926 -934 -938 -940 -942 -944 -946 -952 -952 -966 -966 -968 -968 -976 ];
vexp=[994 994 -981 -975 -971 980 -971 976 -969 -969 968 968 958 -963 -957 948 -955 932 926 -935 924 -931 -923 -917 922 -917 -909 -899 916 914 -899 -877 -871 -871 -867 -847 912 -829 912 -825 -819 -817 910 -811 -805 -803 -801 904 -791 -783 -745 -731 902 -725 -725 -715 900 896 -707 896 -705 -705 -693 -691 882 -687 -685 -683 -671 -663 882 -663 880 880 -651 -651 -637 876 -637 -623 -613 -605 -601 -577 -577 862 -571 -565 856 848 -559 -559 -555 -553 844 -551 840 828 -547 -539 -527 812 -525 806 802 -505 -503 -497 -497 -495 798 -493 -491 -483 -481 798 770 770 -481 770 762 758 -477 -469 -463 -457 756 -455 -451 -441 -439 -431 -429 752 -427 -413 -409 742 -403 726 -391 722 -389 -385 718 -379 -365 -363 -359 712 702 -355 -351 682 -347 682 674 672 -343 672 -325 664 -319 -319 -315 -309 -297 -287 -285 -279 662 658 -277 658 656 650 -275 644 -259 -259 -259 630 -255 -251 -245 -231 -231 -225 -221 -219 -215 628 616 -213 612 -209 -209 598 -207 -203 -193 594 -191 -165 594 574 -163 -137 -129 -129 -119 -119 -119 -113 -111 572 564 560 -101 -99 -93 -91 546 -91 546 -91 542 -67 534 -63 528 -57 -55 -55 -49 -39 -37 522 -35 -31 520 -29 -25 -21 -17 -15 -11 -11 514 510 500 -9 494 -5 15 17 490 23 490 484 33 476 33 47 464 49 59 63 77 462 462 77 460 458 77 77 81 444 444 95 442 97 99 105 105 107 111 113 117 434 424 420 119 133 416 408 394 380 376 135 143 143 376 374 147 368 175 342 338 338 336 185 187 195 195 336 197 197 334 201 326 203 316 312 312 308 308 300 211 286 219 219 237 239 247 249 251 253 259 265 273 284 277 262 258 283 285 287 289 297 248 242 303 305 319 327 335 351 357 385 385 238 232 220 397 399 401 210 403 407 210 210 409 204 411 200 415 425 425 200 429 198 429 198 196 192 190 186 433 435 441 451 463 473 473 182 483 182 495 176 170 154 507 507 150 148 509 529 533 148 130 128 124 112 539 96 551 555 70 561 70 565 577 581 581 585 599 70 609 58 56 611 44 613 44 621 625 625 36 627 28 26 2 627 637 647 651 0 685 689 689 689 0 693 693 693 0 -10 -14 -40 -42 -44 697 -56 705 707 715 -56 -64 715 719 -66 -66 721 729 729 731 741 741 763 763 -74 767 775 811 815 819 827 833 -78 845 845 -80 -82 847 847 847 851 867 -84 869 869 869 871 -86 873 -98 -98 -104 875 875 879 887 911 935 -118 935 -120 949 951 965 973 975 979 -128 -132 -138 -140 -150 -154 -154 -164 -172 -174 -188 -196 -198 -200 -204 -208 -214 -216 -224 -228 -238 -242 -242 -250 -260 -260 -280 -286 -294 -296 -298 -302 -304 -308 -324 -330 -336 -336 -340 -342 -342 -344 -352 -352 -360 -360 -364 -364 -366 -368 -370 -378 -384 -384 -384 -392 -392 -396 -402 -402 -406 -410 -410 -416 -420 -420 -420 -432 -436 -440 -442 -458 -462 -470 -478 -482 -494 -500 -502 -504 -514 -520 -524 -530 -532 -534 -546 -548 -550 -550 -552 -558 -560 -566 -572 -572 -594 -598 -600 -602 -616 -626 -632 -638 -640 -650 -652 -664 -666 -676 -676 -684 -694 -700 -704 -710 -714 -720 -728 -728 -732 -738 -750 -758 -758 -776 -778 -782 -792 -794 -798 -798 -808 -810 -812 -814 -814 -818 -826 -836 -846 -856 -858 -858 -858 -860 -866 -866 -886 -892 -896 -900 -902 -906 -910 -910 -910 -924 -926 -926 -934 -938 -940 -942 -944 -946 -952 -952 -966 -966 -968 -968 -976 ];
vout=Sort_CH(v);
assert(isequal(vout,vexp))
v =
  Columns 1 through 16
   994   994  -981  -975  -971   980  -971   976  -969  -969   968   968   958  -963  -957   948
  Columns 17 through 32
  -955   932   926  -935   924  -931  -923  -917   922  -917  -909  -899   916   914  -899  -877
  Columns 33 through 48
  -871  -871  -867  -847   912  -829   912  -825  -819  -817   910  -811  -805  -803  -801   904
  Columns 49 through 64
  -791  -783  -745  -731   902  -725  -725  -715   900   896  -707   896  -705  -705  -693  -691
  Columns 65 through 80
   882  -687  -685  -683  -671  -663   882  -663   880   880  -651  -651  -637   876  -637  -623
  Columns 81 through 96
  -613  -605  -601  -577  -577   862  -571  -565   856   848  -559  -559  -555  -553   844  -551
  Columns 97 through 112
   840   828  -547  -539  -527   812  -525   806   802  -505  -503  -497  -497  -495   798  -493
  Columns 113 through 128
  -491  -483  -481   798   770   770  -481   770   762   758  -477  -469  -463  -457   756  -455
  Columns 129 through 144
  -451  -441  -439  -431  -429   752  -427  -413  -409   742  -403   726  -391   722  -389  -385
  Columns 145 through 160
   718  -379  -365  -363  -359   712   702  -355  -351   682  -347   682   674   672  -343   672
  Columns 161 through 176
  -325   664  -319  -319  -315  -309  -297  -287  -285  -279   662   658  -277   658   656   650
  Columns 177 through 192
  -275   644  -259  -259  -259   630  -255  -251  -245  -231  -231  -225  -221  -219  -215   628
  Columns 193 through 208
   616  -213   612  -209  -209   598  -207  -203  -193   594  -191  -165   594   574  -163  -137
  Columns 209 through 224
  -129  -129  -119  -119  -119  -113  -111   572   564   560  -101   -99   -93   -91   546   -91
  Columns 225 through 240
   546   -91   542   -67   534   -63   528   -57   -55   -55   -49   -39   -37   522   -35   -31
  Columns 241 through 256
   520   -29   -25   -21   -17   -15   -11   -11   514   510   500    -9   494    -5    15    17
  Columns 257 through 272
   490    23   490   484    33   476    33    47   464    49    59    63    77   462   462    77
  Columns 273 through 288
   460   458    77    77    81   444   444    95   442    97    99   105   105   107   111   113
  Columns 289 through 304
   117   434   424   420   119   133   416   408   394   380   376   135   143   143   376   374
  Columns 305 through 320
   147   368   175   342   338   338   336   185   187   195   195   336   197   197   334   201
  Columns 321 through 336
   326   203   316   312   312   308   308   300   211   286   219   219   237   239   247   249
  Columns 337 through 352
   251   253   259   265   273   284   277   262   258   283   285   287   289   297   248   242
  Columns 353 through 368
   303   305   319   327   335   351   357   385   385   238   232   220   397   399   401   210
  Columns 369 through 384
   403   407   210   210   409   204   411   200   415   425   425   200   429   198   429   198
  Columns 385 through 400
   196   192   190   186   433   435   441   451   463   473   473   182   483   182   495   176
  Columns 401 through 416
   170   154   507   507   150   148   509   529   533   148   130   128   124   112   539    96
  Columns 417 through 432
   551   555    70   561    70   565   577   581   581   585   599    70   609    58    56   611
  Columns 433 through 448
    44   613    44   621   625   625    36   627    28    26     2   627   637   647   651     0
  Columns 449 through 464
   685   689   689   689     0   693   693   693     0   -10   -14   -40   -42   -44   697   -56
  Columns 465 through 480
   705   707   715   -56   -64   715   719   -66   -66   721   729   729   731   741   741   763
  Columns 481 through 496
   763   -74   767   775   811   815   819   827   833   -78   845   845   -80   -82   847   847
  Columns 497 through 512
   847   851   867   -84   869   869   869   871   -86   873   -98   -98  -104   875   875   879
  Columns 513 through 528
   887   911   935  -118   935  -120   949   951   965   973   975   979  -128  -132  -138  -140
  Columns 529 through 544
  -150  -154  -154  -164  -172  -174  -188  -196  -198  -200  -204  -208  -214  -216  -224  -228
  Columns 545 through 560
  -238  -242  -242  -250  -260  -260  -280  -286  -294  -296  -298  -302  -304  -308  -324  -330
  Columns 561 through 576
  -336  -336  -340  -342  -342  -344  -352  -352  -360  -360  -364  -364  -366  -368  -370  -378
  Columns 577 through 592
  -384  -384  -384  -392  -392  -396  -402  -402  -406  -410  -410  -416  -420  -420  -420  -432
  Columns 593 through 608
  -436  -440  -442  -458  -462  -470  -478  -482  -494  -500  -502  -504  -514  -520  -524  -530
  Columns 609 through 624
  -532  -534  -546  -548  -550  -550  -552  -558  -560  -566  -572  -572  -594  -598  -600  -602
  Columns 625 through 640
  -616  -626  -632  -638  -640  -650  -652  -664  -666  -676  -676  -684  -694  -700  -704  -710
  Columns 641 through 656
  -714  -720  -728  -728  -732  -738  -750  -758  -758  -776  -778  -782  -792  -794  -798  -798
  Columns 657 through 672
  -808  -810  -812  -814  -814  -818  -826  -836  -846  -856  -858  -858  -858  -860  -866  -866
  Columns 673 through 688
  -886  -892  -896  -900  -902  -906  -910  -910  -910  -924  -926  -926  -934  -938  -940  -942
  Columns 689 through 697
  -944  -946  -952  -952  -966  -966  -968  -968  -976
7
Pass
 
%%
v=[-979 990 -975 -973 -971 -955 990 -953 -943 -937 -925 -921 986 -917 -913 -911 -909 984 -905 -903 -901 -897 -897 -889 -877 -875 980 968 -875 -871 -861 966 -861 -859 -855 948 942 -823 -821 -811 -805 -805 -797 -795 -793 -793 -793 938 -791 936 -781 -779 936 924 -775 -775 -767 924 920 -757 -755 914 -755 -751 -751 -749 906 -749 906 -745 -745 902 -741 902 -737 898 -735 -729 -727 894 882 868 -723 -709 862 858 858 -705 842 842 838 -693 -681 -679 838 -665 -651 -641 -629 -627 836 -627 828 -623 -623 824 -617 -585 -575 -571 -563 816 -561 -561 -559 -559 -549 808 -539 -539 -535 796 -533 -533 -527 792 -525 788 -525 -521 -517 788 -517 -511 -511 -493 756 -491 756 752 -485 -477 736 -465 -455 -453 716 -451 -441 -429 714 712 712 -427 -407 710 -399 -393 -393 -391 -385 -381 710 -379 702 700 698 -371 -371 -371 -359 -349 684 -341 672 -339 -337 -331 -319 652 636 -315 636 -315 -303 630 630 630 -301 -301 -297 -297 630 -297 -295 -291 -287 -281 624 -267 -267 624 -255 624 -247 616 -247 608 -245 -243 -241 -237 -237 -233 -231 -225 -221 -205 -201 604 -193 602 -185 602 600 -175 -167 -167 598 594 594 -163 -143 -143 588 584 -139 582 578 -133 -121 -117 -103 -95 -91 -89 -65 -65 -55 574 -49 572 -45 572 -39 572 -39 -35 -35 570 -31 -23 -19 560 -7 560 548 7 542 7 9 532 11 11 31 33 37 532 55 532 522 71 77 520 506 504 500 85 91 91 496 494 91 490 93 93 95 448 105 448 440 107 109 111 117 436 125 416 125 404 129 133 384 137 139 141 143 378 378 143 374 364 362 360 147 147 151 352 157 352 338 159 169 181 336 187 203 332 205 330 207 207 219 223 326 318 229 308 231 231 298 294 239 292 239 243 253 292 257 259 261 273 286 284 275 281 287 295 295 297 297 299 307 307 311 313 313 282 278 276 272 264 327 250 329 333 248 343 246 343 242 349 351 353 357 359 363 377 379 381 385 242 385 385 240 389 226 226 401 226 403 405 417 419 226 429 429 429 431 222 461 463 216 477 481 483 483 214 495 204 198 188 497 507 507 184 184 517 519 531 182 533 182 535 539 539 545 567 573 587 180 589 595 174 154 595 595 144 597 144 609 623 144 631 637 637 657 142 659 132 663 130 665 665 669 679 689 126 693 124 693 106 697 701 100 707 100 709 715 715 98 721 723 733 88 737 72 66 52 52 50 40 737 749 749 34 755 759 767 34 769 32 771 26 26 26 773 26 779 14 783 8 0 787 791 0 791 793 0 793 0 815 817 819 819 -10 819 819 819 821 821 823 827 -14 827 831 845 -38 859 861 -42 865 873 877 881 891 893 909 -44 -50 911 913 915 921 923 935 945 945 951 -50 -52 -54 953 -64 -66 -68 -80 959 961 -82 -84 -92 967 975 -98 -98 -106 -110 -110 -112 -122 -126 -140 -140 -144 -148 -154 -154 -154 -154 -162 -162 -168 -172 -182 -182 -204 -204 -208 -220 -220 -228 -232 -240 -248 -252 -254 -256 -256 -264 -266 -276 -280 -286 -286 -286 -294 -294 -294 -296 -300 -300 -300 -306 -310 -312 -314 -314 -320 -346 -346 -362 -362 -366 -368 -368 -370 -378 -380 -380 -384 -392 -392 -410 -410 -412 -424 -430 -430 -434 -434 -434 -436 -436 -438 -438 -442 -444 -444 -448 -462 -468 -480 -488 -494 -506 -512 -512 -518 -530 -530 -536 -536 -536 -546 -546 -548 -550 -554 -556 -560 -560 -578 -580 -590 -590 -596 -596 -598 -598 -610 -612 -616 -616 -618 -626 -630 -634 -636 -638 -640 -642 -644 -644 -644 -648 -652 -654 -664 -674 -674 -686 -698 -700 -702 -708 -714 -714 -716 -718 -722 -726 -728 -728 -740 -742 -744 -750 -752 -756 -762 -766 -766 -768 -770 -770 -770 -778 -778 -780 -782 -786 -786 -792 -792 -798 -806 -810 -812 -820 -828 -844 -858 -858 -858 -860 -872 -874 -880 -882 -882 -888 -888 -890 -896 -902 -910 -912 -924 -924 -936 -938 -956 -956 -968 -980 -980 -980 -982 -988 -990 -994 -996 -998 ];
vexp=[-979 990 -975 -973 -971 -955 990 -953 -943 -937 -925 -921 986 -917 -913 -911 -909 984 -905 -903 -901 -897 -897 -889 -877 -875 980 968 -875 -871 -861 966 -861 -859 -855 948 942 -823 -821 -811 -805 -805 -797 -795 -793 -793 -793 938 -791 936 -781 -779 936 924 -775 -775 -767 924 920 -757 -755 914 -755 -751 -751 -749 906 -749 906 -745 -745 902 -741 902 -737 898 -735 -729 -727 894 882 868 -723 -709 862 858 858 -705 842 842 838 -693 -681 -679 838 -665 -651 -641 -629 -627 836 -627 828 -623 -623 824 -617 -585 -575 -571 -563 816 -561 -561 -559 -559 -549 808 -539 -539 -535 796 -533 -533 -527 792 -525 788 -525 -521 -517 788 -517 -511 -511 -493 756 -491 756 752 -485 -477 736 -465 -455 -453 716 -451 -441 -429 714 712 712 -427 -407 710 -399 -393 -393 -391 -385 -381 710 -379 702 700 698 -371 -371 -371 -359 -349 684 -341 672 -339 -337 -331 -319 652 636 -315 636 -315 -303 630 630 630 -301 -301 -297 -297 630 -297 -295 -291 -287 -281 624 -267 -267 624 -255 624 -247 616 -247 608 -245 -243 -241 -237 -237 -233 -231 -225 -221 -205 -201 604 -193 602 -185 602 600 -175 -167 -167 598 594 594 -163 -143 -143 588 584 -139 582 578 -133 -121 -117 -103 -95 -91 -89 -65 -65 -55 574 -49 572 -45 572 -39 572 -39 -35 -35 570 -31 -23 -19 560 -7 560 548 7 542 7 9 532 11 11 31 33 37 532 55 532 522 71 77 520 506 504 500 85 91 91 496 494 91 490 93 93 95 448 105 448 440 107 109 111 117 436 125 416 125 404 129 133 384 137 139 141 143 378 378 143 374 364 362 360 147 147 151 352 157 352 338 159 169 181 336 187 203 332 205 330 207 207 219 223 326 318 229 308 231 231 298 294 239 292 239 243 253 292 257 259 261 273 286 284 275 281 287 295 295 297 297 299 307 307 311 313 313 282 278 276 272 264 327 250 329 333 248 343 246 343 242 349 351 353 357 359 363 377 379 381 385 242 385 385 240 389 226 226 401 226 403 405 417 419 226 429 429 429 431 222 461 463 216 477 481 483 483 214 495 204 198 188 497 507 507 184 184 517 519 531 182 533 182 535 539 539 545 567 573 587 180 589 595 174 154 595 595 144 597 144 609 623 144 631 637 637 657 142 659 132 663 130 665 665 669 679 689 126 693 124 693 106 697 701 100 707 100 709 715 715 98 721 723 733 88 737 72 66 52 52 50 40 737 749 749 34 755 759 767 34 769 32 771 26 26 26 773 26 779 14 783 8 0 787 791 0 791 793 0 793 0 815 817 819 819 -10 819 819 819 821 821 823 827 -14 827 831 845 -38 859 861 -42 865 873 877 881 891 893 909 -44 -50 911 913 915 921 923 935 945 945 951 -50 -52 -54 953 -64 -66 -68 -80 959 961 -82 -84 -92 967 975 -98 -98 -106 -110 -110 -112 -122 -126 -140 -140 -144 -148 -154 -154 -154 -154 -162 -162 -168 -172 -182 -182 -204 -204 -208 -220 -220 -228 -232 -240 -248 -252 -254 -256 -256 -264 -266 -276 -280 -286 -286 -286 -294 -294 -294 -296 -300 -300 -300 -306 -310 -312 -314 -314 -320 -346 -346 -362 -362 -366 -368 -368 -370 -378 -380 -380 -384 -392 -392 -410 -410 -412 -424 -430 -430 -434 -434 -434 -436 -436 -438 -438 -442 -444 -444 -448 -462 -468 -480 -488 -494 -506 -512 -512 -518 -530 -530 -536 -536 -536 -546 -546 -548 -550 -554 -556 -560 -560 -578 -580 -590 -590 -596 -596 -598 -598 -610 -612 -616 -616 -618 -626 -630 -634 -636 -638 -640 -642 -644 -644 -644 -648 -652 -654 -664 -674 -674 -686 -698 -700 -702 -708 -714 -714 -716 -718 -722 -726 -728 -728 -740 -742 -744 -750 -752 -756 -762 -766 -766 -768 -770 -770 -770 -778 -778 -780 -782 -786 -786 -792 -792 -798 -806 -810 -812 -820 -828 -844 -858 -858 -858 -860 -872 -874 -880 -882 -882 -888 -888 -890 -896 -902 -910 -912 -924 -924 -936 -938 -956 -956 -968 -980 -980 -980 -982 -988 -990 -994 -996 -998 ];
vout=Sort_CH(v);
assert(isequal(vout,vexp))
v =
  Columns 1 through 16
  -979   990  -975  -973  -971  -955   990  -953  -943  -937  -925  -921   986  -917  -913  -911
  Columns 17 through 32
  -909   984  -905  -903  -901  -897  -897  -889  -877  -875   980   968  -875  -871  -861   966
  Columns 33 through 48
  -861  -859  -855   948   942  -823  -821  -811  -805  -805  -797  -795  -793  -793  -793   938
  Columns 49 through 64
  -791   936  -781  -779   936   924  -775  -775  -767   924   920  -757  -755   914  -755  -751
  Columns 65 through 80
  -751  -749   906  -749   906  -745  -745   902  -741   902  -737   898  -735  -729  -727   894
  Columns 81 through 96
   882   868  -723  -709   862   858   858  -705   842   842   838  -693  -681  -679   838  -665
  Columns 97 through 112
  -651  -641  -629  -627   836  -627   828  -623  -623   824  -617  -585  -575  -571  -563   816
  Columns 113 through 128
  -561  -561  -559  -559  -549   808  -539  -539  -535   796  -533  -533  -527   792  -525   788
  Columns 129 through 144
  -525  -521  -517   788  -517  -511  -511  -493   756  -491   756   752  -485  -477   736  -465
  Columns 145 through 160
  -455  -453   716  -451  -441  -429   714   712   712  -427  -407   710  -399  -393  -393  -391
  Columns 161 through 176
  -385  -381   710  -379   702   700   698  -371  -371  -371  -359  -349   684  -341   672  -339
  Columns 177 through 192
  -337  -331  -319   652   636  -315   636  -315  -303   630   630   630  -301  -301  -297  -297
  Columns 193 through 208
   630  -297  -295  -291  -287  -281   624  -267  -267   624  -255   624  -247   616  -247   608
  Columns 209 through 224
  -245  -243  -241  -237  -237  -233  -231  -225  -221  -205  -201   604  -193   602  -185   602
  Columns 225 through 240
   600  -175  -167  -167   598   594   594  -163  -143  -143   588   584  -139   582   578  -133
  Columns 241 through 256
  -121  -117  -103   -95   -91   -89   -65   -65   -55   574   -49   572   -45   572   -39   572
  Columns 257 through 272
   -39   -35   -35   570   -31   -23   -19   560    -7   560   548     7   542     7     9   532
  Columns 273 through 288
    11    11    31    33    37   532    55   532   522    71    77   520   506   504   500    85
  Columns 289 through 304
    91    91   496   494    91   490    93    93    95   448   105   448   440   107   109   111
  Columns 305 through 320
   117   436   125   416   125   404   129   133   384   137   139   141   143   378   378   143
  Columns 321 through 336
   374   364   362   360   147   147   151   352   157   352   338   159   169   181   336   187
  Columns 337 through 352
   203   332   205   330   207   207   219   223   326   318   229   308   231   231   298   294
  Columns 353 through 368
   239   292   239   243   253   292   257   259   261   273   286   284   275   281   287   295
  Columns 369 through 384
   295   297   297   299   307   307   311   313   313   282   278   276   272   264   327   250
  Columns 385 through 400
   329   333   248   343   246   343   242   349   351   353   357   359   363   377   379   381
  Columns 401 through 416
   385   242   385   385   240   389   226   226   401   226   403   405   417   419   226   429
  Columns 417 through 432
   429   429   431   222   461   463   216   477   481   483   483   214   495   204   198   188
  Columns 433 through 448
   497   507   507   184   184   517   519   531   182   533   182   535   539   539   545   567
  Columns 449 through 464
   573   587   180   589   595   174   154   595   595   144   597   144   609   623   144   631
  Columns 465 through 480
   637   637   657   142   659   132   663   130   665   665   669   679   689   126   693   124
  Columns 481 through 496
   693   106   697   701   100   707   100   709   715   715    98   721   723   733    88   737
  Columns 497 through 512
    72    66    52    52    50    40   737   749   749    34   755   759   767    34   769    32
  Columns 513 through 528
   771    26    26    26   773    26   779    14   783     8     0   787   791     0   791   793
  Columns 529 through 544
     0   793     0   815   817   819   819   -10   819   819   819   821   821   823   827   -14
  Columns 545 through 560
   827   831   845   -38   859   861   -42   865   873   877   881   891   893   909   -44   -50
  Columns 561 through 576
   911   913   915   921   923   935   945   945   951   -50   -52   -54   953   -64   -66   -68
  Columns 577 through 592
   -80   959   961   -82   -84   -92   967   975   -98   -98  -106  -110  -110  -112  -122  -126
  Columns 593 through 608
  -140  -140  -144  -148  -154  -154  -154  -154  -162  -162  -168  -172  -182  -182  -204  -204
  Columns 609 through 624
  -208  -220  -220  -228  -232  -240  -248  -252  -254  -256  -256  -264  -266  -276  -280  -286
  Columns 625 through 640
  -286  -286  -294  -294  -294  -296  -300  -300  -300  -306  -310  -312  -314  -314  -320  -346
  Columns 641 through 656
  -346  -362  -362  -366  -368  -368  -370  -378  -380  -380  -384  -392  -392  -410  -410  -412
  Columns 657 through 672
  -424  -430  -430  -434  -434  -434  -436  -436  -438  -438  -442  -444  -444  -448  -462  -468
  Columns 673 through 688
  -480  -488  -494  -506  -512  -512  -518  -530  -530  -536  -536  -536  -546  -546  -548  -550
  Columns 689 through 704
  -554  -556  -560  -560  -578  -580  -590  -590  -596  -596  -598  -598  -610  -612  -616  -616
  Columns 705 through 720
  -618  -626  -630  -634  -636  -638  -640  -642  -644  -644  -644  -648  -652  -654  -664  -674
  Columns 721 through 736
  -674  -686  -698  -700  -702  -708  -714  -714  -716  -718  -722  -726  -728  -728  -740  -742
  Columns 737 through 752
  -744  -750  -752  -756  -762  -766  -766  -768  -770  -770  -770  -778  -778  -780  -782  -786
  Columns 753 through 768
  -786  -792  -792  -798  -806  -810  -812  -820  -828  -844  -858  -858  -858  -860  -872  -874
  Columns 769 through 784
  -880  -882  -882  -888  -888  -890  -896  -902  -910  -912  -924  -924  -936  -938  -956  -956
  Columns 785 through 794
  -968  -980  -980  -980  -982  -988  -990  -994  -996  -998
8
Pass
 
%%
v=[-999 968 -991 -983 -977 -975 -973 952 -945 -935 -931 -919 -915 -905 -903 -885 -861 -847 940 -847 -841 938 -825 -821 -811 -809 936 924 902 -791 -779 -771 -767 884 884 880 -757 -735 -735 -717 -717 -715 -715 878 876 -699 -689 -665 -655 -655 -651 -581 -577 -567 -559 -555 -549 -547 -539 858 840 -515 -513 -507 -505 832 804 -477 -473 -467 -457 -443 802 -441 796 -407 -403 -389 792 -385 780 774 -383 -377 -325 -303 770 770 754 -281 742 -257 724 -251 -249 -237 -233 -227 -217 -211 -203 -195 712 704 -179 -177 -147 -119 -99 -77 -57 -49 700 682 670 -49 -39 -35 646 -31 640 -27 624 -5 15 23 31 620 33 588 580 35 53 578 65 560 65 67 71 75 77 79 546 522 506 91 95 103 504 109 117 119 121 478 125 143 145 155 462 163 165 167 175 458 456 454 452 181 189 195 215 229 231 231 257 448 257 448 265 273 432 283 420 325 341 408 343 365 365 397 399 399 411 415 423 423 429 386 435 382 380 437 443 364 364 455 467 364 354 479 330 495 505 505 306 537 539 278 561 563 567 567 573 595 619 258 623 625 647 665 693 699 713 719 721 258 733 737 749 757 819 252 839 238 853 855 224 863 867 871 182 883 893 897 182 182 903 176 150 903 913 136 919 931 933 128 965 967 118 975 993 108 102 98 88 60 42 30 18 14 12 -2 -10 -22 -22 -44 -48 -52 -52 -60 -70 -82 -88 -88 -110 -112 -116 -124 -130 -130 -132 -156 -174 -184 -204 -206 -210 -232 -234 -242 -252 -254 -264 -316 -330 -332 -338 -342 -348 -352 -354 -360 -364 -370 -372 -376 -380 -408 -428 -452 -462 -462 -462 -482 -486 -496 -506 -510 -516 -524 -526 -528 -532 -542 -572 -592 -604 -606 -624 -636 -642 -662 -670 -686 -686 -706 -728 -728 -736 -776 -788 -792 -792 -798 -804 -840 -902 -904 -910 -918 -952 -962 -962 -968 -978 -990 -994 -998 ];
vexp=[-999 968 -991 -983 -977 -975 -973 952 -945 -935 -931 -919 -915 -905 -903 -885 -861 -847 940 -847 -841 938 -825 -821 -811 -809 936 924 902 -791 -779 -771 -767 884 884 880 -757 -735 -735 -717 -717 -715 -715 878 876 -699 -689 -665 -655 -655 -651 -581 -577 -567 -559 -555 -549 -547 -539 858 840 -515 -513 -507 -505 832 804 -477 -473 -467 -457 -443 802 -441 796 -407 -403 -389 792 -385 780 774 -383 -377 -325 -303 770 770 754 -281 742 -257 724 -251 -249 -237 -233 -227 -217 -211 -203 -195 712 704 -179 -177 -147 -119 -99 -77 -57 -49 700 682 670 -49 -39 -35 646 -31 640 -27 624 -5 15 23 31 620 33 588 580 35 53 578 65 560 65 67 71 75 77 79 546 522 506 91 95 103 504 109 117 119 121 478 125 143 145 155 462 163 165 167 175 458 456 454 452 181 189 195 215 229 231 231 257 448 257 448 265 273 432 283 420 325 341 408 343 365 365 397 399 399 411 415 423 423 429 386 435 382 380 437 443 364 364 455 467 364 354 479 330 495 505 505 306 537 539 278 561 563 567 567 573 595 619 258 623 625 647 665 693 699 713 719 721 258 733 737 749 757 819 252 839 238 853 855 224 863 867 871 182 883 893 897 182 182 903 176 150 903 913 136 919 931 933 128 965 967 118 975 993 108 102 98 88 60 42 30 18 14 12 -2 -10 -22 -22 -44 -48 -52 -52 -60 -70 -82 -88 -88 -110 -112 -116 -124 -130 -130 -132 -156 -174 -184 -204 -206 -210 -232 -234 -242 -252 -254 -264 -316 -330 -332 -338 -342 -348 -352 -354 -360 -364 -370 -372 -376 -380 -408 -428 -452 -462 -462 -462 -482 -486 -496 -506 -510 -516 -524 -526 -528 -532 -542 -572 -592 -604 -606 -624 -636 -642 -662 -670 -686 -686 -706 -728 -728 -736 -776 -788 -792 -792 -798 -804 -840 -902 -904 -910 -918 -952 -962 -962 -968 -978 -990 -994 -998 ];
vout=Sort_CH(v);
assert(isequal(vout,vexp))
v =
  Columns 1 through 16
  -999   968  -991  -983  -977  -975  -973   952  -945  -935  -931  -919  -915  -905  -903  -885
  Columns 17 through 32
  -861  -847   940  -847  -841   938  -825  -821  -811  -809   936   924   902  -791  -779  -771
  Columns 33 through 48
  -767   884   884   880  -757  -735  -735  -717  -717  -715  -715   878   876  -699  -689  -665
  Columns 49 through 64
  -655  -655  -651  -581  -577  -567  -559  -555  -549  -547  -539   858   840  -515  -513  -507
  Columns 65 through 80
  -505   832   804  -477  -473  -467  -457  -443   802  -441   796  -407  -403  -389   792  -385
  Columns 81 through 96
   780   774  -383  -377  -325  -303   770   770   754  -281   742  -257   724  -251  -249  -237
  Columns 97 through 112
  -233  -227  -217  -211  -203  -195   712   704  -179  -177  -147  -119   -99   -77   -57   -49
  Columns 113 through 128
   700   682   670   -49   -39   -35   646   -31   640   -27   624    -5    15    23    31   620
  Columns 129 through 144
    33   588   580    35    53   578    65   560    65    67    71    75    77    79   546   522
  Columns 145 through 160
   506    91    95   103   504   109   117   119   121   478   125   143   145   155   462   163
  Columns 161 through 176
   165   167   175   458   456   454   452   181   189   195   215   229   231   231   257   448
  Columns 177 through 192
   257   448   265   273   432   283   420   325   341   408   343   365   365   397   399   399
  Columns 193 through 208
   411   415   423   423   429   386   435   382   380   437   443   364   364   455   467   364
  Columns 209 through 224
   354   479   330   495   505   505   306   537   539   278   561   563   567   567   573   595
  Columns 225 through 240
   619   258   623   625   647   665   693   699   713   719   721   258   733   737   749   757
  Columns 241 through 256
   819   252   839   238   853   855   224   863   867   871   182   883   893   897   182   182
  Columns 257 through 272
   903   176   150   903   913   136   919   931   933   128   965   967   118   975   993   108
  Columns 273 through 288
   102    98    88    60    42    30    18    14    12    -2   -10   -22   -22   -44   -48   -52
  Columns 289 through 304
   -52   -60   -70   -82   -88   -88  -110  -112  -116  -124  -130  -130  -132  -156  -174  -184
  Columns 305 through 320
  -204  -206  -210  -232  -234  -242  -252  -254  -264  -316  -330  -332  -338  -342  -348  -352
  Columns 321 through 336
  -354  -360  -364  -370  -372  -376  -380  -408  -428  -452  -462  -462  -462  -482  -486  -496
  Columns 337 through 352
  -506  -510  -516  -524  -526  -528  -532  -542  -572  -592  -604  -606  -624  -636  -642  -662
  Columns 353 through 368
  -670  -686  -686  -706  -728  -728  -736  -776  -788  -792  -792  -798  -804  -840  -902  -904
  Columns 369 through 378
  -910  -918  -952  -962  -962  -968  -978  -990  -994  -998
9
Pass
 
%%
v=[984 -997 -985 980 -983 978 -971 968 966 958 -969 952 -969 950 -963 944 -957 -955 936 -949 936 -949 -941 926 -935 -931 -917 -913 -913 -907 -903 -891 -861 924 922 918 916 912 902 894 -849 -847 -845 884 -837 878 878 -833 -827 876 862 836 834 832 822 822 -817 -809 -805 -803 -797 -791 804 786 784 -785 -773 778 -773 -763 -749 -749 -745 776 -741 -737 770 -737 -737 -735 -735 -731 -725 770 -723 -707 768 768 -707 762 760 -693 -683 -669 -667 750 746 740 -661 -649 -639 -637 -635 -609 730 728 -603 -595 728 -593 -589 -589 -585 -581 -581 728 -577 -567 -561 -547 724 -541 -539 -539 -539 -527 -525 -523 716 -517 -517 -515 714 702 702 676 -513 -487 -475 -471 672 -469 660 -467 652 -467 -467 634 632 -461 -457 -455 624 -455 -453 -451 624 618 -441 618 614 604 -439 -427 -413 -413 -409 -399 600 -399 594 -397 -387 594 -383 586 582 -377 580 580 -365 -359 -343 -337 578 -329 -327 -325 -323 -323 -315 -313 -301 -293 576 -275 576 572 572 572 -275 572 564 -273 -269 -259 560 -249 -249 560 -233 -233 552 -231 550 -219 -215 -215 -203 -197 -191 -189 -171 -169 -169 -163 -161 -159 -157 546 -155 -153 546 -151 -147 540 -147 -143 -143 -133 -131 -109 -109 -105 518 -105 -99 -99 -99 -99 -75 508 -73 -67 -63 -59 -55 508 -51 -39 -35 -35 506 504 -33 500 -21 -7 496 -7 3 7 11 11 486 482 11 13 15 27 33 35 35 37 37 41 53 55 65 65 77 97 101 113 117 121 476 125 129 472 133 135 468 143 143 151 462 151 151 167 462 462 167 167 167 169 462 189 189 191 193 460 193 195 207 215 217 221 225 225 231 239 460 239 249 448 446 253 265 265 273 283 442 297 299 301 440 307 311 436 436 434 319 325 331 428 418 331 416 333 339 339 349 416 349 359 359 363 363 363 377 385 395 399 399 403 407 417 408 423 431 435 402 400 445 451 453 396 465 467 386 374 364 477 481 364 497 507 507 511 360 511 511 523 531 551 569 577 344 583 587 340 589 330 318 316 595 312 609 310 310 609 609 611 611 611 615 619 621 623 631 637 308 284 284 278 272 272 262 254 641 651 667 252 252 244 669 671 683 242 685 242 234 234 689 234 693 228 693 701 713 224 220 214 713 715 721 725 212 733 735 735 735 210 206 206 737 741 741 198 196 745 753 763 767 196 771 196 188 186 184 182 771 182 783 789 803 811 817 817 823 835 837 839 182 839 841 847 849 853 182 853 861 182 180 865 869 873 875 879 180 176 881 881 891 897 176 174 172 172 897 897 911 921 923 160 156 923 152 144 144 931 943 138 134 122 118 114 112 949 112 949 112 949 953 959 959 959 961 961 104 971 92 90 88 975 979 991 993 80 78 72 72 70 70 66 58 46 40 36 28 28 14 10 2 0 0 0 0 0 -2 -10 -22 -28 -32 -40 -40 -44 -54 -54 -66 -76 -78 -82 -84 -94 -110 -126 -134 -140 -146 -148 -154 -154 -162 -166 -168 -174 -182 -182 -184 -196 -196 -202 -202 -204 -206 -206 -208 -216 -220 -220 -232 -234 -242 -244 -254 -270 -286 -286 -288 -292 -294 -300 -306 -314 -322 -328 -336 -336 -340 -352 -360 -366 -368 -368 -374 -378 -392 -396 -396 -396 -396 -404 -404 -408 -416 -420 -422 -422 -424 -424 -426 -426 -432 -434 -436 -440 -440 -442 -444 -448 -448 -450 -460 -462 -464 -472 -474 -476 -480 -494 -494 -504 -506 -514 -516 -520 -520 -542 -542 -562 -564 -564 -572 -572 -572 -574 -584 -590 -590 -594 -600 -608 -616 -616 -616 -618 -622 -624 -626 -628 -654 -656 -664 -664 -676 -680 -682 -686 -700 -700 -702 -704 -704 -712 -722 -728 -728 -728 -730 -742 -742 -758 -768 -770 -778 -780 -780 -780 -782 -782 -784 -784 -786 -790 -792 -792 -812 -816 -818 -822 -834 -856 -858 -858 -866 -870 -870 -876 -880 -884 -886 -894 -902 -916 -916 -918 -918 -924 -924 -926 -926 -928 -936 -940 -948 -952 -952 -956 -962 -966 -966 -968 -976 -988 -988 -990 -992 -998 ];
vexp=[984 -997 -985 980 -983 978 -971 968 966 958 -969 952 -969 950 -963 944 -957 -955 936 -949 936 -949 -941 926 -935 -931 -917 -913 -913 -907 -903 -891 -861 924 922 918 916 912 902 894 -849 -847 -845 884 -837 878 878 -833 -827 876 862 836 834 832 822 822 -817 -809 -805 -803 -797 -791 804 786 784 -785 -773 778 -773 -763 -749 -749 -745 776 -741 -737 770 -737 -737 -735 -735 -731 -725 770 -723 -707 768 768 -707 762 760 -693 -683 -669 -667 750 746 740 -661 -649 -639 -637 -635 -609 730 728 -603 -595 728 -593 -589 -589 -585 -581 -581 728 -577 -567 -561 -547 724 -541 -539 -539 -539 -527 -525 -523 716 -517 -517 -515 714 702 702 676 -513 -487 -475 -471 672 -469 660 -467 652 -467 -467 634 632 -461 -457 -455 624 -455 -453 -451 624 618 -441 618 614 604 -439 -427 -413 -413 -409 -399 600 -399 594 -397 -387 594 -383 586 582 -377 580 580 -365 -359 -343 -337 578 -329 -327 -325 -323 -323 -315 -313 -301 -293 576 -275 576 572 572 572 -275 572 564 -273 -269 -259 560 -249 -249 560 -233 -233 552 -231 550 -219 -215 -215 -203 -197 -191 -189 -171 -169 -169 -163 -161 -159 -157 546 -155 -153 546 -151 -147 540 -147 -143 -143 -133 -131 -109 -109 -105 518 -105 -99 -99 -99 -99 -75 508 -73 -67 -63 -59 -55 508 -51 -39 -35 -35 506 504 -33 500 -21 -7 496 -7 3 7 11 11 486 482 11 13 15 27 33 35 35 37 37 41 53 55 65 65 77 97 101 113 117 121 476 125 129 472 133 135 468 143 143 151 462 151 151 167 462 462 167 167 167 169 462 189 189 191 193 460 193 195 207 215 217 221 225 225 231 239 460 239 249 448 446 253 265 265 273 283 442 297 299 301 440 307 311 436 436 434 319 325 331 428 418 331 416 333 339 339 349 416 349 359 359 363 363 363 377 385 395 399 399 403 407 417 408 423 431 435 402 400 445 451 453 396 465 467 386 374 364 477 481 364 497 507 507 511 360 511 511 523 531 551 569 577 344 583 587 340 589 330 318 316 595 312 609 310 310 609 609 611 611 611 615 619 621 623 631 637 308 284 284 278 272 272 262 254 641 651 667 252 252 244 669 671 683 242 685 242 234 234 689 234 693 228 693 701 713 224 220 214 713 715 721 725 212 733 735 735 735 210 206 206 737 741 741 198 196 745 753 763 767 196 771 196 188 186 184 182 771 182 783 789 803 811 817 817 823 835 837 839 182 839 841 847 849 853 182 853 861 182 180 865 869 873 875 879 180 176 881 881 891 897 176 174 172 172 897 897 911 921 923 160 156 923 152 144 144 931 943 138 134 122 118 114 112 949 112 949 112 949 953 959 959 959 961 961 104 971 92 90 88 975 979 991 993 80 78 72 72 70 70 66 58 46 40 36 28 28 14 10 2 0 0 0 0 0 -2 -10 -22 -28 -32 -40 -40 -44 -54 -54 -66 -76 -78 -82 -84 -94 -110 -126 -134 -140 -146 -148 -154 -154 -162 -166 -168 -174 -182 -182 -184 -196 -196 -202 -202 -204 -206 -206 -208 -216 -220 -220 -232 -234 -242 -244 -254 -270 -286 -286 -288 -292 -294 -300 -306 -314 -322 -328 -336 -336 -340 -352 -360 -366 -368 -368 -374 -378 -392 -396 -396 -396 -396 -404 -404 -408 -416 -420 -422 -422 -424 -424 -426 -426 -432 -434 -436 -440 -440 -442 -444 -448 -448 -450 -460 -462 -464 -472 -474 -476 -480 -494 -494 -504 -506 -514 -516 -520 -520 -542 -542 -562 -564 -564 -572 -572 -572 -574 -584 -590 -590 -594 -600 -608 -616 -616 -616 -618 -622 -624 -626 -628 -654 -656 -664 -664 -676 -680 -682 -686 -700 -700 -702 -704 -704 -712 -722 -728 -728 -728 -730 -742 -742 -758 -768 -770 -778 -780 -780 -780 -782 -782 -784 -784 -786 -790 -792 -792 -812 -816 -818 -822 -834 -856 -858 -858 -866 -870 -870 -876 -880 -884 -886 -894 -902 -916 -916 -918 -918 -924 -924 -926 -926 -928 -936 -940 -948 -952 -952 -956 -962 -966 -966 -968 -976 -988 -988 -990 -992 -998 ];
vout=Sort_CH(v);
assert(isequal(vout,vexp))
v =
  Columns 1 through 16
   984  -997  -985   980  -983   978  -971   968   966   958  -969   952  -969   950  -963   944
  Columns 17 through 32
  -957  -955   936  -949   936  -949  -941   926  -935  -931  -917  -913  -913  -907  -903  -891
  Columns 33 through 48
  -861   924   922   918   916   912   902   894  -849  -847  -845   884  -837   878   878  -833
  Columns 49 through 64
  -827   876   862   836   834   832   822   822  -817  -809  -805  -803  -797  -791   804   786
  Columns 65 through 80
   784  -785  -773   778  -773  -763  -749  -749  -745   776  -741  -737   770  -737  -737  -735
  Columns 81 through 96
  -735  -731  -725   770  -723  -707   768   768  -707   762   760  -693  -683  -669  -667   750
  Columns 97 through 112
   746   740  -661  -649  -639  -637  -635  -609   730   728  -603  -595   728  -593  -589  -589
  Columns 113 through 128
  -585  -581  -581   728  -577  -567  -561  -547   724  -541  -539  -539  -539  -527  -525  -523
  Columns 129 through 144
   716  -517  -517  -515   714   702   702   676  -513  -487  -475  -471   672  -469   660  -467
  Columns 145 through 160
   652  -467  -467   634   632  -461  -457  -455   624  -455  -453  -451   624   618  -441   618
  Columns 161 through 176
   614   604  -439  -427  -413  -413  -409  -399   600  -399   594  -397  -387   594  -383   586
  Columns 177 through 192
   582  -377   580   580  -365  -359  -343  -337   578  -329  -327  -325  -323  -323  -315  -313
  Columns 193 through 208
  -301  -293   576  -275   576   572   572   572  -275   572   564  -273  -269  -259   560  -249
  Columns 209 through 224
  -249   560  -233  -233   552  -231   550  -219  -215  -215  -203  -197  -191  -189  -171  -169
  Columns 225 through 240
  -169  -163  -161  -159  -157   546  -155  -153   546  -151  -147   540  -147  -143  -143  -133
  Columns 241 through 256
  -131  -109  -109  -105   518  -105   -99   -99   -99   -99   -75   508   -73   -67   -63   -59
  Columns 257 through 272
   -55   508   -51   -39   -35   -35   506   504   -33   500   -21    -7   496    -7     3     7
  Columns 273 through 288
    11    11   486   482    11    13    15    27    33    35    35    37    37    41    53    55
  Columns 289 through 304
    65    65    77    97   101   113   117   121   476   125   129   472   133   135   468   143
  Columns 305 through 320
   143   151   462   151   151   167   462   462   167   167   167   169   462   189   189   191
  Columns 321 through 336
   193   460   193   195   207   215   217   221   225   225   231   239   460   239   249   448
  Columns 337 through 352
   446   253   265   265   273   283   442   297   299   301   440   307   311   436   436   434
  Columns 353 through 368
   319   325   331   428   418   331   416   333   339   339   349   416   349   359   359   363
  Columns 369 through 384
   363   363   377   385   395   399   399   403   407   417   408   423   431   435   402   400
  Columns 385 through 400
   445   451   453   396   465   467   386   374   364   477   481   364   497   507   507   511
  Columns 401 through 416
   360   511   511   523   531   551   569   577   344   583   587   340   589   330   318   316
  Columns 417 through 432
   595   312   609   310   310   609   609   611   611   611   615   619   621   623   631   637
  Columns 433 through 448
   308   284   284   278   272   272   262   254   641   651   667   252   252   244   669   671
  Columns 449 through 464
   683   242   685   242   234   234   689   234   693   228   693   701   713   224   220   214
  Columns 465 through 480
   713   715   721   725   212   733   735   735   735   210   206   206   737   741   741   198
  Columns 481 through 496
   196   745   753   763   767   196   771   196   188   186   184   182   771   182   783   789
  Columns 497 through 512
   803   811   817   817   823   835   837   839   182   839   841   847   849   853   182   853
  Columns 513 through 528
   861   182   180   865   869   873   875   879   180   176   881   881   891   897   176   174
  Columns 529 through 544
   172   172   897   897   911   921   923   160   156   923   152   144   144   931   943   138
  Columns 545 through 560
   134   122   118   114   112   949   112   949   112   949   953   959   959   959   961   961
  Columns 561 through 576
   104   971    92    90    88   975   979   991   993    80    78    72    72    70    70    66
  Columns 577 through 592
    58    46    40    36    28    28    14    10     2     0     0     0     0     0    -2   -10
  Columns 593 through 608
   -22   -28   -32   -40   -40   -44   -54   -54   -66   -76   -78   -82   -84   -94  -110  -126
  Columns 609 through 624
  -134  -140  -146  -148  -154  -154  -162  -166  -168  -174  -182  -182  -184  -196  -196  -202
  Columns 625 through 640
  -202  -204  -206  -206  -208  -216  -220  -220  -232  -234  -242  -244  -254  -270  -286  -286
  Columns 641 through 656
  -288  -292  -294  -300  -306  -314  -322  -328  -336  -336  -340  -352  -360  -366  -368  -368
  Columns 657 through 672
  -374  -378  -392  -396  -396  -396  -396  -404  -404  -408  -416  -420  -422  -422  -424  -424
  Columns 673 through 688
  -426  -426  -432  -434  -436  -440  -440  -442  -444  -448  -448  -450  -460  -462  -464  -472
  Columns 689 through 704
  -474  -476  -480  -494  -494  -504  -506  -514  -516  -520  -520  -542  -542  -562  -564  -564
  Columns 705 through 720
  -572  -572  -572  -574  -584  -590  -590  -594  -600  -608  -616  -616  -616  -618  -622  -624
  Columns 721 through 736
  -626  -628  -654  -656  -664  -664  -676  -680  -682  -686  -700  -700  -702  -704  -704  -712
  Columns 737 through 752
  -722  -728  -728  -728  -730  -742  -742  -758  -768  -770  -778  -780  -780  -780  -782  -782
  Columns 753 through 768
  -784  -784  -786  -790  -792  -792  -812  -816  -818  -822  -834  -856  -858  -858  -866  -870
  Columns 769 through 784
  -870  -876  -880  -884  -886  -894  -902  -916  -916  -918  -918  -924  -924  -926  -926  -928
  Columns 785 through 800
  -936  -940  -948  -952  -952  -956  -962  -966  -966  -968  -976  -988  -988  -990  -992  -998
10
Pass
 
%%
v=[-891 962 792 -851 784 730 -789 -781 662 662 -765 -737 -713 644 -567 -525 -465 534 -451 526 454 -427 -399 -173 -15 454 -1 77 378 175 202 185 170 275 313 367 82 407 459 473 507 621 691 707 731 805 825 935 981 52 48 46 -10 -66 -162 -168 -192 -196 -218 -232 -262 -280 -288 -332 -358 -402 -438 -448 -490 -502 -516 -572 -590 -598 -832 -834 ];
vexp=[-891 962 792 -851 784 730 -789 -781 662 662 -765 -737 -713 644 -567 -525 -465 534 -451 526 454 -427 -399 -173 -15 454 -1 77 378 175 202 185 170 275 313 367 82 407 459 473 507 621 691 707 731 805 825 935 981 52 48 46 -10 -66 -162 -168 -192 -196 -218 -232 -262 -280 -288 -332 -358 -402 -438 -448 -490 -502 -516 -572 -590 -598 -832 -834 ];
vout=Sort_CH(v);
assert(isequal(vout,vexp))
v =
  Columns 1 through 16
  -891   962   792  -851   784   730  -789  -781   662   662  -765  -737  -713   644  -567  -525
  Columns 17 through 32
  -465   534  -451   526   454  -427  -399  -173   -15   454    -1    77   378   175   202   185
  Columns 33 through 48
   170   275   313   367    82   407   459   473   507   621   691   707   731   805   825   935
  Columns 49 through 64
   981    52    48    46   -10   -66  -162  -168  -192  -196  -218  -232  -262  -280  -288  -332
  Columns 65 through 76
  -358  -402  -438  -448  -490  -502  -516  -572  -590  -598  -832  -834
11
Pass
 
%%
v=[990 988 -999 -995 -993 -993 -991 976 970 958 -989 -973 946 -965 -963 -957 -957 -941 938 -939 -937 -937 -913 -907 -901 938 938 924 -901 -893 924 -891 -889 918 -869 912 910 -869 -869 -845 -827 -811 -793 -741 906 868 -715 -715 844 836 -711 -709 812 -693 -693 -687 -665 808 786 774 -665 -663 -663 -615 -603 -593 -589 770 762 -587 756 -585 -581 -565 -565 -561 -555 -555 -553 -541 706 704 -539 -505 694 -503 -493 -455 -451 672 -427 -399 670 -385 658 -373 -359 656 -339 -335 654 -333 -327 636 -325 -313 -297 -297 -273 616 -263 -253 614 -251 604 590 -219 -209 550 -207 -203 -187 -185 -181 -177 -167 -159 546 -157 -145 -137 544 -135 -105 -77 -71 -67 -65 -41 540 -39 532 528 -37 526 -33 -31 -23 -21 -13 524 11 15 19 520 506 27 37 41 43 494 77 488 89 101 105 127 486 129 131 472 468 458 133 133 139 450 139 171 171 428 175 428 189 203 219 410 237 251 396 255 265 271 273 273 273 293 392 297 376 299 301 315 315 351 373 374 377 377 379 385 387 389 397 407 374 368 409 411 425 433 439 449 451 481 507 535 342 537 553 338 338 575 322 312 577 577 581 583 585 308 306 603 292 264 619 248 242 228 224 623 637 645 220 661 663 208 671 681 204 186 693 693 701 719 721 178 170 737 749 154 763 154 767 154 769 789 154 144 142 130 793 793 795 803 803 805 815 817 819 821 120 823 120 825 86 86 78 74 72 825 62 839 841 861 861 861 873 875 56 875 42 897 935 935 949 12 949 955 955 8 975 979 0 0 0 0 0 -52 -56 -60 -70 -70 -72 -94 -96 -98 -110 -110 -114 -116 -126 -126 -136 -158 -160 -176 -178 -182 -188 -196 -200 -206 -208 -208 -222 -224 -228 -276 -278 -296 -302 -316 -318 -324 -334 -346 -350 -350 -358 -364 -368 -370 -378 -378 -378 -386 -404 -416 -416 -418 -420 -432 -448 -462 -480 -482 -490 -502 -514 -516 -520 -546 -546 -546 -550 -564 -570 -570 -572 -574 -580 -600 -602 -624 -626 -626 -634 -650 -658 -658 -662 -686 -712 -716 -720 -726 -730 -732 -756 -756 -770 -780 -790 -798 -802 -824 -836 -882 -894 -906 -914 -914 -932 -950 -952 -966 -968 -978 -978 -990 -990 ];
vexp=[990 988 -999 -995 -993 -993 -991 976 970 958 -989 -973 946 -965 -963 -957 -957 -941 938 -939 -937 -937 -913 -907 -901 938 938 924 -901 -893 924 -891 -889 918 -869 912 910 -869 -869 -845 -827 -811 -793 -741 906 868 -715 -715 844 836 -711 -709 812 -693 -693 -687 -665 808 786 774 -665 -663 -663 -615 -603 -593 -589 770 762 -587 756 -585 -581 -565 -565 -561 -555 -555 -553 -541 706 704 -539 -505 694 -503 -493 -455 -451 672 -427 -399 670 -385 658 -373 -359 656 -339 -335 654 -333 -327 636 -325 -313 -297 -297 -273 616 -263 -253 614 -251 604 590 -219 -209 550 -207 -203 -187 -185 -181 -177 -167 -159 546 -157 -145 -137 544 -135 -105 -77 -71 -67 -65 -41 540 -39 532 528 -37 526 -33 -31 -23 -21 -13 524 11 15 19 520 506 27 37 41 43 494 77 488 89 101 105 127 486 129 131 472 468 458 133 133 139 450 139 171 171 428 175 428 189 203 219 410 237 251 396 255 265 271 273 273 273 293 392 297 376 299 301 315 315 351 373 374 377 377 379 385 387 389 397 407 374 368 409 411 425 433 439 449 451 481 507 535 342 537 553 338 338 575 322 312 577 577 581 583 585 308 306 603 292 264 619 248 242 228 224 623 637 645 220 661 663 208 671 681 204 186 693 693 701 719 721 178 170 737 749 154 763 154 767 154 769 789 154 144 142 130 793 793 795 803 803 805 815 817 819 821 120 823 120 825 86 86 78 74 72 825 62 839 841 861 861 861 873 875 56 875 42 897 935 935 949 12 949 955 955 8 975 979 0 0 0 0 0 -52 -56 -60 -70 -70 -72 -94 -96 -98 -110 -110 -114 -116 -126 -126 -136 -158 -160 -176 -178 -182 -188 -196 -200 -206 -208 -208 -222 -224 -228 -276 -278 -296 -302 -316 -318 -324 -334 -346 -350 -350 -358 -364 -368 -370 -378 -378 -378 -386 -404 -416 -416 -418 -420 -432 -448 -462 -480 -482 -490 -502 -514 -516 -520 -546 -546 -546 -550 -564 -570 -570 -572 -574 -580 -600 -602 -624 -626 -626 -634 -650 -658 -658 -662 -686 -712 -716 -720 -726 -730 -732 -756 -756 -770 -780 -790 -798 -802 -824 -836 -882 -894 -906 -914 -914 -932 -950 -952 -966 -968 -978 -978 -990 -990 ];
vout=Sort_CH(v);
assert(isequal(vout,vexp))
v =
  Columns 1 through 16
   990   988  -999  -995  -993  -993  -991   976   970   958  -989  -973   946  -965  -963  -957
  Columns 17 through 32
  -957  -941   938  -939  -937  -937  -913  -907  -901   938   938   924  -901  -893   924  -891
  Columns 33 through 48
  -889   918  -869   912   910  -869  -869  -845  -827  -811  -793  -741   906   868  -715  -715
  Columns 49 through 64
   844   836  -711  -709   812  -693  -693  -687  -665   808   786   774  -665  -663  -663  -615
  Columns 65 through 80
  -603  -593  -589   770   762  -587   756  -585  -581  -565  -565  -561  -555  -555  -553  -541
  Columns 81 through 96
   706   704  -539  -505   694  -503  -493  -455  -451   672  -427  -399   670  -385   658  -373
  Columns 97 through 112
  -359   656  -339  -335   654  -333  -327   636  -325  -313  -297  -297  -273   616  -263  -253
  Columns 113 through 128
   614  -251   604   590  -219  -209   550  -207  -203  -187  -185  -181  -177  -167  -159   546
  Columns 129 through 144
  -157  -145  -137   544  -135  -105   -77   -71   -67   -65   -41   540   -39   532   528   -37
  Columns 145 through 160
   526   -33   -31   -23   -21   -13   524    11    15    19   520   506    27    37    41    43
  Columns 161 through 176
   494    77   488    89   101   105   127   486   129   131   472   468   458   133   133   139
  Columns 177 through 192
   450   139   171   171   428   175   428   189   203   219   410   237   251   396   255   265
  Columns 193 through 208
   271   273   273   273   293   392   297   376   299   301   315   315   351   373   374   377
  Columns 209 through 224
   377   379   385   387   389   397   407   374   368   409   411   425   433   439   449   451
  Columns 225 through 240
   481   507   535   342   537   553   338   338   575   322   312   577   577   581   583   585
  Columns 241 through 256
   308   306   603   292   264   619   248   242   228   224   623   637   645   220   661   663
  Columns 257 through 272
   208   671   681   204   186   693   693   701   719   721   178   170   737   749   154   763
  Columns 273 through 288
   154   767   154   769   789   154   144   142   130   793   793   795   803   803   805   815
  Columns 289 through 304
   817   819   821   120   823   120   825    86    86    78    74    72   825    62   839   841
  Columns 305 through 320
   861   861   861   873   875    56   875    42   897   935   935   949    12   949   955   955
  Columns 321 through 336
     8   975   979     0     0     0     0     0   -52   -56   -60   -70   -70   -72   -94   -96
  Columns 337 through 352
   -98  -110  -110  -114  -116  -126  -126  -136  -158  -160  -176  -178  -182  -188  -196  -200
  Columns 353 through 368
  -206  -208  -208  -222  -224  -228  -276  -278  -296  -302  -316  -318  -324  -334  -346  -350
  Columns 369 through 384
  -350  -358  -364  -368  -370  -378  -378  -378  -386  -404  -416  -416  -418  -420  -432  -448
  Columns 385 through 400
  -462  -480  -482  -490  -502  -514  -516  -520  -546  -546  -546  -550  -564  -570  -570  -572
  Columns 401 through 416
  -574  -580  -600  -602  -624  -626  -626  -634  -650  -658  -658  -662  -686  -712  -716  -720
  Columns 417 through 432
  -726  -730  -732  -756  -756  -770  -780  -790  -798  -802  -824  -836  -882  -894  -906  -914
  Columns 433 through 442
  -914  -932  -950  -952  -966  -968  -978  -978  -990  -990
12
Fail
 
%%
v=[-997 -995 994 -981 -977 -975 -971 988 -969 -931 -929 986 968 -903 -903 956 -897 -895 -887 -883 948 -879 -871 -871 -865 -863 946 -863 -861 -861 944 -853 934 924 -853 914 914 -847 -845 910 -829 898 -819 890 -807 -807 888 880 -803 -797 880 874 868 -793 860 842 -791 -783 840 -771 838 -767 -765 832 826 -763 826 -759 814 -759 -753 -733 812 -733 -729 -727 -727 -723 804 -715 802 -715 -707 798 -693 -671 -669 -669 -665 792 -663 -663 -663 -663 790 -653 -643 -635 -615 778 774 770 752 -611 -587 -579 746 -569 -569 -561 740 -555 -555 -553 -539 740 -537 -523 728 -517 -513 -509 -505 -497 -497 -493 -483 728 -479 -479 -475 -475 -467 722 722 -439 -431 -429 -425 706 -413 -407 704 702 690 678 676 -407 674 -393 -385 -385 672 670 -385 664 -383 -377 -371 -367 -355 -353 -353 -351 -347 658 -345 656 -327 652 -325 -323 650 616 -319 -315 616 604 602 602 -315 596 594 -313 572 572 566 -311 562 -295 -287 -285 -285 -275 -273 -273 -271 -261 -259 -259 -253 -249 550 -239 542 538 530 -233 -231 -231 -231 526 -217 520 -203 518 -189 518 -187 -183 516 -177 510 508 506 -173 -171 -145 506 504 504 -143 -143 494 492 482 -133 -129 478 474 -129 -125 -113 -111 -99 -93 -91 -81 472 -81 -77 -75 -63 -53 -45 -39 468 462 -39 -39 -13 7 9 13 21 23 35 43 452 43 450 49 49 51 55 67 71 448 73 77 77 81 91 446 93 97 101 105 115 119 121 125 428 151 422 151 171 173 181 187 420 189 195 410 400 392 197 207 211 211 392 221 221 376 376 223 225 364 229 231 231 342 235 241 340 241 336 332 245 326 247 253 322 253 312 255 308 261 269 306 279 291 286 309 286 315 323 266 258 323 329 341 343 256 347 357 379 381 385 397 401 403 403 407 421 427 244 427 429 242 429 433 433 238 433 437 441 234 220 208 443 208 196 451 455 459 467 469 186 182 178 469 475 483 483 505 511 513 539 539 557 559 561 565 168 168 567 166 156 575 156 585 593 154 150 593 148 144 136 130 595 597 597 609 613 617 120 633 637 639 647 661 671 118 114 112 679 110 679 679 110 681 683 687 106 98 98 693 693 695 98 76 699 72 699 713 715 721 64 727 62 731 733 62 56 735 739 741 745 52 749 749 52 28 22 20 759 14 759 763 8 763 765 767 8 6 4 0 0 0 0 0 0 767 767 785 791 801 -2 803 805 -8 -22 819 -24 825 833 -40 839 845 -44 847 847 847 -60 847 865 -64 865 871 909 -84 913 913 915 -84 919 -108 923 -110 929 933 933 -112 939 -114 949 963 965 -142 967 969 973 -144 -150 -156 981 983 987 989 993 995 995 -156 -164 -170 -174 -182 -188 -188 -208 -220 -240 -244 -252 -254 -262 -264 -268 -274 -280 -284 -286 -294 -318 -322 -330 -336 -338 -348 -350 -350 -356 -358 -370 -374 -384 -422 -422 -428 -432 -434 -434 -436 -436 -438 -440 -440 -458 -476 -476 -478 -482 -494 -494 -504 -504 -504 -506 -508 -512 -524 -526 -526 -528 -530 -532 -536 -538 -562 -564 -566 -570 -574 -580 -582 -592 -596 -596 -612 -614 -614 -616 -616 -618 -620 -620 -630 -632 -636 -642 -646 -648 -652 -656 -658 -658 -660 -664 -672 -672 -672 -690 -694 -714 -716 -730 -742 -748 -750 -768 -770 -770 -774 -778 -790 -794 -798 -806 -808 -812 -814 -822 -826 -830 -850 -858 -858 -878 -888 -892 -896 -900 -906 -910 -910 -910 -912 -922 -922 -926 -928 -950 -952 -976 -986 -986 ];
vexp=[-997 -995 994 -981 -977 -975 -971 988 -969 -931 -929 986 968 -903 -903 956 -897 -895 -887 -883 948 -879 -871 -871 -865 -863 946 -863 -861 -861 944 -853 934 924 -853 914 914 -847 -845 910 -829 898 -819 890 -807 -807 888 880 -803 -797 880 874 868 -793 860 842 -791 -783 840 -771 838 -767 -765 832 826 -763 826 -759 814 -759 -753 -733 812 -733 -729 -727 -727 -723 804 -715 802 -715 -707 798 -693 -671 -669 -669 -665 792 -663 -663 -663 -663 790 -653 -643 -635 -615 778 774 770 752 -611 -587 -579 746 -569 -569 -561 740 -555 -555 -553 -539 740 -537 -523 728 -517 -513 -509 -505 -497 -497 -493 -483 728 -479 -479 -475 -475 -467 722 722 -439 -431 -429 -425 706 -413 -407 704 702 690 678 676 -407 674 -393 -385 -385 672 670 -385 664 -383 -377 -371 -367 -355 -353 -353 -351 -347 658 -345 656 -327 652 -325 -323 650 616 -319 -315 616 604 602 602 -315 596 594 -313 572 572 566 -311 562 -295 -287 -285 -285 -275 -273 -273 -271 -261 -259 -259 -253 -249 550 -239 542 538 530 -233 -231 -231 -231 526 -217 520 -203 518 -189 518 -187 -183 516 -177 510 508 506 -173 -171 -145 506 504 504 -143 -143 494 492 482 -133 -129 478 474 -129 -125 -113 -111 -99 -93 -91 -81 472 -81 -77 -75 -63 -53 -45 -39 468 462 -39 -39 -13 7 9 13 21 23 35 43 452 43 450 49 49 51 55 67 71 448 73 77 77 81 91 446 93 97 101 105 115 119 121 125 428 151 422 151 171 173 181 187 420 189 195 410 400 392 197 207 211 211 392 221 221 376 376 223 225 364 229 231 231 342 235 241 340 241 336 332 245 326 247 253 322 253 312 255 308 261 269 306 279 291 286 309 286 315 323 266 258 323 329 341 343 256 347 357 379 381 385 397 401 403 403 407 421 427 244 427 429 242 429 433 433 238 433 437 441 234 220 208 443 208 196 451 455 459 467 469 186 182 178 469 475 483 483 505 511 513 539 539 557 559 561 565 168 168 567 166 156 575 156 585 593 154 150 593 148 144 136 130 595 597 597 609 613 617 120 633 637 639 647 661 671 118 114 112 679 110 679 679 110 681 683 687 106 98 98 693 693 695 98 76 699 72 699 713 715 721 64 727 62 731 733 62 56 735 739 741 745 52 749 749 52 28 22 20 759 14 759 763 8 763 765 767 8 6 4 0 0 0 0 0 0 767 767 785 791 801 -2 803 805 -8 -22 819 -24 825 833 -40 839 845 -44 847 847 847 -60 847 865 -64 865 871 909 -84 913 913 915 -84 919 -108 923 -110 929 933 933 -112 939 -114 949 963 965 -142 967 969 973 -144 -150 -156 981 983 987 989 993 995 995 -156 -164 -170 -174 -182 -188 -188 -208 -220 -240 -244 -252 -254 -262 -264 -268 -274 -280 -284 -286 -294 -318 -322 -330 -336 -338 -348 -350 -350 -356 -358 -370 -374 -384 -422 -422 -428 -432 -434 -434 -436 -436 -438 -440 -440 -458 -476 -476 -478 -482 -494 -494 -504 -504 -504 -506 -508 -512 -524 -526 -526 -528 -530 -532 -536 -538 -562 -564 -566 -570 -574 -580 -582 -592 -596 -596 -612 -614 -614 -616 -616 -618 -620 -620 -630 -632 -636 -642 -646 -648 -652 -656 -658 -658 -660 -664 -672 -672 -672 -690 -694 -714 -716 -730 -742 -748 -750 -768 -770 -770 -774 -778 -790 -794 -798 -806 -808 -812 -814 -822 -826 -830 -850 -858 -858 -878 -888 -892 -896 -900 -906 -910 -910 -910 -912 -922 -922 -926 -928 -950 -952 -976 -986 -986 ];
vout=Sort_CH(v);
assert(isequal(vout,vexp))
v =
  Columns 1 through 16
  -997  -995   994  -981  -977  -975  -971   988  -969  -931  -929   986   968  -903  -903   956
  Columns 17 through 32
  -897  -895  -887  -883   948  -879  -871  -871  -865  -863   946  -863  -861  -861   944  -853
  Columns 33 through 48
   934   924  -853   914   914  -847  -845   910  -829   898  -819   890  -807  -807   888   880
  Columns 49 through 64
  -803  -797   880   874   868  -793   860   842  -791  -783   840  -771   838  -767  -765   832
  Columns 65 through 80
   826  -763   826  -759   814  -759  -753  -733   812  -733  -729  -727  -727  -723   804  -715
  Columns 81 through 96
   802  -715  -707   798  -693  -671  -669  -669  -665   792  -663  -663  -663  -663   790  -653
  Columns 97 through 112
  -643  -635  -615   778   774   770   752  -611  -587  -579   746  -569  -569  -561   740  -555
  Columns 113 through 128
  -555  -553  -539   740  -537  -523   728  -517  -513  -509  -505  -497  -497  -493  -483   728
  Columns 129 through 144
  -479  -479  -475  -475  -467   722   722  -439  -431  -429  -425   706  -413  -407   704   702
  Columns 145 through 160
   690   678   676  -407   674  -393  -385  -385   672   670  -385   664  -383  -377  -371  -367
  Columns 161 through 176
  -355  -353  -353  -351  -347   658  -345   656  -327   652  -325  -323   650   616  -319  -315
  Columns 177 through 192
   616   604   602   602  -315   596   594  -313   572   572   566  -311   562  -295  -287  -285
  Columns 193 through 208
  -285  -275  -273  -273  -271  -261  -259  -259  -253  -249   550  -239   542   538   530  -233
  Columns 209 through 224
  -231  -231  -231   526  -217   520  -203   518  -189   518  -187  -183   516  -177   510   508
  Columns 225 through 240
   506  -173  -171  -145   506   504   504  -143  -143   494   492   482  -133  -129   478   474
  Columns 241 through 256
  -129  -125  -113  -111   -99   -93   -91   -81   472   -81   -77   -75   -63   -53   -45   -39
  Columns 257 through 272
   468   462   -39   -39   -13     7     9    13    21    23    35    43   452    43   450    49
  Columns 273 through 288
    49    51    55    67    71   448    73    77    77    81    91   446    93    97   101   105
  Columns 289 through 304
   115   119   121   125   428   151   422   151   171   173   181   187   420   189   195   410
  Columns 305 through 320
   400   392   197   207   211   211   392   221   221   376   376   223   225   364   229   231
  Columns 321 through 336
   231   342   235   241   340   241   336   332   245   326   247   253   322   253   312   255
  Columns 337 through 352
   308   261   269   306   279   291   286   309   286   315   323   266   258   323   329   341
  Columns 353 through 368
   343   256   347   357   379   381   385   397   401   403   403   407   421   427   244   427
  Columns 369 through 384
   429   242   429   433   433   238   433   437   441   234   220   208   443   208   196   451
  Columns 385 through 400
   455   459   467   469   186   182   178   469   475   483   483   505   511   513   539   539
  Columns 401 through 416
   557   559   561   565   168   168   567   166   156   575   156   585   593   154   150   593
  Columns 417 through 432
   148   144   136   130   595   597   597   609   613   617   120   633   637   639   647   661
  Columns 433 through 448
   671   118   114   112   679   110   679   679   110   681   683   687   106    98    98   693
  Columns 449 through 464
   693   695    98    76   699    72   699   713   715   721    64   727    62   731   733    62
  Columns 465 through 480
    56   735   739   741   745    52   749   749    52    28    22    20   759    14   759   763
  Columns 481 through 496
     8   763   765   767     8     6     4     0     0     0     0     0     0   767   767   785
  Columns 497 through 512
   791   801    -2   803   805    -8   -22   819   -24   825   833   -40   839   845   -44   847
  Columns 513 through 528
   847   847   -60   847   865   -64   865   871   909   -84   913   913   915   -84   919  -108
  Columns 529 through 544
   923  -110   929   933   933  -112   939  -114   949   963   965  -142   967   969   973  -144
  Columns 545 through 560
  -150  -156   981   983   987   989   993   995   995  -156  -164  -170  -174  -182  -188  -188
  Columns 561 through 576
  -208  -220  -240  -244  -252  -254  -262  -264  -268  -274  -280  -284  -286  -294  -318  -322
  Columns 577 through 592
  -330  -336  -338  -348  -350  -350  -356  -358  -370  -374  -384  -422  -422  -428  -432  -434
  Columns 593 through 608
  -434  -436  -436  -438  -440  -440  -458  -476  -476  -478  -482  -494  -494  -504  -504  -504
  Columns 609 through 624
  -506  -508  -512  -524  -526  -526  -528  -530  -532  -536  -538  -562  -564  -566  -570  -574